Archive for the 'Java' Category
Sunday, May 20th, 2012
Mamy sobie projekt zarządzany za pomocą Mavena, edytowany w Eclipse w którym to projekcie jesteśmy zmuszeni korzystać z Jasper Reports. Sam silnik JR jest bardzo fajny i mi osobiście strasznie się podoba. W połączeniu z Eclipsem wychodzą niestety wszystkie wady tego ostatniego. Eclipse nie ma dobrego edytora wizualnego. Nigdy nie miał i jest to jego [...]
Posted in Eclipse, Java, Maven, Programowanie | 3 Comments »
Friday, May 18th, 2012
W tej zagadce należało rozpatrzyć dwie kwestie. Synchroniczność i asynchroniczność Mając pewną długą operację zazwyczaj musimy zdecydować czy ma być ona wykonana synchronicznie czy asynchronicznie. Oba podejścia są dobre. Wybór zależy zatem od konkretnego przypadku. Ogólnie jeżeli nie mamy jakiś obostrzeń to wybór metody asynchronicznej jest co do zasady odpowiedni. Metoda synchroniczna powinna zostać wybrana [...]
Posted in Inżynieria Oprogramowania, Java | No Comments »
Tuesday, May 15th, 2012
Czasami życie płata nam figla i należy jakoś obsłużyć sytuację, w której dana klasa ma pole statyczne wymagające wstrzyknięcia. Oczywiście takie sytuacje mają miejsce zazwyczaj wtedy gdy trafiamy na jakiś kod zastany, w którym jest burdel i chcemy w miarę niskim pozbyć się operatora new. Okazuje się, że obsłużenie takiej sytuacji w Guice jest dziecinnie [...]
Posted in Guice, Java | 3 Comments »
Wednesday, May 9th, 2012
Pytanie zrodzone na liście WJUGu: Co stanie się jak będziemy chcieli skompilować takie coś: Listing 1. I co? public class App{ public static void main(String[] args) { System.out.println(sum(1,2,3)); } public static int sum(int…numbers) { int sum = 0; http://google.com for (int i = 0; i < numbers.length; i++) { sum += numbers[i]; } return sum; [...]
Posted in Java | 7 Comments »
Monday, May 7th, 2012
Kolejna zagadka najpierw jednak rozwiązanie poprzedniej zagadki. Który listener lepszy Oba są dobrym rozwiązaniem. Wybór powinien nastąpić w wyniku analizy polegającej na odpowiedzi na pytanie: Kto powinien decydować o tym, że dane zdarzenie zakończyło się sukcesem albo porażką? Jeżeli decyzję powinien podjąć klient to lepszym jest listener z listingu 1. Jeżeli to my decydujemy to [...]
Posted in Inżynieria Oprogramowania, Java, Programowanie, Wzorce projektowe | No Comments »
Saturday, May 5th, 2012
Dziś będzie “lajcik”. Mam dla was zagadkę projektową. Załóżmy, że mamy zaprojektować klasę służącą do komunikacji z pewną usługą. Przy czym usługa ta odpowiada na zadane pytania w taki sposób, że odpowiedź może interesować wiele obiektów w ramach aplikacji. Przykładem może być tu proste wciśnięcie przycisku do którego możemy przypisać wiele listenerów. Generalnie zatem mówiąc [...]
Posted in Inżynieria Oprogramowania, Java, Wzorce projektowe | 4 Comments »
Thursday, May 3rd, 2012
Generalnie Vaadin strzela focha jak mu się chce majstrować przy przekierowaniach w oknie aplikacji. Nie jest to duży foch, ale wymaga od nas trochę pracy. Przygotowania Co należy mieć zanim w ogóle przejdziemy do pracy? Po pierwsze należy zarejestrować się jako deweloper do Facebooka. Następnie w zakładce “Aplikacje” tworzymy nową aplikację. Przechodzimy do jej konfiguracji [...]
Posted in Guice, Java, Programowanie, Vaadin | No Comments »
Wednesday, May 2nd, 2012
Skoro w tytule siedzi nazwa klasy to oznacza, że będzie mocno technicznie. Jednak nie tym razem Opis problemu Generalnie mamy sobie kilkanaście niezależnych modułów Gucie, które łączone w różny sposób tworzą naszą aplikację. Świetnym przykładem tego typu rozwiązań są wszelkie aplikacje oparte o pluginy jak chociażby CMSy czy CRMy. Rzecz w tym, że instalacja wszystkich [...]
Posted in Geri, Git, Guice, Java, Programowanie | No Comments »
Tuesday, May 1st, 2012
Pracuję dzielnie nad archetypem – stosem technologicznym dla mojej przyszłej działalności twórczej. Przy okazji naciąłem się na coś co już co najmniej dwa razy przerabiałem i nie powinienem mieć problemów. Na problem ręcznego tworzenia obiektów, których zależności są wstrzykiwane. Po co ręcznie tworzysz obiekty? Nie są to zwykłe obiekty, ale bardzo specyficzne – interceptory. Tworzymy [...]
Posted in Guice, Java | 4 Comments »
Monday, April 30th, 2012
Po raz kolejny na 4p pojawił się temat “jaki obfuskator”. I po raz kolejny odpowiedź brzmi “najlepiej żaden”. Generalnie współczesne obfuskatory potrafią robić kilka rzeczy poza samym zaciemnianiem nazw. Te są przydatne: Usuwanie nieużywanego kodu. Usuwanie informacji dla debuggera. Upraszczanie niektórych wyrażeń (shriking). Optymalizacja kodu m.n. wykorzystania zmiennych lokalnych. W efekcie możemy dostać kod mniejszy [...]
Posted in Antywzorce, Inżynieria Oprogramowania, Java | 4 Comments »