Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Programowanie nauka, co warto wiedzieć?

Hep 09 Feb 2013 19:58 2421 13
  • #1
    Hep
    Level 9  
    Witam wszystkich! Na uczelni w ubiegłym semestrze rozpocząłem zajęcia z programowania. Póki co uczymy się C w kolejnym semestrze ma być C++ zainteresowało mnie programowanie ale póki co robimy rzeczy bardzo proste takie jak liczenie liter w zdaniu albo coś w tym stylu. Interesuje mnie jak mogą wyglądać zlecenia komercyjne. Programowanie układów(?). Dlatego moje pytanie jest następujące: Jak mogę samemu zgłębiać wiedzę w temacie programowania? Chodzi mi o naukę jakichś poważniejszych rzeczy niż liczenie liter lub zmiana małych na wielkie i odwrotnie... Coś co może mi się przydać w przyszłości w pracy. Czytałem trochę w internecie post pt FAQ także ale nie znalazłem informacji tego typu. Pozdrawiam.
  • #2
    Steryd3
    Level 33  
    Zlecenia komercyjne... mogą być różnorodne. Zależy od tego na co się w tym wspomnianym C czy C++ pisze- na PC czy na mikrokontroler. Dawanie przykładów komercyjnych jest bez sensu bo potrafią one zawierać wszystko... obróbkę danych i ich gromadzenie, komunikację w różnych protokołach, wyświetlanie, komunikacje z użytkownikiem i wiele innych. Wiadomo, że nauka zawsze zaczyna się od rzeczy prostych by później przejść do bardziej skomplikowanych. Ważniejszy bardziej od syntaktyki języka od jego wyrażeń itp. jest nauczenie się jak przełożyć opis słowny problemu na algorytm a później na język. Jeżeli to uda się przyswoić to później ewentualna zmiana języka programowania jest do zrobienia. Pętle, zmienne i wyrażenia warunkowe wszędzie występują i działają podobnie. Ucz się dzielnie bo to rzeczywiście programowanie może się przydać.
  • #3
    bogiebog
    Level 43  
    Hep wrote:
    Jak mogę samemu zgłębiać wiedzę w temacie programowania?

    Tylko przez praktykę,
    Czytanie "jak to się robi" bez ćwiczeń i popełniania własnych błędów da ci tyle 'wprawy' w programowaniu co czytanie obsługi instrukcji kosy przed żniwami.

    Hep wrote:
    Czytałem trochę w internecie post pt FAQ także ale nie znalazłem informacji tego typu.

    Bo nie ma.

    Bierz się za coraz ambitniejsze (ale w twoim zasięgu) projekty, ucz się od innych, zawsze jest wiele sposóbów aby oskubać gęś a przeważnie się okazuje że metody innych są 'lepsze', ale (przynajmiej na początku) NAJPIERW zanim poczytasz spróbuj to zrobić sam.

    Nie wiem na jakim jesteś etapie, ale powinieneś mieć opanowane podstawowe struktury/techniki, if-else, pętle, ciągi (strings), vectory (aka tablice), listy, hashe (słowniki). Te pojęcia powinieneś znależć w każdym języku.
  • #4
    McMonster
    Level 32  
    Zacznij po prostu od dobrego zrozumienia tego, co przerabiacie na zajęciach z programowania. Jak już stwierdzisz, że masz to dobrze opanowane, to będziesz mniej więcej wiedział, w jakim kierunku się rozwijać. I próbuj pisać własne programy wg własnego pomysłu i założeń, choćby najgłupsze, ale nie rozpędzaj się i nie próbuj nauczyć wszystkiego na raz i pisać od razu dużych, skomplikowanych aplikacji, tylko się zniechęcisz.
  • #5
    Hep
    Level 9  
    Bardzo dziękuję za wypowiedzi :) będę się starał stopniowo coraz bardziej ogarniać sprawę. A możecie mi polecić jakiś dobry serwis internetowy do nauki? Czy lepiej bazować na literaturze typu Grębosz Symfonia...?
  • #6
    wcale
    Level 12  
    Początki znajdziesz na necie. Z książek polecam Ci Cormen "Wprowadzenie do algorytmów" i Knuth "Sztuka programowania". Jak je opanujesz, to ze wszystkim sobie będziesz radził.
  • #7
    gaskoin
    Level 38  
    Hep wrote:
    Interesuje mnie jak mogą wyglądać zlecenia komercyjne.


    To może być cokolwiek. Zerknij na programy jakie masz na komputerze i masz odpowiedź :P
  • #8
    Mad.
    Level 18  
    Ja jeszcze "niedawno" byłem w podobnej sytuacji. Z mojego punktu widzenia najlepszą opcją na początek jest książka, która nie tylko dogłębnie przedstawi składnię języka itp., ale także jakimi ideami, pomysłami kierowali się twórcy danej technologii. Trzeba oczywiście mieć chęć, żeby przewertować kilkaset stron. Jakość jest dużo lepsza niż internetowe kursy - to nie podlega wątpliwości. Następnie warto napisać kilka aplikacji, bo tylko wtedy pojawiają się niby błahe problemy, które trzeba rozwiązać. Po czasie przychodzi pora na kolejne książki, a także blogi (polecam), artykuły, fora.... Z nową wiedzą okrywasz, że poprzednie Twoje programy były słabej jakości, że teraz napisałbyś je lepiej.... O to właśnie chodzi! Wtedy wiesz, że się rozwijasz.
  • #9
    bogiebog
    Level 43  
    Ważne abyś od początku nauki programowania używał debuggera do diagnozowania problemów, częstym błędem adeptów programowania jest wklejajnie "print" funkcji do wyświetlania zmiennych w czasie wykonywania programu, i potem tak się ciągnie rok, dwa, pięć i już potem pozostaje tylko 'wszystko da się zdiagnozować za pomocą print-a'. Zainwestuj czas aby od dnia 1szego używać debugger-a jak program nie robi tego co powinien.
  • #10
    Hep
    Level 9  
    bogiebog domyślam się o co Ci chodzi ale dla ścisłości zapytam. Chodzi o to, że kiedy program nie działa poprawnie nie sprawdzamy zmiennych poprzez wyświetlenie każdej i w ten sposób sprawdzanie czy przyjmują właściwą wartość tylko przez debugger przeglądamy jakie wartości zmienne przyjmują 'po drodze' programu? O to chodzi? :)
  • #11
    bogiebog
    Level 43  
    debuger - to program który pozwala na wykonywanie programu 'po jednej linijce', zatrzymanie w dowolnym momencie, podgląd zmiennych. Zwykle debuger jest częścią środowiska do programowania (np Visual Studio, .Net)
  • #12
    Hep
    Level 9  
    OK wiem o co chodzi. Dzięki wszystkim za wypowiedzi oczywiście jeśli ktoś ma coś do dodania to proszę się nie krępować :)