Hirdetés
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Ú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.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- HP Envy x360 14-fc0779nz - ÚJ - 14" 2-in-1 notebook - OLED, 32GB RAM
- HP Envy x360 14-fc0779nz - ÚJ - 14" 2-in-1 notebook - OLED
- Canon EOS 1200D gépek, +objektívek +kiegészítők (1400 / 3424 / 6600 / 9575/ 11700 / 14600 expoval )
- HP Envy x360 14-fa0026ne - 2-in-1 ultrabook - Ryzen 7
- Canon EOS 550D gépek, objektívekkel és kiegészítőkkel
- 121 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 - 4 év garancia
- HP ZBook Studio G7 i7-10850H 32GB 1000GB Nvidia Quadro T1000 15.6" FHD 1 év garancia
- GYÖNYÖRŰ iPhone 13 Pro Max 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3063
- IKEA Format lámpák eladóak (Egyben kedvezménnyel vihető!)
- AKCIÓ! ASRock Z370 i5 8500 16GB DDR4 512GB SSD 2060 Super 8GB Zalman Z9 Plus Enermax 750W
Állásajánlatok
Cég: FOTC
Város: Budapest