nickowy7548 Temat założony przez niniejszego użytkownika |
C++ a C# » 2019-12-02 07:43:48 Hejka. Nie wiem czy dobra kategoria,ale wydaje mi się że tak.Otóż właśnie uczę się C++ ,lubię ten język.Jednak nie jest on też najnowszy,owszem wspierany,rozwijany,ale C# dużo popularniejszy i bardziej szukany.Więc moje pytanie brzmi czy przesiadka z C++ na C# jest ciężka? Tak C# jak i C++ to te same języki wiem,lecz C# ,,ulepszone".Tak więc czy przejście będzie trudne z C++ na C#. Dzięki za pomoc ;) |
|
pekfos |
» 2019-12-02 17:12:49 Tak C# jak i C++ to te same języki wiem,lecz C# ,,ulepszone". |
C# to Java Microsoftu. Nie jest to "ten sam język" co C++, cokolwiek by to miało znaczyć. |
|
nanoant20 |
» 2019-12-02 18:23:06 Głównym architektem języka C# jest Anders Hejlsberg, który pracował w firmie Borland nad Turbo Pascal'em, Delphi. Jak zobaczyłem składnię C# to pierwsze wrażenie to FreePascal , który jest w Lazarus IDE Project. Moim zdaniem jeżeli się zaczynasz wdrażać tzn. jesteś początkujący to zostań przy C# będzie Ci łatwiej pisać aplikacje w WinForms niż korzystać WinAPI |
|
pekfos |
» 2019-12-02 19:03:49 Jak zobaczyłem składnię C# to pierwsze wrażenie to FreePascal , który jest w Lazarus IDE Project. |
Trudno mi to sobie wyobrazić. Choć w zasadzie oba stwierdzenia są czysto subiektywne. Moim zdaniem jeżeli się zaczynasz wdrażać tzn. jesteś początkujący to zostań przy C# będzie Ci łatwiej pisać aplikacje w WinForms niż korzystać WinAPI |
Co ma WinForms do WinAPI, poza tym że w WinAPI można zrobić to, co w WinForms i nie odwrotnie? Porównujesz natywne API systemowe do biblioteki zbudowanej nad nim. Jak zmienisz tu WinAPI na np Qt, to argument wciąż będzie przekonujący? |
|
nanoant20 |
» 2019-12-02 20:02:01 Źle się wyraziłem pisząc "Jak zobaczyłem składnię C#" Powinno być Jak zobaczyłem kod, który został wstawiony do edytora kodu automatycznie przy tworzeniu formatki w WinForms to pierwsze wrażenie, coś podobnego do FreePascal'a Przycisk który tworzysz w WinAPI KontrolkiButton'a w WinForms Dodawanie kontrolki i obsługa zdarzeniaDlatego moje skojarzenia poszły w kierunku Pascala W Visual Studio możemy to wyklikać Porównujesz natywne API systemowe do biblioteki zbudowanej nad nim. Jak zmienisz tu WinAPI na np Qt, to argument wciąż będzie przekonujący? |
@pekfos niczego nie chcę porównywać, stwierdzam tylko, że korzystając z narzędzi typu RAD programowanie (jest efektywniejsze), skraca czas w pierwszych krokach i jest bardziej przyjazne dla początkującego programisty |
|
nickowy7548 Temat założony przez niniejszego użytkownika |
Tak więc? » 2019-12-02 20:23:30 Tak więc? Jak zacząłem C++ to go nie odpuszczę.Nie bo osoby uczące się dawnego C mogą używać też w C++ identycznych instrukcji,bądź pod innymi nazwami,albo przy użyciu odpowiednich bibliotek.Stąd moje rozmyślenia nad C#. Z tego co widziałem to C# w niektórych miejscach czuć C++. |
|
pekfos |
» 2019-12-02 20:24:08 nanoant20: Porównujesz natywne API systemowe do biblioteki zbudowanej nad nim. Jak zmienisz tu WinAPI na np Qt, to argument wciąż będzie przekonujący? |
Z tego co widziałem to C# w niektórych miejscach czuć C++. |
Składnia jest podobna. Na mój gust w niektórych częściach czuć Javą. Przykładowo w C# żeby utworzyć dynamiczną tablicę napisów piszesz List < String > texts = new List < String >();
Zmień na bodajże "ArrayList" i masz Javę. W C++ piszesz po prostu std::vector < std::string > texts;
W C++ możesz utworzyć obiekt na stosie, czy w ciele innego obiektu, a w Javach nie - jest tylko referencja na obiekt i każdy musisz utworzyć ręcznie. W C++ też się tak da, tworząc wszystko przez wskaźnik, ale to utrudnianie sobie życia i pogarszanie jakości kodu. Programiści z większym doświadczeniem w C#/Java niż C++ często tak właśnie piszą kod ;) Z kolei przenosząc się w drugą stronę, lepiej się przyzwyczaić do null pointer exception - za każdym razem jak zapomnisz że nie wystarczy napisać, że chcesz mieć kontener w klasie, bo musisz też napisać że chcesz instancję tego kontenera. |
|
DejaVu |
» 2019-12-04 21:04:45 C# jest dobrym językiem jeżeli chodzi o rynek pracy. C++ jest dobry, aby zrozumieć algorytmikę, wielowątkowość, alokacje pamięci, wskaźniki itp.
W C++ nie powstają nowe projekty (a jak powstają to jest to ułamek w stosunku do tego co jest tworzone w C# lub Javie).
Tak więc pytanie brzmi: jaki cel Ci przyświeca. |
|
« 1 » |