Cześć,
chciałbym się dowiedzieć czego powinienem dalej się uczyć po solidnych podstawach z c#. Zamierzam iść na staż c# i nie wiem jakie są "minimalne umiejętności" lub z jakie technologie powinienem poznać.
Pozdrawiam
Cześć,
chciałbym się dowiedzieć czego powinienem dalej się uczyć po solidnych podstawach z c#. Zamierzam iść na staż c# i nie wiem jakie są "minimalne umiejętności" lub z jakie technologie powinienem poznać.
Pozdrawiam
Znajomość składni języka czy najważniejszych modułów biblioteki standardowej to są podstawy podstaw i absolutny must-have, wiadomo. Przynajmniej w teorii, bo zdarzają się wyjątki - np. zdarzyło mi się aplikować na staż w Javie i dostać się do C#, do dziś nie wiem jakim cudem ;)
Tak czy siak sama znajomość języka to za mało, dobrze by było żebyś choć trochę znał technologie wokół języka
ułatwiacza żenienia aplikacji z bazą
Solidne rozumienie obiektowości (interfejsy, klasy abstrakcyjne, partial, problemy wielodziedziczenia, override i overload)
Jakieś pojęcie o wzorcach projektowych
SOLID etc
Delegaty
Kolekcje (złożoność obliczeniowa + kiedy jaką wykorzystać + zrozumienie IEnumerable i ICollection)
Kowariancja/kontrawariancja
native vs managed code
Czym jest sam .NET czym jest CLI a czym CLR
ogólne rozumienie GC
konteksty użycia this
modyfikatory dostępu i scope zmiennych/
funkcje anonimowe i lambdy
podstawy LinQ + teoria o nim
generyki
świadomość tego, że jest coś takiego jak refleksja i metadane
var + dynamic
dospose vs finalize
compile time vs runtime vs JIT
serializacja
podstawy wielowątkowości
Do tego jeszcze git i jakieś podstawy SQLa (proste zapytania + teoria o joinach itd) i frontu.
Jak ogarniesz gdzieś tak 60% tego co wyżej to na staż dostaniesz się z palcem w /dev/null a jak ogarniesz 90% to możesz zacząć startować na juniora.
Niezależnie czy trafisz na desktop, konsolówki czy web apki bez tego nie ruszysz:
Wiem, że po 4programmers krążyła przybliżona lista rzeczy, które powinien znać junior c#. Niestety nie udało mi się jej odszukać. Może ktoś ma ją zapisaną w zakładkach? e: To była dość długa lista. Prawdopodobnie napisana przez Somekinda.
Weź pierwszą lepszą książkę do nauki języka i naucz się tego co tam jest opisane. Do tego poćwicz sobie w docelowej technologii np asp net mvc (core) lub wpf.
No i oczywiście podstawy baz danych
Nie jest to na entry level, ale warto:
Ogarnianie baz + SQL + jakaś znajomość NoSQL typu Mongo? RavenDB?
HTTP 1.1 / 2 / 3 soon
OWASP
Ciekawy jestem co w twoim przypadku znaczy - solidne podstawy. Dla mnie solidne podstawy to znajomość najnowszej wersji c# 8 ale i wcześniejszych wersji.7, 6, 5 itd.
Jeśli się uczyłeś z kursów wideo bez przeczytania co najmniej 3 rożnych książek i całej specyfikacji to według mnie nie są solidne podstawy.
W prawie każdej książce masz opisane podstawy wszystkich ważniejszych technologii . WPF, WCF, ASP itd. Jakbyś wszedł na stronę Microsoftu MSDN to tam masz wszystkie technologie na platformie NET i dużo więcej. Ambitny programista nie zadaje głupich pytań czego ma się uczyć , tylko uczy się wszystkiego po kolei .
Jak już napisał @Grzegorz Kotfis ta lista to podstawy. Potem można uczyć się całej architektury i pierdyliarda klas :-) Zamykam wątek... no nie mogę :-(