Új hozzászólás Aktív témák
-
Taoharcos
aktív tag
válasz
Csaby25 #11648 üzenetére
Szia.
[SanFranciscobol Jottem]
[Java Brains]
[Amigoscode]
így hirtelen. -
Drizzt
nagyúr
-
n00b
újonc
válasz
Csaby25 #11551 üzenetére
Mi a célod a Java-val?
Ha dolgozni akarsz a területen, akkor ne csak sima programozási feladatokat gyakorolj. Az csak a jéghegy csúcsa. Írj vállalati környezetben használható dolgokat, pl. webservice-t, javas SQL lekérést stb. Ha már jól mennek az alapok, megtanulhatsz valamilyen frameworköt is, pl. Springet. Nekem pl. az egyik gyengém, hogy csak a core java-t ismerem. (Igaz már nem vagyok olyan n00b, mint 5 éve, amikor ezt a profilt csináltam.)
Java-s álláskeresésben már komoly tapasztalatom van. Legutóbb 8 nap alatt találtam állást. Ha gondolod, írhatsz privátban.
-
Sirpi
senior tag
válasz
Csaby25 #11566 üzenetére
Én mind a két implementációt optimalizálnám.
Az elsőnél az a gond, hogy így baromi lassú, F(n)-t pont F(n) időben fogja kiszámolni, tehát lineáris helyett exponenciális lesz a futásidő. Ezen a már kiszámolt értékek eltárolásával lehet segíteni. Próbáld nagyobb értékkel futtatni, azt hiszem, az int-be 44-ig nem csordul túl, de ha átírod long-ra, akkor 89-ig próbálkozhatsz, azt pedig már lehetetlen kivárni.
A másodiknál pedig felesleges lefoglalni egy teljes tömböt, elég tudni mindig a két utolsó értéket:
if (n <= 1)
return n;
int a = 0;
int b = 1;
for (int i = 2; i <= n; i++) {
int c = a + b;
a = b;
b = c;
}
return b;
-
disy68
aktív tag
válasz
Csaby25 #11564 üzenetére
Akkor sanszosan a szokásos fizzbuzz/fibonacci jellegű feladatokra lehet számítani meg ilyen oldd meg iterációval/rekurzióval. Ha esetleg ennél több energiát fektetnének a dologba, akkor valami saját példa, amiből esetleg kiderül, hogy hogyan állsz hozzá egy feladathoz, hogyan gondolkodsz, ilyesmi.
Én annyit tanácsolok, hogy gondolkodj hangosan és ha a feladatnál értelmezhető, akkor kérj egy teszt esetet (bemenet-kimenet). És hajrá
-
Drizzt
nagyúr
válasz
Csaby25 #11536 üzenetére
Az elkészülő - feltétlezem JAR-ban is benne van? Ha igen, ott, ahol lennie kellene?
Ha nincs felülírva, akkor a /static, vagy /public mappában kellene lennie a classpathon futási időben.
Ha nincs ott, akkor maven, vagy gradle setup lesz a probléma. Vagy ha esetleg csak IDE-ben nem megy java -cp-s futtatással, akkor az IDE-ben kell megkeresni azt, hogy miért nem olyan classpathot rak össze futtatáskor, mint amit kellene. -
Taoharcos
aktív tag
válasz
Csaby25 #11528 üzenetére
Szia!
A resources-ba schema.sql-ként vagy data.sql-ként legyen és akkor létrejön. De a schema.sql a jobb megoldás.
A pom.xml-ben ez is benne van:<dependency>
?
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
San Franciscoból jöttem?
Üdv, Zoli -
Drizzt
nagyúr
válasz
Csaby25 #11464 üzenetére
Meg kell mondani az alkalmazasnak inditaskor, hogy melyik profilokat hasznalja. Application.properties by default mindig beolvasasra kerul, a - dev-hez aktivalni krll a dev profile-et. Asszem ha jar-kent inditod, akkor - Dspring.profiles.active=dev a megfleelo kulcsszo, de fejbol irom, lehet rossz.
-
-
Szmeby
tag
válasz
Csaby25 #11227 üzenetére
Én ezzel úgy vagyok, hogy mivel a technológiák úgyis jönnek-mennek, nettó időpazarlásnak érzem bármilyen céleszköz megtanulását.
A java gyermekkorában csak az awt eszközkészlet állt rendelkezésre, hogy az ember desktop guit gyártson jávában, de elég lowlevel volt, platformonként eltért a végeredmény. Aztán évek múltán ráhúzták a swinget, amivel már egészen egységes látványt lehetett rajzolni és elég sokáig életben is maradt ez az eszköz. Bár az awt ismeretek jól jöttek, de azért kellett új kocepciókat újratanulni. Majd néhány (sok) évvel ezelőtt valamilyen megfontolásból - feltételezem, modernizálási célzattal -, készítettek egy másik eszközt desktop gui rajzoláshoz, elnevezték javafx-nek, és ugyanazzal a lendülettel deprecated is lett a swing. Nyilván teljesen más koncepciók mentén készült, így megint kellett rengeteget tanulni. Nem mintha ítélkeznék e fölött, mert egyikhez sem volt túl sok közöm. Aztán néhány (már nem olyan sok) évvel ezelőtt azt mondták, hogy oké, most már a javafx-et sem támogatjuk, halott világ a desktop gui világa, a web a jövő.
És ez csak egy példa a sok közül, egyszerűen nem lehet mindent is életben tartani, így végső soron azok lesznek a túlélők, akik általános megoldást tudnak nyújtani számtalan problémára... vagy ha képesek a készítőik végtelen ideig fenntartani a hype-ot az eszközük körül, esetleg végtelen pénzzel megtámogatva nem jelent nekik gondot a támogatás finanszírozása.A lényeg, amit ki akartam hozni mindebből, hogy desktop gui építésre való eszközzel nem igazán lehet webappot csinálni. Webapp ismeretekkel viszont bármit készíthetek, ami elfut egy böngészőben, és azt a böngészőt akár egy desktopon is lehet üzemeltetni. Van overhead, igen, nem optimális megoldás, igen. Fejlesztőként viszont nekem fontosabb, hogy milyen gyorsan avul el a tudásom. Szívesen tanulok meg egzotikumokat is, ha az feltétlenül szükséges egy munka elvégzéséhez. Már csak azért is, mert adhat egy másfajta nézőpontot, amit a mainstream-től sose kapnék meg. De attól még nem feltétlenül szívatom magam olyan felesleges dolgok megtanulásával, amelyekre néhány éven belül várhatóan csak egy szűk rétegnek lesz igénye.
Annak a megítélését pedig, hogy a desktop mennyire halott és a javafx mennyire felesleges, másra bízom, mert nem áll szándékomban a saját jövőképemet / ízlésemet másra erőltetni. Mindenki döntse el maga, miben látja a jövőt. A zsákutcákat úgy általában én elkerülném. Pláne akkor, ha az embernek erősen korlátozott a rendelkezésre álló ideje. Még egy ok, hogy fókuszáltan, a lehető legrövidebb idő alatt a lehető legszéleskörűbb ismeretetet szedje fel.
Aki meg szeret kockáztatni, az kinézhet magának egy ritka egzotikumot, arra építve, hogy senki sem tanulja, mert mindenki utálja, igény viszont van rá (elavult banki mainframe-en futó szoftverek megvannak?), és majd jó zsíros fizetést lehet elkérni a melóért. Annyira egyénfüggő, hogy mi a jó választás, ki mit szeret.
--- szerk.: Az android / ios ugyanez az általános vs céleszköz téma pepitában. Egy androidon is van böngésző, ergo egy webapp azon is működik, és zéró android ismeret felszedése kell hozzá.
-
-
Szmeby
tag
válasz
Csaby25 #11220 üzenetére
Minimális. Inkább java és javafx tudás szükséges hozzá.
Javafx-ben is van lehetőség xml-ben felépíteni a gui-t (és abban is ajánlják), de a html ismeretekből itt szinte semmi sem hasznosítható. Legfeljebb a gondolkodásmód.
A css inkább lehet hasznodra, azt támogatja, de ebből is inkább az alap, standard megoldások. Egy desktop app kinézetét nyilván nem befolyásolják a böngészőspecifikus megoldások. Ellenben van benne egy rakás javafx-specifikus megoldás.Bár egy javafx alkalmazáson belül hozhatsz létre WebView-t, ami egy böngészőt emulál, és abba dobhatsz be html, sőt javascript kódot, de ez marginális fícsör. Aki javafx-et használ nem azért teszi, hogy böngészőt futtasson a hasában. Arra ott a natív böngésző.
-
skoda12
aktív tag
-
Taoharcos
aktív tag
válasz
Csaby25 #10995 üzenetére
Nem túl szép, de talán így:
values.forEach(value -> {
Student studentInner = student;
studentInner = populateStudent(value);
});
values.forEach(value -> {
Mark markInner = mark;
markInner = populateMark(value);
});
Esetleg még az elején a Student, Subject, Mark -t inicializálni; -
floatr
veterán
-
disy68
aktív tag
válasz
Csaby25 #10908 üzenetére
Írnak többmindent is, de ez a válasz, ahol a generált kódot megnézte a válaszoló.
A String osztály java alatt immutable, azaz értékadás után az objektum értéke nem változtatható. E miatt a String összefűzés
String concat = "first" + " " + "last";
4 String objektum létrejöttét jelentené.Erre rakták bele java 8 óta a fordítóba, hogy ahol ilyen található, azt optimalizálja. A String összefűzéseket helyettesíti StringBuilder-rel, ezért nem fog létrejönni annyi String objektum.
Vannak még egyéb String-ekkel kapcsolatos optimalizációk, amiket a fordító/futtató környezet csinál/alkalmaz, pl. a válaszokban említett internal pool, ahol kvázi cache-elve vannak String objektum példányok, java 8-as updattel jött a G1 GC-be, hogy tud deduplikálni String-eket. Java 9-ben pedig jött egy olyan, hogy azokat a szövegeket, amiket lehet, ISO-8859-1/Latin-1 kódolással tárolja a JVM UTF-16 helyett (1 vs 2 byte/karakter).
>javap -c Test Compiled from "Test.java" public java.lang.String makinStrings(); Code: 0: ldc #5; //String Fred 2: astore_1 3: new #6; //class java/lang/StringBuilder 6: dup 7: invokespecial #7; //Method java/lang/StringBuilder."<init>":()V 10: aload_1 11: invokevirtual #8; //Method java/lang/StringBuilder.append: (Ljava/lang/String;)Ljava/lang/StringBuilder; 14: ldc #9; //String 47 16: invokevirtual #8; //Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 19: invokevirtual #10; //Method java/lang/StringBuilder.toString:()Ljava/lang/String; 22: astore_1 23: aload_1 24: iconst_2 25: iconst_5 26: invokevirtual #11; //Method java/lang/String.substring:(II)Ljava/lang/String; 29: astore_1 30: aload_1 31: invokevirtual #12; //Method java/lang/String.toUpperCase:()Ljava/lang/String; 34: astore_1 35: aload_1 36: invokevirtual #13; //Method java/lang/String.toString:()Ljava/lang/String; 39: areturn
-
Zsoxx
senior tag
válasz
Csaby25 #10837 üzenetére
JDK 11 óta nincs benne a JavaFX.
https://youtu.be/nbn_tjHBRV8 -
Csaby25
őstag
válasz
Csaby25 #10836 üzenetére
Innen kell letölteni? [link]
Ebben nincs jfxrt.jar fájl, tudtommal ez kell és a jfxswt.jar
Ha nem adom meg a jfxrt.jar-t nem is tudja importálni a javafx-et.
Telepítettem a JavaFX Scene Builder 2.0-t, ebben van jfxrt.jar. Megadtam neki, így már importálja, kiterjesztem a Application osztályt, futáskor hibát ad:
"Error: Could not find or load main class TestFX
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application"Nem tudtam megnyitni az Application.class forrástfájlt, nem találta. Megadtam neki az src.zip forrást ami a javafx-sdk-13.0.1-ban található, amit innen szedtem le: https://openjfx.io/
Most mar megnyitja forrástfájlt, de ugyanez a hiba maradt. Valami ötlet? Mindez Eclipse 2019-12-ben....
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Asus ROG Phone 9 Pro 16GB/512GB - 3 ÉV GARANCIA - MAKULÁTLAN!
- Thrustmaster TS -Pc bázis
- Eladó egy Asus g751j Dobozzal gyári tőltővel
- HP 13"FullHD IPS,i5 8265u(8x3,9Ghz)Villágító billentyűzet,8GB Ram,256-512SSD,jó akku,Szép állapot
- Újszerű Asus,játékra is,17,3"FullHD,i7 8550(8X4Ghz)GT920mx 2/4GB DDR5 VGA16GB RAM,SSD+HDD,
- LG 48GQ900-B - 48" OLED - 4K 3840x2160 - 138Hz & 0.1ms - G-Sync - FreeSync - HDMI 2.1
- BESZÁMÍTÁS!Gigabyte B650M R7 7800X3D 64GB DDR5 1TB SSD RTX 3080Ti 12GB Corsair 4000D Airflow TG 750W
- BESZÁMÍTÁS! ASUS STRIX B650E-E R7 7700 64GB DDR5 1TB SSD RTX 3080 10GB Thermaltake Ceres 500 850W
- Steam, EA, Ubisoft és GoG játékkulcsok, illetve Game Pass kedvező áron, egyenesen a kiadóktól!
- Dell Latitude 8-11. gen i5, i7, 2-in-1 szinte minden típus csalódásmentes, jó ár, garancia
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest