Sławomir Sobótka w Toruniu

Dobre praktyki, Eclipse, Google, Info, Java, Konferencje, Wtyczki do eclipse Komentarze (1) »

TGD.NET

Nawet nie wyobrażacie sobie mojego zdziwienia gdy rano zaraz po przebudzeniu sprawdziłem maile na telefonie a tam informacja z Toruńskiej Grupy Developerów .NET , że Sławek Sobótka wystąpi w Toruniu.

Fajnie rozkręca się TGD .Net, niedawno byłem na organizowanej przez nich konferencji, teraz zaprosili Sławka - gratuluje.

Szkoda, że w Toruniu żaden JUG nie działa.

Wykłady:

  • Domain Driven Design - Wszystko ma swoje miejsce i wszystko jest na miejscu

“Czy zastanawialiście się co jest przyczyną rozkładu średnich i dużych systemów? Czy jest on nieunikniony i jest jedynie kwestią czasu? A może jednak istnieje jakiś sposób na utrzymanie entropii w ryzach? Podczas prezentacji zobaczymy w jaki sposób Domain Driven Design pomaga w okiełznaniu chaosu. W prezentacji znajdą się główne techniki modelowania takie jak Ubiquitous Language, Bounded Context, Strategic Design. Zostaną przedstawione również podstawowe techniki implementacji DDD: przykłady Building Blocks, Command-query Responsibility Segregation, system zdarzeń, przypadki racjonalnego wykorzystania zarówno ORM jak i czystego i SQL.

  • Command-query Responsibility Segregation - ewolucja architektury warstwowej w stronę modularyzacji i skalowania

Z biegiem kariery, tworząc kolejny system lub aplikację, stajemy przed problemami innej klasy. Inna klasa problemu to inne wymagania odnośnie technologii, metodyki i architektury. Popularne architektury warstwowe mogą być nieodpowiednie do pewnych klas problemów - mogą np. narzucać nieracjonalne wykorzystanie ORM lub promować naiwne modelowanie domeny biznesowej. Podczas prezentacji przedstawię nowe ujęcie warstw - architekturę Command-query Responsibility Segregation, która wspiera aplikacje średniej i dużej skali. Architektura CqRS promuje zdobycze nowoczesnej inżynierii oprogramowania takie jak: Domain Driven Design i noSQL, otwiera system na skalowanie oraz w naturalny sposób rozwiązuje typowe problemy z mapowaniem relacyjno-obiektowym. Główne składowe nowej architektury to: dwa stosy warstw, rozwarstwienie logiki, komunikacja zdarzeniowa oraz opcjonalnie event sourcing (składowanie danych w modelu behawioralnym - w przeciwieństwie do klasycznego modelu strukturalnego)

Miejsce: Wydział Matematyki i Informatyki (ul. Chopina)

Data: 13.05.2011

Godzina: 17.00 - 20.00

Rejestracja: WSS , CodeGuru

Do zobaczenia w piątek 13.  ;-)

GWT 1.7

GWT, Google, Info, Wtyczki do eclipse Komentarze (0) »

Wyszła “nowa” wersja Google Web Toolkit oznaczona numerkiem 1.7. Dlaczego użyłem cudzysłowu ? Ano dlatego, że tak w zasadzie jest to GWT 1.6 z poprawioną obsługą dla najnowszych wersji przeglądarek: Internet Explorer 8,
Firefox 3.5, i Safari 4

Zamiana biblioteki z 1.6 na 1.7 nie powinna wymagać zmian w kodzie !! Jedyne co trzeba zrobić to ponowna kompilacja do JavaScript’u.

Infinitest - sprawdźmy to

Eclipse, Java, Wtyczki do eclipse Komentarze (0) »

W sumie stratą czasu byłoby jeżdżenie na konferencje jeśli kończyłoby się jedynie na wysłuchaniu tego co miał do powiedzenia prelegent. Postaram się powoli po testować narzędzia i praktyki, o których miałem przyjemność usłyszeć na JAVArsovia 2009. Na pierwszy ogień pójdzie wtyczka do eclipse (do InteliJ też jest dostępna) Infinitest. Co to takiego? Jest to wtyczka do IDE, która w tle przeprowadza testy jUnit i informuje nas o ich powodzeniu. Co to nam daje? Ano to, że już w chwili pisania testu wiemy czy on przechodzi czy też nie. Jakie ja z tego widzę korzyści?

  • eliminacja prostych pomyłek przy pisaniu samych testów
  • Oszczędność czasu (nie uruchamiamy testów czekając aż się skończą tylko kodujemy dalej bo wiemy że przeszły)

Żeby zainstalować Infinitest wrzucamy link http://eclipse.infinitest.org jako update site w eclipse i instalujemy : ) Po restarcie eclipse plugin już działa. No dobra to co teraz ? Napiszmy trywialny przykład:

[java]
import junit.framework.Assert;
import org.junit.Test;

public class NaszTest {
   @Test
   public void shouldDoSth() throws Exception {
      //given
      Integer liczba = new Integer(10000);
      //then
      Assert.assertEquals(10000, liczba.intValue());
   }
}
[/java]

Ten test jest poprawnie napisany bo faktycznie wartością liczby jest 10000. Ale załóżmy że nam się jedno 0 za dużo wpisało:

[java]
import junit.framework.Assert;
import org.junit.Test;

public class NaszTest {
@Test
public void shouldDoSth() throws Exception {
//given
Integer liczba = new Integer(10000);
//then
Assert.assertEquals(100000, liczba.intValue());
}
}
[/java]

Dodałem “niechcący” jedno zero więcej i kod teraz już by nie przeszedł. Co robi Infinitest ? Informuje, że oczekujemy 100000 podczas gdy liczba ma wartość 10000. I tą informacje dostajemy praktycznie zaraz po zapisaniu pliku. I to w formie do której jesteśmy przyzwyczajeni - przypominającej błąd w składni. No to by było na tyle jeśli chodzi o Infinitest.

infinitest

Silnik: Wordpress - Theme autorstwa N.Design Studio. Spolszczenie: Adam Klimowski.
RSS wpisów RSS komentarzy Zaloguj








2zł Nordic Gold