Meg akarok tanulni profi módon programozni. Hogyan kezdjek hozzá?
elsőre válaszold meg hogy:
1) Mire akarsz fejleszteni? mobil, asztal stb.
2) Azon belül milyen operációs rendszerre
3) majd ahhoz a legmegfelelőbb programozási nyelvet kiválasztani
...
a többit leírják a többiek
Nincs profi programozó. Csak tapasztalt van. Olyan nincs, hogy valami tökéletes, hanem csak folyamatosan fejlődő. Ezért nincs végleges verzió se, azaz sosincs kész termék.
Minél komplexebb egy program (vagy annak egy modulja), annál több módon meglehet valósítani.
Nos az édes kevés, ha valaki csak könyvből akar megtanulni nyelveket. Nem azt mondom, hogy nem lehet, de egy alapvető számítástudományt is elkell sajátítani.
- Mesterséges Intelligencia
- Formális nyelvek és Automaták
- Logika az informatikában
- Algoritmusok és futásiidők
- Bonyolultságelmélet a számítástudományban. (tárbonyolultság, időbonyolultság)
- Objektum Orientált Tervezésiminták
Persze megoldhatóak ezek nélkül is, csak akkor nem lesz hatékony az algoritmus, ha nincs legalább valami fogalmad, hogy mit ezek. A nem hatékony algoritmus több dolgot tehet:
- Eleszi az memoriát más elől, azaz túl nagy lesz a program memoria igénye
- Túl sok ideig fut. Az exponenciális futási idő még a szuperszámítőgépeket is megizzasztja. A legjobb a log(n) de még az n*log(n) is még oké. Azaz érdemes tudni, hogy milyen feladatra melyik a legalkalmasabb algoritmus, ha már létezik.
- Tisztában kell lenni, hogy vannak olyan feladatok, amiket nem lehet megoldani. Azaz van olyan probléma, amire nem létezik algoritmus vagy még nem találtak. Pl.: Algoritmikusan eldönthető-e, hogy egy másik forráskód megáll-e? Megválaszolom. Erre van egy bonyolultsági Tétel: "A megállás eldönthetetlen."
Én algoritmizálási alapokat ajánlanám első lépcsőnek, én anno egy ált. isk. infókönyvből kezdtem. Mellé pedig kezdőnyelvnek őket ajánlom:
+ Javaslom, olvass el pár tucat "hogyan kezdjek programozni" kérdést itt a GYK-n, vannak releváns gondolatok.
Az előttem szólóknak igaza van,viszont.
-Az említett tananyagok (autómaták,MI) - ezek egyetemi anyagok ezek elsajátítása otthon nehézkesebb lehet,ezekhez felsőbb matematikai ismeretek,szükségesek. (menj egyetemre - ha akarsz).
Ha ez az opció nálad nem játszik, akkor ilyen sorrendben érdemes haladni.
Miután eldöntötted hogy mire,milyen op-re és mely nyelvel szeretnél programozni.
1. Egyáltalán mi egy program
2. Algoritmusok & adatszerkezetek
3. Programozás alapjai(ezt érdemes nyelvfüggetlenül)
4. Az általad választott programozási nyelv megismerése
5. Elemi algoritmusok leprogramozása(összeg,min,max stb..)
6. Ha szükséges adatbázis ismeretek megszerzése
7. Kicsit komplexebb feladat megvalósítása(fejlődés)
Ezek után jöhetnek a tervezési minták,OOP és egyéb érdekességek.
Sok sikert.
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!