Archive for the 'Wzorce projektowe' Category

Even i Odd, czyli DRY in Action 2

Wednesday, January 27th, 2010

Przeglądam ostatnio jakiś stary moduł do softu, który piszę. Trafiłem na ciekawy przypadek złamania zasady DRY. W poprzednim wpisie opisałem czym jest ta zasada. Dla przypomnienia DRY, czyli skrót od angielskiego Don’t Repeat Yourself jest zasadą dobrego programowania, która mówi, żeby unikać powtórzeń kodu. Pozwala to na lepsze zarządzanie kodem (dokładnie zmianą kodu) i tym [...]

Od ogółu do szczegółu i z powrotem, czyli sprytna refaktoryzacja kodu

Thursday, January 7th, 2010

Opiszę wam tu pewien mechanizm refaktoryzacji kodu. Nazywam to “refaktoryazcja na trzy” ponieważ w trakcie procesu wykonujemy trzy kroki z czego dwa to refaktoryzacja właściwa. Metoda jest dobra jeżeli mamy na głowie termin, dokumentację i mało czasu. Jej zaletą jest bardzo szybkie prototypowanie i możliwość oddania gotowego kodu. Wadą jest to, że podlega jej tylko [...]

Choinki, czyli DRY in action

Monday, December 14th, 2009

Od pewnego czasu na forum przewija się temat “choinek”, czyli wypisywania za pomocą pętli różnych prostych znaków na przykład:

*
**
***

*
**
***

*
***
*****

Zadanie te są banalne, ale w bardzo prosty sposób pozwalają na ilustrację jednej z fundamentalnych zasad dobrego programowania (nie tylko obiektowego), czyli DRY – Don’t Repeat Yourself. Zadania te pozwalają też [...]

S.O.L.I.D.ne programowanie – część 4, czyli apartheid

Monday, November 16th, 2009

S.O.L.I.D.ne programowanie – część 0, czyli wstęp
S.O.L.I.D.ne programowanie – część 1, czyli monogamia
S.O.L.I.D.ne programowanie – część 2, czyli spoufalamy się
S.O.L.I.D.ne programowanie – część 3, czyli podkładamy świnię
Witam w czwartej części cyklu S.O.L.I.D.ne Programowanie. Dzisiejszy temat zajęć to Interface Segregation Principle (ISP).
Co mnie to obchodzi?
Często gdy trafiamy na jakiś interfejs pierwszą myślą jest po kiego wała [...]

O usługach JSE słowa dwa

Wednesday, October 21st, 2009

Znowu 4programmers:
Własne usługi w JSE

1 Wstęp
2 Przygotowanie środowiska
3 Interfejs serwisu

3.1 Testowanie usług
3.2 Ładowanie implementacji

4 Implementacja usługi

4.1 Klasa usługi
4.2 Test usługi
4.3 Implementacja interfejsu biznesowego
4.4 Zadanie dla czytelnika

5 Aplikacja testowa

Dodaj do

Archiwizacja ZIPem – 4programmers

Tuesday, June 16th, 2009

Popełniłem kolejny artykuł na rzecz 4programmers. Tym razem omawiam sprawy związane z archiwizacją plików w Javie i pewne dobre praktyki związane z kodowaniem.
Tradycyjnie link do poszczególnych sekcji:

Interfejs Archive
Interfejs ZipArchive
Implementacja prostej kompresji ZIP
Implementacja kompresji ZIP z sumą kontrolną
Refaktoryzacja
Fabryka ZIP
Rozpakowanie
Podsumowanie

Dodaj do

S.O.L.I.D.ne programowanie – część 3, czyli podkładamy świnię

Saturday, March 28th, 2009

S.O.L.I.D.ne programowanie – część 0, czyli wstęp
S.O.L.I.D.ne programowanie – część 1, czyli monogamia
S.O.L.I.D.ne programowanie – część 2, czyli spoufalamy się
Witam w trzeciej części cyklu S.O.L.I.D.ne Programowanie. Dziś na warsztat bierzemy Liskov Substitution Principle (LSP).
Nie kijem go to pałą
Efekt powinien być ten sam. Zasada Podstawienia Liskowa jest prosta, ale może przysporzyć problemów.
Let q(x) be a [...]

Wstęp o FlyWeight

Monday, March 23rd, 2009

Jutro na spotkaniu Warszawskiej Grupy Wzorców Projektowych – Warszawa-DP (rule 34 in action z tą nazwą, ale jebać to ). przedstawię najpopularniejszy wzorzec projektowy świata. Flyweight, bo o nim będzie mowa jest rozwiązaniem problemu dużej liczby podobnych obiektów i niewystarczającej ilości zasobów w systemie by je pomieścić.
Spotykamy sie o tej co zawsze tam [...]

S.O.L.I.D.ne programowanie – część 2, czyli spoufalamy się

Friday, March 20th, 2009

S.O.L.I.D.ne programowanie – część 0, czyli wstęp
S.O.L.I.D.ne programowanie – część 1, czyli monogamia
Witam w drugiej części cyklu “S.O.L.I.D.ne programowanie”, poświęconego zasadom S.O.L.I.D. Dziś przyjrzymy się bliżej Open-Close Principle (OCP).

Ciężko było mi wyszukać jakiś elegancki przykład no i czasu było mało, ale przepraszam za opóźnienia. Jedziemy.
Drogie panie otwieram nasz kram…
Dobry kod obiektowy powinien [...]

Ciekawy przypadek refaktoryzacji

Monday, March 9th, 2009

Czasami trafi się naprawdę ciekawy przypadek refaktoryzacji kodu. Jeżeli ma się szczęście to będzie to przypadek na tyle krótki, że cały proces refaktoryzacji można przeprowadzić w 15 minut wraz ze zgłoszeniem propozycji zmiany do właściciela kodu.
Stefan Koopmanschap, w trakcie 4Developers opowiadał o refaktoryzacji kodu. Podzielił on ten proces na dwa. Pierwszy to refaktoryzacja drugi to [...]