Programowanie obiektowe III rok EiT - PowerPoint PPT Presentation

About This Presentation
Title:

Programowanie obiektowe III rok EiT

Description:

Programowanie obiektowe III rok EiT dr in . Jerzy Kotowski Wyk ad I Co jeszcze m g by wymy li Einstein gdyby zna Aplety Javy VIII Dolno l ski Festiwal ... – PowerPoint PPT presentation

Number of Views:19
Avg rating:3.0/5.0
Slides: 18
Provided by: JerzyKo
Category:

less

Transcript and Presenter's Notes

Title: Programowanie obiektowe III rok EiT


1
Programowanie obiektoweIII rok EiT
  • dr inz. Jerzy Kotowski
  • Wyklad I

2
Co jeszcze móglby wymyslic Einstein gdyby znal
Aplety Javy
  • VIII Dolnoslaski Festiwal Nauki
  • 16-23 IX 2005

3
Java
  • Java to zorientowany obiektowo jezyk
    programowania
  • Sun Microsystems.
  • Java zwieksza interaktywnosc stron WWW.
  • Uzytkownicy moga oddzialywac na zawartosc stron
    WWW za pomoca myszki, klawiatury oraz przycisków
    i pól tekstowych.
  • Java potrafi wzbogacic multimedialna zawartosc
    stron WWW oferujac plynne animacje, grafike,
    dzwiek i wideo
  • Wszystkie te udogodnienia sa mozliwe dzieki
    krótkim programom, które nazywane sa apletami.
  • Aplety sa zawarte w stronach WWW.
  • Aplety sa ladowane poprzez siec do komputera
    uzytkownika i tam wykonywane.

4
Historia
  • 1990 - Bill Joy sugeruje SUNowi stworzenie
    srodowiska obiektowego na bazie C,
  • 1991 - W ramach projektu Stealth (Green)
    powstaje jezyk OAK - Object Application Kernel
    (James Gosling),
  • 1995 - zmiana nazwy na JAVA ze wzgledu na
    zastrzezenie nazwy OAK,
  • 1996 - Pojawia sie Netscape zgodny z Java 1.0,
    Sun propaguje darmowe srodowisko JDK 1.0,
  • 1999 - Java 2 Nowe oblicze Javy.

5
Albert Einstein
  • Tegoroczna, VIII edycja DFN na Politechnice
    Wroclawskiej odbywa sie w Miedzynarodowym Roku
    Fizyki nauki okreslanej czesto mianem królowej
    nauk technicznych.
  • Sto lat temu Albert Einstein opublikowal w
    Annalen der Physik piec prac, które zmienily
    oblicze fizyki. Dotyczyly one
  • szczególnej teorii wzglednosci,
  • zjawiska fotoelektrycznego,
  • ruchów Browna,
  • rozmiarów liniowych czasteczek.
  • W tym roku przypada dziewiecdziesiata rocznica
    powstania ogólnej teorii wzglednosci oraz
    piecdziesiata rocznica smierci Alberta Einsteina.

Albert Einstein 14.03.1879 18.05.1955
6
Generacje jezyków programowania
  • W ciagu ponad 50 lat rozwoju jezyków
    programowania powstaly ich cztery generacje.
  • Dla programów napisanych w jezykach pierwszej
    generacji (FORTRAN 1, COBOL) charakterystyczny
    jest wspólny obszar danych globalnych, do którego
    odwoluja sie podprogramy.
  • W jezykach pierwszej generacji podczas tworzenia
    oprogramowania mozliwe bylo oddzielenie od siebie
    róznych danych, ale bylo to oddzielenie logiczne,
    a nie programowe.
  • Cala struktura danych byla widoczna dla
    wszystkich podprogramów, dlatego blad w jednym z
    nich mógl miec katastrofalny wplyw na caly
    program.
  • Przy modyfikacji duzego systemu zasadnicza
    trudnoscia bylo utrzymanie spójnosci
    oprogramowania, które cechowalo sie wieloma
    powiazaniami pomiedzy podprogramami i
    skomplikowanym przekazywaniem sterowania.

7
Jezyki drugiej generacji
  • Podstawami rozwoju drugiej generacji jezyków byla
    taka modyfikacja podprogramów, by mogly one
    przekazywac miedzy soba parametry, byc
    zagniezdzane i miec zróznicowany zakres
    widocznosci deklaracji stalych i zmiennych.
  • Dzieki mechanizmowi przekazywania parametrów
    podprogramy staly sie procedurami.
  • Wymienione wlasnosci jezyków drugiej generacji
    spowodowaly powstanie strukturalnych metod
    projektowania oprogramowania.

8
Jezyki trzeciej generacji
  • Charakterystyczna cecha jezyków trzeciej
    generacji byla modulowosc.
  • Modul grupowal dane i podprogramy majace ze soba
    zwiazek logiczny.
  • Wyodrebnienie modulów w procesie dekompozycji
    funkcjonalnej pozwalalo na rozdzielenie pracy
    pomiedzy samodzielnych programistów.
  • Technologia ta umozliwila utworzenie wiekszych
    zespolów projektowych i powstanie bardziej
    zlozonego oprogramowania.

9
Jezyki czwartej generacji 4GL
  • Jezyki czwartej generacji, zwane jezykami
    obiektowymi (np. C), zmieniaja podejscie do
    zagadnienia struktur danych.
  • Jezyki obiektowe rozszerzaja pojecie struktury
    danych o nowy element zwany obiektem (dokladniej
    typem obiektowym).
  • Typ obiektowy zawiera zarówno dane, jak i
    algorytmy poslugujace sie tymi danymi.
  • Algorytmy te sa czesto zapisywane w postaci
    funkcji i procedur, które lacznie okreslane sa
    jako metody obiektu (funkcje skladowe).
  • Obiekt, jako pojedynczy element programu, moze
    byc przypisywany i stosowany jak kazdy inny typ
    danych.
  • W jezykach obiektowych moduly zawieraja kolekcje
    obiektów, a nie podprogramów jak to mialo miejsce
    w jezykach starszych generacji.
  • Struktura programów napisanych przy wykorzystaniu
    jezyków obiektowych jest podobna do grafu.
  • Fakt ten zmienia w sposób zasadniczy reguly
    analizy i projektowania oprogramowania.

10
Programowanie obiektowe
  • Programowanie obiektowe jest metoda tworzenia
    oprogramowania, w której programy sa organizowane
    jako kolekcje obiektów.
  • C, Java sa jezykami programowania obiektowego.

11
Podejscie obiektoweObject Oriented Approach - OOA
  • Podejscie obiektowe modeluje sposób w jaki ludzie
    rozumieja i przetwarzaja rzeczywistosc. Przy
    pomocy tego podejscia ludzie tworza cos dla
    ludzi.
  • Zasadnicza czesc podstaw teoretycznych podejscia
    obiektowego sklada sie z idei dotyczacych podstaw
    ludzkiego myslenia. Korzeni podejscia obiektowego
    nalezy szukac w psychologii i w naukach do niej
    pokrewnych.
  • Modelowanie sposobu w jaki ludzie rozumieja i
    przetwarzaja rzeczywistosc wymaga zrozumienia
  • czym sa przyswajane przez ludzi pojecia
  • dlaczego sa istotne
  • jak ich uzywamy i jak je przekazujemy.

12
Dokumentowanie pojec
  • Jezeli posiedlismy jakies pojecie, to oznacza, ze
    mozemy sie im poslugiwac .
  • Formalizacja dowolnego pojecia wymaga utworzenia
    testu do jego identyfikacji.
  • Intensja - pelna definicja pojecia i testu, czy
    pojecie odnosi sie do badanego obiektu czy nie.
  • Ekstensja - zbiór wszystkich obiektów do których
    stosuje sie dane pojecie.
  • Trójka pojeciowa symboliczna reprezentacja
    intensja ekstensja.

13
Trójka pojeciowa
Symbol pojecia
Intensja Definicja Pomysl Wytlumaczenie pojecia
Ekstensja Zbiór egzemplarzy
  • Obiekt jest to egzemplarz pojecia.
  • Instrument muzyczny jest to dowolne urzadzenie
    zdolne do wydawania melodyjnych i harmonijnych
    dzwieków.
  • Fortepian jest instrumentem muzycznym.

14
Zastosowania podejscia obiektowego
  • Zarzadzanie projektami
  • Metoda Martina
  • PRINCE
  • LFA
  • Prezentacja zamierzen skladanie wniosków
  • Relacyjne bazy danych
  • OMG, UML
  • Projektowanie oprogramowania
  • Praca zespolowa
  • CASE Computer Aided Software Engineering

15
Kontakt
  • dr inz. Jerzy Kotowski
  • Janiszewskiego 11/17, 219 C-3
  • (48 71) 320 3852
  • jerzy.kotowski_at_pwr.wroc.pl

16
Literatura
  • James Martin, James J. OdellPodstawy metod
    obiektowychWNT 1997
  • Jerzy GreboszSymfonia COficyna Kallimach
    1999Wydawnictwo Edition 2000
  • Jerzy GreboszPasja CWydawnictwo Edition 2000

17
Program wykladu
  • Zródla podejscia obiektowego
  • Podstawy metody PRINCE (PRojects In Controlled
    Environment)
  • Podstawy metody LFA (Logical Framework Approach,
    skladanie wniosków o grant)
  • Jezyk C (gadzety jezyka, polimorfizm, klasy,
    dziedziczenie) bez Pasji C (pojemniki, wyjatki,
    szablony, przestrzenie nazw, etc.)
  • Przyklad problemu (byc moze symulacja sieci
    wodociagowej)
  • Podstawy jezyka JAVA
  • Klasówka
Write a Comment
User Comments (0)
About PowerShow.com