poniedziałek, 28 stycznia 2008

Przy filiżańce kawy

Dusia zrobiła śniadanie. Zawołała Michała. Michał przyszedł po paru minutach. Wyglądał na niewyspanego. Dusia nalała jemu kawy do filiżanki. Przyniosła mu kawę do stołu. Michał czule uszczypnął w jej pośladek. Dusia zaśmiała się
--- Napij się kawy lepiej.
Siadła obok niego i patrzyła sie w jego oczy.
--- Dobrą kawę zrobiłaś. Ta kawa dobrze smakuje programistom Javy --- podniósł filiżankę kawy
--- A dlaczego im?
--- Bo mają w logo filiżankę z kawą...
--- Zbożową? --- spytała się śmiejąc
--- Nie wiem jaka to kawa zresztą... trzeba by twórców Javy się spytać. Ale to było tak dawno że wątpię, żeby pamiętali, jaką kawę wtedy pili.
Dusia była trochę zaskoczona taką ripostą. Michał zawsze miał ostatnie słowo do powiedzenia i żarty traktował bardzo poważnie.
--- Mówiłeś mi że warto poznawać rozwiązania firmy Adobe dla korporacji i dużych firm. Dlaczego?
--- To ma do tego że firma Adobe swoje produkty dla firm dostarcza w języku programowania Java. W tej sytuacji do programowania tych produktów trzeba znać ten język programowania.
Michal napił się kawy.
--- A co można zrobić z tym językiem programowania ? --- Dusia zrobiła minę ciekawskiej kobiety
--- Zaprogramować to co jest potrzebne w firmie. W praktyce obecnie najważniejsze jest posiadanie serwera internetowego w JEE. Do wyboru jest wiele rozwiązań JRun, JBoss, Tomcat, IBM WebSphere, BEA WebLogic. Trzeba też mieć bazę danych Obecnie firma może sobie wybierać pomiędzy MySQL, PostgreSQL, Oracle czy MS SQL Server. W firmie powinno też być środowisko pracy wyposażone w edytor dla programisty taki jak Eclipse, NetBeans, IntelliJ.
Teraz coraz większe znaczenie mają aplikacje które pozwalają modelować procesy biznesowe i szybko z nich generować kod dla programisty. Takimi narzędziami mogą być Oracle BPEL Process Manager, Microsoft BizTalk Server, Cape Clear ESB, Borland Caliber. Warto też zainwestować w narzędzia do obsługi pracy zepołowej repozytorium kodu czy obsługi rożnego rodzaju diagramów takie jak Borland Together, Magic Draw, Microsoft Visio, Visual Paradigm for UML. Widać że tych narzędzi jest sporo. Tak więc inwestycja musi być bardzo dobrze przemyślana pod kątem zasobów kadrowych. -- Michał zauważył, że kawa w filiżance mu stygnie.
--- Wygląda, że programiści Javy muszą znać na tym wszystkim i ciągłe się uczyć i poznawać nowe technologie i narzędzia. A firmy muszą dużo inwestować. -- powiedziała ze współczuciem.
--- Sporo zależy od tego czy zaprogramowanie przyniesie korzyści, często jest tak, że firma musi się przekształcać tak jak zaprojektowano procesy i oprogramowanie do tego. Dobry projektant musi znać się na otoczeniu firmy zanim zacznie uwzględniać procesy biznesowe i przenosić to do oprogramowania. -- Michał wypił filiżankę kawy --- Dusiu chodź do komputera coś Ci pokażę
Michał umył filiżanki kawy. Razem wyszli z kuchni. Następnie objął ramieniem Dusię i razem siedli do komputera. Michał włączył komputer.
--- Dusiu chcę Ci pokazać to na przykładzie Adobe LiveCycle Data Services ES.
Komputer się uruchomił i Michał pokazał jej folder D:\lcds
--- Adobe LiveCycle Data Services ES jest tym czego potrzebuje duża i mała firma która potrzebuje jakiegoś oprogramowania które pozwoli jej na zrobienie oprogramowania na własny użytek. Załóżmy że firma potrzebuje prostego systemu komunikacyjnego z możliwością generowania dokumentacji i zarządzaniem danymi z bazy danych.
--- A co to jest ten własny użytek? Nie lepiej jest kupić jakieś gotowe rozwiązanie?
--- Dusiu każda firma jest inna. I to co się opłaca zależy od skali problemu. Firma i tak będzie wolała zatrudnić programistę, który będzie zajmował się dostosowywaniem oprogramowania do własnych potrzeb firmy niż zdać się na firmę z zewnątrz. Problem jest też natury prawnej, otóż gdyby firma zechce te własne dostosowane rozwiązanie sprzedawać jako usługę to złamałaby warunki licencji dla tej wersji Express.
--- Szczerze mówiąc nie za bardzo rozumiem zawiłości licencyjnych.
--- Nie przejmuj się Dusiu większość programistów też ma problemy z tym, więc warto omawiać te sprawy z prawnikami, bo licencje są konstruowane pod kątem prawa amerykańskiego. Dusia uruchamiamy serwer aplikacyjny JRun, klikając w plik D:\lcds\jrun4\bin\startJRun.bat
Dusia zobaczyła okno z komunikatami.
--- Co tam pisze ?
--- To są komunikaty o tym co zostaje uruchomione razem z serwerem aplikacyjnym JRun. Możemy teraz zobaczyć ten serwer w działaniu. Dusiu wpisz http://localhost:8700/
Dusia wpisała to. Strona się otworzyła się.
--- Ale cieszę się, że to działa. Mogę kliknąć w link Samples Application? - spytała się z radością
--- Oczywiście jesteś na stronie http://localhost:8700/samples/ Mamy tam szybki kurs i 9 przykładów pokazujących co można zrobić z tym oprogramowaniem. Otwórz Firefoxa i jak Internet Explorer i wpisz taki adres http://localhost:8700/samples/dashboard/dashboard.mxml
--- O jakie ładne wykresy i tabelki. --- westchnęła z podziwem
--- Ustaw te okna przeglądarek tak obok siebie i poruszaj suwakiem z zakresem miesięcy.
--- Zauważyłam że jak zmienię w jednym oknie to w tym drugim będzie też zmiana, jakby synchronizowało się.
--- Dobrze zauważyłaś. Właśnie taką synchronizację zawdzięczamy technologii Java Message Service. a teraz wpiszemy http://localhost:8700/samples/pdfgen/pdfgen.mxml
--- No mam jakąś wizytówkę Mam kliknąć w przycisk "Create PDF"?
--- Tak pozwoli Ci to tworzyć unikalne dokumenty PDF. Mogę Ci pokazać kod w ActionScript 3 który przekształca grafikę, co widzisz w format danych Base64, aby można to było przesłać jako tekst na serwer.

private function generatePDF():void
{
var snapshot:ImageSnapshot = ImageSnapshot.captureImage(balanceSheet);
balanceSheetImage = ImageSnapshot.encodeImageAsBase64(snapshot);

snapshot = ImageSnapshot.captureImage(earnings);
earningsImage = ImageSnapshot.encodeImageAsBase64(snapshot);

service.generatePDF(xmlModel);
}

A kod MXML przekazuje dane do serwera w postaci dokumentu XML

Serwer po wysłaniu danych XML przesyła Tobie Dusiu adres strony pod którą jest wygenerowany dokument PDF.
--- A skąd o tym wiesz?
--- Wystarczylo zajrzeć do pliku D:\lcds\samples.war, który jest archiwum tych przykładów i plikiem z którego serwer JRun wykorzystuje do uruchamiania aplikacji .
--- Zaciekawiasz mnie tym jeszcze bardziej. A co jeszcze mi pokażesz?
--- Wpisz http://localhost:8700/samples/sqladmin/sqladmin.mxml Masz tutaj panel administracyjny dla bazy danych plikowej, a taką bazą danych w pliku jest HSQL Database.
--- No widzę jakie duże możliwości maja programiści Michale, a kiedy ja to wszystko zrozumiem --- powiedziała z nutką wątpliwości.
Michał przytulił Dusię, pogłaskał po długich włosach. I tak sobie przytuleni patrzyli przed siebie, słuchając własnego oddechu i bicia serca.


Brak komentarzy: