Kilka dni temu zakończyłem lekturę książki „Java. Efektywne programowanie. Wydanie II”. Z początku sceptycznie podchodziłem do wydania jako zbiór zasad które warto wykorzystać podczas pisania, no bo co nowego można napisać. Jednak już po kilku pierwszych tematach zdałem sobie sprawę, że książka warta jest każdej wydanej złotówki.
Autor w 78 tematach omawia zasady tworzenia obiektów, klas, metod, interfejsów, korzystania z typów ogólnych, wyliczeń, adnotacji, oraz zasady programowania, obsługi wyjątków czy też współbieżności i serializacji. kontynuuj czytanie →
Idealnie 1 czerwca dostałem paczkę zawierającą komputer GuruPlug. Czym jest GuruPlug? Jest to mały (9,5×6,3×4,5cm) komputer posiadający 1.2Ghz procesor i 512MB RAM oraz 2 porty USB, 1Gb ethernet, wifi i bluetooth (istnieją jeszcze 2 wersje Server Plus oraz Display różniące się wyjściami). Zakupiłem to urządzenie bo potrzebowałem małego i cichego (bez wentylatorów) urządzenia które spełniać będzie rolę NFS-a, repozytorium GIT oraz serwera testowego dla aplikacji napisanych w języku Ruby.
Ponieważ urządzenie zamówiłem w formie przed sprzedażowej dostałem również tzw. JTag który jest wymagany aby połączyć się z GP poprzez serial port. Jedynym mankamentem jaki zauważyłem dotychczas jest mała ilość miejsca w pamięci NAND (pamięć masowa 512MB, na której jest już zainstalowany Debian lenny), przez co musimy uważać co instalujemy. Rozwiązaniem jest zainstalowanie systemu na zewnętrznym dysku twardym co daje nam dodatkową korzyść w postaci przyśpieszenia działania systemu (pamięć NAND wydaje się tu dość wolna). Niestety instalacja systemu nie należy do najłatwiejszych i jak napisałem wcześniej wymaga dodatkowego urządzenia w postaci JTaga. kontynuuj czytanie →
Jak zapowiedziałem w poprzednim poście tym razem pobawimy się Sitemesh-em i atrybutami kontekstowymi w JSP, więc będzie to wpis raczej krótki. Skupimy się na rozdzieleniu szablonów (layoutu) aplikacji na 2 części. Pierwszy szblon zastosujemy do panelu administracyjnego, wyświetlać będzie listy, formularze i dane, a także umieści na każdej stronie menu administracyjne. Drugi szablon będzie wykorzystywany jedynie podczas logowania i prócz formularza nie będzie zawierał nic więcej. Oczywiście jeśli ktoś chce może śmiało dodać więcej szablonów, np. specjalna strona dla obsługi zamówień która zawiera oddzielne menu, czy też kontynuuj czytanie →
W drugiej części tutorialu udało nam się stworzyć mechanizm dodawania administratorów do naszego panelu, byłoby nierozsądne by każdy użytkownik miał do niego dostęp, dlatego w tej części zajmiemy się mechanizmem kontroli dostępu do naszej aplikacji. Wpis obejmie konfigurację mechanizmów uwierzytelniania oraz autoryzacji wykorzystujących Spring Security (w tym hasła użytkowników zakodowane algorytmem sha256 + z wykorzystaniem tzw. soli). Miało być też coś o Sitemeshu, ale zrobię to w następnym odcinku który pojawi się na dniach. kontynuuj czytanie →
W tej części tutorialu skupimy się na skonfigurowaniu połączenia z bazą danych, podłączeniu frameworka hibernate do naszej aplikacji oraz zobaczymy jak tworzyć encje i jak sprawdzać poprawność danych przed ich zapisem (walidacja). kontynuuj czytanie →
Zanim przystąpimy do tworzenia projektu warto odpowiednio przygotować sobie zaplecze techniczne. Z racji, że w eclipse pisze znaczna część firm (przynajmniej polskich), a ja jeszcze z niego nie korzystałem w tego typu projektach postanowiłem, że to będzie dobry moment by się z nim zmierzyć.
Eclipse wyposażony zostanie dodatkowo we wtyczkę m2Eclipse która pomoże mi w zarządzaniu maven-em. Aplikacja uruchomiona zostanie na kontenerze aplikacji Tomcat, a dane przechowam w bazie PostreSQL. Z racji, że źródła umieszczane będą w zewnętrznym repozytorium opartym o GIT potrzebny jest też ten właśnie program, ja preferuję korzystać z gita poprzez konsolę, oczywiście jeśli ktoś woli można doinstalować odpowiednią wtyczkę bądź nakładkę graficzną.
Największym minusem podczas nauki Spring Framework był brak kompleksowych przykładów pokazujących jak zbudować pełną aplikację wykorzystując nie tylko Spring-a, ale również integrując z nim inne rozwiązania.
Ten tutorial ma za zadanie uzupełnić tą lukę, choć jego zadanie jest troszkę większe. Pisząc tutorial mam zamiar nie tylko pokazać jak wygląda taka aplikacja, ale również skonsolidować swoją wiedzę oraz nauczyć się czegoś więcej od was (choćby poprzez komentarze). Myślę, że będzie to dobre miejsce na wszelkie dyskusje na temat technologii użytych w projekcie oraz sposobu ich użycia. Z chęcią przyjmę również wszelką KONSTRUKTYWNĄ krytykę.
Projekt jaki tutaj zrealizuje to księgarnia internetowa (helion może zacząć się bać ;) ) która na początku oferować będzie standardowe funkcjonalności (kategorie, książki, wyszukiwarkę, mechanizm zamawiania). Szerzej opiszę wszystko w następnych częściach tutorialu.
Jak rok temu i tym razem fundacja Eclipse zaproponowała konkurs w którym do wygrania są koszulki, polo oraz kurtki od eclipse, a dla najlepszych bilet na EclipseCon 2010 lub Eclipse Summit Europe 2009.
Co trzeba zrobić?
Wystarczy napisać krótką recenzję nowej wersji Eclipse (Galileo) w której opiszemy przynajmniej 3 rzeczy które lubimy bądź nie w nowym eclipse, opublikujemy to na blogu, grupie dyskusyjnej lub jakimś portalu, o czym poinformujemy ludzi z eclipse.
Od kilku dni dostępna jest nowa wersja Eclipse Galileo, powoli opadają emocje więc warto sprawdzić co zmieniło się w nowej wersji, a jest o czym pisać bo pomimo niewielkiego skoku na liczniku numeru wersji sam eclipse odmienił się znacznie. Choć na pierwszy rzut oka różnic nie zauważycie.
Eclipse Ganymede po prawej, po lewej nowa wersja Galileo
Jak widać zmian w oknie głównym nie ma żadnych, i słusznie jak dla mnie jest niemal idealne. Jednak mile zaskoczeni zostali użytkownicy MacOS (w tym ja) otóż nowy Eclipse wykorzystuje również Cocoa do wyświetlania okien, na pewno poprawi to warunki estetyczne aplikacji. Dodatkowo dzięki Customize Perspective mamy możliwość ustawić jakie ikony chcemy widzieć w toolbarze oraz jakie pozycje w menu mają być dostępne, dzięki temu dokładnie dostosujemy IDE do naszych możliwości. kontynuuj czytanie →
Już jutro w godzinach 11-15 odbędzie się w Krakowie Eclipse Demo Camp na którym prezentowana będzie najnowsza wersja o kodowej nazwie Galileo. Spotkanie odbędzie się w klubie Baraka znajdującym się na skrzyżowaniu ulicy Warszauera i ulicy Estery. Więcej informacji na stronie spotkania.