• Nie Znaleziono Wyników

Wykład 1-część druga

N/A
N/A
Protected

Academic year: 2021

Share "Wykład 1-część druga"

Copied!
48
0
0

Pełen tekst

(1)

PIO. Autor -Zofia Kruczkiewicz 1

Wykład 1-część druga

Wstęp do inżynierii oprogramowania.

Cykle rozwoju oprogramowania (część biznesowa aplikacji)

iteracyjno-rozwojowy cykl oprogramowania 1

(2)

PIO. Autor -Zofia Kruczkiewicz 2

Java

język programowania

• obiektowo zorientowany

• wysokiego poziomu

platforma Javy

• z maszyny wirtualnej VM

• API (interfejs programowania aplikacji).

Rodzaje platform Javy:

‹ Java Platform, Standard Edition (Java SE)

‹ Java Platform, Enterprise Edition (Java EE)

‹ Java Platform, Micro Edition (Java ME)

‹ Java Platform CARD Rezultat

• niezależność od platformy,

• duże możliwości,

• stabilność,

• łatwość rozwoju,

bezpieczeństwo

(3)

PIO. Autor -Zofia Kruczkiewicz 3

Warstwy aplikacji (Java EE)

(4)

PIO. Autor -Zofia Kruczkiewicz 4

1) Wykonanie projektu typu aplikacja Javy

(5)

PIO. Autor -Zofia Kruczkiewicz 5

(6)

PIO. Autor -Zofia Kruczkiewicz 6

(7)

PIO. Autor -Zofia Kruczkiewicz 7

(8)

PIO. Autor -Zofia Kruczkiewicz 8

2) Utworzenie projektu UML

(9)

PIO. Autor -Zofia Kruczkiewicz 9

(10)

PIO. Autor -Zofia Kruczkiewicz 10

(11)

PIO. Autor -Zofia Kruczkiewicz 11

3) Utworzenie diagramu przypadków użycia (use cases)

(12)

PIO. Autor -Zofia Kruczkiewicz 12

(13)

PIO. Autor -Zofia Kruczkiewicz 13

(14)

PIO. Autor -Zofia Kruczkiewicz 14

4) Utworzenie diagramu klas

(15)

PIO. Autor -Zofia Kruczkiewicz 15

5) Wstawienie nowej klasy

(16)

PIO. Autor -Zofia Kruczkiewicz 16

6) Wstawienie atrybutów

(17)

PIO. Autor -Zofia Kruczkiewicz 17

7) Wstawienie nowego atrybutu - menu

(18)

PIO. Autor -Zofia Kruczkiewicz 18

8) Edycja atrybutu

(19)

PIO. Autor -Zofia Kruczkiewicz 19

9) Właściwości nowego atrybutu

(20)

PIO. Autor -Zofia Kruczkiewicz 20

10) Generowanie kodu klasy Tytul_ksiazki do projektu Katalog1

(21)

PIO. Autor -Zofia Kruczkiewicz 21

11) Wybór projektu Javy jako miejsca do generowania kodu

(22)

PIO. Autor -Zofia Kruczkiewicz 22

(23)

PIO. Autor -Zofia Kruczkiewicz 23

12) Wygenerowany kod

(24)

PIO. Autor -Zofia Kruczkiewicz 24

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 val) { this.wydawnictwo = val; } public String getISBN() { return ISBN; }

public void setISBN(String val) { this.ISBN = val; } public String getTytul() { return tytul; } public void setTytul(String val) { this.tytul = val; } public String getNazwisko() { return nazwisko; } public void setNazwisko(String val) { this.nazwisko = val; } public String getImie() { return imie; }

public void setImie(String val) { this.imie = val; }

}

(25)

PIO. Autor -Zofia Kruczkiewicz 25

13) Wstawienie klasy fasadowej Uchwyt – będzie zastosowana do

obsługi wywołań przypadków użycia.

(26)

PIO. Autor -Zofia Kruczkiewicz 26

14) Wstawienie powiązania między klasami

(27)

PIO. Autor -Zofia Kruczkiewicz 27

15) Określenie liczności związku – 1 do 1..0

(28)

PIO. Autor -Zofia Kruczkiewicz 28

(29)

PIO. Autor -Zofia Kruczkiewicz 29

16) Wstawianie nowego diagramu – menu

(30)

PIO. Autor -Zofia Kruczkiewicz 30

17) Wstawianie nowego diagramu typu sekwencji - wybór

(31)

PIO. Autor -Zofia Kruczkiewicz 31

(32)

PIO. Autor -Zofia Kruczkiewicz 32

(33)

PIO. Autor -Zofia Kruczkiewicz 33

(34)

PIO. Autor -Zofia Kruczkiewicz 34

18) Wstawienie synchronicznej wiadomości („Synchronous Message”) – metody

klasy Tytul_ksiazki

(35)

PIO. Autor -Zofia Kruczkiewicz 35

19) Nadawanie nazwy toString nowej metodzie w klasie Tytul_ksiazki

(36)

PIO. Autor -Zofia Kruczkiewicz 36

20) Wstawienie wiadomości typu „Message to Self” – ciało metody toString

(37)

PIO. Autor -Zofia Kruczkiewicz 37

21) Kojarzenie wiadomości z konkretną metodą klasy Tytul_ksiazki

(38)

PIO. Autor -Zofia Kruczkiewicz 38

(39)

PIO. Autor -Zofia Kruczkiewicz 39

22) Pojawienie się nowej metody toString w klasie Tytul_ksiazki – z diagramu

sekwencji

(40)

PIO. Autor -Zofia Kruczkiewicz 40

23) Wygenerowanie nowej metody toString do klasy kodu klasy Tytul_ksiazki

(41)

41 public class Tytul_ksiazki

{ private String wydawnictwo;

private String ISBN;

private String tytul;

private String nazwisko;

private String imie;

public Tytul_ksiazki() {} /** @ generated */

public String getWydawnictwo() { return wydawnictwo; } /** @ generated */

public void setWydawnictwo(String val) { wydawnictwo = val; }

public String getISBN() { return ISBN; } /** @ generated */

public void setISBN(String val) { ISBN = val; } /** @ generated */

public String getTytul() { return tytul; } /** @ generated */

public void setTytul(String val) { tytul = val; } /** @ generated */

public String getNazwisko() { return nazwisko; } /** @ generated */

public void setNazwisko(String val) { nazwisko = val; } /** @ generated */

public String getImie() { return imie; } /** @ generated */

public void setImie(String val) { imie = val; } /** @ generated */

public String toString()

// your code here

{ String pom="Tytul: "+getTytul();

pom+=" Autor:"+getNazwisko() +" "+getImie();

pom+=" ISBN: "+getISBN();

pom+=" Wydawnictwo:"+getWydawnictwo();

return pom;

}

}

(42)

PIO. Autor -Zofia Kruczkiewicz 42

24) Wstawienie ręczne kodu nowej metody toString do klasy Tytul_ksiazki

(43)

PIO. Autor -Zofia Kruczkiewicz 43

25) Wstawienie diagramu sekwencji dla przypadku użycia dodaj_tytul:użycie wiadomości typu

(„Asynchronous Message” oraz „Create Message” – konstruktor klasy Tytul_ksiazki)

(44)

PIO. Autor -Zofia Kruczkiewicz 44

26) Wygenerowanie nowej metody dodaj_tytul w klasie fasadowej

Uchwyt z diagramu sekwencji

(45)

PIO. Autor -Zofia Kruczkiewicz 45

27) Wygenerowanie kodu nowej metody dodaj_tytul w klasie Uchwyt

(46)

PIO. Autor -Zofia Kruczkiewicz 46

28) Wstawienie ręczne kodu nowej metody dodaj_tytul oraz metody

main testującej działanie wykonanego przypadku użycia

(47)

PIO. Autor -Zofia Kruczkiewicz 47

public class Uchwyt {

public Tytul_ksiazki tytul_;

public void dodaj_tytul(String a, String b, String c, String d, String e) { // your code here

tytul_=new Tytul_ksiazki();

tytul_.setTytul(a);

tytul_.setNazwisko(b);

tytul_.setImie(c);

tytul_.setISBN(d);

tytul_.setWydawnictwo(e);

}

public static void main(String t[]) // your code here { Uchwyt ap=new Uchwyt();

ap.dodaj_tytul("1","1","1","1","1");

String lan=ap.tytul_.toString();

System.out.println(lan);

}

}

(48)

PIO. Autor -Zofia Kruczkiewicz 48

29) Uruchomienie programu

Cytaty

Powiązane dokumenty

• Directed chosen message attack: Similar to the generic attack, except that the list of messages to be signed is chosen after C knows A’s public key but before any signatures

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ą

Przykład pierwszy programu z warstwą klienta (interfejs graficzny użytkownika) i warstwą biznesową dostępną za pomocą metod klasy Uchwyt... Przykład drugi programu z

Jeśli wynik poszukiwania jest równy false, należy dodać do obiektu typu Ksiazka referencję do znalezionego obiektu typu Tytul_ksiazki - na koniec należy wstawić obiekt typu

5) Przechodzi do stanu waitForSearchResults po otrzymaniu komunikatu receive(announce(task,.cost),mgr) od zadania roli mgr:Manager i wysłaniu do niej komunikatu

If the acknowledgment is not received within the timeout period, the kernel of the client machine retransmits the request message..  When the server finishes processing the

*recvbuf, int recvcount, MPI_Datatype recvtype, int source, int recvtag, MPI_Comm comm, MPI_Status *status) sendbuf Bufor danych wysyłanych. sendcount Liczba elementów w

*recvbuf, int recvcount, MPI_Datatype recvtype, int source, int recvtag, MPI_Comm comm, MPI_Status *status) sendbuf Bufor danych wysyłanych. sendcount Liczba elementów w