Programozáshoz kell valami különféle adottság?
Nem értek teljes mértékben egyet azzal, hogy matektudás kell a programozáshoz. Nem matektudás kell, hanem matematikai logika. Az egyetemi analízis órák nélkül is lehetsz kiváló programozó, de sziklaszilárd logika, komplex problémák értelmezése, rendszerben látás nélkül nem. Az egyetemeken sok mindent tanítanak és sok minden tudnak adni, de egy dolgot nem: intelligenciát. Annyival jössz ki, amennyivel bementél, és az intelligencián áll vagy bukik az általános programozás.
Természetesen matematikai jellegű problémák megoldásához kell a tömény matematika, de pont annyira, amennyire kell a közgazdaságtan, ha gazdasági elemző szoftvert írsz, vagy kell a pszichológia, ha frontendet fejlesztesz.
Ez is tipikusan egy olyan szakterület, ahol minél több szerteágazó ismereted van a világból, annál jobb vagy a saját szűk feladatkörödben. Sosem tudod, hogy mi az, amitől lesz egy zseniális ötleted egy gyönyörű algoritmusra. Lehet, hogy éppen az evolúció vagy az emberi szervezet működésére húzál rá egy analógiát, mégsem mondaná soha senki, hogy evolúciós biológia kell a programozáshoz.
Azt gondolom, hogy a matematikát nem azért szokták kiemelni elsősorban, mert pont az kell, hanem mert általában (és néha nem) összefügg az emberek matematikai affinitása a programozói affinitással, a hasonló logikai struktúrák miatt.
Egy csöpp ésszel lehetsz egy csöpp programozó, és ezek feljebb is korrelálnak. ;)
Figyelj az OS programozáson nem véletlenül nevettek ki. Az az egyik legnehezebb területe a programozásnak. Ismerned kell a hardvereket elég komolyan, tudnod kell, hogy ha írsz a billentyűzeten mi is történik a gépben tulajdonképpen:
1. leütöttél egy billentyűt
2. ez küld egy jelet a processzornak, ami megszakításnak hívnak
3. A processzor nem fogad el másik megszakítást, amig ki nem deritette a megszakítás okát
4. A processzor kiderítette, hogy megszakítást a billentyűzet adta
5. A billentyűzet bufferjéből átmásolja a processzor regiszterébe annak a billentyűnek sorszámát, ami leütöttünk
6. A sorszámot összekapcsolja a tényleges karakterrerl
7. elküldi a processzor a videómemóriának ezt az adatot( ami még kb hasonló, de mégis más dolgot csinál)
8. a processzor újra engedélyezi a megszakítások beérkezését
Ezek "csak" a legfőbb lépések voltak, szóval ezt mind-mind le kell tudni kezelni, ezeket az operációs rendszerek végzik. Matek, nos ezeket a memóriacímeket 16-os számrendszerben lehet olvasni és írni, de természetesen lehet írni konvertáló függvényt, vagy beépítettett használni.Jah és közben egy csomó olyan algoritmus van még, ami megoldja, hogy egyszerre egy folyamat férjen hozzá a billentyűzethez( na ez az ami a windowsba nincs így), és a többi eszközhöz. A lényeg mindenhol a futási idő csökkentése, és közben még nem beszéltünk biztonságról sem, amely megint jó sok algoritmust igényel.
Programozáshoz kell-e adottság?
Nos szerintem igen, mert tudni kell egy feladatot véges számú elemi lépésre lebontani az adott programnyelv utasításainak megfeleően. De kellő kitartással minden tanúlható. Bár ehhez akarat, idő és energia kell hozzá.
Én ezt írtam,hogy "egy operációs rendszerhez kell matek tudás" egy szó se volt róla,hogy én akarok írni sőt nem is nagyon érdekel ez a fajta programozás......
De köszi a válaszokat.
Nem tudom, miért jön itt mindenki a matekkal, tekintve, hogy az nem adottság.
A válasz pedig a kérdésre: Nem, nem kell hozzá adottság.
Csak jóval gördülékenyebben megy a dolog, ha van hozzá adottságod.
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!