almatom írta: ↑2020.08.04. 12:03
Iszonyat nagy projekt egy ilyen, az ember el sem tudja képzelni!
Bizony ez így van, főleg mióta sokan azt ígérik, hogy bárkit megtanítanak programozni fél év alatt a nulláról
Sokan azt hiszik, hogy ez is olyan, mint pl.: a Paint és ami kell behúzom oldalról egy eszköztárból, vagy rákeresek bármire google-be és CTRL-C, CTRL-V... Az, hogy megtanulsz egy programozási nyelvet, az olyan mintha megtanulnál angolul, ergo ha valaki azt mondja, hogy nyiss meg egy file-t és olvasd ki az első sort, azt le tudod fordítani egy olyan nyelvre, amit a gép megért. A mutatvány nem ez, hanem kitalálni az egészet, építőköveire bontani, rendszer szinten összerakni mindent és felkészülni a kivételekre, kigondolni, hogy mit is fog elrontani a user, kigondolni mit hogyan és hol tárolsz, stb, milyen forrásokat használsz, létrehozni azokat... Ha már van egy ilyen működő rendszered, akkor pedig úgy kell beleigazítanod az újdonságokat, hogy ne húzd keresztbe a már működő funkciókat... mindezt mire kigondolod rengeteg idő és még egy sort sem kódoltál, csak gondolkoztál. Ha a terv jó, kódolni már "könnyű".
Csak egy példa, írsz egy programot ami bekér két számot és elosztja, egy sor gondolnád, ami valóban igaz, működni fog amíg minden jó, aztán ha bibi van akkor csak lefagy, a user meg azt sem tudja mivan. Helyesen: bekérsz egy számot és megvizsgálod, hogy valóban szám-e, ha nem akkor visszajelzel valahogy a felhasználónak, hogy barátom ez nem jó, add meg újra. Megismétled ugyanezt a 2. számmal. Itt még nincs vége, mert ugye nullával nem lehet osztani, tehát arra is meg kell vizsgálnod a második számot, és visszajelezned ha baj van. Ha minden jó, elvégzed a műveleteket és kiírod az eredményt.
Bonyolíthatnám tovább, hogy mi van ha le is akarom tárolni az eredményt. Na, így kell mindent lebontanod, mikor tervezel legyen szó egy mezei kalkulátorról, a hangszered oprendszeréről, vagy egy arranger programról. És akkor még nem beszéltünk arról, hogy megírsz valamit, évekig működik, aztán jön egy frissítés az oprendszerre, vagy az adatbázisra vagy bármire, aztán nem működik valami