• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Podstawy c# i co dalej?

0 głosów
3,598 wizyt
pytanie zadane 28 października 2015 w C# przez Werran Użytkownik (730 p.)
Cześć. Tak jak napisałem w temacie, znam już podstawy c# w tym umiem już programować obiektowo i nie wiem co z tym zrobić dalej. W Visual Studio mam dość ograniczone możliwości a wychodzenie na głęboką wodę, w tym przypadku przejście na jakiś silnik będzie wodą, która ugasi mój szczery zapał do pisania.

Czy ktoś borykał się z podobnym problemem i przeszedł już przez ten ciężki etap i mógłby poradzić czego warto się douczyć?

Co sądzicie o WPF? Warto zacząć uczyć się XAML'a?

7 odpowiedzi

+2 głosów
odpowiedź 28 października 2015 przez furas Maniak (53,800 p.)
wybrane 28 października 2015 przez Werran
 
Najlepsza

Dołączam się do stwierdzenia  ZlapZabijIZakop "wait, wut ?!"

Visual Studio to podstawowe narzędzie do tworzenia pod Windows. I podobnie jak w każdym innym IDE jeśli czegoś brakuje to szukasz odpowiedniej biblioteki i doinstalowujesz. Jest nawet system/portal NuGet gdzie ludzie udostępniają dodatkowe moduły.

Obecnie darmowe Visual Studio Community pozwala na programowanie w C#, C++, Visual Basic, JavaScript, HTML a nawet Python. Można tworzyć nie tylko na Window ale też na Android oraz iOS.

https://www.visualstudio.com/pl-pl/products/visual-studio-community-vs.aspx

komentarz 28 października 2015 przez Werran Użytkownik (730 p.)
Czyli można by żec, że im więcej bibliotek poznaję tym lepszy jestem w C#, mam rację? A jakbym chciał zrobić jakąś prostą grę platformową tylko dla siebie by sprawdzić tak zwanego skilla to dałbym radę napisać to w Visual Studio? Obecnie z niego korzystam w projektach Windows Form i nie wiem czy to byłoby w ogóle możliwe.
komentarz 28 października 2015 przez Dorion300 Szeryf (90,250 p.)
Windows Form i gry? nie.

Zainteresuj się jakimś Silnikiem gier który obsługuje po prostu C#.

np. Unity.

Wspaniale się nim pisze, masz także Mono przez co możesz korzystać z .NET bez niemalże straty w zasobach.
komentarz 28 października 2015 przez furas Maniak (53,800 p.)
edycja 28 października 2015 przez furas
Programowanie to nie tylko znajomość składni ale też korzystanie z bibliotek. Oczywiście nie trzeba wszystkiego znać na pamięć bo IDE podpowiada składnie ale przynajmniej trzeba wiedzieć czego szukać. Jeśli czegoś się już używało to coś tam zostaje w głowie i łatwiej to potem odszukać i ponownie użyć.  

Ja wolałem WPF od Windows Form ale raczej nie korzystałem z XAML. Dawno to było i już nie pamietam ;)

Windows miał kiedyś własną bibliotekę do tworzenia gier - nie pamiętam jak się nazywała. Na stronie VS Community jest jednak podane, że działa z Unity, które są wykorzystywane do tworzenia gier.

Szybkie zajrzenie do Google
https://www.visualstudio.com/pl-PL/features/unitytools-vs.aspx
https://msdn.microsoft.com/pl-PL/games-development-msdn

W tym drugim linku w zakładce `Sieć -> Biblioteki` oraz `Komputery stacjonarne -> Oprogramowanie pośredniczące` są wymienione różne biblioteki w tym takie do gier np. Phaser (web), ogre (desktop), Unreal (desktop)
+1 głos
odpowiedź 28 października 2015 przez niezalogowany
"W Visual Studio mam dość ograniczone możliwości..." Wait, wut?!

Skoro twierdzisz, że "przejście na jakiś silnik będzie wodą..." To przejdź na ten silnik. W czym problem? Osobiście za XAML'em nie przepadam, ale jeśli chcesz poruszać się w obrębie platform Microsoft, to siłą rzeczy będziesz musiał go opanować. A o WPF co mamy sądzić(?), bo nie bardzo rozumiem pytanie.
komentarz 28 października 2015 przez Werran Użytkownik (730 p.)
W przejściu na jakiś silnik.. Nawet nie wiem od czego mam zacząć. Dla mnie to czarna magia, nigdy tego nie ruszałem. A o WPF spytałem się co sądzicie, bo jak patrzyłem na prezentacje to rzekomo ciekawe rzeczy można napisać, które będą wyglądać bardzo estetycznie, dla tego pytam się czy warto poświęcić chwile na przestudiowanie tego całego WPFa.
komentarz 29 października 2015 przez niezalogowany
Jeśli o okienka na Windows się rozchodzi. To nie masz w sumie wielkiego wyboru z C#. Albo przestarzałe WindowsForms, albo Metro z którego nikt nie korzysta, albo właśnie WPF, które dodam, wymaga od Ciebie znajomości XAML.
+1 głos
odpowiedź 28 października 2015 przez Dorion300 Szeryf (90,250 p.)
Rozwijaj wiedzę o FrameWork'u .NET
Posada bardzo dużo rzeczy które mogą się przydać.
Popatrz sobie, zainteresuj się jakąś podbiblioteczką w .NET, i się naucz.
Jest tego masa.

A .NET jest bardzo ważną rzeczą dla C# i bardzo potężną.
+1 głos
odpowiedź 28 października 2015 przez Adam Nowicki Obywatel (1,600 p.)

Cześć. Nie jestem ekspertem, doświadczenia i wiedzy mam mało, lecz niedawno też przechodziłem przez ten etap co Ty.  Podjąłem decyzję co dalej, ale chyba przez tydzień przeglądałem internet w poszukiwaniu chociażby podpowiedzi co zrobić. Niestety praca, praca, dom, remont, praca, praca itd. no i stanęło :D Jedno co jest pewne - jeśli nie wiesz co dalej, nie umiesz ruszyć z swoim projektem to na 80% nie umiesz programować obiektowo. Lecz jedynie rozumiesz tego idee i umiesz stworzyć parę klas, ew. interfejsów. Prawdziwe OOP zaczyna się przy dużych projektach gdzie nabiera to sensu i nie wyobrażasz sobie innego rozwiązania.

Pytanie co dalej jest słabo sformowane. Zależy co chcesz robić. Gry - unity. Aplikacje webowe - ASP NET MVC, Aplikacje okienkowe WPF/Windows Forms. Określ co chcesz robić a będzie łatwiej Ci znaleźć drogę do celu.

Ja określiłem kolejne kroki nauki poprzez poszukanie ofert pracy (i tak kolejno: do gier coś w stylu "Programista gier w języku C#", aplikacje webowe "programista asp net mvc" itp. itd). Przejrzałem sporo takich ofert i zobaczyłem jakie technologie są najczęściej wymagane, a przez to prawie "niezbędne" do tego by osiągnąć jakiś przyzwoity poziom i być wstanie napisać w miarę sensowną aplikację.

Jak już dowiesz się czego potrzebujesz by osiągnąć dany cel masz znów parę możliwości, albo możesz uczyć się każdej technologii po kolei a później je ze sobą złączyć co raczej jest demotywujące i nudne, a i efekty takie sobie.

Kolejna metoda to oglądanie jakiś kursów na YT, które wykorzystują te technologie, które wybrałeś. Fajne rozwiązanie, które pozwala Ci stworzyć pierwszą aplikację, co prawda powieloną ale po 3 takich aplikacjach będziesz rozumiał dużo więcej. Dodatkowo będziesz z siebie zadowolony (bo zrobiłeś coś działającego!) równocześnie pogłębiając apetyt na więcej (no bo skoro umiem powtórzyć kogoś aplikację to może czas napisać coś własnego!?).

Kolejny sposób to przeglądanie jakiś projektów opensource, szukasz na githubie lub gdzie indziej jakiś projekt, który uważasz, że chciałbyś umieć zrobić. Przeważnie takie projekty są dobrze opisane więc na pewno będzie wypisane jakich technologi używa. Ściągasz, czytasz dokumentację, analizujesz i zmieniasz, można w ten sposób się dużo nauczyć. No i nie zrażaj się tym, że jak ściągniesz to się nie włączy :) Uruchomienie aplikacji to pierwsza, ale bardzo przydatna lekcja. Ta metoda jest fajna jeśli później chcesz szukać jakiejś pracy w tym kierunku. Najczęściej w takiej firmie nie zaczyna się od nowego projektu, więc musisz całość przeanalizować, zobaczyć jak to działa, jak jest zbudowane i jak to edytować. A wybierając ten sposób będziesz miał w tym doświadczenie.

Możesz też zacząć swój projekt, ale prawdopodobnie będzie Ci na początku bardzo ciężko. Jeśli jednak to najważniejszy jest plan, rozpisanie wszystkiego.

No i ostatnia, opcja której jestem w sumie zwolennikiem. Znajdź interesujący Cię projekt, który jest w trakcie tworzenia. W wielu przypadkach są one tworzone po godzinach w domu, przez grupę osób, którzy robią to za darmo - po to by się uczyć, zrobić coś fajnego lub po prostu dla zabicia czasu (tak, tacy też są :P). Powiedz, że jesteś początkowym programistą, interesuje Cię to ale po ogarnięciu składni nie wiesz co dalej. Na pewno znajdzie się ktoś kto Cię przyjmie do projektu, da jakieś łatwe zadania a i w razie problemów pomoże. Najfajniejsze jest w tym to, że nie przejmujesz się tu projektem, funkcjami, jak to jest zaprojektowane, jedynie robisz swoje funkcję, czyste programowanie, czysta nauka. W tym sposobie jednak na początku polecam Ci ogarnąć jakiś system kontroli wersji (jeśli nie wiesz co to, nadrób tą niewiedzę jak najszybciej), a obecnie jest najpopularniejszy GIT.

Na sam koniec dodam, że w razie błędów nie zrażaj się. Odejdź od kompa, oderwij się od programowania, zrób sobie taki reset, zjedz coś, napij się albo po prostu przewietrz. Dopiero potem jeszcze raz przeanalizuj błąd, kod i spróbuj to naprawić. Jeśli się nie uda, trudno! Odpal google i szukaj, możesz najpierw po polsku. Jeśli nic nie znajdziesz nie poprzestawaj na tym - poszukaj po angielsku. A jeśli nie znasz angielskiego w takim stopniu to słownik do ręki i jazda. Uwierz mi, im szybciej zaczniesz tym lepiej - w końcu i tak to będziesz musiał zrobić. Jeśli już nie wiesz co to może być to pytaj na forum. Nie wklejaj całego kodu, napisz jaki masz błąd, co robisz a później ten błąd opisz. Napisz też co próbowałeś zrobić by ten problem naprawić. Ludzie chętniej Ci pomogą a i unikniesz sytuacji gdzie ktoś poświęci Ci czas, napisze swój pomysł rozwiązania a Ty na to mu odpowiesz "e tam, to już próbowałem". Uwierz mi, drugi raz Ci taka osoba nie pomoże.
Warto wspomnieć o testach jednostkowych oraz debugowaniu, poczytaj o tym bo to bardzo przydatna rzecz.

Warto się zapoznać z takimi zasadami jak KISS, DRY, SOLID, Clean Code (szczególnie polecam filmik https://www.youtube.com/watch?v=4LUNr4AeLZM oraz jego drugą część https://www.youtube.com/watch?v=HNVJSGYUIjc)

No i to tyle, mam nadzieję, że choć trochę pomogłem bo wiem jak ciężko ruszyć się z tego miejsca w którym utknąłeś. Pozdrawiam angel

0 głosów
odpowiedź 28 października 2015 przez Gliwa88 Użytkownik (960 p.)
Ile czasu już zajmujesz się kodowaniem?
komentarz 28 października 2015 przez Werran Użytkownik (730 p.)
Kiedyś pisałem w php około pół roku ale przeszedłem na c#. W samym c# pisze od około dwóch miesięcy.
0 głosów
odpowiedź 28 października 2015 przez morela92 Nowicjusz (160 p.)
czesc, okno konsoli po wciśnięciu f5 wyswietla sie przez pól sekundy jak zrobic aby zamykało sie przez wcisniecie jakiegokolwiek przycisku
?
komentarz 28 października 2015 przez Werran Użytkownik (730 p.)

Na końcu kodu dodaj

Console.ReadLine();

 

komentarz 2 listopada 2015 przez morela92 Nowicjusz (160 p.)
dalej nic nawet zwykly hello world wyswietla sie pół sekndy

 
#include <iostream>

using namespace std;
int main()
{
    cout << "hello world"<<endl;
    
    return 0 ;
    
}
komentarz 13 listopada 2015 przez Werran Użytkownik (730 p.)
Człowieku, to jest wątek o C# a nie C++, napisz do kogoś kto ogarnia C++ :)
komentarz 16 kwietnia 2016 przez dasad33 Użytkownik (710 p.)
C# to Console.ReadKey();

C++ nie pamiętam :P
0 głosów
odpowiedź 11 listopada 2015 przez Marcel2727 Nowicjusz (220 p.)
Skoro Visual Studio Ci nie wystarczy to raczej nie ma za bardzo nic do roboty. Wszędzie ten kompilator jest polecany, nie ma innego lepszego.

 

C# jest właśnie stworzone do aplikacji okienkowych więc nie wiem czemu tak odchodzisz od tego?

Podobne pytania

0 głosów
1 odpowiedź 773 wizyt
pytanie zadane 12 listopada 2015 w C# przez hubot Dyskutant (9,090 p.)
+1 głos
3 odpowiedzi 1,332 wizyt
pytanie zadane 18 kwietnia 2015 w C# przez Surykat Stary wyjadacz (14,780 p.)
0 głosów
1 odpowiedź 620 wizyt
pytanie zadane 6 kwietnia 2016 w C# przez Jarek89 Nowicjusz (210 p.)

93,720 zapytań

142,648 odpowiedzi

323,266 komentarzy

63,270 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...