Prerekwizyty. Aby pisać midlety należy zainstalować: JDK 1.2 lub nowszy, CLDC: cldc/download.

Wielkość: px
Rozpocząć pokaz od strony:

Download "Prerekwizyty. Aby pisać midlety należy zainstalować: JDK 1.2 lub nowszy, CLDC: cldc/download."

Transkrypt

1 Java ME 1. Wprowadzenie. 2. Prerekwizyty. 3. Pisanie midletów cykl życia, kompilacja, dystrybucja i uruchomienie. 4. Tworzenie interfejsów użytkownika. 5. Grafika 2D. 6. Korzystanie z sieci. 7. Narzędzia programistyczne. 1

2 Java ME Java ME jest zbiorem technologii oraz specyfikacji, które s ą implementowane przez środowiska JRE dostępne na urządzeniach przenośnych. Najważniejsze technologie wchodzące w skład JME dla telefonów komórkowych to: CLDC (Connected Limited Device Configuration) specyfikacja JSR- 30 (wersja 1.0) i JSR-139 (wersja 1.1) MIDP (Mobile Information Device Profile) specyfikacja JSR-37 (wersja 1.0) i JSR-118 (wersja 2.0) Ponadto istnieje wiele dodatkowych technologii implementowanych przez poszczególne urządzenia, np. JSR-82 Bluetooth, JSR-184 Java 3D, JSR-135 Mobile Media,... 2

3 Prerekwizyty Aby pisać midlety należy zainstalować: JDK 1.2 lub nowszy, CLDC: MIDP cldc/download.html 3

4 Pierwszy midlet import javax.microedition.lcdui.display; import javax.microedition.lcdui.form; import javax.microedition.midlet.midlet; import javax.microedition.midlet.midletstatechangeexception; public class HelloMidlet extends MIDlet { private Form form; public HelloMidlet() { this.form = new Form("HelloMidlet"); protected void destroyapp(boolean b) throws MIDletStateChangeException { protected void pauseapp() { protected void startapp() throws MIDletStateChangeException { Display d = Display.getDisplay(this); d.setcurrent(this.form); 4

5 Midlet cykl życia źródło: 5

6 Kompilacja Do kompilacji midletu należy użyć polecenia javac: javac -d.\ -bootclasspath c:\pathto\midp\classes HelloMidlet.java Po kompilacji należy wykonać tzw. preweryfikacj ę, która przystosowuje klas ę do uruchomienia przez KVM: preverify -classpath c:\pathto\midp\classes; HelloMidlet Wynikowa klasa znajdzie si ę w podkatalogu output. Na zakończenie należy przygotować archiwum jar oraz deskryptor jad. 6

7 Dystrybucja oprogramowania Program JME składa si ę zwykle z dwóch plików: archiwum jar i deskryptora jad. Plik jad zawiera opis programu wraz z lokalizacj ą archiwum, które zawiera midlety. MIDlet-Jar-URL: mehello.jar MIDlet-1: HelloMidlet,,HelloMidlet MIDlet-Name: pierwszy zbior midletow MIDlet-Vendor: Jan Piotrowski MIDlet-Version: MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 7

8 Dystrybucja oprogramowania W przypadku, gdy posiadamy lokalnie archiwum z programem plik jad nie jest wymagany. W takiej sytuacji odpowiednie wpisy musz ą być dołączone do pliku META-INF/MANIFEST-MF: Manifest-Version: 1.0 MIDlet-1: HelloMidlet,,HelloMidlet MIDlet-Name: pierwszy zbior midletow MIDlet-Vendor: Jan Piotrowski MIDlet-Version: MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 Testowanie programu: midp -descriptor hello.jad 8

9 Uruchomienie programu Program instalujemy w telefonie zgodnie z instrukcj ą obsługi. Po uruchomieniu ukaże sie następujący ekran: 9

10 Obsługa menu Aby utworzyć menu trzeba stworzyć komendy javax.microedition.lcdui.command. Komendy dodaje si ę do obiektu implementującego javax.microedition.lcdui.displayable. Ponadto komponent zawierający komendy musi ustawić obiekt nasłuchujący javax.microedition.lcdui.commandlistener, który będzie zawierał kod wykonany przy wybraniu pozycji w menu (Command). 10

11 Obsługa menu public class CommandMidlet extends MIDlet implements CommandListener{ private Command exitcommand, infocommand, anycommand; private TextBox box; public CommandMidlet() { this.exitcommand = new Command("Exit", Command.SCREEN, 1); this.infocommand = new Command("Info", Command.SCREEN, 2); this.anycommand = new Command("Command", Command.SCREEN, 2); protected void startapp() { this.box = new TextBox("Command Midlet", "Witamy w midlecie", 256, 0); this.box.addcommand(this.exitcommand); this.box.addcommand(this.infocommand); this.box.addcommand(this.anycommand); this.box.setcommandlistener(this); Display.getDisplay(this).setCurrent(this.box); 11

12 Obsługa menu protected void destroyapp(boolean arg0) { protected void pauseapp() { public void commandaction(command c, Displayable d) { if (c == this.infocommand) { this.box.setstring("wybrano info"); return; if (c == this.anycommand) { this.box.setstring("wybrano command"); return; if (c == this.exitcommand) { this.notifydestroyed(); 12

13 Uruchomienie programu Sposób realizacji menu jest uzależniony od modelu telefonu. Zwykle dostępne s ą dwa lub trzy przyciski oraz kierunki umożliwiające wybór odpowiednich opcji. 13

14 Klasa Ticker Efekt: protected void startapp() { this.box = new TextBox("Ticker Midlet", "Witamy w kolejnym midlecie", 256, 0); this.box.addcommand(this.exitcommand); this.box.addcommand(this.infocommand); this.box.addcommand(this.anycommand); this.box.setcommandlistener(this); this.box.setticker(new Ticker("Java ME jest OK")); Display.getDisplay(this).setCurrent(this.box); 14

15 Formularze protected void startapp() { this.form = new Form("Formularz"); this.form.append(new TextField("Imie", "", 16, TextField.ANY)); this.form.append(new TextField("Nazwisko", "", 16, TextField.ANY)); this.form.append(new TextField("Wiek", "", 3, TextField.NUMERIC)); this.form.append(new TextField("tel.", "", 10, TextField.PHONENUMBER this.form.addcommand(this.exitcommand); this.form.setcommandlistener(this); Display.getDisplay(this).setCurrent(this.form); Wynik: 15

16 Grafika 2D klasa GameCanvas źródło: index.html public class SimpleCanvas extends GameCanvas implements Runnable{ private volatile boolean isrunning; private long delay; private int x, y; private int size; public SimpleCanvas() { super(true); x = getwidth() / 2; y = getheight() / 2; size = 0; delay = 20; public void start() { isrunning = true; Thread t = new Thread(this); t.start(); 16

17 Grafika 2D klasa GameCanvas public void stop() { isrunning = false; public void run() { Graphics g = getgraphics(); while (isrunning == true) { tick(); input(); render(g); try { Thread.sleep(delay); catch (InterruptedException ie) { stop(); private void tick() { size = (size + 1) % 20; 17

18 Grafika 2D klasa GameCanvas private void input() { int keystates = getkeystates(); if ((keystates & LEFT_PRESSED)!=0) x=math.max(0, x-1); if ((keystates & RIGHT_PRESSED)!= 0)x=Math.min(getWidth(),x+1); if ((keystates & UP_PRESSED)!= 0) y=math.max(0, y-1); if ((keystates & DOWN_PRESSED)!= 0)y=Math.min(getHeight(), y+1); private void render(graphics g) { g.setcolor(0xffffff); g.fillrect(0, 0, getwidth(), getheight()); g.setcolor(0x0000ff); g.drawline(x, y, x size, y - 10); g.drawline(x, y, x + 10, y size); g.drawline(x, y, x size, y + 10); g.drawline(x, y, x - 10, y size); flushgraphics(); 18

19 Grafika 2D Midlet public class GameMidlet extends MIDlet implements CommandListener { private Display display; private SimpleCanvas canvas;... public void startapp() { if (canvas == null) { canvas = new SimpleCanvas(); canvas.start(); display = Display.getDisplay(this); display.setcurrent(canvas); public void destroyapp(boolean unconditional) { canvas.stop();... 19

20 Hierarchia lcdgui java.lang.object Displayable Command Graphics Item Ticker Canvas Screen Gauge ChoiceGroup Alert Form List TextBox Stringtem DateField TextField ImageItem Klasa konkretna Klasa abstrakcyjna 20

21 Programowanie sieciowe CLDC 1.0 MIDP 1.0 MIDP

22 Programowanie sieciowe Nawiązanie połączenia odbywa si ę za pomoc ą klasy javax.microedition.io.connector: try { Connection con = Connector.open("protocol:address;parameters"); catch (ConnectionNotFoundExeption e) { // brak sterownika dla protokołu Kilka przykładów url'i: HTTP: Connector.open(" gniazdo: Connector.open("socket://java.sun.com:port"); datagram: Connector.open("datagram://java.sun.com:port"); 22

23 Programowanie sieciowe public class TimeMidlet extends MIDlet implements CommandListener{ private TimeClient client; private Command cexit = new Command("Exit", Command.EXIT, 1); private Command cstart = new Command("GetTime", Command.ITEM, 1); public TimeMidlet() { Form f = new Form("Time Demo"); f.append(new StringItem("Wybierz GetTime...", " ")); f.addcommand(cexit); f.addcommand(cstart); f.setcommandlistener(this); Display.getDisplay(this).setCurrent(f); public void commandaction(command c, Displayable s) { if (c == cexit) notifydestroyed(); else if (c == cstart) { Thread t = new Thread(new TimeClient(this)); t.start();... 23

24 Programowanie sieciowe public class TimeClient implements Runnable { private TimeMidlet parent; private StringItem stime; public TimeClient(TimeMidlet m) { parent = m; Form f = new Form("Time Client"); stime = new StringItem("Time:", " "); f.append(stime); Display.getDisplay(parent).setCurrent(f); public void commandaction(command c, Displayable s) { if (c == Alert.DISMISS_COMMAND) { parent.notifydestroyed(); parent.destroyapp(true); 24

25 Programowanie sieciowe public void run() { SocketConnection sc = null; InputStream is = null; try { sc = (SocketConnection) Connector.open("socket://theta.uoks.uj.edu.pl:13"); is = sc.openinputstream(); StringBuffer sb = new StringBuffer(); int c = 0; while (((c = is.read())!= '\n') && (c!= -1)) sb.append((char) c); stime.settext(sb.tostring()); catch(ioexception e) { Alert a = new Alert("Time", "Błąd", null, AlertType.ERROR); a.settimeout(alert.forever); Display.getDisplay(parent).setCurrent(a); finally { try { if(is!= null) is.close(); if(sc!= null) sc.close(); catch(ioexception e) { e.printstacktrace(); 25

26 Narzędzia programistyczne 1. Eclipse plugin: Eclpseme - pakiet CLDC/MIDP np: Sun Java Wireless Toolkit ( lub ze stron producenta telefonu 2. Netbeans plugin do Netbeans: Netbeans Mobility Pack Inne narzędzia kompresor kodu (obfuscator)

27 Podsumowanie Specyfikacja JME składa si ę z wielu różnorodnych API implementowanych przez poszczególne urządzenia mobilne. Jest to szczególnie istotne w przypadku pisaniu kodu, który ma działać na wielu różnych modelach urządze ń. Ze wględu na szybki rozwój technologii i postępując ą miniaturyzacj ę telefony komórkowe potrafi ą obsługiwać coraz bardziej skomplikowane aplikacje napisane w Javie. Niemniej trzeba pamiętać, że urządzenia mobilne nadal wymagaj ą specjalnego sposobu kompilacji i dystrybucji oprogramowania (midletów). 27

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 2

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 2 z wykorzystaniem języka Java ME ćwiczenia 2 Wykorzystanie plików graficznych w MIDlet ach utworzenie obiektu klasy Image (statyczna metoda createimage()) utworzenie obiektu klasy ImageItem dodanie utworzonego

Bardziej szczegółowo

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 1

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 1 z wykorzystaniem języka Java ME ćwiczenia 1 Budowa aplikacji MIDP utworzenie klasy dziedziczącej z klasy java.microedition.midlet.midlet Klasa musi posiadać przynajmniej trzy metody: startapp() inicjalizacja

Bardziej szczegółowo

Java Platform Micro Edition

Java Platform Micro Edition Java Platform Micro Edition Instalacja środowiska programistycznego Java Platform Micro Edition Software Development Kit 3.0 for Windows z lokalizacji http://www.oracle.com/technetwork/java/javame/downloads/sdk30-jsp-139759.html

Bardziej szczegółowo

STWORZENIE PRZYKŁADOWEJ

STWORZENIE PRZYKŁADOWEJ LABORATORIUM SYSTEMÓW MOBILNYCH STWORZENIE PRZYKŁADOWEJ APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Wykonanie poprzedniego ćwiczenia III. Ćwiczenie 1. Stworzenie aplikacji Celem ćwiczenia

Bardziej szczegółowo

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 3

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 3 z wykorzystaniem języka Java ME ćwiczenia 3 Wykorzystanie klasy List do tworzenie menu Klasa List - tworzenie list wyboru (EXCLUSIVE, MULTIPLE, IMPLICIT) Dodatkowe możliwości (dodatkowe komendy, pliki

Bardziej szczegółowo

Wprowadzenie do J2ME

Wprowadzenie do J2ME Wprowadzenie do J2ME Marcin Stachniuk mstachniuk@gmail.com Politechnika Wrocławska Wydział Elektroniki Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ISA 2 25 listopada 2010

Bardziej szczegółowo

Laboratorium z informatyki sem. III/ćw.12 Wydział Transportu PW 2018/19

Laboratorium z informatyki sem. III/ćw.12 Wydział Transportu PW 2018/19 INSTRUKCJA DO ĆWICZENIA 12 PRZYKŁAD APLIKACJI MOBILNEJ W JAVIE METODYKA POSTĘPOWANIA PRZY TWORZENIU MIDLETU Z TRZEMA EKRANAMI EKRAN 1 GUI WYSOKIEGO POZIOMU (KLASA SCREEN) EKRAN2 GUI WYSOKIEGO POZIOMU (KLASA

Bardziej szczegółowo

Programowanie aplikacji na urządzenia mobilne

Programowanie aplikacji na urządzenia mobilne Informatyka I Programowanie aplikacji na urządzenia mobilne dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 JME - Java Platform Micro Edition JME platforma Java przeznaczona

Bardziej szczegółowo

public void startapp() { } public void pauseapp() { } public void destroyapp(boolean unconditional) { }

public void startapp() { } public void pauseapp() { } public void destroyapp(boolean unconditional) { } INSTRUKCJA DO ĆWICZENIA 2 METODYKA POSTĘPOWANIA PRZY TWORZENIU MIDLETU Z DWOMA EKRANAMI EKRAN 1 GUI WYSOKIEGO POZIOMU (KLASA SCREEN) EKRAN 2 GUI NISKIEGO POZIOMU (KLASA CANVAS) I Podstawowy szkielet MIDetu.

Bardziej szczegółowo

Laboratorium z informatyki sem. III/ćw.11 Wydział Transportu PW 2017/18

Laboratorium z informatyki sem. III/ćw.11 Wydział Transportu PW 2017/18 INSTRUKCJA DO ĆWICZENIA 11 PIERWSZA APLIKACJA MOBILNA W JAVIE METODYKA POSTĘPOWANIA PRZY TWORZENIU MIDLETU Z TRZEMA EKRANAMI EKRAN 1 GUI WYSOKIEGO POZIOMU (KLASA SCREEN) EKRAN2 GUI WYSOKIEGO POZIOMU (KLASA

Bardziej szczegółowo

Programowanie w języku Java

Programowanie w języku Java Programowanie w języku Java Wykład 12: Java Platform, Micro Edition (Java ME) Konfiguracje Standard dla pewnych grup urządzeń Connected Limited Devices Configuration (CLDC) procesor 16-bitowy, 192kB RAM

Bardziej szczegółowo

ZAPOZNANIE SIĘ Z TWORZENIEM

ZAPOZNANIE SIĘ Z TWORZENIEM LABORATORIUM SYSTEMÓW MOBILNYCH ZAPOZNANIE SIĘ Z TWORZENIEM APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Podstawowe wiadomości z zakresu języka Java Podstawowa znajomość środowiska Eclipse

Bardziej szczegółowo

M-biznes: Mobile Business. Realizacja aplikacji mobilnych w języku Java. Typy urządzeń przenośnych. Przykłady zastosowań

M-biznes: Mobile Business. Realizacja aplikacji mobilnych w języku Java. Typy urządzeń przenośnych. Przykłady zastosowań M-biznes: Mobile Business Realizacja aplikacji mobilnych w języku Java E-business (Electronic Business): dostęp do komputerowych systemów sprzedaży towarów, usług i informacji za pomocą komputerów osobistych

Bardziej szczegółowo

Java programowanie telefonów komórkowych Na podstawie: http://midlety.net/

Java programowanie telefonów komórkowych Na podstawie: http://midlety.net/ Java programowanie telefonów komórkowych Na podstawie: http://midlety.net/ Twórcy Javy reklamują ją słusznym hasłem: Wystarczy raz zapisać kod a program można uruchomić wszędzie Zalety JAVA: Ożywienie

Bardziej szczegółowo

Programowanie na komórki

Programowanie na komórki Programowanie na komórki J2ME, MIDP 2.0 Adam Sawicki http://regedit.gamedev.pl/ sawickiap@poczta.onet.pl Grudzień 2007 W prezentacji wykorzystane są fragmenty dokumentacji MIDP 2.1 firmy Sun. Programowanie

Bardziej szczegółowo

J2ME Część II. P.J.Podsiadły

J2ME Część II. P.J.Podsiadły J2ME Część II P.J.Podsiadły Stany aplikacji Szkielet aplikacji import javax.microedition.midlet.*; public class MyMIDlet extends MIDlet { public MyMIDlet() { // konstruktor } public void startapp() { //

Bardziej szczegółowo

Wątki. Definiowanie wątków jako klas potomnych Thread. Nadpisanie metody run().

Wątki. Definiowanie wątków jako klas potomnych Thread. Nadpisanie metody run(). Wątki Streszczenie Celem wykładu jest wprowadzenie do obsługi wątków w Javie. Czas wykładu 45 minut. Definiowanie wątków jako klas potomnych Thread Nadpisanie metody run(). class Watek extends Thread public

Bardziej szczegółowo

INSTRUKCJA DO ĆWICZENIA 13. Animacja wielowątkowa w aplikacjach JME. Gra logistyczna.

INSTRUKCJA DO ĆWICZENIA 13. Animacja wielowątkowa w aplikacjach JME. Gra logistyczna. INSTRUKCJA DO ĆWICZENIA 13. Animacja wielowątkowa w aplikacjach JME. Gra logistyczna. I. UTWORZENIE SZKIELETU APLIKACJI 1. Uruchom środowisko programowania NetBeans. Utwórz aplikację typu JME zakładając

Bardziej szczegółowo

Programowanie urządzeń mobilnych na platformie Java ME

Programowanie urządzeń mobilnych na platformie Java ME Programowanie urządzeń mobilnych na platformie Java ME Piotr Kopniak Wprowadzenie Telefon komórkowy jest urządzeniem bardzo popularnym. Przyzwyczailiśmy się już do tego, że każdy człowiek go ma i dzięki

Bardziej szczegółowo

Autor : Mateusz Kupczyk

Autor : Mateusz Kupczyk Technologie biznesu elektronicznego Java 2 Micro Edition J2ME Autor : Mateusz Kupczyk Plan prezentacji Wstęp J2ME - omówienie Szczegółowe omówienie profilu MIDP KVM MIDLet oraz MIDSuite Interfejs użytkownika,

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych

Bardziej szczegółowo

SEMINARIUM DYPLOMOWE

SEMINARIUM DYPLOMOWE Państwowa Wyższa Szkoła Zawodowa w Elblągu SEMINARIUM DYPLOMOWE Gry na urządzenia mobilne Tomasz Gromek, ASK 23-04-2008 r. Według słownika gra jest to zabawa towarzyska, w której występuje element współzawodnictwa,

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Java. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ

Java. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ Procesy i wątki Proces posiada samodzielne środowisko wykonawcze. Proces posiada własny zestaw podstawowych zasobów w czasie wykonywania; W szczególności, każdy proces ma własną przestrzeń pamięci. W uproszczeniu

Bardziej szczegółowo

Multimedia JAVA. Historia

Multimedia JAVA. Historia Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania

Bardziej szczegółowo

J2ME. Java dla urz¹dzeñ mobilnych. Æwiczenia

J2ME. Java dla urz¹dzeñ mobilnych. Æwiczenia IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE

Bardziej szczegółowo

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11 INSTALOWANIE NETBEANS IDE 6.9.1 JAVA SE (54MB) ORAZ DOINSTALOWANIE PAKIETU SUN JAVA WIRELESS TOOLKIT 2.5.2_01 FOR CLDC Uwaga: NetBeans działa poprawnie, jeŝeli komputer wyposaŝony jest w co najmniej 512

Bardziej szczegółowo

Programowanie urządzeń mobilnych. dr inż. Tomasz Walkowiak

Programowanie urządzeń mobilnych. dr inż. Tomasz Walkowiak Programowanie urządzeń mobilnych dr inż. Tomasz Walkowiak Urządzenia mobilne Kieszonkowych rozmiarów urządzenie komputerowe typowo z dotykowym ekranem lub mini-klawiaturą Rodzaje: mobilne komputery (NetBook,

Bardziej szczegółowo

Piotr Orzechowski. Technologie Biznesu Elektronicznego

Piotr Orzechowski. Technologie Biznesu Elektronicznego Wydział Informatyki i Zarządzania Politechnika Wrocławska Cele prezentacji Urządzenia mobilne Rynek aplikacji dla urządzeń mobilnych Cele prezentacji 1. Zapoznanie się z charakterystyką rynku aplikacji

Bardziej szczegółowo

Agata Gałecka, Martyna Sikorska, Tomasz Cebula. 28 kwietnia 2009

Agata Gałecka, Martyna Sikorska, Tomasz Cebula. 28 kwietnia 2009 Politechnika Wrocławska Informatyka 28 kwietnia 2009 Agenda 1 do J2ME 2 J2ME 3 4 5 6 Profil 7 Klasa 8 Narzędzia 9 Agenda 1 do J2ME 2 J2ME 3 4 5 6 Profil 7 Klasa 8 Narzędzia 9 Agenda 1 do J2ME 2 J2ME 3

Bardziej szczegółowo

Aplikacja wielowątkowa prosty komunikator

Aplikacja wielowątkowa prosty komunikator Aplikacja wielowątkowa prosty komunikator Klient 0 (host 1) Wątek 0 Komponent serwera Wątek pochodny 3.1 Klient 1 (host 2) Wątek 1 Komponent serwera Wątek pochodny 3.2 Host 4 Serwer Wątek 3 Klient 2 (host

Bardziej szczegółowo

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans. GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans

Bardziej szczegółowo

Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1

Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1 Współbieżność i równoległość w środowiskach obiektowych Krzysztof Banaś Obliczenia równoległe 1 Java Model współbieżności Javy opiera się na realizacji szeregu omawianych dotychczas elementów: zarządzanie

Bardziej szczegółowo

WSPÓŁBIEŻNOŚĆ. MATERIAŁY:

WSPÓŁBIEŻNOŚĆ. MATERIAŁY: WSPÓŁBIEŻNOŚĆ ZAGADNIENIA: procesy, wątki, synchronizacja, synchronizacja w Java 5.0 blokady, egzekutory, zbiory wątków MATERIAŁY: http://docs.oracle.com/javase/tutorial/essential/concurrency/ HTTP://USERS.UJ.EDU.PL/~CIESLA/

Bardziej szczegółowo

Języki Programowania II Wykład 3. Java podstawy. Przypomnienie

Języki Programowania II Wykład 3. Java podstawy. Przypomnienie Języki Programowania II Wykład 3 Java podstawy Przypomnienie Analiza, projektowanie, programowanie, testowanie, wdrażanie Iteracyjnie nie kaskadowo Przypadki użycia = opowiastki o używaniu systemu = wymagania

Bardziej szczegółowo

Programowanie rozproszone w języku Java

Programowanie rozproszone w języku Java Wstęp Gniazda RMI Podsumowanie Programowanie rozproszone w języku Java Wojciech Rząsa wrzasa@prz-rzeszow.pl Katedra Informatyki i Automatyki, Politechnika Rzeszowska 25 maja 2015 Wojciech Rząsa, KIiA PRz

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Przygotował: Jacek Sroka 1 Programowanie obiektowe Wykład 3 Java podstawy Przygotował: Jacek Sroka 2 Przypomnienie Analiza, projektowanie, programowanie, testowanie, wdrażanie Iteracyjnie nie kaskadowo

Bardziej szczegółowo

Obliczenia równoległe i rozproszone w JAVIE. Michał Kozłowski 30 listopada 2003

Obliczenia równoległe i rozproszone w JAVIE. Michał Kozłowski 30 listopada 2003 Obliczenia równoległe i rozproszone w JAVIE Michał Kozłowski 30 listopada 2003 Wątki w JAVIE Reprezentacja wątków jako obiektów Uruchamianie i zatrzymywanie wątków Realizacja wątków Ograniczenia Mechanizmy

Bardziej szczegółowo

1. Co można powiedzieć o poniższym kodzie (zakładając, że znajduje się on w jednym pliku A.java)?

1. Co można powiedzieć o poniższym kodzie (zakładając, że znajduje się on w jednym pliku A.java)? 1. Co można powiedzieć o poniższym kodzie (zakładając, że znajduje się on w jednym pliku A.java)? public class A { public int i; { i++; System.out.print(i); public static void main(string[] args) { A a1

Bardziej szczegółowo

Aplikacje w Javie- wykład 11 Wątki-podstawy

Aplikacje w Javie- wykład 11 Wątki-podstawy 1 Aplikacje w Javie- wykład 11 Wątki-podstawy Treści prezentowane w wykładzie zostały oparte o: Barteczko, JAVA Programowanie praktyczne od podstaw, PWN, 2014 http://docs.oracle.com/javase/8/docs/ http://docs.oracle.com/javase/9/docs/

Bardziej szczegółowo

RESTful Android. Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie

RESTful Android. Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie RESTful Android Na co zwrócić uwagę przy tworzeniu aplikacji klienckich REST na Androidzie Jacek Laskowski jacek@japila.pl http://www.jaceklaskowski.pl wersja 1.0, 08.12.2011 O prelegencie - Jacek Laskowski

Bardziej szczegółowo

Podstawy otwartych języków programowania Język Java

Podstawy otwartych języków programowania Język Java Podstawy otwartych języków programowania Język Java Wiktor Wandachowicz Platforma Java Stworzona przez Sun Microsystems, Inc. J2SE Java 2 Standard Edition (platforma ogólnego przeznaczenia/desktop) J2EE

Bardziej szczegółowo

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1 Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 5 Marcin Młotkowski 23 marca 2017 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 50 Historia Początkowe założenia Projekt OAK Sterowanie urządzeniami

Bardziej szczegółowo

JAVA W SUPER EXPRESOWEJ PIGUŁCE

JAVA W SUPER EXPRESOWEJ PIGUŁCE JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie

Bardziej szczegółowo

Java. Programowanie Obiektowe Mateusz Cicheński

Java. Programowanie Obiektowe Mateusz Cicheński Java Programowanie Obiektowe Mateusz Cicheński Wielowątkowość Proces a wątek? Thread vs Runnable sleep(), interrupt(), join() Problemy wielowątkowości Obiekty niemodyfikowalne (immutable) Serializacja

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Java jako język programowania

Java jako język programowania Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)

Bardziej szczegółowo

Aplikacja wielow tkowa prosty komunikator

Aplikacja wielow tkowa prosty komunikator Aplikacja wielow tkowa prosty komunikator Klient 0 (host 1) W tek 0 Komponent serwera W tek pochodny 3.1 Klient 1 (host 2) W tek 1 Komponent serwera W tek pochodny 3.2 Host 4 Serwer W tek 3 Klient 2 (host

Bardziej szczegółowo

Programowanie współbieżne Laboratorium nr 11

Programowanie współbieżne Laboratorium nr 11 Programowanie współbieżne Laboratorium nr 11 Wykonywane w danym momencie programy nazwano procesami [1] - izolowanymi, niezależnie wykonywanymi programami, dla których system operacyjny przydzielał pamięć,

Bardziej szczegółowo

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów

Bardziej szczegółowo

Wielowątkowość. Programowanie w środowisku rozproszonym. Wykład 1.

Wielowątkowość. Programowanie w środowisku rozproszonym. Wykład 1. Wielowątkowość Programowanie w środowisku rozproszonym. Wykład 1. Informacje organizacyjne Wymiar godzin: W-30, LAB-15 Zaliczenie wykonanie kilku programów i ich zaliczenie (w trakcie zajęć laboratoryjnych)

Bardziej szczegółowo

Programowanie w języku Java

Programowanie w języku Java Programowanie w języku Java Wykład 1: Wprowadzenie http://eclipse.elektron.pk.edu.pl/~sdeniziak/ Hasło: java2012 języku Java 1 Literatura Bruce Eckel, Thinking in Java edycja polska, wydanie. 4, Helion

Bardziej szczegółowo

JAVA I SIECI. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html

JAVA I SIECI. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html JAVA I SIECI ZAGADNIENIA: URL, Interfejs gniazd, transmisja SSL, protokół JNLP. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html http://th-www.if.uj.edu.pl/zfs/ciesla/ JĘZYK JAVA,

Bardziej szczegółowo

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po

Bardziej szczegółowo

Wywoływanie metod zdalnych

Wywoływanie metod zdalnych Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Aplikacje RMI Lab4

Aplikacje RMI   Lab4 Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych

Bardziej szczegółowo

Java w Urządzeniach Mobilnych

Java w Urządzeniach Mobilnych Polsko-Japońska Wyższa Szkoła Technik Komputerowych Java w Urządzeniach Mobilnych Autor: mgr inż. Michał Tomaszewski 2 czerwca 2010 Spis treści 1 Wprowadzenie 1 1.1 Java Micro Edition............................

Bardziej szczegółowo

akademia androida Service, BroadcastReceiver, ContentProvider część IV

akademia androida Service, BroadcastReceiver, ContentProvider część IV akademia androida Service, BroadcastReceiver, ContentProvider część IV agenda 1. BroadcastReceiver 2. Service 3. ContentProvider 4. Zadanie 1. 5. Zadanie 2 (domowe). 1. BroadcastReceiver BroadcastReceiver

Bardziej szczegółowo

Remote Method Invocation 17 listopada 2010

Remote Method Invocation 17 listopada 2010 Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Java: interfejsy i klasy wewnętrzne

Java: interfejsy i klasy wewnętrzne Java: interfejsy i klasy wewnętrzne Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 INTERFEJSY Interfejs to opis co klasa implementująca dany interfejs powinna robić, ale bez określania

Bardziej szczegółowo

1. Co można powiedzieć o poniższym kodzie (zakładając, że zaimportowano wszystkie niezbędne klasy)?

1. Co można powiedzieć o poniższym kodzie (zakładając, że zaimportowano wszystkie niezbędne klasy)? 1. Co można powiedzieć o poniższym kodzie (zakładając, że zaimportowano wszystkie niezbędne klasy)? public static void test1() { Object[] o = new Object[] { "1", "2", "3" ; List l = new ArrayList(Arrays.asList(o));

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm

Bardziej szczegółowo

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

1 Atrybuty i metody klasowe

1 Atrybuty i metody klasowe 1 Atrybuty i metody klasowe Składowe klasowe (statyczne) Każdy obiekt klasy posiada własny zestaw atrybutów. Metody używają atrybutów odpowiedniego obiektu. Czasem potrzeba atrybutów wspólnych dla wszystkich

Bardziej szczegółowo

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak Wieloplatformowe aplikacje sieciowe dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak SOAP Serwer: Axis2 / Java Wbudowany komponent nasłuchujący, (Apache / Tomcat) Client Axis2 klient / XML Jeżyk programowania:

Bardziej szczegółowo

Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.

Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r. Programowanie w Javie cz. 1 Wstęp Łódź, 24 luty 2014 r. Prawdy i mity o Javie Java jest techniką webową? (tak, platforma Java EE, aplety) Java jest bezpieczna? (tak, aplety, brak operowania na pamięci)

Bardziej szczegółowo

SWING c.d. przydatne narzędzia: JFileChooser, JOptionPane. drag'n drop, menu kontekstowe.

SWING c.d. przydatne narzędzia: JFileChooser, JOptionPane. drag'n drop, menu kontekstowe. SWING c.d. ZAGADNIENIA: przydatne narzędzia: JFileChooser, JOptionPane. drag'n drop, menu kontekstowe. MATERIAŁY: http://docs.oracle.com/javase/tutorial/uiswing/dnd/ http://th-www.if.uj.edu.pl/zfs/ciesla/

Bardziej szczegółowo

II Tworzenie klasy Prostokąt dziedziczącej z klasy wątku

II Tworzenie klasy Prostokąt dziedziczącej z klasy wątku INSTRUKCJA DO ĆWICZENIA 9 Animacja z wieloma wątkami Projekt1 Utwórz aplikację Swing, która umożliwi rysowanie na panelu 10 prostokątów o tej samej podstawie i losowych wysokościach, niezależnie zmieniających

Bardziej szczegółowo

Wykład 7: Pakiety i Interfejsy

Wykład 7: Pakiety i Interfejsy Wykład 7: Pakiety i Interfejsy Plik Źródłowy w Javie Składa się z: instrukcji pakietu (pojedyncza, opcjonalna) instrukcji importujących (wielokrotne, opcjonalne) deklaracji klasy publicznej (pojedyncza,

Bardziej szczegółowo

Język Java wątki (streszczenie)

Język Java wątki (streszczenie) Programowanie współbieżna Język Java wątki (streszczenie) Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Języka Java wątki Autor:

Bardziej szczegółowo

Aplikacje Internetowe. Najprostsza aplikacja. Komponenty Javy. Podstawy języka Java

Aplikacje Internetowe. Najprostsza aplikacja. Komponenty Javy. Podstawy języka Java Aplikacje Internetowe Podstawy języka Java Najprostsza aplikacja class Hello { public static void main(string[] args) { System.out.println("Hello World!"); Komponenty Javy JRE Java Runtime Environment

Bardziej szczegółowo

Współbieżność w środowisku Java

Współbieżność w środowisku Java Współbieżność w środowisku Java Wątki i ich synchronizacja Zagadnienia Tworzenie wątków Stany wątków i ich zmiana Demony Synchronizacja wątków wzajemne wykluczanie oczekiwanie na zmiennych warunkowych

Bardziej szczegółowo

Wywoływanie metod zdalnych

Wywoływanie metod zdalnych Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia

Bardziej szczegółowo

Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid

Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid Tomasz Kuczyński Dział Aplikacji Tomasz Nowak Zespół Bezpieczeństwa Wrocław, 2.12.2010 r. Konferencja i3: internet

Bardziej szczegółowo

Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1

Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1 Współbieżność i równoległość w środowiskach obiektowych Krzysztof Banaś Obliczenia równoległe 1 Java Model współbieżności Javy opiera się na realizacji szeregu omawianych dotychczas elementów: zarządzanie

Bardziej szczegółowo

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych Laboratorium Programowania Kart Elektronicznych Programowanie JavaCard Marek Gosławski Przygotowanie do zajęć dokumentacja JavaCard i GlobalPlatform środowisko programistyczne karta JavaCard Potrzebne

Bardziej szczegółowo

Podejście obiektowe do budowy systemów rozproszonych

Podejście obiektowe do budowy systemów rozproszonych Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak 1 Mechanizm RMI umożliwia

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Programowanie urządzeń mobilnych

Programowanie urządzeń mobilnych Programowanie urządzeń mobilnych Najważniejsze platformy mobilne Android ios Windows Mobile / Windows Phone 7 Symbian Bada BlackBerry OS Brew Android Producent systemu: Open Handset Alliance Producenci

Bardziej szczegółowo

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1 P d jś i bi kt d b d t ó Podejście obiektowe do budowy systemów rozproszonych Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java),wywiedziony idi z Remote obie kt aplikacja klie ncka interfe js serw

Bardziej szczegółowo

Dokumentacja do API Javy.

Dokumentacja do API Javy. Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu

Bardziej szczegółowo

Interfejsy w Java. Przetwarzanie równoległe. Wątki.

Interfejsy w Java. Przetwarzanie równoległe. Wątki. Informatyka I Interfejsy w Java. Przetwarzanie równoległe. Wątki. dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Interfejsy w Java Pojęcie interfejsu w programowaniu Deklaracja

Bardziej szczegółowo

1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {}; static public void m2() {}; void abstract m3();

1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {}; static public void m2() {}; void abstract m3(); 1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {; static public void m2() {; void abstract m3(); default static void m4() {; a) Poprawnie zadeklarowano metodę m1() b) Poprawnie

Bardziej szczegółowo

PROJEKTOWANIE ABSTRAKCYJNEJ KLASY FIGURA PRZECHOWUJĄCEJ WSPÓLNE CECHY OBIEKTÓW GRAFICZNYCH

PROJEKTOWANIE ABSTRAKCYJNEJ KLASY FIGURA PRZECHOWUJĄCEJ WSPÓLNE CECHY OBIEKTÓW GRAFICZNYCH Animacja wielowątkowa - gra zręcznościowa. I. UTWORZENIE SZKIELETU APLIKACJI 1. Uruchom środowisko programowania NetBeans. Utwórz aplikację typu Swing tworząc projekt o nazwie Projekt10 2. Dodaj do projektu

Bardziej szczegółowo

JAVA?? to proste!! Autor: wojtekb111111

JAVA?? to proste!! Autor: wojtekb111111 1 JAVA?? to proste!! 2 Niniejszy tutorial przedstawia krótkie wprowadzenie do programowania w języku JAVA. Jakie narzędzia na początku potrzebujemy do rozpoczęcia programowania w tym języku? JDK (java

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

package pakieta; import pakietb.b; package pakietb; public class B { B(){} public class A { private B b; A(B b) { this.b = b; } }

package pakieta; import pakietb.b; package pakietb; public class B { B(){} public class A { private B b; A(B b) { this.b = b; } } 1. Co można powiedzieć o poniższym kodzie? package pakieta; import pakietb.b; private B b; package pakietb; public class B { B(){ A(B b) { this.b = b; a) Jego kompilacja nie powiedzie się (w klasie A nie

Bardziej szczegółowo

Klasy i obiekty cz II

Klasy i obiekty cz II Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy

Bardziej szczegółowo

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse 1 Cel laboratorium: Nabycie umiejętności przygotowywania testów akceptacyjnych za pomocą narzędzia FitNesse 1. Wg wskazówek

Bardziej szczegółowo

TECHNOLOGIE INFORMACYJNE

TECHNOLOGIE INFORMACYJNE TECHNOLOGIE INFORMACYJNE LAB - SEM IX Prowadzący zajęcia lab: Mgr inŝ. Zbigniew JANIK Dr inŝ. Józef OKULEWICZ Mgr inŝ. GraŜyna SITNICKA Wykład: Prof. Dr inŝ. Lucjan Grochowski TECHNOLOGIE INFORMACYJNE

Bardziej szczegółowo

Wstęp do JUNG. Omówione elementy wykorzystane w Edge Color Project

Wstęp do JUNG. Omówione elementy wykorzystane w Edge Color Project JUNG Java Universal Network/Graph Framework JUNG jest to biblioteka służąca do modelowania, analizy i wizualizacji danych reprezentowanych w postaci grafów lub sieci. Architektura JUNGa wspiera różnorodność

Bardziej szczegółowo

Autor: dr inż. Zofia Kruczkiewicz, Programowanie aplikacji internetowych 1

Autor: dr inż. Zofia Kruczkiewicz, Programowanie aplikacji internetowych 1 Wątki 1. Wątki - wprowadzenie Wątkiem nazywamy sekwencyjny przepływ sterowania w procesie, który wykonuje dany program np. odczytywanie i zapisywanie plików Program Javy jest wykonywany w obrębie jednego

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny

Bardziej szczegółowo

Wzorce logiki dziedziny

Wzorce logiki dziedziny Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),

Bardziej szczegółowo

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka stub interfejs serwer szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów

Bardziej szczegółowo

Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5.

Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5. Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5. Schemat Internetu R R R R R R R 2 Model Internetu 3 Protokoły komunikacyjne stosowane w sieci Internet Protokoły warstwy

Bardziej szczegółowo

Java: kilka brakujących szczegółów i uniwersalna nadklasa Object

Java: kilka brakujących szczegółów i uniwersalna nadklasa Object Java: kilka brakujących szczegółów i uniwersalna nadklasa Object Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU Konstrukcja obiektów Niszczenie obiektów i zwalnianie zasobów

Bardziej szczegółowo