6 / 9
Nov 2015

Mam taki problem...chyba z samym sobą smile od jakiegoś czasu programuję (o ile można to tak nazwać) w c++...czytam tutoriale, rozwiązuję zadania (m.in. na SPOJU oczywiście smile )...jednak czegoś mi w tym wszystkim brakuje. I stąd moja wątpliwość czy też pytanie:

Jak długo mam walczyć z zadankami typu spojowego ? tz. bardzo sobie je cenię, bo przyswajam dużo wiedzy i znajduję wiele ciekawych rozwiązań smile jednak pragnąłbym w końcu równolegle zacząć tytułową "naukę praktyczną/przydatną"...nie wiem, może stwarzanie jakiejś gry? może "psucie komputera" na poziomie procesora? zabawa bibliotekami? I chyba meritum tego problemu ? Kiedy się za to zabrać? i przede wszystkim jak ? jak przeskoczyć z poziomu forów i ifów na coś "poważnego"... W żadnym razie nie chcę,aby to brzmiało lekceważąco wobec zadań algorytmicznych. Pomożecie ? opiszecie może swoje doświadczenia ? Jakiś Wasz sposób na zrobienie kolejnego kroku w nauce?

  • created

    Nov '15
  • last reply

    Nov '15
  • 8

    replies

  • 1.8k

    views

  • 6

    users

  • 2

    links

Odpowiem bo kiedyś stanąłem na tym samym, jeżeli znasz podstawy obiektówki napisz prostą grę w sfml, trochę fizyki 2d (typu kolizje, grawitacja) i prosty pomysł. Biblioteka jest prosta, w necie dużo tutoriali znajdziesz. Jeżeli nie znasz obiektówki naucz się jej podstaw, otwiera dużo drzwi do biblikotek i frameworków z którymi można pisać istne cudeńka (gry), a i przy okazji algorytmika bardzo się przydaje przy programowaniu swojego mikro silnika gry, sam sfml uczyłem się z CodingMadeEasy na YT, co prawda po angielsku ale sam kod się przecież liczy. Co do "psucia komputera" trzeba mieć pojęcie a architekrurach procesora, czytać (ze zrozumieniem) dokukmentację itd. i programowaniu w językach niskopoziomowych np. Assembler

A mówi ci coś w środku, że jesteś na to gotowy? Możesz też przeskoczyć wiele kwestii, ale musisz pamiętać, że programując kilka kroków wyżej możesz sobie zniszczyć system lub nawet sprzęt. Sama chciałabym od razu przeskoczyć do 5 poziomów wyżej i zacząć pisać wielkie rzeczy, ale wiem że to nie jest dobre wyjście bo chcę wiedzieć co wrzucam do swojego kodu i jak działa, by móc go modyfikować pod siebie. Osobiście od podstaw przerabiam C++ z biblioteką Qt, jednak zaczynając od wykorzystywania w kodzie matematyki wyższej (masa różnych algorytmów, macierz itd), tym samym zachęcając się, że matma ma zastosowanie konkretne w informatyce, a nie uczy się jej tak jak w szkole, nawet bez wytłumaczenia po co i na co. Niestety programowanie gier lub tworzenie grafiki to matematyka i fizyka na wysokim poziomie i jak czytam gimbazę, że oni matmy nie będą się uczyć, bo oni będą pisać gry, to nie wiem czy płakać czy się śmiać.

dziękuję za zainteresowanie tematem smile to bardzo cenne rady smile

Co do znajomości matematyki nie będę z tym miał większego problemu smile w końcu to mój kierunek studiów smile

Pozdrawiam i raz jeszcze dziękuję smile

O tak matematyka jest ważna w porgramowaniu, a w szczególności jej praktyczne zastosowanie, np do napisania prostego silnika gry 2d potrzebna jest wiedza o wektorach, podstawy trygonometrii i geometrii obliczeniowej (zagadnienia głównie ze szkoły średniej).

Tak trzymaj, rozwiązuj więcej i czytaj nie tylko tutoriale

To już raczej praktyczne wykorzystanie zdobutej wiedzy, ale oczywiście można w taki sposób uczyć się dalej.

Biblioteki są bardzo ważne i niesłychanie przydatne i ułatwiające życie, więc na pewno warto. Spróbować popsuć komputer to też pouczająca nauka ale może być kosztowna - kto będzie naprawiał? Ty? wink. Tak jak już to wspomniał tycjan, tu warto zastosować [nauczyć się] assembler'a. Kiedyś wystarczały do tego windowsy. Czasami same potrafiły zepsuć i napsuć dużo krwi naprawiaczowi. Teraz powinieneś dodatkowo zainteresować się OS Linux - chyba, że już wszystko wiesz. Wprawdzie linux sam nie popsuje Ci kompa, ale daje dużo więcej możliwości.
Gry? Po prostu zrób co lubisz i co uważasz. Jeżeli jest to dla Ciebie interesujące to oczywiście tak. Ważny jest twój pomysł na wykorzystanie kompa, a cała reszta to narzędzia do tego.

Jeżeli tak uważasz, że for i if to coś niepoważnego to raczej jeszcze długa droga i dużo nauki przed tobą.

Ostatnio czytałem/czytam coś zupełnie nie związane z IT. Utkwiły mi takie dwa cytaty/zdania, które przytaczam z pamięci - może nie zupełnie poprawnie:
"Żaden klucz nie pasuje do wszystkich drzwi"
"Nie ma samotnych wilków"
Jak to ma się do tego wątku i do IT? To już zagadka dla Ciebie.

No i może jeszcze coś takiego:
http://discuss.spoj.com/t/jak-zostac-prawdziwym-programista/10607/13
i takiegu:
http://discuss.spoj.com/t/miroslaw-zelent-6-najczestszych-bledow-podczas-nauki-programowania/10609
Na starym [forum-old] też by się coś znalazło.

Witajcie,
pozwolę się dołączyć gdyż zaciekawił mnie temat.
Osobiście uważam że pisanie małych programów to fundamenty i jeśli dobrze je zbudujemy to pisząc duży projekt będzie nam łatwiej łączyć małe klocki w jeden duży, a następnie ten duży z innymi dużymi.
Jednak nie warto chyba stać w miejsu i jeśli ma się pomysł i możliwości żeby zacząć pisać "coś poważniejszego" to jak najbardziej śmiało

  • Łapać się na jakieś 'opensoursy' .
  • Na pewnych ircach ludzie potrafią prosić o pomoc w przyjrzeniu się czy ich kod jest dobry. Czytać generalnie kod innych ludzi vide github.
  • Wymyślać sobie zadania ( przeszukiwacz dysku, serwer TCP/UDP, symulator przyciśnięcia klawisza, etc... ).

Jest tego multum. Trzeba tylko chcieć wink

jestem Wam niesamowicie wdzięczny za Waszą pomoc smile nawet nie liczyłem na tak wielki odzew w tym temacie smile chyba najważniejsza nauka, którą sobie przyswoję to ta, że programowanie to ciągła nauka smile i parafrazując pewien internetowy teks : "wszystko jest programowaniem, jeśli jesteś wystarczająco odważny" smile Raz jeszcze dzięki smile

Suggested Topics

Want to read more? Browse other topics in System SPOJ or view latest topics.