sobota 13. prosince 2008

Testování vlastního kódu

Někteří programátoři zastávají názor, že jejich kód by měl testovat tester. Ano, to je sice pravda, ale pokud je programátor na projektu, u kterého jsou radikálně sníženy náklady (a k tomu v nastávající finanční krizi bude docházet neustále), měl by si vývojář otestovat svůj kód sám, podle svého nejlepšího vědomí a svědomí.

Jenže ono je to lenosti. Nikomu se nechce testovat, je to strašně nudná práce a mnohdy časově opravdu náročná. Navíc to pak působí tak, že vývojář na pozici senior vytvářel kód mnohem déle, než jeho standard kolega.

Je potřeba, aby takový vývojář dal svému nadřízenému (ve většině případů je to manažer týmu nebo projektu) jasně najevo, že svůj kód během vývoje otestoval v nějkém rámci hodin.

Upřímně, senior programátor, který netestuje svůj kód NENÍ senior programátor. Ale pohodlný vývojář, který chce vypadat, že umí strašně rychle programovat.
Programování není o rychlosti, je o přemýšlení a o předcházení problémů. Vývojář, který si svědomitě otestuje to, co napsal, a který mi tak v důsledku ušetří spoustu peněz při nacházení a opravě chyb (eliminuje - respektive výrazně redukuje náklady na testera a opravu chyb), takový vývojář je ve firmě k nezaplacení.

Některým programátorům urvat koule je málo

Opakovaný kód

Privátní statické metody v místech, kde nemají co dělat (kontrakt WCF služby, pomocné metody typu "vrať mi, kolik je a plus b")

Plochá objektovost

Kopírovaný kód (psal jsem sice výš, ale tohle je opravdu tak špatný dělat...)

Sémantika. Nazvat proměnnou "promenna_1", "promenna_2"

Absence smysluplných komentářů. Mám-li kód: "var result = a + b;" a u něj komentář: "Sčítáme proměnnou 'a' a 'b' do výsledku 'result'

A teď si představte, že nejde o žádného junior programátora, ale člověka, co má certifikaci Solution Developera a programuje víc než deset let.

Takovým nechat urvat koule je málo - a pokud to není ve vaší moci, alespoň je vyhoďte. Neuvěřitelným způsobem totiž dokážou zatěžovat váš tým.
Proč? Je jedno, že ten kód napráskali během jednoho člověkodne, když vás pak oprava chyby, kterou dostane na starosti jiný programátor stojí těch člověkodnů několik.

JavaScript frameworky

Čistě subjektivní příspěvek, mám velmi dobrou zkušenost s YUI.

V některých případech však bývá YUI kanónem na vrabce. I když i zde máte volbu, nemusíte natahovat na klienta tuny JS, abyste změnili barvu jednoho divu, prostě natáhnete z YUI jen tolik, co skutečně potřebujete. Ti co znají, tak vědí.

Nicméně, výbornou alternativou, ale taky se bavíme o lower-based JS frameworku je http://jquery.com/
Nejen, že se s ním skvěle pracuje a zaučíte se během jednoho dne, ale hovoří pro něj i fakt, že ho zvolila firma Microsoft jako jeden z frameworků, který hodlá podporovat ve svém Visual Studiu.

Jestli máte svůj lepší, hezčí, oblíbenější - neberu vám to. Pokud s ním jste efektivní. U mne byste však museli znát minimálně jeden z těchto dvou.

Pokud zapomenete heslo

Každý zapomínáme a hlavně za delší dobu působnosti na netu si vytvoříte několik různých e-mailových účtů, a samozřejmě po nějaké době zapomenete heslo. Potom, například při migraci nastavených mail účtů v Outlooku úpíte, protože heslo sice uložené máte, ale skrývá se za hvězdičkama.

Pomůže: http://www.nirsoft.net/utils/astlog.html