- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
PandaMonium
őstag
Szia.
Magyar nyelvű tananyag (bármifajta) programozásról csak régi verziókból, és/vagy silány minőségben van.
Persze van 1-2 gyöngyszem és pár kivétel, de én a helyedben az angol könyvek között nézelődnék.
Itt van pár jó: The Well-Grounded Java Developer, Java Concurrency in Practice (nem mai darab, de még mindig jó), Effective Java vagy maga az Oracle-től Java: A Beginner's Guide.Kezdőknek igazából a Beginner's Guide könyvet javasolnám utána pedig az Effective Java-t.
Ha ezeken túl vagy és érdekelne a mély víz akkor jöhet a Concurrency in Practice és a Well Grounded Java Developer.Számomra érthetetlen, hogy mit tanítanak 2 éven át C-ből az egyetemeken 2014-ben, fél-, max. 1 év el kéne, hogy menjen az alapokkal de utána már illene OOP-t tanítaniuk valami modernebb nyelvel.

-
PandaMonium
őstag
Én írtam először, hogy a végén kiszedi az elemeket, Aethelstone is tőlem vette szerintem;
De ezek szerint hülyeség, és bocsánat ha bárkit is megvezettem, így jár az ember, ha elhiszi azt amit YouTube-on hall, meg netes tutorialokban olvas utánanézés nélkül.
-
PandaMonium
őstag
Javaslom olvass utána, hogy működik Java-ban a multithreading.
Abból amit eddig bemásoltál nem egyértelmű mi lehet a gond okozója, de lehet, hogy egy sima synchronize megoldja, vagy valami hasonlóan triviális megoldás.
-
PandaMonium
őstag
Üdv.
Nem túl pontos a specifikáció úgyhogy nem hiszem, hogy nagyon tudnánk segíteni.
De ha esetleg elárulod, hogy mi az ami nem megy ebből akkor abban már inkább.
-
PandaMonium
őstag
Az x.keySet() -el csupán a kulcsokról kapsz egy Set-et, nem pedig a teljes kulcs-érték pár listáról.
A teljes kulcs-érték pár készletet az x.entrySet() metódussal tudod lekérni és utána végig tudsz rajta menni egy for/foreach loop-al valahogy így:
for(Entry<String, Integer> e : x.entrySet()){
if(e.getValue() == 0){
String kulcs = e.getKey();
// Itt csinálj valamit a kulccsal
}
}Személy szerint én viszont az iterátorokat javasolnám, ugyanis ha egy entry set-en vagy listán keresztül mész épp egy foreach loop-al ConcurrentModificationException-t ha törölni próbálsz a listából egy elemet. Ilyen szempontból jók az iterátorok amelyek képesek megjelölni az objektumokat törlésre és amint vége az iterálásnak az elemeket valóban ki is törli.
Ez a fajta megoldás sem sokkal bonyolultabb:
Iterator<Entry<String, Integer>> iterator = x.entrySet().iterator();
while(iterator.hasNext()){
Entry<String, Integer> e = iterator.next();
if(e.getValue() == 0){
// Példa a törlésre
iterator.remove();
}
} -
PandaMonium
őstag
A játékfejlesztés önmagában is egy nagyon-nagyon komoly téma. Ha érdekel egy könnyen használható API ami mind Desktopon, mind Androidon fut és atom stabil vess egy pillantást a LibGDX-re, sok tutorial van hozzá a neten.
Csak az appletokat felejtsd el, tutorial ide vagy oda (amúgy se hiszem, hogy túl komoly oktatóanyag lehet az ahol még ilyesmit használnak).
-
PandaMonium
őstag
Csak, hogy értsd a felháborodás okát: Appleteket már szinte senki nem használ mert tényleg kb. a kihalt technológia szinonimája. Ha hasonló web technológia kell akkor HTML5 vagy Flash. Ha pedig a Java alapokat akarod elsajátítani arra egy IDE (legfőképpen Eclipse vagy Netbeans) az ajánlott, ahol kényelmesen tudod futtatni, debugolni, refactorolni, stb. stb. a projectjeidet.
-
PandaMonium
őstag
Ez eddig oké, ez majdnem azonos a ClassLoader "getResourceAsStream()" metódusával.
Az én kérdésem leegyszerűsítve az, hogy ha megvan az URL ("getResource()") vagy az InputStream ("getResourceAsStream()") egy JAR -on belüli mappához akkor utána hogyan tudom a mappát a tartalmával együtt átmásolni a JAR -on kívülre (ergo kicsomagolni).
-
PandaMonium
őstag
Sziasztok.
Egy nem igazán hétköznapi problémám van és nem nagyon tudom hogy oldjam meg.
Épp egy API -n dolgozom aminek vannak C-ben írt fáljai amiket el kell érnie és JNI -n keresztül futtatnia, ám ezek a fájlok bele vannak csomagolva a JAR-ba különböző könyvtárakba, hogy 1 fájlból álljon az API és ne kelljen mellé mindenfélét másolgatni. A bibi ott van, hogy hiába akarok ClassLoader-t használni, hogy a JAR-on belül elérje a JNI a C fájlokat, állandóan exceptiont dobál, mondván, hogy neki abszolút elérési út kell (pedig én azt adok meg neki, ellenőriztem).
Egy kis Google keresgélés után kiderült, hogy JAR -on belül nem szereti futtatni a dolgokat a JNI így javasolt kicsomagolni a szükséges fájlokat a JAR-ból és úgy meghívni őket. A kérdés pedig itt jön: Hogy tudok egész mappákat a tartalmukkal együtt kicsomagolni a JAR-ból ClassLoader-rel (vagy valami mással)?Előre is köszönök minden segítséget.

-
PandaMonium
őstag
Concurrency -ben nem nagyon vagyok otthon, de mivel más még nem válaszolt igyekszem segíteni, aztán majd jönnek a profik és megmondják, hogy kéne rendesen: Szerintem csinálj egy singletont ami a thread workereket tárolja és a singletonon keresztül letudod kérni az egyes workereket, a változóikat pedig egy egyszerű getter-el megszerzed.

-
PandaMonium
őstag
-
PandaMonium
őstag
Csak egy kis mellékes infó, kiegészítés képpen Karma válaszához:
Java-ban sok módon lehet XML-t parse-olni, pontosabban én 3 -at ismerek: DOM, SAX, StAX.
Amit most Te csinálsz az a DOM parse-olás. Én személy szerint a SAX-ot preferálom, pont azért mert akkor nem kell a NodeList-ekkel bajlódni, egyszerűbb lesz az egész folyamat. Ha érdekelne a dolog itt egy egész pofás tutorial, hogy melyiket, hogy kell csinálni: [link]
-
PandaMonium
őstag
Én is kerestem mindenfelé de nem találtam átfogó tutorialt sehol. Egyébként Swing-en belül szerintem csak a GridBagLayout-al érdemes foglalkozni, ezzel szinte bármit összelehet rakni, viszont van olyan layout is Swingben amire ötletem sincs, hogy mikor lenne hasznos.
Talán még az Oracle leírása a legnormálisabb. -
PandaMonium
őstag
"Vagy van valami jobb cucc?"
Igen, ha megtanulod kézzel megírni a GUI-t.
Amúgy viccen kívül, sokkal nagyobb irányítást ad az egész fölött ha megérted mi zajlik a háttérban és a magad szájíze szerint írod, rendezed. -
PandaMonium
őstag
Nem igazán értem mit csinálsz. Azt mondod, hogy az ingatlan osztályból származtatod a lakás osztályt, de akkor miért állítod statikusra az ingatlan osztály LinkedHashSet-jét? Elég volna protected/public-ra írni az addRezsi(...) metódust és látná a lakás is, akkor pedig a konstruktorban csak annyit kéne csinálnod, hogy addRezsi(...). Ha külön-külön ingatlanok és lakások léteznek akkor miért statikus a listád és a metódusod, hogy fogod visszakeresni, hogy melyik ingatlanhoz melyik rezsi tartozik?
Akárhogy is, ez így nem lesz jó.
Tekintve, hogy ma nagyon ráérek elkészítettem a programot, nálam tökéletesen fut:
Program.java
Ingatlan.java
Lakas.java
Rezsi.javaNem túl gyönyörű a kód, tudom, de legalább működik.

Szerk.: (#4652) evilskati - Ehhhh, ha nem felejtettem volna el frissíteni az oldalt...
Amúgy mi volt a megoldás? -
PandaMonium
őstag
Az ilyen feladatok nem bonyolultak, nem bántásból, de ha kikerülsz a képzésről és ennyire lyukacsos lesz a tudásod (főleg ha mások oldják meg helyetted a beadandókat) elég nehéz lesz elhelyezkedned. Kódrészletekben, logikai feladatok/problémák megoldásában, algoritmusokban persze mindig szívesen segítünk, de jelen esetben a saját célod volna, hogy megértsd. Youtube-on vannak jó kis tutorial videók, elég hamar meg lehet tanulni ezeket. Ha pedig mégis a topiknál maradnál érdemes legalább PasteBin-t használnod, hogy átlássuk a kódod.

-
PandaMonium
őstag
Nem beleduma, csak szólnék, hogy ha nem muszáj vektografikus képeket használni akkor érdemes bitmapokkal dolgozni, sokkal kevesebb fejfájást okoznak az embernek és a betöltési/renderelési idő is jóval alacsonyabb ha ez számít. Csak kíváncsiságból, meg szabad tudni mi a projekt lényege (játék, kisfilm, vagy csak tesztelgetés)?

-
PandaMonium
őstag
Egyébként, hogy témára térjünk, ami fontos lehet: Bizonyos számú aknát (ez akár lehet tartomány is, pl. 15-20 között) helyezz el csupán a képernyőn, tehát véletlenül se legyen majdnem mindenhol akna. Az aknák számát esetleg nehézségi szintenként (ha van ilyen) kedved szerint növelheted. Egy sima random funkció elég ide, de ha úgy érzed, hogy szeretnél valami újat tanulni próbálj ki valami zajt, pl. perlin noise vagy simplex noise. Összességében az egész projekt nem bonyolult ha nem akarod cifrázni, egy délután alatt (inkább 2-3 óra alatt) simán megoldható. Miben tervezed amúgy kivitelezni a user interface-t? Sima konzolba printelés, swing, vagy android?

-
PandaMonium
őstag
Ebben van némi igazság, csak hogy ez csak akkor érne valamit ha az algoritmust (vagy pszeudokódot) is te találnád ki, vezetnéd le magadnak. Abból, hogy csak gépelsz nem tanulsz semmit, tetszik tudni a programozás lényege a problémamegoldás, nem a billentyűzetkoptatás.

-
PandaMonium
őstag
JInput -al is lehet megoldható amit szeretnél, de nem vagyok benne biztos. Nézz utána picit.

-
PandaMonium
őstag
-
PandaMonium
őstag
Szia.
- Ahhoz, hogy ilyet tudj csinálni az alap Java nem elég, kell valami API ami natívan kommunikál az OS-el, mert sima Java-ban csak akkor kapsz KeyEvent-et ha focusolva van az ablakod.
- Igen, a Java képes buborék üzenetek dobására, méghozzá úgy, hogy TrayIcon-t csinálsz az alkalmazásodnak és a TrayIcon .displayMessage(...) funkcióját használod.
-
PandaMonium
őstag
-
PandaMonium
őstag
Szerintem a probléma nem azzal volt, hogy kérdeztél hanem azzal, hogy mikor választ kaptál a kérdésedre rájuk bíztad az egészet. A JAR file védelemmel van ellátva, ami nyilván nem viccből lett rárakva és szépen szolgálja a célját. Az, hogy "szóljatok ha majd megoldottátok" elég flegma dolog, nem megbántani akarlak de senkinek nem hobbija a fórumon szerintem mások számára védelemmel ellátott fájlok feltörése (nem mint ha a brute force olyan gyors és egyszerű folyamat volna, mással pedig nem hiszem, hogy meg lehetne szerezni fájlhoz tartozó kulcspárt).

-
PandaMonium
őstag
-
PandaMonium
őstag
Sziasztok.
Tudtok javasolni akár online, akár könyv formában olyan Java leírást ami a konkurenciáról szól részletesen? Érdekelne, hogy bizonyos feladatokat, hogy lehetne megoldani multi-threadelve.
A Java Concurrency In Practice már felkeltette a figyelmemet, de nem tudom mennyire lehet friss anyag.
Előre is köszönet.
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- LEGO klub
- Milyen TV-t vegyek?
- A Vivo X300 FE is megérkezett
- Megújult mobilos felület, fórumos ráncfelvarrás a PROHARDVER! lapcsaládon
- S.T.A.L.K.E.R. Clear Sky
- NBA és kosárlabda topic
- Szívós, szép és kitartó az új OnePlus óra
- Konteó topic
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Battlefield 6
- További aktív témák...
- LG UltraGear 45GX90SA-B OLED Monitor! 3440x1440 / 240Hz / 0.03ms / FreeSync / G-Sync! BeszámitOK
- iPhone 15 Pro Max 256GB 100% (1év Garancia)
- Lenovo T14 Gen3 I5 1245U Refurbished - Garancia
- Intel Core i9-10850K 10-Core 3.6GHz LGA1200 (20M Cache, up to 5.20 GHz)
- 27% - MSI RX 6650 XT GAMING X 8GB GDDR6 Videokártya!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




Talán még az
Akárhogy is, ez így nem lesz jó.

