forumowicz Opublikowano 8 Marca 2006 Zgłoś Opublikowano 8 Marca 2006 Witam Wiem, żę w necie wiele było już pojedynków C kontra C++ oraz pojedynków typu, któego się uczyć na początku lub którego wogóle się nie uczyć bo nabierze się złych nawyków itp... Ja na studiach miałem cały pierwszy semestr podstawy C teraz mam podstawy C++. Chciałbym jednak ORT: <span style='color: red;'>ORT: wziąść</span> się za profesjonalne programowanie, w którymś z tych języków i osobiście wydaję mi się, że powinien to być c++. Jako kryterium biorę pod uwagę wymagania pracodawców jakie będą mniej więcej za 5 lat, tzn czy wtedy wogóle ktoś będzie potrzebował programistów czystego C? Ale z drugiej strony słyszałem, że czysty C jest językiem programowania różnej maści mikrokontrolerów, a więc biorąc pod uwagę kierunek jaki studiuję: Automatyka i Robotyka dobrze by było znać właśnie jezyk C! U mnie na studiach nie kładzie się duzego nacisku na "sztukę" programowania, algorytmy itp a głównie na znajomość składni języka i pisania w miarę prostych programów (chyba jest to podstawa do teorii sterowania?). Chodzi mi głównie o odpowiedź na pytanie czy np. nauczenie się porządnie jezyka C tak bardzo utrudni mi naukę C++? Fajnie byłoby znać oba te języki (pierwszy ze względu na kierunek studiów, drugi ze wzgledu na wymagania pracodawców i rynku informatycznego) Chcę również dodać ze w przyszłości zamierzam się również za język C#. (może co za dużo to nie zdrowo? :D) Jednak bardzo lubię programować i nigdy nie miałem z tym problemów. Obecnie znam bardzo dobrze Turbo Pascala/Delphi oraz podstawy C. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
promyker Opublikowano 8 Marca 2006 Zgłoś Opublikowano 8 Marca 2006 Oczywiscie nauka C w rzaden sposob nie utrudni ci nauki C++!! Bo wlasciwie to jedno i to samo przy odrobinie wprawy nie bedziesz zwracal uwagi w czym piszesz. Dlatego nazywa sie to C/C++ :). A nie przejmuj sie ze teraz piszesz tylko proste programy na twoim kierunku studiow algorytmy "z prawdziwego zdarzenia" dopadna cie szybciej niz myslisz i tak naprawde bedzie wszystko jedno w czym je zakodujesz. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
WaWrzOL Opublikowano 8 Marca 2006 Zgłoś Opublikowano 8 Marca 2006 C/C++ jest dość uniwerslanym narzędziem podczas pracy z mikorprocesorami ponieważ jest cała masa kompliatorów dla większość architektur na rynku. Biorąc pod uwagę automatyke sticte przemysłową to i tak, każdy producent sterownika wypuszcza do niego indywidualne języki, więc na zapas tego nauczyć się nie można... Chyba, że ktoś lubi wiedzieć "wszystko" ;] Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 8 Marca 2006 Zgłoś Opublikowano 8 Marca 2006 tak czy siak programista powienien charakteryzować się wielojęzykowością w jakimś tam stopniu. W mikreokonrolerach uzywa się prostej składni języka C, którą może opanowac każde dziecko, trudność polega raczej na konkretnej architekturze, zakresach pamieci, rejestrach etc... Smiało można powiedzieć ze znając podstawy C/C++ jesteś w stanei pisać w języku takim jak java, php, vhdl, actionscript do flasha (w tych akurat pisałem) i zapewne w c# itp... Wszystkie mają cech wspólne lub przynajniej podobne. Faktem jest że dobze jest znać choćby 1 język w maire porządnie.. ja obstawiłem C++ i jego się uczę... A jak trzeba napisac cos w javie, php, C to się napisze... :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Polar Opublikowano 11 Marca 2006 Zgłoś Opublikowano 11 Marca 2006 A do czego chcesz to wykorzystywać ? do programowania mikrokontrolerów ? ( to moze już basic lepiej + dodatki wspomagające ten proces, zainteresowanie wiedzą o czym mowa ) W takim razie C++. A do całej reszty to w zasadzie C# będzie odpowiedni. A C ? czy ktoś jeszcze coś pisze w czystym C ? Nie spotkałem sie jeszcze z pure C. ( dla przykładu dodanie // komentarza do kodu pure C czyni go już ponad wszelką wątplikowść kodem C++ ). Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 13 Marca 2006 Zgłoś Opublikowano 13 Marca 2006 basic jest nieoptymalnym jezykiem.. np bbascom.. pożera straszne zasoby procka.. Osobiście nie sprawdzałem ale wg naocznych świadków tak przedstawia się w kolejności rosnacej objętośc identycznych programów w róznych językach: assembler , C, BASIC.. Basic jak sama nazwa wskazuje ma być prostym językiem.. zatem wybacza wiecej błędów i nie daje się tak optymalizować jak C, który bardzo dobrze kompiluje się na kod maszynowy, zbliżony do assemblera.. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
mkl Opublikowano 13 Marca 2006 Zgłoś Opublikowano 13 Marca 2006 Jak znasz C++ to znasz C. Róznice nie są zbyt wielkie. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 13 Marca 2006 Zgłoś Opublikowano 13 Marca 2006 (edytowane) aczkolwiek rpawda jest taka, że większość "programistów" c++ ze mną włącznie tak naprawdę nie uzywają pure C++, lecz jest to taki c++ z naleciałościami C... z czego oczywiście próbuję się leczyć :).. Dlatego też istnieje ta zasada.. znasz c++ znasz C... aczkolwiek gdyby ktoś znał samo C++ to z czystym C miałby problemy... :wink: Edytowane 13 Marca 2006 przez PelzaK Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Guardian_McLeavy Opublikowano 13 Marca 2006 Zgłoś Opublikowano 13 Marca 2006 Ja uczę się C++, ale odrazu przestawiłem się na funkcje ze standardu C, printf, scanf, fread, fwrite elegancko, szybko, i także popieram, większość ludzi, którzy piszą w C++, używają komponentów C. A powiesz, dlaczego chcesz się wyleczyć? Standard? :D Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Polar Opublikowano 14 Marca 2006 Zgłoś Opublikowano 14 Marca 2006 C jest podklasa C++. To jest jego zaleta ale jednocześnie wielka wada, która wynikła z usilnej chęci zapewnienia zgodności z poprzednikiem (niestety). Na szczęście następcy C++ (być moze język D, albo jakiś inny dialekt oparty np na C# albo javie) będą tej wady pozbawieni. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 15 Marca 2006 Zgłoś Opublikowano 15 Marca 2006 standard... :) kolega zaprawiony w programowaniu bardziej ode mnie Ciągle mi podsuwa lepsze rozwiazania korzystając z STLa a niestety tego nie uczą na uczelniach i jak ktoś chce programowac zgodnie z ISO to musi nauczyć się sam... :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Yacho Opublikowano 18 Marca 2006 Zgłoś Opublikowano 18 Marca 2006 Chopaki mylicie kilka bardzo waznych pojec... Mysle ze problem nalezy potraktowac szerzej nieco... Jesli chodzi o skladnie to masz w sumie 2 glowne podejscia - skladnia C podobna (C C++ C# PHP Perl python JAVA JS i bog wie co jeszcze) oraz Basico podobna czyli "wiersz biały" :P (pascal object pascal visual basic itp). Ktorejkolwiek z tych skladni sie nauczysz z reszta bedzie juz duzo lepiej io szybciej) teraz nastepuje drugi i najwazniejszy moim zdaniem dylemat.... idziesz na kierunek AR a mowisz ze chcesz programowac... sorki ale dla mnie sa to nieco sprzeczne pojecia... jako automatyk bedziesz rozwiazywal pojedyncze problemy sterujac odpowiednimi urzadzeniamni i wszystko co bedzie ci do tego potrzebne to algorytmika + skladnia + znajomosc urzadzenia = w tym wypadku wystarczy Ci Cos C like mysle ze jak zaczniesz na C skonczysz na CPP to nie bedzie problemu. Musisz sobie jednak uswiaadomic ze programowanie to nie tylko umiejetnosc korzystania z jezyka - co jest najwazniejsze to sposob organizowania projektu, kodu takie terminy jak zwarcie gestosc powiazan w kodzie jego czytelnosc i mozliwosc powtornego wykorzystania w tym samym projekcie... w kontekscie tego wybor jezyka jaki Ci bedzie odpowiadal jest juz bardzo skomplikowany - tu naprzyklad wyglada ze odpada C bo jest jezykiem juz starym nie posiadajacym mechanizmow obiektowych, java wydaje sie pod tym wzgledem super - natomiast tu zwolennicy CPP powiedza ze nie mozna sie w javie odwolywac bezposrednio do konkretnych obszarow pamieci a to zawęża mozliwosci programisty... z kolei kusi naprzykład PHP gdyz wersja 5 jest juz dosc dobrze OO ma duze mozliwosci jest latwa do nauczenia.... ale z kolei nie posiada wielu poważnych elementów jak wątki czy zdarzeniowy model akcji , pelne OO... Tak naprawde musisz zdecydowac kim tak naprawde chcez byc - ja tylko uprzedam ze programowanie jest procesem milym i przyjemnym gdy piszesz dla siebie/sam i sam odpowiadasz za swoj kod - jesli piszesz w grupie np 3 osob wspolnie pracujecie nad czyms to objawia sie drugi bardziej "koncepcyjny aspekt" programowania... a wsponiec o tym nalezy dlatego ze o wiele latwiej jest zrozumiec skladnie dziesieciu jezykow niz w pelni zrozumiec i korzystac z zalet technik obiektowych i np wzorców projektowych.... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
PelzaK Opublikowano 19 Marca 2006 Zgłoś Opublikowano 19 Marca 2006 true... true... :wink: Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Polar Opublikowano 21 Marca 2006 Zgłoś Opublikowano 21 Marca 2006 z kolei kusi naprzykład PHP gdyz wersja 5 jest juz dosc dobrze OO ma duze mozliwosci jest latwa do nauczenia.... ale z kolei nie posiada wielu poważnych elementów jak wątki czy zdarzeniowy model akcji , pelne OO... O PHP5 i jego obiektowych "zastosowaniach" ^^ jest tyle opinii ilu ludzi ma z tym styczność. Ja np wole raczej czwórke i starcza mi obiektowość jaka tam jest zaiplementowana. A jakby porównać PHP5 do choćby ASP.NET 2.0 to wypada to na korzyść dziecka MS. Może wersja PHP6 zmieni to na lepsze, bo jak na razie piątka odpada. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...