| |
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 (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
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 .
agnieszkaosw - 2010-04-18, 16:10
jj09, aaaah... to ten diagram ma mieć postać jednego prostokąta? 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ć
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
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
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 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,
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."
Podajemy sourca i jest git Np. źródło: praca kolegi
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."
Podajemy sourca i jest git Np. źródło: praca kolegi |
Ja zamieniam słowa na synonimy, inaczej układam zdania i jest git ( mam taka nadzieje )
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ć
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 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
SARTO - 2010-05-10, 16:14
Masz u mnie kangura
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
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?
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 |
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
De Morgan - 2010-05-10, 23:43
Wersja moja jest taka, jak wersja Shawnzy'ego
|
|