Witam wszystkich na tym forum. (To mój pierwszy post).
Chciałbym was prosić, zwracając się jako do osób znających się w temacie. O pomoc w nauce do realizacji pewnego zadania. Dostałem zadanie od pracodawcy, które ma sprawdzić jak szybko przyswajam wiedzę z nowych zagadnień i technologii. Efekt mojego projektu decyduje o tym czy dostanę posadę programisty zaczynając 2gi rok studiów informatycznych. Sprawa jest dla mnie jak najbardziej poważna:).
Aktualnie z Javy i innych potrzebnych technologii nie umiem prawie, że nic. Do tej pory pisałem jedynie strukturalnie z Pascalu i C.
Liczę na pomoc w formie wskazania kolejności i/lub aspektów/materiałów które potrzebuję przyswoić aby zrealizować te zadanie. Nie jest wymagane/wskazane przyswajanie wiedzy do przyswojenia czegoś ponad potrzebny do samodzielnego wykonania tego projektu.
Interesuje mnie także czy powinienem zacząć od ogólnie kursu Javy, czy od razu do JEE?
Wdzięczny będę także za przydatne linki, jeśli się komuś chce/zna, a także za wskazówki, które będą dla mnie ważne z waszego doświadczonego punktu widzenia.
A oto polecenie dotyczące projektu.
"""
Zadanie testowe :
technologie :
- java 1.6
- gwt najnowższe
- maven - najnowższy do budowania projektu
- jboss 5.1 wystarczy
aplikacja do liczenia wyrażeń arytmetycznych
cześć kliencka :
- pola do wpisania wyrażenia arytmetycznego w postaci : (a+b)*c
- pola do wpisania wartości dla zmiennych : a=10, b=20, c=3
- przycisk wylicz
- pole gdzie będą wyświetlane wyliczone wyniki coś w stylu : (a+b)*c = 120 gdzie a=10, b=20 itp
cześć serwerowa :
- dwie kolejki typu Queue, jedna do przekazywania obiektu z danymi dotyczącymi wyrażenia arytmetycznego i wartości zmiennych, druga kolejka do przekazywania obiektu z uzupełnionym polem wynik
- dwa MDB (message driver bean), jeden reaguje na odebranie wyrażenia arytmetycznego przekazanego z WWW, drugi reaguje na odebranie pełnego obiektu wraz z wynikiem
- konfigurację MDB i kolejek należy wykonać stosując odpowiednie adnotacji
- wyliczenia wyrażenia arytmetycznego w oparciu o algorytm ONP (odwrotna notacja polska)
zasada działania :
-
na www podajemy przykładowe wyrażenie arytmetyczne
(a+b)*c
a=10
b=15
c=5 -
po wprowadzeniu odpowiednich wartości klikamy przycisk wylicz
-
pojawia się popup informujący iż aktualnie trwa liczenie wyrażenia arytmetycznego
-
wyrażenie arytmetyczne wraz z wartościami zapakowane do odpowiedniego obiektu trafia do części serwerowej do odpowiedniej kolejki
-
MDB 1 reaguje na kolejkę zleceń, pobiera obiekt, wykonuje operację wyliczenia korzystając z algorytmu ONP następnie wynik umieszcza w odebranym z kolejki zleceń obiekcie i wstawia obiekt do kolejki wyników
-
MDB 2 reagje na kolejkę wyników, odbiera wynik i umieszcza go w odpowiednim worku statycznym pod odpowiednim identyfikatorem
-
cześć kliencka w momencie gdy wyświetlany jest popup informujący iż trwa operacja przeliczania podanego wyrażenia co pewien czas uderza do części serwerowej sprawdzając czy odpowiednia odpowiedź pojawiła się w worku statycznym, jeżeli tak to pobiera odpowiedź wyświetla na ekranie informując iż zadanie zostało wykonane
Dla utrudnienia zamiast wyświetlania popup z informacją iż trwa wyliczanie wyrażenia można zrobić ekran informujący iż zlecenie zostało przyjęte do realizacji i można w tym czasie spisać kolejne wyrażenie arytmetyczne.
Natomiast w tel może działać proces który będzie pobierał wyniki i umieszczał ich np na nowej zakładce lub w tym samym oknie ale w liście, tabeli itp.
Taki mechanizm pozwoli na wrzucenie bardzo dużej liczby różnych obliczeń nie czekając na wyliczenia i nie blokując użytkownika. Wyniki zostaną pobrane i wyświetlone po ich wyliczeniu. Zastosowanie odpowiednich identyfikatorów pozwoli na kontrolowanie działania wątku odbierającego wyniki od serwera do tego pozwoli na jednoczesną pracę na kilku przeglądarkach dając pewność że odbierzemy właściwy wynik.
To chyba tyle na temat zadania w razie pytań proszę śmiało.
Ostatecznie tego drugiego MDB który ma odbierać już wyniki i wrzucać go do statycznego worka można olać to już taka nadmiarowa w tym zadaniu.""""
Z góry wszystkim dziękuję za samo już dotarcie do tak długiego posta:).