Hogyan tudnék tovább fejlődni programozásban?
Sziasztok!
Egy ideje tanulok már programozni, és úgy érzem, hogy az alapok egész jól mennek, viszont ötletem sincs hogyan tudnék nekiállni egy komplexebb feladat megoldásának. Például egy alkalmazást nem tudnék összerakni. Kerestem neten gyakorló feladatokat, de nem igazán jártam sikerrel.
Leginkább a Java és Python nyelv érdekelne, köszönöm ha rámszánod az időd.
Szerintem kezdj el összerakni valamit, és egy idő múlva érezni fogod, hogy hol vannak a gyenge pontjai? Lassú? Spagetti a kód? Nehézkes bővíteni, karbantartani? Ha megvan, keress ezekre a hibákra megoldásokat.
Közben nézegess nyílt forráskódú projekteket, olvass olyan könyveket, mint a Programtervezési minták, Clean code és hasonlók.
Mi okozza a problémát? Nem látod át, hogy az elemi lépésekből hogyan lesz egy összetettebb program?
Illetve mit értesz alapok alatt? Az úgynevezet "programozási tételeket" mennyire érted? (Összegzés, eldöntés, kiválasztás, stb.)
A programozási tételeket megtanultam, értem is.
Igen, az elemi lépésekből felállítani egy komplex programot, az nincs még meg, illetve nem is tudom hogyan tudnám elkezdeni.
Köszönöm szépen a válaszokat! 😃
Na, akkor meg is van, hogy hol akadtál el, és mi az, amire következőnek rá kell érezni. :-)
Egyébként ez gyakori "elakadási pont". Eddig az ember csak tanult és értelmezett, és most jött el az a pont, amikor alkotni kell. Ez pedig tényleg olyan dolog, amire rá kell érezni. Erre pedig a legjobb, ha minél többet gyakorol az ember. Az elején nem biztos, hogy nagy lesz a sikerélmény. Mondjuk szerintem az #1 által ajánlott könyvekkel ráérsz még pár évet, de ha találsz a szintednek megfelelő könyveket, példatárakat, azokat érdemes áttanulmányozni.
Ami a gyakorlást illeti: először mindig valami egyszerű feladatot tűzz ki! Sokan pont itt rontják el: azt hiszik, hogy ha elkezdenek programozást tanulni, akkor meglehetősen rövid időn belül valami nagyot fognak elérni. Hát... nem. (És ezért szokták a legtöbben feladni. Mert mi az, hogy fél év után még itt tartanak, hogy számkitalálós játék, meg talán-talán egy karakteres módú ötödölő...) Egyébként ezek is jó gyakorlófeladatnak tűnnek. Mondjuk egy számkitalálós játék. Oda-vissza. A gép "gondol" egy számot, a felhasználó tippel, a gép pedig kiírja, hogy kisebb, nagyobb, vagy hogy eltaláltad. Ugyanezt meg lehet csinálni fordítva is. ;-) Te gondolsz egy számra, a gép pedig lehetőleg minél kevesebb lépésből próbálja kitalálni. Vagy például írhatsz egy egyszerűbb szöveges kalandjátékot. Még szórakoztató is. :-) Lesznek persze buktatók. De van, amit meg kell tapasztalni, hogy az ember jó programozó legyen. :-)
Egyébként javaslom előbb mindig megtevezni a programot. Akár papíron, akár valamilyen szövegszerkesztőben, vagy jegyzetelő programban. De ha nem riadsz meg a szöveges képernyő komolyabb kezelésétől, akár egy karakteres módú Snake-klónt is írhatsz. Vagy akármit. ;-)
Ha van valami olyan hobbid, amiben adatokkal kell/lehet dolgozni, azt is felhasználhatod gyakorlásra. Engem például érdekelt a meteorológia. Pont kapóra jött, hogy tudtam hozzá nyilvántartó és elemző progrmaokat írni. Lehet, hogy egy Excel ugyanezt simán tudta, de nem is ez a lényeg. :-)
Meg... ha esetleg érdekelnek a mikrovezérlők, beágyazott rendszerek, ilyesmi, meg persze az elektronika, akkor nagyon tudom ajánlani a Raspberry Pico-t. Píthonban is programozható, sőt, az a preferált nyelv hozzá.
Ez engem is érdekel hogyan lehetne fejleszteni ezt a készséget, a programozással nekem sincs gondom ilyen dinamikus programozási feladatokat / 8 királynő probléma / backtrack algoritmus / B-fa konstruálás és a hozzá tartozó metódusok programozása / gráfbejárások nem okoznak gondot, fejből is le tudom programozni de összetettebb amire használni szeretném például Aimbotot gyártani online játékokhoz vagy moddolni offline játékot hogy pl repüljenek az autók vagy mesterséges intelligenciát létrehozni olyan játékhoz amihez nincs meg a forráskód és "támogassa" az én játékomat még nem sikerült alkotnom csak összeáll a kép aztán olyan 10-15 ezer sor kód után elveszítem a fonalat hogy mi miért nem működik és inkább hagyom az egészet xdd
kisebb és könnyebb projektek mennek pl online memóriajátékhoz írtam olyan képfeldolgozó algoritmuson alapuló progit ami megjegyzi a kártyalapok pozícióját és highlightolja a lapot ha épp kihúzom annak a párját vagy még egy másik kvízoldalhoz csináltam olyan progit hogy a kérdést lekérdezi az adatbázisban és automatikusan beírja a választ vagy rákattint a helyes megoldásra nagyon kis idő elteltével. Viszont sajna ahogy említettem komolyabb progikat nem vagyok képes leprogramozni ezért +1 ha valakinek van vmi ötlete miben kellene fejlődni
#5 A programozás olyan hogy nem sikerül minden elsőre, vagy másodszorra vagy hatmadszorra. Fontos megtanulni hogy hogyan lehet valamit debugolni, vagy hogyan odanak meg egy adott problémát mások mondjuk egy másik játékban.
Kérdező a projekt bármi lehet, én pl összeraktam magamnak egy python alkalmazást amivel követni tudom a pénzügyeimet és a többi hónappal össze tudom hasonlítani, ki tudom értékelni. Néha találok ki új feature öket amit megint csak belerakok.
De csináltam már okos otthon automatizálást és társait is. Mindig van valami amire nincs megoldása másnak mert olyan dolgot nem tud ami neked kéne.
Próbáld meg a projektet részproblémákra szedni. Mivel tudod megcsinálni a frontend/ backend részt, mit tudjon a prograam? Mi a legalapabb dolog amire minden épül? Mit kellene annak a résznek tudnia?
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!