C++ a C# nauka

0

Witam,

zastanawiam się nad następującą kwestią: na studiach mam mieć zajęcia z C++, natomiast interesuje mnie C#, znam podstawy C, czy ucząc się C# ogarnę równocześnie C++, czy raczej nie jest to zbyt dobra droga?

Pozdrawiam:-)

0

Żeby tak na prawdę ogarnąć to nie. Ale na pewno będzie Ci łatwiej nauczyć się kolejnego języka znając dobrze jakiś inny.

0

C# jest bardziej podobny do Javy, niż do C++. Ucząc się go nie nauczysz się C++. Co najwyżej ogólnych koncepcji programowania obiektowego.

0

Zakładając że to C++ na studiach to będzie przedmiot na 15 albo 30h i w praktyce to będzie tylko "C z klasami" to zaryzykowałbym że w pewnym stopniu znajomość C# pozwoli ci pisać kod także w tym C++.

0
kikuchiyo725 napisał(a):

czy ucząc się C# ogarnę równocześnie C++, czy raczej nie jest to zbyt dobra droga?

To zależy od poziomu Twojej inteligencji. A jaki jest poziom Twojej inteligencji tego nikt na forum nie wie.
Oba języki C++ i C# są językami obiektowymi i z tego względu jest sporo podobieństw między nimi, ale są też pewne istotne różnice. Np. taka, że w C++ klasa może dziedziczyć po wielu innych klasach, a w C# klasa może dziedziczyć tylko po jednej klasie, ale za to w C# klasa może implementować wiele interfejsów, a w C++ nie ma czegoś takiego jak interfejsy. W C++ możesz przekazywać obiekty przez wartość, przez referencję i przez wskaźnik i możesz je utworzyć na stosie lub na stercie, a w C# obiekty tworzone są tylko na stercie i można je przekazywać tylko przez referencję. W C++ musisz pamiętać o zwalnianiu pamięci, a w C# zrobi to za Ciebie garbage collector. Generalnie C# jest prostszy do nauczenia się, ale jeśli wcześniej uczyłeś się C, to w pierwszym okresie nauki będziesz bardziej swojsko czuł się w C++. Jak poznasz C# i C++ i będziesz musiał z C# przesiąść się na C++ to będziesz czuł się jakbyś z najnowszego Mercedesa przesiadł się do Poloneza.
Jeśli podczas nauki obu języków będziesz zwracał uwagę na różnice pomiędzy nimi, to myślę, że możesz spokojnie uczyć się obu.

0

Dzięki

0

Jeśli chodzi o pierwszy rok studiów, to zapewne będziesz miał tam tak totalne podstawy z C++, że znajomość jakiegokolwiek innego języka pozwoli Ci na bardzo łatwe opanowanie tego co będzie na zajęciach. U nas dopiero na II semestrze trochę się zmieniło i weszło obiektowe C++ i na laboratoriach był projekt na zaliczenie i tutaj wiedza z np. Javy się przydała, ale te języki jednak znacznie się różnią i u mnie to szybko wyszło i musiałem po prostu trochę poczytać o samym C++ żeby napisać wszystko jak trzeba.

0
Igor1981 napisał(a):

Oba języki C++ i C# są językami obiektowymi

C++ to raczej jezyk wieloparadygmatowy - mozna w nim pisac programy w sposob obiektowy, ale nie trzeba.

Igor1981 napisał(a):

w C++ nie ma czegoś takiego jak interfejsy.

Nie ma slowa kluczowego interface (a przynajmniej kiedys nie bylo w standardzie bo w nowym C++ moze akurat juz jest), ale zawsze mozna zrobic klase czysto abstrakcyjna (wszystkie metody wirtualne) bez zadnych pol.

Igor1981 napisał(a):

W C++ musisz pamiętać o zwalnianiu pamięci

Zawsze mozesz wykorzystac smart-pointery.

Igor1981 napisał(a):

Jak poznasz C# i C++ i będziesz musiał z C# przesiąść się na C++ to będziesz czuł się jakbyś z najnowszego Mercedesa przesiadł się do Poloneza.

Sluszna uwaga. Przejscie z C++ na C# to fajna sprawa. W druga strone juz tak fajnie nie jest.

1 użytkowników online, w tym zalogowanych: 0, gości: 1