Portál AbcLinuxu, 3. května 2025 08:50

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
Josef Kufner avatar 5.7.2006 17:20 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Odpor k STL
Odpovědět | Sbalit | Link | Blokovat | Admin
STL jsou úžacná věc, ale poslední dobou se popzvolna probírám z opojení z STL a zjišťuju, že objektově psaný kód není zas až taková výhra. V konečném důsledku je daleko méně přehledný než strukturovaný v C. Nemyslím návrh, ale kód jako takový. Dohledávat, co se vlastně doopravdy spustí je něco děsnýho.
Hello world ! Segmentation fault (core dumped)
5.7.2006 17:28 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Odpor k STL
Je otázka, do jaké míry je to jazykem a do jaké míry autorem. Když jsem začínal s C, byl jsem opojen konstrukcemi typu 'while (*s++ = *t++);' nebo 'int f(int n) { return n ? n*f(n-1) : 1; }' a musel jsem z toho vystřízlivět. Když jsem začínal s C++ byl jsem podobně opojen jeho vymoženostmi a byl jsem přesvědčen, že musím za každou cenu overloadovat operátory, používat šablony atd. Z toho prostě člověk musí vyrůst…
Josef Kufner avatar 5.7.2006 17:39 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Odpor k STL
To taky, ale spíš jsem měl na mysli třeba to, že se děděním vytvoří nějaká hiearchie tříd. Metody se různě dědí či nedědí, některé jsou virtuální, některé ne... no a pak když chci vědět co se myslí řádkem
potvoro->hejbni_se();
tak musím prolézt celkem dost kódu a zkoumat co kde je. Kdežto v C mi to grep poví prakticky rovnou a ctags fungují bezchybně. Další lahůdka je, když se v php předá nějaký objekt coby parametr funkce a chci zjistit co se vlastně předalo. To zas není problém v C++, protože tam je uveden typ.

Zase nadruhou stranu, v C++ lze schovat spoustu kódu, který by jinak překážel a znepřehledňoval. Například přetížením operátorů. Ale to není u slušně napsaného kódu v C problém.
Hello world ! Segmentation fault (core dumped)
5.7.2006 17:45 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Odpor k STL
No, ale to by měl být spíše záměr, ne? Aby se člověm nemusel starat kde to je.
Copak toho není dost?
Josef Kufner avatar 5.7.2006 17:54 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Odpor k STL
Ale to je výhodou jen do té doby, než je v tom potřeba něco změnit.
Hello world ! Segmentation fault (core dumped)
5.7.2006 17:57 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Odpor k STL
Ten uvedený příklad by měl tak na pohled sloužit k tomu, aby se potvora pohla. Samozřejmě, potvora je potvora a může udělat cokoliv, jenže když se programuje tak, že potvora na pohni reaguje tím, že sežere programátora, tak si myslím, že by byl problém všude a při jakémkoliv přístupu :-)
Copak toho není dost?
5.7.2006 17:57 Sinuhet | skóre: 31
Rozbalit Rozbalit vše Re: Odpor k STL
To taky, ale spíš jsem měl na mysli třeba to, že se děděním vytvoří nějaká hiearchie tříd. Metody se různě dědí či nedědí, některé jsou virtuální, některé ne... no a pak když chci vědět co se myslí řádkem
To je spise vysledek chaotickeho navrhu knihovny a pouzivani neintuitivnich jmen. A nebo dusledek vaseho podvedomeho odporu k OO programovani obecne.
5.7.2006 18:45 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Odpor k STL
Nevím, zda to umí nějaká IDE pro C++ (vim to asi nebude ;-) ), ale třeba eclipse pro Javu v tomhle docela pomáhá, že je možné prohlížet hierarchii tříd, Ctrl+clickem je možné přejít z použití metody rovnou na její implementaci atd.
Luk avatar 5.7.2006 20:16 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Odpor k STL
CDT plugin do Eclipse to umí - bohužel to ale často blbne :-(
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
5.7.2006 21:20 mrzout | skóre: 11 | blog: mrzutej
Rozbalit Rozbalit vše Re: Odpor k STL
v php muzes vynutit typ parametru:

class Trida {}

function xxx ( Trida $par ){}

ale mozna jsem te nepochopil, c++ jsem videl jen z rychliku :)
Hlasuj pro zavedení OpenID na Abclinuxu!
Luk avatar 5.7.2006 21:56 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Odpor k STL
Hlavně nechápu, jak PHP souvisí s STL. PHP je dynamicky typový jazyk, což má své výhody a nevýhody. Takže některé "jakoby samozřejmé" věci jsou tam prostě jinak.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
6.7.2006 10:46 mrzout | skóre: 11 | blog: mrzutej
Rozbalit Rozbalit vše Re: Odpor k STL
Ja reagoval na zminku o PHP v komentari.

Do debaty o STL bych se neopovazoval zasahovat :)
Hlasuj pro zavedení OpenID na Abclinuxu!
5.7.2006 17:46 Sinuhet | skóre: 31
Rozbalit Rozbalit vše Re: Odpor k STL
A cim vam STL vnucuje OO?
Josef Kufner avatar 5.7.2006 17:56 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Odpor k STL
Tím, že už samo STL jsou třídy, byť ještě nejsou vytvořené pro konkrétní typ? Ale připouštím, že je možné psát strukturovaně a STL používat, ale to není to, nač jsem narážel.
Hello world ! Segmentation fault (core dumped)
5.7.2006 18:03 Sinuhet | skóre: 31
Rozbalit Rozbalit vše Re: Odpor k STL
Eh. No on treba takovy vektor je skutecne uvozen slovem class, ale tim jeho podobnost s OO konci. Vyhoda STL je totiz v tom, ze vam OO necpe. Tak byla navrzena.
elviin avatar 5.7.2006 18:30 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Odpor k STL
Nevim, jestli jsem vas pochopil, ale klidne muzete radit pole intu nebo pole brambor. Zalezi na aplikaci:

int pole[] = {4, 4, 4,4 ,4};

std::sort(pole, pole+3); //seradi brambory nebo 4ky nebo streamy 

:)
5.7.2006 17:24 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Odpor k STL
Odpovědět | Sbalit | Link | Blokovat | Admin
Copak toho není dost?
5.7.2006 17:34 Creckx | skóre: 23 | blog: cxblog | Lanškroun
Rozbalit Rozbalit vše Re: Odpor k STL
Odpovědět | Sbalit | Link | Blokovat | Admin
STL je super věc...i když je to dávno co jsem dělal v C++ (ještě s winAPI) tak mi tenkrát hrozně pomohla. Dneska už jsem zalehnul u pythona a nějak mě C++ neláká :)
Můj blog Pokud máte taky blog, můžeme vyměnit odkazy :)
elviin avatar 5.7.2006 18:24 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Odpor k STL
Odpovědět | Sbalit | Link | Blokovat | Admin
Kdyz jsem zacal pouzivat STL, tak muj kod nabyl na prehlednosti. V podstate veskery problemy resim tak, ze oddeluju data a algoritmy. Vite jake je to poteseni, kdyz je pozadavek na zmenu funkcionality aplikace a ja zmenim jenom typedef nebo zpusob razeni, transformace, funktory, kontejnery. To si pak programator chrochta, ze se nemusi bastlit s forama a whilama - proste zmenim algoritmus, kterymu je jedno s cim pracuje (to s cim pracuje se vyladi politikama nebo treitama). Hlavni kod zustava stejnej a je modularni. Kdyz jsem pridal Boost, tak to je jedna radost.

Ty (negativni) vlastnosti, ktery popsal Luk se daji zeslabovat i posilovat. Proste do toho musi clovek videt, ale neni to, jak se rika raketova veda. Lze udelat aplikaci, kde nemusite pouzit pointer. Vsechno je pod kontrolou STL a iteratoru, u polymorfnich impl. chytrych ukazatelu, ktery si navic muzu delat konstantni, kdyz je treba a neverim si. Proste mam prehled jak v kodu, tak co se tyce pameti. Samozrejme, kdyz nemyslim, zku*vit se da vsechno.
5.7.2006 20:00 machr | skóre: 2 | blog: machr
Rozbalit Rozbalit vše Re: Odpor k STL
Odpovědět | Sbalit | Link | Blokovat | Admin
STL je super vec. Ze zacatku se mi sice moc nelibila, protoze neni uplne intuitivni a naucit se ji efektivne vyuzivat vyzaduje trochu casu. Ale psat si vlastni containery se me vzne nechtelo, tak sem s ni zacal pracovat a zjistil jsem, ze je to super knihovna. :-D
(__) (oo) /-------\/ / | || * ||----|| ~~ ~~
Luk avatar 5.7.2006 20:15 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Odpor k STL
On je také trochu problém s dokumentací, kde není všechno úplně popsáno tak, jak by se slušelo. A kdo začínal s STL pod Windows, tam je to úplná tragédie - jak jsem kdysi vychvalovat MSDN, tady se k tomu Microsoft postavil hodně macešsky a microsoftí dokumentace k STL je přímo otřesná.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
5.7.2006 21:23 machr | skóre: 2 | blog: machr
Rozbalit Rozbalit vše Re: Odpor k STL
ja si vetsinou vystacim s touto strankou...
(__) (oo) /-------\/ / | || * ||----|| ~~ ~~
elviin avatar 5.7.2006 21:35 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Odpor k STL
http://www.dinkumware.com/
Luk avatar 5.7.2006 21:57 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Odpor k STL
Bohužel ne každý ji zná (třeba já jsem ji také neznal). A dokumentace na webu GNU je poněkud méně stravitelná.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.