Iteracyjno-rozwojowy cykl oprogramowania cykl 2. Java Zofia Kruczkiewicz 1

Podobne dokumenty
Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania

Instrukcja 3 Laboratorium z Podstaw Inżynierii Oprogramowania

Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania

Wykład 4_2 część druga. Iteracyjno-rozwojowy cykl oprogramowania 4

Te atrybuty wewnętrzne są wyrażane za pomocą tzw. metryk, czyli prostych wyrażeń, wiążących pewne elementy programu (projektu, kodu źródłowego itp.).

Instrukcja 1 Laboratorium z Podstaw Inżynierii Oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

Metryki. Przykłady pomiaru złożoności modułowej i międzymodułowej oprogramowania. autor: Zofia Kruczkiewicz

Te atrybuty wewnętrzne są wyraŝane za pomocą tzw. metryk, czyli prostych wyraŝeń, wiąŝących pewne elementy programu (projektu, kodu źródłowego itp.).

Wykład 6. Charakterystyki zewnętrzne a wewnętrzne oprogramowania (2) Narzędzia do pomiaru programowania. autor: Zofia Kruczkiewicz

Metryki logicznej struktury programu, czyli przepływu sterowania Liczby cyklomatyczne McCabe V LI (G) = e n +p+1, V(G) = e n + 2*p

Instrukcja 4 Laboratorium z Podstaw Inżynierii Oprogramowania. Warstwa klienta: Interfejs graficzny użytkownika

Metryki. Narzędzia do pomiaru złożoności modułowej i międzymodułowej oprogramowania. autor: Zofia Kruczkiewicz 1

{ Dane1 d=(dane1)o; return nazwisko.equals(d.nazwisko) && srednia==d.srednia && uwagi.equals(d.uwagi); }

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

Instrukcja 1 Laboratorium z Podstaw Inżynierii Oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

Instrukcja Wprowadzenie do tworzenia oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 5

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie

Laboratorium 2_3_4 Wzorce oprogramowania zastosowane w modelu obiektowym (wg Alan Shalloway, James R.Trott)

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 5

Projektowanie i wdrażanie systemów informatycznych. Dodanie aplikacji klienta uruchamianej przez przeglądarkę kontynuacja projektu:

Iteracyjno-rozwojowy cykl oprogramowania 4

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)

Wykorzystywanie parsera DOM w programach Java i PL/SQL

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7

Tworzenie systemów informatycznych. Inżynieria oprogramowania Zofia Kruczkiewicz

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6

Bazy danych SQLite w Javie

Języki i metody programowania Java Lab2 podejście obiektowe

Diagram stanów Laboratorium 9

Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom.

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Projektowanie obiektowe. dr Jarosław Skaruz

Wprowadzenie do technologii JavaServer Faces 2.1

Polimorfizm, metody wirtualne i klasy abstrakcyjne

Koncepcja, projekt i implementacja wielowarstwowego systemu informatycznego Inżynieria oprogramowania Zofia Kruczkiewicz

Języki i metody programowania Java. Wykład 2 (część 2)

Klasy abstrakcyjne, interfejsy i polimorfizm

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016

Przykład -

Metody Metody, parametry, zwracanie wartości

Aplikacje Internetowe. Najprostsza aplikacja. Komponenty Javy. Podstawy języka Java

Wykład 6: Dziedziczenie

Przykład 1 Iteracja 2 tworzenia oprogramowania Diagramy klas i sekwencji:

Java: interfejsy i klasy wewnętrzne

Throwable. Wyjatek_1(int x_) { x = x_; } int podaj_x()

Wykład 7: Pakiety i Interfejsy

Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017

Podejście obiektowe. Tablice (1) obiektów

Laboratorium 8 Diagramy aktywności

Programowanie w Javie - wykład 3

Instrukcja 1 Laboratorium 1 Zapoznanie się z wybranym narzędziem UML wprowadzenie do UML

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

PODEJŚCIE OBIEKTOWE. Przykład 1 metody i atrybuty statyczne

Tworzenie systemów informatycznych. Inżynieria oprogramowania Zofia Kruczkiewicz

Metody dostępu do danych

Instrukcja 1 Laboratorium 1 Zapoznanie się z wybranym narzędziem UML wprowadzenie do UML

Programowanie obiektowe

PWSG Ćwiczenia 12. Wszystkie ukończone zadania należy wysłać na adres: lub

Programowanie obiektowe

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

Platformy Programistyczne Podstawy języka Java

Comparable<Klasa_uzytkownika>

Programowanie w języku Java. Bazy danych SQLite w Javie

Hibernate mapowanie baz danych

Języki i metody programowania Java Lab1 Zofia Kruczkiewicz

Połączenia między bazami danych i programem w języku Java część 2

Języki i metody programowania Java INF302W Wykład 3 (część 1)

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

WYJĄTKI. Jest ona jednak czasochłonna i prowadzi do duŝego zapotrzebowania na zasoby systemu.

Programowanie obiektowe i zdarzeniowe

1. Co można powiedzieć o poniższym kodzie (zakładając, że zaimportowano wszystkie niezbędne klasy)?

Przypomnienie o klasach i obiektach

Programowanie obiektowe

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

Diagramy stanów tworzenie modeli analizy i projektowania Na podstawie UML 2.0 Tutorial

Przykład 1 Iteracja 1 tworzenia oprogramowania

Programowanie w Internecie. Java

Budowa aplikacji wielowarstwowych. Zastosowanie szablonów, tabel oraz plików typu properties

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

1. Zakładanie projektu Katalog typu Java Class Library do przechowywania obiektowego modelu danych projekt należy do warstwy biznesowej

Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne

Programowanie obiektowe

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Enkapsulacja, dziedziczenie, polimorfizm

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

Języki i metody programowania Java INF302W Wykład 2 (część 1)

Budowa prostej aplikacji wielowarstwowej. Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1

Dziedziczenie. Tomasz Borzyszkowski

Aplikacje RMI Lab4

Języki i metody programowania Java Lab4 podejście obiektowe, zastosowanie pojemników

Programowanie obiektowe

Zaawansowane aplikacje WWW - laboratorium

Wykład 8: Obsługa Wyjątków

Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 Zofia Kruczkiewicz

Języki i metody programowania Java Obsługa zdarzeń - przykłady

public enum Environment { Development("Deweloperskie"), Test("Testowe"), Production("Produkcyjne"); private String name;

Transkrypt:

Iteracyjno-rozwojowy cykl oprogramowania cykl 2 Java Zofia Kruczkiewicz 1

Kod klasy Uchwyt Java Zofia Kruczkiewicz 2

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); } Java Zofia Kruczkiewicz 3 }

Uruchomienie programu Java Zofia Kruczkiewicz 4

public class Uchwyt { Uzupełniony kod metody addtytul_ksiazki private ArrayList<Tytul_ksiazki> mtytul_ksiazki = new ArrayList<Tytul_ksiazki>(); 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<Tytul_ksiazki> gettytul_ksiazki() { return mtytul_ksiazki;} public void settytul_ksiazki(arraylist<tytul_ksiazki> 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); } Java Zofia Kruczkiewicz 5

public class Uchwyt { private ArrayList<Tytul_ksiazki> mtytul_ksiazki = new ArrayList<Tytul_ksiazki>(); 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<Tytul_ksiazki> gettytul_ksiazki() { return mtytul_ksiazki; } public void settytul_ksiazki(arraylist<tytul_ksiazki> 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"); ap.dodaj_tytul("2","2","2","2","2"); String lan=ap.gettytul_ksiazki().tostring(); Java Zofia Kruczkiewicz 6 System.out.println(lan); } }

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() public void setnazwisko(string _nazwisko) {return 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; } } Java Zofia Kruczkiewicz 7

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 Java Zofia Kruczkiewicz 8

Uzupełniono kod metody equals, która przesłania metodę equals dziedziczoną od klasy Object Java Zofia Kruczkiewicz 9

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; } } Java Zofia Kruczkiewicz 10

Java Zofia Kruczkiewicz 11