Első programnyelvnek C++ vagy C# a jobb?
A két "funkcióban leggazdagabb nyelv"? Ez azért annyira nem fedi a valóságot.
A C++ egy kissé túl intruzív, túl elavult, túl nehézkes és túl primitív ahhoz, hogy úgy említsük, mint a "két, funkcióban leggazdagabb nyelv" egyikét.
Egyáltalán nem kezdőbarát, az olvashatósága katasztrófa a modern nyelvekhez képest, és a támogatottsága is szépen lassan csökken, épp a C# javára.
A C# a két legfejlettebb mainstream nyelv egyike (nem a C++ a másik), sokkal barátságosabb szintaxissal és API-val, messze komolyabb feature settel, folyamatos supporttal.
Ám, ami a legfontosabb érv mellette, az az, hogy messze erősebb piaca van, így, kedves kérdező, ha a mi szakmánkban képzeled el a jövődet, akkor a C#-ot érdemes választanod a kettő közül.
Lábjegyzet #1: Igen, művelem a cépluszpluszt, meg még pár másik nyelvet, mielőtt valaki offenzívát indítana ellenem. Tapasztalatból beszélek (írok).
2/2 ma 02:19:
"C++ egy kissé túl intruzív, túl elavult, túl nehézkes és túl primitív ahhoz, hogy úgy említsük, mint a "két, funkcióban leggazdagabb nyelv" egyikét."
Azért ez sem teljesen fedi a valóságot. Intruzív alatt nem tudom mire gondolsz, de egyáltalán nem elavult és nem primitív (vagy primitív alatt az alacsonyabb szintjét érted?). Rengeteg funkció a C++ba kerül be először, és aztán a többi nyelvbe.
A nehézkessel egyetértek (majdnem minden saját objektumot kapásból 6-10 függvénnyel kell kezdeni :-)), ahogy azzal is, hogy kezdőként szívni tudja vele az ember a fogát. (Én tudom, C++al kezdtem, de mondjuk nekem bejött, tudtam, hogy ez az a nyelv ami nekem való :-)).
Kérdező:
Bár én C++al kezdtem, és imádom a nyelvet, csak akkor ajánlom, ha tudsz/akarsz szívni vele. Rengeteg dolgot nem fed el, amit a C# megtesz helyetted és emiatt C#ban gyorsabban lehet haladni.
Szóval a C# mellett tenném le a voksom.
Én is a C++ mellet tenném le a voksom, ha csak ebből a kettőből kéne választanom. (Már startnak a sima C-t mondanám).
Ha meg nagyon hardcore-ok lennénk, akkor azt mondom, hogy Assembly-vel kezdj. :D De ezt nem javaslom, mert ha 1 hónapon át se foglalkoznál mással szemed golyózni fog. :) Szóval ami "közel áll" hozzá az a C ill. C++.
!!! MEMORIA KEZELÉS ÉS POINTER KEZELÉS !!! kötelező tananyag és mindenhol felüti a fejét, még ha közvetetten is.
Lásd Java... Hivatalosan új lett behirdetve, hogy NINCS POINTER téma. Jah... Addig, míg nem használod. Minden object (ha már ott tartasz megérted) lényegében pointer, és hiába adod át paraméterként, nem "másolatot" csinál, hanem egy az egyben átadja. Van mikor, nem "clone"-ozom, akkor pislogok, hogy miért szar?
Informatika már csak ilyen. Én személy szerint 11 nyelven tudok (html, css, js és társait nem belevéve) + 6év hátam mögött. És máig van az, hogy egy hibát 6 órán át keresek, és mikor rájövök anyázok egy egészségeset.
Vagy mikor konfigurálok egy szervert és lövésem sincs, hogy hogyan kell. Így szívok orrba-szájba, de ha rájövök örök életre megjegyzem és ha valaki kérdezi, hogy mi a baja akkor már mindentudó vagyok. :)
Megint elárasztották a témát a:
1.) Hozzá nem értők, de állítása szerint több nyelvet ismer mint amennyi létezik.
2.) Akik szerint egy nyelv szar mert számára túlságosan bonyolult megtanulni és megfelelően használni, ha pedig nem tudja használni számára valóban szar is lesz.
C# könnyebb kezdőnyelvnek de utána a C++ nehéz lesz, a C++ nehéz kezdőnyelvnek de utána a C# könnyű lesz.
Vagy a piramis aljáról kezded a tanulást a könnyebbel és haladsz a nehezebb felé, vagy ennek fordítottja.
# 7/7 Időpont ma 16:03
Bár helyenként mondasz értelmes dolgokat is, de ez akkora baromság mint ide lacháza:
"Egyáltalán nem véletlen, hogy a komoly üzleti alkalmazásokat nem C++ nyelven fejlesztik, ahogyan az sem, hogy a játékfejlesztés terén is elkezdte kiszorítani a C#. Az utóbbi tömören szólva jobb, gyakorlatilag minden szempontból, ezen kár is rugózni."
Meglehet az a 15 év szakmai tapasztalat de, hogy pl. sebességben soha az életben nem fogja a C# felvenni a versenyt, az hótziher. Márpedig pl. banki háttérszoftverek (ami azért szerintem nevezhető komoly üzletinek), gyorsasága még így is bajos, nemhogy, ha C#-ba menne. Vagy bármilyen komolyabb grafikai, modellezési szoftvereket sem fognak C#-ban. És akkor kernelekről és driverekről nem is beszéltem...
#2-esnek:
"A két "funkcióban leggazdagabb nyelv"? Ez azért annyira nem fedi a valóságot.
A C++ egy kissé túl intruzív, túl elavult, túl nehézkes és túl primitív ahhoz, hogy úgy említsük, mint a "két, funkcióban leggazdagabb nyelv" egyikét.
Egyáltalán nem kezdőbarát, az olvashatósága katasztrófa a modern nyelvekhez képest, és a támogatottsága is szépen lassan csökken, épp a C# javára. "
Valószínűleg nem ismered a nyelvet eléggé, ajánlom figyelmedbe a C++ legújabb szabványát, olvasd el van benne minden(még lambda is). Másrészt számodra a sok funkció a kényelmet jelenti, ami alapvetően hibás. Egy új nyelv megtanulása annál könnyebb minnál minimálistább/egyszerűbb. Vagy magyarázd el légyszíves, hogy pl. a template metaprogramozás lehetősége hogyan segíti a kezdőt a nyelv elsajátításában. Szívesen hallgatlak. Vagy ha annyira egyszerű a C# sorold fel a hozzáférés szabályozást(access modifier) az osztály mezőihez és egy példát, hogy mikor melyiket használnád.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!