Hirdetés
- Azonnali mobilos kérdések órája
- Az Apple bemutatta az iPhone 17-et
- iPhone topik
- Kempinglámpa helyett kürt
- Telekom mobilszolgáltatások
- Apple iPhone SE (2020) - életképes alternatíva
- Kézbe fogható paradoxon lett az iPhone Air
- Honor 400 Pro - Gép a képben
- Lassan teljes a Xiaomi 16 tudáslistája
- Xiaomi 15 - kicsi telefon nagy energiával
Ú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?:))
- VoIP telefonálás
- Milyen egeret válasszak?
- A HBM elérhetősége korlátozza a kínai AI gyorsítókat
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Azonnali mobilos kérdések órája
- HiFi műszaki szemmel - sztereó hangrendszerek
- Argos: Az vagy, amit megeszel
- Elektromos autók - motorok
- Vezeték nélküli fülhallgatók
- Építő/felújító topik
- További aktív témák...
- Apple Watch Series 11 Titán 42/46 mm Sport/Milanaise- bontatlan - 1 év Apple garancia
- ZBook Firefly 14 G10 14" QHD+ IPS i7-1370P 16GB 512GB NVMe ujjlolv IR kam gar
- Latitude 5420 14" FHD IPS i7-1185G7 16GB 512GB NVMe ujjlolv gar
- Apple Watch Series 11 Alu 46 mm GPS/Cell - bontatlan - 1 év Apple garancia
- Apple Watch Series 11 Alu 42 mm GPS/Cell - bontatlan - 1 év Apple garancia
- REFURBISHED - DELL Performance Dock WD19DCS (210-AZBN)
- GYÖNYÖRŰ iPhone 12 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3438, 94% Akkumulátor
- HIBÁTLAN iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3388
- Geforce GTX 1050, 1050 Ti, 1060, 1650, 1660 - GT 1030 - Low profile is (LP)
- 10 GB-os RTX 3080 OEM
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest