- Perelnek a vallásos kripto-piramisjáték miatt
- Milyen routert?
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- ASUS routerek
- Windows 10
- Mozilla Firefox
- Microsoft Outlook topic
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Középpontba kerültek a hibrid autók, alig fogyaszt a BYD újdonsága
- Vodafone otthoni szolgáltatások (TV, internet, telefon)
Új hozzászólás Aktív témák
-
nagyúr
A klasszikus objektumorientalt programozasi stilusban az alapegyseg az 'identitas', kvazi a memoriaban elfoglalt hely. A mostanaban elkezdodott, modernebbnek mondhato felfogas szerint az alapegyseg az 'ertek'. Sajnos a Java sem tamogat igazan semmi mast, csak az identitasalapu programozast, barmennyire is probaljak megoldani a problemakat mindenfele patternekkel meg frameworkokkel.
Egy olyan vilagban, ahol nem referenciakat adogatsz, hanem ertekeket, hirtelen (majdnem) megoldodnak az olyan problemak, mint
- szinkronizacios problemak, adatkorrupcio
- (alacsonyszintu) deadlockok
- 3rd party libek kiszamithatatlan viselkedese (vajon mi tortenik a konteneremmel, ha odaadom ennek a fuggvenynek, aminek nem latok bele a forrasaba?)... satobbi. Erdemes nekiallni szerintem ennek a temanak, lesz piaca (meg egyebkent is nagyon szep dolog).
while (!sleep) sheep++;
-
-
nagyúr
válasz Aethelstone #6253 üzenetére
Nem hinnem -- eleg intenziven foglalkozik ezekkel a szakma kremje az utobbi evtizedben, par apro dolog meg a Java-ba is beszivarog (lasd Java 8). Persze ugy nehez megitelni a dolog problematikussagat, ha mondjuk a Java-n kivul nem programoztal egyeb kornyezetekben. Ez az egyik oka, hogy erdemes kb. evente megtanulni legalabb alapfokon (egy kisebb projekt erejeig) egy uj nyelvet, szelesiti a latokort -- ha mondjuk senior fejleszto korodra mar irtal hasznalhato dolgokat legalabb 5-8 nyelvben, az mindenkepp hasznos. Csomo minden van, ami nem hianyzik addig, amig egyszer nem lattad -- pl. csomo Java-fejlesztot nem idegesit az, ahogy a generikusokat implementaltak a Java 5-ben, pedig egeszen elkepesztoen fajdalmas kb. minden mas implementaciohoz kepest. Ha viszont mittudomen, volt mar elotte C++ vagy C# tapasztalat, akkor legalabb tudod, hogy hogy kene mukodnie, ha rendesen meg van csinalva (es forditva is igaz, amig az ember pl. csak .Netet latott, addig nem ertekeli, hogy pl. a build rendszerek mennyivel jobbak JVM platformon; vagy a temahoz kapcsolodva: a mai napig ledobbenek, hogy 1000-1500 sornyi Java kod funkcionalitasa Scala-ban vagy Clojure-ben 50 sor, es vilagos, mint a nap).
Tenyleg erdemes a lenti rovid eloadast (is) megnezni, meg esetleg megcsinalni az Odersky-fele (SZUPER) Scala-kurzust:
https://www.coursera.org/course/progfunSzerk.: egyeb pelda: ha valaki meg nem futott bele abba, hogy mekkora fajdalom a single dispatch, az hazudik
[ Szerkesztve ]
while (!sleep) sheep++;
-
boost
addikt
Tetszik, én már keveset programozok, most több bigdata projektem volt idén, és mivel úgy néz ki a spark elég komoly játékos lesz e téren (amit egyébként Scalaban programoztak, és abban is kell használni) nekiugrottam.
Nekem tetszik. Eltérően más kurzusoktól, ahol elég meghallgatni a két órás anyagot, és megérted mi a feladat, itt tényleg komolyan utána kell olvasni a könyveknek. A fősulis elektrotechnika tanáromra emlékeztetett, aki sosoe adott ahhoz hasonló feladatot ZHn, mint amihez hasonlót órán leadott, ezért simán 80-90%-os arányban irogattuk a karókat.
Faszi érthető, amit hiányolok azok a quizek. Az Android kurzuson sokat dobott a megértésen. MIre átrágtam magam a Quizen, már megjegyeztem az alaptananyagot. De az R kurzus is ilyen volt.
-
nagyúr
válasz WonderCSabo #6258 üzenetére
Egy trivialis megoldas a copy on write es hasonlok. Egy pelda: funkc. nyelvekben nagyon jellemzo, hogy listakat hasznalunk adattarolasra -- most a lenyeg, hogy ertekek vannak egymas utan, nem az, hogy most vektorrol vagy lancolt listarol van szo. Ha pl. van egy olyan fuggveny, hogy 'rest', ami visszaadja a lista osszes elemet, kiveve az elsot, akkor ugye a fuggvenyhivas utan van mar ket listad: az eredeti meg egy masik, ami pont ugyanolyan, csak epp hianyzik az elso eleme. Az implementacio nyilvan okos, es nem fogja lemasolni a listat, az uj lista siman ugyanazokra az elemekre mutat, csak epp eggyel kesobbrol kezdi. Mivel az elemek ugyebar immutabilisak (nem irhatok), ezert ez teljesen biztonsagos, es gyors is.
A lenyeg, hogy alapesetben nem irsz felul semmilyen olyan erteket, amit valaki mashol meg hasznalhatna. Ha van egy erteked, az valtozatlan marad orokre. Tehat pl. nincs olyan, hogy for i = 0; i<10; i++ -- ilyen eszkozoket nem hasznalunk altalaban.
while (!sleep) sheep++;
-
Aethelstone
addikt
Nos. Alapvetően igazad van, de a fejlesztőtársadalom túlnyomó része nem a "szakma krémje", nem ismer készség szinten 3-4 programnyelvet, 1-2 nyelvből próbál megélni, életben maradni és nem érdeklik ezek a magas dolgok. Ha érted, hogy mire gondolok.....
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
boost
addikt
válasz Aethelstone #6261 üzenetére
De miért ++i? Kapásból ki is hagyná az első elemet, ha pl egy listán, tömbön fut végig
[ Szerkesztve ]
-
nagyúr
Nem hagyja ki -- mindketto pont ugyanugy mukodik. A for loop harmadik resze egy kulonallo statement, ami eloszor vegrehajtasra kerul, es UTANA ertekelodik ki a kilepesi feltetel. Akkor lenne kulonbseg, ha a kilepesi feltetelben inkrementalnal, pl:
for i = 0; ; i++<10; // i = [0,10]
for i = 0; ; ++i<10; // i = [0,10)Viszont a lenti esetben tok ugyanazt fogja csinalni, pont ugyanolyan sebesseggel. C/C++-ban van kulonbseg, mert a prefix operator un. rvalue-t produkal, a postfix pedig lvalue-t. Elobbi gyorsabb par orajellel, ezert ha tenyleg csak inkrementalni akarsz, akkor ++i-t szokas hasznalni. Java-ban tehat nincs semmi kulonbseg.
while (!sleep) sheep++;
-
nagyúr
válasz WonderCSabo #6264 üzenetére
Nem kell, pl. a lancolt lista vegulis nem mas, mint egy head elem. Tehat pl. egy 'rest' fv. annyit csinal, hogy elorelep egyet, es az lesz a masodik lista. A defensive copy az vegulis egy kenyszermegoldas, es pont jo pelda a mutable objectek problemajara.
Szoval ha van egy vektorod, ami a memoriaban az X es X+k kozotti helyet foglalja el, es egy fuggveny ebbol kiveszi az elso elemet, es visszaadja a maradekot, akkor a visszaadott vektor X+1 es X+k kozott lesz -- defensive copy eseten lemasolod az egesz vektort valahova, es az arra mutato referenciat adod vissza.
Persze ezek implementacios kerdesek, a lenyeg, h feltetelezheted, hogy az immutable kollekciok eleg jo teljesitmenyuek.
[ Szerkesztve ]
while (!sleep) sheep++;
-
nagyúr
válasz WonderCSabo #6266 üzenetére
Na, ez egyelore nem ment at.
NEM lehet felulirni semmit, mert a visszaadott lista is immutable. Azert mukodik az egesz, mert csak immutable (megvaltoztathatatlan) listaid vannak.
while (!sleep) sheep++;
-
nagyúr
válasz Aethelstone #6260 üzenetére
> "szakma krémje"
Azt irtam, hogy a szakma kremje dolgozik ezeken a problemakon, ezert valoszinuleg a problemak valosak.
while (!sleep) sheep++;
-
Jim-Y
veterán
Csak speciális esetekben van különbség a kettő között. Én postfix szoktam használni mindig, de eddig se elonyom, se hatranyom nem származott belőle. Pl javascriptben
console.log(i++) nem ugyanazt logolja mint
console.log(++i)
Előbbi kiirat majd inkremental, utóbbi inkremental majd kiirat. Javascriptben az automatic semicolon insertion miatt lehet talán érdemesebb a postfix et megszokás, de ezek ezoterikus esetek. -
floatr
veterán
Ha a krém a továbbiakban is hasonlóan akarja megoldani az 5-10%-ot érintő problémákat, ahogy eddig, akkor annak sokan nem fognak örülni. Minden egyes alkalommal, amikor valami forradalmit pakoltak bele a java-ba, vagy szabványosítottak valamit, mindig elővettek valami alapot (loptak), amiből ki tudtak indulni, és a végeredmény egy teljesen elborult, butított, kompromisszumos szutyok lett, de legalább tudományos volt, mintha egy egyetemi tanár akarta volna az élete oktatási anyagát összerakni.
A másik probléma, hogy a java-ba az eddigi koncepcionális újítások legtöbbször zavaróak voltak, és ha haladni is akartál volna vele, akkor a framework-ök tartottak vissza. Sajnos, vagy sem - tudomásul kéne venni azt, hogy a java nem nyelvi bravúrkodások miatt kapott eddig is ekkora hangsúlyt, hanem a rengeteg framework miatt.
-
Aethelstone
addikt
Nem is a nyelvi bravúrkodások tesznek egy nyelvet jóvá, használhatóvá. A bravúrkodás a szakma krémjét érdekli. Az átlag fejlesztőt a frameworkok száma és jósága érdekli elsősorban. Szerintem. Viszont ekkor már ökoszisztáma és nem nyelv.
MI 10T Pro 8/256 , Arsenal FC - Go Gunnarz...
-
boost
addikt
"console.log(i++) nem ugyanazt logolja mint
console.log(++i)"Ezt én értem, ezért is nem értettem, hogy miért ++i-t használnak a for ciklusban, de elolvasva a doksit most már látom, hogy az ++i, vagy az i++ csak a statement végrehajtása után hívódik meg, utólag. Azt hittem már korábban meghívódik. (Végiggondolva amit én gondoltam, az nem is logikus. ) Ilyen szempontból tényleg mindegy, hogy a for ciklusban ++i vagy i++ van.
Remélem nem írtam nagy nagy hülyeséget.
[ Szerkesztve ]
-
nagyúr
válasz WonderCSabo #6274 üzenetére
> megőrjítene
Jah, kell egy kis ido, amig az ember atall - erre mondtam lent, hogy legalabb megprobalni erdemes, mert jobb fejleszto lesz beloled, ha tobb oldalrol is megnezed ugyanazt a problemat.
Kiszerkesztetted valami miatt a peldad, de ha ujra visszarakod, elmondhatom (egyebkent ennyi: (range 1 5)).
[ Szerkesztve ]
while (!sleep) sheep++;
-
Lacces
őstag
Hali!
Lenne egy kérdésem, hogy az álláspiacra egy junior / beugró szinten mit kell tudni a JavaEE-ből? (Miket érdemes megtanulni?)
Egyetemen JavaSE ment. Alap elméleti szintem van a JavaEE, szóval tudom, meg nagyjából a JSP, JSF, de gyakorlati szinten sosem szagoltam hozzá.
OOP nem akadály, igaz, hogy melóban PHP-ban van 2,5 tapasztalatom, de Symfony2 keretrendszer (PHP-s)-ról nézegetve az alap JavaEE-t úgy a mögötte lévő HTTP filozófiát könnyű felfognom. Plusz pár hónapja átdobtak a .NET csapatba, ahol Asp.net MVC megy. Szerintem innen a JavaEE-re átállni nem lehet nagyon nehéz. (Git, TDD, Scrum, demozás, verik belém a németek)De csak alap szinten tényleg csak a szükséges szintet akarom megtanulni (de az nem tudom, hogy micsoda, EJB, JDBC, esetleg a Hibernate is kellenne?) Mely könyveket érdemes nézegetni.
Azért akarom az elégséges szintet, mert a Scala sokkal jobban érdekel, igaz nehezen tanulom most (van online kurzus) de nagyon motivált vagyok benne.
És ahogy nézegettem a Scala álláshirdetéseket, Scala együttjár a JavaEE. És ezért akarok csak egy "elégséges szintet tudni". Nektek mi a véleményetek erről?
Mondjuk lesz egy olyan Androidos kurzus folytatás, ahol a szerver oldali részét nézik meg és SpringMVC-vel fognak dolgozni, talán arra még érdemes energiát és időt szánnom.
Meg Maven-t már nem nézném át, inkább csak Gradle-t használnék helyette.PHP-t már kezdem kinőni (néhány hobbi projekthez jó) Ruby on Rails-sel elhelyezkedni nagyon nem lehet, max csak Seniorként, Java és C# hosszabb távon nem érdekel. Scala az ami érdekel (már egyetemen is megfogott a Prolog), a Hadoop, na meg a C++ linux és beágyazott rendszerekhez. (De Scala és a Hadoop páros az ami motivál)
Python sem rossz, de nem tudnék benne hobbi projektet fenntartani. -
raggg
senior tag
Szerintem egy erős Java tudás mellett némi Spring || EJB / Hibernate tudás elegendő. Voltam már olyan interjún, ahol komolyan belekérdeztek a frameworkökbe, de azért szerintem nem annyira jellemző (legalábbis én kevésbé tapasztaltam eddig). Ahol komoylabban belementünk, ott pedig éppen olyanról kérdeztek, amiről előtte mondtam, hogy dolgoztam vele.
Amit azért érdemes megnézni/megtanulni, hogy egy-egy konténer hogyan működik, miért úgy, vagyis a mögöttes tudást elsajátítani (erre mondjuk nagyon jó a hivatalos Oracle anyag szerintem).
Tehát röviden: ha az alapok megvannak (koncepcionálisan) akkor nem hiszem, hogy aggódnod kellene.
A maven azért elég "alap", érdemes elsajátítani. Ha rajtam múlik, én azt használok Gradle helyett is.
Scala azért ahogy én látom elég sok helyen csak kiegészítő technológia, sajnos megvannak a maga zsákutcái, de csak támogatni tudlak!
ragklaatPS
-
nagyúr
A Scala meg a JavaEE szerintem nem fuggenek jobban ossze, mint barmilyen mas Java-s technologia. Ha a Scala ennyire tetszik, akkor nezd meg az extrem oldalat, pl. a Scalaz-t. Ha most jonnek ki az egyetemrol, akkor tuti megprobalnam elkerulni a Springet meg a J2EE-t, ennel sokkal erdekesebb dolgok is vannak a vilagban, es penzt keresni massal is lehet.
while (!sleep) sheep++;
-
sutszi
veterán
Csak az utolsó mondatra.: Van benne igazság...de kicsit úgy írod mintha ezekkel nem lehetne, vagy "alantasabb" lenne... Komolyan kérdezem mi az más a véleményed szerint?
Mondja, Mr. Babbage, ha rossz adatokat ad meg a gépnek, akkor is jó válasz fog kijönni belőle?" Képtelen vagyok felfogni azt az értelmi zavart, ami valakit egy ilyen kérdés feltevésére késztethet. - by Charles Babbage
-
bucsupeti
senior tag
nem tudom ismeritek-e, de jó kis szórakozás és tanulni is lehet belőle: http://www.codewars.com/
Eddig nem volt benne Java, de most végre bétában betették! Lehet feladványokat is csinálni, vagy mások feladványát megcsinálni. Ha valamit sikerült megoldani, akkor mások megoldását is meg lehet nézni. Ebből pedig sokat lehet tanulni.[ Szerkesztve ]
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
nagyúr
Dehogy alantasabb, en csak annyit mondtam, hogy ha szorakoztato feladatot akar ES van ra lehetosege, akkor erdemes mast nezni. Mashogy mondva: kevesebb embert erdekelne hobbibol a J2EE, mint mondjuk a dronvezerlo algoritmus Ettol meg irtozatosan elterjedt es sikeres dolgok ezek.
while (!sleep) sheep++;
-
nagyúr
Multi-core CPU-t rendesen kihasznalo javac mindig nincs meg?
while (!sleep) sheep++;
-
nagyúr
Nem arrol van szo, hogy nagyon hosszu lenne a forditasi ido, csak folyamatosan rebuildelek, mert kiserletezem valamivel -- viszont a hotswap bizonyos okok miatt nem mindig mukodik. Ergo ha valamin valtoztatok, akkor varnom kell kb. 15 masodpercet, amig latom az eredmenyet, es ez most sok (mert rengetegszer kell varialni -- nem is azzal van gond, hogy sok idot elvesz, csak idegesito -- olyan, mintha egy mobilon akadozna az UI).
De ugy latom, kicsit megvarialom a workflow-t, es atallok REPL-re.
(Amikor C++-t csinaltam, ott volt akkora (ill. olyan szenne template metaprogramozott) projekt, hogy a projektben resztvevo osszes ember desktopja egyben compile szerverkent is funkcionalt, es amikor valaki forditott, akkor egyszerre kapott kb. 150-200 CPU magot, es igy tartott negyed oraig. Ja, es az IntelliSense nem mukott az IDE-ben, tehat siman benezhettel egy zarojelet valahol, es akkor a negyed ora vegen kaptal egy hibauzenetet, hogy itt hianyzik egy zarojel, forditsd ujra. Egyebkent meglepo, hogy meg lehet szokni azt, hogy preciznek kell lenni, amikor gepelsz. Az IntellIJ meg kabe elore megmondja, hogy ot perc mulva milyen nevu konstruktorparametert szeretnel, es felajanlja )
while (!sleep) sheep++;
-
sutszi
veterán
Hasonló jellegű élményem már volt. Akkor AWS-ben műkő oracle-be írtam pl/sql-t és viszonylag sok variálás volt... és a sok kis másodpercből akkora késleltetés lett, hogy inkább lehoztam local-ba mert elfogyott a türelmem.
150-200 mag...az szép...gondolom ott aztán kétszer meggondoltátok mielőtt rányomtatok a fordításra...
Mondja, Mr. Babbage, ha rossz adatokat ad meg a gépnek, akkor is jó válasz fog kijönni belőle?" Képtelen vagyok felfogni azt az értelmi zavart, ami valakit egy ilyen kérdés feltevésére késztethet. - by Charles Babbage
-
whatnot
őstag
Sajnos nem találok a java üzemeltetés részével kapcsolatos témát, így itt tenném fel a kérdésemet.
Van ötletetek, hogy a java mitől gondolhatja meg egyszer magát csak úgy és vált időzónát? Pl. CEST -> GMT+1 ? Anélkül, hogy bárki is hozzányúlt volna, ráadásul ez több gépen is, de nem mindegyiken.
-
n00n
őstag
Sziasztok
Elkezdtem ismerkedni csak úgy hobbiból a Springgel. Össze is raktam egy Spring MVC webappot. Kiexportáltam .WAR fájlba felraktam egy szerverre (Tomcat 7) és nagyon szépen megy. Viszont azt, hogy tudom megoldani, hogy ebből a webappból "indítok" egy másikat? Hogy tudok ráhivatkozni? Próbálok rákeresni angolul, de nem sok sikerrel...
-
n00n
őstag
Van egy Webapp1 nevű servlet, ezen vannak statikus html oldalak, illetve egy login form. Ha jó a felhasználónév, jelszó, akkor egy teljesen új felület jelenne meg. Ezt úgy tudom új projektbe illik megírni.Ezt is kiexportálom .war-ba. Akkor hogy tudok az egyik warból a másikra hivatkozni? Remélem érthető.
-
n00n
őstag
Akkor szerintetek külön se vegyem?
-
Cathfaern
nagyúr
Ha logikailag egy alkalmazás (pl. nyilvános oldal + annak admin felülete), akkor nem sok értelme van. Ha valami cross-site login dolgot akarsz (pl. van egy már elterjedt oldalad, sok felhasználóval, és akarsz csinálni egy teljesen mást, de közös bejelentkezést akarsz), esetleg akkor lehet értelme a különvételnek.
-
n00n
őstag
Kicsit off kérdés.
Szeretnék adatbázist használni a Springes app-omhoz. Ehhez Hibernate-et szeretnék használni. Ti milyen adatbázist tennétek alá? MySQL-el sokat foglalkoztam régen. Jó lehet az alá? Vagy van jobb ötlet? (Leginkább a tapasztalatokra lennék kíváncsi).
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Luck Dragon: Asszociációs játék. :)
- Alkoholista nevelde
- Nem a Microsoft gyártaná a következő Xbox konzolokat?
- Dell notebook topic
- Külpolitika
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Nem tudom a dal címét, előadóját
- PlayStation 5
- Xbox Series X|S
- Formula-1
- További aktív témák...
- APPLE Mac Studio M1 Max 10C CPU, 24C GPU, 32G RAM, 512GB SSD
- Kingston A400 960GB (SA400S37/960G)
- Ohh! HP EliteBook 840 G6 Fémházas Laptop 14" -70% i5-8365U 4Mag 16GB 512GB SSD FHD IPS + Táska!
- Szép! HP EliteBook 840 G6 Fémházas Laptop 14" -70% i5-8365U 4Mag 8GB 512GB SSD FHD IPS + Táska!
- Arctic Cooling Liquid Freezer II 280
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen