Devel.cz Lupa Měšec Podnikatel Root Zdroják.cz DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Odpověď na názor

Odpovídáte na názor k článku Štěpán Škrob: Horkým kandidátem byl WebKit, ale vybrali jsme Gecko.

Sten
Sten (neregistrovaný) ---.18.broadband16.iol.cz
27. 2. 2009 12:09

Re: C++ versus C

celé vlákno
V C je toto jednodussi, protoze tady obvykle nemusite predelat cely objektovy system, ale proste vyrobite funkci, ktera misto treba dvou drive volanych funkci dela totez.

Začínám mít dojem, že nechápete/nevíte, co jsou šablony. Šablony NEJSOU objektový systém. Proto se snadno refaktorují a proto je celé STL napsané v šablonách.

Predpokladam ze se mi vysmejete, kdyz Vam reknu "To ze mnoho programu v Perlu vypada jako porucha na lince neni chyba jazyka, ale prislusnych programatoru.".

Ano, vysměji, správné přirovnání by bylo: „To, že někteří programátoři nechápou program napsaný v Perlu, není chyba jazyka, ale příslušných programátorů.“ Což také je.

nejakou dedicnost realne vyuzijete, aby vam usetrila ten duplicitni kod

Opět, šablony nejsou žádná objektová hierarchie. Třeba std::copy mi přijde daleko daleko lepší než memcpy. Dělá to to samé, akorát na rozdíl od memcpy se optimalizuje na objekty, které tak kopírujete, a je to tedy buď stejně rychlé nebo rychlejší a je to daleko přehlednější než žonglování s pointery na void.

Ale kde v realnem svete nejakou dedicnost realne vyuzijete, aby vam usetrila ten duplicitni kod?

No třeba takový hezký příklad je s loděmi: všechny lodě plují a mají nostnost (tedy mohou nést náklad: metody „nalož“ a „vylož“), ale třeba plachetnice mají jiný druh pohonu než kolesový parník (= různé implementace virtuální metody „pluj“), tudíž u plachetnice asi nemá smysl „pluj“ implementovat tak, že se přiloží do kotle.

A jestli máš na mysli programování, tak zrovna na jednom takovém programu dělám: mám tam hodně front, většina se chová stejně a některé mají různé způsoby uklízení (data vyhodí nebo je přesunou jinam ap.) nebo ověřování vkládaných dat (některé ověřují, jiné ne, některé třeba na základě vkládaných dat vyhodí jiná data ap.). A je k tomu jednotné rozhraní, přes které se na fronty odkazuje jen pomocí jejich jmen (to jméno přijde zvenčí, takže se musím odkazovat pomocí jmen). Nedovedu si představit, jak bych něco takového napsal v Céčku, aniž bych nějak emuloval ty virtuální metody, tedy dělal dědičnost.

   
Chcete přispět jako registrovaný uživatel? Přihlaste se ke svému účtu.
Ochrana proti spamovacím robotům. Odpovězte prosím na následující otázku: Jaký je letos rok?
 

Pravidla pro diskutující: Přidáním čtenářského příspěvku do diskusí či fóra souhlasíte s pravidly.

Informace o soukromí: U všech přidaných komentářů provozovatel ukládá IP adresu a hostname odesílatele. U neregistrovaných uživatelů se na webu zobrazuje část hostname, případně IP adresy, neumožňující identifikovat konkrétní počítač.

Povolené značky XHTML: a, br, code, em, li, ol, p, pre, strong, sub, sup, ul