Nová kniha: C++ bez předchozích znalostí

Diskuze čtenářů k článku

14. 06. 2009 00:15
13. 06. 2009 19:01

Další učebnice C++?

Co nového se na tomto jazyku dá ještě ukázat? Jaký nový pohled, metoda učení, něco co tady už dávno není hned v celé řadě provedení? Vždyť různých učebnic C++ dokonce i v češtině vyšlo dost na zaplnění celkem slušně rozsáhlé knihovny.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 12:02

další kniha o C++. Jako by jich nebylo dost a možná i lepších. Tuto sice neznám, ale řekl bych, že nejlepší knihy jsou Mistrovství v C++ a Naučte se C++ za 21 dní. K tomu bych přidal ještě něco o UML a objektovém návrhu vůbec, např: Základy objektově orientovaného návrhu v UML.

Případně ještě knihu o návrhových vzorech.

Pro začátečníky co si chtěji vyzkoušet napsat jednoduchou aplikaci bych doporučil asi Python.

Jinak si myslím, že lépe je naučit se třeba Javu nebo .NET.

Sice je machrovinka když někdo umí C++ nebo Assembler nebo rovnou stroják, ale jde o to, co víc a lépe využiju v praxi.

V prostředí bych problém neviděl. Sice je to ořezané, ale začátečníkovi to vadit hned nemusí. Později až se zorientuje, tak si vybere co mu vyhovuje. Možností je řada. Code Blocks, Net Beans, Eclipse.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 19:40

"Jinak si myslím, že lépe je naučit se třeba Javu nebo .NET."

Java-ok,beru,v posledních verzích se to jakž takž zlepšilo...

ale .NET?Ta microsoftí blbost primárně pro windows?Proboha proč?Řekni mi kde se to využije?

"Sice je machrovinka když někdo umí C++ nebo **Assembler nebo rovnou stroják**, ale jde o to, co víc a lépe využiju v praxi."

V tom případě nevím co je podle tebe stroják,binárka?

C++ se v praxi využije,na nějaké kopírování souborů použiju bash,další úroveň je pro mne perl,a poté když chci nějaký opravdový program,tak použiju C++.Je to jednoduchý,jasný a s nějakou knihou popisující C++ a trochou času to v klidu napíšu :)

Souhlasím  |  Nesouhlasím  |  Odpovědět
Flasi  |  13. 06. 2009 20:01

Koukám, že pán je odborník

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 20:30

Tak nezáviď, když se budeš učit od zkušenějších, budeš třeba taky jednou takovej praxí ošlehanej frajer...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 23:24

Mu vadí že mu .NET na linuxu nejede (i když mono si to celkem dává). Kdyby věděl oč jde a nebo si to zkusil (vývoj v C#) tak by se v životě nezeptal proč proboha .NET.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 20:25

**Assembler nebo rovnou stroják**

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 05:14

Taky jsem se nad tim pozastavil. Mozna myslel to, ze nekdo umi psat program primo v hexadecimalnich opcodech a to uz skutecne machrovinka je. Ja v opcodech zvladnu jenom par trivialnich instrukci jako nop, jmp, prefixy apod.

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 10:58

Tak. Asi sem se špatně vyjádřil.

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 19:46

SPrávný programátor odjakživa potřebuje k napsání programu pouze příkazový řádek:

copy con program.zip

A píše. Proč .zip? Přece aby nemusel pakovat .exe dodatečně.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 20:33

Ty si neprogramoval ve strojáku?

Jasně, že C++ se využije, já jen zjistil, že mi víc vyhovuje Java, protože to samé v ní udělám rychleji a taky je to přenositelné i na jiné platformy, což je pro mě důležité jelikož kromě Win jedu taky na Linuchu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 20:52

Čo sa týka tej prenositeľnosti na iné platformy, tak je na tom C++ rozhodne lepšie než java...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 21:12

Bez rekompilace? I s GUI? :D Vypravej nam o tom prosim...

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 13:39

Tak skompilovať to na každú platformu treba, ale myslím že to zrovna moc ľudí nesere, napísať dva príkazy nie je zas tak zložité. GUI nie je problém, napríklad Qt podporuje rozhodne viac platforiem než swing (aj keď na niektorých mobilných samozrejme treba prispôsobiť kód danému typu zariadenia)

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
14. 06. 2009 14:36

Tak snadne to prave neni, rok a pul sem pouzival FreeBSD a tam byl treba problem, ze kdyz si clovek zkompiloval Sambu s libovolnou optimalizaci, tak se budto nedokompilovala a nebo furt padala(Uz si to presne nepamatuju), coz moc o skvele portabilite C++ nesvedci, no ono se staci podivat na monstroznost nekterych ./configure skriptu, ze To ze to staci prekompilovat pro dalsi platformu je mozna relativne fajn pro vyvojare, ale rozhodne to neni fajn pro zakaznika co nema pristup ke zdrojakum.

Od te doby co je Java opensourcovana, bych si tim ze je QT na vice platformach nez SWING, tak jisty nebyl, kuprikladu se da nacpat do jailbreaknutyho iPhonu

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 11:12

no zrovna c++ na zpracovani textoveho souboru, to mi prijde jako kanonem na mouchu, napriklad php je na tuto problematiku vhodnejsi kandidat, popripade java, na jednoduche veci jako trideni, zpracovani obrazku, parsovani textu, proste na takove jednoduche zalezitosti je java idelani, navic dodelani okna s vyberem cesty ppr. souboru neni tak narocne jako v pripade c++ a zejmena ve win api. na unixech na to zase je bash v kterem se da napsat leccos.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 10:22

Skutečně objektové vlastnosti jazyka C++ jsou v knize zmíněny na posledních 15 stranách, takže 95 % knihy popisuje vlastnosti, které jsou shodné s klasickým jazykem C.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 09:21

... ale dočetl jsem se "České vydání bylo aktualizováno na o použití Microsoft Visual Studia 2008" takže kniha opět na h, teda na nic Tolik príma free IDE i pro Windows existuje a autoři to zkazí visual studiem Ani bych se nedivil, kdyby se spletli a místo C++ mělo být napsáno C#

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 09:38

A Visual Studio free není? tak to asi mám nelegální kopii express edition :D

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 09:55

Na nekomerční účely, nebo se pletu?

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 10:03

Express Edition lze použít i pro komerční účely

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 10:57

Nicméně c++ je v express verzi silně očesané a je možné v něm psát akorát konzolové aplikace bez podpory mfc. Tuším, že není podporováno ani generováni 64bit kódu

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 11:07

Pro C++ 64bit podporováno není (ale to začátečníkovi s hello world aplikací nevadí)

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 11:19

neni podporovano mfc? vsak to taky pouzivaji jen zoufalci.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 14:55

Skoro bych se zeptal, v čem je MFC tak strašné, ale to bych se musel ptát někoho, kdo tomu rozumí...

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 18:55

v mfc sa píše hrozne, a dneska ho už nikto na nové veci nepoužíva, akurát sa udržujú veci čo v tom už sú napísané...

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 23:25

A hele, další, kdo se vyzná. Zkus si spustit Dependency Walker a možná budeš překvapený. Pokud MFC nikdo nevyužívá, jaká je podle tebe v C++ náhrada?

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 00:37

Záleží na tom, co myslíte výrazem "náhrada". C++ knihoven částečně nebo i zcela nahrazujících MFC je celá řada - i multiplatformních. Např. Qt, wxWidgets, FLTK, SmartWin++, WTL, ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 08:32

Myslím tím to, že pokud si někdo koupí Visual C++, tak se asi sotva bude otravovat zkoumáním toho, co mu nabízí milion dalších knihoven. MFC je s Visual C++ a OS natolik provázané, že umožňuje pohodlný vývoj a jednoduchou distribuci produktu. Takže k čemu nýhrady?

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 19:07

MFC pochopitelně strašné není, ale je velmi poplatné době svého vzniku a tedy z dnešního pohledu neohrabané, s nabalenými zbytečně tlustými knihovnami.... v tomto směru je výbornou náhradou WTL (viz. http://en.wikipedia.org/wiki/WTL)...

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 23:40

Zkuste si vyhledat počet odkazů na WTL vs MFC na webech nabízejících práci - třeba monster.com nebo jobpilot. Nebo dejme tomu codeproject.com. Obávám se, že ohledně WTL budete zklamaný - wtl se nikdy pořádně neujalo. A těch pár desítek kB navíc v době, kdy máme GB, že to vůbec řešíte?

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 00:40

Jistě. MFC je tady už téměř 20 let, takže má rozsáhlou základnu zdrojáků a lidí "co do toho vidí". Ale to nic nemění na tom, že je to z dnešního pohledu těžkopádná a zastaralá záležitost, která má to nejlepší už za sebou a teď už jen dožívá.

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 08:24

Jestli něco dožívá, tak je to spíš C++. Na desktopu je nahrazováno Javou nebo .Net. Jasně, tyhle vývojová prostředí se nehodí na vše, ale mají neustále rostoucí potenciál, což C++ už delší dobu nemá

Jinak MFC tady bude tak dlouho, jak dlouho se bude vyvýjet v C++.

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 13:36

Tak schválne, koľko javových programov asi tak bežný user na desktope používa? Jediné kvôli čomu mám javu na compe ja je eclipse...

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 14:44

Například .Net se používají pro ASP, což v dnešní době zaměstná celkem dost vývojářů. Když si třeba i na Desktopu člověk promítne, kolik času na internetu stráví, tak je jasné, jakou budoucnoust tahle prostředí mají. V .Netu je dále napsáno spousta aplikací typu Paint.NET nebo CreativeDocs.Net, což sice nejsou úplně nejrychlejší věci na světě, ale v celku fungují a za tu cenu co si budem říkat. Rychlost a nenáročnost vývoje vývoje dělá tohle prostředí určitě zajímavým.

Co se Javy týče, tuhle jsem byl u doktora, a aplikace na chorobopis mi nápadně připomínala Javu. Tuším, že se taky hodně používá pro vývoj aplikací pro mobilní zařízení.

Tady C++ prostě nemá co nabídnout.

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 15:23

Hm, takže čo sa týka desktopu tak v jave je absolútna menšina programov, .NET je na tom trochu lepšie, ale stále sú to technológie ktoré majú uplatnenie hlavne na serveroch...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
14. 06. 2009 17:30

Tak domenou Javy je predevsim Enterprise nasazeni v podnicich, tam je bezkonkurencni.

Souhlasím  |  Nesouhlasím  |  Odpovědět
15. 06. 2009 10:13

java? java se hodi na mali aplikace kde mi nezalezi na vykonu a nepracuju s obrimi mnozstvimy dat, vsimnete si ze vetsina velkych her je naspsana v c++.

Souhlasím  |  Nesouhlasím  |  Odpovědět
15. 06. 2009 10:27

Ze setrvačnosti. I v Jave je napsána řada her a ne jen nějakých malých hříček.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
15. 06. 2009 14:47

Tak ted si sve ostatni komentare vazne korunoval :D Vetsina "velkych her" je proti tomu co se pise v Enterprise Jave nenarocna hricka. Ale to pokud se nepodivas za hranice sveho desktopu, asi vazne neuvidis

Souhlasím  |  Nesouhlasím  |  Odpovědět
15. 06. 2009 10:22

v cem tkonkretne o uz si moc nepamatuji, uz je to deset let co jsem to pouzival, ale pamatuji si ze to bylo tezkopadne, a nektere veci nesli v kodu vubec prosadit, narozdil on win32 api, kde slo vsechno, a pomalu mi trvalo kratsi cas udelat cele rohrani aplikace v w32 api, nez studovat jak za ucelem konkretniho pripadu ohnout mfc..

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 10:03

7. Can I use Express Editions for commercial use?

Yes, there are no licensing restrictions for applications built using Visual Studio Express Editions.

http://www.microsoft.com/express/support/faq/...

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 10:13

Tady nejde o free tady jde hlavně o to jestli jít s kanónem na komára a kvůli tomu se učit ovládat kanón, balistické výpočty ....

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 10:57

Z pohledu začátečníka v tom nevidím žádný rozdíl. Vytvořit mini aplikaci v MSVCEE jde velice rychle a snadno stejně jako v jiných IDE možná i snáze. DevC++ je starý a zabugovaný, Code::Blocks je ještě složitější (z mého pohledu pro začátečníky).. a dalších možností už moc není. Navíc když se učí jazyk nezáleží na prostředí, na tom záleží až když člověk něco umí. Navíc pomocí MSDN kontextově nebo obecně lze okamžitě získat kýženou nápovědu k funkcím a to řekl bych také začátečníkům pomůže. Osobně lepší variantu než VS nevidím (jen nevýhoda že má víc MB než ostatní,ale to už dnes není problém)

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 11:24

nemyslim si ze zacatecnik ktery uz zvlada algoritmizaci a navrhove vzory by si mel zaneradit hlavu napriklad pokroucenym pouzivanim mfc, ale mel by jit od jadra veci, jako za behu si umet vytvorit tlacitko jeho ovladani atd. Mfc se sice da naucit pomerne snadno a rychle, ale kdyz zacnes chtit vic zacnes narazet, a nez resit nevyresitelne je lepsi cele mfc zavrhnout a jit na to od zakladu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 00:59

naučte se programovat v C++....cituji: aby jste udělali malý, jednoduchý program, který by něco spočítal, vyhodnotil nebo třeba jenom upravil textový soubor podle určitých kritérií....

No já nevím, ale učit se měsíce tak složitý a rozsáhlý jazyk kvůli vytvoření něčeho tak banálního je podle mě nesmysl.Polovina lidí asi vydrží jen do první kapitoly a kniha půjde na věky do regálu. Jiná situace by byla pokud by šlo o vážný zájem věnovat se programování profesionálně i nadále, pak je C++ asi nejlepší volba do budoucna..Jinak bych na takové malé prográmky volil raději V.Basic,Python, případně Javu které jsou na naučení daleko snadnější.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 01:28

ano presne male a jednoduche delam ve vb6 a nejak se mi do jinych jazyku moc nechce

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 09:19

Jo ale když už člověk řekne že umí programvoat v c++ je to hned o něčem jiném. Céčko zná mnohem víc lidí ale v praxi jsou vám BFUs ukradení.

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 11:16

no znat a umet je preci jen rozdil(navic odbornik nebude rikat umim c++, to je celkem k nicemu, ale rekne umim win32 api, mfc, directx a jine.), vposlednich nekolika letech se ale spis prosazuji hracky pro vysokoskolaky jako je java.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 12:20

Aha a protoze to je hracka pro vysokoskolaky, tak to pouzivaj pojistovny, telekomunikacni spolecnosti, NASA, popripade energeticky zavody :)

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 18:54

tak keď je na trhu veľa javových programátorov za dostupné ceny

Souhlasím  |  Nesouhlasím  |  Odpovědět
15. 06. 2009 10:14

jazyk ktery neumoznuje vicenasobnou dedicnost ....

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
15. 06. 2009 14:43

Vicenasobna dedicnost neni v Jave implementovana umyslne, nehlede na to ze se da do jiste miry nahradit interfacema. Jinak blbejsi argument te uz vazne napadnout nemohl

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 09:22

někteří to dělají ještě jednodušeji v shellu

Souhlasím  |  Nesouhlasím  |  Odpovědět
13. 06. 2009 13:37

jojo.. bash rules

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
13. 06. 2009 20:23

+1 xD

Souhlasím  |  Nesouhlasím  |  Odpovědět
snake  |  14. 06. 2009 06:22

Vážně je tam, také cituji "aby jste"? Ech, tak od něčeho takového raději ruce pryč. Protože jestli si páni neporadí ani s mateřským jazykem, jak pak mohou probůh chtít poučovat o jazyce cizím a ještě drsněji formalizovaném (=s ještě striktnější gramatikou)?

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
14. 06. 2009 23:25

to je vse na co se zmuzes ? najit chybku a chytit se toho ? neni to tim, ze jsme lidi a delame chyby ?

spise by to chtelo od tebe vice gramatiky. Meumis spravne napsat vetu s punktuaci a spravne ocitovat text.

hovadko

Souhlasím  |  Nesouhlasím  |  Odpovědět
14. 06. 2009 23:53

Teda mě to taky nedá - nějakou chybku občas udělá každý, ale co je moc, to je moc:

- Věty obvykle začínají velkým písmenem. Rozhodně to není tak, že jednou začnu, jednou ne.

- Dvě věty v souvětí se obvykle oddělují čárkou

- Před otazníkem se nedělá odskok

- V češtině se používá pojem interpunkce, punktuace nic neznamená

- Zajímavostí Unicode je, že lze už nějakých pár desítek let používat diakritiku

Souhlasím  |  Nesouhlasím  |  Odpovědět
snake  |  15. 06. 2009 04:19

Ano, jsi hovádko, podepsal jsi se skutečně výstižně. Že jsi to nemyslel jako podpis? Ale kdeže! Jistě myslel, protože kdyby to bylo např. zvolání, bývalo by bylo zakončené vykřičníkem, v krajním případě tečkou, o počátečním velkém písmenu nemluvě.

A jen hovádka v dnešní době dělají mezery před otazníkem, neumí psát velká písmena a nepoužívají diakritiku.

Jinak souhlasím, že jsme jen lidi, a chyby dělá každý. Můj příspěvek si však narozdíl od knihy nečiní nárok na autorský honorář - a nepovažuji u něj tedy za nutné, aby prošel povinnou jazykovou korekturou. A na něco tak ohavného jako je "aby jste" by stačil i vnitřní korektor Wordu ve verzi před deseti lety... A i když zrovna "aby jste" neberu vůbec kdekoli, považoval bych za jakž takž akceptovatelné, aby se gramatické přehmaty objevily v nějakém lehčím čtení, řekněme beletrii, a ne - probůh! - v odborné literatuře, nota bene z oblasti, kde je navíc dokonalá správnost _gramatiky_ doslova striktně vyžadována. Větší ironií než tady by bylo udělat takhle hrubou chybu snad už jen ve Slovníku spisovné češtiny!

Souhlasím  |  Nesouhlasím  |  Odpovědět
Zasílat názory e-mailem: Zasílat názory Můj názor