Instytut Informatyki, Politechnika Poznańska, SUM-TWO. Zaawansowane programowanie obiektowe
|
|
- Beata Baranowska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Instytut Informatyki, Politechnika Poznańska, SUM-TWO Zaawansowane programowanie obiektowe 9 października 2016
2 dr inż. Bartłomiej Prędki pok. 124 Centrum Wykładowe tel
3 Literatura 1. Język C# 2008 i platforma.net 3.5, A. Troelsen, PWN, Warszawa Visual C#.NET. Encyklopedia, Microsoft, Helion, Warszawa, Visual Studio. NET, Robert B. Dunaway, Mikom, Warszawa, C# i.net, Stephen C. Perry, Helion, Warszawa, Inżynieria oprogramowania, A. Jaszkiewicz, Helion, Warszawa 6.
4 Historia programowania Język maszynowy Taśmy/karty dziurkowane W celu zwiększenia czytelności kody funkcji zastąpiono nazwami (mnemonikami) assembler Języki nastawione na obliczenia, np. Fortran Inne języki specjalizowane
5 Obliczanie ciągu Fibbonaciego w asemblerze x86 stosik segment stack rozmiar equ 100 dw rozmiar dup(?) stosik ends fibmul segment assume cs:fibmul,ds:fibmul,ss:stosik fib proc mov dx,bx push ax push bx push cx push di mov ax,1 mov bx,1 mov cmp di,dx mov cx,ax add cx,bx mov ax,bx mov bx,cx inc mov dx,bx pop di pop cx pop bx pop ax ret fib mov ax,1 mov cmp bx,cx call fib mul dx inc int 3 fibmul ends
6 Języki proceduralne Typy podstawowe (int, double, char) Tablice Typy wyliczeniowe Struktury (rekordy) Procedury Funkcje Przykłady Pascal, C
7 Inne języki Sztuczna inteligencja rachunek predykatów Prolog Przetwarzanie list LISP Język dla dzieci LOGO
8 Języki obiektowe Nowe podejście do programowania Bardzo ważne pojęcie klasy Pierwszy język obiektowy Smalltalk Rozszerzenie języków proceduralnych C++, Object Pascal, Objective-C Języki w pełni obiektowe Java, języki.net
9 Języki obiektowe Klasa składa się z: Zmiennych innych typów (Atrybuty, Pola) Funkcji działających na tych zmiennych (Operacje, Metody) Własności dostęp do pól za pomocą specjalizowanych metod. Obiekt instancja klasy.
10 Platforma.Net
11 Platforma.Net W 2001 roku Microsoft zaprezentował platformę.net Odpowiedź Microsoft u na sukces Javy Wady i zalety w stosunku do Javy
12 Cechy platformy.net przeznaczone do tworzenia i dystrybucji nowoczesnego, zorientowanego obiektowo oprogramowania, aplikacja.net może być napisana w jednym z wielu języków przeznaczonych dla platformy, udostępnia bibliotekę niezależnych językowo klas, umożliwia tworzenie samoopisujących się komponentów umożliwia integrację wielu języków programowania nowy model tworzenia aplikacji dla środowiska Windows nowy model tworzenia aplikacji webowych tworzenie aplikacji mobilnych nowa architektura dostępu do baz danych
13 Cechy platformy.net umożliwia tworzenia wieloplatformowych usług webowych udostępnia nową architekturę do tworzenia zdalnych obiektów wiele technik programowania dla Windows czyni przestarzałymi koniec piekła-dll
14 Języki.Net Języki wspierane przez Microsoft: C# (C sharp) Visual Basic.Net C++ J# (J sharp) Inne języki: COBOL EIFFEL PERL Python Smalltalk
15 Architektura.Net C# VB.Net MC++ Inne Wspólna specyfikacja języka CLS (CLI) Web Services Web Forms Windows Forms Windows Presentation Foundation Dostęp do danych i obsługa XML Bazowa biblioteka klas BCL Środowisko uruchomieniowe CLR
16 Język pośredni Kod źródłowy jest tłumaczony przez kompilator języka na kod pośredni IL (Intermediate Language). Kod IL jest wykonywany przez środowisko uruchomieniowe CLR (Common Language Runtime). Języki można mieszać dzięki wspólnemu systemowi typów CTS (Common Type System). Kod IL jest zawsze kompilowany, czyli nie korzysta z maszyny wirtualnej.
17 Kod C# Kod VB.Net Kod inny Kompilator C# Kompilator VB.Net Kompilator innego języka IL + metadata IL + metadata IL + metadata Kompilator JIT CLR Kod binarny
18 CLR kod jest kodem zarządzanym (managed code) istnieje możliwość współpracy z kodem tradycyjnym, np. z komponentami typu COM metadane zawierają automatycznie generowany opis komponentu, jego typów i interfejsu
19 CLR CLR zarządza aplikacjami ładuje i weryfikuje kod wykonuje garbage collection, separuje aplikacje zarządza bezpieczeństwem udostępnia możliwość debugowania i profilowania
20 CLR IL + metadane CLR Class loader JIT Weryfikacja Econo-JIT, Opti-JIT Zarządzany kod binarny, Garbage collection, bezpieczeństwo, wyjątki, wątki,...
21 Kompilator JIT Kompiluje kod IL do kodu maszynowego Pre-JIT kompiluje cały kod z góry, można używać w trakcie instalacji, Normal-JIT normalny kompilator, przechowuje skompilowany kod w cache u Econo-JIT kompilator optymalizujący kod dla limitowanych zasobów
22 Garbage collection uruchamia się, gdy zaczyna brakować pamięci, zakłada, że wszystko można usunąć, po czym dokonuje weryfikacji, elementy używane przesuwa na początek obszaru i uaktualnia wskaźnik wolnej pamięci, nie przenosi elementów o rozmiarze większym niż 20 kb, można uruchomić ten proces ręcznie.
23 Cykl kodu Kod źródłowy aplikacji Kompilator generuje kod IL i tworzy pakiet (assembly) Loader wczytuje nagłówek pliku wykonywalnego Ładowane są wymagane biblioteki DLL Wykonywana jest funkcja _CorExeMain z początku aplikacji _CorExeMain uruchamia JIT kompilujący kod IL na maszynowy Kod maszynowy jest wykonywany
24 Hello world
25 Hello World IL
26 Samoopisujący się kod
27 Samoopisujący się kod Informacje o kodzie zapisane są w manifeście (manifest), który zawiera opis typów, metod oraz np. wersję komponentu.
28 Narzędzia.Net Platform SDK, Visual Studio.Net (C#,VB,C++,J#) Borland C# Builder Delphi SharpDevelop (C#, VB) inne
29 Wieloplatformowość.Net Compact Framework na Pocket PC podzbiór platformy dla urządzeń mobilnych Project Mono dla Linux a CLR, JIT, klasy i kompilator C#. Portable.Net narzędzia i platforma dla wielu systemów
30 C#
31 C# i.net Framework Język C# jest podstawowym językiem programowania dla platformy.net Nie istnieje kompilator kompilujący kod C# na język maszynowy.
32 Microsoft C#.net Nowy język bazujący na C++ i Javie W pełni obiektowy nastawiony na programowanie dla platformy.net Podstawowe założenie wszystko jest klasą, nawet typy podstawowe Zarządzanie pamięcią wykonywane przez platformę uruchomieniową (Garbaga Collection)
33 Typy podstawowe byte sbyte short ushort int uint long ulong float double decimal string char bool
34 Deklarowanie zmiennych Zmienne są deklarowane jak w C, C++ int i; double liczba; string lancuch = Tekst ; W C# nie ma wskaźników!
35 Operatory Operatory identyczne jak w C++ podstawienie = porównanie == inkrementacyjne = -= *= /= logiczne && znaki specjalne po \
36 Instrukcje warunkowe Zapis identyczny jak w C++ if (x==5) { } else { } switch (lancuch) { } case a : break; case b : break; default: break;
37 Pętle Pętle jak w C++ for (int i=0;i<5;i++) { ; } while (i<5) { ; }
38 Typ wyliczeniowy enum TypWyliczeniowy { wartosc1, wartosc2, wartosc3 } TypWyliczeniowy zmienna=wartosc2;
39 Obsługa wyjątków try { //kod, w którym może wystąpić błąd } catch (Exception e) { //został zgłoszony wyjątek - e } finally { //kończy obsługę wyjątku }
40 Zgłaszanie wyjątków if (y==0) throw new Exception( Nie możesz dzielić przez 0 ); return x/y;
41 Przestrzenie nazw Aby unikać konfliktów nazw stosuje się przestrzenie nazw (namespace). namespace program { ; }
42 Klasy W przeciwieństwie do C++ nie ma osobnej deklaracji i definicji elementów klasy. public class Complex { int re; int im; Complex() { re=0; im=0; } }
43 Rodzaje dostępu Identyfikator dostępu umieszcza się przed każdym elementem. private public protected internal wewnątrz pakietu (assembly) protected internal wewnątrz pakietu i dziedziczone
44 Dostęp do pól przez własności Ze względu na ochronę pól, zamiast metod typu Get/ Set stosuje się własności (Properties).
45 Konstruktory Klasa może mieć wiele konstruktorów, pod warunkiem, że różnią się argumentami Konstruktor ma nazwę taką jak klasa i nie ma typu. Konstruktor powinien być publiczny. Praktycznie nie używa się destruktorów.
46 Metody Może być wiele metod o tej samej nazwie, z zastrzeżeniem jak przy konstruktorach. Metody mogą mieć typ lub mogą być typu void. Można wymusić przekazywanie argumentów przez referencję korzystając ze słowa kluczowego ref.
47 Dziedziczenie Podstawową relację między klasami jest dziedziczenie. W C# nie ma wielokrotnego dziedziczenia jak w C++. public class Dziecko:Rodzic { ; }
48 Dziedziczenie Wielokrotne dziedziczenie można zastąpić przy pomocy interfejsów. Interfejs może definiować metody i właściwości
49 Polimorfizm Wszystkie klasy w C# dziedziczą po klasie object. Pod zmienną typu object można podstawić dowolny obiekt. Klasa object ma kilka metod, np. ToString. int i=5; object o=i; int j=(int)o;
50 Klasy abstrakcyjne Klasa jest abstrakcyjne, gdy jeden z jej elementów jest abstrakcyjny. Słowo kluczowe abstract.
51 Przeciążanie metod Aby można tworzyć obiekty klasy dziedziczącej po klasie abstrakcyjnej należy przeciążyć jej metody abstrakcyjne. Można przeciążać inne metody Słowo kluczowe override i sealed.
52 Przeciążanie metod
53 Metody wirtualne Przy stosowaniu klasycznych metod kompilator może w momencie kompilacji określić kiedy będzie wywołana jaka metoda Metoda wirtualna to metoda z późnym wiązaniem, na etapie wykonywania kodu.
54 Metody wirtualne A.F B.F B.G B.G
55 Metody klasy object Equals() porównuje dwa obiekty, ReferenceEquals() porównuje referencje do obiektów, GetHashCode() określa unikalny kod obiektu, GetType() określa typ obiektu, ToString() konwertuje obiekt na łańcuch znaków
56 Tablice i kolekcje Tablice są typami złożonymi. Kolekcje (ArrayList) rodzaj listy. Można się po nich poruszać korzystając z instrukcji foreach.
57 Tablice i kolekcje
58 Typy generyczne Podobne do szablonów w C++.Net 1.1.Net 2.0
59 Typy generyczne Można definiować kilka typów, np.: Metody typu generic
60 Typy generyczne Wbudowane w BCL, takie jak: List<> Dictionary<> Stack<>...
61 Iteratory Ułatwiają tworzenie własnych typów, które mogą być wywoływane za pomocą instrukcji foreach
62 Iteratory Klasa może mieć wiele iteratorów
63 Typy częściowe Umożliwiają zapis kodu klasy w oddzielnych częściach, np. plikach. Wszystkie części muszą być obecne w momencie kompilacji.
64 Typy null owe Umożliwiają podstawianie wartości null do zmiennych typów podstawowych, np. int. Kwestie konwersji typów.
65 .Net Framework 3.0 CLR zgodny z 2.0 Nowe elementy: Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation, Windows CardSpace.
66 .Net Framework 3.5 Nowe elementy językowe: typy implicite - określane przez wartość
67 .Net Framework 3.5 Metody rozszerzające (Extension methods)
68 .Net Framework 3.5 Metody lambda - rozszerzenie metod anonimowych operator lambda => (goes to)
69 .Net Framework 4.0 Typy dynamiczne - wiązanie w czasie uruchomienia Argumenty opcjonalne Argumenty z nazwą Lepszy mechanizm InterOp
70
71 Przeciążanie konstruktorów Konstruktory muszą się różnić argumentami!
72 Przeciążanie operatorów
73 Operatory konwersji implicit konwersja domyślna explicit - wymuszona
74 Operatory is i as is sprawdza czy dany obiekt można bezpiecznie rzutować na określony interfejs as dokonuje od razu rzutowania na interfejs
75 Interfejsy Interfejsy mogą mieć nie tylko metody ale i własności W ramach platformy.net jest zdefiniowanych kilka interfejsów, np. IComparable ma metodę CompareTo i pozwala na sortowanie obiektów w kolekcjach
76 Interfejsy
77 Interfejs IEquatable<> umożliwia porównywanie obiektów za pomocą standardowych mechanizmów, np. metody Contains, IndexOf kolekcji
78 Delegacje Zastępują wskaźniki do funkcji w C++, przy czym są bezpieczne (kontrola typów) Określają jakiego typu i z jakimi argumentami będzie wywołana funkcja
79 Delegacje
80 Delegacje
81 Delegacje
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
Programowanie w środowiskach graficznych. Wykład 3 Język C#
Programowanie w środowiskach graficznych Wykład 3 Język C# 1 Zagadnienia 1. Wprowadzenie 2. Przestrzenie nazw 3. Typy, parametry, konwersje 4. Klasy 5. Instrukcje sterujące 6. Właściwości 7. Interfejsy,
Podstawy programowania. Wprowadzenie
Podstawy programowania Wprowadzenie Proces tworzenia programu Sformułowanie problemu funkcje programu zakres i postać danych postać i dokładność wyników Wybór / opracowanie metody rozwiązania znaleźć matematyczne
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,
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
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
C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop Spis treści
C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop. 2016 Spis treści Spis rysunków 11 Spis tabel 13 Przedmowa 15 Wprowadzenie 17 Podziękowania 27 O autorach 29 1 Wprowadzenie
Metodyka programowania. Podstawy C#
Metodyka programowania Podstawy C# Platforma.NET Platforma.NET (.NET Framework) Platforma programistyczna Microsoft, Obejmuje - środowisko uruchomieniowe CLR (Common Language Runtime) - biblioteki klas
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Języki i metodyka programowania. Język C# pętle, sterowanie, wyjątki
Język C# pętle, sterowanie, wyjątki Język C# pętle Pętle: while ( ) do { while ( ); for ( ; ; ) foreach ( in
Programowanie C# mgr in. Dariusz Ku. p. 119A dkus@dune.pol.lublin.pl http://antenor.pol.lublin.pl/~dkus
Programowanie C# mgr in. Dariusz Ku p. 119A dkus@dune.pol.lublin.pl http://antenor.pol.lublin.pl/~dkus Translacja kodu Kod ródłowy Java, C# Kompilator Kompilator Kod poredni Interpreter Maszyna wirtualna
Środowiska i platformy programistyczne
Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,
MATERIAŁY DO ZAJĘĆ II
MATERIAŁY DO ZAJĘĆ II Zmienne w C# Spis treści I. Definicja zmiennej II. Hierarchia typów (CTS) III. Typy wbudowane IV. Deklaracja zmiennych V. Literały VI. Pobieranie i wypisywanie wartości zmiennych
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.) przeznaczony do programowania zarówno pod ios jak i Mac OS X bazuje na logice Objective-C bez kompatybilności
Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017
Wykład 13 14 czerwiec 2017 Java vs cpp - podobieństwa Podobny sposób definiowania klas. Występowanie typów podstawowych: boolean, char, byte, short, int, long, float, double. Podobna zasada definiowania
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
Wykład 5 Okna MDI i SDI, dziedziczenie
Wykład 5 Okna MDI i SDI, dziedziczenie Autor: Zofia Kruczkiewicz Zagadnienia 1. Aplikacja wielookienkowa. Zakładanie projektu typu CLR Windows Forms 1.1. Aplikacja typu MDI 1.2. Aplikacja typu SDI 2. Dziedziczenie
Języki i paradygmaty programowania - 1
doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.edu.pl http://www.tjeleniewski.wstt.edu.pl Cele przedmiotu Umiejętność zastosowania i oceny przydatności paradygmatów
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,
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
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
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ąć
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
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
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.) przeznaczony do programowania zarówno pod ios jak i Mac OS X bazuje na logice Objective-C bez kompatybilności
PARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej
Programowanie MorphX Ax
Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn
Programowanie RAD Delphi
Programowanie RAD Delphi Dr Sławomir Orłowski Zespół Fizyki Medycznej, Instytut Fizyki, Uniwersytet Mikołaja Kopernika w Toruniu Pokój: 202, tel. 611-32-46, e-mial: bigman@fizyka.umk.pl Delphi zasoby Aplikacje
SWIFT. Zaawansowane Programowanie Obiektowe
SWIFT Zaawansowane Programowanie Obiektowe Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.) przeznaczony do programowania zarówno pod ios jak i Mac OS X bazuje
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
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ąć
C# /.NET. Copyright by 3bird Projects 2018,
C# /.NET Copyright by 3bird Projects 2018, http://edukacja.3bird.pl Ogólne Opracowana przez Microsoft platforma programistyczna.net Framework jest odpowiednikiem platformy Java. Obejmuje gotowe biblioteki,
Programowanie obiektowe - 1.
Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która
Programowanie Komputerów
Programowanie Komputerów Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Wykład 30 godzin, Laboratoria 30 godzin 2012/ Strona 1 z 28 1. Tablice w C# Indeksowane od zera
Podstawy otwartych języków programowania Przechowywanie danych
Podstawy otwartych języków programowania Przechowywanie danych Wiktor Wandachowicz Sposoby przechowywania danych Typy podstawowe Pojedyncze obiekty Tablice obiektów i tablice typów podstawowych jednowymiarowe
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
Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA
Java w 21 dni / Rogers Cadenhead. Gliwice, cop. 2016 Spis treści O autorze 11 Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA Dzień 1. Rozpoczynamy przygodę z Javą 21 Język Java 21 Programowanie obiektowe 24 Obiekty
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
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
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;
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
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
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
Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
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.
Język programowania Scala / Grzegorz Balcerek. Wyd. 2. Poznań, cop Spis treści
Język programowania Scala / Grzegorz Balcerek. Wyd. 2. Poznań, cop. 2016 Spis treści Przedmowa 1 Stosowana notacja 1 1. Wprowadzenie 3 1.1. Konsola interaktywna języka Scala 3 1.2. Zmienne 5 1.3. Wartości
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
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
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
C# - innowacja czy plagiat?
C# - innowacja czy plagiat? Piotr Kowalski Seminarium magisterskie Zagadnienia programowania obiektowego Wydział Matematyki, Mechaniki i Informatyki Uniwersytet Warszawski Agenda! Wprowadzenie do platformy.net!
Materiały do zajęć VII
Spis treści I. Klasy Materiały do zajęć VII II. III. Konstruktor Właściwości i indeksatory Klasy Programowanie obiektowe wiadomości wstępne Paradygmat programowania obiektowego Abstrakcja Hermetyzacja
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
Programowanie obiektowe i zdarzeniowe
Marek Tabędzki Programowanie obiektowe i zdarzeniowe 1/23 Programowanie obiektowe i zdarzeniowe wykład 6 polimorfizm Na poprzednim wykładzie: dziedziczenie jest sposobem na utworzenie nowej klasy na podstawie
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
Język C++ wykład VIII
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 Obiektowość języka C++ ˆ Klasa (rozszerzenie struktury), obiekt instancją klasy, konstruktory i destruktory ˆ Enkapsulacja - kapsułkowanie,
Instrukcja laboratoryjna cz.3
Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
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
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
Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -
Nazwa modułu: Programowanie obiektowe Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3 Wydział: Zarządzania Kierunek: Informatyka i Ekonometria Specjalność: - Poziom studiów: Studia I stopnia
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
Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1)
MAS dr. Inż. Mariusz Trzaska Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) Zagadnienia o Podstawy o Kontrolowanie sterowania o Klasy o Interfejsy o Obsługa błędów o Pojemniki o System
Programowanie obiektowe. Wprowadzenie
1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Autor: Bączkowski Karol Promotor: dr inż. Paweł FIGAT
Autor: Bączkowski Karol Promotor: dr inż. Paweł FIGAT Integracja jest to całokształt działao zmierzających do scalenia różnych rozwiązao informatycznych. W miarę rozwoju nowych technologii informatycznych
Programowanie 2. Język C++. Wykład 3.
3.1 Programowanie zorientowane obiektowo... 1 3.2 Unie... 2 3.3 Struktury... 3 3.4 Klasy... 4 3.5 Elementy klasy... 5 3.6 Dostęp do elementów klasy... 7 3.7 Wskaźnik this... 10 3.1 Programowanie zorientowane
Języki i paradygmaty programowania
Języki i paradygmaty programowania WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 Materiały do wykładu
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
Spis treści. Wprowadzenie 15
Spis treści Wprowadzenie 15 1. Mechanizmy języka C++ 19 1.1. Struktura programu jednostki translacji.................. 21 1.1.1. Składnia tekstu źródłowego...................... 22 1.1.2. Preprocesor...
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
Wprowadzenie do Objective-C
Wprowadzenie do Objective-C Historia rozszerzenie składni C o elementy obiektowe powstał na początku lat 80-tych zainspirowany SmallTalk iem wstecznie kompatybilny z C Historia Steve Jobs po odejściu z
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,
.NET Klasy, obiekty. ciąg dalszy
.NET Klasy, obiekty ciąg dalszy Przeciążanie operatorów 1 W języku C# istnieje możliwość zdefiniowania funkcjonalności dużej części operatorów dla typów stworzonych przez użytkownika. Dzięki takiemu zabiegowi,
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
Programowanie obiektowe W1 Wprowadzenie. Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki
Programowanie obiektowe W1 Wprowadzenie Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki Ogólna charakterystyka języka C++ C++ jest obiektowym językiem programowania,
Wprowadzenie do programowania
do programowania ITA-104 Wersja 1 Warszawa, Wrzesień 2009 ITA-104 do programowania Informacje o kursie Zakres tematyczny kursu Opis kursu Kurs przeznaczony jest do prowadzenia przedmiotu do programowania
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
Wykłady 1, 2. Wstęp do programowania w środowisku Visual C++ Autor: Zofia Kruczkiewicz
Wykłady 1, 2 Wstęp do programowania w środowisku Visual C++ Autor: Zofia Kruczkiewicz 1 Zagadnienia 1. Podstawowe pojęcia 2. Tworzenie aplikacji w Windows Forms 3. Zawartość projektu 4. Podstawowe cechy
Metodyka programowania. Podstawy C#
Metodyka programowania Podstawy C# Platforma.NET Platforma.NET (.NET Framework) Platforma programistyczna Microsoft, Obejmuje - środowisko uruchomieniowe CLR (Common Language Runtime) - biblioteki klas
Informatyka I. Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki
Informatyka I Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Dziedziczenie klas
Wykład 9: Polimorfizm i klasy wirtualne
Programowanie obiektowe Wykład 9: i klasy wirtualne 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD Programowanie obiektowe i metody wirtualne 2 W programowaniu obiektowym polimorfizm
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
Klasy cd. Struktury Interfejsy Wyjątki
Klasy cd. Struktury Interfejsy Wyjątki Struktury Struktura pozwala na zdefiniowanie typu danych, który nie charakteryzuje się zbyt złożoną funkcjonalnością (np. punkt, kolor, etc). Do definiowania struktury
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,
Zaawansowane programowanie w języku C++ Programowanie obiektowe
Zaawansowane programowanie w języku C++ Programowanie obiektowe Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka
Techniki Programowania
Techniki Programowania Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Dr hab. inż. Łukasz Madej, prof. AGH Budynek B5,
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ę
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.
wykład IV uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C, a C++. wykład IV dr Jarosław Mederski Spis Język C++ - wstęp
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 Historia C++ został zaprojektowany w 1979 przez Bjarne Stroustrupa jako rozszerzenie języka C o obiektowe mechanizmy abstrakcji danych i
Programowanie obiektowe
Wykład 2 28 lutego 2019 Plan wykładu 1 2 3 4 5 Plan wykładu 1 2 3 4 5 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie; standardy ISO i ECMA; podobny składniowo do C++; Język C Krótka
Programuj w języku C# i zarabiaj na swoich aplikacjach! Programowanie w Visual Studio 2013 to czysta przyjemność!
Programuj w języku C# i zarabiaj na swoich aplikacjach! Dostosuj środowisko Visual Studio 2013 do tworzonej aplikacji Twórz programy nie tylko internetowe - for Desktop, for Windows i for Web Uniknij problemów
Programowanie obiektowe
Programowanie obiektowe Wykład 5 Marcin Młotkowski 23 marca 2017 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 50 Historia Początkowe założenia Projekt OAK Sterowanie urządzeniami
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
Język C++ Różnice między C a C++
Język C++ Różnice między C a C++ Plan wykładu C a C++ Różnice ogólne Typy Deklaracje zmiennych C++ jako rozszerzenie C Domyślne argumenty funkcji Przeciążanie funkcji Referencje Dynamiczny przydział pamięci
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
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
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
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
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
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,