emission-babbel....
Jag är själv en tillskyndare av snabb och optimerad kod, och jag lägger ner viss möda på att göra mina ASP-sidor så effektiva som möjligt.På sistone har jag märkt att många fler än tidigare intresserar sig för just optimering, och det är självklart en vettig grej.
Men! Jag börjar känna att optimeringshysterin tagit lite väl stora proportioner, och den inriktas ofta på fel saker. Visst kan man klyva hår och fördjupa sig i användandet av &-tecken, response.write och context-switchar, men min åsikt är att man fokuserar på fel saker då.
- Det är mycket vettigt att lära sig detaljerna kring &-tecknen etc. En god förståelse för hur ASP egentligen fungerar är den bästa grunden till effektivt kodande.
- En effektiv och genomtänkt grundstruktur betyder MYCKET mer för prestandan än syntaktiska skillnader i koden.
- Hårt syntax-optimerad kod är ofta svårläst.
- Rädslan för context-switchar leder ofta till en onödigt komplex programstruktur, vilket i sin tur leder till prestandaförlust.
- Nästan alla sidor bygger på databasåtkomst, och det är inom detta område man kan göra riktigt märkbara prestandavinster. Det spelar liksom ingen roll att man optimerat bort alla onödiga switchar, konkateneringar och response.write:ar, om man ändå tynger databasen med server-knutna recordsets etc.
Självklart bör man lära sig vad som är bra, och vad som är mindre bra, och koden SKA rensas från onödiga switchar och prestandaslukare, men jag tycker inte att det får gå ut över kodens struktur.
Många kan nog tycka att det inte spelar någon roll om koden är läsbar eller inte, eftersom ändå ingen annan ska läsa den (inget argument man söker programmerarjobb på direkt...). Men, man ska ju faktiskt själv kunna läsa koden, snabbt felsöka den och snabbt lägga till nya funktioner.
När jag kodar ASP bygger jag ALLT i subrutiner, funktioner,klasser och ibland i externa objekt. Ingenting förutom globala deklarationer och direktiv ligger utanför subbarna och funktionerna. Jag hoppar gärna ut ur ASP:n för att trycka ut HTML, och krävs en inline-tagg (<%=värde%> ) så må det så vara. Hellre en extra context-switch än att knyta fast designen i koden.
Detta är mitt sätt, men det finns självklart flera sätt som gör programmeringen effektiv. Helt klart en fråga om smak.
Men, det är just detta som är pudelns kärna. Att inte bara göra koden effektiv, utan kanske främst programmeringen.
Mina kunder vill självklart att jag skapar snabbt exekverande sidor, som visslar till i webbläsaren. De vill dock mycket, mycket mer att jag snabbt rättar till eventuella fel, och när en ny funktion beställs så ska den oftast vara klar igår... Det skulle jag aldrig fixa om jag skrivit toksyntaxoptimerad kod, och mina kollegor är glada att de bara behöver titta på Main-rutinen på en sida för att förstå programflödet, den dag jag ligger hemma i förkylning, och kunden ringer och vill ha mer....
Så....
1. Prestandan sitter i strukturen, inte i syntaxen.
2. Optimera er programmering, inte bara koden
3. Optimera rätt saker i koden. I skolen icke skjuta mygg med bazooka...
Detta var mina högst personliga tankar, och är man road av syntaxoptimering så ska man självklart fortsätta med det... :)
mvh
emission
------------------
-------------------
Att vara puckad är att dö en smula.
- Skywalker