Stránka 2 z 3

Napsal: 18 pro 2012, 09:22
od forbidden
Souhlasím, že to asi není ideální na začátek, taky jsem měl spousty nejasností a otázek, když jsem ten seriál projížděl. Ale prostě jsem zkoušel, projížděl fóra, google a časem se začalo vyjasňovat. Myslím, že právě tím zkoušením se člověk naučí dost věcí. Chce to jen čas. Momentálně zvládnu to, co jsem potřeboval, tj, komunikovat s COM portem, práci se soubory a samozřejmě nějaký ty věci okolo. Vše přes WinAPI. Zbytek se budu učit, jak nastane potřeba to umět. Jediný, co jsem zatím vzdal jsou okna. Pro mý potřeby mi stačí příkazovej řádek a zrovna práce s okny mi přijde celkem složitá.

Napsal: 18 pro 2012, 09:38
od Panda38
rnbw píše:Treba si uvedomit, ze C a C++ su dva rozne jazyky a nespajat ich dokopy. Ze sa mnoho programov v C da skompilovat kompilatorom C++ na tom nic nemeni.
A naopak - mnoho lidí si neuvědomuje, že "objektově" se dá psát i v základním C. Jen namísto class používat struktury, při dědění vložit strukturu rodiče na začátek struktury potomka, konstruktor a destruktor je nutné volat explicitně (funkce mohou být také virtuální, jako ukazatele ve struktuře), funkce se musí odlišovat jménem a musí se jim předávat ukazatel na objekt. Je to jen trochu víc zápisu, ale funkčnost se dá zajistit stejná a naopak má programátor větší kontrolu nad kódem.

Napsal: 18 pro 2012, 10:11
od rnbw
Nieco podobne sa pouziva aj v Linuxe - v jadre, ktore je cele napisane v C. Kod je vacsinou prehladny a pekne citatelny.

Napsal: 18 pro 2012, 11:00
od mtajovsky
rnbw << "To je pravda, ale částečně i není. FORTRAN a ALGOL60 jsou dva jiné jazyky. C a C++ dávají jiné .obj výstupy, C++ komolí jména a tak dále, ale většina syntaxních konstrukcí z C je použita i v C++. Z hlediska syntaxe a učení je možno zjednodušeně říci, že C++ je nadstavba. I když programátor musí mít na vědomí, že C++ přistupuje ke spoustě věcí v kódu s rozšířenými pravidly a tím nastávají efekty v holém C neznámé." ;

:)

Panda38 píše:A naopak - mnoho lidí si neuvědomuje, že "objektově" se dá psát i v základním C.
Ano, to je dotaženo v COM téměř k dokonalosti. :twisted: No, ale pohoda skutečného objektového jazyka to není.

Napsal: 22 pro 2012, 01:52
od Celeron
mtajovsky píše:I na netu je mnoho stravitelnějších seriálů.


Bohuzel, ten serial ma jen asi 5 pokracovani a od roku 2006 ani carka...
Jirka

Napsal: 27 pro 2012, 21:46
od hfechs
Pro naučení C doporučuju tento serial http://www.linuxsoft.cz/article.php?id_article=370. Podle něj jsem se kdysi C dobře naučil. Má v názvu sice C/C++, ale k C++ se dostavá až od 31 kapitoly a C++ je tam jen načaté. Ale to nevadí, část o C je dokončena a ucelená.

Jinak netřeba se bát, že se zabyvá céčkem v jeho přirozeném prostředí unixu (Linux), stačí odstavce o překladači, editorech a podobně přeskočit (takže asi začít číst od 2 kapitoly), jinak je to samozřejmě stejné. Jinak jako překladač pro windows bych místo devcpp doporučoval vyzkoušet codeblocks, Devcpp se už nevyvíjí..

Jinak na C++ radím teď zapomenout a naučit se pořádně C. C je totiž jednoduchý a univerzální jazyk, C++ komplikovaný moloch. Myslím že objektově programovat umím slušně, ale C++ jsem neměl nikdy motivaci se učit, pracuji s jinými jazyky. Také doporučuju odolat pokušení, že budu psát v C, ale přeložím to C++ překladačem, abych semtam mohl použít z C++ nějakou vychytávku (třeba string). To je podle mě prasení.

A poté nejde ani tak o jazyk, jako o pochopení základních konstrukcí a schopnosti algoritmizovat (rozložit problém na podproblémy). Když už vím, jak tvořit program a jaké konstrukce používat, je většinou naučení nového jazyka pro základní programování chvilka (samozřejmě nemluvím o extrémech jako skok z procedurálního jazyka do funkcionálního), déle pak trvá naučit se používat různé vychytávky.

Další problém je, že samotný jazyk je jen prostředek, ale pokud má program něco smysluplného dělat, ne jen vypisovat "Hello world" do konsole, je potřeba naučit se i knihovny, ve windows třeba pro tvorbu okýnek a gui blbostí, u mikroprocesoru pro nějaké VV rozhrání, převodníky, atd.. a tohle trvá obvykle mnohem déle než zvládnutí jazyka, jako příklad dám třeba knihovnu OpenGL pro 3D grafiku :). Navíc se knihovny narozdíl od jazyka pořád mění a nedá se to všechno udržet v hlavě, takže věčná práce s googlem / manuálem.

Napsal: 27 pro 2012, 23:42
od Panda38
Možná je dobré si před C udělat ještě malou odbočku. :-) Jako je skládačkový vizuální progamovací nástroj, kde není třeba se učit nějaké syntaxe, ale dají se tam snadno pochopit základní programovací techniky (jako je cyklus, podmínka) a pak už je mnohem snazší přecházet k vyšším programovacím nástrojům: http://petr.hostuju.cz/ (případně pokračovat dál např. směrem k 3D grafice, která je tu velmi snadná)

Napsal: 28 pro 2012, 01:04
od Celeron
to hfechs: Dik za rady. Nakonec jsem sehnal nekolik knih C, co kdysi vydala Tesla Eltos pro MS-DOS. Mam Popis jazyka, Prirucku uzivatele, Knihovny funkci a Programovaci techniky. Je toho asi 1400 celkem vyzivnych a pro me docela srozumitelnych stran. Jasne, je to stary, pujde to jen z prikazovyho radku, ale to mi zatim staci.
Otazka je, jestli nekde splasim to vlastni C, pro ktery to bylo kdysi napsany. Dokonce jsem vse kdysi mel na 5,25 disketach ale ty jsou uz nekde v panu. V knihach je popsany, co potrebuju za soubory a k cemu ktery presne slouzi. Tak se uvidi.
Jirka

Napsal: 28 pro 2012, 08:29
od Niki31
Take stare sracky radsej zahod.Nainstaluj si Visual studio 2010 a
programuj v sucasnych C++ alebo C# .Knih je k tomu mraky.
Zo starych verzii jazykov sa prechadza na nove velmi zle.

Este dodam na ULOZTO.cz sa da stiahnut BORLAND C do MS-DOS
ak chces.

Napsal: 28 pro 2012, 10:38
od hfechs
Celeron: C se skoro nemění. Nepřekládej to žadnými starými překladači, použij třeba codeblocks (je založený na překladači gcc, moderní překladač z unixu). Je to dokonce lepší než visual studio, protože to na C kašle a tuším že neumělo/neumí pořad normu stdc99. Zapomeň na C++ a C#, to s C nemá nic společného kromě názvu. Mikroprocesory se programujou pouze v C. Že to je jen konsolové je plus, ten můj seriál co jsem ti poslal taky je. Ono dokud nebudeš zvládat konsolové věci, je využívání knihoven nesmysl. A pak je ten princip pořád stejný, jenom místo aby ti to ten faktorial vypsalo do konsole ti ho vykreslí do okýnka ;-). Takže míst printf("Vysledek faktorialu: %i\n", value); budeš dělat nějaké

sprintf(buf, "%s", value);
SetDlgItemText( hwnd, ControlID, buf);

což tě jen odvede od původního problému.

A k těm tvým knížkám, proč ne. Ale i když jsem psal, že se C skoro nemění, jisté změny nastaly. Ty knížky budou pravděpodobně pro první normu a tam se trošku jinak zapisovaly hlavičky funkcí (to void main() { }), jinak to bude +/- stejné. A ty odlišné věci konzultuj s tím mým seriálem.

Ono vlastně není vůbec špatné učit se z více zdrojů, o tom celé to programování je ;-). Umět najít a pochopit informace a pracovat s nima.

Napsal: 28 pro 2012, 23:05
od Celeron
Niki31 píše:Take stare sracky radsej zahod.Nainstaluj si Visual studio 2010 a
programuj v sucasnych C++ alebo C# .Knih je k tomu mraky.
Zo starych verzii jazykov sa prechadza na nove velmi zle.

Este dodam na ULOZTO.cz sa da stiahnut BORLAND C do MS-DOS
ak chces.


Kdybys sledoval vlakno od zacatku, tak bys vedel, ze to chci na jednocipy a ty se programuji ve "starych srackach" tedy C bez zadnejch krizku...
Ale na Borlanda se kouknu, dik.
Jirka

Napsal: 29 pro 2012, 13:34
od mtajovsky
Pokud Borland pro MS-DOS, který se bude provozovat v konsolovem okně, tak Turbo C 2.0. Borland C++ 2.0 a pozdější (3.0 a 3.1) už pro slušný běh pužívaly extendní paměť v protected módu, pro kterou měly vlastního manažera, který není spustitelný v konsoli Windows.

Napsal: 31 pro 2012, 15:40
od Niki31
Tak pardon. Ja som myslel ze ked cech napise: "Jde mi o praci na Woknech" tak mysli programovanie pod Windows.

Ak planujes programovat mikrokontrolery potom potrebujes prekladac
ktory podporuje konkreetny jednocip.Vacsina IDE prostredi pre MCU obsahuje prekladac jazyka C.Staci si vybrat.

Co sa tyka Turbo C,Borland C tieto pokial viem nepodporuju mikrokontrolery.

Pre tu 51 je vhodny kompilator a simulátor ANSI-C pre MCU od firmy IAR Systems.
Pre Z80 neviem.

Napsal: 31 pro 2012, 18:52
od Wolfik
myslím, že tenhle dotaz se sem hodí...
S jakýma mcu je dneska nejperspektivnější začínat?
Před 2 roky jsem dělal maturitní práci s atmegou a od té doby jsem na to nekoukl a chci s tím zase začít.

Napsal: 03 led 2013, 00:14
od Celeron
To Niki31: Mas pravdu, napsal jsem to blne, myslel jsem co pouzit aby to bylo podobny a pouzitelny jak pro mikrocipy, tak pro naky jednoduchosti pro PC pod Woknama. No vychazi mi z toho zakladni C a pak se uvidi.
Dokazes porovnat IAR 51 s Kiel 51?
Jirka