Jaka książka na początek C++ , jaki język


(Mateusz2373) #1

JAKĄ POLECACIE książkę na początek programowania (Symfonia c+++ , pasja) napiszcie jaka na początek najlepsza książka,bo nie wiem od jakiej zacząć książki. I Czy dobrze zaczynać programowanie od c++ (może inny język), jakiś przyszłościowy......?


(Frankfurterium) #2

Imo przyszłościowość nie powinna być najważniejszym czynnikiem przy wyborze pierwszego języka. Na początku powinieneś nauczyć się myśleć w kategoriach programistycznych, a do tego nadaje się większość współczesnych języków. Kiedy w miarę dobrze poznasz jeden, w dosyć łatwy sposób przesiądziesz się na inny, w założeniach i na daną chwilę lepszy. IMO dobrym wyborem na początek byłby Python. Nie jest przestarzały, ma nie najgorsze wsparcie, nie jest skomplikowany, pozwala pisać obiektowo i w sporej mierze funkcyjnie (coś, czego na przykładzie C++ nigdy się nie nauczysz, a co znowu ma wzięcie).


(Rolek0) #3

Ale czemu od razu książkę :?: Dobry tutorial będzie w sam raz :smiley:

http://xion.org.pl/productions/texts/coding/megatutorial/

Najważniejsze to nauczyć się myśleć w odpowiedni sposób, rozkładać większe problemy na kilka mniejszych aż ich rozwiązania będą oczywiste :wink:

A co do programowania funkcyjnego to jest ono na moje oko na tyle odmienne od "tradycyjnego", że najlepiej uczyć się go na języku stricte funkcyjnym jak np. Haskell.


(Abecikxp) #4

Jeśli chodzi o książkę to polecam Symfonia C++

Swoją drogą z własnych doświadczeń wiem że jeśli uczysz się jednego języka a potem chcesz przerzucić się na inny to ciężko gdy składnie znacznie się różnią , ja poleciłbym Ci C++ z niego łatwiej przerzucisz się ewentualnie na C# i potem resztę języków łatwiej będzie ci przyswoić , swoją drogą nie tykaj pascala delphi itp , do tej pory denerwuje mnie to że zacząłem w tym kiedykolwiek pracować , teraz kiedy piszę program w c++ wielokrotnie { zamieniam na Begin i end na } . Ale to tylko moje doświadczenia. Całe szczęście ze nowa podstawa programowa w szkołach wyklucza już ten jezyk :wink:


(Mateusz2373) #5

OK dzięki za info;)


(C3018781) #6

Jeżeli chodzi o książkę to na pewno "Symfonia C++" ja jeszcze dodatkowo poczytałem "Od zera do gier kodera", ale to tak bardziej z nudów ;p ,

ale bardzo polecam ten kurs jest tu w sumie wszystko od prostego "Hello World" przez gry 2D do Aplikacji okienkowych : http://cpp0x.pl/kursy/Kurs-C++/1#/kursy/


(andrzej928) #7

Ja zaczynałem naukę od zwykłego C, uczyłem się z http://pl.wikibooks.org/wiki/C, potem zacząłem c++, a potem to już z górki.

Jednak czytając książkę programować się nie nauczysz - musisz robić zadania na kompie lub jak wolisz to na kartce xD.

Gdzieś kiedyś na chomiku widziałem pokaźny zbiór zadań z języka C, były one podzielone na odpowiednie działy.


(pain3hp) #8

pobierz "laboratorium informatyki eli" i rób algorytmy. Język to tylko narzędzie


(Marcin) #9

Jak chcesz język przyszłościowy, to się ucz Scali. Więcej http://www.scala-lang.org/ m.in. Twitter i LinkedIn są oparte na Scali


(ludzik12345 ) #10

stary najlepiej nie słuchaj nikogo,

cokolwiek weźmiesz na początek będzie dobre, zresztą to doświadczenie (Twoje własne a nie innych) powie Ci w czym pisze Ci się najlepiej.

Bo to jest najważniejsze! Zawsze pisze się w tym w czym umie się pisać najlepiej. Nie ważne czy to scala, c, c++, c#, python itd.

-- Dodane 28.05.2012 (Pn) 22:34 --

stary najlepiej nie słuchaj nikogo,

cokolwiek weźmiesz na początek będzie dobre, zresztą to doświadczenie (Twoje własne a nie innych) powie Ci w czym pisze Ci się najlepiej.

Bo to jest najważniejsze! Zawsze pisze się w tym w czym umie się pisać najlepiej. Nie ważne czy to scala, c, c++, c#, python itd.


(pain3hp) #11

i to ma być argument za tym, że język jest przyszłościowy? A Facebook używa PHP i co...


(Razi) #12

Facebook używa też C++, bo PHP był zbyt ciężki.

IMO C++ i C warto znać ze względu na to, że są to języki kompilowane natywnie, uczą programować, są wymagające, ich implementacje zwykle są szybkie.

Zaczynanie od okienek i prostego tworzenia "efektywnych" programów to głupota, bo umie się wtedy operować na funkcjach "wysokiego poziomu" nie umiejąc stworzyć niczego swojego. Co z tego że się umie stworzyć okienko z buttonem, jak się nie umie programować...

Python też jest godny uwagi, jest bardzo uniwersalny, jeśli nawet nie jako podstawowy język programu, to jako wtyczki skryptowe, albo proste programy obliczeniowe (konsolka Pythona na Androidzie z gotowymi skrypcikami, napisane na samym telefonie :))

Język jest tylko narzędziem, a znajomość języka nie jest równoznaczna z umiejętnością programowania. Znając jeden język i umiejąc programować łatwo przesiąść się na inne podobne języki jak np. Java, tylko nieco inna składnia i podstawowe biblioteki, sama koncepcja programowania zwykle jest taka sama. Krótko mówiąc: jak umiesz programować, to góra w kilka dni opanujesz całkiem nowy język i nową bibliotekę.


(somekind) #13

Tak, z C++ na Haskella czy Prolog w kilka dni. :wink:


(Frankfurterium) #14

Mama mnie uczyła, że kiedy ktoś wylatuje z głupotami, trzeba odpowiedzieć "Sam jesteś głupi"...

Kto nie zna C/C++, ten nie umie programować, bo tylko przeciąga buttony na formy? Gratuluję rozeznania w rynku. Obecnie komercyjne programowanie to w znacznej części nawet nie formy i buttony, co generowanie stron internetowych - jeszcze wyższy poziom abstrakcji. Mimo wszystko ciągle jest miejsce dla programistów dłubiących pod maską - duużo miejsca. I, niespodzianka, wcale aż tak często nie piszą w C/C++. Chcąc teraz lub w przyszłości zostać programistą i z tego żyć, ma się naprawdę małe szanse, że wyląduje się w C/C++. No to po co się tego uczy? Bo jest trudne? Żeby nauczyć się walczyć z problemami, z którymi już później nie będziemy mieli do czynienia? Czy żeby po forach zgrywać kozaka "Chcesz być programistą? Ucz się C/C++. Okienka to nie programowanie".

Jeżeli ktoś marzy, żeby pisać w C++, jego sprawa. Ale znajomość C nie jest żadnym wyznacznikiem klasy programisty. To samo z Asemblerem i dziurkowaniem kart perforowanych. Jak chcę zbudować do z płyty, to uczę się montażu płyty, a nie wypalania cegieł. Tak po prostu.


(Marcin) #15

Czytaj ze zrozumieniem, dałem tylko przykład, gdzie jest wykorzystywana Scala. Nie było to argument...Argumentem jest m.in ten wpis http://blog.zabiello.com/2009/03/28/scala-lang

Buhahaha


(Frankfurterium) #16

Problem w tym, że to wpis sprzed trzech lat. Wtedy miała miejsce pierwsza fala fascynacji językiem. Ludzie przejrzeli specyfikację, co któryś napisał na blogu, jaki to fajny język i... o Scali zapomnieli, bo wówczas nie za bardzo było co z nią zrobić. Technologii wykorzystujących/wspierających było niewiele, a już funkcjonujące były bardzo młode. Do dzisiaj 'ekosystem' dorósł. Pasożytnictwo na bibliotekach Javy (i .NET, ale to wciąż egzotyka) i obecność wielu ciekawych narzędzi (czasem przeportowanych z Javy właśnie) sprawia, że w (głównie zachodnim) światku EE słyszy się o Scali coraz częściej. Tym samym w serwisach programistycznych coraz łatwiej o wsparcie. Po mojemu za jakiś czas Scala dogoni sporo starszego Pythona.

No i, rzecz jasna, od tamtego czasu Scala zyskała parę wersji i ficzerów :wink:


(Rxprojekt) #17

Według mnie na początek najlepszym językiem jest Ruby. Jest on prosty i daje dużo możliwości.

W nim napiszesz aplikację szybciej niż w innych językach programowania i będzie sprawniejsza.

Na dodatek nie trzeba męczyć się z kompilacją.

@Edit : Poprawione.


(roobal) #18

Narzew , kolor czerwony zarezerwowany jest dla administratorów forum, proszę poprawić swój post.


(somekind) #19

Na czym polega męczenie się z kompilacją?