- Samsung Galaxy A55 - új év, régi stratégia
- Honor 200 Pro - mobilportré
- One mobilszolgáltatások
- iPhone topik
- Mobil flották
- Samsung Galaxy S21 FE 5G - utóirat
- Ilyen lesz a Fairphone 6
- Android alkalmazások - szoftver kibeszélő topik
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Karaktere biztos lesz az első Nothing fejhallgatónak
Új hozzászólás Aktív témák
-
proci985
MODERÁTOR
válasz
szervizeszso #8708 üzenetére
simán procedurális logikával (loopok és if/else elágazások).
-
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.
-
proci985
MODERÁTOR
válasz
ToMmY_hun #8687 üzenetére
Azert vannak ennek elonyei. Jelenleg egy projekten Java8at hasznalok egy feladatra, viszont kulso processkent C programokat hivogatok. A C programok egy resze felig obskurus es a 80as evekben irtak oket. Hat igy a 100soros C kodnal eroteljesen anyazok, hogy:
- mit ir ki
- mi a feneert van hardcodeolva pl fix 13ra az osszes forloop?Termeszetesen hosszra vannak optimizalva szoval egy 100soros programhoz kepest eleg sok mindent csinalnak. Dokumentacio meg izebize.
Ugyanugy, en meg emlekszem a Turbo Pascalra meg a Borland Cre mint fejlesztoi kornyezetekre, valoszinuleg sikitofraszt kapnek ha az ido nagyreszeben abban kene dolgoznom. Meg internet nelkul. De minimum erezhetoen csokkenne a produktivitasom.
-
proci985
MODERÁTOR
ha veletlenul kulfoldieknek kene eladni a kodbazist / felvasarlas van akkor lehet az egeszre refactort tolni. ha fel kell venni kulfoldi kollegat aki nem tud magyarul mert kell a kompetencia akkor megint baj van. ahol dolgozom jelenleg majdnem 50% a kulfoldiek aranya, meetingeken az angol gyakorlatilag de facto hivatalos nyelvve lepett elo, kaveszunet valtozo (helyi nyelvet jellemzoen a frissen atrekrutaltak meg nem tudjak).
plusz egy nyelven jellemzoen egyszerubb egyszerre gondolkodni, mint bekeverni meg egyet.
emellett jellemzoen referencek es forumok mind angolul vannak, tehat informaciokereses miatt is kritikus az angol.
-
proci985
MODERÁTOR
válasz
smallmer #8673 üzenetére
nem párhuzamosan futnak a szálaim, mert a run metódusom törzse szinkronizált blokkban van
igen, ez az amit mondtam korabban.akkor szerintem most nyisd ki az eloadast / konyvet es nezd vegig a potencialis szinkronizacios mechanizmusokat.
Javaban van egy csomo beepitett megoldas a problemara, pl explicit mutual exclusion, lock, monitor. ha az egyenleg static es eleg ha egyszerre egy thread tartja a resourcet akkor van keyword szintu megoldas is.
de tenyleg nezd meg az elmeleti hatteret mert anelkul nem fogod megerteni.
Gyuri16: gondolom elso beadas a targybol es nem akarjak komplikalni OOval a helyzetet.
-
proci985
MODERÁTOR
-
proci985
MODERÁTOR
válasz
Gyuri16 #8662 üzenetére
minden szalnak kolon egyenlege van, nem ugyanahhoz a valtozohoz fernek hozza
ez nem tul szep es nem is effektiv: synchronized (Szalak.class)a tanár helyében én emiatt simán visszadobnám az egészet külön-külön is (nincs jelentősége a szinkronizációnak / a kritikus szakaszok védelme nem megfelelő), nem hogy a kettőt kombinálva. főleg javában, ahol van kismillió lehetőség szinkronizációra.
és akkor arról még nem beszéltünk, hogy miért használna bárki is valaha magyar változóneveket (bár ez mondjuk a feladat szövegétől függően még nem lesz explicit újrabeadás).
-
proci985
MODERÁTOR
-
proci985
MODERÁTOR
használ valaki virtuális gépben (ubuntu@VMware) eclipset? hány szálat/mennyi memóriát érdemes neki adni?
fizikailag négy magom és 8 giga ramom van, jelenleg egy mag és giga ram dedikálással. szerintem két (adott esetben három) magot és olyan 2-4giga dedikáltat tudok neki adni, ha kell (win7 x64 alapon van a rendszer).
van valakinek tapasztalata hasonló környezettel? (ennek a megoldásnak az előnye, hogy a teljes fejlesztői környezet felrakható egy pendrivera és hurcolható)
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Apple MacBook Air M2 8/256 (GARANCIÁS!!! 2026.09.18.)
- Acer Nitro AN515-57 15.6" FHD IPS i5-11400H RTX 3060 16GB DDR4 512GB NVMe gar
- HP core i5-ös fémházas Folio 9470m kifogástalan állapotban!! AkciÓÓ!
- A legolcsóbb!!! Dell Latitude 6. gen. core i5-ös notebook olcsón!!!! AkciÓÓ!
- Olcsó Laptop! Dell Latitude 7280. I5 7300U / 8GB DDR4 / 256GB SSD
- Egyedi ékszerdobozka
- 123 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 (48 hónap garancia!)
- LG 55G4 - 55" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
- ÚJ Lenovo Legion Pro 5 16IRX9 - 16" WQXGA 165Hz - i5 14500HX - 32GB - 1TB - RTX 4060 - 3 év garancia
- Apple iPhone 12 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged