CodeBlocks ban hogy lehet "grafikusan" programozni?
Egy éve matekinfóra járok tehát egy két alap dolgot már tudok, de mi mindig csak consolba programoztunk.
Gondolom az új projectnél kell valami mást kiválasztani, de nem tudom pontosan mit.
A "grafikusan programozni" nálad mit jelent?
- UML alapján kódot generálni,
- AST,
- képfeldolgozó algoritmusok,
- Grafika: OpenGL, Direct3D, clutter?
- UI: programozás,
- UI: designerrel felülettervezés?
#1 vagyok.
Végülis mindegy is, hogy melyikre gondoltál. Elmondom miért.
1: olyan nincs, hogy IDE-ben projektet kiválasztasz, aztán írod a programot és működni fog.
AST és UML felesleges, amíg kis programokat csinálsz egyedül. Ezeknek akkor van értelme, ha az ember nagy-létszámú csapatban van.
GUI: ide elengedhetetlen az eseményvezérelt programozás alapos ismerete, plusz valami framework(wxWidgets, Qt, tcl/tk, windows forms, stb...) és tervezési minta(mvc, mvp, stb...) ismerete. wxWidgets-et javaslom ( [link] mert könnyen tanulható. Ha már egyet ismersz, akkor a többit könnyebb tanulni. UI tervezőknek inkább akkor lesz haszna, ha már az alapjaiban és a miértekkel tisztában vagy, ha hamarabb kezdesz azzal, csak zavar lesz a vége.
Az opengl meg a direct3d pedig jóval nagyobb falat, ráadásul rengeteg elméletet is ismerni kell hozzá.
Kiindulásnak a [link] nem rossz tutorialsorozat, de hangsúlyozom: ELMÉLET SOK KELL HOZZÁ.
Akármelyik is, itt a gyk-n egy válaszban ezek egyike sem tanulható, max linket kapsz, de azt a google-val magadtól is találsz bőven.
Amikor GUI projektet választasz, akkor kb. annyi történik, hogy a fordító kap még pár könyvtárat paraméterben, amik szükségesek. API szinten elég macerás, ezért szinte mindenki valamilyen toolkitet (vagy framework-öt) használ, ami egyszerűsíti a GUI elérését, használatát.
Az ablakos működés az op.rendszer "szolgáltatása". A progi a rendszertől kéri, hogy legyen ablaka, milyen legyen, megadja a callback címeket, stb. Utána eseményeket (pontosabban üzeneteket) kellene lekezelni... ritkán praktikus. A fentebb említett wxWidget (de sok más is van) pl. ezeket egyszerűsíti. Válassz ki egyet, ismerd meg, idővel bele fogsz jönni.
(+Gugli: codeblocks gui "hello world")
(Bár én javaslom, hogy az első hello world gui programot API szinten, toolkit nélkül írd meg, értsd, hogy mi micsoda, és utána kicsit jobban képben leszel, hogy mi történik a háttérben.)
Az oldal alján van egy teljes példaprogram a teljesen nyers "grafikus" programra, de vigyázat, ezt nem kell így megírni, csak arra jó, hogy értsd a működést a háttérben.
A példa Windows-ra vonatkozik. Más grafikus környezethez máshogy néz ki a kód.
Ezzel az a baj, hogy olyan, hogy egyszerű, nem létezik.
Az, hogy 2D vagy 3D, nem sokban különbözik. SDL-t vagy OpenGL-t javaslom megtanulni. Ha kitartó vagy, kb egy év tanulás után már elkezdhetsz játékokat is csinálni.
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!