1 / 38 JAVA - OOP. Programowanie w środowisku rozproszonym. Wykład -01[SUM]

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

Download "1 / 38 JAVA - OOP. Programowanie w środowisku rozproszonym. Wykład -01[SUM]"

Transkrypt

1 1 / 38 JAVA - OOP Programowanie w środowisku rozproszonym. Wykład -01[SUM]

2 Plan wykładu 2 / 38 Obiektowa analiza i projektowanie - wstęp do programowania obiektowego w Javie Paradygmaty programowania obiektowego Enkapsulacja (hermetyzacja) Dziedziczenie (rozszerzanie) klas a przyrostowa rozbudowa systemu informatycznego Rzutowanie Polimorfizm Proste przykłady analizy i projektowania obiektowego Diagramy UML

3 Programowanie obiektowe - wstęp 3 / 38 Programowanie obiektowe (orientowane na obiekt lub obiektowo-orientowane) określony sposób tworzenia programów, wspierany przez róŝne języki programowania obiektowego; metodologia, której główne paradygmaty to: Obiekt Klasa Abstrakcja Enkapsulacja (hermetyzacja, ukrywanie) Dziedziczenie (rozszerzanie, generalizacja) Rzutowanie Polimorfizm

4 Programowanie obiektowe wstęp (2) 4 / 38 Programowanie proceduralne: Program jako zbiór funkcji (procedur) realizujących określone zadanie Czasem brakuje wyraźnego (na pierwszy rzut oka) powiązania między funkcjami a danymi, z których korzysta program Programowanie obiektowe: Głównym elementem konstrukcji programów jest obiekt, który łączy w sobie (w logiczny i naturalny sposób) dane i metody na nich operujące Obiektowy program to zbiór dynamicznie tworzonych obiektów, które wzajemnie ze sobą współpracują

5 Programowanie obiektowe wstęp (3) 5 / 38 Historia programowania obiektowego w skrócie: Simula I (1962) oraz Simula 67 (1967) pierwsze języki programowania obiektowego, wprowadzały pojęcie klasy, obiektu, dziedziczenia Smalltalk (od 1971) bazujący na Simuli, wprowadzał GUI C++ (początek lat 80 tych u.w.) przeniesienie koncepcji programowania obiektowego z Simuli do C W latach 80-tych powstawały równieŝ obiektowe odmiany innych języków np. Pascal a, Lisp a, Basic a, Ady Java - zapoczątkowana w 1991 roku, pierwsza publiczna wersja w 1995, zdobywa popularność jako język do zastosowań sieciowych (okres szybkiego rozwoju Internetu)

6 Programowanie obiektowe wstęp (4) 6 / 38 Obiektowa analiza, projektowanie i programowanie opierają się na naturalnych dla człowieka mechanizmach: Mózg ludzki postrzega otaczający nas świat jako zbiór obiektów (człowiek, zwierzę, roślina, przedmiot ) Mózg nieustannie dokonuje klasyfikacji obiektów - łączy obiekty w grupy/klasy (często w sposób hierarchiczny), na podstawie występujących między nimi podobieństw Klasyfikacja ta odbywa się na róŝne sposoby, zaleŝnie od przyjętych w danej chwili kryteriów - przykładowo, dany zbiór artykułów gospodarstwa domowego, moŝna podzielić w róŝny sposób na klasy, raz biorąc pod uwagę np. wagę przedmiotu, a innym razem np. zastosowanie, wymiary, materiał z jakiego zostały zrobiony, kolorystykę itp.

7 Pojęcie obiektu i klasy 7 / 38 Obiekt (w rzeczywistości) zwykle jest rozumiany jako coś materialnego np. drzewo, kamień, kałuŝa, pies, koń, ręka... Obiekt (obiektowa analiza, projektowanie, programowanie): Element mający logiczne uzasadnienie i znaczenie w rozpatrywanym (na pewnym poziomie abstrakcji) modelu Obiektem moŝe być wszystko co tylko daje się opisać, przedstawić w postaci zbioru określonych cech (dane) i/lub zachowań (metody) np. ksiąŝka, praca, człowiek MoŜe lecz nie musi posiadać swego rzeczywistego, tzn. materialnego odpowiednika; np. w programie pocztowym obiektem moŝe być adres osoby (dane: ulica, miasto, kod, ), czy teŝ załącznik do a (nazwa, typ, dane)

8 Pojęcie obiektu i klasy (2) 8 / 38 Obiekt posiada następujące cechy: Strukturę (budowę) która określa ilość i rodzaj informacji, danych przechowywanych w obiekcie (atrybuty obiektu) Stan czyli aktualną zawartość atrybutów obiektu ToŜsamość kaŝdy obiekt daje się jednoznacznie zidentyfikować oraz rozróŝnić od innych obiektów UWAGA: jeśli dwa obiekty naleŝą do tej samej klasy i przechowują (w danej chwili) dokładnie te same dane, to róŝnią się przynajmniej lokalizacją w pamięci komputera i choćby na tej tylko podstawie są rozróŝnialne Zachowanie czyli zbiór metod operujących na obiekcie, jednakowy dla wszystkich obiektów w ramach danej klasy

9 Pojęcie obiektu i klasy (3) 9 / 38 Klasa jest to wzorzec dla obiektów, szablon z którego tworzone są nowe obiekty. Klasa określa zbiór danych oraz metod jakie posiadać będą powstałe z niej obiekty. Intuicja: KaŜdą klasę moŝna przyrównać do foremki, przy pomocy której robi się ciastka. Jedna foremka, czyli klasa = wiele podobnych (bądź jednakowych) ciastek, czyli obiektów Inne porównanie gdyby ktoś napisał na tablicy, czym wg niego jest np. ksiąŝka (dokument posiadający treść, tytuł, autora, określoną ilość stron), a następnie wziął do ręki dwie ksiąŝki, to ksiąŝki te byłyby obiektami, a definicja na tablicy klasą, czyli opisem ich najwaŝniejszych cech.

10 Paradygmaty obiektowości 10 / 38 Programowanie obiektowe to oprócz wykorzystania klas i obiektów do budowy aplikacji, takŝe umiejętne stosowanie pozostałych cech obiektowości: Abstrakcji Enkapsulacji (hermetyzacji) Dziedziczenia Rzutowania Polimorfizmu

11 Paradygmaty obiektowości - abstrakcja 11 / 38 Abstrakcja klasa nie musi uwzględniać wszystkich szczegółów obiektów, powinna skupiać się na cechach istotnych z punktu widzenia tworzonej aplikacji. Tworząc np. bazę danych studentów na potrzeby uczelni, prawdopodobnie nie trzeba w obiektach klasy Student przechowywać wszystkich moŝliwych informacji o danej osobie, jak np. obwód w pasie, waga, kolor skóry, płeć, itp. Być moŝe wystarczy tylko imię, nazwisko i numer indeksu.. Tak więc gdy osobie, której dokładny opis zajął by zapewne wiele stron, przypisujemy obiekt posiadający zaledwie kilka wybranych cech - jest to pewna umowność, abstrakcja.

12 Abstrakcja (2) 12 / 38 Abstrakcja jako cecha obiektowości moŝe być rozpatrywana równieŝ na innych poziomach np. w kontekście zachowań przypisanych do danych klas (obiektów). KaŜdy obiekt pełni w systemie informatycznym określoną rolę. Aby spełniać swoją rolę obiekt posiada pola i metody realizujące stosowne obliczenia, operacje. Korzystanie z obiektu nie wymaga pełnej wiedzy na temat sposobu, w jaki zostały zaimplementowane jego metody zatem abstrahujemy od szczegółów implementacyjnych a skupiamy się na przeznaczeniu obiektu, na sposobie w jaki moŝna uŝyć obiekt w programie.

13 Paradygmaty obiektowości - enkapsulacja 13 / 38 Enkapsulacja (hermetyzacja) jest to ukrywanie pewnych szczegółów implementacyjnych, danych i/lub metod obiektu. Ukrywanie pól i metod w Javie realizowane jest za pomocą tzw. modyfikatorów dostępu (public, protected, private..). Enkapsulacja ułatwia m.in. podział pracy (pracę zespołową), gdyŝ np. osoby odpowiedzialne za opracowanie interfejsu uŝytkownika aplikacji nie muszą wiedzieć jakich algorytmów program uŝywa np. do obliczania rabatu - interesuje ich tylko to, w jaki sposób naleŝy odczytać wartość rabatu dla konkretnego produktu (gdyŝ ich zadaniem jest umieszczenie tej wartości w odpowiednim miejscu okna aplikacji).

14 Enkapsulacja (2) 14 / 38 Intuicja: Jesteśmy przyzwyczajeni do tego, iŝ (czasem) do obsługi skomplikowanych urządzeń (jak np. magnetowid, telewizor) wystarczy krótka instrukcja lub tzw. pilot. Nie musimy np. znać dokładnej budowy i zasad działania telewizora waŝne, Ŝe przy pomocy pilota potrafimy włączać i wyłączać telewizor, a takŝe zmieniać na nim kanały. Uproszczenie obsługi, ograniczenie ilości dostępnych funkcji do niezbędnego minimum ułatwiają wykorzystanie i zmniejszają ryzyko nieumyślnego zepsucia urządzenia to samo tyczy się tworzonego przez nas oprogramowania.

15 Enkapsulacja (3) 15 / 38 Brak enkapsulacji : Po zastosowaniu enkapsulacji :

16 Enkapsulacja (4) 16 / 38 Enkapsulacja ma sens równieŝ w przypadku gdy aplikację tworzy jeden programista, gdyŝ: Ułatwia późniejsze wykorzystanie gotowych i przetestowanych elementów w innych programach Zmniejsza ryzyko popełnienia błędu przy aktualizacji danych przechowywanych w obiekcie. Przykład: Proszę wyobrazić sobie obiekt klasy KontoBankowe, który ma pola: stankonta oraz dostępneśrodki, gdzie dostępneśrodki = stankonta + limit kredytu. Zmiana wartości pól stankonta i dostępneśrodki powinna odbywać się równocześnie! Co więcej, dostępneśrodki nie mogą być wartością ujemną, przed czym równieŝ zabezpieczy nas enkapsulacja.

17 Programowanie obiektowe - dziedziczenie 17 / 38 Dziedziczenie (rozszerzanie, generalizacja, ang.inheritance) - to tworzenie nowej klasy na bazie juŝ istniejącej: Klasa nadrzędna zwana jest takŝe bazową, podstawową, nadklasą Klasa dziedzicząca zwana jest równieŝ klasą podrzędną, pochodną, rozszerzającą, podklasą: - dziedziczy pola i metody klasy bazowej (z wyjątkiem pól i metod oznaczonych jako prywatne) - moŝe posiadać dodatkowe pola i metody w stosunku do klasy bazowej (rozszerzać listę atrybutów i metod) - przedefiniowywać metody z klasy bazowej, jest to tzw. przesłanianie

18 Dziedziczenie (2) 18 / 38 Przykład 1: Weźmy jako przykład klasę Osoba oraz jej dwie klasy pochodne: Student i Nauczyciel. Osoba + imię : String + nazwisko : String Student Nauczyciel + numerindeksu : int + tytułnaukowy : String Klasy Student i Nauczyciel dziedziczą pola imię i nazwisko z klasy Osoba. Wnoszą teŝ własne atrybuty czyli rozszerzają naszą wiedzę o klasie Osoba.

19 Dziedziczenie (3) 19 / 38 Dziedziczenie w Javie jest realizowane za pomocą poleceń extends i implements, umieszczanych w deklaracji tuŝ po nazwie klasy. Dziedziczenie zwane jest takŝe rozszerzaniem od słowa extends (rozszerza). public class Osoba { } public String imie, nazwisko; public class Student extends Osoba { } public int numerindeksu; public class Nauczyciel extends Osoba { } public String tytulnaukowy;

20 Dziedziczenie (4) 20 / 38 Przykład 2: Stwórzmy klasę Prostokat, z metodą obliczpole(), a następnie klasę pochodną Kwadrat. Prostokat + wysokosc : float + szerokosc : float + obliczpole() : float Kwadrat + Kwadrat( dłboku : float ) Proszę zauwaŝyć, iŝ klasa Kwadrat dziedziczy z klasy bazowej Prostokat metodę obliczpole().

21 Rozszerzanie klas w Javie (2) 21 / 38 Przykład 2: public class Prostokat { public float wysokosc, szerokosc; } public float obliczpole() { } return wysokosc * szerokosc; public class Kwadrat extends Prostokat { public Kwadrat( float dlugoscboku ) { wysokosc = dlugoscboku; szerokosc = dlugoscboku; } }

22 Dziedziczenie (5) 22 / 38 MoŜna teraz utworzyć obiekty obu tych klas i wypisać na ekranie pola tych figur korzystając z metody obliczpole(): Prostokat p = new Prostokat(); p.wysokosc = 15; p.szerokosc = 15; System.out.println( Pole prostokąta = + p.obliczpole() ); Kwadrat kwadrat = new Kwadrat( 10 ); System.out.println( Pole kwadratu = + kwadrat.obliczpole() ); Istotny jest równieŝ fakt, iŝ kwadrat jest szczególnym przypadkiem prostokąta. W ten sposób dochodzimy do kolejnej istotnej cechy obiektowości - do rzutowania.

23 Programowanie obiektowe - rzutowanie 23 / 38 Rzutowanie jest to zamiana typu zmiennej. int i = 100; long l = i; i = (int) l; //rzutowanie zmiennej typu int na typ long //przykład rzutowania zmiennej long na int Rzutowanie dotyczy nie tylko typów prostych, lecz równieŝ zmiennych obiektowych, co ilustruje poniŝszy przykład: Kwadrat kwadrat = new Kwadrat( 10 ); Prostokat p = kwadrat; //poprawne rzutowanie zmiennej //obiektowej typu Kwadrat na //zmienną typu Prostokat Prostokat p2 = new Kwadrat( 10 ); //teŝ poprawne

24 Programowanie obiektowe - polimorfizm 24 / 38 Z rzutowaniem wiąŝe się kolejna bardzo waŝna cecha obiektowości polimorfizm. Polimorfizm to wywołanie metody odpowiedniej dla rzeczywistego typu obiektu, niezaleŝnie od typu zmiennej obiektowej wskazującej na ten obiekt. Przesłanianie - tworzenie metody w klasie pochodnej, o tej samej nazwie, z tym samym zestawem argumentów i takim samym typem zwracanej wartości jak w klasie nadrzędnej.

25 Przesłanianie metod a polimorfizm (2) 25 / 38 Przykład 1 - przesłanianie metody class Osoba { public String imię, nazwisko; } public void wyswietlinfo() { System.out.println( nazwisko + + imię ); } class Student extends Osoba { public int nrindeksu; } public void wyswietlinfo() { //przesłanianie metody System.out.println( imię.charat(0) +. + nazwisko + ( + nrindeksu + ) ); }

26 Przesłanianie metod a polimorfizm (3) 26 / 38 Przykład 1 (c.d.) public class Test { public static void main( String[] args ) { Osoba o = new Osoba(); o.imię = "Jan"; o.nazwisko = "Kowalski"; Student student = new Student(); student.imię = "Jan"; student.nazwisko = "Kowalski"; student.nrindeksu = 190; } } o.wyswietlinfo(); //Kowalski Jan o = student; //o wskazuje teraz na //obiekt klasy Student o.wyswietlinfo(); //J. Kowalski (190)

27 Rozszerzanie klas w Javie (3) 27 / 38 Wszystkie klasy w Javie (za wyjątkiem klasy Object) posiadają dokładnie jedną(!) nadklasę. MoŜe to być klasa określona przez programistę za pomocą słowa kluczowego extends bądź teŝ klasa java.lang.object, z której dziedziczą wszystkie inne klasy w Javie (pośrednio lub bezpośrednio). Przykłady: class Osoba {} - klasa Osoba dziedziczy tylko z klasy java.lang.object (w sposób niejawny) class Student extends Osoba {} - tak zadeklarowana klasa Student rozszerza klasę Osoba, zatem dziedziczy równieŝ z java.lang.object

28 Klasa bazowa java.lang.object 28 / 38 Klasa java.lang.object posiada m.in. metodę tostring(), która słuŝy do wypisania zawartości obiektu na ekran (inaczej mówiąc metoda ta zwraca tekstową reprezentację obiektu w postaci String a). Metoda ta jest uŝywana (niejawnie, przez kompilator) np. w momencie gdy w programie dokonuje się połączenia dowolnego obiektu z obiektem typu String za pomocą operatora +, bądź gdy obiekt zostaje uŝyty w miejscu, gdzie kompilator spodziewa się obiektu typu String (np. metoda System.out.println).

29 Przesłanianie a klasa java.lang.object (2) 29 / 38 Przesłanianie metody tostring moŝe okazać się przydatne, jeśli chcemy wyświetlać informacje o zawartości obiektów utworzonej wcześniej klasy. Przykład - przesłanianie metody tostring() class Osoba { String imie, nazwisko; Osoba(String imie, String nazwisko) { this.imie = imie; this.nazwisko = nazwisko; } } public String tostring() { return nazwisko + " " + imie; }

30 Przesłanianie a klasa java.lang.object (3) 30 / 38 Przykład (c.d.) public class Test { public static void main( String[] args ) { Osoba o = new Osoba( "Jan", "Kowalski" ); //o.tostring() wywoływana niejawnie: System.out.println( "Osoba: " + o ); //wyświetli napis Osoba: Kowalski Jan System.out.println( o ); //wyświetli napis Kowalski Jan String tekst = o + to ktoś! ; } } //moŝna teŝ wywoływać tostring() w sposób jawny System.out.println( o.tostring() );

31 PrzeciąŜanie (overloading) 31 / 38 PrzeciąŜanie (dociąŝanie, ang. overloading) tworzenie kilku wersji tej samej metody, z róŝnym zestawem (liczba, typ) argumentów i ewentualnie róŝnymi typami danych zwracanymi przez nie. Odnosi się równieŝ do konstruktorów. Przykład przeciąŝania metod: class BazaDanychStudentow { public void wyswietl(); public int wyswietl( int numerindeksu ); //OK public int wyswietl( String nazwisko ); //OK } void usun( String nazwisko ); int usun( String nazwisko ); //ŹLE! Metoda //usundane z jednym argumentem typu String //jest juŝ zdefiniowana w tej klasie

32 Projektowanie obiektowe - przykład 32 / 38 Aplikacja Sklep komputerowy Tworzone jest oprogramowanie dla sklepu. W sklepie tym sprzedawane są komputery (stacjonarne i przenośne) oraz monitory. KaŜdy towar (wszystko co sprzedajemy w sklepie jest towarem) posiada swój numer katalogowy oraz cenę (cena towaru zaleŝy od aktualnego kursu Euro). W przypadku monitorów, waŝną informacją jest przekątna ekranu.

33 Projektowanie obiektowe przykład (2) 33 / 38 Przykład aplikacja Sklep komputerowy (c.d.) Komputery są towarem, którego najwaŝniejsze cechy to: typ procesora, rozmiar pamięci oraz dysku twardego. Komputery przenośne podzbiór komputerów, z których kaŝdy posiada dodatkowy atrybut w postaci wagi (istotna ze względu na to, iŝ jest to sprzęt przenośny). Pozostałą część komputerów sprzedawanych w sklepie stanowią komputery stacjonarne.

34 Projektowanie obiektowe przykład (3) 34 / 38 Przykład aplikacja Sklep komputerowy (c.d.) Z tak przygotowanego opisu aplikacji dość naturalnie wyłaniają się klasy obiektów i ich wzajemna hierarchia. Przykładowe klasy: Towar, Komputer, KomputerPrzenośny, KomputerStacjonarny, Monitor. Towar jest klasą nadrzędną do klas Monitor i Komputer Komputer zaś jest klasą nadrzędną w stosunku do klas KomputerPrzenośny i KomputerStacjonarny

35 Projektowanie obiektowe przykład (4) 35 / 38 Przykładowy diagram klas (w notacji UML) dla aplikacji Sklep komputerowy : Towar Atrybut ukryty + numerkatalogowy : int - cenaeur : float + podajcenępln() : float Komputer + procesor : String + pamięćmb : int + dyskgb : int Monitor - przekątnaekranu : float KomputerPrzenośny + wagakg : float KomputerStacjonarny

36 Rozbudowa systemu informatycznego 36 / 38 Istotną zaletą podejścia obiektowego jest łatwość rozbudowy i modyfikacji tak przygotowanego systemu informatycznego (oprogramowania). W omawianym przykładzie Sklep internetowy moŝna w dowolnym momencie i co najwaŝniejsze - niskim kosztem: Dodać nowe atrybuty/metody do wszystkich towarów (dokonując modyfikacji jedynie w klasie Towar), np.: int ilosclatgwarancji, float podajcenęusd() Dodać nowe atrybuty do wybranej grupy towarów, np. w klasie Komputer atrybut o nazwie typkartygraficznej Zmienić sposób obliczania cen wszystkich towarów np. tak aby uwzględniał on pewien rabat

37 Co jeszcze warto wiedzieć? 37 / 38 W projektowaniu (faza przygotowań do tworzenia aplikacji, planowanie klas, metod, interfejsów) i programowaniu (implementacja, realizacja przygotowanej wcześniej koncepcji) obiektowym bardzo waŝna jest logika, porządek, odpowiednie rozplanowanie hierarchii klas i obiektów, stosowanie odpowiedniego nazewnictwa. Nazwy klas, obiektów, ich pól oraz metod powinny w jakiś sposób odzwierciedlać rzeczywiste przeznaczenie danej klasy, bądź przekazywać sens działania danej metody (np. dla klasy KontoBankowe metody: podajaktualnystan(), wpłata(double kwota), wypłata(double kwota) itp.).

38 Co jeszcze warto wiedzieć? (2) 38 / 38 Główne zalety programowania obiektowego: Większa przejrzystość kodów źródłowych - dzięki naturalnemu podejściu do rozwiązywanego problemu (obiektowość wzoruje się na rzeczywistości), kody źródłowe są zwykle bardziej czytelne Ułatwia i przyspiesza proces tworzenia aplikacji większa szansa powtórnego uŝycia (ang. reuse) gotowych (sprawdzonych) komponentów, niŝ w przypadku programowania proceduralnego UWAGA: pisanie programu w języku obiektowym (C++, Java ) nie jest jeszcze równoznaczne z programowaniem obiektowym (w sposób obiektowy)!

39 Operator instanceof 39 / 38 Operator instanceof słuŝy do sprawdzania, czy obiekt jest: Instancją wskazanej klasy Instancją klasy pochodnej do wskazanej klasy Instancją klasy, która implementuje wskazany interfejs class Student extends Osoba {} public static void main( String[] args ) { Student st = new Student(); Osoba o = new Student(); System.out.println( o instanceof Osoba ); } } //true System.out.println( o instanceof Student ); //true System.out.println( st instanceof Osoba ); //true System.out.println( st instanceof Student ); //true

40 40 / 38 Java. Charakterystyka języka Programowanie w środowisku rozproszonym. Wykład -02[SUM]

41 Szkic problematyki 41 / 38 Wprowadzenie do programowania w Javie Czym jest Java? Java Development Kit tworzenie i kompilacja programów napisanych w Javie Maszyna Wirtualna Javy i uruchamianie programów Podstawy programowania w Javie Dokumentacja do API, komentowanie kodów źródłowych, narzędzie Javadoc Literatura, serwisy WWW poświęcone Javie

42 Szkic cd. 42 / 38 Java jako język programowania obiektowego Obiekt i klasa obiektów Enkapsulacja (hermetyzacja) Dziedziczenie (rozszerzanie) klas i przyrostowa rozbudowa systemu informacyjnego Polimorfizm jako zaleta dziedziczenia Problem z dziedziczeniem z wielu klas Interfejs jako remedium tego problemu Klasa abstrakcyjna, metody wirtualne Diagramy UML

43 Cele opanowania umiejętności programowania w Javie 43 / 38 Zrozumienie idei programowania obiektowego, pojęć takich jak np.: obiekt, klasa, interfejs, polimorfizm, dziedziczenie(rozszerzanie), enkapsulacja Opanowanie podstawowych zasad programowania obiektowego w języku Java Poznanie szerokiego spektrum moŝliwości, technologii jakie oferuje Java, począwszy od programów, apletów, GUI, poprzez aplikacje wielowątkowe, sieciowe

44 Celem nie jest 44 / 38 Nauka profesjonalnego programowania w Javie to wymaga przynajmniej kilku lat praktyki Powielanie ogólno-dostępnej dokumentacji do Javy Przekonanie Państwa, iŝ Java jest najlepszym ze wszystkich istniejących języków programowania Pytanie: lepiej nauczyć się Javy czy C/C++? Odpowiedź: warto znać oba języki i stosować je zaleŝnie od rodzaju tworzonych aplikacji. MoŜna teŝ łączyć obie technologie w obrębie jednej aplikacji, jeśli zajdzie taka potrzeba.

45 Czym jest Java? 45 / 38 Obiektowy język programowania opracowany i rozwijany przez firmę Sun Microsystems Język stworzony do obsługi urządzeń elektronicznych, na PC wykorzystywany głównie do tworzenia aplikacji sieciowych ze względu na: - bezpieczeństwo (aplety) - niewielki rozmiar plików wynikowych - bogate biblioteki funkcji do obsługi sieci (w standardzie) DuŜą część składni zaczerpnięto z C++, jednak wprowadzono zmiany poprawiające takie aspekty jak: - obiektowość, - bezpieczeństwo, - stabilność, - przenośność kodu

46 Czym jest Java? (2) 46 / 38 W stosunku do C++, w Javie zrezygnowano m. in. z: Dyrektyw i całego preprocesora Plików nagłówkowych Wskaźników MoŜliwości definiowania i przeciąŝania operatorów Wielodziedziczenia Szablonów (templates) Struktur, unii ZłoŜonych konwersji oraz konwersji niejawnych List inicjacyjnych Destruktorów Argumentów domniemanych Przestrzeni nazw Wyliczeń

47 Czym jest java? (3) 47 / 38 MoŜna doszukać się podobieństw z kilkoma innymi językami programowania (C/C++, Pascal, Visual Basic, ), np. na poziomie: Nazw instukcji: while, do/while, for, break, continue, switch, return, (jako ciekawostka: Java w zasadzie rozpoznaje instrukcję goto, jednak nie posiada ona implementacji i nie moŝna jej uŝywać, jest jedynie słowem zastrzeŝonym) RóŜnego typu operatorów (+, -, /, *, %, <, >,!=, &&,,!, ) Typów danych (int, short, long, byte, char, float, double, ) - tu (niestety) podobieństwa bywają mylące, np. liczba bajtów na których reprezentowany jest typ char w Javie i C/C++ jest inna (2 bajty w Javie, natomiast 1 bajt w C)

48 Czym jest java? (4) 48 / 38 Java ma zastosowanie przy tworzeniu: Serwisów WWW technologie: servlety Javy, Java Server Pages (oprogramowanie działające po stronie serwera) Animowanych bądź interaktywnych elementów stron WWW, czyli tzw. apletów (programy działające pod kontrolą przeglądarki internetowej) NiezaleŜnych aplikacji, szczególnie zaś sieciowych GUI do róŝnych systemów bazodanowych, bądź systemów typu ERP UWAGA: nie naleŝy mylić Javy z Java Script em wbrew pozorom, technologie te nie mają ze sobą nic wspólnego.

49 Java Development Kit 49 / 38 Java Development Kit (JDK) podstawowy zestaw narzędzi dla programistów, przygotowany przez firmę Sun. W jego skład wchodzą m.in.: javac.exe kompilator java.exe - Maszyna Wirtualna (interpreter kodu bajtowego Javy) javadoc.exe narzędzie do generowania dokumentacji w formie plików HTML Java Run-time Environment (JRE) wyłącznie środowisko uruchomieniowe, nie jest ono wystarczające do tworzenia nowych programów. Dystrybucja JDK zawiera w sobie JRE.

50 Java Development Kit (2) 50 / 38 JDK, JRE oraz dokumentację do API moŝna pobrać ze strony Instalacja JDK: instalator pakietu: jdk-1_5_0_01-windows-i586-p.exe w zmiennej środowiskowej PATH powinna znajdować się ścieŝka do katalogu bin zainstalowanego pakietu (np. PATH= ;c:\j2sdk5.0\bin), pozwalająca na uŝywanie plików javac.exe oraz java.exe w linii poleceń

51 Kompilacja programów w Javie 51 / 38 Przykładowy program w Javie Plik: Test.java public class Test { } public static void main( String[] args ) { } Kompilacja: >javac Test.java Uruchomienie: >java Test System.out.println( "Java nie jest trudna" );

52 Kompilacja programów w Javie (2) 52 / 38 Programy w Javie wymagają kompilacji (przy pomocy programu javac.exe). Jednak w przeciwieństwie do innych języków, wynikiem kompilacji programu napisanego w Javie nie jest jak by się moŝna było spodziewać gotowy do uruchomienia program. W wyniku kompilacji pliku źródłowego *.java powstaje zwykle jeden plik z rozszerzeniem *.class (o nazwie takiej samej jak plik źródłowy), zawierający tzw. kod bajtowy Javy (Java bytecode). Inne określenia kodu bajtowego: kod pośredni, bajtkod, B-kod.

53 Kompilacja programów w Javie (3) 53 / 38 Jeśli kod źródłowy programu zawiera błędy, kompilator sygnalizuje je podając: nazwę pliku w którym błąd wystąpił, numer linii, krótki opis błędu; wyświetla równieŝ wiersz programu zawierający błąd. W powyŝszym przykładzie nazwa metody powinna brzmieć println (zabrakło litery n na końcu tego wyrazu).

54 Uruchamianie programów w Javie 54 / 38 Pliki wynikowe (*.class), zawierające kod bajtowy Javy, są interpretowane (wykonywane) przez Maszynę Wirtualną Javy (Java Virtual Machine, w skrócie JVM). Maszyna Wirtualna Javy: MoŜe być oddzielną aplikacją (np. java.exe z pakietów JDK/JRE firmy Sun, IBM lub Microsoft) lub wbudowana w przeglądarkę internetową (do uruchamiania apletów) W formie aplikacji jest dostępna dla róŝnych systemów operacyjnych (Windows, Linux, Solaris) i procesorów MoŜe być realizowana sprzętowo, lub np. wykorzystywać kompilację typu Just-In-Time w celu zwiększenia wydajności

55 Uruchamianie programów w Javie (2) 55 / 38 Specyfikacja Maszyny Wirtualnej oraz kodu bajtowego Javy jest kompletna i bardzo szczegółowa. W przypadku C++ pozostawiono pewną swobodę interpretacji specyfikacji i tak np. typ integer (int) moŝe być 32 bądź 64 bitowy, zaleŝnie od procesora bądź kompilatora. W Javie taka sytuacja nie ma miejsca. Dzięki tak dobrze określonemu środowisku pracy programu, a takŝe interpretacji kodu przez Maszynę Wirtualną Javy programy w Javie są całkowicie przenaszalne. Skompilowany program (w Javie) moŝna uruchamiać na róŝnych systemach operacyjnych i procesorach.

56 Uruchamianie programów w Javie (3) 56 / 38 Dzięki interpretacji kodu przez Maszynę Wirtualną Javy: JVM posiada pełną kontrolę nad realizacją wszystkich funkcji programu i nad dostępem programu do zasobów (pliki, pamięć operacyjna) systemowych Osiągnięto wysoki poziom bezpieczeństwa, co ma szczególne znaczenie w przypadku aplikacji internetowych Java posiada mechanizm automatycznego czyszczenia pamięci (Garbage Collection) i obsługi wyjątków co zapewnia większą stabilność działania tworzonych aplikacji oraz wygodę programowania.

57 Uruchamianie programów w Javie (4) 57 / 38 Dzięki kompilacji: Programy w Javie działają szybciej niŝ w przypadku innych języków interpretowanych Istnieje moŝliwość statycznej kontroli błędów (jeszcze przed uruchomieniem programu) Dzięki interpretacji kodu bajtowego: WyŜszy poziom bezpieczeństwa, stabilności, przenośność Java jest wolniejsza od np. C/C++ co jednak moŝe nie mieć większego znaczenia w przypadku np. aplikacji sieciowych, bądź graficznych systemów interakcji z uŝytkownikiem (GUI)

58 Podstawy programowania w Javie 58 / 38 Pliki źródłowe muszą mieć rozszerzenie *.java, np. HelloWorld.java Kod programów w Javie jest pogrupowany w tzw. klasy - umownie przyjmując, są to bloki rozpoczynające się od słowa kluczowego class (zwykle poprzedzonego tzw. modifikatorami np.: public, static, abstract, final) i ograniczone nawiasami { }, jak na przykładzie: //tu nie moŝna wstawić funkcji, deklaracji zmiennych itp. public abstract class Figura { } //tu jest miejsce na kod programu czyli wewnątrz klasy //tu moŝna wstawić kolejną klasę, zalecane jest jednak //umieszczanie klas w oddzielnych plikach

59 Podstawy programowania w Javie (2) 59 / 38 Klasa moŝe posiadać (statyczną) metodę main, która jest wywoływana z poziomu interpretera (Maszyny Wirtualnej) w chwili uruchomienia programu Argumentem wejściowym metody main jest tablica obiektów typu (klasy) String parametry wywołania Tablica w Javie jest obiektem (wyraźna róŝnica w stosunku do C/C++), pole length wyznacza ilość elementów tablicy class Argumenty { } public static void main( String[] args ) { } System.out.println( "liczba parametrów = " + args.length );

60 Podstawy programowania w Javie (3) 60 / 38 Na zewnątrz klasy mogą pojawiać się właściwie jedynie dwa rodzaje dyrektyw: - package - moŝe wystąpić raz, na samym początku pliku - import - moŝe wystąpić jeden lub więcej razy package pro2; import java.util.date; public class TestDaty { public static void main( String[] args ) { System.out.println( "Data: " + new Date() ); } }

61 Podstawy programowania w Javie (4) 61 / 38 Klasy w Javie pogrupowane są w tzw. pakiety, które moŝna traktować jako odpowiedniki bibliotek z C/C++. Pakiety tworzą strukturę hierarchiczną. W Javie istnieje zaleŝność między nazwami i hierarchią pakietów a strukturą plików na dysku. KaŜdy pakiet posiada swój katalog (nazwa katalogu zgodna z nazwą pakietu). Dyrektywa package oznacza przynaleŝność klasy do danego pakietu. Pakiety i klasy Javy są często przechowywane w plikach *.jar (Java archive) w postaci skompresowanej zajmują mniej miejsca na dysku (patrz %JAVAHOME%/jre/lib/rt.zip).

62 Podstawy programowania w Javie (5) 62 / 38 Kilka najwaŝniejszych pakietów standardowych Javy: java.lang definiuje standardowe elementy języka java.util struktury danych (listy, wektory, listy posortowane), obsługa daty i czasu, kompresja ZIP java.io strumienie we/wy, obsługa plików java.awt tworzenie GUI, grafika 2D java.applet tworzenie apletów Firma Sun udostępnia bardzo szczegółową i przejrzystą dokumentację dla wszystkich pakietów i klas J2SE. Zdecydowanie zalecam pobranie dokumentacji ze strony i zapoznanie się z jej zawartością.

63 Podstawy programowania w Javie (6) 63 / 38 Standardowo aplikacja ma dostęp do wszystkich klas z pakietu java.lang (np. System, String, Integer, Math). Dyrektywa import moŝe wystąpić wielokrotnie - przydaje się w momencie, gdy w programie uŝywane są klasy naleŝące do innych pakietów (niŝ aktualny pakiet, bądź java.lang). Przykład: do klasy Date moŝna odwoływać się za pomocą jej pełnej nazwy, czyli java.util.date, bądź teŝ umieścić na początku programu polecenie import java.util.date (lub import java.util.* ) i posługiwać się skróconą nazwą klasy czyli po prostu Date.

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

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak JAVA Wstęp do programowania w języku obiektowym Bibliografia: JAVA Szkoła programowania, D. Trajkowska Ćwiczenia praktyczne JAVA. Wydanie III,M. Lis Platforma JSE: Opracował: Andrzej Nowak JSE (Java Standard

Bardziej szczegółowo

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego

Bardziej szczegółowo

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji. JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod

Bardziej szczegółowo

Ćwiczenie 1. Przygotowanie środowiska JAVA

Ćwiczenie 1. Przygotowanie środowiska JAVA Ćwiczenie 1 Przygotowanie środowiska JAVA 1. Wprowadzenie teoretyczne Instalacja JDK (Java Development Kit) NaleŜy pobrać z java.sun.com środowisko i zainstalować je. Następnie naleŝy skonfigurować środowisko.

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Krzysztof Lemay, Naughton Barteczko R. Cadenhead JAVA, Java Podręcznik 2 wykłady dla kaŝdego Języka i ćwiczenia Programowania

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

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

Języki skryptowe w programie Plans

Języki skryptowe w programie Plans Języki skryptowe w programie Plans Warsztaty uŝytkowników programu PLANS Kościelisko 2010 Zalety skryptów Automatyzacja powtarzających się czynności Rozszerzenie moŝliwości programu Budowa własnych algorytmów

Bardziej szczegółowo

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016 Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie w Internecie. Java

Programowanie w Internecie. Java Programowanie w Internecie Java Autor: dr inż. Zofia Kruczkiewicz Literatura: L. Lemay, R. Cadenhead P. Naughton Krzysztof Barteczko Boone Barry Java 2 dla każdego Podręcznik Języka Programowania Java

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Powtórka algorytmów. Wprowadzenie do języka Java.

Powtórka algorytmów. Wprowadzenie do języka Java. Powtórka algorytmów. Wprowadzenie do języka Java. Przypomnienie schematów blokowych BEGIN Readln(a); Readln(b); Suma := 0; IF Suma < 10 THEN Writeln( Suma wynosi:, Suma); ELSE Writeln( Suma większa niż

Bardziej szczegółowo

Java Język programowania

Java Język programowania Java Język programowania Język Java Bazuje i jest zbliżony do C/C++ Porosty zbiór typów danych (podział na typy prymitywne i obiektowe) Zarządzanie pamięcią i Garbage Collection Zintegrowana synchronizacja

Bardziej szczegółowo

Java - tablice, konstruktory, dziedziczenie i hermetyzacja

Java - tablice, konstruktory, dziedziczenie i hermetyzacja Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja

Bardziej szczegółowo

Microsoft IT Academy kurs programowania

Microsoft IT Academy kurs programowania Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego

Bardziej szczegółowo

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

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

2. Składnia, środowisko i konwencje w Javie

2. Składnia, środowisko i konwencje w Javie Gdańsk, 2014 Ogólnie o Javie Środowisko Java jest językiem programowania, którego podstawowym celem jest realizacja zasady write once, run anywhere. Oznacza to możliwość wykonania tego samego programu,

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

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

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

Wykład 4: Klasy i Metody

Wykład 4: Klasy i Metody Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

Definiowanie własnych klas

Definiowanie własnych klas Programowanie obiektowe Definiowanie własnych klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Definiowanie własnych klas Autor:

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

Spis treści. 1 Java T M

Spis treści. 1 Java T M Spis treści 1 Java T M 1 2 Co to jest Platforma Java T M 1 3 Przygotowanie komputera 2 4 Pierwszy program 2 5 Dokumentacja 3 6 Budowa aplikacji. Klasy. 3 7 Pola i metody 4 8 Konstruktory 5 9 Inne proste

Bardziej szczegółowo

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

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Programowanie obiektowe. Wprowadzenie

Programowanie obiektowe. Wprowadzenie 1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016 Wykład 2 17 marca 2016 Dziedziczenie Klasy bazowe i potomne Dziedziczenie jest łatwym sposobem rozwijania oprogramowania. Majac klasę bazowa możemy ja uszczegółowić (dodać nowe pola i metody) nie przepisujac

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

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/ Język programowania Andrzej Bobyk http://www.alfabeta.lublin.pl www.alfabeta.lublin.pl/jp/ Literatura K. Reisdorph: Delphi 6 dla każdego. Helion, Gliwice 2001 A. Grażyński, Z. Zarzycki: Delphi 7 dla każdego.

Bardziej szczegółowo

Polimorfizm, metody wirtualne i klasy abstrakcyjne

Polimorfizm, metody wirtualne i klasy abstrakcyjne Programowanie obiektowe Polimorfizm, metody wirtualne i klasy abstrakcyjne Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Polimorfizm,

Bardziej szczegółowo

Rozdział 4 KLASY, OBIEKTY, METODY

Rozdział 4 KLASY, OBIEKTY, METODY Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej

Bardziej szczegółowo

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

Język JAVA podstawy. Wykład 4, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 4, część 1 1 Język JAVA podstawy Plan wykładu: 1. Podstawy modelowania obiektowego 2. Konstruktory 3. Dziedziczenie, związki pomiędzy klasami, UML 4. Polimorfizm 5. Klasy abstrakcyjne

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA Naszym mózgom. Za to, że zawsze są na swoim miejscu. W mniejszym lub większym stopniu WPROWADZENIE DO JĘZYKA JAVA podstawowe informacje: zarys historii, zasadnicze cechy i pojęcia Javy, wirtualna maszyna

Bardziej szczegółowo

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

Język JAVA podstawy. wykład 1, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 1, część 3 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

Typy danych, zmienne i tablice. Tomasz Borzyszkowski

Typy danych, zmienne i tablice. Tomasz Borzyszkowski Typy danych, zmienne i tablice Tomasz Borzyszkowski Silne typy Javy Java jest językiem wyposażonym w silny system typów. Wywodzi się stąd siła i bezpieczeństwo tego języka. Co to znaczy silny system typów?

Bardziej szczegółowo

Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut.

Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut. Konstruktory Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut. Rozpatrzmy przykład przedstawiający klasę Prostokat: class

Bardziej szczegółowo

Cw.12 JAVAScript w dokumentach HTML

Cw.12 JAVAScript w dokumentach HTML Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane

Bardziej szczegółowo

Programowanie, algorytmy i struktury danych

Programowanie, algorytmy i struktury danych 1/44 Programowanie, algorytmy i struktury danych materiały do wykładu: http://cez.wipb.pl/moodle/ email: m.tabedzki@pb.edu.pl strona: http://aragorn.pb.bialystok.pl/~tabedzki/ Marek Tabędzki Wymagania

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Wykład 1: Wprowadzenie do technologii Java

Wykład 1: Wprowadzenie do technologii Java Programowanie komputerów Wykład 1: Wprowadzenie do technologii Java dr inż. Walery Susłow walery.suslow@ie.tu.koszalin.pl Czym jest Java? Obiektowy język programowania ogólnego przeznaczenia Opracowany

Bardziej szczegółowo

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003

Bardziej szczegółowo

Java-wykład. Dorota Pylak

Java-wykład. Dorota Pylak Java-wykład Dorota Pylak BIBLIOGRAFIA Barteczko, JAVA Programowanie praktyczne od podstaw, PWN, 2014 C. S. Horstmann, G. Cornell, Java. Podstawy, Helion, Gliwice 2008 C.S. Horstmann, G. Cornell, Core.

Bardziej szczegółowo

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Język PHP Język interpretowalny, a nie kompilowany Powstał w celu programowania

Bardziej szczegółowo

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2 Marcin Młotkowski 4 marca 2015 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 47 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie;

Bardziej szczegółowo

JAVAScript w dokumentach HTML (1)

JAVAScript w dokumentach HTML (1) JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych: Zmienna i typ Pascal typy danych Zmienna to obiekt, który może przybierać różne wartości. Typ zmiennej to zakres wartości, które może przybierać zmienna. Deklarujemy je w nagłówku poprzedzając słowem kluczowym

Bardziej szczegółowo

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami. UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami

Bardziej szczegółowo

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,

Bardziej szczegółowo

Programowanie wieloplatformowe w Java

Programowanie wieloplatformowe w Java Programowanie wieloplatformowe w Java dr Krzysztof Podlaski 1 Kwestie organizacyjne Wykład: 15 godzin Zaliczenie test Ćwiczenia 30 godzin (dr K.Podlaski) Zaliczenie projekt Konsultacje: do ustalenia, Kontakt:

Bardziej szczegółowo

Informatyka, Ćwiczenie 1. 1. Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu

Informatyka, Ćwiczenie 1. 1. Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu Informatyka, Ćwiczenie 1 1. Uruchomienie Microsoft Visual C++ I. ZałoŜenie nowego projektu Wybieramy menu: File>New>Files jak na rys. poniŝej Zapisujemy projekt pod nazwą LAN, w katalogu d:\temp\lab typu

Bardziej szczegółowo

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby

Bardziej szczegółowo

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Wprowadzenie Automatyczne ładowanie klas Składowe klasy, widoczność składowych Konstruktory i tworzenie obiektów Destruktory i

Bardziej szczegółowo

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

do instrukcja while (wyrażenie);

do instrukcja while (wyrażenie); Instrukcje pętli -ćwiczenia Instrukcja while Pętla while (póki) powoduje powtarzanie zawartej w niej sekwencji instrukcji tak długo, jak długo zaczynające pętlę wyrażenie pozostaje prawdziwe. while ( wyrażenie

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

Pakiety i interfejsy. Tomasz Borzyszkowski

Pakiety i interfejsy. Tomasz Borzyszkowski Pakiety i interfejsy Tomasz Borzyszkowski Pakiety podstawy W dotychczasowych przykładach nazwy klas musiały pochodzić z jednej przestrzeni nazw, tj. być niepowtarzalne tak, by nie doprowadzić do kolizji

Bardziej szczegółowo

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pierwsze kroki Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Co znaczy

Bardziej szczegółowo

Metody numeryczne Laboratorium 2

Metody numeryczne Laboratorium 2 Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania

Bardziej szczegółowo

Metodyki i Techniki Programowania 1 1 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA

Metodyki i Techniki Programowania 1 1 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA Metodyki i Techniki Programowania 1 1 ZAJ CIA 3. 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA IDE zintegrowane środowisko programistyczne, zawierające kompilator, edytor tekstu i linker,

Bardziej szczegółowo

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++ Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu

Bardziej szczegółowo

10. Programowanie obiektowe w PHP5

10. Programowanie obiektowe w PHP5 Ogólnie definicja klasy wygląda jak w C++. Oczywiście elementy składowe klasy są zmiennymi PHP, stąd nieśmiertelne $. Warto zauważyć, że mogą one mieć wartość HHH mgr inż. Grzegorz Kraszewski TECHNOLOGIE

Bardziej szczegółowo

Kiedy i czy konieczne?

Kiedy i czy konieczne? Bazy Danych Kiedy i czy konieczne? Zastanów się: czy często wykonujesz te same czynności? czy wielokrotnie musisz tworzyć i wypełniać dokumenty do siebie podobne (faktury, oferty, raporty itp.) czy ciągle

Bardziej szczegółowo

Programowanie w języku C++

Programowanie w języku C++ INE 2022 JĘZYKI PROGRAMOWANIA 1 INE 0050 WSTĘP DO PROGRAMOWANIA Programowanie w języku C++ ( wykł. dr Marek Piasecki ) Literatura: do wykładu dowolny podręcznik do języka C++ na laboratoriach Borland C++

Bardziej szczegółowo

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java: otwórz okienko Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU klasy wewnętrzne, lokalne i anonimowe biblioteka AWT zestaw Swing JFrame JPanel komponenty obsługa zdarzeń

Bardziej szczegółowo

Programowanie obiektowe, wykład nr 6. Klasy i obiekty

Programowanie obiektowe, wykład nr 6. Klasy i obiekty Dr hab. inż. Lucyna Leniowska, prof. UR, Zakład Mechatroniki, Automatyki i Optoelektroniki, IT Programowanie obiektowe, wykład nr 6 Klasy i obiekty W programowaniu strukturalnym rozwój oprogramowania oparto

Bardziej szczegółowo

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl

Java Podstawy. Michał Bereta www.michalbereta.pl mbereta@pk.edu.pl Prezentacja współfinansowana przez Unię Europejską ze środków Europejskiego Funduszu Społecznego w ramach projektu Wzmocnienie znaczenia Politechniki Krakowskiej w kształceniu przedmiotów ścisłych i propagowaniu

Bardziej szczegółowo

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć

Bardziej szczegółowo

Algorytmika i Programowanie VBA 1 - podstawy

Algorytmika i Programowanie VBA 1 - podstawy Algorytmika i Programowanie VBA 1 - podstawy Tomasz Sokół ZZI, IL, PW Czas START uruchamianie środowiska VBA w Excelu Alt-F11 lub Narzędzia / Makra / Edytor Visual Basic konfiguracja środowiska VBA przy

Bardziej szczegółowo

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,

Bardziej szczegółowo

Laboratorium 1 - Programowanie proceduralne i obiektowe

Laboratorium 1 - Programowanie proceduralne i obiektowe Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?

Bardziej szczegółowo

Podstawy języka Java. przygotował: pawel@kasprowski.pl

Podstawy języka Java. przygotował: pawel@kasprowski.pl Podstawy języka Java przygotował: pawel@kasprowski.pl Początki: PDA Star7 (*7) PDA do obsługi urządzeń domowych. (1992) (język OAK) Autorzy Javy Green Team Ojciec Javy: James Gosling Poszukiwanie zastosowania

Bardziej szczegółowo

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. 1. Instrukcję case t of... w przedstawionym fragmencie programu moŝna zastąpić: var t : integer; write( Podaj

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

Wyjątki. Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut.

Wyjątki. Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut. Wyjątki Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut. Wydaje się, że żaden użytkownik oprogramowania nie lubi, kiedy stosowany program nagle zawiesza się,

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania

Bardziej szczegółowo

Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2]

Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2] 1. CEL ĆWICZENIA Celem ćwiczenia jest przedstawienie możliwości wykorzystania języka JavaScript do tworzenia interaktywnych aplikacji działających po stronie klienta. 2. MATERIAŁ NAUCZANIA JavaScript tak

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

Podstawy programowania - 1

Podstawy programowania - 1 Podstawy programowania - 1 doc. dr inż. Tadeusz Jeleniewski Wykład: sobota B, godz. 10.30 12.55 sala 12 Laboratorium: sobota B, godz. 13.00 15.25 sala 2 sobota B, godz. 15.30-17.55 sala 2 e-mail: tadeusz.jeleniewski@pwr.wroc.pl

Bardziej szczegółowo

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.wroc.pl http://www.tjeleniewski.wstt.edu.pl Treści kształcenia: Paradygmaty

Bardziej szczegółowo

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Jak napisać program obliczający pola powierzchni różnych figur płaskich? Część IX C++ Jak napisać program obliczający pola powierzchni różnych figur płaskich? Na początku, przed stworzeniem właściwego kodu programu zaprojektujemy naszą aplikację i stworzymy schemat blokowy

Bardziej szczegółowo

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

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

KURS ACCESS 2003 Wiadomości wstępne

KURS ACCESS 2003 Wiadomości wstępne KURS ACCESS 2003 Wiadomości wstępne Biorąc c udział w kursie uczestnik zapozna się z tematyką baz danych i systemu zarządzania bazami danych jakim jest program Microsoft Access 2003. W trakcie kursu naleŝy

Bardziej szczegółowo

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można

Bardziej szczegółowo

Biuletyn techniczny. Funkcje dodatkowe dla Clarion Report Writer CDN OPT!MA 11.0. Copyright 2006 COMARCH S.A.

Biuletyn techniczny. Funkcje dodatkowe dla Clarion Report Writer CDN OPT!MA 11.0. Copyright 2006 COMARCH S.A. Biuletyn techniczny CDN OPT!MA 11.0 Funkcje dodatkowe dla Clarion Report Writer Copyright 2006 COMARCH S.A. Funkcje dodatkowe dla Clarion Report Writer (CRW) System CDN OPT!MA oferuje zbiór kilkunastu

Bardziej szczegółowo