Podstawy programowania w języku Java. mgr inż. Piotr Kowalski

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

Download "Podstawy programowania w języku Java. mgr inż. Piotr Kowalski"

Transkrypt

1 Podstawy programowania w języku Java mgr inż. Piotr Kowalski 18 stycznia 2013

2 Spis treści 1 Podstawy architektury komputera Części składowe komputera Rzecz o rejestrach Rzecz o pamięci Rzecz o programowaniu Języki programowania Od kodu do programu Funkcje systemu operacyjnego Jądro systemu operacyjnego BIOS i uruchomienie stacji Systemy plików Funkcja hashująca w systemie plików Algorytmy i struktury danych Struktury statyczne Tablice Rekordy Obiekty Struktury dynamiczne Stos Kolejka Lista Drzewo binarne Graf Porównanie typów struktur Wstęp - instalacja zintegrowanego środowiska programistycznego dla Javy Czym jest wirtualna maszyna Javy oraz najważniejsze składowe technologii Czym jest IDE Podstawy języka Java Zmienne w Javie. Pierwsze starcie Typy prymitywne Typy wyliczeniowe Typy tablicowe Klasy

3 SPIS TREŚCI I jeszcze o zmiennych Słowa zarezerwowane Znaki niepisane Rzutowanie Typ specjalny void Podstawowe operacje w języku Java Instrukcje warunkowe Instrukcje pętli Funkcje Operatory Literały Obsługa błędów w języku Java Drzewo hierarchii błędów Komendy obsługi błędów Inne reguły w języka Java Nazewnictwo w Javie Tworzenie modeli w Javie Tworzenie nowej klasy Dziedziczenie i polimorfizm Interfejsy Modyfikator abstract i Modyfikatory dostępu Modyfikator final Słowo kluczowe this oraz o konstruktorach Korzystanie z pakietów podstawowych języka Java Kontenery Kolekcje Iteratory Tablice asocjacyjne Przeszukiwanie i sortowanie kontenerów Tworzenie aplikacji z interfejsem graficznym Swing Elementy pakietu Swing Uruchamianie okna głównego aplikacji Swing - menu Swing - kontenery Swing - kontrolki Okienka dialogowe Przykładowe użycia okienek dialogowych Wydarzenia Akcja wykonana Właściwości okna Nasłuchiwacze A Zadania laboratoryjne 47 B Zadania projektowe 50

4 SPIS TREŚCI 3 C Zadania do samodzielnego rozwiązania 52 C.1 Zadanie z prostych algorytmów C.2 Zadania z modelowania w języku Java C.3 Zadania z prostych aplikacji graficznych

5 SPIS TREŚCI 4 Wersje numer data autor opis Piotr Kowalski Prace nad pierwszym rozdziałem Piotr Kowalski Dołączone dziedziczenie, modyfikatory dostępu oraz obsługa błędów Piotr Kowalski Dołączone konstruktory oraz liczne zadanka i projekty laboratoryjne Piotr Kowalski Dołączone zaczątki kolejnych rozdziałów z: Kontenerów oraz Swing.

6 Rozdział 1 Podstawy architektury komputera 1.1 Części składowe komputera Do głównych elementów komputera należą ˆ Płyta główna ˆ Pamięć RAM ˆ Dysk twardy ˆ Karta graficzna ˆ Inne elementy Szczególną uwagę przykuwa płyta główna jako komponent odpowiedzialny za wykonywanie obliczeń i działanie programu. Głównymi elementami wchodzącymi w skład płyty głównej są: Procesor jest główną jednostką obliczeniową całego systemu komputerowego, przeprowadza wszystkie operacje w komputerze. Magistrala danych jest kanałem do przesyłania danych pomiędzy komponentami systemu. Jest jak rura łącząca wiele wejść i wyjść. W danej chwili jej pracy, jedno urządzenie działa w trybie nadawania a drugie w odbioru, reszta pozostaje bierna czekając na swoją kolej. Zazwyczaj jednym z tych czynnych urządzeń jest procesor. Rejestry są najszybszym typem pamięci (i najdroższym) i to od ich wykorzystania przez procesor w głównej mierze zależy szybkość oprogramowania. Rozmiar rejestrów zależy od tzw. architektury procesora. Pierwsze procesory były konstruowane w architekturze 16 bitowej co oznaczało że procesor operował na danych o rozmiarze do 16 bitów, zatem był wyposażony w rejestry o pojemności 16 bitów. Obecnie dominują procesowy 32 bitowe, część rynku jest jednakże już opanowywana przez procesory 64 bitowe. 5

7 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 6 Sterownik przerwań, ponieważ komputer pracuje równolegle nad być może wieloma zadaniami, może się okazać że w trakcie pracy nad jednym z nich, jedno z urządzeń zgłosi procesorowi żądanie by ten sprawdził jego stan i wykonał pewne operacje. By proces ten był nadzorowany i odpowiednio kolejkowany (które urządzenie jako kolejne powinno być obsłużone) wprowadzony został sterownik przerwań. Sterownik przerwań jest mikrokontrolerem który nadzoruje zgłaszane przerwania (tu: żądania przerwania bieżącego zadania przez procesor), ustala ich priorytet i delikatnie szturcha procesor gdy nadejdzie przerwanie. Przykładem może być wciśnięcie przycisku na klawiaturze, które spowoduje zgłoszenie przerwania celem odczytania znaku z bufora klawiatury. Innym rodzajem przerwania są np. mrugania diody LED na przerwanie zgłaszane przez dysk twardy. Zegar jest urządzeniem, które odmierza pewien krótki okres czasu w komputerze i może być wykorzystane zarówno do przerwań systemowych, jak dla innych celów. Zbudowane jest na zasadzie drgającej struktury krystalicznej Rzecz o rejestrach Rejestry są podstawową pamięcią komputera. To na danych w nich zawartych są wykonywane wszystkie obliczenia. Rejestrów w architekturze rodziny procesorów Intel32 występuje ich około 20-tu. Do najważniejszych należą: EAX / AX jest rejestrem nazywanym Akumulatorem. Jego nazwa pochodzi od tego, że to najczęściej w nim umieszczane są wyniki pracy procesora (akumuluje wyniki). EBX / BX jest rejestrem adresowania. W tym rejestrze składowane są adresy w pamięci RAM w chwili gdy procesor stara się je odczytać lub zapisać. ECX / CX rejestr odliczający. Jest rejestrem ładowanym pewną daną przy okazji wykonywania wszelakich pętli w trakcie obliczeń. Jest ładowany pewną wartością, która co wykonanie pętli jest zmniejszana automatycznie o 1. Gdy osiągnie wartość 0 pętla jest zatrzymywana. W tej formie rozwiązania pętli można dostrzec przewagą (i przyczynę) osobnego tworzenia pętli FOR. CS, DS rejestry obszaru pamięci. Po załadowaniu programu do pamięci RAM, obszar pamięci gdzie znajduje się kod programu jest oznaczany w rejestrze CS (CODE SEGMENT), zaś dla danych ma adres ich składowania znajduje się w rejestrze DS (DATA SEGMENT) REJESTR FLAGOWY jest specjalnym rejestrem procesora, gdzie składowane są nie dane wyjściowe procesora, ale błędy które zostały zgłoszone w trakcie obliczeń Rzecz o pamięci W kwestii pamięci procesora, wyróżnioną role pełni pamięć RAM. Dysk twardy nie pełni żadnej innej funkcji poza funkcją składowania danych. Wszelkie operacje procesora na danych z dysku, muszą być poprzedzone przekopiowaniem

8 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 7 tychże danych do pamięci RAM procesora. Pamięć RAM po załadowaniu systemu operacyjnego jest dzielona na obszar do użytku oraz na stos procesora. Stos procesora jest miejscem gdzie mogą być składowane dane. Zgodnie z zasadą stosu rzeczy odłożone później są zdejmowane wcześniej. Stos jest bardzo często wykorzystywanym obszarem pamięci. Przykłady użycia stosu ˆ Tymczasowe zachowanie stanu rejestrów, np gdy potrzeba rejestrów do kolejnych obliczeń a nie można poświęcić posiadanych danych. ˆ Wykonanie przerwania - w chwili pojawienia się przerwania wszystkie dane nad którymi pracował procesor muszę być zachowane tak by po zakończeniu przerwania procesor mógł kontynuować pracę. Na stos są wtedy zrzucane wszystkie używane rejestry włącznie z flagowym oraz wskaźnikiem do punktu w kodzie gdzie nastąpiło przerwanie. ˆ Wywołanie funkcji - w chwili wywołania funkcji podobnie jak przy przerwaniu, wszystkie dane zostają zapisane na stosie. ˆ Przekazanie parametrów do funkcji - Często lista parametrów funkcji jest bardzo długa. Wtedy nie jest możliwym przekazać ich przez rejestry ( przekazywanie przez rejestry jest nawet nie wskazane). Jedyną możliwością jest odłożyć je wtedy przez stos tak by nowa funkcja mogła go łatwo odzyskać ze stosu Rzecz o programowaniu W programowaniu występuje mnóstwo głównych reguł. Jednakże najważniejsze reguły informatyki to: ˆ Niezależność poziomów programowania ˆ Zgodność wstecz Poziomy programowania Napisanie programu jest z reguły rzeczą trudną. Wymaga dokładnego przemyślenia sytuacji, z którą program ma sobie radzić, zapobiec dopuszczenia do błędu programu oraz wykonania optymalnej ilości operacji by kod był szybki. Nie jest jednak nigdy tak, że jeden programista pisze cały program. Częściej programiści dzielą program na małe części i każdy realizuje jego część. Nigdy nie jest również tak, że program raz napisany nie zostanie już nigdy poprawiony. Ważną zasadą jest więc właśnie to by programy mogły korzystać z siebie nawzajem w sposób bezpieczny i niezmienny pomimo oczywistych poprawek lub nieznajomości innego programu. Prostym przykładem jest np. zainstalowanie nowego sterownika do drukarki. Pomimo, że program sterownika działa zupełnie inaczej, programy wyżej powinny mieć możliwość wywoływać DRUKUJ bez względu na to jak dany sterownik realizuje tą funkcję. Jest to tzw. niezależność poziomów programowania.

9 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 8 Interfejsy Interfejsem będziemy nazywać dowolny zestaw czynności udostępnianych przez program lub aplikację. Tak naprawdę zaś interfejs jest fikcyjnym programem, który ma zapewniać to, że inne programy będą mogły się do pewnej funkcjonalności odwoływać pomimo, że programista mógł zupełnie zmienić samą funkcję. Korzystanie z interfejsów zapewnia jednak to, że programy mogą ze sobą bezpiecznie współpracować, mimo iż byłyby modyfikowane. Zgodność wstecz Niektórzy nazywają największą zmorą programistów. Przyczyny jej stosowania są czysto ekonomiczne. Zachowanie zgodności wstecz to nic innego jak zapewnienie starszym programom możliwości pracy. I również w tym punkcie nieocenione okazują się być interfejsy, które potrafią poprawić to co robią stare programy i w miarę możliwości zastosować usprawnienia. Przykładem jest np. to że nowe wersje MS-WORDa potrafią otwierać pliki z poprzedniej wersji programu np z roku 97. Pomimo to, programy te niechętnie pozwalają zapisywać w starych formatach, które są mniej wydajne lub wręcz nie pozwalają na pewne dodatkowe funkcje. Z tej samej przyczyny architektura systemu MS-Windows nie zmieniła się zbytnio od roku Języki programowania Pomiędzy językiem który rozumie procesor komputerowy, a językiem ludzkim jest olbrzymia przepaść. Nie jest możliwym aby przeskoczyć te różnice i ani procesor nie zacznie słuchać po ludzku ani programista nie napisze programu za pomocą ciągu zer i jedynek. Muszą istnieć zatem narzędzia, specjalne translatory które tłumaczyły by nawzajem te języki. Jako, że różne są potrzeby i wymagania wyróżnia się 5 generacji języków. Języki procesora - I Generacja - jest językiem komend procesora, jego składnia jest różna dla różnych procesorów i jest bardzo zorientowana na stronę techniczną procesora. Dominuje tu poprawianie programu poprzez lepsze realizowanie poleceń procesora. Języki komend procesora - II Generacja - Asemblery - jest to język dyrektyw wydawanych procesorowi. Nie zależy on od rodzaju procesora. W programach tych poprawianie realizuje się poprzez lepsze zarządzanie pamięcią. W asemblerach pisze się głównie sterowniki dla sprzętu. Języki proceduralne - III Generacja - podstawowa generacje języków programowania. Jest to najniższa generacja języków niezależnych sprzętowo tzn. ten sam kod programu działa tak samo na różnych komputerach, choćby były zupełnie inaczej zbudowane. Słowo proceduralne w nazwie określa, że programista dokładnie określa zadanie, które wykonać ma program. Przykładowe języki programowania to C, C++,C#, D, Pascal, Java, Ada95. Języki deklaratywne - IV Generacja - języki programowania z tej grupy są bardzo przyjazne użytkownikowi. W przeciwieństwie do proceduralnych,

10 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 9 tu program automatycznie stara się zrozumieć co miał na myśli użytkownik by uzupełnić jego kod. Przykładami takich języków są : SQL, HTML, XML, BASH, PYTHON, PERL, PHP, AWK. Języki inteligentne - V Generacja - dopiero rozbudowywana gałąź samouczących się programów. Rzadko stosowana. Języki I i II generacji nazywa się językami niskiego poziomu - jako, że pozwalają tworzyć oprogramowanie zależne od sprzętu, języki wyższych generacji nazywane są językami wysokiego poziomu, jako niezależnym sprzętowo Od kodu do programu Ze względu na to, że języki V generacji są wielką innowacją, a języki II generacji są niewydajne w tworzeniu aplikacji, programiści skupiają się na pracy w językach III i IV generacji. Programy stworzone w językach III generacji nazywamy kodem, zaś programy stworzone w IV generacji nazywamy skryptami. Pomiędzy nimi zachodzi istotna różnica. Z tą różnicą związane są dwa pojęcia Kompilator - program komputerowy, którego zadaniem jest tłumaczenie kodu na języki coraz to niższego poziomu, aż do utworzenia kodu maszynowego. Jest to postępowanie, któremu podlegają języki 3 poziomu. Interpreter - program komputerowy, którego zadaniem jest wykonanie ciągu poleceń umieszczonych w programie języka IV generacji, zwanym skryptem. Jest to opis ciągu wywołań kolejnych programów niższego poziomu, celem uzyskania określone efektu. Z racji istnienia takiej struktury rzeczy, zauważyć możemy, że jeden kod wysokiego poziomu, może różnie działać ze względu na miejsce jego kompilacji. Oznacza to również, że skompilowany program przeniesiony na inną stację komputerową może działać błędnie lub w ogóle. Z drugiej strony mamy jednak zapewnienie, że na poziomie logicznym kod wykonany na jednej i drugiej stacji da takie same wyniki. 1.3 Funkcje systemu operacyjnego Jądro systemu operacyjnego W komputerze niezwykle istotną funkcję pełni system operacyjny (ozn. OS). Pełni on role interfejsu pomiędzy programami, a architekturą komputera i urządzeniami doń podłączonymi. System operacyjny składa się z: ˆ Jądra systemu ˆ Aplikacji systemu ˆ Sterowników Aplikacjami systemu są wszystkie programy zainstalowane na systemie by zapewnić jego podstawową działalność. Wszystko co komputer może wykonać dla

11 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 10 innych programów w systemie jest jednakże zdefiniowane w jądrze systemu operacyjnego. Nie jest możliwym by jakikolwiek program znajdujący się powyżej poziomu jądra systemu był w stanie bezpośrednio wywołać aplikacje z poziomu poniżej. Jądro systemu świadczy zestaw metod i jeśli jakieś zastosowanie jest zgodne z zasadami pracy systemu komputerowego, to jest przesyłane poniżej. Najczęściej jądro służy do przekazania poleceń wywołania do poszczególnych sterowników. Sterowniki mają szczególną pozycję w systemie operacyjnym i dlatego ich instalacja musi być bardzo odpowiedzialna. Taka struktura systemu ma natomiast wiele zalet w kwestii bezpieczeństwa. W ten sposób programy, wywoływane osobno nie mogą mieć na siebie wzajemnego wpływu, gdyż wszystkie operacje są nadzorowane przez jądro systemu BIOS i uruchomienie stacji BIOS jest specyficznym rodzajem oprogramowania. Jest to oprogramowanie typu ROM tzn. jedynie do odczytu (choć od tego by był to czysty ROM, ostatnio się odchodziło to obserwuje się tego negatywne skutki), związane z poszczególnymi elementami stacji komputerowej. Jedną z głównych rol BIOSu jest uruchamianie stacji. Kolejne etapy uruchamiania stacji (orientacyjne): 1. Start BIOSu płyty głównej 2. Poszukiwanie na kolejnych pozycjach systemów operacyjnych 3. Start jądra systemu 4. Start podstawowych usług systemu - montowanie systemów plików 5. Start trybu graficznego (lub nie :P) 6. Wyświetlenie okna logowania Systemy plików Nie rozłącznym pojęciem dla każdego OS-u jest system plików. Jest to sposób zapamiętywania danych na dysku twardym. Sposób taki, musi być wydajny - byśmy mogli zapisać jak najwięcej danych oraz bezpieczny - byśmy nie stracili danych. Jak łatwo przypuszczać ma się albo jedno albo drugie. Najczęściej całość wygląda następująco. DYSK FIZYCZNY - stanowi górny limit dla składowania danych. PARTYCJA - obszar zapamiętania poszczególnych danych. SEKTORY - obszar umieszczenia danych KLASTRY - jednostka pojemności pamięci. Pojedyncza dana zapisana na dysku jest w klastrze. Dysk fizyczny, ma w swoim nagłówku listę wszystkich partycji na niej utworzonych (TABLICA PARTYCJI).Oprócz tego znajduje się tu również MBR (MasterBootRecord) bardzo ważny element wskazujący położenie ewentualnego programu ładującego system operacyjny. Partycja zaczyna się z kolei elementem TOC (TABLE OF CONTENT) - tj tablicy zawierania. Są tu umieszczone

12 ROZDZIAŁ 1. PODSTAWY ARCHITEKTURY KOMPUTERA 11 wszystkie pliki na dysku, a dokładniej lokalizacja ich początku. Pliki znajdują się na dysku w postaci rozproszonej. W TOC znajduje się położenie pierwszego kawałka pliku, na końcu pierwszego kawałka znajduje się położenie następnego kawałka itd. Systemami plików stosowanymi obecnie są: NTFS dla windows, EXT3/4 dla linux. Oprócz tego historyczne formaty to FAT16, FAT32 i VFAT (obecnie na pendrive ach) Funkcja hashująca w systemie plików Stosowanie tablicy plików jest dobrym rozwiązaniem w kwestii zapisu plików, jednak zapis nie jest jedyną główną operacją w systemie plików. Inną przykładową funkcją systemu plików jest wyszukiwanie pliku o pewnej cesze, powiedzmy nazwie. Prosta tablica plików nie jest wygodnym do poszukiwania rozwiązaniem. Trzeba by przejrzeć średnio połowę, a w najgorszym wypadku wszystkie zapisy tablicy, których może być bardzo dużo. Potrzebna jest subtelniejsza struktura, która jednak nie spowoduje opóźnień w dostępie do plików. Najprostszym rozwiązaniem byłoby podzielenie jedne dużej tablicy na kilka (a raczej kilka-dużo np kilka tysięcy) mniejszych tablic zawierających tylko wybrane rekordy. Więc można by przykładowo podzielić tekst ze względu na pierwszą literę w nazwie pliku. To podzieli zespół nazw na około 27 grup, co skróci przeszukiwanie 27 razy... Błąd. Przyśpieszenie wcale nie będzie nawet tak średnio dobre. Problemem jest liczność poszczególnych grup. Jak często trafiają się nam słowa na literę Y a jak często na literę K. Podział, który powinniśmy zastosować powinien zapewnić nam możliwie równomierne rozłożenie składu tych grup. Zatem potrzebne jest przyporządkowanie odpowiednich grup odpowiednim nazwom. Są to bardzo skomplikowane w wypracowaniu, ale proste w użyciu funkcje nazywane fachowo hashującymi.

13 Rozdział 2 Algorytmy i struktury danych Napisanie programu nie jest niczym trudnym. Prawdziwą trudnością programistyczną jest zrobienie tego przy minimalnych nakładach. Programy optymalizuje się ze względu na dwie ich cechy: Ilość operacji - mierzona w taktach procesora; Zużycie pamięci - mierzona w ilości wykorzystanej pamięci W zależności od stawianych sobie wymagań wykorzystuje się różne struktury i różne metody prowadzenia obliczeń. Postaram się teraz omówić kilka najprostszych struktur. 2.1 Struktury statyczne Pierwszym typem struktur są struktury statyczne. Wszędzie w programowaniu określenie statyczne będzie się odnosiło do tworów, które są tworzone w chwili uruchomienia kodu (tzn. już w momencie uruchomienia programu, a zanim zostanie wykonane jakiekolwiek polecenie te struktury otrzymują swój przydział w pamięci) Tablice Tablice są najprostszym sposobem łączenia wielu danych. Pozwalają one połączyć jednakowe obiekty w jedną większą strukturę. Cechą naturalną tablicy jest jej długość i rodzaj zawieranych danych Rekordy Rekordy są sposobem na generowanie bardziej złożonych typów danych poprzez łączenie określonej liczby elementów prostszych. Najlepszym przykładem jest data, która jest typem złożonym z liczby odpowiadającej dniu, liczby odpowiadającej miesiącowi oraz liczby roku. Cechą szczególną rekordów jest to, że potrafią łączyć składowe różnych typów w przeciwieństwie do tablic. 12

14 ROZDZIAŁ 2. ALGORYTMY I STRUKTURY DANYCH Obiekty Obiekty w najprostszym ujęciu są pewnym uogólnieniem rekordów, ale że jest to temat obszerny jeszcze zdąży być omówiony. 2.2 Struktury dynamiczne Stos Często fachowo pieszczotliwie nazywany LIFO (Last In - First Out). Informatycy żartują, że ta struktura danych została stworzona przez Jezusa ( Pierwsi będą ostatnimi, a ostatni pierwszymi ). Jako struktura ma następującą postać. By utworzyć stos potrzebne są dwa twory. Twór o nazwie stos, oraz twory o nazwie elementy stosu. Element stosu jest swego rodzaju otoczką, która otoczy element odkładany na stos. Ponadto każdy element stosu wskazuje element, który znajduje się na stosie poniżej jego, lub jeśli jest ostatni nie pokazywać niczego. Twór stosu jest zarządcą struktury. Pokazuje zawsze wierzchołek stosu oraz wie jak zrealizować dwie główne operacje stosu. PUSH - odłożenie kolejnego elementu na stos. POP - zdjęcie elementu z wierzchołka stosu. Operacjami, które są bardzo trudnymi do wykonania na stosie to usuwanie z wnętrza stosu oraz np. sortowanie Kolejka Kolejka jest z kolei pieszczotliwie nazywana FIFO (First In - First Out). Podobnie jak stos, struktura ta składa się z elementów kolejki i samej kolejki. Elementy kolejki pokazują element je poprzedzający ( ta pani stała przede tu przede mną ), zaś sama kolejka musi tym razem pamiętać i swój początek i swój koniec. Operacje identyczne jak dla stosu Lista Zwana też niekiedy listą dwukierunkową. W tej strukturze zmianie ulegają elementy listy, które pamiętają i poprzednika i następnika. Użycie takiej ulepszonej kolejki pozwala łatwo z niej usuwać elementy Drzewo binarne Z goła odmiennymi strukturami są drzewa. Drzewa są strukturami o zupełnie odmiennym podejściu niż listy, kolejki i stosy. Drzewa składają się z tworu drzewa oraz tzw. węzłów (ang. node) (którym odpowiadają rozgałęzienia). Drzewo pamięta swoją podstawę tzw. korzeń (ang. root). Węzły są otoczką dla danych. Dodatkową informacją jest położenie kolejnych węzłów. Jeden węzeł może wskazywać wiele innych węzłów (maksymalnie pewną określoną ilość - najczęściej dwa). Jeśli węzeł nie wskazuje żadnych kolejnych węzłów to nazywamy go liściem (ang. leaf). Drzewa, a w szczególności drzewa binarne są najlepszą strukturą do przechowywania uporządkowanych struktur danych. W takim układzie

15 ROZDZIAŁ 2. ALGORYTMY I STRUKTURY DANYCH 14 wyszukiwanie, usuwanie, dołączanie i wiele innych operacji może być wykonanych rekordowo szybko Graf Tak po prawdzie wszystkie struktury danych są z punktu widzenia matematyki pewnymi grafami. Dla ogólnych grafów najczęściej tworzy się tablicę z posiadanych danych oraz inną strukturę do oznaczenia krawędzi i ich ewentualnych wag. 2.3 Porównanie typów struktur Struktury dynamiczne są najczęściej stosowanymi w programowaniu. Struktury statyczne co prawda wśród swoich zalet mają prostotę oraz maksymalną szybkość przy tworzeniu i dostępie, jednakże mają znacznie poważniejsze wady. Absorbują i nigdy nie zwalniają dużej ilości miejsca, jak również że przy ich tworzeniu może nie istnieć dostatecznie długa przestrzeń pamięci by ją utworzyć.

16 Rozdział 3 Wstęp - instalacja zintegrowanego środowiska programistycznego dla Javy W części pierwszej skupimy się na przygotowaniu komputera jako stanowiska pracy programisty. W przypadku programowania w technologii Java (nazywamy to technologia, gdyż myślimy łącznie o języku, narzędziach, jak i sposobie myślenia), może być to wykonane niemalże na każdym ciut bardziej zaawansowanym urządzeniu elektronicznym, telefon, tablet, netbook aż w końcu nawet i największych komputerach. W odróżnieniu od poprzedzających ją technologii, raz napisany program będzie mógł działać na każdym urządzeniu. Technologie takie jak C/C++, Ada95, Pascal czy inne generowały kod maszynowy, który pozwalał programom działać na urządzeniach o podobnej specyfikacji. Często aby zaadaptować ten sam program potrzebne były poprawki jego kodu. W przypadku Javy, ten problem został niemal doszczętnie wyeliminowany. 3.1 Czym jest wirtualna maszyna Javy oraz najważniejsze składowe technologii Podstawowym problemem kompilacji 1 programów, jest to że w pewien sposób umieszcza ona w kodzie maszynowym 2 konstrukcję komputera na którym została przeprowadzona. W przypadku Javy rozwiązano to poprzez specjalny program instalowany w urządzeniu, który udaje przed programem napisanym w Javie, cały komputer. Sprawia to że cały kod można łatwo przenosić pomiędzy urządzeniami. Tym programem jest wirtualna maszyna Javy (JVM - Java Virtual Machine). Jej instalacja jest niezbędna do tego by na danym urządzeniu dział jakikolwiek program w tej technologii. Wirtualna maszyna jest obecnie jedynie częścią większej całości. Do tego by uruchamiały się programy potrzeba również wielu standardowych bibliotek. Wirtualna maszyna razem wspólnie z tymi bibliotekami jest udostępniania jako 1 proces zamiany kodu programu podanego przez programistę na jego binarny odpowiednik dla procesora 2 kod po kompilacji, kod binarny rozumiany przez komputer 15

17 ROZDZIAŁ 3. WSTĘP - INSTALACJA ZINTEGROWANEGO ŚRODOWISKA PROGRAMISTYCZNEGO środowisko uruchomieniowe java (JRE - Java Runtime Environment). W przypadku programistów potrzeba jeszcze znacznie więcej bibliotek, podobnie jak dużo dokumentacji i innych narzędzi. Wszystko wspólnie można pobrać jako Zestaw Narzędzi Programisty Java (JDK - Java Development Kit). JDK występują w różnych wersjach. Zalecane jest zawsze używanie najnowszych, jako najbezpieczniejszych i najaktualniejszych. JDK powinna być dołączona do systemu przy instalacji IDE (o którym zaraz). Jeśli nie została, należy ją doinstalować ręcznie. 3.2 Czym jest IDE O tym jak dużo jest czasami pracy aby z kodu napisanego przez programistę zrobić kod rozumiany przez komputer, wystarczy zapytać starszych programistów. Tymczasem prawda jest taka, że ten proces jest dość prosty, a jedynie bardzo męczący w prowadzeniu. Zgodniej z zasadą co nudne należy automatyzować wkrótce powstały narzędzia, które miały przejąć od programisty zadanie pilnowanie tego. Programy te są rozwijane po dziś dzień i większość programistów nie wyobraża sobie pracy bez nich. Główne aspekty z procesu tworzenia kodu przez nie monitorowane to ˆ Proces kompilacji kodu ˆ Weryfikacja składni kodu ˆ Zarządzanie bibliotekami ˆ Zarządzenia konfiguracją ˆ Nadzór wersji kodu ˆ Zarządzanie testami ˆ Pobieranie brakujących bibliotek ˆ Generowanie prostych i monotonnych fragmentów kodu ˆ Przeszukiwanie kodu źródłowego ˆ Reorganizacja nazw w kodzie (tzw. refaktoring) ˆ Podpowiadanie i kolorowanie składni ˆ Generowanie i przedstawianie dokumentacji Wszystkie narzędzia o których tu wspominam są nazywane IDE czyli zintegrowanymi środowiskami programistycznymi (ang. Integrated Development Environment). W przypadku języka Java na rynku dominują dwa najsilniejsze programy (oba darmowe). Jednym z nich jest Eclipse, stanowiący wolne oprogramowanie będące własnością Fundacji Eclipse. Drugim programem jest Netbeans, darmowa aplikacja stanowiąca własność amerykańskiego giganta na rynku oprogramowania czyli firmy Oracle (firmy, który wykupiła firmę Sun - twórców języka Java). Zasadniczo osoby, które są z zawodu programistami i tworzą duże projekty, wybierają za swoją platformę Eclipse, jako prościej konfigurowalny do

18 ROZDZIAŁ 3. WSTĘP - INSTALACJA ZINTEGROWANEGO ŚRODOWISKA PROGRAMISTYCZNEGO ich potrzeb. Osoby o mniejszych potrzebach programowania z reguły wybierają Netbeans, z uwagi na dużą ilość wbudowanych narzędzi. O ile kod java może być bezproblemowo przenoszony pomiędzy platformami Eclipse i Netbeans, o tyle konfiguracja projektów i algorytmu budowania różnią się na tyle, że z reguły nie udaje się przenieść projektu pomiędzy tymi platformami. Oczywiści skompilowane kody przenoszą się bez problemu. Z uwagi na początkujący charakter czytelnika, w dalszej części zakładamy, że czytelnik posiada na swoim komputerze zainstalowany zarówno zestaw narzędzi Java czyli jdk jak i Netbeans IDE. W takim układzie możemy spokojnie przejść do nauki podstaw tego prostego języka jakim jest Java.

19 Rozdział 4 Podstawy języka Java Aby nie programować na kartce papieru zacznijmy od razu od utworzenia nowego projektu. Wybierzmy z menu plik okna Netbeansa, nowy projekt typu Java Application i nazywamy go HelloWorld. Automatycznie zostanie nam wygenerowana klasa HelloWorld oraz w niej funkcja main(string[]). Aby nasz projekt coś napisał musimy wywołać metodę println() z klasy System dla jej elementu out tj. System.out.println("Hello World!!"); // tak wypisujemy tekst na ekranie Co musimy umieścić w kodzie funkcji main(string[]): public static void main(string[] args) { System.out.println("Hello World!!"); // tak wypisujemy tekst na ekranie Aby mieć lepsze zrozumienie co tak naprawdę się stało możemy zrobić to wolniej public static void main(string[] args) { String hello = "Hello World!!"; // tak tworzymy zmienną o typie tekstu System.out.println(hello); // tak wypisujemy zmienną tekstową // a to oczywiście był znak komentarza Program utworzył nową zmienną o nazwie hello i wstawił tam ciąg znaków Hello World!!, a następnie wypisał stan tej zmiennej. 4.1 Zmienne w Javie. Pierwsze starcie Programowanie jest niczym innym jak opracowywaniem pewnego zbioru danych. Dane te muszą znaleźć się najpierw w pamięci komputera. To co wyróżniło Javę w porównaniu do jej poprzedników to sposób w jaki można modelować bardzo skomplikowane dane. Tak czy inaczej musimy poznać podstawowe typu danych aby umieć z nimi pracować. W Javie typy danych można podzielić na podstawowe 4 grupy 1. Prymitywne 2. Wyliczeniowe 18

20 ROZDZIAŁ 4. PODSTAWY JĘZYKA JAVA Tablicowe 4. Klasy Zacznijmy od najprostszych Typy prymitywne Typu prymitywne są podwalinami wszystkich pozostałych typów danych. Pozwalają one gromadzić najprostsze informacje w pamięci komputera. Jest 8 typów prymitywnych. Pierwsze 4 czyli byte, short, int oraz long są typami które służą do przechowywania w pamięci komputera liczb całkowitych. Dwa kolejne czyli float i double służą do przechowywania w nich liczb zmiennoprzecinkowych czyli przybliżeń liczb rzeczywistych. Typ do składowania danej zmiennej wybiera programista i musi kierować się wartościami liczba jakie będą tam składane. Najczęściej wybiera się typy int oraz double. Ostatnie dwa typy to char, czyli znak alfanumeryczny oraz boolean czyli typ prawda-fałsz. Poniżej przykład zadeklarowania (zgłoszenia do użycia) każdego z powyżej wymienionych typów. /* typy całkowite */ byte calkowity1bajt; short calkowity2bajty; int calkowity4bajty; long calkowiry8bajtow; /* typy zmiennoprzecinkowe */ float zmiennoprzecinkowa4bajty; double zmiennoprzecinkowa8bajtow; /* inne zmienne */ char znak; boolean logiczny; W przypadku Javy, wszystkie nieprzypisane wartości prymitywne są od razu inicjowane pewną wartością. Dla liczb są to zera, fałsz dla typu logicznego oraz znak pusty dla typu znakowego Typy wyliczeniowe Typ wyliczeniowy tworzy się poprzez stworzenie ciągu określeń, które wypełniają jego sens. Np. enum PoraRoku { WIOSNA, LATO, JESIEN, ZIMA; Przyjmuje się, że wartości stałe nazywa się pisząc wszystko dużymi literami. Odróżnia to je od tworzonych zmiennych, do nazwania których używa się mały liter. Jeśli nazwa zmiennej ma łączyć w sobie kilka słów, przyjmuje się że poza pierwszym z nich, wszystkie rozpoczynamy z wielkiej litery. Później dowiemy się, że wszystkie pierwsze litery piszemy z wielkiej litery np. w nazwach klas. Jak używa się typu wyliczeniowego? Bardzo prosto enum PoraRoku { WIOSNA, LATO, JESIEN, ZIMA; /**

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 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

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

Podstawy programowania skrót z wykładów:

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

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

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

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016 Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,

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

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

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

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

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

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

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu

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

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h] 1. Typy. Java jest językiem programowania z silnym systemem kontroli typów. To oznacza, że każda zmienna, atrybut czy parametr ma zadeklarowany typ. Kompilator wylicza typy wszystkich wyrażeń w programie

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

Podstawy programowania w języku C

Podstawy programowania w języku C Podstawy programowania w języku C WYKŁAD 1 Proces tworzenia i uruchamiania programów Algorytm, program Algorytm przepis postępowania prowadzący do rozwiązania określonego zadania. Program zapis algorytmu

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

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Tworzenie aplikacji w języku Java

Tworzenie aplikacji w języku Java Tworzenie aplikacji w języku Java Wykład 1 Piotr Czapiewski Wydział Informatyki ZUT 2 października 2009 Piotr Czapiewski (Wydział Informatyki ZUT) Tworzenie aplikacji w języku Java 2 października 2009

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

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę. Języki C i C++ to bardzo uniwersalne platformy programistyczne o ogromnych możliwościach. Wykorzystywane są do tworzenia systemów operacyjnych i oprogramowania użytkowego. Dzięki niskiemu poziomowi abstrakcji

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

Obszar statyczny dane dostępne w dowolnym momencie podczas pracy programu (wprowadzone słowem kluczowym static),

Obszar statyczny dane dostępne w dowolnym momencie podczas pracy programu (wprowadzone słowem kluczowym static), Tworzenie obiektów Dostęp do obiektów jest realizowany przez referencje. Obiekty w języku Java są tworzone poprzez użycie słowa kluczowego new. String lan = new String( Lancuch ); Obszary pamięci w których

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?? 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

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

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost; Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze

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

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy

Bardziej szczegółowo

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018 Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy

Bardziej szczegółowo

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma

Bardziej szczegółowo

Java EE produkcja oprogramowania

Java EE produkcja oprogramowania Java EE produkcja oprogramowania PPJ PODSTAWY PROGRAMOWANIA W JAVIE PODSTAWY JĘZYKA JAVA 1 Warszawa, 2016Z 2 Ogólna charakterystyka języka Java 3 Java 1/2 Język programowania Java został opracowany przez

Bardziej szczegółowo

Podstawy i języki programowania

Podstawy i języki programowania Podstawy i języki programowania Laboratorium 2 - wprowadzenie do zmiennych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 23 października 2017 1 / 26 mgr inż. Krzysztof Szwarc Podstawy i

Bardziej szczegółowo

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą

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

Podstawy Programowania Podstawowa składnia języka C++

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

Bardziej szczegółowo

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java   1 / 8 Początki Javy Java została pierwotnie zaprojektowana dla telewizji interaktywnej, ale była to zbyt zaawansowaną technologią dla branży cyfrowej telewizji kablowej. James Gosling, Mike Sheridan i Patrick

Bardziej szczegółowo

Java - wprowadzenie. Programowanie Obiektowe Mateusz Cicheński

Java - wprowadzenie. Programowanie Obiektowe Mateusz Cicheński Java - wprowadzenie Programowanie Obiektowe Mateusz Cicheński O języku Czym jest Java Cechy charakterystyczne języka Przykładowe zastosowania Składnia języka Podstawowe typy Wybrane słowa kluczowe Plan

Bardziej szczegółowo

Zmienne, stałe i operatory

Zmienne, stałe i operatory Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

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

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej. Polimorfizm jest filarem programowania obiektowego, nie tylko jeżeli chodzi o język C++. Daje on programiście dużą elastyczność podczas pisania programu. Polimorfizm jest ściśle związany z metodami wirtualnymi.

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6 JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch. Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania

Bardziej szczegółowo

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Poniżej pozwoliłem sobie za cytować za wikipedią definicję zmiennej w informatyce.

Bardziej szczegółowo

ZASADY PROGRAMOWANIA KOMPUTERÓW

ZASADY PROGRAMOWANIA KOMPUTERÓW POLITECHNIKA WARSZAWSKA Instytut Automatyki i i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW Język Język programowania: C/C++ Środowisko programistyczne: C++Builder 6 Wykład 9.. Wskaźniki i i zmienne dynamiczne.

Bardziej szczegółowo

Programowanie - instrukcje sterujące

Programowanie - instrukcje sterujące Instytut Informatyki Uniwersytetu Śląskiego Laborki środowisko NetBeans, tworzenie nowego projektu; okno projekty; główne okno programu; package - budowanie paczek z klas; public class JavaApplication

Bardziej szczegółowo

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Temat 1: Podstawowe pojęcia: program, kompilacja, kod Temat 1: Podstawowe pojęcia: program, kompilacja, kod wynikowy. Przykłady najprostszych programów. Definiowanie zmiennych. Typy proste. Operatory: arytmetyczne, przypisania, inkrementacji, dekrementacji,

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

Podstawy programowania 2. Przygotował: mgr inż. Tomasz Michno

Podstawy programowania 2. Przygotował: mgr inż. Tomasz Michno Instrukcja laboratoryjna 2 Podstawy programowania 2 Temat: Zmienne dynamiczne tablica wskaźników i stos dynamiczny Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Tablice wskaźników Tablice

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

Języki i techniki programowania Ćwiczenia 2

Języki i techniki programowania Ćwiczenia 2 Języki i techniki programowania Ćwiczenia 2 Autor: Marcin Orchel Spis treści: Język C++... 5 Przekazywanie parametrów do funkcji... 5 Przekazywanie parametrów w Javie.... 5 Przekazywanie parametrów w c++...

Bardziej szczegółowo

Warunek wielokrotnego wyboru switch... case

Warunek wielokrotnego wyboru switch... case Warunek wielokrotnego wyboru switch... case Działanie instrukcji switch jest zupełnie inne niż w przypadku instrukcji if o czym będziesz mógł się przekonać w niniejszym rozdziale. Różnice pomiędzy instrukcjami

Bardziej szczegółowo

IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi

IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi EGZAMIN PIERWSZY (25 CZERWCA 2013) JĘZYK C++ poprawiam ocenę pozytywną z egzaminu 0 (zakreśl poniżej x) 1. Wśród poniższych wskaż poprawną formę definicji

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

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne

Bardziej szczegółowo

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów

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

Pętle. Dodał Administrator niedziela, 14 marzec :27

Pętle. Dodał Administrator niedziela, 14 marzec :27 Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać

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

Podstawowe części projektu w Javie

Podstawowe części projektu w Javie Podstawowe części projektu w Javie Pakiet w Javie to grupa podobnych typów klas, interfejsów i podpakietów. Pakiet w Javie może być wbudowany lub zdefiniowany przez użytkownika. Istnieje wiele wbudowanych

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

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

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

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski Informatyka- wykład Podstawy programowania w Pythonie dr Marcin Ziółkowski Instytut Matematyki i Informatyki Akademia im. Jana Długosza w Częstochowie 23 listopada 2015 r. JĘZYK PYTHON Język Python jest

Bardziej szczegółowo

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,

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

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

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe III. Refleksja Małgorzata Prolejko OBI JA16Z03 Plan Klasa Class. Analiza funkcjonalności klasy. Podstawy obsługi wyjątków. Zastosowanie refleksji do analizy obiektów. Wywoływanie

Bardziej szczegółowo

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy) Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013

Bardziej szczegółowo

Wprowadzenie do języka Java

Wprowadzenie do języka Java WSNHiD, Programowanie 2 Lab. 1 [ część 1 ] Wprowadzenie do języka Java Wprowadzenie Język programowania Java jest obiektowym językiem programowania. Powstał w 1995 i od tej pory był intensywnie rozwijany.

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

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

Zasady programowania Dokumentacja

Zasady programowania Dokumentacja Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika

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

Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków

Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................

Bardziej szczegółowo

Programowanie w języku C++ Grażyna Koba

Programowanie w języku C++ Grażyna Koba Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad

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

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Wykład 8: klasy cz. 4

Wykład 8: klasy cz. 4 Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1 Ćwiczenie 1 Uruchamianie programu w Netbeans Uruchom środowisko Netbeans. Stwórz nowy projekt typu Java Application. Nadaj projektowi nazwę HelloWorld (Project Name), zwróć uwagę na folder, w którym zostanie

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

KOTLIN. Język programowania dla Androida

KOTLIN. Język programowania dla Androida KOTLIN Język programowania dla Androida Historia Kotlin został opracowany przez firmę JetBrains Prace rozpoczęto w 2011 r., od 2012 r. dostępny na licencji Apache 2. Nazwa pochodzi od wyspy koło Petersburga

Bardziej szczegółowo

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD Języki C i C++ Wykład: 2 Wstęp Instrukcje sterujące 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe

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

Wstęp do programowania. Wykład 1

Wstęp do programowania. Wykład 1 Wstęp do programowania Wykład 1 1 / 49 Literatura Larry Ullman, Andreas Signer. Programowanie w języku C++. Walter Savitch, Kenrick Mock. Absolute C++. Jerzy Grębosz. Symfonia C++. Standard. Stephen Prata.

Bardziej szczegółowo

Platformy Programistyczne Podstawy języka Java

Platformy Programistyczne Podstawy języka Java Platformy Programistyczne Podstawy języka Java Agata Migalska 6 maja 2014 Plan wykładu 1 Sztuka wysławiania się w języku Java 2 Cały świat jest obiektem 3 Kolekcje 4 Zmienne i metody statyczne 5 Słowo

Bardziej szczegółowo

Obiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.

Obiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu. Zrozumienie funkcji danych statycznych jest podstawą programowania obiektowego. W niniejszym artykule opiszę zasadę tworzenia klas statycznych w C#. Oprócz tego dowiesz się czym są statyczne pola i metody

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

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest Pętle Pętla to pewien fragment kodu, który jest wykonywany wielokrotnie. Wyobraź sobie taką sytuację. Piszesz program do szyfrowania danych. Dane są szyfrowane kolejno bajt po bajcie. Załóżmy, że plik

Bardziej szczegółowo

Lab 9 Podstawy Programowania

Lab 9 Podstawy Programowania Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany

Bardziej szczegółowo

Podstawy i języki programowania

Podstawy i języki programowania Podstawy i języki programowania Laboratorium 3 - operatory oraz instrukcje warunkowe i wyboru mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 19 października 2018 1 / 35 mgr inż. Krzysztof

Bardziej szczegółowo