Új hozzászólás Aktív témák
-
Aethelstone
addikt
válasz
PumpkinSeed #5997 üzenetére
Tervezési minta. Egyfajta kényszer, hogy a class elnevezések egységesek legyenek.
Viszont egy class-t tartalmaző fájlban deklarálhatsz egy másik class-t, aminek lehet eltérő neve. Mondjuk szerintem full antipattern, de kinek a pap.....
-
Aethelstone
addikt
Ez mondjuk nem feltétlenül igaz.
Maximum annyi, hogy a különféle tiszta JS frameworkok alapvetően HTML alapúak és a JS csak amolyan kiegészítő. Dinamikus formkezelés, eventek, stb.
A GWT meg full JS, tehát a HTML oldalak is JS kóddal épülnek fel és kerülnek a DOM-ba. Lehet deklaratíve is kódolni, lásd UIBinder, de az elkészült kód az ugyanaz lesz.
A nem feltétlenült úgy értem, hogy pl. JQuery vagy AngularJS segítségével is lehet olyan kódot írni, amiben egy darab HTML nincs, de nem ez a design pattern ezekben.
A legnagyobb előnye egyébként a GWT-nek az említett JS framework halmazzal szemben, hogy JAVA. Minden design pattern, stb. használható. Nekem sosem volrt kedvem JS design patterneket megtanulni
-
Aethelstone
addikt
Közvetlenül nem.
Ha valami hákolni akarsz, akkor vagy osztályt extendálsz vagy natív JS kódot is tudsz írni a Java forrásba!!!!!!, de azt is a GWT fogja fordítani, ergó a végeredmény mindig egy menedzselt, a lehetőségekhez képest optimális kód lesz.
Végső esetben meg előveszed a GWT forrást, ami opensource és közvetlenül teszed, amit tenned kell. Viszont a végeredmény ismét csak menedzselt lesz. Optimális nem biztos, ha rosszul nyúlsz hozzá.
Kb. 3 éve GWT-zek. Ezidőalatt komoly projektek fordultak meg a kezem között, kb. 2 alkalommal kellett natív JS kódot írnom a forrásba. Az egyik egy SHA1 algoritmus volt, a másik pedig a window.open újragondolása, mert a GWT-s Window.open() implementáció nem ad vissza handlert. Kb. 5 sor volt
-
Aethelstone
addikt
válasz
Cathfaern #5970 üzenetére
Azt írtam, hogy kvázi vastagkliens. Tehát funkciógazdag, mint egy vastagkliens, mégis böngészőben fut, tehát működik a központi menedzsment.
A JS-t manapság meg egészen egyszerűen nem tudod kikerülni, ha böngésző közelébe kerülsz. GWT-vel annyival jobb a helyzet, hogy nem kell a JS hülyeségeivel xopnod. Gyengén típusosság és társai
Plusz használhatod az összes Java design patternt, tesztelést(junit), refaktort, ami JS-ben egészen egyszerűen nem működik normálisan.
-
Aethelstone
addikt
válasz
Cathfaern #5967 üzenetére
Az lenne a cáfolat, hogy a GWT nem általános honlapra való.
A GWT böngészőben futó kvázi vastagkliens alkalmazások fejlesztésére való. Ahol is alapvetően nincs napi többezres látogatottság, nem weboldal, nem portál, viszont fontos, hogy a prezentációs réteg kódja könnyen refaktorálható, tesztelhető, karbantartható legyen. Egy Java fejlesztő számára is. Admin alkalmazások főleg.
Ráadásul a GWT egy eléggé kiforrott technológia, ergó több, mint valószínű, hogy jobb lesz a generált kód minősége, sebessége, mint amit egy mezei fejlesztő valaha képes lesz megalkotni.
Belenyúlni? Nem kell belenyúlni. Ha meg bele kell, akkor szabvány, GWT-s eszközökkel nyúl bele az ember és nem a generált JS kódon gányol
-
Aethelstone
addikt
-
Aethelstone
addikt
Pletyka az egy dolog. A hivatalos roadmap szerint meg már a 3.0 jön. Főleg úgy, hogy már nem a Google hostolja, hanem opensource community áll mögötte.
Másrészt meg a GWT maga egy kvázi szabvány. Rengeteg termék épül rá. ExtGWT, SmartGWT, Vaadin, stb.
Harmadrészt pedig miért kellene bármiféle Java szabványhoz kapcsolódnia közvetlenül? Van egy sztenderd GWT-RPC benne, ami Java függő, de XML-RPC, meg szabvány HTTP kérések küldhetőek belőle, ergó a szerver oldalnak mégcsak nem is kell Java-nak lennie. (Ami JSP, JSF esetén nem igazán mondható el)
A GWT nem Java-s technológia, hanem egy olyan eszköz, aminek segítségével a Java forráskódból JavaScript készül.
Nem akarok a GWT-nek reklámot csinálni, mindenki azt használ, amit akar.
-
Aethelstone
addikt
Jó, vissza lehet menni Ádám Évához, de servletnél jön a HTTP/HTTPS, a request paraméter, GET/POST. Aki Swingezett, annak lehet, hogy ezek sem triviálisak. Másrészt EE-hez nem kell JSF. Azt a részt át lehet ugorni. A SessionBean, MessageDrivenBean, Entity a lényeg. Első körben. Aztán alkalmazásszerver alapok, stb.
-
Aethelstone
addikt
válasz
plaschil #5948 üzenetére
Szerintem http://docs.oracle.com/javaee/7/tutorial/doc/home.htm a legjobb. Egyszerű, közérthető, online. Nekem sokat segített annak idején.
-
Aethelstone
addikt
A Pascal tanulni nagyon jó.
-
-
Aethelstone
addikt
válasz
WonderCSabo #5938 üzenetére
Nincs meghatározva, hogy Java kezdő
Egyébként igazad van, néha én is úgy érzem, hogy az ePenis mérete fontosabb, mint a Java maga.
-
Aethelstone
addikt
válasz
fordfairlane #5932 üzenetére
Két if-et nehéz objektum-orientáltan megvalósítani
-
Aethelstone
addikt
Ha még kezdő Java-s vagy, akkor hiába írnánk bármit, amit mi használunk
Én a GWT, Spring Core/Security, Hibernate, MySQL/Derby combóra szavaznék, ha nem nagy az alkalmazás. -
Aethelstone
addikt
Nah ilyet sem láttam még eddig
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000007aac80000, 524288, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 524288 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /home/<foo>/dev/lucene/lucene-root/lucene-db/hs_err_pid12425.log -
Aethelstone
addikt
Jah. És amikor az ember bemond egy komolyabb összeget (amit az álláshirdetésben szereplő szükséges ismeretek indokolnak), akkor meg hápognak, hogy de ők ezt nem tudják kitermelni, meg tudom én, hogy nekik mennyibe kerül a munkavállaló? Persze 10 év Java tapasztalat kell, meg minden releváns Java technológiában legyél otthon, meg legyél lojális, napi 10 órában, de ha mindezért benyögsz 500K fölött nettót, akkor eldobják magukat....
-
Aethelstone
addikt
-
Aethelstone
addikt
Ezt az adathordozó részt is kicsit árnyalnám. Vannak olyan frameworkok, ahol a sima DTO funkcionalitáshoz is kellenek a setter/getter metódusok, neadjisten még default konstruktor is. Itt a publikus adattag nem elég.
Nyilván az Általad leírt dolgok, akkor érvényesek, ha az ember magának, magától ír mindenféle szoftvert. Ettől függetlenül +1
-
Aethelstone
addikt
-
Aethelstone
addikt
válasz
zserrbo #5681 üzenetére
A válasz a threadben van:
You need to call setVisible() after adding component! So first add all components. Add the highest level component to the JFrame(JPanel in your case) and the only call setVisible() for the JFrame. No need to call on every component.
Tehát, előbb össze kell rakni a formot, alapból minden elem látható, kivéve a JFrame-t. Elég a végén azt láthatóvá tenni. Ha egy elem valamiért nem látszik, akkor az csak azért lehet, mert nincs vagy rosszul van felpakolva vagy explicit le van tiltva a láthatósága.
-
Aethelstone
addikt
Lényeg a lényeg. Ha az ember mondjuk vizsgára akar felkészülni, akkor egy gyorstalpalós tutorial bőven megteszi. Ha üzletszerűen akar kéjelegni, ebből akar megélni, akkor bizony egy hosszú utazásra kell felkészülni. Fel kell vállani a juniorságot, be kell ülni valahová és bizony soksok hónapot(évet) el kell tölteni profik és feladatok mellett, hogy az ember megismerje az adott programozási nyelvet. És itt nem a szintaktika a fontos, hanem a szívások....
-
Aethelstone
addikt
-
Aethelstone
addikt
válasz
PandaMonium #5580 üzenetére
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.
Egyetértek. A C maximum 2 félévet ér, többet nem. Van az alap utasításkészlet + mutatók 20 PDF oldalon, oszt annyi. Lehet, hogy a kolléga a C++ra gondolt? Nálunk a C/C++ elvitt 3 félévet.
-
Aethelstone
addikt
válasz
Amartus #5553 üzenetére
Nah tutorialt a guglival pillanatok alatt találsz. És sem tudnék mást, csak beírni és a találatokból szemezgetni. Mi a terv? Mit szeretnél csinálni?
Szerk:
Rendes voltam:
http://www.mkyong.com/hibernate/quick-start-maven-hibernate-mysql-example/
http://viralpatel.net/blogs/hibernate-maven-mysql-hello-world-example-xml-mapping/
http://www.technicalkeeda.com/hibernate-tutorial/maven-hibernate/how-to-create-hibernate-application-using-eclipse-and-maven -
Aethelstone
addikt
válasz
Amartus #5551 üzenetére
A Swing nem idejétmúlt és gyakorlatilag semmi köze ahhoz, hogy maven vagy hibernate.
A Swing az egy grafikus framework, amivel vastagklienseket tudsz fejleszetni, desktop alkalmazásokat. A Hibernate pedig egy ORM réteg, ami az alkalmazásod és a DB közötti kommunikációt van hivatva megkönnyíteni. Használható együtt a Swinggel.
A maven meg egy fordító és függőségkezelő keretrendszer. Swinggel IS használható.
-
-
Aethelstone
addikt
Azt hianyolom, ami az abstract fuggveny vgy interface lenyege lenne, hogy ha barki kesobb ujat letrehoz, akkor lassa hogy kotelezo ezt is definialnia.
Ezt úgy hívják, hogy fejlesztői dokumentáció.
Egyébként ha tényleg marhául el akarod bonyolítani, csinálhatsz saját annotációt pl. és azt még példányosítás előtt Reflectionnal tudod vizsgálni....bár a problémát, amit felvetettél, én sem értem 100%-ban. -
Aethelstone
addikt
válasz
plaschil #5500 üzenetére
Erre való pl. a maven, hogy a netről összevadássza. Egyébként szerintem név szerint megvannak a jarok a build pathban, max. fizikailag nincsenek a hivatkozott helyen.
Itt: [link] jó eséllyel megtalálod a hiányzó jarokat. Hacsak nem valami egzotikus helyről szedted őket. Aztán sürgősen térj át valami maven-szerű cuccra
-
Aethelstone
addikt
-
Aethelstone
addikt
Jól van Urak, mea klumpa. Benéztem, forrásként hivatkoztam egy nem megbízható forrásra. Ezért most ne akasszatok fel pls!
-
Aethelstone
addikt
válasz
WonderCSabo #5475 üzenetére
Eh, igazad van. Kontrol nélkül átvettem
Sorry
-
Aethelstone
addikt
válasz
kemkriszt98 #5468 üzenetére
Ha megint előfordul, akkor nincs több ötletem
-
Aethelstone
addikt
válasz
kemkriszt98 #5465 üzenetére
Nem nem...a stacktrace mit mond?
Egyébként Eclipse-ban CTRL+L
-
Aethelstone
addikt
válasz
kemkriszt98 #5463 üzenetére
Egyébként szerintem az a baj, hogy a bullets listád nem szinkronizált. Próbáld meg így:
List<Bullet> bullets = Collections.synchronizedList(new ArrayList<Bullet>());
bullets.add(new Bullet()); -
Aethelstone
addikt
válasz
kemkriszt98 #5463 üzenetére
Pontosan melyik sor dobja?
-
Aethelstone
addikt
válasz
WonderCSabo #5459 üzenetére
Ach so. Köszönöm. Ezekre az aspektusokra sosem gondoltam.
-
Aethelstone
addikt
válasz
WonderCSabo #5455 üzenetére
Ez is igaz, Calendar-os megoldásra gondoltam én is első körben, de mivel Date fordult elő, maradtam annál. Egyébként alap, hogy ha egy mód van rá, akkor Calendar. Minden másra ott a Mastercard (illetve a Date)
-
Aethelstone
addikt
válasz
plaschil #5452 üzenetére
A kolléga által javasolt megoldás jó, de a a new Date(yyyy,MM,dd) mintha deprecated lenne...
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateInString = "2014-01-01";
Date date = sdf.parse(dateInString);És utána jöhet a Level, ahogy a kolléga javasolta, csak a létrehozott dátummal.
-
-
Aethelstone
addikt
válasz
Oppenheimer #5420 üzenetére
Ez egy kiváló poszt. Mivel nincs leírása a topicnak, ezt simán be lehetne tenni
-
Aethelstone
addikt
válasz
Oppenheimer #5423 üzenetére
Egyébként remek megoldás. Mert ha neadjisten lesz egy rendszer, ahol pl. a 1-5 pozitív szám lesz, de az 1+5 negatív, akkor is tökéletes megoldást fog adni
-
Aethelstone
addikt
-
Aethelstone
addikt
válasz
WonderCSabo #5416 üzenetére
Pontosan
Nyilván a Java nem a legjobb választás a real time rendszerekhez. Viszont természetesen megvan a maga helye a világban. Ezt itt mindannyian tanúsíthatjuk
C származék alatt egyébként C és C++ értek. Rohadt pointerek
-
Aethelstone
addikt
válasz
Oppenheimer #5411 üzenetére
Annyira én sem vágom a témát, de Ez a cég csinál ilyeneket. Autók, orvois műszerek szoftverei ha jól látom...
-
Aethelstone
addikt
Hard real time volt a téma elsődlegesen, nem a repcsik
-
Aethelstone
addikt
válasz
Oppenheimer #5404 üzenetére
-
Aethelstone
addikt
-
Aethelstone
addikt
válasz
WonderCSabo #5394 üzenetére
Az, de pl. a C# kinek a "nevén" van?
-
Aethelstone
addikt
válasz
WonderCSabo #5380 üzenetére
ez ugye alap felüldefiniálás
Ez teljesen igaz, de akkor ne nevezzük már a szerencsétlent interfésznek
Felüldefiniálás class esetében értelmezett...most valami eddig nem definiált fogalomrendszert vezettek be
-
Aethelstone
addikt
válasz
Aethelstone #5378 üzenetére
És a következő kavarás:
" Also if the class implements an interface's default method, the implementation of the class will be used instead of interfaces's default implementation"
Ez nekem spec nem tetszik. Csinálok véletlenül egy ugyanolyan nevű metódust és máris agyonvágom a default implementációt. Persze, ezt manapság is megtehetem abstract class vagy bármilyen extendált class esetén(@Override nélkül is), de hogy egy interfész metódust így szét lehet cseszni...még emésztenem kell.
Plusz van egy külső jar. Van benne egy default metódus. Csinálok ez alapján egy osztályt, beleteszek egy saját nevű metódust. Jön egy új jar egy ugyanilyen default metódussal, mert engem nem kérdeznek meg, hogy van-e már ilyen metódusom, aztán jól nem fog működni a default implementáció.
-
Aethelstone
addikt
válasz
WonderCSabo #5377 üzenetére
Igen. Első olvasatra akár még jópofának is tűnhet, vitatkozásra érdemes feature. Aztán az ember belegondol, hogy éveken keresztül gondosan megtervezte az alkalmazások architektúráját, interface vagy abstract class szinten is, oszt jön valami frissítés, ami telibeveri ezt. Most már csak attól függ, hogy interface vagy abstract class, hogy melyik jut eszébe előbb az embernek. Jah és innentől fogva az egyiket meg is lehetne szűntetni, mert abstract class default implementációk nélkül == interfész default implementációk nélkül és a másik is igaz. Ergó, teljesen felesleges kettő
Még ha lenne valami teljesítménykülönbség vagy thread safe eltérés...de látszólag semmi...
Nem szeretem az ilyesmi átgondolatlan módosításokat....vagy megindokolta bárki is Oracle oldalról, hogy mi szükség volt erre?
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- iPhone topik
- Kerékpárosok, bringások ide!
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Az AMD-vel tervezi a következő generációs Xboxokat a Microsoft
- VR topik
- Google Pixel topik
- Parkside szerszám kibeszélő
- One otthoni szolgáltatások (TV, internet, telefon)
- Villanyszerelés
- Vivo X200 Pro - a kétszázát!
- További aktív témák...
- Xiaomi Redmi 9A 32GB Kártyafüggetlen 1Év Garanciával
- Apple iPhone 12 Pro Max 128GB Kártyafüggetlen 1Év Garanciával
- Samsung Galaxy S23PLUS 256GB Kártyafüggetlen 1Év Garanciával
- Dell G3 Gamer laptop (2TB SSD, 32GB Ram, 4GB Videókártya, FullHD kijelző, szép állapotban)
- Thinkpad T14 Gen5 14" FHD+ IPS Ultra 5 135H 16GB 512GB NVMe ujjlolv IR kam gar
- Csere-Beszámítás! Ryzen 9 9950X3D Processzor! 16Mag-32Szál!
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Samsung Galaxy A14/Samsung Galaxy A34/Samsung Galaxy A54
- 12.000 ft tól elvihető ELITRO Bankmentes , kamatmentes vásárlás .Cooler Master GM2711S Monitor
- AKCÓÓÓ!!! Panasonic CF-XZ6 AIO all-in-one laptop tablet 2k touch i5-7300u speciális ütésálló
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged