Java 1 - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Java 1

Description:

Java 1 Wyk ad wst pny mgr in . Micha Misiak Podstawowe informacje mgr in .. Micha Misiak Konsultacje pok j 317, pi tek po wyk adzie e-mail: mmisiak_at_math ... – PowerPoint PPT presentation

Number of Views:65
Avg rating:3.0/5.0
Slides: 30
Provided by: Michal66
Category:
Tags: corba | j2ee | java

less

Transcript and Presenter's Notes

Title: Java 1


1
Java 1
  • Wyklad wstepny

mgr inz. Michal Misiak
2
Podstawowe informacje
  • mgr inz.. Michal Misiak
  • Konsultacje pokój 317, piatek po wykladzie
  • e-mail mmisiak_at_math.uni.lodz.pl
  • strona www www.michalmisiak.prv.pl

3
Zasady zaliczenia
  • Kolokwium Projekt w ramach laboratorium
  • Ocena z wykladu 0,4 ocena z kolokwium 0,6
    ocena z projektu
  • Kolokwium na przedostatnich zajeciach

4
Program wykladów
  • Podstawy jezyka
  • Przeglad klas i pakietów
  • Obsluga zdarzen
  • Rysowanie AWT
  • Swing
  • Aplety
  • Programowanie wspólbiezne
  • Programowanie sieciowe
  • Róznosci (JDBC, JMF, J2ME, )

5
Prawdy i mity o Javie
  • Java jest technika webowa?
  • Java jest bezpieczna?
  • Java jest niezalezna od architektury?
  • Java jest wydajna?
  • Java jest prosta?
  • Java jest potezna?
  • Java jest obiektowa?
  • Java jest rozproszona?
  • Java jest interpretowana?

6
Java prowadzi przemysl programistyczny
  • Najbardziej popularne i pozadane jezyki
    programowania na lipiec 2007, zobacz
    http//www.tiobe.com/tpci.htm
  • Java
  • C
  • C
  • Visual Basic
  • PHP
  • Perl
  • C
  • Python
  • JavaScript
  • Ruby

Zródlo J2EE training http//courses.coreservlets
.com
7
Java jest technika webowa
  • Prawda! Przegladarki WWW moga uruchamiac programy
    w Java tzw. applety
  • Siec WWW moze byc wykorzystana do dostarczenia i
    wykonywania aplikacji
  • Nie trzeba instalowac i sciagac uaktualnien
    aplikacji. Aplikacja znajduje sie pod konkretnym
    adresem, jest zasobem sieciowym
  • Prawda! Biblioteki sieciowe Java sa latwe w
    uzyciu
  • Przecietny uzytkownik moze w latwy sposób pisac
    aplikacje sieciowe w oparciu o gniazda
  • Standardowe protokoly dla systemów rozproszonych
    i API dla DBMS

8
Java jest technika webowa
  • Mit! Java jest rozwiazaniem tylko dla WWW
  • Aplety Java dzialaja w ramach stron WWW
  • Aplikacje Javy moga byc równiez stacjonarne tzw.
    stand-alone
  • Java równiez jako aplikacja mobilna
  • Aktualne wykorzystanie
  • Klient (applet) 5
  • Aplikacja stand-alone (application) 25
  • Serwer (servlets/JSP/EJB) 70

9
Java jest bezpieczna
  • Prawda! Restrykcje na wykonywanie operacji
  • brak mozliwosci wykonywania operacji bezposrednio
    na pamieci
  • Aplety standardowo zabraniaja
  • czytanie z dysku lokalnego
  • zapisywanie na dysk lokalny
  • wykonywania lokalnie programów
  • otwierania polaczen sieciowych innych niz HTTP
  • dostep do prywatnych danych o uzytkowniku (nazwa,
    katalogi, zainstalowane aplikacje, etc)

10
Java jest bezpieczna
  • Mit! Java jest zbyt bardzo restrykcyjna, azeby
    byla uzyteczna
  • Restrykcje stosuja sie wylaczenie do apletów, nie
    do regularnych programów Java
  • Podpisy cyfrowe wspieraja ograniczanie restrykcji

11
Java jest niezalezna od platformy
  • Prawda! Programy w jezyku Java moga byc
    kompilowane na bytecode niezaleznie od
    maszyny/systemu operacyjnego
  • Prawda! Wiekszosc systemów operacyjnych posiada
    implementacje Wirtualnej Maszyny Java (JVM)
  • Windows, Linux, Solaris, MaxOS,
  • Mit! Bezpieczenstwo i przenosnosc moze byc
    osiagnieta bez straty wydajnosci
  • Obecnie programy napisane w jezyku Java sa ok..
    20 wolniejsze niz w C
  • Kolejne wersje JVM daza do zwiekszenia lub
    wyeliminowania start wydajnosci
  • Najprawdopodobniej róznice w wydajnosci pomiedzy
    aplikacjami w C, a w Java pozostanie na
    poziomie ok. 10

(1)
(1) http//java.sun.com/docs/books/tutorial/getSta
rted/intro/definition.html
12
Java jest niezalezna od platformy
  • Mit! Java jest wylacznie interpretowana
  • Wczesniejsze wersje byly interpretowane,
    aktualnie wiele JVM wspiera JIT mechanizm
    Just-In-Time
  • Przyklad kompilatora Javy bezposrednio do jezyka
    maszynowego The GNU Compiler for the Java
    Programming Language
  • Mit! Napisz raz uruchom gdziekolwiek (Write Once
    Run Anywhere)
  • Kod przenoszalny moze byc bardzo latwo uzyskany
    natomiast musi byc przetestowany na platformach,
    na których ma byc uzywany
  • Aplikacje w jezyku Java moga wykonywac lokalny
    kod
  • Graficzne biblioteki zachowuja sie troche inaczej
    na róznych platformach
  • Obsluga wykonywania watków jest bardzo luzno
    zdefiniowana

13
Java jest prosta
  • Prawda! Java wspaniale upraszcza niektóre
    funkcjonalnosci jezyków programowania
  • Java dysponuje automatycznym zarzadzaniem
    pamiecia (Garbage Collector).
  • Brak wskazników oznacza brak niebezpieczenstwa
    wycieków pamieci. Nie ma bezposrednich operacji
    na wskaznikach
  • Nie wykorzystuje sie plików makefile
  • Nie potrzeba plików naglówkowych
  • Wbudowane zarzadzanie wielowatkowoscia

14
Java jest potezna
  • Prawda! Java posiada duzy zbiór standardowych
    bibliotek
  • obsluga sieci URL (Uniform Resource Locator),
    gniazdka TCP i UDP, adres IP, RMI,
  • Komponenty programistyczne beans
  • wielowatkowosc (lekkie procesy)
  • rozproszone obiekty CORBA, JNDI,
  • obsluga baz danych JDBC
  • Grafika sterowanie GUI i rysowanie grafiki
  • Biblioteki z gotowymi strukturami danych
  • Bezpieczenstwo Podpisy cyfrowe, kontrola i
    sterowanie dostepem do zasobów, certyfikaty
  • Serializacja (przesylanie struktur danych)
  • Kompresja strumieni i plików
  • Parsowanie XML

15
Java 2 Standard Edition
16
Pakiety Javy
  • Glówne pakiety
  • JDBC
  • RMI
  • JavaBeans
  • Swing
  • Java 2D
  • Standardowe rozszerzenia
  • Serwlety i JavaServer Pages
  • Enterprise Java Beans (i JNDI)
  • Java 3D
  • Java JMF

17
Java Data Base Connectivity (JDBC)
  • Standardowy mechanizm do podlaczania sie do
    serwerów bazodanowych
  • Wymaga wylaczenie specyficznych sterowników dla
    serwera po stronie klienta. Nie trzeba nic
    zmieniac po stronie serwera
  • Standardowy mechanizm wykonywania zapytan
    bazodanowych
  • Równiez regularne jak i parametryzowane zapytania
    do DB
  • Standaryzowany struktury danych do
    przechwytywania rezultatów zapytan
  • zalozeniem sa relacyjne bazy danych, struktury
    danych jako tabele
  • Nie definiuje skladni SQL
  • Zapytania SQL sa ciagiem znaków
  • Wspieranie rozszerzen serwera bazodanowego

18
Remote Method Invocation
  • Wbudowany protokól obiektów rozproszonych
  • RMI pozwala programistom na dostep do obiektów
    Javy i sterowanie nimi w normalny sposób. Funkcje
    moga byc wywolywane na zdalnym obiekcie przez
    siec
  • Struktury danych moga byc przesylane przez siec
    dzieki mechanizmowi serializacji
  • Podobny do mechanizmu CORBA, ale komunikacja
    wylacznie Java-Java

19
JavaBeans Fasolki
  • Pozwala organizowac kod programu jako komponenty,
    które moga byc wielokrotnie wykorzystywane
  • Graficzne IDE umozliwiaja modyfikacje i
    manipulowanie fasolkami bez koniecznosci
    wnikania w ich strukture. Konstrukcja programu
    technika drag-and-drop
  • Bezpieczniejsze i bardziej przenosne niz
    komponenty ActiveX
  • Mozliwosc umieszczenia stworzonych wczesniej
    fasolek w narzedziach tj. JBuilder, Sun
    JavaWorkshop, NetBeans, IBM VisualAage, etc

20
Swing
  • Podstawowa bibliotek do budowy GUI w Java 2
  • duzy zbiór wbudowanych kontrolek
  • duza elastycznosc i konfigurowalnosc
  • zawiera przydatne kontrolki w tworzeniu aplikacji
    komercyjnych tzw. tooltips, tabbed panes,
    dokowalne menu, wielodokumentowe interfejsy,
    wspieranie HTML, etc
  • Modyfikowalnosc wygladu za pomoca tzw. look and
    feel. Mozna zmieniac w trakcie dzialania
    aplikacji.

21
Java 2D
  • Standardowa biblioteka do rysowania w Java 2
  • Standardowa architektura do latwego rysowania
    obiektów 2D (struktury danych ksztalty, plótno,
    pedzle, kolor, etc)
  • Wiele przydatnych funkcjonalnosci
  • Wypelnianie wzorcami i obrazami
  • Stosowanie róznych czcionek
  • Wybór róznych grubosci i wzorów piór
  • Miksowanie kolorów, zmiana przezroczystosci

22
Róznosci Javy
23
Konfiguracja oprogramowania wymaganego i
pomocnego przy tworzeniu aplikacji w Javie
  • Nalezy zainstalowac Java (aktualnie dostepna Java
    w wersji 6!) Najlepiej jednak uzyc wersji JDK
    (Java Development Kit) 5 http//java.sun.com/j2se
    /1.5.0/download.jsp
  • Pobrac J2SE (Stanard Edition), nie J2EE!
    (Enterprise Edition)
  • Pobrac JDK, nie tylko JRE
  • Ustawic zmienna srodowiskowa classpath

24
Dokumentacja
  • Sukcesem w programowaniu w Javie jest umiejetnosc
    poslugiwania sie dokumentacja
  • http//java.sun.com/j2se/1.4.2/docs/api/
  • Istnieje równiez szereg dobrych tutoriali
  • The Java Tutorials http//java.sun.com/docs/books
    /tutorial/
  • http//www.apl.jhu.edu/hall/java/

25
Srodowisko programowania
  • Eclipse (http//www.eclipse.org)
  • Eclipse IDE for Java Developers
  • Eclipse IDE for Java EE Developers
  • Netbeans (http//www.netbeans.org)
  • NetBeans Mobility 5.5.1 ML
  • NetBeans CDC
  • NetBeans Visual Web Pack 5.5.1
  • NetBeans Profiler
  • JBuilder (http//www.borland.com)
  • JCreator (www.jcreator.com)

26
Eclipse
27
Netbeans
28
Literatura
  • Core Java 2 Podstawy
  • Java 2 Techniki Zaawansowane

29
Pytania ?
Write a Comment
User Comments (0)
About PowerShow.com