Nauka języka C # i utknięcie w rutynie [zamknięte]

12

Uczę się języka C # / .NET 4.0 od około 2/3 miesięcy, to mój pierwszy poważny język programowania (wcześniej przeglądałem PHP, HTML, CSS, JavaScript i VBA, ale nigdy nie byłem tak dogłębnie) i jestem zaczyna się trochę zacinać:

  • Osiągnąłem pułap nauki dzięki brakowi „dużego” projektu ...
  • Brak pracy nad złożonymi projektami budzi wątpliwości co do moich umiejętności ...

2 tygodnie temu miałem rozmowę kwalifikacyjną na stanowisko Młodszego Programisty i udało mi się odpowiedzieć na większość pytań, na które odpowiedziałem, ale wciąż nie dostałem pracy z powodu braku praktycznego doświadczenia, nie jestem pewien, co zrobić robić!

Jak powiedziałem wcześniej, nie chciałbym wnosić wkładu w projekt Open Source, ale nie wiem od czego zacząć, zakładam, że „duże” projekty chcą tylko dobrych koderów :(

Czy jest jakaś forma testu programowania online, który pokaże mi, jak jestem „dobry” (lub „zły”) w tej chwili? :)

Dziękuję za wszelką pomoc.

JuniorDeveloper1208
źródło

Odpowiedzi:

8

Chciałbym zapytać Cię, co Cię interesuje (hobby itp.), A następnie zobaczyć, jakie większe projekty możesz z tym wymyślić. Możesz także sprawdzić Project Euler, jeśli tylko szukasz ćwiczeń, ale myślę, że projekty, którymi osobiście jesteś zainteresowany, są lepsze.

FrustratedWithFormsDesigner
źródło
To jest problem, myślę, że nie jestem całkowicie pewien, gdzie preferuję obszar kodowania. Ogólnie jednak lubię samochody / motocykle i programy telewizyjne / filmy, ale wiele projektów wokół nich zostało już zrealizowanych. Boję się też spróbować czegoś bardzo złożonego. Najbardziej skomplikowaną rzeczą, jaką zrobiłem, jest sprawa Ludzkiego / Potwora w XNA, w której Ludzie uciekają, a Potwory biegną w stronę, ale o to chodzi!
JuniorDeveloper1208 24.01.11
4
Kogo to obchodzi, jeśli zostało to zrobione? Kiedy się uczysz, zupełnie nowe jest wynalezienie koła. Powoli buduję program galerii zdjęć z bazą danych do przechowywania tagów i wszelkiego rodzaju innych metadanych dotyczących zdjęć. Pewnie, że zostało to zrobione, ale chciałem odświeżyć mój C # i brzmiało to jak zabawny projekt. To nie jest zrobione (może nigdy nie będzie), a teraz myślę o przebudowaniu interfejsu użytkownika, aby nauczyć się WPF. To wyłącznie projekt edukacyjny i jeśli kiedykolwiek skończę i wydam coś, będę zaskoczony! Ale wiele się nauczyłem !!
FrustratedWithFormsDesigner
1
@toleero: Człowiek / potwór w XNA brzmi trochę zabawnie. Następnie dodać broń? Będzie to wymagało poważnej przeróbki, ale będzie tego warte. A może zacznij od różnego rodzaju potworów, takich jak szybki / wolny, słaby / silny, duży / mały ...
FrustratedWithFormsDesigner
1
@toleero: To właściwie bardzo dobry projekt początkowy, jest wiele, wiele kierunków, w które można się udać.;)
FrustratedWithFormsDesigner
1
@Frustrated, @toleero: Dokładnie. Mam kilka projektów, które zawsze myślę o nowych funkcjach do dodania. Co się dzieje: dodajesz małą funkcję i myślisz o 5 kolejnych. W miarę ich dodawania Twoje pomysły stają się lepsze, ponieważ Twoje umiejętności ich wdrażania stają się lepsze, a Ty zastanawiasz się, jak je wdrożyć. Za rok lub dwa spojrzysz wstecz i pomyślisz, jak proste były twoje pierwsze projekty! Pamiętaj, że możesz zobaczyć, jak daleko zaszedłeś, kiedy tam dotrzesz.
Michael K
2

Cały sens otwartego źródła polega na tym, że źródło jest otwarte i możesz robić z nim prawie wszystko, co chcesz, poza tym, że rościsz sobie prawo własności i rozpowszechniasz je bez źródła.

Znajdź projekt, który Ci się podoba i z którego korzystasz, ale uważasz, że można go ulepszyć.

Pobierz najnowszą stabilną gałąź, pobierz ją.

Wprowadź zmiany, które Twoim zdaniem będą dobre dla projektu.

Pokaż niektórym członkom społeczności swoje postępy i ulepszenia.

Jeśli im się spodoba, mogą włączyć go do głównej gałęzi.

Jeśli im się to nie podoba, ale uważasz, że to naprawdę dobre. Rozwidlaj projekt, skonfiguruj własną stronę ze źródłem, przeczytaj licencję, aby wszystko było prawidłowe.

AttackingHobo
źródło
1

Jedynym testem, który ma jakąkolwiek wartość, jest dostarczenie użytecznego, użytecznego i solidnego oprogramowania. Wszystko inne to ciekawostki.

Sugerowałbym, aby odwiedzić CodePlex, aby zobaczyć sporo projektów open source, które używają C # i .NET. Coś tam zainteresuje Cię jako program lub bibliotekę, której faktycznie użyjesz. Wypróbuj i zanotuj rzeczy, które byś zmienił, aby były lepsze.

W rzeczywistości nie musisz się martwić, że zostaniesz przyjęty do zespołu programistów, ponieważ możesz po prostu pobrać bazę kodu i wprowadzić własne zmiany. Jeśli uważasz, że wymyśliłeś coś naprawdę cennego, skontaktuj się z zespołem programistów.

Adam Crossland
źródło
Mój premier twierdzi, że termin zastępuje użyteczność / trwałość każdego dnia tygodnia, heh.
Brad Christie
@Brad - Słyszę to samo w każdy wtorek o godzinie 14.00
Adam Crossland
1

Czy jest jakaś forma testu programowania online, który pokaże mi, jak jestem „dobry” (lub „zły”) w tej chwili?

Że wyniki takich testów są w dużej mierze nieistotne. Liczy się to, że można osiągnąć rzeczy w danym języku. Które oczywiście jeszcze nie możesz.

Oto moja sugestia. Na pewno czytasz książkę na C #. Większość dobrych książek ma praktyczny przykład, który robisz dzięki książce, która ją opracowuje i czyni ją bardziej skomplikowaną w miarę postępu rozdziału. Zrozum ten przykład, a następnie zaprogramuj dla siebie małą prostą rzecz, zwracając uwagę na sugerowane najlepsze praktyki. Gdy to zrobisz, zyskasz pewność siebie i będziesz mógł się pochwalić.

Zacznij robić rzeczy.


źródło
Dzięki, zrobiłem kilka rzeczy (niektóre aplikacje WinForms, piaskownica XNA i piszę Google Stock Tracker w WPF), ale trudno mi trzymać się projektu ...
JuniorDeveloper1208
1

Czy jest jakaś forma testu programowania online, który pokaże mi, jak jestem „dobry” (lub „zły”) w tej chwili? :)

Żaden test nie będzie w stanie tego wykazać (nawet jeśli menedżerowie / pracownicy HR mocno wierzą w coś przeciwnego ;-). Pokazuje tylko w prawdziwym życiu, pracując nad prawdziwymi projektami przez dłuższy czas.

Jak powiedziałem wcześniej, nie chciałbym wnosić wkładu w projekt Open Source, ale nie wiem od czego zacząć, zakładam, że „duże” projekty chcą tylko dobrych koderów :(

Wierzę, że możesz zacząć wnosić niewielki wkład w wiele projektów typu open source. Przynajmniej uważam, że testowanie, zgłaszanie błędów i wkład dokumentacji są z pewnością mile widziane, ponieważ wielu programistów ich nie lubi :-) W ten sposób stopniowo możesz budować reputację i zacząć pisać kod: najpierw poprawki błędów, a potem większe zmiany.

2 tygodnie temu miałem rozmowę kwalifikacyjną na stanowisko Młodszego Programisty i udało mi się odpowiedzieć na większość pytań, na które odpowiedziałem, ale wciąż nie dostałem pracy z powodu braku praktycznego doświadczenia

Nie poddawaj się, w pewnym momencie przytrafiło się to większości z nas. Ucz się, ćwicz i aplikuj na młodsze stanowiska, a prędzej czy później je dostaniesz. Jedną z rzeczy, które możesz i IMHO powinieneś zrobić po rozmowach, jest zebranie opinii. Jeśli wypełniłeś test pisemny, nie tylko pytaj o wynik, ale także poproś o arkusz wyników, aby zobaczyć błędy, które popełniłeś i wyciągnąć z nich wnioski. Przeanalizuj również proces wywiadu i znajdź, gdzie udzieliłeś suboptymalnych odpowiedzi, przegapiłeś rytm itp. Następnym razem możesz to poprawić dzięki dodatkowym przygotowaniom.

Péter Török
źródło
Dzięki, rzuciłem okiem, ale trudno mi znaleźć projekt, do którego można się zobowiązać!
JuniorDeveloper1208 24.01.11
0

Nigdy nie bój się programowania, najlepszymi programistami są ci, którzy dokonali największych błędów. Głupie błędy, skomplikowane błędy, wszystkie przyczyniają się do tego, że czynisz cię lepszym programistą.

Powodzenia !!

Cypr
źródło