Názor ke článku Kudy dál v kompilovaných jazycích? od VViki - Tak trošku nechápu, co má autor pro alokaci...

  • 3. 12. 2007 12:10

    VViki (neregistrovaný)

    Tak trošku nechápu, co má autor pro alokaci a dealokaci paměti....

    Pamět je zdroj (resource) jako cokoliv jiného... a je věcí dobrého vychování vypůjčený zdroj zas vrátit operačnímu systému.
    Stejně jako se nikdo nerozčiluje, že je potřeba po použití zavírat soubory nebo TCP/IP spojení, nemělo by nikoho vzrušovat, že je potřeba uvolňovat alokovanou paměť.

    Pokud to nechcete v C++ dělat "ručně", vůbec nic Vám nebrání použít "smart pointery" nebo podobnou techniku, která proces memory managementu zautomatizuje.

    Neřekl bych, že C++ (C je svými možnostmi na podobné automatizace chudší, ale zas je o něco výkonější) je lepší nebo horší než jiné jazyky... ten rozdíl je trošku jinde.

    Jazyky typu C/C++ Vám (programátorovi) nic moc nenařizují... dávají Vám svobodu rozhodnutí, právo volby. Ale s onou svobobodou - zcela samozřejmě, podobně, jako v jakékoliv jiné oblasti lidského bytí - na Vás kladou i určitou zodpovědnost...

    Nedívejte se na to tak, že Vás C++ nutí alokovat a dealokovat paměť. Ono Vám dává možnost, mít nad tímto procesem plnou kontrolu :-)... A v C je to podobné, jen té zodpovědnosti je ještě o fous víc...

    Co mně osobně chybí na C++ a co je (resp. bylo) dle mého názoru revolučního na Javě, je opravdu široký subsystém knihoven. Ne jen pár základních funkcí (objektů, šablon), ale obecně dostupný framework zahrnující práci se soubory, síťovými prvky, GUI...
    Protože standardní knihovny Céčka byly dostačující vdobě jeho návrhu. Snad i v době prvního standardu C++... ale dnes je to opravdu málo...