Nauka C# po C++

0

Cześć!
Postanowiłem nauczyć się języka C# oraz środowiska .NET. Bardzo mi zależy aby uczyć się z książki. Kursy online odpadają. Znam na poziomie umiarkowanym język C++(Uczyłem się z Symfonii C++ Standard Jerzego Grębosza, dokładnie analizując każdy rozdział). Wiem o co chodzi z językiem obiektowo orientowanym.

Zastanawiam się nad książkami "C#. Rusz głową! Wydanie III" (książka z 2014r.) a "C# 6.0 w pigułce. Wydanie VI" (książka z 2016r.)

Gdzieś czytałem, że "C# 6.0 w pigułce" jest raczej dla mających już pojęcie o C# a "C#. Rusz głową" dla początkujących.

Wolałbym kupić nowszą książkę. Ktoś uczył się z nich? Dam radę nauczyć się czegoś z "C# 6.0 w pigułce" nie programując nigdy w C# ale znając C++ i ogólne zasady rodziny języków C(Wiadomo, że są podobne. Mają tak jakby ten sam rdzeń).

A może ktoś poleci mi całkowicie inną książkę, która bardziej mi będzie pasowała?

Pozdrawiam

0

nie programując nigdy w C# ale znając C++ i ogólne zasady rodziny języków C(Wiadomo, że są podobne. Mają tak jakby ten sam rdzeń). - a COBOL też należy do rodziny języków C? C# ma z C/ C++ niewiele > wspólnego. C# zaczynał jako klon Javy i z nią ma najwięcej wspólnego. - Wibowit 5 minut temu

Tutaj masz zebraną w tabeli tak zwaną rodzinę języków C-like. (Tak samo mamy grupy np. języków słowiańskich, germański, romańskich.) Są pewne zasady, działania które w językach C++ i C# są podobne. Choćby to że są to języki obiektowo orientowane.
https://en.wikipedia.org/wiki/List_of_C-family_programming_languages

Ale nie dyskutujmy o tym. To nie temat tego wątku. Proszę o pomoc w wyborze książki :)

0

Jak chcesz porządnie ogarnąć język i (część?) .net to bierz "C# w pigułce". "C# Rusz głową" się przyda tworzenia aplikacji okienkowych, jest tam sporo kompletnych przykładów, jakaś gra z tego co pamiętam już w pierwszym rozdziale.
Jak musisz wybrać jedną to polecam "C# w pigułce".

0

Powiem Ci z mojego doświadczenia (pisałem w C++ w liceum, a w C# na studiach, nie pisałem w C# komercyjnie) oraz mojego przyjaciela (parę ładnych lat w C++, C# na uniwerku i pracuje w C#): jeżeli C++ sprawiał Ci frajdę, to C# też będzie. Dość powszechna ścieżka rozwoju z C++ prowadzi do Javy i wtedy człowiek, który ogarnął wskaźniki czy memory leaki w Javie czuje się jak w klatce... Pisząc w Visual Studio (przeskok z Dev C++ i Borlanda) to było coś pięknego. Do tego masz naprawdę dużo dobrych pakietów w nugecie, wiele użytecznych funkcji w bibliotece standardowej, świetne narzędzia (np. resharper), dojrzały web framework (asp .NET), orm (entity framework).

Mój przyjaciel mieszka i pracuje w Usa i od paru lat kodzi w C#. Poza szybkością czy silnikami do gier, C# to dla niego dużo, dużo lepszy język do pisania i zdecydowanie bardziej przyjemny.

Do nauki C# polecam dotnetperls.com i StackOverflow. Może jeszcze jakiś podstawowe tutoriale ze studiów (ITA-104 i ITA-105 - odpowiednio wprowadzenie do C# i programowanie obiektowe).

0
kzkzg napisał(a):

Jak chcesz porządnie ogarnąć język i (część?) .net to bierz "C# w pigułce". "C# Rusz głową" się przyda tworzenia aplikacji okienkowych, jest tam sporo kompletnych przykładów, jakaś gra z tego co pamiętam już w pierwszym rozdziale.
Jak musisz wybrać jedną to polecam "C# w pigułce".

W "C# w pigułce" jest coś o tworzeniu aplikacji okienkowych? Tego też bym chciał choć trochę ogarnąć.

0

Dość powszechna ścieżka rozwoju z C++ prowadzi do Javy i wtedy człowiek, który ogarnął wskaźniki czy memory leaki w Javie czuje się jak w klatce...

Chyba żartujesz! Przecież jest dokładnie odwrotnie! No chyba, że ktoś przedkłada wieczne pilnowanie wycieków pamięci, pilnowanie kodu pod względem obecności tysięcy UB i kocha & albo *.

Ja wiem, że są smart pointery ale starczy trafić do projektu z legacy code'em albo obsłużyć jakąś bibliotekę z C i cała wskaźniklogia plus wycieki już Ciebie zaczynają dotyczyć

Języki zarządzane są po prostu z definicji wygodniejsze od C/C++, bo odpada przejmowanie się tą całą "niskopoziomowością" na rzecz rozwiązywania konkretnych problemów.

Przecież C++ w całym swoim bogactwie biblioteki standardowej nie posiada nawet splita dla stringów, a mamy XXI wiek! :)
Nie znam osoby, której wygodniej pisałoby się duże aplikacji w C/C++ niż w jakimkolwiek języku zarządzanym.

0

Kto jeszcze doradzi coś?

1

Za nim książka do ciebie dojdzie, to przerób sobie jakiś tutorial do c#, ale na luzie i tak z książki się będziesz uczył, potem łatwiej wchłoniesz wiedzę z książki i nie będziesz zanudzał na forum.

Dwie zalety w jednym.

0

Czy już można śmiało programować w C# pod Linuksem, czy to raczej nadal nie idzie w parze?

0

Ściągnij wersję testową JetBrains Rider i zobacz jak ci się w nim pracuje: https://www.jetbrains.com/rider/download/

Z tworzeniem okienkowych aplikacji w C# pod Linuksem będzie ciężko (nie widziałem dobrze wyglądającego pod Linuksem GUI stworzonego w C#), ale np serwer webowy powinno dać się stworzyć bez problemu. JetBrains Rider ma też wsparcie dla Unity, Xamarin Android i iOS, ale nie używałem, więc nie wiem czy pod Linuksem to dobrze działa.

0
Uczynny Kura napisał(a):

Czy już można śmiało programować w C# pod Linuksem, czy to raczej nadal nie idzie w parze?

Jeśli pytasz o .NET Core to można śmiało o ile nie planujesz tego wrzucać na produkcje. ;)

0

Czytał ktoś "C# 6.0 w pigułce"? Jest bardzo skomplikowana?

0

Jesli programowales kiedys w jakims innym jezyku to ogarniesz spokojnie.

0

Witam,

Jak już tak dobrze znasz C++ to w czym problem jest byś zamiast sięgać po książkę spróbował przeportować twoje przykłady na C# i .NET? Portowanie aplikacji z GUI do WinForms i WPF (z i bez MVVM) będzie bardzo ciekawe.

Pozdrawiam,

mr-owl

0

Ja osobiście polecam na początek : https://4programmers.net/C_sharp

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