Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Blir koden snabbare?

Postades av 2001-03-18 23:21:00 - Christian Fahlén, i forum databaser, Tråden har 21 Kommentarer och lästs av 979 personer

Hej alla glada,

Har en fundering över om koden blir snabbar om man deklarerar en recordset eller om det brar är för att få en "snyggare" kod.

Exempel:

Private Sub Test()
Dim rsDatabasen as Recordset
Set rsDatabasen=Data1.Recordset
rsDatabasen.Edit
rsDatabasen!FieldName = "Blablabla"
rsDatabasen.Update
Set rsDatabasen=Nothing
End Sub

Alternativt:

Private Sub Test()
Data1.Recordset.Edit
Data1.Recordset.Fields("FieldName")="Blablabla"
Data1.Recordset.Update
End Sub

//Christian


Svara

Sv: Blir koden snabbare?

Postades av 2001-03-18 23:27:00 - Pelle Johansson

Den snabbaste varianten för ditt exempel är :

<code>
Private Sub Test()
With Data1.Recordset
.Edit
.fields(0)="Blablabla"
.Update
End With
End Sub
</code>


Svara

Sv: Blir koden snabbare?

Postades av 2001-03-18 23:46:00 - Sven Åke Persson

Hej
Kul att vi är igång igen

Eftersom fields är den Defaulta egenskapen
hos recordset så blir det ännu snabbare
om man kan skriva Data1.Recordset(0)
Men ! Hur tusan skriver man detta med With ??

Private Sub Test()
  With Data1.Recordset
     .Edit
     .fields(0)="Blablabla"
     .Update
  End With
End Sub


Svara

Sv: Blir koden snabbare?

Postades av 2001-03-19 08:42:00 - Pelle Johansson

Tack Sven,

Jag funderade också på det när jag skrev svaret igår och vågade inte skriva .(0) = "xxx" , men det är som du säger - det snabbaste sättet.

Egentligen skulle jag inte använda .edit alls. Anledningen är att addering och radering egentlignen inte returnerar något recordset och då är det onödigt att ha ett sådant igång. Istället skulle jag skrivit något liknande detta: (har slutat använda datakontrollen)...

sql ="insert into ... (namn, gata) values('pelle','hemgatan')
data1.recordsource = sql
data1.execute

För korrekt syntax, se någon av kurserna.
/Pelle


Svara

Sv: Blir koden snabbare?

Postades av 2001-03-19 09:05:00 - Christoffer Hedgate

Varför skulle det vara snabbare för att det är Default-egenskapen? Snabbare att koda ja, men den resulterande exekveringskoden kommer ju bli densamma ändå. Dessutom är det klart rekommenderat att inte använda default-egenskaper, eftersom de inte är garanterade att vara default för all framtid.


Svara

Sv: Blir koden snabbare?

Postades av 2001-03-19 11:45:00 - Sven Åke Persson

Nja
Jag letar i i gamla tips o trix och påstår
att det går snabbare att anropa den
defaulta egenskapen än de andra

tex Text1 = "Kalle" är snabbare än Text1.Text = "Kalle"

hittade ett exempel som säger att

Dim rs As Recordset
rs.fields.item(0) skulle vara det snabbaste

okidoki om detta

Sven





Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 17:15:00 - Sven Åke Persson

Hej Cristoffer skrev
>Varför skulle det vara snabbare för att det är Default-egenskapen?

Därför att då behöver inte programmet kolla om
objektet verkligen har denna egenskap.
Om du skriver Text1.Text så måste programmet kolla
om objektet Text1 har propertie .Text för att kunna
generera ett felmeddelande om så inte är fallet.

Om man har för vana att utnyttja default egenskapen är detta
proffsigare enl min uppfattning.Man skriver kod för sig själv
och vana programmerare inte för fru Karlsson i Åmål

Nu kan det ju vara så att fru Kalsson i Åmål är en djäv...
på programmering,då vet hon att om jag skriver Label1 = "Kalle"
så avser jag objektet Label:s defaulta propertie

mvh
Sven




Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 17:33:00 - Andreas Hillqvist

Det är nog dax att börja skriva ut namnet. Har för mig att det krävs i VB.NET. Där har du inget val.


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 17:40:00 - Sven Åke Persson

Kee ?
I så fall är VB.Net knäpp

DS


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 20:49:00 - Christoffer Hedgate

Vilken kod tror du det är som körs i slutänden? Den 'inte för fru Karlsson i Åmål'-läsbara som du skrivit i ditt program, eller den maskinkod som kompileras från din kod? Vad tror du det står i den? Det finns inte precis några defaultegenskaper i den.

Och ja, precis som Andreas skriver så krävs det (med vissa undantag) i VB.Net att man skriver ut egenskaper. Och jag håller definitivt inte med om att det är knäppt, utan inget annat än precis som det borde vara. Det gör att man undviker buggar i kod man skriver och ännu viktigare att man slipper problem med förändrade specar i framtida kompilatorer.


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 21:42:00 - Sven Åke Persson

Hej
Kvalificerat djä.... Bull

Du låtsas titta in i framfiden det här har inte med framtiden
att göra
Än en gång Bull ... Bull Bull ..


mvh
Sven


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 21:53:00 - Sven Åke Persson

igen efter 10 glas vin

Jag tycker att Ni slänger Er som "lättsinniga flickor" efter
så fort Ni hör MicroSoft

Vb Net blir aldrig något ! !

Sven


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 21:57:00 - Patrik Löwendahl

default properties snabbare än att explicit sätta propertyn ???

Det går lite emot all logik, måste ju kolla upp vilken som är default propertyn först. Inget ting som instinktivt 'vets' av runtimen.. Vart i vtablen skall den peka ??? Det har den ingen aning om, så då får den först kolla vilken egenskap sedan adress.. Istället för bara adress..

Vilket gör att det blir långsammare i slutändan ..


Gjorde en benchmark på det där för ett år sedan men kommer inte exakt ihåg resultatet. Men om man tittar på tekniken bakom com så ...


Sen måste jag säga att VS.NET definitvt kommer att bli något av flera anledningar.

Hela frameworken är omarbetad och genomtänkt. Man kanske inte gillar vissa små dialekt förändringat i språket, tough luck. Om du sven, kollar på frameworken ordentligt och tittar på tanken bakom, kommer du att se att det inte barar beror på ms att det kommer bli populärt. VB6 däremot är igentligen bara ett hack, ett av världens bästa hack, men dock ändå ett hack. Det är också en av anledningarna till varför de måste gå ifrån det tänket.

Sedan tycker jag att du borde ha åldern och mognaden inne att uppföra dig på ett forum..



Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 22:23:00 - Sven Åke Persson

hej
>Sedan tycker jag att du borde ha åldern och mognaden inne att >uppföra dig på ett forum..

Kvalificerat "bull" Igen klart att jag får säga att MicroSoft är i
princip "skit" det finns bättre lösningar på allt dom gjort.

mvh
Sven


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-19 22:41:00 - Sven Åke Persson

Hej
Du måste ju vara alldeles ute och cykla.

>Det går lite emot all logik, måste ju kolla upp vilken som är default >propertyn först.

Tror du inte att att han som skapade objektet vet vad barnet heter??
och vet vilka egenskaper barnet har ?. Nu ankommer det på dej
om du vill använda detta objekt att du vet objektets parametrar .

Sedan pratar Ni om kompilering ,Så länge det finns en runtime tolk i
bakgrunden förtjänar inte VB eller Vb.net att ordet kompilering används.
Dixi
Sven






Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-20 10:44:00 - Patrik Löwendahl

Jag är ledsen sven, men om du hade pluggat lite mer COM så hade du sett logiken i det hela. Jag föreslår att du läser Ted Pattisons bok: 'Programming distributed applications with COM+ and Visual Basic 6.0' innan du uttalar dig om COM teknik överhuvudtaget.

Varför tror du annars att rs.fields.item(0) sägs vara snabbaste metoden ??? (nu är det ungeför lika snabbt som rs.fields(0).value men iaf)

Sedan är det inte speciellt god praxis att vräka ur sig saker som horor och bull på en allmänn öppen disskusion, det borde du fatta också ..


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-20 12:28:00 - Peter Jansson

När man läser Svens inlägg kommer man att tänka på följande citat:
Felet med vår värld är att de dumma är så säkra på sin sak och de kloka så fulla av tvivel. - Bertrand Russell


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-20 13:03:00 - Sven Åke Persson

GodMorgon
Har det vat nåt ?

Jag blir så överaktiv när jag märker att någon tar
MicroSofts nya påhitt i försvar och i varma ordalag
berömmer deras produkter.Bakåt kompabiletet är
väl en hedersak.Hoppas att programmerare ser sig
om efter andra lösningar än dom Ms erbjuder.

Sun och Borland kom igen ge dom på nyllet.

>Felet med vår värld är att de dumma är så säkra på sin sak och de >kloka så fulla av tvivel.

Det citatet känner jag igen ,det har Bertrand stulit från mig

lite skamsen
Sven


Svara

Sv: Out of Topic

Postades av 2001-03-20 13:25:00 - Sven Åke Persson

Igen

När ordet dum kommer upp kommer jag att tänka
på en replik som jag använder.

När någon säger "Tycker du att jag är dum"

"Nej men jag tror inte att du några studieskulder"

mvh
Sven


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-20 14:45:00 - Christoffer Hedgate

> Sun och Borland kom igen ge dom på nyllet

Visst, när så sker kan man sitta och beklaga sig över sämre lösningar. Men precis som du själv skriver så har Sun och Borland ingenting som slår dem på nyllet för tillfället, alltså kan du lugna ner dig lite i dina kommentarer ang. Microsofts produkter. Om du inte gillar dem, vad gör du här då? Du skriver även att Microsofts produkter är skit men att du tycker att de gör fel som inte håller fullständig bakåtkompatibilitet. Varför tror du de gör det? Jo, för att kunna förbättra produkten så otroligt mycket som de gör.

Vidare har diskussionen precis som du skrev nedan kommit lite från sitt ursprung, så för att återkoppla till den riktiga diskussionen: Hur kan du som 'MS-hatare' sitta och försvara en riktigt dålig funktion i VB, som inte gör annat än skapar möjligheter till buggar samt ger sämre prestanda (vilket jag hoppas att vi alla, inklusive dig själv) kommit fram till i denna diskussion.


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-21 10:21:00 - Patrik Löwendahl

*håller med*


Svara

Sv: Blir koden snabbare? svar till Cristoffer

Postades av 2001-03-21 11:10:00 - Christoffer Hedgate

Ursäkta att dra upp det här igen, men jag måste bara påpeka en sak i det inlägg jag svarar på:

> Sedan pratar Ni om kompilering ,Så länge det finns en runtime tolk i
bakgrunden förtjänar inte VB eller Vb.net att ordet kompilering används.

Samma sak gäller Java då? Och SmallTalk?


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 704
27 958
271 750
801
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies