PIO 2_2, Zofia Kruczkiewicz1 Wykład 2 – część druga Iteracyjno-rozwojowy cykl oprogramowania 2.

Slides:



Advertisements
Podobne prezentacje
Mgr inż.Marcin Borkowski Podstawy Java Część II
Advertisements

Analiza wywołania i przebiegu przerwań w systemie Linux
Klasy i obiekty.


Java Server Faces Tomasz Nowak.
ALLEGRO PIERWSZA GRA: WYŚCIG
C++ w Objectivity Marcin Michalak s1744. Pomocne pakiety: Data Definition Language (DDL). Standard Template Library (STL). Active Schema.
Wybrane elementy C#, BCL
Sposoby implementacji asocjacji
Nguyen Hung Son Uniwersytet Warszawski
Podstawy języka Java Nguyen Hung Son Uniwersytet Warszawski.
Java vs C# Michał Prządka Tomasz Nowak
STL - Standard Template Library Autor: Błażej Chodarcewicz rainbow.mimuw.edu.pl/~bc189380/STL/
OOPC++ - operatory1 Operatory class complex { private: double re, im; public: complex (double r, double i = 0) { re = r; im = i; } friend complex operator+
GUI Struktury Spotkanie integracyjne Nazwa wydziału: EAIiE Nazwa katedry: Informatyka Miejsce i data prezentacji: Kraków,
Mirosław Ochodek Sponsorzy: JFace Jak jeszcze szybciej tworzyć interfejsy? ECESIS Eclipse Community Education Project An.
Testowanie oprogramowania metodą badania pokrycia kodu
Łukasz Monkiewicz.
Współprogramy Plan: Motywacja Składnia Scenariusz obiektu współprogramu Przykłady Producent – konsument ( instrukcja attach ) Czytelnik -pisarze ( instukcja.
Czytanie, pisanie i rysowanie – cd.. Jeszcze jeden strumyk PrintStream działa jak PrintWriter, ale: Używa domyślnego (systemowego) kodowania Nie wyrzuca.

142 JAVA – sterowanie i wątki public class A20 extends javax.swing.JApplet implements ActionListener { private int licznik = 0; private JTextField t =
„Tworzenie aplikacji sieciowych w języku Java”
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Tworzenie aplikacji sieciowych w języku Java Networking Prezentacja.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Tworzenie aplikacji sieciowych w języku Java Objects classes,
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Tworzenie aplikacji sieciowych w języku Java Exceptions Prezentacja.
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Tworzenie aplikacji sieciowych w języku Java Java – overview.
Projektowanie warstwy serwera Wprowadzenie. Projektowanie warstwy serwera Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu.
MS ASP.NET 2005/2006
Przestrzeń System podstawowe klasy i klasy bazowe.
Monika Rokosik Katarzyna Rola. Wykrywanie kursu akcji poniżej dołka znajdującego się pomiędzy dwoma sąsiednimi górkami, z których późniejsza jest mniejsza.
Java 3 MPDI Programowanie obiektowe W7. import java.io.*; public class X { // kontrukcja throws – określenie jakie wyjątki może dana metoda // sygnalizować
LINQ (Language-INtegrated Query) Marcin Bohdziewicz s4070.
Dr inż. Piotr Czapiewski. Overloading Znaczenie inne niż w większości języków obiektowych Metoda dynamicznego tworzenia pól i metod Magiczne metody.
Podstawy inżynierii oprogramowania Zofia Kruczkiewicz
PIO 3_2, Zofia Kruczkiewicz1 Wykład 3 – część druga Iteracyjno-rozwojowy cykl oprogramowania 3.
PRZELICZNIK DŁUGOŚCI w programie NetBeans IDE autorzy: Michał Mrozek i Marcin Mrugała 2012.
Krzysztof Manuszewski
db4o Kacper Skory Marcin Talarek
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.
Java – coś na temat Klas Piotr Rosik
Seminarium problemowe
Struktura programu w języku Java
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.
Podstawy programowania
Adam Suwała DIY - DI.
Cz.8 Zdarzenia. Refleksja – przypomnienie Event Programowanie zdarzeniowe Do dzieła!
Warsztaty C# Część 2 Grzegorz Piotrowski Grupa.NET PO
Warsztaty C# Część 3 Grzegorz Piotrowski Grupa.NET PO
Budowa programu #include /*instrukcje preprocesora */ #include int main(void) { /*podstawowa funkcja programu */ int a=1; /*deklaracja i inicjalizacja.
Silverlight 4 dla Windows Phone 7
Kurs języka C++ – wykład 3 ( )
OCPJP Inner classes.
Piotr Czapiewski Wydział Informatyki ZUT.  Extensible Markup Language  Język znaczników  Human-readable and machine-readable  Niezależny od platformy.
Poznań, , Artur Otrzonsek
Wprowadzenie Przygotował Adam Zawadzki
Wydział Elektroniki Kierunek: AiR Zaawansowane metody programowania Wykład 6.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Piotr Czapiewski Wydział Informatyki ZUT Wykład 2.
PIO 3_2, Zofia Kruczkiewicz1 Wykład 3 – część druga Iteracyjno-rozwojowy cykl oprogramowania 3.
(według:
Delegaty Delegat to obiekt „wiedzący”, jak wywołać metodę.
Iteracyjno-rozwojowy cykl oprogramowania 3
Iteracyjno-rozwojowy cykl oprogramowania 2
Wykład 1-część druga Wstęp do inżynierii oprogramowania.
Previously discusses: different kinds of variables
Iteracyjno-rozwojowy cykl oprogramowania 3
Zapis prezentacji:

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

PIO 2_2, Zofia Kruczkiewicz2 Przygotowanie powiązania 1:1

PIO 2_2, Zofia Kruczkiewicz3

4

5

6 Generowanie kodu, który implementuje powiązanie 1:1

PIO 2_2, Zofia Kruczkiewicz7

8

9

10 Wygenerowany kod klasy Uchwyt

PIO 2_2, Zofia Kruczkiewicz11 Uzupełnienie kodu klasy Uchwyt

PIO 2_2, Zofia Kruczkiewicz12 package katalog1; public class Uchwyt { private Tytul_ksiazki mTytul_ksiazki; public Uchwyt() { } public void dodaj_tytul(String a, String b, String c, String d, String e) // your code here { mTytul_ksiazki=new Tytul_ksiazki(); mTytul_ksiazki.setTytul(a); mTytul_ksiazki.setNazwisko(b); mTytul_ksiazki.setImie(c); mTytul_ksiazki.setISBN(d); mTytul_ksiazki.setWydawnictwo(e); } public Tytul_ksiazki getTytul_ksiazki() { return mTytul_ksiazki; } public void setTytul_ksiazki(Tytul_ksiazki val) { this.mTytul_ksiazki = val; } public static void main(String t[]) // your code here { Uchwyt ap=new Uchwyt(); ap.dodaj_tytul("1","1","1","1","1"); String lan=ap.getTytul_ksiazki().toString(); System.out.println(lan); } }

PIO 2_2, Zofia Kruczkiewicz13 Uruchomienie programu

PIO 2_2, Zofia Kruczkiewicz14 Relacja jeden do wiele

PIO 2_2, Zofia Kruczkiewicz15

PIO 2_2, Zofia Kruczkiewicz16 Wygenerowany kod implementujący relację 1:wiele

PIO 2_2, Zofia Kruczkiewicz17 Zmiana scenariusza dodaj_tytul - dodanie LifeLine dla kolekcji mTytul_ksiazki

PIO 2_2, Zofia Kruczkiewicz18 Zmiana scenariusza dodaj_tytul - dodanie metody typu Message To Self

PIO 2_2, Zofia Kruczkiewicz19 Zmiana scenariusza dodaj_tytul - dodanie metody typu Message To Self

PIO 2_2, Zofia Kruczkiewicz20

PIO 2_2, Zofia Kruczkiewicz21

PIO 2_2, Zofia Kruczkiewicz22

PIO 2_2, Zofia Kruczkiewicz23

PIO 2_2, Zofia Kruczkiewicz24

PIO 2_2, Zofia Kruczkiewicz25

PIO 2_2, Zofia Kruczkiewicz26

PIO 2_2, Zofia Kruczkiewicz27 public class Uchwyt { private ArrayList mTytul_ksiazki = new ArrayList (); public Uchwyt() { } 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 getTytul_ksiazki() { return mTytul_ksiazki;} public void setTytul_ksiazki(ArrayList val) { this.mTytul_ksiazki = val;} public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) { if (! this.mTytul_ksiazki.contains(tytul_ksiazki)) this.mTytul_ksiazki.add(tytul_ksiazki); } Uzupełniono kod metody addTytul_ksiazki, wg scenariusza ze zmodyfikowanego diagramu sekwencji dodaj_tytul

28 public class Uchwyt { private ArrayList mTytul_ksiazki = new ArrayList (); public Uchwyt() { } 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 getTytul_ksiazki() { return mTytul_ksiazki; } public void setTytul_ksiazki(ArrayList val) { this.mTytul_ksiazki = val; } public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) { if (! this.mTytul_ksiazki.contains(tytul_ksiazki)) this.mTytul_ksiazki.add(tytul_ksiazki); } public static void main(String t[]) // your code here { 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); } }

PIO 2_2, Zofia Kruczkiewicz29 public class Tytul_ksiazki { private String wydawnictwo; private String ISBN; private String tytul; private String nazwisko; private String imie; public Tytul_ksiazki(){} public String getWydawnictwo(){ return wydawnictwo; } public void setWydawnictwo(String _wydawnictwo) { wydawnictwo = _wydawnictwo; } public String getISBN() {return ISBN; } public void setISBN(String _ISBN) {ISBN = _ISBN; } public String getTytul() {return tytul; } public void setTytul(String _tytul) {tytul = _tytul; } public String getNazwisko(){return nazwisko;} public void setNazwisko(String _nazwisko) {nazwisko = _nazwisko;} public String getImie() {return imie; } public void setImie(String _imie) {imie = _imie; } public String toString() // your code here { String pom="Tytul: "+getTytul(); pom+=" Autor:"+getNazwisko() +" "+getImie(); pom+=" ISBN: "+getISBN(); pom+=" Wydawnictwo:"+getWydawnictwo(); return pom; }

PIO 2_2, Zofia Kruczkiewicz30 Skutki wywołania metody equals w metodzie contains, dziedziczonej od klasy Object, która nie uwzględnia właściwości klasy dziedziczącej Tytul_ksiazki

PIO 2_2, Zofia Kruczkiewicz31 Uzupełniono scenariusz metody dodaj_tytul o wywołanie metody equals dziedziczonej od klasy Object, którą przesłania w metodzie contains

32 Uzupełniona definicja klasy Tytul_ksiazki o metodę equals, która przesłania metodę equals dziedziczoną od klasy Object

PIO 2_2, Zofia Kruczkiewicz33

PIO 2_2, Zofia Kruczkiewicz34

PIO 2_2, Zofia Kruczkiewicz35 Uzupełniono kod metody equals, która przesłania metodę equals dziedziczoną od klasy Object

36 public class Tytul_ksiazki { private String wydawnictwo; private String ISBN; private String tytul; private String nazwisko; private String imie; public Tytul_ksiazki(){} public String getWydawnictwo(){return wydawnictwo; } public void setWydawnictwo(String _wydawnictwo){ wydawnictwo = _wydawnictwo; } public String getISBN() { return ISBN; } public void setISBN(String _ISBN) { ISBN = _ISBN; } public String getTytul() { return tytul; } public void setTytul(String _tytul) { tytul = _tytul; } public String getNazwisko(){ return nazwisko; } public void setNazwisko(String _nazwisko) { nazwisko = _nazwisko;} public String getImie() { return imie; } public void setImie(String _imie) { imie = _imie; } public boolean equals(Object ob) //your code here { boolean a=ISBN.equals(((Tytul_ksiazki)ob).getISBN()); //System.out.println(a); 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 2_2, Zofia Kruczkiewicz37