Archive for January, 2012

Zapominamy o metodzie close

Tuesday, January 31st, 2012

W C# mamy using, czyli taką konstrukcję, która przypomina trochę żonę – kurę domową (zakładając, że program to małżeństwo, a programista to mąż). Maż idzie do kibla robi swoje i zapomina wywołać close na desce. Żona samodzielnie zamknie deskę i nie będzie marudzić. W Javie żona ma inne podejście. Nic nie mówi i nic nie [...]

Piractwo w ACTA to najmniejszy problem

Thursday, January 26th, 2012

A to dlaczego? Ano dlatego, że internet z samego swojego założenia jest uodporniony na wszelkie próby odcinania użytkowników czy skutecznego blokowania usług. ARPANETW był projektowany by przetrwać konflikt atomowy zatem kilku durni w garniturach z taniego armaniego nie zagrozi raczej sieci. Zresztą był Napster, który nie trzymał się pierwszej zasady Jamesa Hetfielda, “jeżeni fanów nie [...]

Różnica pomiędzy call i execution w AspectJ

Monday, January 23rd, 2012

Różnica wredna, która potrafi zepsuć dzień. Generalnie zarówno call jak i execution nie różnią się jeżeli chodzi o moment wywołania. Jeżeli zdefiniujemy, że mają być wkompilowane przed to zostaną wkompilowane przed. Jeżeli po to po. Kompilator zapewnia, że w danym przepływie sterowania aspekt będzie umieszczony w odpowiednim miejscu. Oczywiście przy założeniu, że nie ma tam [...]

Ekstremalna obiektowość w praktyce – część 9 – Nie używaj getterów/setterów/własności

Friday, January 20th, 2012

Część 0 Część 1 Część 2 Część 3 Część 4 Część 5 Część 6 Część 7 Część 8 Piątek, a zatem słuchamy Listy w Trójce. Przed nami ostatnia z zasad Jeff’a Bay’a Nie używaj getterów/setterów/własności Niewątpliwie jest to najbardziej obiektowa z zasad. By zrozumieć o co w niej chodzi porównajmy takie oto dwie klasy Listing [...]

Wady użycia mocków z mock-frameworków

Friday, January 20th, 2012

Idzie sobie transakcja z banku. Trafia ona ci na moje biurko i muszę ją zwalidować. Biorę ci ja JSR-303 i przepuszczam ci ja transakcję przez tą zabawkę… Rzecz w tym, że mam kilka własnych walidatorów, które korzystają z danych pobranych z bazy. Dane sa pobierane raz i zapisywane w takim pseudo cache, który potrafi odpowiedzieć [...]

SOPA była do przewidzenia

Wednesday, January 18th, 2012

Mamy sobie rok 1455 w Moguncji niejaki GutenbergW wydaje pierwszą drukowaną biblię zwaną Biblią GutenbergaW. Oczywiście wynalazek druku jest dla Europy przełomowy (choć jesteśmy pod tym względem daleko za murzynami… wróć… Azjatami). Co nam on daje? Przede wszystkim przyspiesza obieg informacji. Informacja przestaje być wyceniana na podstawie nośnika. W praktyce cena nośnika gwałtownie spada. Cały [...]

Ekstremalna obiektowość w praktyce – część 8 – opakowywanie kolekcji w klasy specyficzne dla kontekstu wykorzystania

Saturday, January 14th, 2012

Część 0 Część 1 Część 2 Część 3 Część 4 Część 5 Część 6 Część 7 Gladius Noctis, a na blogu ósma z zasad Jeff’a Bay’a Klasa której polem jest kolekcja nie powinna mieć żadnych innych pól (opakowywanie kolekcji w klasy specyficzne dla kontekstu wykorzystania) Nazwa trochę długa, ale nie ważne. Powróćmy na chwilę do [...]

Jak ogarnąć DI?

Friday, January 13th, 2012

Mini notka w miniblogu By ogarnąć DI należy napisać jeden projekt bez użycia słowa kluczowego new w kodzie biznesowym. Można go używać w provideach. Dozwolone jest też tworzenie prymitywów i Stringów “z palca”. Dodaj do

O różnicach pomiędzy wstrzykiwaniem via setter, a via pole z wykorzystaniem @PostConstruct

Friday, January 13th, 2012

Szybko o tym dlaczego ta druga metoda jest zdecydowanie lepsza. Generalnie po ustawieniu pola chcemy wykonać pewne operacje. Wstrzykiwanie via setter W guice adnotujemy @Inject metodę (dowolna nazwa, widoczność itp.) i to wszystko. Problem polega na tym, że obiekt jest w stanie nieokreślonym. Raz, że jego tworzenie jeszcze trwa, a dwa, że nie mamy kontroli [...]

Szczyt HR-owskiej bezczelności

Thursday, January 12th, 2012

Siedzę ci ja sobie i przeglądam pocztę zaległą dzisiejszą. Taki oto kwiatek: Szanowny Panie, Chciałbym sie z Panem skontaktować, w sprawie służbowej i chciałbym przedstawić Panu szczegóły. Proszę w tym celu o podanie do siebie kontaktu telefonicznego. Pozdrawiam, Nazwisko pana Emila pozwolę sobie litościwie pominąć by nie robić mu wstydu. Tak samo jak i nazwę [...]