Forum studentów informatyki UE Wrocław
Forum studentów informatyki UE Wroclaw

MSI - [2010L]Sydney - zadania

farbowanyaniol - 2010-04-17, 15:41
Temat postu: [2010L]Sydney - zadania
Może mi ktoś wytłumaczyć o co chodzi z tym diagramem w zadaniu 3 w pytaniach dyskusyjnych tygodnia 9?
jj09 - 2010-04-17, 20:35

wytłumaczę Ci, jak mi powiesz czy Sydney kazał to na 20.04 do 20 wysłać tak jak jest na moodle? bo nie było jeszcze żadnych ćwiczeń z nim...
maxdiaz - 2010-04-17, 20:49

do 20 to 3ba na moodle wyslac obowiazkowo bo potem sie "zamyka" mozliwosc wysyłania tych pytan na eportal ;)
shawnzy - 2010-04-17, 20:51

jj09, Termin oddania: wtorek, 20 kwiecień 2010, 08:00.
farbowanyaniol - 2010-04-17, 21:22

jj09, do 8 rano do wtorku musisz wysłać, a z wydrukowanym przyjść na ćwiczenia To co z tym wytłumaczeniem?
jj09 - 2010-04-18, 00:27

kurde, no to zajebiście

farbowanyaniol, generalnie to masz dobrze, tylko nie masz operacji na zmiennych z tego co widzę:P no i może konstruktory by się przydały?

więc generalnie to klasa Student by tak wyglądała:
Kod:
class Student
{
   //atrybuty
   private unsigned numerIndeksu;
   private String imieStudenta;
   private String nazwiskoStudenta;
   private String adresUlica;
   private unsigned kodPocztowy;

   //konstruktor tworzący obiekt Student
   public Student(unsigned numer, String imie, String nazwisko, String adres, unsigned kod)
   {
      numerIndeksu = numer;
      imieStudenta = imie;
      nazwiskoStudenta = nazwisko;
      adresUlica = adres;
      kodPocztowy = kod;
   }

   //metoda zmieniająca numer indeksu
   public void ustawNumerIndeksu(unsigned numer)
   {
      numerIndeksu = numer;
   }

   //zwraca numer indeksu   
   public unsigned zwrocNumerIndeksu()
   {
      return numerIndeksu;
   }
   //itd.dla reszty
}


no i na podstawie tego robisz diagram...np.:


PS.Wykłady Maciaszka są w Javie, a w Visio nie ma typów danych Javy :roll: (ale różnica jest tylko w bool/boolean więc spoko)

pozdro

pit3r - 2010-04-18, 00:44

farbowanyaniol, tak jak napisał jj09, również uważam, że niezbędne są tutaj jakieś metody, które pozwoliłyby operować wartościami atrybutów.

Co do konstruktorów to chyba nie są one tutaj aż tak istotne(mam na myśli diagramy klas). Koniecznie należy jednak o nich wspomnieć, ponieważ bez nich nie można utworzyć żadnego obiektu, a co za tym idzie, posługiwać się nim... tak jak wspomniałem odgrywają one rolę dopiero w trakcie pisania programu (C#, Java itp.)

gasior - 2010-04-18, 13:14

mam prośbę, czy może mnie ktoś nakierować gdzie znajdę odpowiedź na pytanie 2 oraz na podpunkt 5 z pytania 1 ;> ??
timebomb - 2010-04-18, 14:24

dołączam się do prośby
jj09 - 2010-04-18, 15:02

podpunkt 5: dodać atrybut o nazwie id?
pytanie 2: http://pl.wikipedia.org/w...we#Hermetyzacja

agnieszkaosw - 2010-04-18, 15:11

a ja by była wdzięczna za wrzucenie tutaj jakiegoś "przykładowego" diagramu , który chce od nas Sydney.
Z tymi ^^ wcześniejszymi pytaniami jakoś można sobie poradzić ... ale tutaj się gubie zupełnie.

pit3r - 2010-04-18, 15:16

Tutaj znajdowała się odpowiedź, którą usunąłem, ponieważ nie była wystarczająco dobra :-P
jj09 - 2010-04-18, 15:54

agnieszkaosw, przecież wrzuciłem diagram? oczywiście niepełny, trzeba dodać atrybuty i potem do każdego atrybutu 2 metody - odczytu i zapisu, i wszystko
shawnzy - 2010-04-18, 16:02

jj09, a co z tą częścią zadania: "Narysuj kilka różnych wariantów diagramu i wyjaśnij zalety i wady." ? Nie narysuję przecież 3 takich samych diagramów, różniących się kolejnością metod :-D .
agnieszkaosw - 2010-04-18, 16:10

jj09, aaaah... to ten diagram ma mieć postać jednego prostokąta? :-P i tam w nim wszystko wpisać? :->
jj09 - 2010-04-18, 19:20

shawnzy, zrób jeden taki jak ma być, a inne może z atrybutami publicznymi czy coś i na tej podstawie możesz wyjaśnić zalety modelu obiektowego ;)
agnieszkaosw, no bo to ma być diagram jednej klasy? 1klasa = 1prostokąt (mówiąc precyzyjnie)

pit3r - 2010-04-18, 19:35

uff... chyba skończyłem O.o

Jeśli chodzi o mnie to zrobiłem zadanie 3 w oparciu o konstruktory.

W jednym przypadku konstruktor domyślny zostawiłem, a dane dotyczące obiektu klasy Student wklepuje się 'na piechotę' za pomocą odpowiednich metod.

W drugim wariancie utworzyłem konstruktor, który pobiera wszystkie potrzebne parametry dzięki czemu sprawa żmudnego wpisywania danych zostaje w znaczny sposób uproszczona ;-)

Generalnie całe to zadanie uważam za bezsens, ale jak każą to nie pozostaje nic innego jak robić :-P

farbowanyaniol - 2010-04-18, 21:17

pit3r, a obrazek?
Lechu - 2010-04-18, 21:25

jeszcze sie dokładnie nie przyglądałem zadanom ani slajdom ale ja bym zad 3 zrealizował w ten sposób, że klasa student może zawierać wszystkie dane jako osobne strybuty(czyli tak jak było we wcześniejszym poście), ale np. dane adresowe (miejscowość, kod pocztowy, nr domu, rm mieszkania, ulica itd.) mogą być przechowywane w strukturze
public struct Adres
{
string miejscowosc;
string ulica;
int kodPocztowy;
byte nrDomu;
byte nrMiesszkania;
};
public class Student
{
private Adres adres;
private string imie;
private string nazwisko;
private int nrIndeksu;

public Student(string imie, string nazwisko, int nrIndeksu, string miejscowosc, string ulica, int kodPocztowy, byte nrDomu, byte nrMieszkania) //konstruktor klasy
{
this.imie = imie;
this.nazwisko = nazwisko;
this.nrIndeksu = nrIndeksu;
this.adres.miejscowosc = miejscowosc;
this.adres.ulica = ulica;
this.adres.kodPocztowy = kodPocztowy;
this.adres.nrDomu = nrDomu;
this.adres.nr.Mieszkania = nrMieszkania;
}
// i tu jakies metody
}

kolejny mój pomysł to wykorzystanie podklas tzn. zamiast dane adresowe przechowywac w strukturze można przechowywac w obiekcie klasy Adres czyli:
public class Adres
{
string miejscowosc;
string ulica;
int kodPocztowy;
byte nrDomu;
byte nrMiesszkania;
}
wtedy klasa Student bedzie wygladac podobnie tylko zmieni sie konstruktor:

public Student(string imie, string nazwisko, int nrIndeksu, string miejscowosc, string ulica, int kodPocztowy, byte nrDomu, byte nrMieszkania) //konstruktor klasy
{
adres = new Adres(); /* tworzymy instancję klasy Adres czyli tworzymy nowy obiekt typy Adres */
this.imie = imie;
this.nazwisko = nazwisko;
this.nrIndeksu = nrIndeksu;
this.adres.miejscowosc = miejscowosc;
this.adres.ulica = ulica;
this.adres.kodPocztowy = kodPocztowy;
this.adres.nrDomu = nrDomu;
this.adres.nr.Mieszkania = nrMieszkania;
}
}

I jeszcze jeden wariant to można w klasie Adres dodać kostruktor
wtedy kostruktor klasy Student może wyglądać np. tak:
public Student(string imie, string nazwisko, int nrIndeksu, string miejscowosc, string ulica, int kodPocztowy, byte nrDomu, byte nrMieszkania) //konstruktor klasy
{
adres = new Adres(ulica, kodPocztowy,nrDomu,nrMieszkania); /* tworzymy instancję klasy Adres czyli tworzymy nowy obiekt typy Adres */
this.imie = imie;
this.nazwisko = nazwisko;
this.nrIndeksu = nrIndeksu;
}

Kolejny pomysł to można przechowywać dane w tablicy obiektów (jest to roziązanie niewygodne aczkolwiek możliwe):
public class Student
{
object[] dane = new object[7];

public Student(string imie, string nazwisko, int nrIndeksu, string miejscowosc, string ulica, int kodPocztowy, byte nrDomu, byte nrMieszkania) //konstruktor klasy
{
this.dane[0] = imie;
this.dane[1] = nazwisko;
this.dane[2] = nrIndeksu;
this.dane[3] .miejscowosc = miejscowosc;
this.dane[4] = ulica;
this.dane[5] = kodPocztowy;
this.dane[6] = nrDomu;
this.dane[7] = nrMieszkania;
}
}
Rozwiązań jest od groma, to są pierwsze które przyszły mi do głowy :)
wszystkie przykłady pisane w języku C# w "biegu"

diagramów klas jeszcze nie umiem robić więc obrazków nie będzie :P
ogólnie możemy wykorzystać struktury, inne klasy i tablice do przechowywania danych w naszej klasie:) pozdro

//edit by shawnzy

pit3r - 2010-04-18, 22:02

Lechu, w tym problem, że potrzeba nie implementacji w Javie czy C#, ale tych właśnie głupich diagramów :-P

Poza tym nie wiem czy możemy wykorzystywać wiedzę nt dziedziczenia, tablic itp. skoro nie było o tym mowy na wykładzie ;-)

Niemniej pomysły dobre :)

jj09 - 2010-04-18, 22:11

Visual C++ automatycznie generuje diagramy klas na podstawie kodu...a w .docu Maciaszka nie ma słowa Visio :mrgreen:
Bleah - 2010-04-19, 16:17

ma ktos moze jakis przykladowy diagram ? jak to ma wygladac?;p moze byc inny przyklad
Go - 2010-04-19, 16:18

ni chuja nic z tego nie rozumiem. " Uwzględnij także, że system musi pamiętać szczegóły o adresach studentów, aby można było grupować studentów zgodnie z kodami pocztowymi i nazwami ulic. Dodatkowo wszystkie numery telefonów każdego studenta muszą być przechowywane. " Gdzie to niby ma być przechowywane te wszystkie szczegóły? Szczerze, to poza zrobieniem klasy i wpisaniu atrybutów to nie mam pojęcia co więcej zrobić. Mógłby ktoś to jakoś w jasny sposób przedstawić?
Bleah - 2010-04-19, 16:24

zgadzam sie :D
De Morgan - 2010-04-19, 16:43

Ja wysłałem bez zadania 3. I tak, o ile sobie przypominam, nie sprawdza tego.
Kocur - 2010-04-19, 16:53

Popieram tak samo zrobiłem...
Koordynator - 2010-04-19, 18:02

Może i tak, niemniej na pewno komuś sprawdzi na ćwiczeniach :).
Go - 2010-04-19, 18:11

wiecie co? zróbmy tak jak uważamy, a na ćwiczeniach się go zapyta o co chodziło :)
Lechu - 2010-04-19, 18:22

Bleah jest fajny przykład w pomocy programu Visio: Visio — strona główna > Diagramy modeli oprogramowania i baz danych > Diagramy UML > Modele i typy systemu UML > Diagramy struktur statycznych > Przykład diagramu struktury statycznej klasy

pit3r można zrobić klasę bez konstruktora, wtedy klasa automatycznie posiada niejawny konstruktor (taki bez argumentów i nic nie robiący)
np.
class Student
{
//jakies atrybuty
}
i tworzymy obiekt typu Student, który pozornie nie posiada konstruktora:
Student stud1 = new Student();
Gdy jednak zdefiniujemy jakikolwiek swój kostruktor, ten niejawny przestaje być dla nas dostępny
pit3r dziedziczenie było wspomniane na wykładzie, a tablice mamy użyte na 25 stronie slajdów

maxdiaz - 2010-04-19, 18:31

slajdów jest 19 ;DD tj tych co pokazywał na wykładzie :-)
pit3r - 2010-04-19, 18:44

Lechu, nt konstruktorów pisałem wcześniej ;-)

o dziedziczeniu widocznie nie słyszałem, a co do tablic to raczej do nich Sydney nie doszedł w trakcie wykładu :-P chyba, że się całkowicie zwiesiłem :D

maxdiaz - 2010-04-19, 18:56

On doszedł coś do 10go slajdu bo duzo tłumaczył na początku ;)
maxdiaz - 2010-04-19, 22:28



tak wyglada poprawny diagram klas do tego co mamy zrobic, przynajmniej tak twierdzi 2 informatyków z SAP ;D

wosiuuuu - 2010-04-19, 22:35

czy ktoś jeszcze ma zamiar zrobić tak jak kocur i morgan ( wysłać mu zadania bez 3ego )?

bo ja chyba też tak zrobię

Bleah - 2010-04-19, 22:47

ja tak zrobilem :D
TuruTuru - 2010-04-19, 23:01

ja też tak zrobie, jak tylko napisze coś w drugim, bo aktualnie nie wiem co. Pomoże ktoś? ;D
Kociania - 2010-04-19, 23:02

Chyba większość osób odda bez 3-ego ^^
SARTO - 2010-04-19, 23:18

TuruTuru,

jj09 napisa/a:
pytanie 2: http://pl.wikipedia.org/w...we#Hermetyzacja


a jak klikniesz tam nagłówek to:
http://pl.wikipedia.org/wiki/Hermetyzacja

pit3r - 2010-04-19, 23:43

pięknie pięknie... wszyscy będą mieć to samo ;D
killaruna - 2010-04-20, 00:21

Nie wszyscy :P ja mam po swojemu ^^

No i wysyłam bez trzeciego. Jeszcze nie zainstalowałam Visio ;P

SARTO - 2010-04-20, 00:23

"Plagiat jest to skopiowanie cudzej pracy/pomysłu (lub jej części) i przedstawienie pod własnym nazwiskiem. Jest to podobne do kradzieży, nie jest dopuszczalne przez Uniwersytet Ekonomiczny i podlega karom dyscyplinarnym." :-P

Podajemy sourca i jest git :-P Np. źródło: praca kolegi :-P

tomx2 - 2010-04-20, 01:02

SARTO napisa/a:
"Plagiat jest to skopiowanie cudzej pracy/pomysłu (lub jej części) i przedstawienie pod własnym nazwiskiem. Jest to podobne do kradzieży, nie jest dopuszczalne przez Uniwersytet Ekonomiczny i podlega karom dyscyplinarnym." :-P

Podajemy sourca i jest git :-P Np. źródło: praca kolegi :-P


Ja zamieniam słowa na synonimy, inaczej układam zdania i jest git 8-) ( mam taka nadzieje :roll: )

p2mgrup - 2010-04-26, 21:58

ma ktos te diagramy na jutro zrobione ?
tomx2 - 2010-04-26, 22:38

Nawet nie za bardzo wiem jak się do tego zabrać :shock:
p2mgrup - 2010-04-26, 22:49

dokladnie;d
PawełG - 2010-04-26, 23:04

ja staram sie cos stworzyc ale to jest zbyt porabane dlamnie
killaruna - 2010-04-26, 23:13

W jednym z działów dałam linka do podręcznika ebook UMLa pt. "UML dla każdego". Czym jest klasa i jak jest zbudowana, opisane jest na str 27.

Wykresy można zrobić w programie DIA lub Visio. W Visio trzeba odszukać wśród listy po lewej stronie diagramów UMLa (chyba w podgrupie "oprogramowanie", nie pamiętam) i zatwierdzić. Diagramy tworzy się metodą przeciągnij/opuść, a w klasach diagramu wprowadza się atrybuty i operacje poprzez dwukrotne kliknięcie na klasę.

W pierwszym zadaniu chyba trzeba utworzyć 5 klas: bank, samochód, osoba prywatna, organizacja, pożyczka.

Tak się tylko zastanawiam, czy może "właściciela" zrobić jako osobną, 6 klasę?

Aha, czy w atrybutach mamy się ograniczyc tylko do danych z zadania, czy też wprowadzać dodatkowe, np. w przypadku samochodu, jakiej jest on marki?

denis - 2010-04-27, 00:24

ja zrobilem w paincie i mam to w dupie ;D
maxdiaz - 2010-04-27, 01:37

no ja to robiłem tak ze nie mam 6 klasy jako własciciela a atrybutow zrobilem jak najwiecej sie dało, tj w granicach rozsądku ;P inaczej by mnie posądzoo o członkostwo w Avon ;DDDDDDDD
killaruna - 2010-04-27, 01:55

A ja zrobiłam 6 klasę jako właściciela, a reszta klas (z wyjątkiem samochodu i pożyczki) jako jej klasy dziedziczące.

ŁoDcZeP się od Ejwonu ;P

pit3r - 2010-04-27, 08:39

bardzo dobry pomysł! ;-)
maxdiaz - 2010-04-27, 15:45

killaruna, oj no dobra odczepie sie ;D

no w sumie pomysł orygialny ;> i b. dobry

shawnzy - 2010-05-06, 20:08

Tak w skrócie: na eportalu pojawiła się druga część projektu z AiMSI.
Termin oddania: 27.05.2010
Cytat:
STUDENT MA ZA ZADANIE:
1. Użyć ten dokument z zadaniami i przygotować profesjonalny (zszyty/spięty, ale nieoprawiony) dokument z odpowiedziami na zadania.
2. Oddać dokument dr. Iwonie Chomiak w czwartek 27 maja między godzinami 14:00 i 15:00 w bud. Z, pok. 707

killaruna - 2010-05-10, 14:26

Drogie pysiaczki :)

Zadanie numer 12, które do jutra mamy wysłać, dostępne w wersji angielskiej pod:

http://www.dcs.bbk.ac.uk/...ineShopping.ppt

Slajd numer 25.

Potłumaczcie sobie i bądźcie na tyle sprytni, by porobić jakieś drobne błędy ;) tudzież rozmieśćcie klasy inaczej graficznie.

Coby wszyscy jednej wersji nie mieli ;-)

pit3r - 2010-05-10, 14:37

killaruna, ależ piwko Ci się należy :mrgreen: thx ;-)
killaruna - 2010-05-10, 15:35

Hehe, coś jeszcze lepszego :-) sydney'owskie wykłady naszego Sydney'a ^^

http://www.comp.mq.edu.au.../LectureSlides/

Przedostatni plik na liście to całe nasze zadanie :-P

SARTO - 2010-05-10, 16:14

:shock: Masz u mnie kangura :mrgreen:
killaruna - 2010-05-10, 17:36

Mam tylko takie pytanie, czy display(), get() itd. można tłumaczyć na polski, tj. wyswietl(), pobierz() - czy tez muszą zostac po angielsku, bo są funkcjami wbudowanymi UMLa? Nie chce mi się sprawdzać po necie...

EDIT:
Niewazne - okazało się, że można, sprawdziłam :P
http://rab.ict.pwr.wroc.p...erialy/uml1.pdf

aniut - 2010-05-10, 21:23

uratowałaś mi noc, dzięki że się podzieliłaś odkryciem :)
Kenzi - 2010-05-10, 22:01

A ja dalej mam nadzieję, że te plusiki będą nic nie warte, skoro przedmiot kończy się kołem, a ćwiczenia projektem, że nic nie wysyłam :|. Nie mam na niego jakoś siły, nawet jak mam część podaną... Ech... Ktoś jeszcze jest w podobnej sytuacji? :>
tomx2 - 2010-05-10, 22:02

Kenzi, nic się nie martw jutro koło z anala :-) :-)

btw. cos mu tam wyślę. dziekuję za te materiały udostępnione ;-)

agnieszkaosw - 2010-05-10, 22:04

Kenzi skąd ci się wzięło ,że Koło będzie z AiMSI?
Różne wersje Sydney podawał, ale kolokwium jakoś nie usłyszałam :-P

pit3r - 2010-05-10, 22:07

agnieszkaosw, ja słyszałem, że czeka nas test zaliczeniowy na koniec
maxdiaz - 2010-05-10, 22:09

a ja ze ten cały projekt ma byc oceną koncowa ;>
pit3r - 2010-05-10, 22:10

no i wyczaisz k***a? :-P
maxdiaz - 2010-05-10, 22:12

no własnie xD ktos cos mowil ze to ma byc tylko projekt na zaliczenie .
killaruna - 2010-05-10, 22:13

A ja tam na razie mam na to wy(yeah)(bunny)e

(^_^)

shawnzy - 2010-05-10, 22:16

z tego co wiem^^ to:
- wykład kończy się jakimś testem
- laby tym projektem
- ćwiczenia z tych punktów lub suma punktów + projekt.

Kenzi - 2010-05-10, 22:39

agnieszkaosw napisa/a:
Kenzi skąd ci się wzięło ,że Koło będzie z AiMSI?
Różne wersje Sydney podawał, ale kolokwium jakoś nie usłyszałam :-P


A chadzałem na wykłady i jeszcze Kazimiera Szczuka mówiła, że wszystko skończy się testem, a skoro już z Sydney'em mieliśmy, to powinniśmy wiedzieć, że powinien być podobny do tego z TI - tzn. z 10 pytań testowych dot. slajdów. To było dość dawno, ale, kurde, nie wydaje mi się, żeby tak nie było :D.

BTW: Tomx, ja idę na analizę zdjęcia robić przecież tylko :D.

agnieszkaosw - 2010-05-10, 22:43

Kenzi, to wykłady się kończą testem.. to było pewne... ale na ćwiczeniach koła nie będzie. nie siej paniki :-P
De Morgan - 2010-05-10, 23:43

Wersja moja jest taka, jak wersja Shawnzy'ego

Powered by phpBB modified by Przemo © 2011 phpBB Group