- Mobil flották
- Milyen okostelefont vegyek?
- Telekom mobilszolgáltatások
- Yettel topik
- A Suzuki SX4 S-Cross fedélzeti rendszere
- Szívós, szép és kitartó az új OnePlus óra
- Apple iPhone 17e – mágnesek ereje
- Íme, a Samsung válasza a hajlítható iPhone-ra
- Visszatérhet a csepp notch és a 90 Hz
- Készül a 200 megapixeles iPhone
Új hozzászólás Aktív témák
-
proci985
MODERÁTOR
válasz
szervizeszso
#8701
üzenetére
melyik része nem megy?
alapvetően én felosztanám a feladatot kisebb egységekre.
kell a szokásos GUI rész, ezt lehet generáltatni. ha nem akarod nagyon túlbonyolítani a struktúrális designt, akkor a GUI és controller class összevonható (én ezt csinálnám, ronda lesz és a cohesion része nem a legszebb, de scope szempontból egyszerűbb). Ezt a classt nevezzük Controllernek.
ha nem kell threaded Person, akkor a controller classba simán raksz egy simulation() funciót egy loopal, ami végighívja mindenkin a meccsnézést annyiszor, ahányan éppen vannak. én ezt úgy csinálnám, hogy fognék egy ArrayList<Married> marriedPairst, amiből a simulation() random kiválasztja a párokat egy temporáris (funkcion scope) tárolóba szintén Married typevel, aztán szépen végighívod a watchFootball() funkciót az összes elemen a temp tárolóban loopban, amit beraksz még egy loopba hogy elégszer nézzék a meccset.
A Marriedben le kell tárolnod egy Wife és egy Man típusú objectet. Ezeket a párokat célszerű még a Controller constructorjában létrehozni (a focicsapatokkal együtt). A Wife és a Mant lehetne inheritelni egy Personból, de mivel a Married eleve egy eléggé domain specifikus funkció amibe szvsz felesleges túlbonyolítás berakni egy generic containert, és mivel az nem kell, ahogy nézem más miatt sincs szükség ezzel a call/information struktúrával inheritre.
Aztán kellenek még a focicsapatok. Én lusta lennék és előre legenerálnám egy listába (Controller constructor, megint), az összes létező lehetséges meccset, majd ezt kalapként használva kihúznék egy elemet amit utána ki lehetne törölni a listából (ha csak egyszer játszhatnak). Meg ide még kell pár funkció.
Aztán kell még a GUIbe egy lista ami lehívja az összes Man és Wifet a Married párokból (lusta megoldás: simán a marriedPairs containerből a married.getWife().getAmikell() loopolva elvileg tökéletes lesz és akkor tényleg nem kell szórakoznod a Person inheritancevel ha ez nem kritikus, sőt a Serializable is max fileIO miatt kell majd), meg kell egy lista a lefutott meccsekkel és az eredményekkel, mondjuk ez meg lehet egy Match class eleme.
Ja félig angolul, de a kulcsszavakat ha nem érted úgy vissza tudod követni pl stackoverflowon vagy a ref manualban.
-
szervizeszso
csendes tag
válasz
szervizeszso
#8701
üzenetére
Ezen a linken elérhető a teljes program: http://www21.zippyshare.com/v/JnIe7pIE/file.html
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- PlayStation 5
- Még a saját szövetségeseivel szemben is fegyverként használná az AI-t az USA
- Villanyszerelés
- TCL LCD és LED TV-k
- Mobil flották
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Háztartási gépek
- Véleményes teszt bizonygatja mennyit ér a Macbook Neo 8 GB RAM-ja
- Spórolós topik
- További aktív témák...
- Dell Latitude 7390 2in1 360 fokban kinyitható 13,3" FHD IPS touch, 8650u, 16GB RAM, jó akku.
- DELL Latitude 5420 Core i5-1135G7
- Eladó LG 43UN71003LB 43 4K UHD Smart TV
- Kicsibe van ennél jobb ár-ér arány? Phanteks - Enthoo Evolv ITX - PH-ES215P BK INGYEN Szállítva!
- A kis CUKISÁG! IWIN A1 ITX 600W PSU Ingyen MPL-el Érdekelhet?
- Zotac / Inno3D RTX 3080 Ti // Számla // Garancia //
- 27% - Acer CBA272H VA Monitor! 1920 1080 / 100Hz / 4ms / FreeSync
- Kezdő Gamer PC-Számítógép! Csere-Beszámítás! I7 6700 / 16GB DDR4 / GTX 1650 Super / 500 SSD
- ÚJ könyv: Gloviczki Zoltán - A holnapután iskolája
- Xbox One S 512 GB + kontroller 6 hó garancia, számlával!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


