czwartek, października 23, 2008

Moje przemyślenia

Moje przemyślenia o programowaniu:
  1. Dlaczego MS chce "zakopać" CAPICOM? Może dlatego, że format podpisanych dokumentów nie jest zgodny z PKCS#7 ani żadnym innym.
  2. Po co są rusztowania (framework) w językach programowania? Po to aby globalnie i ostatecznie załatwić za nas szereg nużących i pracochłonnych drobiazgów, które programista tworząc aplikację albo przeoczył albo jeszcze nie dostrzega ich wagi (np. kontrola pól). W rusztowaniach zebrane zostały nie tylko zdrowe i praktyczne zasady kodowania ale też i doświadcznie wielu programistów. Warto z tego skorzystać choćby dlatego, żeby nie wyważać powtórnie drzwi (zasada DRI - don't repeat yourself). Z doświadczenia widać w swych projektach, że człowiek uczy się nowych rzeczy i ciagle eksperymentując wymyśla nowe rozwiązania w sumie tych samych problemów (frameworki dostarczają te rozwiazania od razu, kompleksowo a nawet wymuszają ich stosowanie). Ile w nich bałaganu i czasami prosi się, żeby bazując na wypracowanych rozwiązaniach zrobić system od nowa na czysto. Niestety czas goni i nie ma czasu na poprawki w kodzie. Przychodzi nowy projekt a my zapominajac wszystko, od nowa błądzimy i nie korzystamy z poprzednio wypracowanych doświadczeń. Mowy już nie ma, żeby wdrożyć te udoskonalenia we wstecz (we wczesniejszych projektach). Czasami, niezmiernie rzadko programista zbierze się i zrobi sobie bibliotekę pożytecznych funkcji lub szablonów. Wtedy widzi dopiero jak szybko wychodzą na bazie tej biblioteki kolejne aplikacji.
  3. Ogólnie można dostrzec taka prawidlowość w wytwarzaniu oprogramowania przez programistę - na poczatku uczy się nowego języka do tej pory aż osiagnie jako taką biegłość w pisaniu. W tym momencie stara się tworzyć aplikacje na bazie swej dotychczasowej wiedzy (zadawalają się tym co już zna). Rzadko kiedy sięga na nowinki (biblioteki), skupia się na rzemiośle. Dobry programista natomiast nie zadawala się tym co umie i ciagle stara się powiekszyć arsenał swych narzędzi.
  4. W J2EE i Eclipse (IBM RAD) mamy to wszystko gotowe i załatwione globalnie, trzeba się jedynie tego nauczyć i korzystać.



Brak komentarzy: