Wykªad nr 4 Programowanie obiektowe
|
|
- Mateusz Wacław Lis
- 8 lat temu
- Przeglądów:
Transkrypt
1 Wykªad nr 4 Programowanie obiektowe Elektroniczne Przetwarzanie Informacji 13 listopada 2013
2 Motywacja Okoªo 2/3 3/4 kosztów posiadania oprogramowania zwi zanych jest z jego utrzymaniem 1 : dodawanie nowych funkcjonalno±ci (zachowanie przewagi konkurencyjnej) dostosowanie do zmieniaj cych si warunków zewn trznych (np. regulacje prawne, nowe platformy u»ytkowe, etc.) usuwanie bª dów poprawa wydajno±ci Im bardziej zªo»ony kod ¹ródªowy, tym wi ksze koszty jego utrzymania. 1
3 Paradygmaty programowania programowanie proceduralne programowanie modularne programowanie abstrakcyjnych typów danych programowanie obiektowe Any fool can write code that a computer can understand. Good programmers write code that humans can understand. Martin Fowler
4 Programowanie proceduralne funckcja/procedura jednostka abstrakcji algorytmów Zdecyduj, jakie chcesz mie procedury; stosuj najlepsze algorytmy jakie mo»esz znale¹. B. Stroustrup void sort(int * table, int size){ int i,j,temp; for(i=0;i<size-1;i++){ for(j=i+1;j<size;j++){ if(table[i] > table[j]){ temp = table[i]; table[i] = table[j]; table[j] = temp; } } } }
5 Programowanie modularne moduª jednoska organizacji kodu Zdecyduj jakie chcesz mie moduªy; podziel program w taki sposób aby ukry dane w moduªach. B. Stroustrup interfejs moduªu stack.h void push(char c); char pop(); const int size = 100; implementacja moduªu stack.c # include "stack.h" static char stack[size]; static char * pointer; void push(char c){ //implementacja z u»yciem 'pointer' } char pop(){ //implementacja z u»yciem 'pointer' }
6 Programowanie modularne cd. u»ycie moduªu program.c # include <stdio.h> # include "stack.h" int main(){ push('c'); char character = pop(); if(character!= 'c'){ pritnf("co± nie tak!\n"); } else { pritnf("wszystko ok.\n"); } }
7 Abstrakcyjne typy danych abstrakcyjne typy (struktury) danych jednostka organizacji danych i stowarzyszonych operacji Zdecyduj si jakie chcesz mie typy; dla ka»dego typu dostarcz peªny zbiór operacji. B. Stroustrup interfejs abstrakcyjnego typu danych complex.h class complex { double re, im; complex(double r, double i){re = r; im = i}; complex operator+(complex a, complex b); // inne operacje } implementacja abstrakcyjnego typu danych complex.c # include "complex.h" complex operator+(complex a, complex b){ return comlex(a.re + b.re,a.im + b.im); }
8 Abstrakcyjne typy danych cd. u»ycie abstrakcyjnego typu danych program.c # include "complex.h" int main(){ complex c1 = new complex(1,0); complex c2 = new complex(0,1); complex c3 = c1 + c2; }
9 OOP Object Oriented Programming Programowanie zorientowanie obiektowo klasa podstawowa jednostka abstrakcji Zdecyduj jakie chcesz mie klasy; dla ka»dej klasy dostarcz peªny zbiór operacji; korzystaj c z mechanizmu dziedziczenia, jawnie wska» to co jest wspólne. B. Stroustrup dynamiczne wywoªywanie metod enkapsulacja dziedziczenie polimorzm testy jednostkowe
10 Podej±cie obiektowe Wysokopoziomowe spojrzenie na modelowan domen : zamiast my±le w kategoriach sekwencji procedur zidentykuj 'graczy', elementy, które s modelowane obiekty! Przykªad: domena: informacje o pogodzie obiekty: 20 C, zachmurzenie caªkowite, opady 100mm, wiatr umiarkowany w kierunku póªnocnym, wilgotno± 85%, Kraków, 20 sierpnia 2011, godz. 11:00, czas ±rodkowoeuropejski
11 Podej±cie obiektowe cd. Obiekty: jakie wªasno±ci posiadaj? atrybuty jakie dziaªania podejmuj? metody Obiekt: 20 C atrybuty: warto±, skala metody: dodaj, odejmnij, porównaj, konwertuj, wy±wietl Obiekt: 20 sierpnia 2011, godz. 11:00, czas ±rodkowoeuropejski atrybuty: rok, miesi c, dzie«, godzina, minuta, strefa czasowa metody: dodaj, odejmnij, porównaj, konwertuj, wy±wietl
12 Klasy i obiekty Je±li wiemy jak zbudowa jeden obiekt mo»emy budowa ich wiele, stosuj ten sam wzorzec. Ten wzorzec nazywany jest klas. klasa deniuje abstrakcyjn charakterystyk rzeczy np. klasa Temperature posiada warto± i skal, mo»e by skonwertowana, porównana, etc. obiekt jest instancj klasy, posiada stan np. konkretna temperatura: 36.6 C warto± : 36.6, skala: Celsjusza
13 Przekazywanie wiadomo±ci Obiekty komunikuj si przekazuj c wiadomo±ci wywoªuj nawzajem swoje metody. Metafora czarnej skrzynki: Pozostaªe obiekty nie powinny by zainteresowane tym co znajduje si wewn trz czarnej skrzynki musz jedynie zna komunikaty, które mog by do niej przesªane w celu wysªania/odebrania danych (interfejs/api).
14 Przykªad temperatura Funkcjonalno±ci: okre±lanie temeratury w dowolnej skali konwersja temperatury do napisu konwersja z jednej skali do innej denicja zera bezwzgl dnego dodawanie temperatur zwielokrotnianie temperatury w danej skali porównywanie temperatur
15 Implementacja proceduralna temperature.h const int CELSIUS = 0x001; const int KELVIN = 0x002; const int FAHRENHEIT = 0x003; const float ZERO = ; const float CELSIUS_TO_FAHRENHEIT_FACTOR = 9.0/5; const float CELSIUS_TO_FAHRENHEIT_OFFSET = 32.0; float temperature_convert(float value, int from, int to); float temperature_add(float value1,int type1, float value2, int type2); char * temperature_to_string(float value,int type); float temperature_multiply(float value,int type,float factor); int temperature_compare(float value1,int type1, float value2,int type2);
16 Implementacja proceduralna cd. temperature.c float temperature_convert(float value, int from, int to){ float in_kelvins; switch(from){ case CELSIUS : in_kelvins = value + ZERO; break; case KELVIN : in_kelvins = value; break; case FAHRENHEIT : in_kelvins = value * CELSIUS_TO_FAHRENHEIT_FACTOR + CELSIUS_TO_FAHRENHEIT_OFFSET + ZERO; break; } switch(to){ case CELSIUS : return in_kelvins - ZERO; case KELVIN : return in_kelvins; case FAHRENHEIT : return (value - ZERO - CELSIUS_TO_FAHRENHEIT_OFFSET) / CELSIUS_TO_FAHRENHEIT_FACTOR; } }
17 Implementacja proceduralna problemy program.c # include "temperature.h" int main(){ float in_celsius = 36.6; float in_kelvins = temperature_convert(in_celsius,celsius,kelvin); // powtórnie musimy okre±li jednostk float in_fahrenheits = temperature_convert(in_celsius,celsius,fahrenheit); // nieisniej ce jednostki float in_what = temperature_convert(in_celsius,celsius,5); // w jakich jednostkach? float multiplied = temperature_multiply(in_celsius,celsius,10.0); // niepoprawne dane in_kelvins = ; // niepoprawna operacja in_fahrenheits = in_celsius + in_kelvins; // tak szybciej... cho bª dnie in_kelvins = in_celsius + ZERO; // mo»na... ale po co? if(in_kelvins > in_celsius){ } }
18 Przykªad nazw funkcji ªa«cuchowych w PHP addcslashes convert_cyr_string convert_uudecode count_chars implode lcfirst nl2br sha1 str_getcsv str_shuffle strcasecmp strchr strrchr strlen
19 Implementacja proceduralna problemy rozwlekªo± (temperature_add, temperature_convert,...) baªagan w globalnej przestrzeni nazw funkcji brak kontroli danych/ka»dorazowa kontrola danych brak powi zania warto±ci z innymi warto±ciami (mo»na rozwi za dzi ki strukturom) brak powi zania warto±ci z operacjami brak wsparcia dla reu»ytkowania kodu w du»ych systemach kod przestaje by zrozumiaªy
20 Cel implementacja obiektowa in_celsius = Temperature.new(36.6,:c) in_celsius.value #=> 36.6 in_celsius.scale #=> :c in_celsius.scale = :z # niemo»liwe - wewn trzna # struktura jest ukryta in_kelvins = in_celsius.to_kelvin # jednostka trzymana jest # "wewn trz" invalid = Temperature.new(36.6,:z) # mo»na np. rzuci wyj tek multiplied = in_celsius * 10 # zachowuje skal invalid = Temperature.new(-300,:c) # mo»na np. rzuci wyj tek sum = in_celsius + in_kelvins # da poprawny wynik if(in_celsius > in_kelvins) # da poprawny wynik #... zero = Temperature.absolute_zero # posiada okre±lon jednostk puts zero # mo»na okre±li domy±ln # reprezentacj np. '0 K'
21 Denicja klasy przykªad class Temperature # Initialize the temperature with +value+ and +scale+. def = = scale # Default string representation of the temperature. def to_s "%.2f %s" % temperature = Temperature.new(36.6,:c) puts temperature #=> C
22 Denicja klasy denicja rozpoczyna si sªowem kluczowym class a ko«czy sªowem nazwa klasy jest staª w notacji wielbª dziej wszystko co znajduje si pomi dzy class a odpowiadaj cym mu deniowane jest w przestrzeni nazw klasy new tworzy nowy obiekt danej klasy initialize (konstruktor) wywoªywana, kiedy tworzony jest nowy obiekt (tzn. jako pochodna wywoªania new) to_s automatycznie wywoªywana przy konwersji do ªa«cucha znak oznaczaj cy zmienn instancyjn prywatny atrybut obiektu
23 Atrybuty Atrybuty obiektu s domy±lnie prywatne ale mo»na je udost pni poprzez zdeniowane metod akcesorów tzw. getterów i setterów. Mo»na to zrobi r cznie: class Temperature # Get the +value+ of the temperature. def # Get the +scale+ of the temperature. def # Set the +value+ of temperature. def = new_value
24 Atrybuty dynamiczne akcesory Lub zwi ¹lej: class Temperature attr_accessor :value attr_reader :scale Obie denicje pozwol na wykonywanie nast puj cych operacji: temperature = Temperatura.new(10, :c) temperature.value #=> 10 temperature.value = 20 temperature.value #=> 20 temperature.scale #=> :c temperature.scale = :z # niemo»liwe! Jest równie» wywoªanie attr_writer, które powoduje,»e atrybut jest tylko modykowalny (ale nieodczytywalny).
25 Metody instancyjne przykªad class Temperature # Converts the temeperature to Kelvin scale. def to_kelvin Temperature.new(convert(@scale,:k,@value),:k) # Converts the temeperature to Celsius scale. def to_celsius Temperature.new(convert(@scale,:c,@value),:c) # Converts the temeperature to Fahrenheit scale. def to_fahrenheit Temperature.new(convert(@scale,:f,@value),:f)
26 Metody instancyjne okre±lane s tak samo jak funkcje (sªowo kluczowe def, nazwa, parametry) deniuj zachowanie obiektów klasy okre±laj komunikaty, na które reaguj obiekty klasy umieszczane s w ciele klasy pomi dzy sªowem kluczowym class a sªowem kluczowym ko«cz cym denicj klasy nale» do przestrzeni nazw klasy odr bne klasy mog mie metody o tych samych nazwach i ró»nych implementacjach zako«czone wykorzyknikiem okre±laj metody modykuj ce obiekt, dla których istnieje wersja niemodykuj ca konwencja zako«czone pytajnikiem okre±laj predykaty (zwracaj warto±ci prawda/faªsz) konwencja
27 Metody modykuj ce przykªad class Temperature # Converts (in place) the temeperature to Kelvin scale. def = = :k self # Converts (in place) the temeperature to Celsius scale. def = = :c self # Converts (in place) the temeperature to Fahrenheit scale. def = = :f self
28 Metody chronione przykªad class Temperature ABSOLUTE_ZERO = # in Celsius CELSIUS_FACTORS = {:c => 1.0, :f => 1.8, :k => 1.0} CELSIUS_OFFSETS = {:c => 0, :f => 32, :k => -ABSOLUTE_ZERO} protected def convert(from,to,value) factor(from,to) * value + offset(from,to) def factor(from,to) return CELSIUS_FACTORS[to] if from == :c return (1 / CELSIUS_FACTORS[from]) if to == :c factor(from,:c) * factor(:c,to) def offset(from,to) return CELSIUS_OFFSETS[to] if from == :c return (- CELSIUS_OFFSETS[from] * factor(from,to)) if to == :c offset(from,:c) * factor(:c,to) + offset(:c,to)
29 Dost pno± metod W Rubim wyst puj trzy poziomy dost pno±ci metod: public (publiczny) metody tego rodzaju mog by wywoªywane bez ogranicze«; domy±lnie wszystkie metody s publiczne, z wyj tkiem initialize, która jest zawsze prywatna protected (chroniony) metody mog by wywoªywane tylko przez obiekty danej klasy i jej podklas private (prywatny) metody nie mog by wywoªywane z jawnym odbiorc ; innymi sªowy mog by wywoªywane wyª cznie w obr bie danego obiektu Modykatory dost pu s umieszczane w nowej linii i dotycz wszystkich metod, które po nich nast puj, a» do napotkania kolejnego modykatora (o ile wyst puje).
30 Dost pno± metod zasi g class Temperature def to_kelvin # domy±lny dost p - publiczny #... protected # kolejne metody b d chronione def convert(from,to,value) #... def factor(from,to) #... public def to_kelvin! #... # kolejne metody b d publiczne
31 Metody i zmienne klasowe przykªad class = Temperature.new(0,:k) # Returns true if the temperature is an absolute zero. def zero? self # The absolute zero. def zero = Temperature.absolute_zero puts zero #=> 0 K puts zero.to_celsius #=> C puts zero.zero? #=> true puts Temperature.new(10,:c).zero? #=> false
32 Obiekt/klasa atrybuty/metody Obiekt Klasa np. warto± temperatury zero absolutne Metody Denicja: Denicja: def method def Class.method Wywoªanie: Wywoªanie: object.method Class.method np. temperature.to_s np. Temperature.new Tablica : Atrybuty i metody
33 Odbiorca komunikatu Odbiorca komunikatu jest elementem, który odpowiada na wywoªanie metody jest tym co stoi na lewo od kropki kropka temperature {}}{. to_kelvin }{{}}{{} odbiorca metoda W przypadku metod instancyjnych odbiorc jest obiekt W przypadku metod klasowych odbiorc jest klasa Je±li odbiorca jest pomini ty domy±lnie jest nim: aktualny obiekt (self) w przypadku metod instancyjnych aktualna klasa w przypadku metod klasowych
34 Zasi g zmiennych my_var zmienna lokalna zasi g zmienna instancyjna dost pna tylko w obiekcie, do którego zmienna klasowa dost pna w klasie i wszystkich jej obiektach $my_var zmienna globalny dost pna w ka»dym kontek±cie
35 Dziedziczenie Poj cia, która s odpowiednikami klas, zazwyczaj tworz hierarchi : poj cie bardziej ogólne poj cie bardziej specyczne. Przykªad: temperatura jest rodzajem miary zycznej. W Rubim zapisujemy to nast puj co: class Measure class Temperature < Measure W j zykach obiektowych: miara zyczna jest nadklas temperatury temperatura jest podklas miary zycznej podklasa dziedziczy wªasno±ci (atrybuty i metody) nadklasy
36 Dziedziczenie przykªad class Measure # Initialize the measure with +value+ and +scale+. def = = scale # Default string representation of the measure. def to_s "%.2f %s" % class Temperature < Measure # Converts the temeperature to Kelvin scale. def to_kelvin Temperature.new(convert(@scale,:k,@value),:k) temperature = Temperature.new(10,:c) puts temperature.to_kelvin.to_s #=> k
37 Zast powanie metod nadklasy class Temperatura < Measure VALID_SCALES = [:c,:k,:f] # Initialize the temperature with +value+ and +scale+. # Raise exception if the +scale+ is invalid. def = = scale unless VALID_SCALES.include?(scale) raise "Invalid scale '#{scale}'." Measure.new(10,:m) Temperature.new(36.6,:m) Temperature.new(36.6,:c) #=> m #=> RuntimeError: Invalid scale 'm' #=> c
38 Modykowanie metod nadklasy class Temperatura < Measure VALID_SCALES = [:c,:k,:f] # Initialize the temperature with +value+ and +scale+. # Raise exception if the +scale+ is invalid. def initialize(value,scale) super(value,scale) unless VALID_SCALES.include?(scale) raise "Invalid scale '#{scale}'."
39 Wielodziedziczenie W j zyku naturalnym wielodziedziczenie jest do± powszechne: wóza stra»acki rodzaj pojazdu uprzywilejowanego i samochodu ci»arowego Wi kszo± j zyków programowania pozwala jedynie na dziedziczenie tylko z jednej klasy nadrz dnej (jednobazowe) Ruby rówie». Niemniej jednak, klasy Rubiego, poza dziedziczeniem, maj inny mechanizm wspóªdzielenia implementacji metod poprzez dziedziczenie mieszane (dziedziczenie implementacji), do którego wykorzystywane s moduªy.
40 Moduªy Moduªy s jak klasy 2, ale: nie mog posiada instancji nie mog posiada podklas (podmoduªów) s deniowane za pomoc sªów kluczowych module... Moduª mo»e by doª czony do klasy poprzez wmiksowanie (wmieszanie) jego metod. 2 Tak naprawd wszystkie klasy s moduªami, ale nie wszystkie moduªy klasami; klasa Class dziedziczy z klasy Module.
41 Przykªad mixinu (wmiksowania moduªu) module Comparable def <(other) (self <=> other) < 0 def >(other) (self <=> other) > 0 def ==(other) (self <=> other) == 0 class Temperature include Comparable def <=>(other) self.to_kelvin.value <=> other.to_kelvin.value Temperature.new(10,:c) < Temperature.new(20,:f) Temperature.new( ,:c) == Temperature.new(0,:k) #=> false #=> true
42 Materiaªy Object Oriented thinking w Ruby User's Guide slagell/ruby/oothinking.html Programowanie obiektowe w ksi»ce z kilofem ruby-doc.org/docs/programmingruby/html/ tut_classes.html Programowanie obiektowe w przewodniku po Rubim apohllo.pl/dydaktyka/ruby/intro/klasy/
43 Pytania PYTANIA?
44 Podzi kowania dla: Agnieszki Figiel, za udost pnienie prezentacji w postaci plików ¹ródªowych Marka Kowalcze oraz Jakuba Ku¹my z grupy SRUG (srug.pl), za pomoc przy kolorowaniu skªadniu w Latex'u
EPI: Interfejs Graficzny 2011/2012 Laboratorium nr 2 Programowanie obiektowe
EPI: Interfejs Graficzny 2011/2012 Laboratorium nr 2 Programowanie obiektowe 9 listopada 2011 Klasa temperatura Funkcjonalności: określanie temeratury w dowolnej skali konwersja temperatury do napisu odczytanie
19. Obiektowo± 1 Kacze typowanie. 2 Klasy
1 Kacze typowanie 19. Obiektowo± Sk d interpreter wie, jakiego typu s np. przekazywane do metody argumenty? Tak naprawd wcale nie musi wiedzie. Do poprawnego dziaªania programu istotne jest,»e przekazywany
Model obiektu w JavaScript
16 marca 2009 E4X Paradygmat klasowy Klasa Deniuje wszystkie wªa±ciwo±ci charakterystyczne dla wybranego zbioru obiektów. Klasa jest poj ciem abstrakcyjnym odnosz cym si do zbioru, a nie do pojedynczego
1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.
1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja
Wzorce projektowe strukturalne cz. 1
Wzorce projektowe strukturalne cz. 1 Krzysztof Ciebiera 19 pa¹dziernika 2005 1 1 Wst p 1.1 Podstawowe wzorce Podstawowe wzorce Podstawowe informacje Singleton gwarantuje,»e klasa ma jeden egzemplarz. Adapter
Programowanie obiektowe w C++ Wykªad 4
Programowanie obiektowe w C++ Wykªad 4 dr Lidia St pie«akademia im. Jana Dªugosza w Cz stochowie L. St pie«(ajd) Programowanie obiektowe w C++ 1 / 26 Dziedziczenie - podstawy Denicja klasy dziedzicz cej
Programowanie w Ruby
Programowanie w Ruby Wykład 4 Marcin Młotkowski 24 października 2012 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 Marcin Młotkowski Programowanie w Ruby 2 / 40 Deklaracja klasy Klasy i obiekty class
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
Imi i nazwisko... Egzamin - Programowanie Obiektowe II rok informatyki, studia pierwszego stopnia, niestacjonarne Termin zerowy
Imi i nazwisko....................................................... Egzamin - Programowanie Obiektowe II rok informatyki, studia pierwszego stopnia, niestacjonarne Termin zerowy 21.01.2017 Instrukcja:
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
PROGRAMOWANIE OBIEKTOWE W C++ - cz 1. Definicja klasy, składniki klasy, prawa dost pu, definiowanie funkcji składowych, konstruktory i destruktory.
PROGRAMOWANIE OBIEKTOWE W C++ - cz 1 Definicja klasy, składniki klasy, prawa dost pu, definiowanie funkcji składowych, konstruktory i destruktory. Program komputerowy opisuje w pewien sposób rzeczywisto.
0.1 Hierarchia klas. 0.1.1 Diagram. 0.1.2 Krótkie wyjaśnienie
0.1 Hierarchia klas 0.1.1 Diagram 0.1.2 Krótkie wyjaśnienie Po pierwsze to jest tylko przykładowe rozwiązanie. Zarówno na wtorkowych i czwartkowych ćwiczeniach odbiegaliśmy od niego, ale nie wiele. Na
Wstęp do ruby dla programistów javy
czyli dlaczego java ssie Akademickie Stowarzyszenie Informatyczne 26 lutego 2011 Podstawowe cechy Ruby vs Java Wieloparadygmatowy Imperatywny Typowanie Silne Dynamiczne Otwarte klasy Interpretowany Wszystko
Programowanie wspóªbie»ne
1 Programowanie wspóªbie»ne wiczenia 5 monitory cz. 1 Zadanie 1: Stolik dwuosobowy raz jeszcze W systemie dziaªa N par procesów. Procesy z pary s nierozró»nialne. Ka»dy proces cyklicznie wykonuje wªasnesprawy,
Kompozycja i dziedziczenie klas
Programowanie obiektowe Kompozycja i dziedziczenie klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Kompozycja i dziedziczenie klas
Programowanie w Ruby
Programowanie w Ruby Wykład 4 Marcin Młotkowski 28 października 2016 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 Marcin Młotkowski Programowanie w Ruby 2 / 41 Deklaracja klasy Klasy i obiekty class
Programowanie w Ruby
Programowanie w Ruby Wykład 4 Marcin Młotkowski 29 października 2018 Plan wykładu 1 2 3 Marcin Młotkowski Programowanie w Ruby 100 / 430 Deklaracja klasy class Device Marcin Młotkowski Programowanie w
Podstawy modelowania w j zyku UML
Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 8 Diagram pakietów I Diagram pakietów (ang. package diagram) jest diagramem strukturalnym,
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
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
1. Wprowadzenie do C/C++
Podstawy Programowania - Roman Grundkiewicz - 013Z Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Programowanie i struktury danych
Programowanie i struktury danych Wykªad 3 1 / 37 tekstowe binarne Wyró»niamy dwa rodzaje plików: pliki binarne pliki tekstowe 2 / 37 binarne tekstowe binarne Plik binarny to ci g bajtów zapami tanych w
Wartości domyślne, szablony funkcji i 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 2012 Bogdan Kreczmer Niniejszy dokument
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
Podstawy modelowania w j zyku UML
Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 2 Zwi zki mi dzy klasami Asocjacja (ang. Associations) Uogólnienie, dziedziczenie (ang.
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
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;
Wzorce projektowe kreacyjne
Wzorce projektowe kreacyjne Krzysztof Ciebiera 14 pa¹dziernika 2005 1 1 Wst p 1.1 Podstawy Opis Ogólny Podstawowe informacje Wzorce kreacyjne sªu» do uabstrakcyjniania procesu tworzenia obiektów. Znaczenie
Interfejsy, klasy wewn trzne jako szczególny rodzaj obiektów
Interfejsy, klasy wewn trzne jako szczególny rodzaj obiektów Robert A. Kªopotek r.klopotek@uksw.edu.pl Wydziaª Matematyczno-Przyrodniczy. Szkoªa Nauk cisªych, UKSW 16.03.2017 Interfejsy raz jeszcze "Interfejsy
1. Wprowadzenie do C/C++
Podstawy Programowania :: Roman Grundkiewicz :: 014 Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Enkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:
Zakres laboratorium: definiowanie struktur terminologia obiektowa definiowanie klas funkcje składowe klas programy złożone z wielu plików zadania laboratoryjne Laboratorium nr 12 Temat: Struktury, klasy.
Wykład nr 1 Język Ruby i framework Rails
Wykład nr 1 Język Ruby i framework Rails Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 Historia Rubiego i Railsów 1993 Yukihiro Matsumoto San, Japonia 1995 pierwsze
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
Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18
Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003
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,
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r. Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to
Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com
Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,
Technologie i usługi internetowe cz. 2
Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,
Programowanie obiektowe język C++
Programowanie obiektowe język C++ Dr inż. Sławomir Samolej D108A, tel: 865 1486, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Podziękowanie: Chcę podziękować dr inż.. Grzegorzowi Hałdasiowi
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
Java. Deklaracje i prawa dost pu. Piotr Fulma«ski. December 4, Wydziaˆ Matematyki i Informatyki, Uniwersytet Šódzki, Polska
Java Deklaracje i prawa dost pu Piotr Fulma«ski Wydziaˆ Matematyki i Informatyki, Uniwersytet Šódzki, Polska December 4, 2010 Spis tre±ci 1 Java krótka charakterystyka 2 Deklaracje Nazwy Deklarowanie klas
Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/
Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Wprowadzenie Automatyczne ładowanie klas Składowe klasy, widoczność składowych Konstruktory i tworzenie obiektów Destruktory i
Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące.
Programowanie II prowadzący: Adam Dudek Lista nr 8 Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące. Jest to najważniejsza cecha świadcząca o sile programowania
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
Programowanie obiektowe w C++ Wykªad 1
Programowanie obiektowe w C++ Wykªad 1 dr Lidia St pie«akademia im. Jana Dªugosza w Cz stochowie L. St pie«(ajd) Programowanie obiektowe w C++Wykªad 1 1 / 37 Zagadnienia: Klasy, obiekty Dziedziczenie Polimorzm
Programowanie obiektowe, wykład nr 6. Klasy i obiekty
Dr hab. inż. Lucyna Leniowska, prof. UR, Zakład Mechatroniki, Automatyki i Optoelektroniki, IT Programowanie obiektowe, wykład nr 6 Klasy i obiekty W programowaniu strukturalnym rozwój oprogramowania oparto
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,
Metaprogramowanie w Ruby
24 marca 2011 Cechy języka Wieloparadygmatowy Imperatywny Typowanie Silne Dynamiczne Otwarte klasy Interpretowany Wszystko jest obiektem Moduły i mixiny Moduły Moduły pozwalają na łatwe włączanie ich kodu
Polimorfizm, metody wirtualne i klasy abstrakcyjne
Programowanie obiektowe Polimorfizm, metody wirtualne i klasy abstrakcyjne Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Polimorfizm,
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
Projektowanie i programowanie obiektowe (materiały do wykładu cz. VI)
Projektowanie i programowanie obiektowe (materiały do wykładu cz. VI) Jacek Cichosz www.zssk.pwr.wroc.pl Katedra Systemów i Sieci Komputerowych Politechnika Wrocławska Dziedziczenie 221 Dziedziczenie Dziedziczenie
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
WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH
WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH Klasa: 3TIR - Technik informatyk Program: 351203 Wymiar: 4 h tygodniowo Podręcznik: Kwalifikacja E.14 Programowanie
2 Skªadnia polece«w pliku
Interpreter opisu dziaªa«platformy mobilnej wtyczki 1 Ogólny opis zadania Nale»y napisa program, który b dzie w stanie przeczyta z pliku tekstowego sekwencj polece«ruchu, a nast pnie zasymulowa dziaªanie
Lab. 02: Algorytm Schrage
Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z
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,
Definiowanie własnych klas
Programowanie obiektowe Definiowanie własnych klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Definiowanie własnych klas Autor:
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
Programowanie obiektowe
Programowanie obiektowe Laboratorium 3 i 4 - przypomnienie wiadomości o OOP na przykładzie Javy mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 8 marca 2017 1 / 20 mgr inż. Krzysztof Szwarc
Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20
Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl
Klasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Technologie cyfrowe semestr letni 2018/2019
Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Wykład 8 (15.04.2019) Kompilacja Kompilacja programu (kodu): proces tłumaczenia kodu napisanego w wybranym języku na kod maszynowy, zrozumiały
Bash i algorytmy. Elwira Wachowicz. 20 lutego
Bash i algorytmy Elwira Wachowicz elwira@ifd.uni.wroc.pl 20 lutego 2012 Elwira Wachowicz (elwira@ifd.uni.wroc.pl) Bash i algorytmy 20 lutego 2012 1 / 16 Inne przydatne polecenia Polecenie Dziaªanie Przykªad
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie
Wstęp do programowania
wykład 10 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Przesyłanie argumentów - cd Przesyłanie argumentów do funkcji - tablice wielowymiarowe Przekazywanie tablic wielowymiarowych
wiczenie 1 Podstawy j zyka Java. Instrukcje warunkowe
wiczenie 1 Podstawy j zyka Java. Instrukcje warunkowe 1 Wprowadzenie 1.1 rodowisko programistyczne NetBeans https://netbeans.org/ 1.2 Dokumentacja j zyka Java https://docs.oracle.com/javase/8/docs/api/
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
MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska
MiASI Modelowanie systemów informatycznych Piotr Fulma«ski Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska 18 stycznia 2010 Spis tre±ci 1 Analiza systemu informatycznego Poziomy analizy 2
Mechanizmy refleksji w Javie i C# Autor: Aleksander Nałęczyński
Mechanizmy refleksji w Javie i C# Autor: Aleksander Nałęczyński Co to jest refleksja? [1/2] Możliwość obserwowania lub manipulowania pracą programu od wewnątrz Problem Zazwyczaj niskopoziomowa struktura
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
Listy i operacje pytania
Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik
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
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,
PARADYGMATY PROGRAMOWANIA Wykład 2
PARADYGMATY PROGRAMOWANIA Wykład 2 Definiowanie klas w C++ - ciąg dalszy Lista inicjalizująca konstruktora Przeznaczenie - do inicjalizacji pól klasy z kwalifikatorem const i inicjalizacji obiektów składowych
Dziedziczenie & W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.
Dziedziczenie 27.04.2016 & 04.05.2016 W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.ppt class A{ private: int x, y; public: void setvaluex(); void setvaluey();
Java - tablice, konstruktory, dziedziczenie i hermetyzacja
Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja
KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
Technologie obiektowe
WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność
Programowanie i struktury danych 1 / 44
Programowanie i struktury danych 1 / 44 Lista dwukierunkowa Lista dwukierunkowa to liniowa struktura danych skªadaj ca si z ci gu elementów, z których ka»dy pami ta swojego nast pnika i poprzednika. Operacje
Algorytmy zwiazane z gramatykami bezkontekstowymi
Algorytmy zwiazane z gramatykami bezkontekstowymi Rozpoznawanie j zyków bezkontekstowych Problem rozpoznawania j zyka L polega na sprawdzaniu przynale»no±ci sªowa wej±ciowego x do L. Zakªadamy,»e j zyk
TEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Klasa jest nowym typem danych zdefiniowanym przez użytkownika. Najprostsza klasa jest po prostu strukturą, np
Klasy Klasa jest nowym typem danych zdefiniowanym przez użytkownika Wartości takiego typu nazywamy obiektami Najprostsza klasa jest po prostu strukturą, np struct Zespolona { Klasy jako struktury z operacjami
1. Klasa typu sealed. Przykład 1. sealed class Standard{ class NowyStandard:Standard{ // błd!!!
Temat: Klasy typu sealed. Klasy abstrakcyjne. Deklaracja i implementacja interfejsu. Typ Object i operatory is oraz as. Czas ycia obiektu. Destruktory. 1. Klasa typu sealed Przykład 1 Klasa typu sealed
Podstawy Języka Java
Podstawy Języka Java Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania, w którym programy definiuje się za pomocą obiektów elementów łączących
Bazy danych, 4. wiczenia
Bazy danych, 4. wiczenia 2007-10-23 1 Plan zaj PL/SQL, cz ± II: tabele kursory sªu» ce do zmiany danych, procedury, funkcje, pakiety, wyzwalacze. 2 Tabele Deklaracja TYPE t_tab IS TABLE OF VARCHAR(20)
PROGRAMOWANIE OBIEKTOWE W C++ cz. 2. Dziedziczenie, operacje wej cia-wyj cia, przeładowanie operatorów.
PROGRAMOWANIE OBIEKTOWE W C++ cz. 2 Dziedziczenie, operacje wej cia-wyj cia, przeładowanie operatorów. Dziedziczenie Dziedziczenie jest to technika pozwalaj c na definiowanie nowej klasy przy wykorzystaniu
Programowanie obiektowe
Programowanie obiektowe 10.04.2017 W slajdach są materiały zapożyczone z https://www.ii.uni.wroc.pl/~prz/2012lato/cpp/slajdy/cpp5.ppt Przykład wykorzystania obiektu Obiekt X jest instancją klasy Y Obiekt
Programowanie obiektowe w Perlu
Programowanie obiektowe w Perlu Piotr Wydrych http://www.kt.agh.edu.pl/~wydrych/ Wydziaª Elektrotechniki, Automatyki, Informatyki i Elektroniki Katedra Telekomunikacji 30 kwietnia 2009 1/26 Obiekty, klasy,
Sposoby przekazywania parametrów w metodach.
Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych
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
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
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
Programowanie obiektowe
Programowanie obiektowe Wykład 4 Marcin Młotkowski 15 marca 2018 Plan wykładu 1 2 3 Klasa podstawowa Własne kolekcje Obiekty i wartości Marcin Młotkowski Programowanie obiektowe 141 / 224 Z czego składa
Programowanie Obiektowe i C++
Programowanie Obiektowe i C++ Marcin Benke Instytut Informatyki UW 6.11.2006 Marcin Benke (IIUW) Programowanie Obiektowe i C++ 6.11.2006 1 / 138 Operator przypisania Jest czym innym niż konstruktor kopiujacy!
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
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
KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany
KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie
J zyk C dla sterowników programowalnych GeFanuc
J zyk C dla sterowników programowalnych GeFanuc Na podstawie C Programmer's Toolkit for PACSystems Bartosz Puchalski Katedra In»ynierii Systemów Sterowania 17 grudnia 2013 Bartosz Puchalski KISS 1/48 Spis