Miesięczne archiwum: Wrzesień 2012

Java Magazine na platformach mobilnych

O Java Magazine, miesięczniku wydawanym przez Oracle, pisaliśmy już wcześniej. Od jakiegoś czasu jednak, prócz standardowej wersji PDF, jest on również dostępny w formie dedykowanych aplikacji na platformy mobilne iOS i Android. Osobiście miałem przyjemność testować tą pierwszą wersję – zarówno na tablecie, jak i telefonie od Apple. Cieszy mnie bardzo fakt, że integruje się ona z Kioskiem (Newsstand). Pozwala to na przechowywanie wszystkich subskrybowanych magazynów w uporządkowany sposób, niejako odizolowanych od standardowych programów. Oferuje także kilka dodatkowych korzyści, jak notyfikacje o nowych wydaniach, czy automatycznie ich ściąganie. Są też jednak minusy – nie da się nie zauważyć, że przeglądanie magazynu odbywa się dość ślamazarnie (nawet na iPhone oznaczonym numerkiem 5, któremu prędkości nie brakuje). Załadowanie się każdej kolejnej strony trwa zauważalną, i co gorsze denerwującą, ilość czasu. Dodatkowo media w artykułach, jak np. filmiki, są osadzone raczej słabo – niejednokrotnie materiał wideo odtwarza się tuż przy brzegu wirtualnej kartki, a po obejrzeniu nie da się go zamknąć czytając w pozycji poziomej.

Jeśli chodzi o wersję na iPhone’a, to jak dla mnie jest ona kompletnie nieużywalna. Wyświetlany jest dokładnie ten sam dokument co na iPadzie, ale przez mniejszy ekran zwyczajnie nie da się go czytać. Są to jednak błędy możliwe do naprawienia, i miejmy nadzieję, że Oracle zdecyduje się na taki właśnie krok. Magazyny w formie elektronicznej nabierają popularności, jednak bardzo ważna jest tutaj jakość dostarczanego produktu. Mimo wszystko zachęcam jednak do własnoręcznego przetestowania i podzielenia się opiniami (szczególnie wersji na Androida, której nie miałem okazji sprawdzić). Bezpośrednie linki można znaleźć poniżej.

Java Magazine – Android

Java Magazine – iOS

Kolejne problemy z bezpieczeństwem Javy

W ostatnim czasie Java niechlubnie przoduje w klasyfikacji na najczęściej kompromitowaną technologię. Praktycznie każdy kolejny tydzień przynosi nam nową lukę w bezpieczeństwie. W ich znajdowaniu szczególnie wyróżnia się Adam Gowdiak z Security Explorations, który z okazji zbliżającej się konferencji Java One postanowił podzielić się ze światem informacją o znalezieniu kolejnego, krytycznego błędu w Javie. Pozwala on na ominięcie sandboxa i wykonanie praktycznie dowolnego kodu na komputerze ofiary. Tym razem podatna na atak jest Java w wersji 5,6,7. Jest ciekawie.

Świetnie, że są osoby, które znajdują tak krytyczne błędy i informują o nich Oracle z odpowiednim wyprzedzeniem. Niepokoi mnie jednak szum medialny, który powstał wokół tematu bezpieczeństwa Javy. Powoli zauważam jego negatywne implikacje. Dobrym przykładem może być rozmowa, w której miałem okazję uczestniczyć, a która dotyczyła wykorzystania technologii opartych o Javę w nowym startupie. Javowy stos technologiczny został praktycznie odrzucony przez osoby związane z projektem, ponieważ „Java nie jest bezpieczna”. Jeżeli jednak przyjrzymy się dokładnie sposobom przeprowadzania ataków wykorzystujących niedawno znalezione luki, szybko zorientujemy się, że bazują one głównie na omijaniu restrykcji nałożonych na kod wykonywany w obrębie apletów. Technologie serwerowe nadal są bezpieczne. Do tematu bezpieczeństwa w Javie wrócimy podczas zbliżającej się konferencji Security BSides, na którą serdecznie zapraszamy.

Zdaj OCEWCD – pytanie 1

Która z wymienionych nazw nie jest nazwą listenera z Servlet API?
Pakiety zostały pominięte.
 

  1. HttpSessionListener
  2. ServletRequestListener
  3. ServletRequestAttributeListener
  4. HttpSessionAttributeBindingListener
  5. ServletContextAttributeListener

 

Pokaż odpowiedź »

Poprawna jest odpowiedź nr 4.

Ważne jest, aby w ramach przygotować do egzaminu OCEWCD dobrze przyswoić wszystkie z ośmiu listenerów, których znajomość jest wymagana. Oto one:

Warto również wiedzieć, jaka klasa reprezentująca zdarzenie odpowiada każdemu z nich, a także jakie metody poszczególne listenery posiadają.

Zdaj OCEWCD

Od pewnego czasu na javablogu pojawiają się pytania z różnych tworzonych przez nas kursów. Jakiś czas temu zakończony został ten przygotowujący do OCPJP, na miejscu którego pojawił się nowy – mający za zadanie przetestować i rozwinać umiejętności potrzebne do zdania egzaminu OCEEJBD. Dziś przyszła pora na uruchomienie kolejnej serii – tym razem odnoszącej się do OCEWCD (Oracle Certified Expert – Web Component Developer). Zapraszam do zapoznania się z pierwszym pytaniem, które opublikowane zostanie bezpośrednio po tym wpisie. Jak zawsze, pytania te wraz ze wskazówkami zawartmi w wyjaśnieniach należy traktować jako materiał uzupełniający. Przygotowania warto oprzeć o sprawdzone, przystosowane do tego materiały, takie jak:

  • Head First Servlets and JSP (druga edycja)
  • Zbiory pytań testowych – najlepsze opinie zbiera JWeb+ V6 od Enthuware. Sam również gorąco polecam ich produkty. Prócz tego w Internecie można znaleźć bardzo wiele darmowych pytań. Ich jakość potrafi jednak być bardzo różna.
  • Specyfikacja Java Servlet 3.0. Nie pojawiła się jeszcze książka w pełni dostosowana do najnowszej wersji egzaminu. Z tego też powodu należy posiłkować się oficjalną specyfikacją, by przybliżyć sobie nowe funkcjonalności.

Darmowe kursy online

Natrafiłem dziś na bardzo ciekawą witrynę, na której znaleźć można internetowe kursy z rozmaitych dziedzin nauki. Nie zabrakło oczywiście szeroko pojętej informatyki, w ramach której można się podszkolić np. ze Scali (szkolenie prowadzi człowiek za ten język odpowiedzialny – Martin Odersky), algorytmów, czy projektowania interfejsów użytkownika. Same kursy są bardzo rozbudowane – wymagają około 5 – 10 godzin pracy tygodniowo. Czas ich trwania jest różny, i potrafi dochodzić nawet do 10 tygodni. Składają się z wykładów w formie materiału video, a także assignment’ów, które uczestnik kursu musi wykonać i wysłać do prowadzącego. Wysoki poziom szkoleń gwarantują poniekąd instytucje, które biorą udział w ich tworzeniu, np. Princeton University, czy Stanford University. Nie pozostaje mi więc nic innego, jak zaprosić do odwiedzenia strony www.coursera.org i poszerzania swojej wiedzy.