Hej :) Jestem totalnym newbie jak chodzi o kodowanie. Z czystej ciekawości, naukę kodowania w C# byście polecali zacząć od podręcznika "Albahari J. - C# 6.0 w pigułce" czy od zapoznania się z dokumentacją C#, a może od czegoś innego? I dlaczego? Z góry dzięki za merytoryczne odpowiedzi :)
- 1
- 2

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596

- Rejestracja:ponad 9 lat
- Ostatnio:7 miesięcy
- Postów:44
Zależy z czego lubisz się uczyć.
Ja np. lubię mieć wizualizację, co się sprowadza do -> Pluralsight.com i wszelkiej maści tutoriali, które można znaleźć na google.com
Jeśli lubisz czytać to -> helion.pl lub -> google.com
Jak dla mnie MSDN i czytanie dokumentacji to jest raczej taki hardcore bo tam wszystko technicznym językiem napisane i jak nie będziesz miał podstaw to ciężko będzie to zrozumieć, chociaż mają tam również taki tutorial do przeczytania tutaj

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Wheliee napisał(a):
(...) chociaż mają tam również taki tutorial do przeczytania tutaj
mam ten tutorial na PDF, właśnie zacząłem sobie go przerabiać. choć przyznaję, że do tej chwili myślałem, że to jest dokumentacja, ponieważ wpadłem na niego jak szukałem właśnie jej :D
- Rejestracja:ponad 8 lat
- Ostatnio:około 2 lata
- Postów:731
Z mojego doświadczenia, trudno się uczyć z książek programowania, bardziej jako czytanka w łóżku jak nie mogę usnąć. ;)
Jakiś kursik z coursera.org lub podobnej strony oraz dokumentacja jako wsparcie.

- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
Gdy zaczynałem programować to kupowałem książki, pomogły bardzo, nawet teraz gdy chce wejść w jakiś język bardziej niż na już to też kupuje i się zapoznaje z całością przez co mam obraz możliwości od razu na tacy. Dokumentacja jak najbardziej, z tego się korzysta na co dzień, ale przynajmniej na początek książka to dobry wybór, byle dobra, bo jest wiele kiepskich pozycji.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Słuszna uwaga, czemu nie uczyć się z obu? :D Zacząłem od książki, ale zdecydowałem się przenieść do dokumentacji/specyfikacji. Jeśli czegoś tam nie rozumiem to wyszukuję zagadnienia w książce, gdzie są one tłumaczone w naszym języku i na innych przykładach. Choć uważam, że specyfikacja jest napisana trochę przyjaźniejszym stylem niż w/w książka, przynajmniej na początku. Ale to moje subiektywne odczucie.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Siema. Jako niuba uderzyła mnie ilość klas w .NET i rozbudowane drzewa klas wewnątrz systemów, do tego można tworzyć własne klasy. W podręcznikach, jak wnioskuję, poznajemy niewielki ułamek klas .NET Framework.
Ciekaw jestem czy w praktyce należy znać większość metod i klas z MSDN: https://msdn.microsoft.com/en-us/library/gg145045(v=vs.110).aspx , czy każdy się specjalizuje i w pracy korzysta z niewielkiej części opisanej wiedzy? Jak to u Was wygląda?

- Rejestracja:około 10 lat
- Ostatnio:około 17 godzin
- Lokalizacja:Łódź
- Postów:1402
Nie znam tej pozycji, więc się nie wypowiem, ale zazwyczaj dobrze mieć i dobrą książke i dokumentację. Książka - jeśli jest dobra - kieruje, oraz uczy poza językiem pewnych zasad, przydatnych, natomiast dokumentacja pozwala poznać konstrukcje i funkcje języka i szybciej znaleźć pewne rzeczy

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
kaczus napisał(a):
Nie znam tej pozycji, więc się nie wypowiem, ale zazwyczaj dobrze mieć i dobrą książkę i dokumentację. Książka - jeśli jest dobra - kieruje, oraz uczy poza językiem pewnych zasad, przydatnych, natomiast dokumentacja pozwala poznać konstrukcje i funkcje języka i szybciej znaleźć pewne rzeczy
Dzięki za odpowiedź, ale temat literatury już mam ogarnięty. Skończyłem przerabiać "Wstęp do programowania w C#" A.Kempa, T.Staś, którą polecam wszystkim początkującym. Teraz jadę dalej z "C# 6.0 w pigułce".
Natomiast zaintrygowało mnie rozbudowane drzewo klas w specyfikacji na stronie MSDN. Ciekaw jestem czy w praktyce należy się zapoznać ze wszystkimi, czy lepiej się uczyć ich na bieżąco w razie potrzeby?

- Rejestracja:ponad 9 lat
- Ostatnio:7 miesięcy
- Postów:44
Jakbyś wszystkie chciał poznać to życia może ci nie starczy. Te podstawowe wykorzystywane w programach powinno się znać, a w pracy to przecież nie jesteś na jakimś odludziu i internet jest, można do dokumentacji zawsze skoczyć i doczytać/przerobić przykład kodu na swoje potrzeby.

- Rejestracja:około 17 lat
- Ostatnio:około 12 godzin
- Lokalizacja:Wrocław
Warto zapoznać się przede wszystkimi z tymi przestrzeniami nazw, bo ich używa się najczęściej i stanowią pewne podstawy wszystkiego:
System.IO
System.Xml
System.Collections
System.Data
System.Linq
System.Threading
System.Text
Reszta zależy od technologii i firmy, w której pracujesz.

- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
bakunet napisał(a):
kaczus napisał(a):
Nie znam tej pozycji, więc się nie wypowiem, ale zazwyczaj dobrze mieć i dobrą książkę i dokumentację. Książka - jeśli jest dobra - kieruje, oraz uczy poza językiem pewnych zasad, przydatnych, natomiast dokumentacja pozwala poznać konstrukcje i funkcje języka i szybciej znaleźć pewne rzeczy
Dzięki za odpowiedź, ale temat literatury już mam ogarnięty. Skończyłem przerabiać "Wstęp do programowania w C#" A.Kempa, T.Staś, którą polecam wszystkim początkującym. Teraz jadę dalej z "C# 6.0 w pigułce".
Natomiast zaintrygowało mnie rozbudowane drzewo klas w specyfikacji na stronie MSDN. Ciekaw jestem czy w praktyce należy się zapoznać ze wszystkimi, czy lepiej się uczyć ich na bieżąco w razie potrzeby?
Po prostu szukasz tego co potrzebujesz w danym momencie i tyle

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
W czasie nauki pojawiła mi się refleksja. A mianowicie, różne typy zajmują różną ilość pamięci. Tak samo każdą metodę/blok można napisać na kilka równoznacznych sposobów, stosując inne pętle, wpisując je w siebie lub korzystając z metod, klas, produkując stałych i zmiennych na potęgę.
Zastanawiam się, czy w pracy zawodowej zwraca się uwagę na "kulturę" programowania, optymalizując kod, czy po prostu ma działać i tyle? Jak to wygląda w praktyce? Jak na to patrzy pracodawca, leader?

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Ciekaw jestem, w C# piszecie aplikacje windowsowe? Korzystacie z System.Windows.? Warto od tego zaczynać? czy lepiej na początek się zapoznać z innymi przestrzeniami nazw? tzn IO, Collections, Data, Linq, Xml, Text, jak radził @somekind ?

- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
bakunet napisał(a):
Ciekaw jestem, w C# piszecie aplikacje windowsowe? Korzystacie z System.Windows.? Warto od tego zaczynać? czy lepiej na początek się zapoznać z innymi przestrzeniami nazw? tzn IO, Collections, Data, Linq, Xml, Text, jak radził @somekind ?
Oczywiście, bo w C# najszybciej się napisze apki na windowsa. Po raz kolejny nie wiem na co się zapoznawać z przestrzeniami nazw. One są tak wielkie, ze choćbyś siedział pare miesięcy nie zapamiętasz co tam w nich siedzi. Siadasz i robisz. Jak czegoś potrzebujesz to szukasz w dokumentacji i googlu. Po jakimś czasie już będziesz wiedział gdzie coś się może znajdować i intuicyjnie to łapał.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
mr_jaro napisał(a):
Oczywiście, bo w C# najszybciej się napisze apki na windowsa. Po raz kolejny nie wiem na co się zapoznawać z przestrzeniami nazw. One są tak wielkie, ze choćbyś siedział pare miesięcy nie zapamiętasz co tam w nich siedzi. Siadasz i robisz. Jak czegoś potrzebujesz to szukasz w dokumentacji i googlu. Po jakimś czasie już będziesz wiedział gdzie coś się może znajdować i intuicyjnie to łapał.
Pewnie masz rację. Choć znając jedynie semantykę C#, po przerobieniu podstaw, osobiście chcę przejrzeć przestrzenie nazw, poznać ich klasy, metody, przykłady zastosowań, przerobić przykłady z MSDN, poczytać o rzeczach które wciąż budzą moje wątpliwości. Nie znam lepszego sposobu na to, by poznać potencjał C# nim zabiorę się za swoje pierwsze demo.
Zacząłem przerabiać "C# 6.0 w pigułce", podręcznik 1000str, czyta się całkiem spoko, ale jest tam mało przykładów i po 1/10 doszedłem do wniosku, że bez żywego materiału na którym będę mógł testować teorię nic mi nie zostanie w głowie.

- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
Szczerze? Nie lubię takiego podejścia ale jak kto woli. Ja po prostu jak chce napisać w czymś nowym to po prostu siadam i zaczynam pisać. chce napisać fora w nieznanym języku? Wpisuje w google widzę jak wygląda i to wpisuje i tak z każdą kolejną rzeczą, pozwala mi to oszczędzić czasu i szybciej coś napisać niż najpierw parę tygodni czytania żeby napisać 2 linijki i wracać z powrotem do czytania bo już zapominałem to co przeczytałem. Jak zaczynałem z C# to po prostu stworzyłem nowy czysty projekt i zacząłem od zabawy z gui proste rzeczy proste wywołania aż w końcu napisałem pierwszą apkę, a drugą w tym języku było pierwsze w życiu zlecenie.
Dopiero mając takie przećwiczenie w praktyce można zacząć myśleć o poprawie jakości kodu.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Rozumiem, że budować GUI można jedynie w VisualStudio? Obecnie korzystam z SharpDevelop - darmowy kompilator. Posłucham Twojej rady, kto wie, może oszczędziłeś mi sporo czasu :) Pierwszym krokiem będzie instalacja VS.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
mr_jaro napisał(a):
(...) aż w końcu napisałem pierwszą apkę, a drugą w tym języku było pierwsze w życiu zlecenie.
W którym to było roku, jeśli mogę spytać?

- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
bakunet napisał(a):
mr_jaro napisał(a):
(...) aż w końcu napisałem pierwszą apkę, a drugą w tym języku było pierwsze w życiu zlecenie.
W którym to było roku, jeśli mogę spytać?
2013

- Rejestracja:około 17 lat
- Ostatnio:około 12 godzin
- Lokalizacja:Wrocław
mr_jaro napisał(a):
Po raz kolejny nie wiem na co się zapoznawać z przestrzeniami nazw. One są tak wielkie, ze choćbyś siedział pare miesięcy nie zapamiętasz co tam w nich siedzi. Siadasz i robisz. Jak czegoś potrzebujesz to szukasz w dokumentacji i googlu.
Czyli jak chcesz odczytać plik tekstowy, zmienić kodowanie w pliku, zserializować dane do XML, wczytać konfigurację, użyć jakiejś kolekcji albo ją przeszukać, to za każdym razem sięgasz do dokumentacji?
Sorry, ale to są takie podstawy, że trzeba być w stanie to zrobić w dowolnym momencie z pamięci.
- Rejestracja:prawie 11 lat
- Ostatnio:29 minut
- Postów:312
@mr_jaro napisał:
Po raz kolejny nie wiem na co się zapoznawać z przestrzeniami nazw. One są tak wielkie, ze choćbyś siedział pare miesięcy nie zapamiętasz co tam w nich siedzi.
Jest chyba różnica między "zapoznać", a "zapamiętać". Później jednak trochę wstyd, że implementuje się samemu jakąś kolekcję co już jest w FCL, lub nie ma pojęcia co to są strumienie i jak się z nimi obchodzić.


- Rejestracja:ponad 13 lat
- Ostatnio:około 3 lata
- Lokalizacja:Grudziądz/Bydgoszcz
- Postów:5300
somekind napisał(a):
mr_jaro napisał(a):
Po raz kolejny nie wiem na co się zapoznawać z przestrzeniami nazw. One są tak wielkie, ze choćbyś siedział pare miesięcy nie zapamiętasz co tam w nich siedzi. Siadasz i robisz. Jak czegoś potrzebujesz to szukasz w dokumentacji i googlu.
Czyli jak chcesz odczytać plik tekstowy, zmienić kodowanie w pliku, zserializować dane do XML, wczytać konfigurację, użyć jakiejś kolekcji albo ją przeszukać, to za każdym razem sięgasz do dokumentacji?
Sorry, ale to są takie podstawy, że trzeba być w stanie to zrobić w dowolnym momencie z pamięci.
Być może, ale mój sposób jest dla mnie najbardziej efektywny, tak robię od zawsze (oprócz php i c++ które najpierw na szybko przeczytałem książkę) i jak na razie dobrze na tym wychodzę.

- Rejestracja:około 11 lat
- Ostatnio:około 6 godzin
- Postów:8407
Ja do dzisiaj nie posiadam wiedzy podstawowej o JavaScript i muszę często patrzeć na MDN, ale winię za to kiepski design języka (np. w stringach są trzy metody do wycinania tekstu: slice
, substr
i substring
- każda metoda niby robi to samo, ale inaczej interpretuje parametry, np. jedna interpretuje parametr jako długość, druga metoda jako indeks itp. Np. o ile slice
kojarzę, to nie pamiętam, czym się różni substr
od substring
).
Podobnie mi się mylą funkcje JS do obsługi regexpów, bo to też w JS jest strasznie niespójnie zrobione. Falsy values czy wyników porównań w JS też specjalnie nie pamiętam, często muszę sprawdzić coś w konsoli.
Z drugiej strony nie przejmuję się, bo sprawdzić coś to jest chwila.
Gorzej z nieznajomością samych mechanizmów rządzących językiem, to faktycznie wpływa negatywnie albo na produktywność albo na jakość rozwiązań.

- Rejestracja:prawie 8 lat
- Ostatnio:około 6 godzin
- Lokalizacja:Polska
- Postów:1596
Mam Kolegę, który od 8 lat koduje i dostałem od niego podobne rady jak od @somekind.
Jako, że nie mam doświadczenia w programowaniu, ostatecznie postanowiłem posłuchać tych rad. Przy dużej ilości wolnego czasu w kilka tygodni powinienem się uporać z przejrzeniem podstawowych przestrzeni nazw, sporządzając własne notatki na przyszłość i testując na przykładach z MSDN. Wiele metod się sprowadza do wprowadzenia lub sprawdzenia wartości logicznych, więc nie powinno to zająć tyle czasu ile z pozoru mogłoby się wydawać.
W każdym razie dzięki wszystkim za sugestie :)
- 1
- 2