Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
Orionk #10797 üzenetére
A CV-be mindig az igazat írd, de nem szükséges részletezni a számodra hátrányosnak vélt (pl. 1 év java) dolgokat. Majd az interjún részletezed, ha érdekli őket vagy ha te tartod fontosnak, ahol már amúgy a lelkesedésed is látják.
Plusz a CV-ben szabad helyet szorítani egy pár mondatos bemutatkozásnak, ahol leírod a céljaidat, fejlődés, Spring tudás mélyítése, stbstb.
Persze addig se hagyd abba a tanulást, gyakorlást.
-
Drizzt
nagyúr
válasz
Orionk #10725 üzenetére
Tömör, egy felelőssége van, se többet, se kevesebbet nem csinál mint ami a célja. Magas a koherencia a az adattagok és a metódusok között, meg az összes SOLID principle felsorolása, kifejtése, 1-2 design patternen keresztüli elmagyarázása. Én ezt várnám el egy interjúzótól. Bár juniortól lehet nem ilyet kérdeznék, hanem inkább alapvetőbb algoritmus kérdéseket, adatstruktúrákat.
-
E.Kaufmann
veterán
válasz
Orionk #10582 üzenetére
Én most olyat csináltam, hogy fogtam egy objektumot, serializáltam, gzippeltem, majd base64-be kódoltam (egyesek szerint felesleges az utóbbi, de biztos ami biztos és a gzip is csak a base64 kódolásból eredő méretnövekedés kompenzálására került be) és http-n át nyomattam.
Ha guglizol, megtalálod, hogy az első három művelet megoldható 1-1 sorból és van java alatt egyszerű http szerver és kliens is, ha nem a biztonság hanem a gyakorlás vagy a gyors elkészítés a fő szempont.
A http kérésbe beágyazhatsz paramétert, ami alapján tudja a szervered, hogy mit is kérsz tőle, az alapján megképzed az objektumot és a fentebb sorolt műveletekkel elküldöd válaszként a kliensnek, a kliens meg elvégzi az ellentétes műveleteket.De más módok is létezhetnek és én is kíváncsi vagyok, ki mit ajánl. Én azért a HTTP-t választottam, mert kellett egy táblázat emberi formában olvasható módon és kliens programmal elérhetően is és egyszerűbb volt egy protokollal megoldani.
-
Drizzt
nagyúr
válasz
Orionk #10365 üzenetére
Egyfelől van SQL topic, ez oda jobban illene.
Másfelől:
- Indexeket kell használni. Azt az oszlopot kell indexelni, ami a where feltételben szerepel elsősorban. Ebből is elsősorban azok lesznek gyorsak, amikor konkrét értékre vonatkozik a feltétel, vagy arra, hogy egy érték egy tartományban van-e. Ha több oszlop is van a keresésben, lehet kompozit indexeket definiálni. Ha pl.: van a,b,c oszlopra egy indexed, azt az olyan feltételekre lehet használni, ahol vagy csak a-ra, vagy a-ra és b-re, vagy a-ra, b-re, s c-re van megszorító feltétel megadva. Az index gyorsítja a keresést, de lassítja a beszúrást, törlést. Ezen kívül még fontos, hogy ha csak az indexben szereplő dolgokat fogsz kikeresni a select-tel, akkor az szinte biztosan csak memóriában fog történni, de a többi mező lekérdezéséhez már lehet a diszkhez kell fordulni, ami lassítani fog erősen. Másik megfontolás a select oszlopok számánál, hogy minden extra oszlop megnöveli a visszaadott adathalmaz méretét, emiatt ha a sávszélesség probléma az adatbázis és az alkalmazás szerver között, akkor ronthat a sebességen. Erre szoktak DTO-kat használni(olyan objektum, ami csak a teljese tábla oszlopainak egy részét tartalmazza. Azt, amire éppen minimálisan szükség van az adott probléma megoldásához.).
- Nem árt megnézni azt sem, hogy a lekérdezés tényleg fogja-e használni az elkészített indexet. Erre általában adatbázisonként különbözik, hogy milyen paranccsal, de le lehet kérdezni, hogy mi lesz a query excution plan. Abból kiderül, hogy fog-e használni indexet, vagy nem. Illetve melyiket. A kritikus lekérdezésekre szerintem mindig ellenőrizni kell.
- Ha gyakran használ az ember joint, akkor érdemes lehet elgondolkodni a joinolt tábla foreign key-ként használt oszlopának indexelésén. Ez nagyban felgyorsíthatja a join-ok sebességét.
- Ha a beszúrás és a törlés is nagyon gyakran történik meg és a tábla nagy, akkor érdemes lehet particionálni a táblát több részre. Mondjuk ha neveket tárolsz, akkor az egyik tabla csak a-b, a másik c-d, ... kezdetű neveket tartalmazza. Viszont ilyenkor pl. nehéz lesz jó foreign keyeket definálni a nevekre, s sok egyéb komplikáció előjöhet. Ha ilyen jellegű a probléma, akkor lehet érdemesebb valamilyen noSQL db-t választani RDBMS helyett. -
dzsavitcu
csendes tag
válasz
Orionk #10365 üzenetére
Kérdeztek egy olyan feladatot, hogy képzeljem el, hogy egy nagyon nagy adatbázisom van, több millió rekorddal / sorral. Hogyan érném el, hogy gyorsak legyenek a lekérdezések, a SELECT-ek az adatbázisból?
Idexek használatával => arra a keresőfeltételre kell rakni plusz indexet ami gyakran van a query-ben.
+
selectnél nem select * hanem minden oszlopnevet kiírva -
floatr
veterán
A kiindulási alap egy ilyen melónál a specifikáció, amiből teszt specifikációt kell készíteni, azaz hogy milyen kritériumokat kell teljesíteni ahhoz, hogy a rendszer/alkalmazás elfogadható, "átmegy a vizsgán". Ez több szintű lehet, kezdve a felhasználói kattintós tesztekkel, amit seleniummal automatizálnal, a web service-ek input/output ellenőrzésén át (pl. JBehave + rest assured), egészen pl a JMeter által futtatott tesztesetekig, amivel performance/load teszt indítható.
Egy ilyen teszt néha nem igényel konkrét fejlesztést, de úgy kell elképzelni, hogy programozottan küldesz bemenő adatokat a teszt tárgyának, aztán ellenőrzöd a végeredményt. Ez egy REST WS esetében annyi, hogy megadott paramétereket adott URL-re adott HTTP metódussal megfelelő headerekkel elküldesz, aztán megnézed a visszakapott válasz státuszát, tartalmát, méretét, headereit, válaszidejét.
Ezek mind olyan eszközök, amiket hetekig/hónapokig tanul az ember, a mérnöki feladatkörhöz meg általában egy adott témájú szakképzésre nem ért járni. Ilyen munkakörbe én egy szakirányú végzettséggel (akár tanfolyam) rendelkező embert keresnék, vagy egy olyan juniort, akit a munka tényleges kezdése előtt jó ideig képzek.
-
Phobion
őstag
-
disy68
aktív tag
A JavaEE egy specifikáció és API gyűjtemény, ami a Java Community Process alkalmazásával fejlődik. Ezekhez az API-khoz készülnek implementációk a specifikációk alapján. Erről egy kis összefoglaló.
A JavaEE technológiákra rengeteg alkalmazás épül és nagyon sok az érdekelt szereplő. A bejelentés után sok a felmerülő kérdés, így érdemes megvárni ki veszi át az Oracle szerepét, valamint lesznek-e változások a fejlesztési/elbírálási folyamatokban. Olvasd el még ezt a cikket a bejelentésről.
-
PumpkinSeed
addikt
-
Lortech
addikt
Egyszer már kérdezted ezt. "Hagyományos értelemben" vett többszörös öröklődés nincs, ha pl. a C++-szal összevetésben vizsgáljuk a kérdést. Ha egy tesztben látod ezt a kérdést, akkor a tesztíró fejével kellene gondolkodni, mert nem biztos, hogy a hosszú válaszra kíváncsi. DE a nincstől bonyolultabb a téma.
Az interface, ahogy emvy anno rámutatott, gyakorlatilag egy abstract class csak publikus metódusok body nélkül (+final static mezők és static metódusok implementációval). Többszörös öröklődés van Javában a saját terminológiája szerint, viszont megkülönbözteti az állapot (ilyen nincs Javában, az interface esetleges statikus mezőit nem tekinti annak, hiszen osztály szintűek), implementáció (default interface Java 8-tól, +esetleg static interface method, szintén Java 8-tól) és típus (interface) szerinti többszörös öröklődést. -
Szmeby
tag
Na igen, ezek egy könyv példái. Az oldal tetején a könyv címe, ahonnan a példák származnak: "Java Puzzlers: Traps, Pitfalls, and Corner Cases" Bloch bácsi tollából. Egyébként próbálgatással, gondolkozással idővel rá lehet jönni, csak sok idő, tömény szívás főleg egy kezdőnek, viszont az Aha! érzés garantáltan nem marad el.
A magyar kiadás asszem Java fejtörők: Csapdák, buktatók, akármik néven fut. De szakmai könyvből én nem feltétlenül ajánlanám a magyarított változatokat. Túl sok mindent akarnak benne magyarítani. Talán ennél a könyvnél pont nem is számít - bár magyarul nem olvastam -, a példakódok és a belőle levont tanulságok a fontosak. Viszont szerintem ne is ezzel kezdd, ha még nincsenek meg az alapok.
-
Szmeby
tag
A célod, hogy (jó) java fejlesztő legyél, vagy hogy átmenj egy interjún?
Ha már tudod rá a választ, akkor itt van pár hasznos link, hogy megismerd a java nyelv furcsaságait:
java puzzlers
java tutorials
ocp mock tests
Légy kíváncsi és gyakorolj sokat, nem jelenthet problémát egy interjú, ha értesz hozzá.Egyébként google: java interview questions.
-
floatr
veterán
A String egy nem változtatható (immutable) típus. Nem tudsz hozzáadni, nem tudod kicserélni a betűket. Ha összefűzöl/összeadsz két String-et, akkor a JVM létrehoz egy újat a kettőből. Ha ezt a műveletet sokszor végzed el, erőforrás-pazarló és lassú lesz.
A StringBuilder egy dinamikusan növekvő karaktertömb, aminek előre megmondhatod a kezdő kapacitását, mint egy puffer, aminek a mérete nőhet. Jó esetben nem is kell növelni, ha elég nagy puffert foglaltál le neki. Az összefűzést úgy kezeli, hogy a hozzáadott karaktereket egyenként pakolja a pufferbe, aztán a a toString() metódus hívásakor készít belőle egy végleges értéket.Ha konstansokat fűzöl össze összeadással, azt a compiler kioptimalizálja, de bizonyos esetekben helyettesíti StringBuilder-rel is.
-
Sirpi
senior tag
Ja, pont amiatt, amit mondasz. Viszont futtasd le ezt a két ciklust külön-külön és nem kell más magyarázat:
String resultString = "";
for (int i = 0; i < 1000000; i++) {
resultString += "a";
}StringBuilder resultStringBuilder = new StringBuilder();
for (int i = 0; i < 1000000; i++) {
resultStringBuilder.append("a");
} -
axioma
veterán
Fibo-ra egyebkent van logaritmus ideju rekurziv szamolo - modulo <nagyprim> mert anelkul abrazolhatatlan -, de azt fejbol tudni nem feher embernek valo, versenyhez neha ki kell guglizni. Pl. itt az utolso.
Viszont anno nekunk az algoritmusok tantargy elso gyakorlatainak egyiken volt, hogy miert _nem_ rekurzivan szamoljuk a fibot... minimum tombben vagy persze sima ciklusban. Nekem furcsa, hogy eleve ugy szolt a feladat, hogy valaszthatonak fel volt a rekurziv is sorolva, szinte talcan kinalva. -
M_AND_Ms
veterán
Hűha. Ott elakadnék, hogy hirtelen nem tudnám mik is azok a Fibonacci-számok.
Komolyan, ez a lényeg a programozásban? Értem én, hogy maga a rekurzió fontos dolog, magam is használom, ha a feladat megoldása megkívánja. Azt is értem, Fibonacci-számoknak nagy a jelentősége, de mégis miért kell eldugni az egészet, egy teljesen életidegen kierőszakolt feladat mögé eldugni - Magyarországon hány valós üzleti problémát oldottak meg a Fibonacci-számok segítségével? Tehát, rekurzióra is vannak egyéb és az üzleti világhoz közelebbi példák.
De lehet, én vagyok ilyen furcsa (?)Én azt vizsgálnám, hogy mennyire tudja összekötni az üzleti igényt az adott eszközzel, programnyelvvel. Mennyire képes egy üzleti specifikációból valós és jól működő kódot alkotni. Olyat, amit később is könnyű továbbfejleszteni, alakítani. Nem azt keresném, hogy tudja-e a Fibonacci-mibenlétét. (hacsak nem valami tudományos projektre keresek fejlesztőt)
-
axioma
veterán
20 perc alatt nem lehet tul sok mindent megme'rni... szerintem ez valami olyan lehet, amiben mondjuk kell tudni (absztrakt szintre forditva) tagadni egy "xor"-t es megmondani, hogy ha "nehany smirf az smurf, de minden smarf smirf is, akkor lehet-e olyan smurf, aki nem smarf" (el ne kezdd elemezni, csak veletlenszeruen irtam a valtozatokat koze, keso van mar). Esetleg valamelyik cegnel volt me'g kezdoket szuro tesztben algoritmus-vegrehajtas (folyamatabra, 'mi tortenik ha' kerdessel, vagy hianyzo boxokba beleirni szoveg alapjan a szerepet).
Azert majd gyere vissza a valodi valasszal -
Orionk
senior tag
Sziasztok!
Felhívott a HR-es csaj a cégtől, akik most nyitottak a városban irodát Budapest után. Azt mondja, hogy megkapta a CV-met és látja, hogy majd csak nyár közepén lesz számomra aktuális az interjú, de olyan sok a Junior jelentkező, hogy létrehoztak egy előszűrő tesztet.
Menjek be köv. héten megírni ezt, mert ha ez sikerül csak akkor mehetek egyáltalán tovább a HR-es interjúra és szakmai tesztekre a nyáron.
Ez meg egy 20 perces teszt lesz, logikai-matematikai jellegű. Ennyit mondott csupán.Szerintetek mire számíthatok? Mi szokott lenni egy ilyen tesztben? Hogyan készüljek rá?
Java junior pozícióról lenne szó a nyáron, ha ez sikerülne.köszönöm
-
disy68
aktív tag
Kollekciókhoz ezt nézd át, jól összefoglalja a Collections interface-ből származó interface-eket és azok implementációit.
"Ez alatt arra gondolsz, hogy elméletben tanuljam meg először, hogy melyik mit tud, ugye?"
Lényegében, igenSolid-ra találtam egy magyar összefoglalót érthető példákkal.
GRASP (General responsibility assignment software patterns)
Ezek meg beszédesek különösebb magyarázat nélkül is:
Don't Repeat Yourself (ne legyen kódismétlés)
Keep It Stupid Simple (legyen a kód olyan egyszerű, amennyire lehet)
You Ain't Gonna Need It (ne implementálj semmi olyan funkciót/logikát, amire nincs azonnal szükséged, később sanszosan változni fog az irány/struktúra/akármi és úgy is át kell írni) -
disy68
aktív tag
Mire lepötyögtem, már jött is válasz, de akkor más megfogalmazásban
:
Kollekciókkal kapcsolatban első körben ismerni érdemes a főbb inteface-eket és melyik milyen contract-nak tesz eleget (List, Set, Queue + Map). Ez után érdemes megnézni a tényleges implementációkat. A különböző implementációkat pedig akkor használjuk, amikor az adott megoldás igényli (pl. rendezett legyen mindig a kollekció, lehet-e benne ismétlődő elem, írunk vagy olvasunk belőle többet, elejéről/végéről vagy véletlen eléréssel veszünk ki elemeket, szálbiztosnak kell-e lennie). A nyelvi alapokon kívül még érdemes ráfeküdni az OOP-re. OOP alapelvek, SOLID, GRASP és pár további egyszerűbb dolog; DRY, KISS, YAGNI. Alapvető design pattern-ek (singleton, builder, facade, proxy, decorator, visitor, strategy). -
Atapi
senior tag
"Ez: newmap.put(3,"is great") --> Beleteszi a 3. helyre az "is great" stringet."
lehet, hogy csak nem figyeltél a megfogalmazásra, de ez az állítás nem igaz. a map kulcs-érték párokat tárol, az elemeknek nincs rögzített helye (mint pl egy List esetén az x. elem), legalábbis a hashmap rendezetlen, így nincs garancia arra, hogy mi hova kerül, csak az garantált, hogy egy kulcshoz egy adott érték tartozik, és a kulcs alapján ezt az értéket kapod vissza. ez azt jelenti, hogy nem a 3. helyre helyezed a példában a sringet, hanem a 3 kulcshoz rendeled hozzá. a példa szerencsétlen abból a szempontból, hogy kiíratásnál a természetes sorrend érvényesül, azaz növekvő sorrendben kerülnek kiírásra a kulcs-elem párok, de ez nem mindig van így, nem lehet rá számítani. lehet, hogy most feleslegesen téptem a billentyűzetem és tudod ezeket, de a megfogalmazásod nem ezt sugallta.
-
Aethelstone
addikt
Nos, amelyikre az adott feladathoz éppen szükség van. Nálunk leginkább az ArrayList "pörög", de Set, Map is van bőven. Egyébként inkább a most népszerű Java technológiákon érdemes gyakorolnod. Vagy legalább utána olvasni. Spring, Vaadin vagy Rest, Webservice, Hibernate, JDBC, Tomcat/Jetty....és napestig sorolhatnám....
-
floatr
veterán
JavaDoc [link]
A metódus visszatérési értéke a kulccsal korábban tárolt érték, vagy ha az nem volt, akkor null. A cast meg azért van, mert nem generics-es a map definíciója. Helyesen így lenne:
Map<Integer, String> newmap = new HashMap<Integer, String>();
...
String prevvalue = newmap.put(3, "is great"); -
Aethelstone
addikt
Nem életszerű usecase, hogy ugyanaz a felhasználó ki akarja totalcommanderben törölni azt a fájlt, amit mondjuk 2 perc múlva az appodból meg akar nyitni. Ha mégis, akkor a kolléga által javasolt kivételkezelés vagy egy sima fileexist metódushívás.
Szerk: vagy csak onfocusra egy újraolvasás.
-
Atapi
senior tag
"ha olyan fájlt akar betölteni, ami nincs ott, akkor leállna"
nem értem, hogy ez a rész sima kivételkezeléssel miért nem oldható fel. ha nem nyitható meg a megadott fájl, akkor hibaüzenet, frissítés, aztán az élet megy tovább. ráadásul a fájlkezelő (i/o) műveletek ha jól emlékszem eleve ellenőrzött kivételt dobnak, szóval amúgy is illene lekezelned az ilyen hibákat (pl attól, hogy ott van egy fájl, még nem biztos, hogy meg tudod nyitni, jogosultság, hw, vagy akármilyen hiba miatt. ilyenkor sem illik összeroskadnia a programnak).
-
Cathfaern
nagyúr
-
Aethelstone
addikt
Kb. 20 sorból saját implementációt is lehet készíteni. Beolvasod a könyvtár tartalmát, berakod valami collectionba. Bizonyos időközönként újra felolvasod a könyvtár tartalmát és összehasonlítod a korábban beolvasott listával. Ha van eltérés, akkor frissíted a lista tartalmát és ezzel együtt nyilvánvalóan a képernyőtartalmat is. Nem kell ehhez semmi különleges api....szerintem.
-
disy68
aktív tag
WatchService API-t tudod erre használni.
-
ToMmY_hun
senior tag
Szerintem számíthatsz arra, hogy készíteni kell egyszeresen, vagy duplán láncolt listát. Esetleg megkérhetnek, hogy hasonlítsd össze a kettőt beillesztés, törlés, stb szempontjából. Megkérdezhetik azt is, hogy a java.util.LinkedList melyik megvalósítást alkalmazza, annak milyen metódusai vannak. Felmerülhet, hogy melyiket lehet/érdemes stack-ként, és melyiket lehet queue-ként használni. Így hirtelen (szintén juniorként) ezek jutottak eszembe.
-
CJ19
csendes tag
Hátahol most én vagyok, ott volt egy sima HR-s interjú utána meg egy java teszt amire adtak x határidőt, hogy csináljam meg (ami szintén egy teszt volt, hogy mégis mennyi idő alatt vagyok "hajlandó" megírni) és én még hétvégén megírtam(az interjú pénteken volt)... el voltak ájulva.
Aztán a legutóbbin pedig elbeszélgetés, netes szakmai teszt, logikai teszt és fejlesztőkkel való meeting volt... szóval igen változó, ahogy a többiek is mondják cégtől függ...
Java SE-t viszont kenni vágni kell szerintem.. -
ToMmY_hun
senior tag
Multiknál van szakmai teszt az interjú előtt, szóval az sem biztos hogy táblánál kell programoznod, ezt cége válogatja. Amennyiben mégis kell, úgy valószínű hogy egy önállóan működőképes, egyszerű feladatot kapsz. Ilyesmi a nagyon kedvelt Fibonacci generátor rekurzióval és anélkül, szó palindrom vizsgálata vagy valami rendező algoritmus. Az interjú ezen szakaszában nem arra kíváncsiak, hogy ismered-e a nyelvet, az már kiderült a papíros/számítógépes tesztek során. Itt az a fontos, hogy milyen stílusban kódolsz és hogyan gondolkozol, milyenek a logikai képességeid.
-
Szmeby
tag
Hát igen, láncolt listákkal zsonglőrködéstől a szálkezelésig bármi lehet. Egyszerű kis programocskák. Jellemzően azt mérik fel, mennyire ismered a nyelvet (tudod-e mi az a for ciklus, vagy mit csinál teszemazt a Thread.yield()), milyen a problémamegoldó / absztrakciós képességed, és milyen stílusban kódolsz (hogyan struktúrálod a kódot, írsz-e tesztet, hogyan refaktorálsz, stb). Bár ezek utóbbiak inkább a nagyobb lélegzetvételű feladatokhoz tartoznak, vagy mondjuk ha már készen kapsz egy gány kódot és rendbe kell tenni.
Egyébként szerintem - ha elakadsz - nyugodtan kérdezz. Ha jófej a leendő kolléga
, biztosan ad 1-2 tippet a folytatáshoz. Senki sem tudhat mindent, de ha kérdez és kap választ, legközelebb már tudni fogja.
-
Lortech
addikt
Sok interjún vagyok túl mindkét oldalról, de nem sok biztosat lehet erre mondani.
Nem minden cég csináltat gépi feladatot a felvételi folyamat során. Sőt, többségében nem volt ilyen az én interjúimon. Ha volt, akkor az leginkább egyszerű algoritmizálási feladatokat jelentett, és akkor is általában otthoni előszűrés volt, nem az interjú közben nyomtak kezembe egy gépet. Gyakorló feladatokat találsz pl. codewarson, hackerranken, az egyszerűbbeken érdemes edzeni. Ahhoz, hogy sikeresen tudj venni egy ilyen akadályt juniorként, logikus gondolkodás kell, és az, hogy a java a kezedben legyen, ne a feladat közben kelljen gondolkodni szintaktikán és alap JSE dolgokon. Nem nagyon találkoztam olyan feladattal interjú során, ami komolyabb speciális java tudást igényel. A legnagyobb előny nyilván az, ha találkoztál már az adott problémával, vagy hasonlóval, ehhez sokat kell gyakorolni. -
ToMmY_hun
senior tag
Attól függ mi a cél, de általános esetben úgy néz ki, hogy fogod a Java bytecode-ot, megérted a működését, majd ezt megírod Java nyelven. Ez a bytecode -> forráskód konverzió. Lehet egészen más célja is a reverse engineeringnek, például rendszerek sebezhetőségének kiderítése, rosszabb esetben kihasználása.
-
F1rstK1nq
aktív tag
A Head First Design Patterns könyvhöz még nem volt ugyan szerencsém, de nagyon dicsérik.
-
bambano
titán
az isten barma júzer első mozdulattal egy hosszú usernevet vagy jelszót fog beleírni. hosszú alatt tényleg hosszút értek, mondjuk 700 ezer betűből állót.
másodikra ékezetet, szóközt, stb. speciális karaktereket
harmadikra olyan karaktereket, amikkel az adatbáziskezelőt lehet fejreállítani. mindenre van xkcd.ráadásul a találgatások ellen sem ártana védekezni, tehát x darab próbálgatás után lassuló felület vagy kitiltás.
-
Ursache
senior tag
"- ha lenne regisztráció is, akkor ha a megadott min. karakterszámú jelszót nem adott meg, akkor javítsa."
Ez nem feltétlenül csak abban merülhet ki, hogy hány db karakterből áll. Simán lehet további megszorítást is adni: legyen benne kis- nagybetű, etc.
Figyelni arra is, hogy ne lehessen floodolni, tehát ne tudjon beküldeni 5000 kérést 1mp alatt, vagy ha sikerül is, akkor is a szerver tudja lekezelni.
A jelszó és/vagy a felhasználónév mezőt ne tudja kitölteni 6000 ezer milliárd karakterrel => slow-ddos (slow rate attack), de lehet ez sem kell hozzá, hogy a szeró megdögöljön.
-
WonderCSabo
félisten
Tehát azt nem értem, hogy pl. miért lesz az első elem típusa string, amikor mind a kettő byte.
Harom elem van. Az elso string "a+b=". A masodik ket elem egy-egy byte.
Vagy, ha így lenne: System.out.println("a+b="+(a+b));
akkor kerülne kiírásra ez: "a+b=7" ?Igen.
"+ karakterpáros egymás melletti használata
Itt egy felreertes lesz. Ennek a ket karakternek egymas mellett semmilyen specialis jelentese nincsen. A + operator tul van terhelve, es ha barmelyik oldalan egy String van, akkor nem az alapveto osszeadast vegzi el, hanem string osszefuzest. Eloszor persze ehhez azt az elemet ami nem string volt, stringge alakitja. Ez tortenik a pelda eseteben is.
-
-
Lortech
addikt
Az, hogy "nincs".
Arra kell válaszolni, amit kérdeztek. Ha ezt így indoklás nélkül nem fogadják el, akkor hülyék. A túlokoskodás pedig nem biztos, hogy előnyös.
Egyébként vélhetőleg azért nem lett java-ban, mert egyszerű OOP nyelvet akartak. Az interface-ek adnak valamelyest megoldást a problémára.
Az ilyen típusú tesztektől egyébként falnak megyek, főleg mikor senior/lead dev pozícióra is ilyenekkel pre-screenelnek. -
M_AND_Ms
veterán
Szomorú, hogy ilyen kvízkérdésekkel interjúztatnak.
Én több, mint 10 éve programozok (többnyire java, plsql). Ma sem tudnom fejből egy ciklus szintaktikáját. Ott a codeassist az megírja. Én meg megtöltöm tartalommal.
A láthatóságok listáját se magoltam be mégis ismerem, értem és használom őket, de ha kérdeznének biztos kihagynám valamelyiket.
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- MacBook Pro 14" M1 MAX - 32GB / 1TB (2021) - Cseh billentyűzet - 224 ciklus / 88% - 1 év garancia
- Új - Macbook Pro 13" M1 - 2020, 16GB RAM, 1 TERA, touchbar - Apple garancia (106)
- Macbook Pro 13" M1 - 2021 gyártás, 16/512GB, touchbar - garancia (56)
- Macbook Pro 13" M1 - 2021 gyártás, 512GB, touchbar - garancia (63)
- BenQ LW650 3D Lézer WIFI DLP Projektor -4000 ANSI Lumen - 20E óra élettartam - USB-C - WXGA 1280x800
- BESZÁMÍTÁS! ASUS Z97-A Z97 chipset alaplap garanciával hibátlan működéssel
- Apple iPhone 14 Pro 128GB Kártyafüggetlen, 1Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 9 5900X 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Eladó ÚJ, BONTATLAN Samsung Galaxy A05s 4/64GB ezüst / 12 hónap jótállással!
- Kingmax 2x2GB DDR3 1333 RAM eladó
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest