Iteracyjno-rozwojowy cykl oprogramowania 3

Slides:



Advertisements
Podobne prezentacje
Klasa listy jednokierunkowej Przekazywanie parametrów do funkcji
Advertisements

Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 3 Wojciech Pieprzyca.
Klasy i obiekty.
Static, const, volatile.
Dziedziczenie. Po co nam dziedziczenie? class osoba { char * imie, char * imie, * nazwisko; * nazwisko;public: void wypisz_imie(); void wypisz_imie();
Sposoby implementacji asocjacji
Implementacja ekstensji klasy
Implementacja asocjacji
Programowanie Obiektowe w Javie (c.d.)
OOPC++ - wstêp, klasy1 Klasy Do struktury można dołączyć operacje działające na jej polach. struct date { int day, month, year; void set (int d, int m,
DZIEDZICZENIE · klasy bazowe i klasy pochodne WyświetlAutora( ) Autor
Czytanie, pisanie i rysowanie – cd.. Jeszcze jeden strumyk PrintStream działa jak PrintWriter, ale: Używa domyślnego (systemowego) kodowania Nie wyrzuca.
Odwzorowania relacyjno-obiektowe Hibernate zapytania.
Hibernate relacje.
Projektowanie warstwy serwera Znaczniki jsp. Projektowanie warstwy serwera Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu.
Projektowanie warstwy serwera Wprowadzenie. Projektowanie warstwy serwera Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu.
przygotował Michał Wdaniec
Test Doubles Adam Gabryś , v1.1,
Klasy w C++. Deklaracja klasy class NazwaTwojejKlasy { //w tym miejscu piszemy definicje typów, //zmienne i funkcje jakie mają należeć do klasy. }; //tutaj.
Podstawy inżynierii oprogramowania Zofia Kruczkiewicz
PIO 3_2, Zofia Kruczkiewicz1 Wykład 3 – część druga Iteracyjno-rozwojowy cykl oprogramowania 3.
Programowanie obiektowe – zastosowanie języka Java SE
JAVA c.d.. Instrukcji wyboru SWITCH używamy, jeśli chcemy w zależności od wartości pewnego wyrażenia wykonać jeden z kilku fragmentów kodu. Jest to w.
Programowanie obiektowe III rok EiT dr inż. Jerzy Kotowski Wykład IX.
Seminarium problemowe
Programowanie obiektowe
Programowanie obiektowe Wykład 7 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski.
PIO 2_2, Zofia Kruczkiewicz1 Wykład 2 – część druga Iteracyjno-rozwojowy cykl oprogramowania 2.
PIO. Autor -Zofia Kruczkiewicz1 Wykład 1-część druga Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowania (część biznesowa aplikacji) iteracyjno-rozwojowy.
PIO. Autor -Zofia Kruczkiewicz1 Wykład 1-część druga Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowania (część biznesowa aplikacji) iteracyjno-rozwojowy.
PIO 2_2, Zofia Kruczkiewicz1 Wykład 2 – część druga Iteracyjno-rozwojowy cykl oprogramowania 2.
Kurs języka C++ – wykład 3 ( )
OCPJP Inner classes.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
PROGRAMOWANIE W JAVA Informatyka Stosowana – ROK II / III Laboratoria mgr inż. Krzysztof Bzowski.
PIO 3_2, Zofia Kruczkiewicz1 Wykład 3 – część druga Iteracyjno-rozwojowy cykl oprogramowania 3.
Wykład 11 Aplikacje SDI PO11-1 / 22 Single Document Interface 1.Klasy aplikacji SDI 2.Menu systemowe aplikacji SDI 3.Serializacja 4.Tworzenie widoku 5.Tworzenie.
Kolekcje (3) Zbiory. Porównywanie i porządkowanie elementów kolekcji. (c) Krzysztof Barteczko 2014.
Elementy programowania funkcyjnego w Javie 8. Pragmatyczny przegląd. (c) Krzysztof Barteczko 2014.
do programowania obiektowego w języku Groovy
Asocjacja,Kompozycja,Agregacja
Implementacja asocjacji (z atrybutami i bez) przy użyciu: referencji (kolekcji referencji) tablic asocjacyjnych przygotował: Kamil Kowalczyk.
InMoST, Java – przykładowa aplikacja Bartosz.Michalik
Innowacyjne metody wytwarzania oprogramowania Wprowadzenie do refaktoryzacji Bartosz Walter.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Dziedziczenie, polimorfizm, Interfejsy
PHP (wstęp) Personal Home Page Tools (PHP Tools)
Programowanie Obiektowe – Wykład 6
Przeglądarka stron WWW
Wątki, programowanie współbieżne
(według:
Akademia C# - Lab2 Zmienne, instrukcje warunkowe, pętle, debugger,
Delegaty Delegat to obiekt „wiedzący”, jak wywołać metodę.
(c) Krzysztof Barteczko 2014
Akademia C# lab. 9 Zdarzenia i delegaty.
Programowanie Obiektowe – Wykład 2
Programowanie obiektowe
Klasy wewnętrzne. Praktyka użycia interfejsów i klas wewnętrznych
Programowanie obiektowe
Kurs języka C++ – wykład 13 ( )
Dynamics 365 CE i język TypeScript
Iteracyjno-rozwojowy cykl oprogramowania 3
Programowanie obiektowe – zastosowanie języka Java SE
Iteracyjno-rozwojowy cykl oprogramowania 2
Zdarzenia (eventy) Zdarzenia służą do powiadomienia użytkownika, gdy w używanej klasie dojdzie do pewnych wydarzeń zdefiniowanych przez twórcę klasy.
PGO - Projektowanie i implementacja pierwszych klas
BYDGOSKI FESTIWAL NAUKI
Wykład 1-część druga Wstęp do inżynierii oprogramowania.
Tworzenie wątków w Javie
Zapis prezentacji:

Iteracyjno-rozwojowy cykl oprogramowania 3 Wykład 3 – część druga Iteracyjno-rozwojowy cykl oprogramowania 3 PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Wstawienie nowego przypadku użycia Dodaj_ksiazke w relacji <<usage>> i wstawienie opisu w polu Documentation PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Wstawienie nowej klasy Ksiazka, która jest w relacji 1 do wiele z klasą Tytul_ksiazki i ukrycie atrybutów i operacji w klasach za pomocą opcji Compartment PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Ukrycie atrybutów i operacji w wybranej klasie – edytor opcji Compartment PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Połączenie dwukierunkową (oba końce relacji typu Navigable) relacją 1 do wiele klasy Ksiazka z klasą Tytul_ksiazki public boolean equals(Object ob) public Ksiazka [0..*] getKsiazka() public void setKsiazka(Ksiazka val [0…*] ) PIO 3_2, Zofia Kruczkiewicz

Wstawienie nowego atrybutu do klasy Ksiazka public boolean equals(Object ob) public Ksiazka [0..*] getKsiazka() public void setKsiazka(Ksiazka val [0…*] ) PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz public boolean equals(Object ob) public Ksiazka [0..*] getKsiazka() public void setKsiazka(Ksiazka val [0…*] ) PIO 3_2, Zofia Kruczkiewicz

Wstawienie trzech metod: w klasie Uchwyt: dodaj_ksiazke, w klasie Tytul_ksiazki: dodaj_ksiazke, w klasie Ksiazka: equals (w celu wprowadzania unikatowych numerów) public boolean equals(Object ob) public Ksiazka [0..*] getKsiazka() public void setKsiazka(Ksiazka val [0…*] ) public void dodaj_ksiazke(int numer_) PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Definicja przypadku użycia dodaj_ksiazke – oparty na implementacji relacji 1 do n między klasą Uchwyt i klasą Tytul_ksiazki oraz klasą Tytul_ksiazki i klasą Ksiazka Definicja przypadku użycia dodaj_ksiazke: definicja oparta na implementacji relacji 1:n PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz Definicja klas Uchwyt, Tytul_ksiazki, Ksiazka po dodaniu przypadku użycia dodaj_ksiazke PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz

Definicja klasy Ksiazka po wygenerowaniu i uzupełnieniu kodu public class Ksiazka { private int numer; private Tytul_ksiazki mTytul_ksiazki; public int getNumer() { return numer;} public void setNumer(int _numer) { numer = _numer; } public Ksiazka() { } public boolean equals(Object ob) // your code here { return numer==((Ksiazka)ob).getNumer(); }

PIO 3_2, Zofia Kruczkiewicz public Tytul_ksiazki getTytul_ksiazki() { return mTytul_ksiazki;} public void setTytul_ksiazki(Tytul_ksiazki val) { mTytul_ksiazki = val; } public String toString() // your code here { String pom= mTytul_ksiazki.toString(); pom+=" Numer: "+getNumer(); return pom; } PIO 3_2, Zofia Kruczkiewicz

Definicja klasy Tytul_ksiazki po wygenerowaniu i uzupełnieniu kodu public class Tytul_ksiazki { private String wydawnictwo; private String ISBN; private String tytul; private String nazwisko; private String imie; public private ArrayList<Ksiazka> mKsiazka= new java.util.ArrayList <Ksiazka>(); public Tytul_ksiazki() { } public String getWydawnictwo() { return wydawnictwo; } public void setWydawnictwo(String e) { wydawnictwo = e; }

PIO 3_2, Zofia Kruczkiewicz public String getISBN() { return ISBN; } public void setISBN(String ISBN_) { ISBN = ISBN_; } public String getTytul() { return tytul;} public void setTytul(String a) { tytul = a; } public String getNazwisko() { return nazwisko; } public void setNazwisko(String b) { nazwisko = b; } public String getImie() { return imie; } public void setImie(String c) { imie = c; } PIO 3_2, Zofia Kruczkiewicz

PIO 3_2, Zofia Kruczkiewicz public boolean equals(Object ob) // your code here { boolean a; a=ISBN.equals(((Tytul_ksiazki)ob).getISBN()); System.out.println(a); //linia tymczasowa return a; } public String toString() // your code here { String pom="Tytul: "+getTytul(); pom+=" Autor:"+getNazwisko() +" "+getImie(); pom+=" ISBN: "+getISBN(); pom+=" Wydawnictwo:"+getWydawnictwo(); return pom; } PIO 3_2, Zofia Kruczkiewicz

{ nowa.setNumer(numer_); addKsiazka(nowa); } } public void Dodaj_ksiazke(int numer_) // your code here { Ksiazka nowa= new Ksiazka(); if (nowa != null) { nowa.setNumer(numer_); addKsiazka(nowa); } } public void addKsiazka(Ksiazka nowa) { if (!this.mKsiazka.contains(nowa)) {this.mKsiazka.add(nowa); nowa.setTytul_ksiazki(this);} public ArrayList<Ksiazka> getKsiazka() { return mKsiazka; } public void setKsiazka(ArrayList<Ksiazka> val) { this.mKsiazka = val; } } //koniec Tytul_ksiazki

Definicja klasy Uchwyt po wygenerowaniu i uzupełnieniu kodu public class Uchwyt { private ArrayList<Tytul_ksiazki> mTytul_ksiazki= new ArrayList<Tytul_ksiazki>(); public void dodaj_tytul(String a, String b, String c, String d, String e) { Tytul_ksiazki tytul_ksiazki=new Tytul_ksiazki(); tytul_ksiazki.setTytul(a); tytul_ksiazki.setNazwisko(b); tytul_ksiazki.setImie(c); tytul_ksiazki.setISBN(d); tytul_ksiazki.setWydawnictwo(e); addTytul_ksiazki(tytul_ksiazki); } public ArrayList<Tytul_ksiazki> getTytul_ksiazki() { return mTytul_ksiazki; }

public void setTytul_ksiazki(ArrayList<Tytul_ksiazki> val) { mTytul_ksiazki = val; } public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) { if (! mTytul_ksiazki.contains(tytul_ksiazki)) mTytul_ksiazki.add(tytul_ksiazki);} public void Dodaj_ksiazke(String ISBN_, int numer_) // your code here { Tytul_ksiazki pom=new Tytul_ksiazki(); pom.setISBN(ISBN_); int idx=mTytul_ksiazki.indexOf(pom); if (idx!=-1) { Tytul_ksiazki pom1=mTytul_ksiazki.get(idx); pom1.dodaj_ksiazke(numer_); System.out.println(pom1.getKsiazka().toString()); }//linia tymczasowa }

public static void main(String t[]) //kod dodany { Uchwyt ap=new Uchwyt(); ap.Dodaj_tytul("1","1","1","1","1"); ap.Dodaj_tytul("2","2","2","2","2"); String lan=ap.getTytul_ksiazki().toString(); System.out.println(lan); ap.Dodaj_ksiazke("1",1); ap.Dodaj_ksiazke("1",2); ap.Dodaj_ksiazke("2",1); } } //koniec klasy Uchwyt

PIO 3_2, Zofia Kruczkiewicz