Chciałbym zostać programistą - początki programowania.

0

Witam!

Zdaję sobie sprawę z tego, iż tematów takich jak ten na forum mogły być setki a w google mogą być ich dziesiątki tysięcy. Dodam również, że zapoznałem się z tematami przyklejonymi do działu Newbie. Zawsze najpierw czytam/szukam a dopiero na końcu pytam.

Teraz przyznaje się, że specjalnie dużo nie szukałem, aczkolwiek nie mam siły na to by samodzielnie rzucić się w ogrom tematu programowania. Informacji jest tak dużo, że w poszukiwaniu odpowiedzi na dane pytanie, wchodzi się na 10 różnych for, czyta się 100 postów tamtejszych użytkowników aż w końcu trafia się na ten 101 post, w którym jest zawarta odpowiedź na połowę pytania..

Ciężko jest mi cokolwiek napisać bo temat programowania jest przeogromny i zawiera mnóstwo zagadnień a ja prawdę mówiąc nie mam pojęcia o niczym. Chciałbym nauczyć się programowania i wiem, że musze obrać konkretny kierunek w swojej nauce. Wybrać do czego jest mi potrzebne programowanie a następnie wybrać do tego odpowiedni język, z czasem uczyć się kolejnych przydatnych języków.

Może podejdźmy do sprawy z innej perspektywy:

[A] Jakim samochodem chce Pan jeździć przez (załóżmy) następne 2 lata? Proszę sobie wybrać numerek od 1 do 10. (każdy numerek to inny samochód)
[B] No a czym one się różnią? Co posiada 1 a co 5? Na jakim terenie się bardziej sprawdzają? itd. Itd.
[A] No najpierw niech Pan wybierze a później się Pan sam przekona co sobie Pan wybrał.

No i jest duże prawdopodobieństwo na to, że Pan [B] przez następne 2 lata będzie jeździł samochodem, który w ogóle nie będzie mu się podobał. Podobnie jest z wyborem języka. Choć tutaj już co nieco wiem (między innymi dzięki temu tematowi za który bardzo dziękuje) ale to i tak niewiele.

Jak napisałem wcześniej należy obrać jakiś kierunek. Zainteresowało mnie tworzenie gier komputerowych ale jak się je tworzy to już nie bardzo wiem. Wszędzie można znaleźć jedynie ogólnikowe informacje typu silnik graficzny. No ale co silnik graficzny? No modelowanie, tekstury, programowanie, „taka sytuacja”… Są porozrzucane hasła C++, ale żeby C++ to najpierw C ale znowu ktoś inny mówi, że samym C nie warto sobie zawracać głowy, potem jakieś C#, Java, MySQL, .NET itd. Gdzieś tam jeszcze ludzie polecają uczyć się czegoś takiego jak Basic. No np. MySQL to niby jakaś tam baza danych, ale dokładniej co to? No to w odpowiedzi zarzućmy linkiem do Wikipedii niech się dowie co to.. No ale tam też jest wytłumaczone to wszystko nie tak jak osobie, która nic nie wie na dany temat tylko jak osobie która już jest w jakimś tam stopniu w temacie.

Wiem, że do gry 3D potrzebny jest cały zespół ludzi bo jest przy tym mnóstwo pracy. Jako jednostka nie jestem w stanie zrobić wszystkiego więc warto byłoby się w czymś wyspecjalizować i nabrać z czegoś doświadczenia. Często więc odsyła się na forach do tworzenia gier 2D bo można to niby samemu jakoś ogarnąć.

**Przechodząc do konkretów. **

Przymierzam się do nauki C++, podobno w jakimś tam stopniu jest potrzebny do tworzenia gier ale nie tylko bo znajduje zastosowanie w innych dziedzinach więc wydaje się to dobry wybór. Nie skupiajmy się aż tak bardzo na tym tworzeniu gier, to jednej z pomysłów, być może za jakiś czas okaże się że jednak tworzenie jakiś aplikacji bardziej mi się spodoba. Tak czy inaczej wszystko sprowadza się do programowania i dlatego uważam, że najtrafniej byłoby zacząć naukę od C++. Zorganizowałem sobie książkę „Symfonia C++” bo dosyć głośno o niej i podobno jest przydatna dla takich ludzi jak ja. W samej książce już na samym początku autor wspomina o tym, że jest to książka dla ludzi początkujących, którzy mieli styczność z językiem C lub Basic jak i dla tych bardziej obeznanych w temacie. To już mnie trochę przyhamowało czy faktycznie powinienem zacząć od C++ a nie od C czy Basic? Bo niby dla początkujących no ale mimo wszystko autor zakłada, że czytelnik miał już styczność z jakimś językiem a ja żadnej styczności z programowaniem nie miałem (no może po za tworzeniem jakiś stronek www ale to mało ważne).

Dobra, mam książkę ale w czymś trzeba pisać, prawda? Pobrałem sobie darmowego VS2012 Ultimate, odpalam, New Project i kilka opcji do wyboru a tak naprawdę nie wiem czym się poszczególne projekty różnią… Nie mam pojęcia jakie narzędzia mam do dyspozycji i gdzie szukać wskazanych w książce np. najprostsze „Hello World” napisałem według instrukcji a nie wiem jak to uruchomić by to okienko się pojawiło.. Po raz kolejny wybrałem się po pomoc do wujka google no ale tam jak już pisałem na wstępie masa propozycji różnych programów i nie wiadomo co wybrać. Może wy mi polecicie jakieś książki najlepiej jakieś PDF’y i programy do pisania na start?

Jak widzicie te podstawowe kroki w konkretnym kierunku już wykonałem ale to jakoś nie trzyma się kupy. Mam 22 lata a nie 14 i nie mam czasu na uczenie się wszystkiego co ktoś gdzieś tam zaproponuje. Gdybym miał te 14 lat to ogarnąłbym sobie co to jest ten Basic, pouczył się tego trochę potem C potem C++ i tak dalej. W obecnej sytuacji nie wiem czy to ma sens i czy nie stracę cennego czasu zamiast przejść od razu do np. C++ dzięki któremu poznam rzeczy z C bez wcześniejszego tracenia czasu na samo C.

Myślałem nad tym by iść na PW i tam w wolnym czasie uczyć się programowania jednak ze względów finansowych będę miał taką możliwość najwcześniej za 2 lata. Wiadomo, że ten czas trzeba jakoś spożytkować i dlatego postanowiłem się uczyć samemu ale pozostaje pytanie. Czy warto po tych dwóch latach iść na studia mimo wszystko czy to już za późno i dać sobie spokój i nadal uczyć się samodzielnie?

Sporo tego napisałem, choć i tak streściłem wszystko jak tylko się dało. Staram się was jakoś zaznajomić z moją sytuacją aby uniknąć nietrafnych odpowiedzi.

Kilka próśb na koniec:

Poradźcie mi z czego korzystać, jakie dalsze kroki podjąć, co jest warte uwagi itp.
Nie piszcie postów, w których jedynie się wymądrzacie lub dogryzacie mi czy innym użytkownikom.
Jak już pisałem jestem absolutnie zielony w tym wszystkim, starajcie się nie używać zbyt wielu skrótów. Niektóre rzeczy mogą być się dla was oczywiste dla mnie niekoniecznie :)

Pozdrawiam, Pirex

2

Początek początku jest prosty - odpalasz kurs C++/otwierasz książkę do C++. Odpalasz VS lub Code Blocksa i jedziesz po kolei.
Nikt Ci więcej nie podpowie, tak wygląda szukanie w google, a z czasem nauczysz się wyłapywać tylko te istotne informacje.

1

Mam książkę do C++ odpalam VS wpisuje przykład z książki do VS..

#include <iostream.h>
main()
{
	count << "Siemanko" ;
} 

.. i nie działa. Autor książki leci dalej a ja stoję w miejscu na takim banale. Jaki nowy dokument/projekt powinienem zakładać do pisania C++ w VS2012 Ultimate? Próbowałem kilku i wszędzie error...

2
  1. Bo książka ma więcej lat niż ty.
  2. Bo powinieneś dać Build a potem Run...
1

Źle przepisałeś przykład z książki (funkcja main nic nie zwraca i co to jest count?), zmień ją w ogóle na nowszą. A poza tym proponowałbym "Od zera do gier kodera" Xion'a.

0

Gdzie Ty znalazłeś taki przykład?

0

@Shalom

Dzięki, na przyszłość będę wiedział.

@_matej

Pobieram właśnie PDF Xion'a z jego własnej strony (chyba). Zobaczymy jak mi się to przyda. Dzięki.

@ta

Tak jak napisałem w pierwszym poście, "Symfonia C++" niby najnowsze wydanie, jak widać chyba nie :)

0

@Pirex najnowsze wydanie to "Symfonia C++ standard" i ona takich cudów nie ma...

2
Pirex napisał(a):

[A] Jakim samochodem chce Pan jeździć przez (załóżmy) następne 2 lata? Proszę sobie wybrać numerek od 1 do 10. (każdy numerek to inny samochód)
[B] No a czym one się różnią? Co posiada 1 a co 5? Na jakim terenie się bardziej sprawdzają? itd. Itd.
[A] No najpierw niech Pan wybierze a później się Pan sam przekona co sobie Pan wybrał.

Niech się Pan zapisze na naukę jazdy. Zobaczy Pan jak się jeździ, a potem będzie mógł Pan wsiąść do dowolnego auta osobowego i po krótkiej przymiarce będzie nim sprawnie jeździł. Widzisz analogię? Języki programowania, które są obecnie szeroko wykorzystywane są podobne do siebie. Nawet jak nie do końca składnią, to zasada tworzenia oprogramowania jest podobna. Obiektowość, zmienne, pętle, operatory.

Twoje podejście jest z góry nastawione na porażkę. Nauka programowania w tym wieku, tylko dlatego, że to trendy i że na tym można nieźle zarobić... to żeś się w porę obudził... Rynek pracy potrzebuje dobrych programistów, z pasją. Kiepscy programiści nikomu nie są potrzebni, bo w tej branży często trzeba być jednoosobową armią specjalistów i tworzyć wydajne, poprawne rozwiązania.

Nauka kilku języków i całej tej podstawowej otoczki tworzy programistę, który naprawdę zna się na rzeczy. Systemy liczbowe, standard IEEE754, algebra Boole'a, tablice Karnaugha. Nigdy nie wiadomo do czego Cię rzucą. Nawet jak będziesz za cienki do programowania gier, to możesz spróbować dostać pracę przy aplikacjach biznesowych, czy też przy oprogramowaniu dla banków. Albo przy administracji serwerami jakieś skrypty basha/perla/pythona.

0

"Darmowy Visual Studio 2012"? - no chyba na 30 dni ;P
http://allegro.pl/symfonia-c-standard-t-1-i-2-pakiet-grebosz-nowe-i3304643325.html
Kup sobie to ;) Powinno Cię zadowolić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1