java

Ogólnie o języku Java

Warsztaty Deep Test Driven Development with Steve Freeman (Wrocław)

Zapraszam na szkolenie Test Driven Development. 3 dniowe warsztaty
poprowadzi Steve Freeman, współautor niedawno wydanej książki
"Growing Object-Oriente Software Guided by Tests". Szkolenie

Szkolenie TDD, Warszawa 19-21.04

Zapraszam wszystkich na szkolenie z Test-Driven Development, które organizujemy (Pragmatists) w Warszawie w dniach 19-21 kwietnia. Szkolenie będzie głównie w formie warsztatów (java oczywiście).

JDD 09

Po męczącej podróży z Krakowa czas na chwilę refleksji nad ostatnim wydaniem JDD.

Uczestnicząc w różnych wykładach ciężko było nie zauważyć olbrzymich różnic w warsztacie rodzimych prelegentów i ich amerykańskich odpowiedników.

Java Developers' Day 2009 - Kraków

Miałem wczoraj zaszczyt i przyjemność uczestniczyć w największej w Polsce konferencji poświęconej Java - Java Developers' Day 2009 (JDD) w Krakowie (http://09.jdd.org.pl). Frekwencja jak zwykle dopisała, konferencja jak zwykle udana. Mówiąc krótko było fajnie !
Z racji tego, że Oracle Polska był Złotym Sponsorem JDD 09, dane mi było zaprezentować temat "Asynchroniczne, współbieżne i rozproszone przetwarzanie w Java EE (w przykładach z Oracle WebLogic Server, Coherence i TopLink Grid)".

Konferencja w Tatrach - PLOUG (20-23.10.2009, Kościelisko)

Po raz drugi mam przyjemność zaprosić na odbywającą się już po raz piętnasty Konferencję Użytkowników i Deweloperów ORACLE organizowaną przez Polish Oracle User Group (PLOUG). W tym roku konferencja odbywa się w Kościelisku niedaleko Zakopanego, w dniach od 20-go do 23-go października (wtorek-piątek). Program można znaleźć tutaj. W trakcie konferencji odbywa się wiele warsztatów i tutoriali - ich opis można znaleźć tutaj, a terminy tutaj. Jak zawsze podczas Konferencji jest okazja do wycieczek - ich listę można znaleźć tutaj.
W tym roku będę miał frajdę poprowadzić aż 5 sesji (chyba ominą mnie wycieczki ;-)) - wszystkie są bezpłatne !

Profilery kłamią

Poszukując metod na zwiększenie wydajności programu do automatycznego doboru indeksów w bazach danych, który piszę w ramach swojego doktoratu, postanowiłem użyć profilera.

JAVArsovia 2009 - zapraszam na sesję o wirtualizacji Java (czyli aplikacje Java bez systemu operacyjnego)

Cześć,

4.lipca (sobota) od 9:00 do północy w Warszawie, w gmachu Wydziału Biologii Uniwersytetu Warszawskiego (ul. Ilji Miecznikowa 1) odbywa się renomowana, fajna, z tradycjami konferencja pasjonatów technologii Java - JAVArsovia 2009 (http://javarsovia.pl). Jak co roku, są zarówno ciekawe tematy (tu rozkład jazdy), jak i fajni prelegenci.
Organizatorzy byli dla mnie szczodrzy - moja propozycja tematu w ramach Call for Papers została zaakceptowana, czyli poprowadzę sesję pt:
Wirtualizacja wirtualnej maszyny Java - czyli jak uruchamiać aplikacje Java bez systemu operacyjnego.

Spotkanie Poznań JUG : Debugging and Profiling in Java - Dawid Weiss [04.06.2009]

Zapraszamy na kolejne spotkanie poznańskiej grupy użytkowników języka Java. Spotkanie odbędzie się wyjątkowo w czwartek 04.06.2009 (to już w przyszłym tygodniu!) o godzinie 18:00 w siedzibie Cognifide (Aleje Wielkopolskie 4, Poznań). Dawid Weiss poprowadzi prezentacje pod tytułem "Debugging and Profiling in Java" . Osoby zainteresowane udziałem w spotkaniu prosimy o zarejestrowanie się w tym formularzu.

Konferencja java4people

Zapraszamy na konferencję java4people! Jest to jedyna konferencja o Javie i powiązanych z nią technologiach w Szczecinie i regionie. Wśród proponowanych tematów znajdują się rzeczy już znane i popularne, takie jak Enterprise JavaBeans 3.0 czy Spring, ale również technologie, które jeszcze nie zdążyły się na stałe zadomowić w świadomości programistów, takie jak Comet & Bayeux czy Grails.

Refaktoryzacja w praktyce i konkurs

Kiedy pisałem jakiś czas temu artykuł o refaktoryzacji, ciągle po głowie chodziła mi myśl, że nie jest to po prostu jedna z technik, ale pewien sposób myślenia, którym może posługiwać się programista.
To spostrzeżenie zmotywowało mnie do napisania książki dotyczącej refaktoryzacji. Cała książka ma charakter komercyjny, jednak do dyspozycji jest wersja bezpłatna, która przedstawia najważniejsze elementy sposobu myślenia towarzyszące refaktoryzacji. Książka ta ma przede wszystkim za cel pobudzić do wypróbowania tej techniki, zastosowania jej i samodzielnego stwierdzenia, czy jej używanie ma sens. A jeśli tak, to jak ją stosować.

Hibernate - mapowanie dziedziczenia

Po bardzo długiej przerwie spowodowanej koniecznością zagłębienia się w bieżące projekty, kontynuujemy temat Hibernate dla początkujących. Tym razem mapowanie dziedziczenia - table per class, table per class hierarchy i joined subclass. Adnotacje, niuanse, wady i zalety.

SIP Servlet API - mikro-laboratorium do samodzielnego eksperymentowania

Najprostsze środowisko do poznawania SIP Servlet API składa się z - jednego komputera, w którym są uruchomione:

  • IDE (np. Eclipse)
  • serwer aplikacyjny Java EE z obsługą SIP/SIP Servlet (np. Oracle Communications Converged Application Server - OCCAS)
  • softphone (np. X-Lite)

Podczas Javarsovia 2008 posługiwałem się troszkę bardziej złożonym "laboratorium", dzięki któremu łatwiej testować ciekawsze aplikacje korzystające z SIP Servlet API. Można je zbudować stosunkowo niewielkim kosztem.
Poniżej opis takiego mikro-laboratorium.

SIP Servlet API wprowadzenie - część 4 (Aplikacja "Hello SIP Servlet World !")

Struktura aplikacji korzystającej z SIP Servlet jest bardzo podobna do struktury aplikacji webowej (opartej o HTTP Servlet). Możliwe jest nawet łączenie servlet'ów SIP i HTTP w jednej aplikacji. Właściwie jedyna różnica polega na tym, że komponenty SIP Servlet są definiowane przy użyciu deployment descriptor'a sip.xml, a komponenty HTTP Servlet za pomocą web.xml (i opcjonalnie deployment descriptor'ów specyficznych dla kontenera - ale tylko dla web.xml, bo specyfikacja SIP Servlet API takich "specyficznych" deployment descriptor'ów nie wprowadza). W tym podejściu widać jedno z głównych założeń SIP Servlet, czyli maksymalne powtórne wykorzystanie znanych już i sprawdzonych od lat sposobów pracy dewelopera, narzędzi, koncepcji, itd. Programiści są też niemal "zachęcani" do tworzenia usług (aplikacji) konwergentnych, tj. takich w których np. dostęp poprzez web miesza się z dostępem poprzez telefon albo w ramach usług telekomunikacyjnych korzysta się z bogatych treści internetowych lub usług systemów IT.

SIP Servlet API wprowadzenie - część 3 (Konfiguracja IDE)

Można użyć dowolnego IDE do budowy aplikacji korzystających z SIP Servlet i uruchamianych na OCCAS. IDE powinno wspierać deployment aplikacji na WebLogic Server 10.3 (gdyż to jest serwer aplikacyjny Java EE na którym "bazuje" OCCAS 4.0). W poniższym opisie będę używać Eclipse 3.4.1 do którego dodano zestaw wtyczek (plugins): Oracle Enterprise Pack for Eclipse (OEPE). Zestaw ten ułatwia pracę z serwerami aplikacyjnymi WebLogic (od 8.1 do 10.3).

SIP Servlet API wprowadzenie - część 2 (instalacja serwera aplikacyjnego SIP)

SIP Servlet API jest wykorzystywane do budowy aplikacji serwerowych (czyli główna logika usługi jest wykonywana po stronie serwera). Potrzebny jest zatem serwer aplikacyjny z obsługą protokołu SIP (i innych przydatnych w nowoczesnej, tj. opartej o IP, telekomunikacji - np. wykorzystywany do bilingu, czy security protokół Diameter), a także posiadający wbudowany kontener SIP Servlet (do budowy bogatych, konwergentnych usług, łączących światy telekomunikacji i internetu, przydadzą się także inne kontenery, np. webowy, EJB, Spring, web services, czy JMS). Na szczęście jest kilka kontenerów SIP Servlet do wyboru. W moim przykładzie będę się posługiwać serwerem aplikacyjnym WebLogic SIP Server (a właściwie Oracle Communications Converged Application Server, w skrócie OCCAS - znacznie mniej sexy niż "WebLogic SIP Server", ale cóż ;-).

Syndicate content