Nov 24 2008
Tech-Ed’i märkmed III
Panen kirja, mis veel Tech-Ed’ist peas meeles, edasi tuleb juba välismälu kasutama hakata.
Arendusprotsess
Roy Osherove rääkis huvitavalt sellest, kuidas kirjutada hästi (automaat)testitavat koodi.
Miks automaattestimine hea on, seda teavad ehk kõik, aga kordamiseks:
- Regressioonide vältimine (ehk parandame üht asja ja teine läheb katki)
- Varajane vigade avastamine (väga oluline tarkvaratootmise põhiteoreemi seisukohalt)
- Nõuete parem mõistmine
- API dokumentatsioon (kui keegi peab seda APIt ka kohe kasutama, kasvõi testide otstarbeks, saab dokumentatsioon palju parem)
Koodi testitavust saab hinnata selle alusel, kui lihtne on meil:
- Tekitada suvalise objekti instantsi (sest tihti on seal sada erinevat sõltuvust).
- Saada samale testile alati samu tulemusi
- Testida ainult üht komponenti korraga, ilma teisi puutumata
- Kontrollida komponendi sisendeid ja väljundeid
- Isoleerida komponenti tema sõltuvustest ja liidestest
Mitmesugused isoleerimisvajadused on sageli lahendatavad dependency injectionitega, mille kohta leiab veebist juba põhjalikumat lugemist.
Targo märkus: See kõik ei tähenda muidugi, et kogu kood peab alati automaattestidega kaetud olema ja kõik kohad dependency injectioneid täis. Igal projektil on oma iseärasused, vahel ei anna automaattestiimine mingit võitu, vahel aga on see projekti õnnestumiseks möödapääsmatu.
SharePoint veel kord
Südantsoojendav oli kuulda Ishai Sagi ettekannet SharePointi custom field type’idest. Seda seetõttu, et olen ise ühe päris radikaalse custom field type’i projekti realiseerinud (Business Data field type MOSS 2007-s) ja kui on mingi tehnoloogia, kus ma ilmselt maailma top 100 eksperdi seas olen, siis on selleks SharePointi fieldide customiseerimine
Edasi, SharePointiga tegelemiseks üks huvitav gadget on Content Query Web Part:
-
Laseb sooritada päringuid üle mitme listi (mitte küll SQLi stiilis joine)
-
Väga hea jõudlusega, cache’ib asju intelligentselt
-
XSLi põhine customiseerimine
http://office.microsoft.com/en-us/sharepointdesigner/HA101741341033.aspx
Abivahendid veel
Tess Fernandez pidas ühe parima debugimise ettekande, mida ma kunagi kuulnud olen, demonstreerides mitmesuguseid vahendeid, nii neid, mida ma juba teadsin, kui ka uusi.
Minu isiklikuks lemmikvahendiks on kindlasti SOS, mis on mitmel korral lasknud mul keerulises olukorras kangelast mängida. Ja samuti on mul iga kord hea meel, et me elame managed koodi ajastul, kus meil on võimalik nt kogu heap mälu läbi käia ja vaadata, mis objekte sealt seest leiab. Yum.
Kellele Tessi mainitud vahendid võõrad on, saab downloadida ka demo, kus üksikasjalikud instruktsioonid sees.
Järgmine TechEd EMEA on juba Berliinis, mis pole novembrikuus ilmselt enam nii hea variant kui Barcelona. Aga samas ka ehk mitte nii hull kui Tartu.