ahoj,
rozmyslal som chvilu(no dobre, tak dlhsi cas), ze kde sa pouziva C++, resp. kde nemoze byt nahradene inym vyssim jazykom(napr. Pythonom) a dospel som k zaveru, ze take miesto ani nie je...
resp. na GUIcko a ostatne veci, kde nejde o rychlost, sa neoplati pouzivat C/C++. takze jedine vyuzitia som nasiel:
1) programovanie kernelu operacneho systemu
2) programovanie driverov a ostatnych nizkourovnovych somariniek(v kombinacii s assemblerom)
3) zrejme povacsinou programovanie hier(alebo sa robia 3D hry aj napr. v jave?)
ine vyuzitie som vazne nenasiel...prosim opravte a doplnte ma, ak sa mylim...
PS: pls, no flame, nepisal som tento prispevok kvoli tomu, ide mi len o to, ze kde sa pouziva C/C++, lebo mam ten pocit, ze sa uz okrem tych vyssie zmienenych bodov neda velmi vyuzit...
Fórum › C / C++
Kde sa pouziva C/C++?
ale aku ma vyhodu oproti napr. Pythonu? vseobecne kecy, ze sa vyuziva tam, kde treba rychlost, poznam, ale nevidim uz ziadne prakticke vyuzitie okrem toho, co som uz napisal...
inac napr. Python ma strasne vela vyhod u vsetkych ostatnych typov projektov(rychlost vyvoja, bezpecnost,...)
Akorat ze rychlost by mela byt prioritou v kazde vetsi aplikaci.
Co si budem povídat, Python je sice hrozně fajn, ale ta pomalost se někdy může dost projevit. Na běžné webovky, skriptíky apod. se hodí. Naopak takový kreslící program (něco jako Inkscape nebo Photoshop) by v Pythonu byly podle mě nepoužitelně pomalé.
yaqwsx napsal:
Spíš se používá skoro všude...
To bych neřekl. Business aplikace se dnes píšou převážně v .NETu nebo v Javě, podobně na tom jsou weby, které jsou opět buď .NET, Java, PHP a spol. Tohle jsou dost velká kvanta aplikací. A .NET/Java začínají prorážet i do běžných desktopových programů.
no o tom hovorim :)
v obrovskom kvante aplikacii uz sa preslo od C++ k Jave, trosku pomenej k Pythonu, Ruby a ostatnym skriptovacim jazykom...
preto ma zaujima, ze ci ma C++ este potencial aj pre normalne aplikacie...(dobre, Photoshop MUSI byt naprograamovany v C/C++, ale to je jedna z fakt dost mala aplikacii, nehovoriac o tom, ze o 5 rokov by tam postacila aj obycajna Java...)
viete mi pls este uviest nejake dalsie priklady, kde je vyuzitie C/C++ nevyhnutne a nenahraditelne dalsimi jazykmi, aby som si ziskal motivaciu, preco robit prave v C++ ?:) (aplikacie Photoshopovych rozmerov nebudem zrejme v dohladnej dobe robit... )
Tom@sQo napsal:
no o tom hovorim :)
v obrovskom kvante aplikacii uz sa preslo od C++ k Jave, trosku pomenej k Pythonu, Ruby a ostatnym skriptovacim jazykom...
preto ma zaujima, ze ci ma C++ este potencial aj pre normalne aplikacie...(dobre, Photoshop MUSI byt naprograamovany v C/C++, ale to je jedna z fakt dost mala aplikacii, nehovoriac o tom, ze o 5 rokov by tam postacila aj obycajna Java...)
viete mi pls este uviest nejake dalsie priklady, kde je vyuzitie C/C++ nevyhnutne a nenahraditelne dalsimi jazykmi, aby som si ziskal motivaciu, preco robit prave v C++ ?:) (aplikacie Photoshopovych rozmerov nebudem zrejme v dohladnej dobe robit... )
Podruhe: rychlost je v konecnem dusledku dulezite kriterium u kazde aplikace - kdyz se podivam na seznam programu ktere pouzivam...Opera, Outlook, WMP, SpeedCommander, ACDSee, ... vsechny jsou afaik psane v C++ a vsechny by byly o dost mene pouzitelne, kdyby byly psane v Jave, protoze by byly o hodne pomalsi a nesrovnatelne pametove narocnejsi. Uzivatele nikdy nebudou masove pouzivat programy, ktere jsou vyrazne pomalejsi (za prepokladu podobne funkcionality, samozrejme) nez jejich konkurenti.
Samozrejme ze u nejakych malych utilitek to moc nehraje roli (a tam se opravdu pouziva spis treba VB nebo C#).
Když, chce někdo rychlost sáhne po C, nebo lépe po ASM. C++ je dnes něco mezi C a C#, co se výkonu týká, a lze se domnívat, že C# si jednoho krásného dne prosadí MS na poli HW podpory, takže těch pár % výkonu (kolem 5 -10), co má dne C++ navrch odpadne. Nicméně, pokud chce někdo výkon, sáhne spíše po C, než po C++. C++ tu bylo, buďme rádi, ale smiřte se konečně stím, že již je překonané, a pokud tu vydrží strašit jako VB, tak má ještě nějakých 10 let na reálné scéně :D (pak se z něj stane asi jako z VB kopie C#, akorát mu zůstane několik archaismů na památku). (můj skromný názor na C++, je vyjádřením bordelu v jazyce C)
Ano, java je zatím pomalejší než C++, ale to je tím, že každý využívájí jiný typ "překladu". Samozřejmě Java nebyla hlavně vyvíjena pro standalone aplikace. Co se týče C#, tak ve spojení s WPF mi příjde jako zajimavé řešení. Sice někomu se "přexichtěné" aplikačky nemusí zdát, ale mě se to líbí. Nemluvě o tom, že WPF je generované na GPU a ne na CPU, takže CPU odlehčí. Samozřejmě vyžaduje DirectX a Winy :)
viem, ze gcc sa uz vyvija nejaky ten piatok, a ze je uz dost kvalitne, resp. tak skoro ho nejaky iny prekladac len tak nenahradi, len som chvilku rozmyslal nad pouzitim tohoto jazyka, lebo odkedy som zacal robit v Pythone na trosku pokrocilejsej urovni, strasne sa mi zacal pacit: roznym pythonovskym knizniciam rozumiem ovela rychlejsie, ako C++sovskym atd ;) proste vo vyssom jazyku viem spravit to iste, co som robil predtym v C++, ale ovela rychlejsie a zrozumitelnesie...
ale predsa len, ako nad tym rozmslam, ma C++ este nejaku-tu dobu, pocas ktorej bude kralovat :)
zdeny: no napriek tomu, ze neviem velmi dobre robit v C/C++, neuraz sa, ale viem, ze kecas uplne blbosti :)
viem robit trosku aj v asm, ale nemysli si, ze kto chce rychlost, facha na nom... kvalitne kompilatori nakodia kod obdobnej kvality...nehovoriac o tom, ze nepoznam toho blba, ktory by pisal pre (long int) platforiem long int verzii toho isteho kodu...
ja tiez ked som chcel si nieco spravit, tak som len vlozil asm do Ccka, ale nikde som to prakticky nevyuzival, robil som to cisto z nudy ;)
dalsia vec, ktora uz aj bola spomenuta-Ccko NIEJE rychlejsie od C++ :-) je to imho len "horsia" verzia C++su :)
kazdopadne vdaka za priklady, kde sa C++ stale vyuziva, a kde sa len tak rychlo nenahradi ;)
No, ako tu uz dakdo spominal C++ vie byt "pomalsie" ako C (uz spominane virualne metody, mam taky pocit ze aj RTTI, ak sa pouzije, potrebuje dajake srandy naviac atd...)
A co asm tyka, tak _dobre_ napisany asm kod bude vzdy rychlesji (nedovolim si ale povedat ze ja pisem v asm dobre...;)). Dokonca, ked si uz gcc spominal, ten optimalizuje dost na nic (si uz nepamatam co to bolo ale raz mi z neho vyliezla taka sranda: mov $daco %eax; mov $ine, %eax ;) ). Navyse su veci ktore sa v nicom inom ako asm napisat nedaju. Na root.cz pod poslednym komiksom je perfektna diskusia na tuto temu ;)
Nedávno se tu psalo v článku o GC, že ... "některé garbage collectory mohou způsobovat i dosti znatelné pauzy při běhu programu, což není moc vhodné pro tzv. „real-time“ systémy, kdy každá milisekunda může rozhodovat".
Pokud bych vybíral jazyk bez GC, tak se mi zdá, že C++ je a zřejmě nadlouho bude nejlepší volbou.
_k_: no ja som netvrdil, ze _dobre_ pisany kod v asm moze byt pomalsi, sak to je cisty nezmysel; pisal som len, ze v dnesnej dobe uz skoro nikto nepise nic v asm, co sa da napisat aj v C/C++...resp. to "skoro nikto" je dnes IMO menej ako 1 promile programatorov...
taktiez si myslim, ze tie "spomalovaky"(ja by som ich skor nazval featurami) C++su absolutne neskodia(az na RTTI, co je podla mna blbost ;-])-skor naopak ;-)
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Jak se to používá? — založil Jimosona
Začátečník, MinGW - jak se používá? — založil Marek
Čo znamena "locale" v jave a na čo sa používa? — založil Viki
Aké kódovanie používa čítanie súborov Pascal — založil Bellwar
Moderátoři diskuze