Hirdetés
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- Samsung Galaxy S23 Ultra - non plus ultra
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Milyen okostelefont vegyek?
- Bemutatkozott a Poco X7 és X7 Pro
- Kiesett a pikszisből a BOE
- Milyen hagyományos (nem okos-) telefont vegyek?
- Google Pixel topik
- One mobilszolgáltatások
- Amazfit Active 2 NFC - jó kör
Ú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 újonc
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?:))
- Latitude 5440 27% 14" FHD IPS i7-1365U 16GB 512GB NVMe magyar vbill ujjolv IR kam gar
- LG 29WL500-B ultraWide gamer monitor leárazás!!! AkciÓÓ!
- Dell Latitude 5420 14" FHD IPS i7-1185G7 16GB 512GB NVMe gar
- LOQ 15ARP9 15.6" FHD IPS Ryzen 7 7435HS RTX 4050 16GB 512GB NVMe magyar vbill gar
- Apple MacBook Air 13.6" M2, 16GB/256GB (MC7X4MG/A ) Éjfekete - 100% akku - Garancia
- HIBÁTLAN iPhone 13 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3536,100% Akkumulátor
- GYÖNYÖRŰ iPhone 13 Mini 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3886, 100% Akkumulátor
- BESZÁMÍTÁS! ASUS H510M i5 10400F 16GB DDR4 512GB SSD RTX 2080 Super 8GB Zalman T4 PLUS FSP 700W
- Azonnali készpénzes AMD Radeon RX 9000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


