poniedziałek, 20 sierpnia 2007

Jak u Dilberta (a nawet lepiej)

Zostałem outsourceowany*.

Zaczęło się od tego że dostałem gołego windowsa 2k i miałem zainstalować jdk1.3(!) i eclipsa(3.2). Ba! miałem ich używać... Ale to jeszcze nic.

Pracujemy (razem z ludźmi z mojej firmy) nad dużym legacy--projektem**. OK. Legacy projekty się zdarzają.

Ten legacy projekt w swoim dziedzictwie miał nie pisanie dokumentacji...

Piszę sobie stronę jsp... i użwyam tagów... i one nie mają dokumentacji (Co jest irytujące jeśli pobierają parametr o nazwie map będący Object[][]).
Już to przerabiałem. Najlepiej weź inną, podobną stronę i wklej.
Wiecie co to resource boundle? To jest całkiem niezła idea. Chodzi o to żeby w kodzie nie było tekstół wyświetlanych na ekranie tylko klucze. A teksty są zasysane z pliku (lokalizowanego z uwzględnieniem Locale użyszkodnika).

No to nasz projekt ma resource boundle (To co że jest w jednym języku...). Ma nawet dwa różne resource boundle.

Jeden zawiera wszystkie teksty w całym projekcie. Co jest złe bo:
  1. Przeszukiwanie tego jest hmm uciążliwe
  2. Jak 5 osób naraz edytuje swoje wersje z CVSa to potem merdzowanie tego musi być frajdą.
Drugi przypisuje akcje plikom .jsp.

Jest tam też klasa StaticData zawierająca wszystkie stałe dane. Są tam radosne twórczości w stylu: String[] XXXState = {"1", "2", "3", "4"};

Wnioski:
  1. Jak Cię spytają czy nie pójdziesz do innej firmy i dadzą premię... Zastanów się przed powiedzeniem tak.
  2. Legacy projekty to zło.
  3. Złe decyzje projektowe (jak te (konkretne) resource boundle) to zło.
  4. W javie 1.5 takich problemów nie ma. Albo są kiedy ktoś nie korzysta z jej ficzerów. Zamiast robić takie wyliczenia: String[] XXXState = {"1", "2", "3", "4"}; roni się enuma...
  5. JSP są fajne. (Technologia robienia bardzo bogatych www której można się nauczyć w jeden dzień)

--
* Outsourcing polega na tym że firma A wynajmuje firmę B, by pracownicy firmy B pracowali w siedzibie firmy A i mając jako szefa pracownika firmy A. Wyjaśnienie, w tym schemacie jestem pracownikiem firmy B.

**Legacy--software to jest oprogramowanie odziedziczone (po kliencie, albo stary własny projekt). Ogólnie legacy jest trzy wersje za najnowszą wersją.

Reklama:

Zachęcam do zajrzenia na: http://fizolof.blogspot.com/

Moja strona domowa zmieniła adres: http://jbhome.wikidot.com/

Ta strona nie będzie już updejtowana. Blog został przeniesiony na: http://jbhome.wikidot.com/blog:start

Blog: