Programozók miért tántorítanak el mindenkit itt gyakorin, akik programozónak szeretnének állni?
Ki beszélt itt "benőkékről"
Különben is, mindenki "benőke" volt, amikor kezdte, Te is.
Ha meg elengedő az alapokat tudni, akkor miért nem adnak esélyt a kezdőknek?
Ott vagyok, hogy ismerek egy programozási nyelvet (igen, ennyire csak egyet, de amúgy másik 5 van, amit azért nem bottal piszkálnék és további 4, amit "láttam már" (az egyiket pont most gyakorlom)), valamennyi SQL-t, több keretrendszert is a fent említett nyelvhez, a magam szintjén komplex (bár összességében biztosan tré) projektem van, és esélyem sincs a cégeknél.
A másik része viszont az, hogy azt el tudom képzelni, hogy valaki akkor lesz jó fejlesztő, ha átrágta magát egy csomó algoritmuson, ismeri, érti azokat.
Egyébként voltam olyan interjún, ahol mindenféle gyári függvény, keretrendszer esetén megkérdezte az interjúztató, hogy mi van mögötte, mit, hol használ az adott függvény. Elgondolkoztató.
Elég jó példa, ez a sorrendező-algoritmusokat miért kéne ismerjük fejből. Ja, nem. Nagyon nem.
Minden algoritmusnak van egy legjobb- és legrosszabb komplexitása, azaz műveletigénye. (Ez lenne a "nagy ordó" jelölés.)
Viszont a "melyik gyorsabb" kérdés, amin egy valamirevaló programozó is el kéne gondolkodjon.
Ugyanis rohadtul nem mindegy, miben legyen gyors ? Erőforráshatékony és lassú vagy gyorsan végez, de erőforrást nem kímél stb.
Illetve sincs, hogy a "quick sort" a legjobb például.
Pont, hogy a rendező algoritmusoknál nagyon függ az adatok alap rendezettségétől, hogy melyik algoritmus a hatékonyabb. Sztochasztikus vagy se az input. Hiába tanulsz meg millió+1 rendezést, lehet a millió + második lesz egy adott specifikus helyzetben a leghatékonyabb.
Pl. már eleve növekvő sorrendbe rendezett adatoknál talán a quicksort lesz a legkevésbé gyors emlékeim szerint...
Nyilván, ha alap feladatokat kell csinálj, nem optimalizálsz, akkor elég lehet az a pár betanult algó, frontend vonalon.
Illetve a beépített Sort() és qsort() például C++-ban.
De ember nincs, aki jó programozó, és fejből tudna mindent.
Persze, egy bubblesort-ot illik tudni fejből vagy a többi alap algót, mint ez. Aki ezt nem tudja, nem is tud programozni nyilvánvalóan komoly szinten.
"Ugyanis rohadtul nem mindegy, miben legyen gyors ? Erőforráshatékony és lassú vagy gyorsan végez, de erőforrást nem kímél stb."
Ez attól is függ, hogy mire kell fejleszteni és mit.
A logikai speckóban az architekt jelzi, hogy mi az elvárás. Adott esetben még azt is, hogy hány kb-ot kapsz erre a célra.
Lehet olyan alkalom, ahol jó szinte bármi, de aki megszokta az igényes munkát, az nem ereszt el egy bubble sortot oda sem, ahol egyébként az is megfelelne.
Nincs 2000 tanulandó algoritmus, még 1000, vagy 500 sincs.
A leggyakrabban ismétlődő problémákra vannak algoritmusok, különféle területekre. Aztán ezeket mint építőköveket használjuk, kisebb, nagyobb módosításokkal, vagy eredeti formájukban.
"Nincs 2000 tanulandó algoritmus, még 1000, vagy 500 sincs.
A leggyakrabban ismétlődő problémákra vannak algoritmusok, különféle területekre. Aztán ezeket mint építőköveket használjuk, kisebb, nagyobb módosításokkal, vagy eredeti formájukban."
Ráadásul csak egyszer kell megtanulni őket. Sose értettem, hogy ez miért probléma. Nekem nagyobb gondom van azzal, hogy pl. most már félévente jön új Java release.
#46: És még mindig hiányzik csomó nyelvi funkció a C#-hoz képest: (de legalább most már vannak lambda függvények!)
Nem, én pont a C#-ot.
Ennek megfelelően Java-ban se lennék teljesen elveszve, meg néhány különbséget tudok is.
Persze egyiket se junior szinten.
Bár a C#-ot ismerem már annyira, hogy fogalmam sincs, mit tegyek még, hogy a cégek végre szóba álljanak velem.
Egész egyszerűen annyira túlképzés lett kezdőkből, hogy csaknem lehetetlen az elhelyezkedés.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!