wtorek, 18 sierpnia 2009

Żółty pas na JavaBlackBelt!

Witam!
Ostatnie dni stały się bardzo pracowite. Staram się zdobywać jak najwięcej wiedzy posiąść i pracować nad mini-projektami (nie tylko programistycznymi). Dzięki ogromnej pomocy Mateusza Mrozewskiego nauczyłem się ostatnio więcej o programowaniu (w teorii jak i praktyce) więcej niż przez ponad semestr na studiach.
Ale co innego studia a co innego praca nad konkretnym problemem :)

Rendy Pausch powiedział w trakcie słynnego "Ostatniego wykładu" takie słowa: "Mury stają na naszej drodze do celu nie po to, żeby nam przeszkodzić w dotarciu do tego celu, a żeby pokazać nam jak bardzo zależy nam na tym celu.". Takim murem był ostatnio egzamin "OO for Java - Basic" na JavaBlackBelt.com.
Dziś wieczór coś mnie podkusiło i postanowiłem jeszcze raz podejść do niego. I wiecie co? Zdałem!!
Taki mały sukces bardzo mnie podbudował i utwierdził w przekonaniu, że warto zdobywać wiedzę, warto się uczyć a jak się człowiek uczy, to bardzo szybko można dostrzec rezultaty.

Dodatkowo z tej okazji dodałem dwa nowe elementy na blogu:
  • pole z etykietami
  • pole z moim aktualnym statusem na JavaBlackBelt
Oba te pola znajdują się w lewym pasku nawigacyjnym.

Na zakończenie standardowa garść linków:

Pozdrawiam!


czwartek, 6 sierpnia 2009

Using the Eclipse Workbench

Witam!

Tak bardzo spodobał mi się toturial "Eclipse and Java for Total Beginners", że postanowiłem ściągnąć i zapoznać się z dwoma innymi video kursami Marka Dexter'a - "Using the Eclipse Workbench" i "Eclipse and Java Using the Debugger". Na pierwszy ogień poszedł Workbench i oto kilka moich przemyśleń:
  • skróty klawiszowe naprawdę przyspieszają pracę z Eclipsem
  • Eclipse jest edytorem o ogromnej ilości funkcjonalności, które użytkownik może skonfigurować według swojego wyobrażenia
  • domyślne ustawienia Eclipsa są bardzo wygodne i sprawiają wrażenie prostych (i takie są w rzeczywistości!). To często problem, gdy uruchamiamy jakiś program (jak np. IDE) i pojawia się nam okno z ogromną ilością nieznanych funkcji i kontrolek i nie wiemy co zrobić. Tutaj tak nie jest! :)
W rozdziale piątym jest mowa o używaniu zdefiniowanych już skrótów klawiszowych w celu przyspieszenia codziennej pracy z programem. Nie jest ich tak wiele, ale mało też nie, dlatego postanowiłem je spisać i umieścić je tutaj (wraz z opisem):
  • Ctrl + S = Save (!!)
  • Ctrl + Shift + L = Key assist (!!)
  • Ctrl + M = Maximalize
  • Ctrl + Z = Undo
  • Alt + Up Arrow = Move's line up
  • Alt + Down Arrow = Move's line down
  • Ctrl + Alt + Up Arrow = Copy line(s) up // niestety u mnie skrót ten nie chciał zadziałać
  • Ctrl + Alt + Down Arrow = Copy line(s) down // niestety u mnie skrót ten nie chciał zadziałać
  • Ctrl + Left Arrow = Move to previous word
  • Ctrl + Right Arrow = Move to next word
  • Ctrl + Shift + Left Arrow = Add previous word to selection
  • Ctrl + Shift + Right Arrow = Add next word to selection
  • Ctrl + D = Delete current line
  • Ctrl + Shift + Delete = Delete to the end of line
  • Ctrl + F = Find / Replace
  • Ctrl + J = Incremental find next
  • Ctrl + Shift + J = Reverse incremental find
  • Ctrl + Shift + Q = Quick Diff
  • Ctrl + 3 = Quick Access
  • Ctrl + E = Quick Switch Editor
Z początku ilość skrótów może przytłaczać, ale należy pamiętać, że czeka nas wiele lat pracy z Eclipsem (lub podobnym IDE, jak np. NetBeans) i w toku pracy nauczymy się je wykorzystywać nawet o tym nie myśląc :)

Pozdrawiam!

Garść linków:

Code Conventions

Witam!

W trakcje przerabiania kolejnych przykładów z "Thinking in Java" B. Eckel'a zacząłem ponownie zastanawiać się nad tym jak powinienem formatować kod programu. Szybki mail do Mateusza i już mam odpowiedź!

Po pierwsze bardzo wartościową lekturą jest "Code Conventions for the Java Programming Language" - oficjalna dokumentacja Sun Microsystems Inc. omawiająca ich standard formatowania kodu. Lektura łatwa i przyjemna, bo do dosłownie każdego punktu dołączony jest minimum jeden przykład (a często jest ich więcej, by pokazać jak należy, a jak nie należy robić). Dokument jest wydany w kilku wersjach (HTML, PDF, PostScript) tak więc każdy znajdzie coś dla siebie. Co prawda do niektórych wytycznych będzie mi się ciężko przyzwyczaić (jak np. brak spacji między nazwą metody a nawiasem z argumentami w definicji klasy) ale uważam, że warto - zaoszczędzę sobie wiele wysiłku w przyszłości na zmianę długo utrwalanych, złych nawyków i będzie mi łatwiej pracować w zespole.

Ponieważ zacząłem używać Eclipse'a Mateusz podpowiedział mi ciekawą funkcję tego IDE. Jeśli użyjemy skrótu klawiszowego Ctrl + Shift +F (lub w menu wybierzemy Source -> Format) program automatycznie sformatuje nasz projekt według oficjalnych wytycznych. Jeśli dodamy do tego możliwość konfigurowania w znacznym stopniu szablonów (Windows -> Preferences -> Java -> Code Style) wychodzi, że w bardzo krótkim czasie i małym nakładem pracy będziemy mieli kod czytelniejszy i wygodniejszy do edycji. Viva CASE programs! ;)

Garść linków:
P. S. Chciałem z tego miejsca gorąco podziękować za pomoc Mateusza, gdyż jest on nieocenionym nauczycielem! Dziękuję!

niedziela, 2 sierpnia 2009

Eclipse and Java for Total Beginners

Witam serdecznie!

Przyszedł czas na pewne zmiany na blogu. Do tej pory sądziłem, że dobrym pomysłem będzie opisywanie w podobny sposób jak Jacek Laskowski rozdziałów książek, które będę przerabiał. Okazało się to głupotą i ogromną stratą czasu! Tak więc od teraz nie będzie takich postów, chyba że gdzieś znajdę jakiś krótki, ciekawy rozdział, który naprawdę będzie warty omówienia w całości.

Druga zmiana to podejście do samej nauki Javy. Do tej pory byłem przekonany, że najlepszym sposobem na nauczenie się fundamentów Javy będzie pisanie w najprostszym notatniku i kompilacja z linii komend, żebym wiedział dokładnie co się dzieje. Po korespondencji z Mateuszem Mrozewskim postanowiłem nauczyć się podstaw Eclipse'a i swojego pierwszego frameworka - jUnit'a. Stało się tak dlatego, że dostałem od Mateusza projekt Eclipsowy, który pokazywał jak w prosty sposób można testować swoje programy już na początku nauki Javy. Niestety nie znałem Eclipse'a więc nie za wiele mogłem zwojować, ale...

Po chwili wyszukiwania w Google znalazłem kurs video pt. "Eclipse and Java for Total Beginners". Jest to seria 16 odcinków krok po kroku pokazujących jak obsługiwać Eclipse i jak programować w Javie autorstwa Marka Dextera. Pierwsze cztery odcinki są przeznaczone dla osób nie znających żadnego języka programowania. Kolejne to podstawy jUnit oraz TDD (Test-Driven Development). Samo podejście TDD jest dość dziwne w odbiorze z początku, ale osobiście bardzo do mnie przemawia po wykonaniu kilku prostych testów. Cały kurs trwa 3,5 godziny i uważam, że nie jest to czas w żadnych razie stracony.

Pozdrawiam i do kolejnego razu!