Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Jakie książki dla początkujących programistów?

Nolik 07 Maj 2012 17:33 8375 27
  • #1 07 Maj 2012 17:33
    Nolik
    Poziom 12  

    Witam, jestem zafascynowany językami programowania.Od bardzo dawno chciałem zacząć ale jakoś nie wiedziałem od czego mam się zabrać. No więc nie owijając w bawełnę chcę poznać wszystkie najważniejsze języki. Między innymi
    Java
    C
    C++
    C#
    Objective-C
    PHP
    Visual Basic
    Python
    Perl
    JavaScript
    Ruby
    Delphi
    Lisp
    PL/SQL
    Transact-SQL
    Pascal
    Ada
    Logo
    Asembler
    ABAP
    HTML
    Jeżeli ktoś się na tym zna i wie jak pomóc to proszę o podanie książki do danego języka dla początkujących z dobrym wyjaśnieniem, cena nie gra roli. Proszę o nie wypisywani bzdurnych postów typu "Haha i tak się tego nie nauczysz", "po co ci to" itp.

    0 27
  • Pomocny post
    #2 07 Maj 2012 17:50
    Defice
    Poziom 25  

    W sumie to wypisałeś większość języków w jakich się obecnie programuje, ale nie napisałeś co już umiesz oraz co Cię interesuje. Wypisać książki to jedno, ale powiedz może co Cię interesuje ?

    Uczyć wszystkiego na raz nie da się, jeśli masz już jakieś doświadczenie to powiedz w czym pisałeś i na jakim poziomie.

    Poza tym pomieszałeś kilka "grup" takich jak pisanie stron www,, języki skryptowe, programowanie uC czy bazy danych.

    Należałoby przedstawić jakieś konkrety.

    0
  • #3 07 Maj 2012 17:55
    Nolik
    Poziom 12  

    Właściwie w tym jest problem, ja zaczynam od podstaw. Nie mam "fundamentów". Chcę się dowiedzieć od jakiego języka najlepiej zacząć, a przy okazji podanie jaka książka się najlepiej do niego odwołuje.

    0
  • #4 07 Maj 2012 17:57
    vigorado89
    Poziom 16  

    Nauczyć się nauczysz jeśli bardzo chcesz, ja na Twoim miejscu zacząłbym od C/C++ mogę polecić Ci książkę symfonia C++ autorstwa Jerzego Grębosza, bardzo fajna przyjemna książka, sam od niej zaczynałem, ja za 100zl kupiłem wszystkie 4 tomy. Asembler tez jest bardzo ciekawy ale nie polecałbym Ci go uczyć się na początku. Jak już zaczniesz się uczyć C/C++ to polecam darmowy program DevC++ prosty bez bajerów nie to co visual studio (w którym sam się zgubiłem w pierwszym tygodniu nauki).

    A tak się zapytam na marginesie, ile masz lat ? jesteś w liceum czy dopiero planujesz iść ? jeśli Ciebie interesuje elektronika informatyka to może pod tymi kierunkami buduj swoja przyszłość ? Ja żałuje ze tak późno się zdecydowałem ;)

    0
  • #5 07 Maj 2012 18:02
    Nolik
    Poziom 12  

    Okej dzięki za pomoc czyli reasumując C/C++ czy DevC++?

    0
  • Pomocny post
    #6 07 Maj 2012 18:04
    vigorado89
    Poziom 16  

    DevC++ to program do pisania kodu kompilowania odpalania programu etc.

    0
  • #7 07 Maj 2012 18:05
    Nolik
    Poziom 12  

    Okej czyli na początek proponujesz 4 tomy "symfonia C++"?

    0
  • Pomocny post
    #8 07 Maj 2012 18:08
    vigorado89
    Poziom 16  

    Ja od tego zaczynałem, nie wiem jak inni doradzą. Książka jest fajnie napisana, dużo przykładów, dużo wytłumaczeń a pod koniec tematu "małe sprawdziany".

    0
  • Pomocny post
    #9 07 Maj 2012 18:09
    Defice
    Poziom 25  

    Co do samych początków to ja chyba mimo wszystko poleciłbym Turbo Pascala. C++ w drugiej kolejności. Grębosz do świetna pozycja zarówno Symfonia C++ jak i Pasja C++ (dla bardziej zaawansowanych).

    Wracając do TP to osobiście od niego zaczynałem. Wydaje mi się że jest lepszy do zrozumienia podstaw takich jak podstawowe operacje na liczbach, stringach itp.

    Technika informatyczne zaczynają w 95% od TP/C++. Jednak rozpoczynanie od obiektowego programowania dla mnie nie jest najlepszym pomysłem.

    Autor tematu musi wiedzieć, że każdy programista (czasami to zbyt duże słowo) będzie proponował to w czym sam jest mocny.

    A przy wyborze środowiska ja przychyliłbym się do darmowej wersji Visual Studio (Microsoft Visual C++ 2010 Express Edition). Dostępnej na stronie msdn, ponieważ intellisense znacznie ułatwia pierwsze starcia z C++.

    Jeśli nauczysz się już C++ to zapraszam do C#, ale to zależy już od Ciebie

    0
  • Pomocny post
    #10 07 Maj 2012 18:09
    McMonster
    Poziom 32  

    Zdobądź dobrą książkę z podstawami dowolnego popularnego języka. W informatyce nie uczy się języków programowania, tylko programowania jako takiego. Gdy zna się podstawowe techniki, zasady, algorytmy, struktury danych i rodzaje języków programowania wraz z ich specyfiką, to względnie łatwo potem wziąć dowolny język i po zapoznaniu się ze składnią móc wykorzystać jakieś 70-80% jego możliwości.

    W innym wypadku będziesz tracił czas ucząc się konkretnego języka i musząc zaczynać naukę niemal od zera przy każdym kolejnym.

    Co do wymienionych w pierwszym poście języków... Powodzenia, ale jakiekolwiek sensowne użycie chociaż połowy z nich zajmie sporo czasu. W zależności od tego, czym się będziesz zajmował, wykorzystasz trzy, może cztery języki do konkretnych, użytecznych projektów. Pozostałych będziesz mógł w razie potrzeby użyć, jeśli zastosujesz się do moich powyższych rad.

    0
  • #11 07 Maj 2012 18:18
    Nolik
    Poziom 12  

    No dobra zacznę od tego. A potem co mi radzisz?
    A tak po za tym, znasz może jakąś książkę do języka html?Heh. Jeszcze jedno bo zapomne.. "keylogger" oparty jest na języki Delphi , C++ tak?

    Dodano po 6 [minuty]:

    @UP
    Jest w ogóle taka książka jak "progamowanie" ?Jeżeli tak to proszę o tytuł

    0
  • Pomocny post
    #12 07 Maj 2012 18:20
    McMonster
    Poziom 32  

    Defice napisał:
    Co do samych początków to ja chyba mimo wszystko poleciłbym Turbo Pascala. C++ w drugiej kolejności. Grębosz do świetna pozycja zarówno Symfonia C++ jak i Pasja C++ (dla bardziej zaawansowanych).

    Osobiście odradziłbym Turbo Pascala. Z technicznego punktu widzenia nadaje się do nauki programowania i przez wiele lat był jako taki wykorzystywany, ale w praktycznych zastosowaniach jest wymarły nawet licząc jego nowoczesne odmiany, jak Delphi. Nowocześniejsze języki mają tą zaletę, że łatwiej o materiały dostępne w sieci. Lepiej zacząć od czegoś aktualnego. Odradzałbym też przy okazji takie języki jak Java i C#, zaciemniają początkującym ważną kwestię, jaką jest zrozumienia działania wskaźników.

    Cytat:
    Technika informatyczne zaczynają w 95% od TP/C++. Jednak rozpoczynanie od obiektowego programowania dla mnie nie jest najlepszym pomysłem.

    TP w szkołach jest używany już niemal tylko dlatego, bo poziom kadry naukowej jest marny (za marne pieniądze dobrego informatyka nie znajdziesz), więc zostają osoby, które zatrzymały się w rozwoju informatycznym na TP przerabianym w czasach szkolnych, a i to często na zasadzie przepisywania znak w znak kodu ze swojej książeczki. Ja już się kiedyś kłóciłem z nauczycielką, która twierdziła, że w TP stałe nie zajmują w ogóle miejsca w pamięci... I co jest złego w rozpoczynaniu od języków obiektowych? Na początku i tak trzeba poznać podstawy bez wchodzenia w obiektowość, ale docelowo trzeba będzie ją sobie przyswoić.

    Cytat:
    Autor tematu musi wiedzieć, że każdy programista (czasami to zbyt duże słowo) będzie proponował to w czym sam jest mocny.

    Ci słabsi i o małym doświadczeniu tak, porządny przynajmniej swoje rady uargumentuje. Ale w ogólności prawda w tym jest i warto na to zwrócić uwagę.

    0
  • #13 07 Maj 2012 18:24
    Nolik
    Poziom 12  

    Nolik napisał:
    No dobra zacznę od tego. A potem co mi radzisz?
    A tak po za tym, znasz może jakąś książkę do języka html?Heh. Jeszcze jedno bo zapomne.. "keylogger" oparty jest na języki Delphi , C++ tak?

    Dodano po 6 [minuty]:

    @UP
    Jest w ogóle taka książka jak "progamowanie" ?Jeżeli tak to proszę o tytuł


    Proszę jeszcze raz o odpowiedź: )

    0
  • Pomocny post
    #14 07 Maj 2012 18:24
    McMonster
    Poziom 32  

    Nolik napisał:
    No dobra zacznę od tego. A potem co mi radzisz?
    A tak po za tym, znasz może jakąś książkę do języka html?Heh. Jeszcze jedno bo zapomne.. "keylogger" oparty jest na języki Delphi , C++ tak?

    Dodano po 6 [minuty]:

    @UP
    Jest w ogóle taka książka jak "progamowanie" ?Jeżeli tak to proszę o tytuł


    Przykładowo "Algorytmy i struktury danych" Niklausa Wirtha, chyba jedna z najlepszych w tej dziedzinie. Do tego dowolna książka do podstaw programowania w wybranym języku, żeby móc już zacząć eksperymentować w rzeczywistym języku. Unikaj wszystkiego z inżynierią oprogramowania gdzieś w nazwie lub opisie, to zupełnie inna bajka.

    0
  • Pomocny post
    #16 07 Maj 2012 18:29
    vigorado89
    Poziom 16  

    Ja co prawda jestem studentem i nam nawet nie powiedziano co to TurboPascal :P od razu z grubej rury 1 semestr C i C++ a teraz 2 semestr C# i lekkie liźniecie Asemblera.

    0
  • Pomocny post
    #17 07 Maj 2012 18:30
    McMonster
    Poziom 32  

    To wygląda już na jakąś bardziej zaawansowaną pozycję. Szukaj czegoś, co w tytule lub opisie ma wskazane, że jest to pozycja od podstaw. Ja żadnej książki raczej nie polecę, bo miałem kontakt tylko z kilkoma takimi.

    0
  • #18 07 Maj 2012 18:31
    Nolik
    Poziom 12  

    Teraz to już mam kompletny mętlik w głowie mógłby ktoś mi to wszystko posegregować ?
    I przy okazji podać nazwy książek jakie mi się przydadzą.

    0
  • Pomocny post
    #19 07 Maj 2012 18:34
    vigorado89
    Poziom 16  

    Powiedz co Ciebie tak na prawdę interesuje ? ile masz lat ? jesteś w liceum i myślisz o studiach informatycznych ?

    0
  • Pomocny post
    #20 07 Maj 2012 18:35
    Defice
    Poziom 25  

    Jeśli coś ma ponad 1000 stron trudno nazwać to pozycją na początek, ale wracając do sedna to jest dobra książka. Co wybierzesz zależy od Ciebie ja przez C++ przeszedłem z Gręboszem, ale są też tacy którzy twierdzą że z jego publikacji źle się uczy. Kwestia gustu, powoli chyba należy kończyć temat, bo się zaczyna wymiana doświadczeń itp.

    Tak czy inaczej "Algorytmy i struktury danych" dobra książka do poznania algorytmów.

    0
  • #21 07 Maj 2012 19:00
    Nolik
    Poziom 12  

    Dobrze no to tak Mam 16 lat za rok idę do liceum interesuję mnie głównie pisanie scryptów, programów. Tak myślę o studiach informatycznych.

    Dodano po 2 [minuty]:

    Już sam nie wiem nie mogę się w tym odnaleźć.Od czego mam zacząć nie mam pojęcia każdy mówi że od tego najlepiej a kolejny mówi że nie warto bo mi się pomiesza itp.

    Dodano po 19 [minuty]:

    McMonster napisał:
    Zdobądź dobrą książkę z podstawami dowolnego popularnego języka. W informatyce nie uczy się języków programowania, tylko programowania jako takiego. Gdy zna się podstawowe techniki, zasady, algorytmy, struktury danych i rodzaje języków programowania wraz z ich specyfiką, to względnie łatwo potem wziąć dowolny język i po zapoznaniu się ze składnią móc wykorzystać jakieś 70-80% jego możliwości.


    Mógłby ktoś mi pomóc i doradzić książkę takową oraz podstawy języków (C, PHP, C++, PHP (5.0 OOP), Prolog, Java, SQL

    0
  • #22 08 Maj 2012 09:48
    markonedj
    Poziom 22  

    Wpierw powiedz co Cię interesuje. Programowanie webowe czy desktop ? Jakie programy chcesz pisać ? Czy to mają być gry, oprogramowanie dla biznesu, sterowniki, bazy danych, systemu czasu rzeczywistego, robotyka czy uj wiec co jeszcze.

    Niestety wymieniłeś wszystko co się z programowaniem wiąże, a nie da rady być dobrym we wszystkim. Można znać 15 języków i tak naprawdę nic nie umieć. Każdy programista ma swoją działkę (specjalność) w której się obraca. Dla przykładu ja na codzień zajmuję się oprogramowaniem dla biznesu (platforma .NET) i bazami danych, co nie znaczy że nie znam innych języków (Java i C++), lecz ich znajomość w porównaniu do np. C# jest marna.

    Tobie polecam wpierw zastanowienie się i odpowiedzenie na pytanie "co tak naprawdę chcę programować ?" i pod tym kątem dobrać język i platformę. Wiem że jesteś jeszcze młody i nie wiesz co będziesz robił za x lat (ba, nawet ja nie wiem co będę robił za x lat, jakie technologie i nowe języki powstaną, czy będę dalej programował w .NET ? A może .NET umrze i trzeba będzie zainteresować się czymś nowym ?). Nie myśl narazie o przyszłości bo zawsze można się przekwalifikować z jednego języka na inny, a jak już poznasz podstawy to potem każda zmiana języka jest dużo łatwiejsza.

    Ze swojej strony odradzam TP gdyż większość języków obecnie to języki składniowo wywodzące się z C a składnia TP nie ma nic wspólnego z tą z C i potem przy przejściu na np. C++ robi się syf w głowie.

    Podsumowując zastanów się nad tym: "co tak naprawdę na obecną chwilę chcę programować ?"

    0
  • #23 08 Maj 2012 11:11
    gaskoin
    Poziom 38  

    markonedj napisał:
    Podsumowując zastanów się nad tym: "co tak naprawdę na obecną chwilę chcę programować ?"


    No właśnie i to pytanie powinno paść w tym temacie jako pierwsze. Być może kolega chce w przyszłości wykładać na uczelni PROLOGA a wy mu jakieś turbopascale czy C proponujecie.

    Generalnie programista co dostanie do ręki to w tym napisze. Składnia nowych języków faktycznie może i wywodzi się z C, ale na dobrą sprawę nawet jeśli była by inna, to podstawy są zawsze takie same, tj. pętle, instrukcje warunkowe, funkcje itd. Reszta to już tylko znajomość narzędzi, bibliotek i innych funkcjonalności jakie są udostępnione w danym języku.

    Także odpowiedz nam na pytanie jakie zadał kolega wyżej a my Ci powiemy za co się brać :D

    McMonster napisał:
    Odradzałbym też przy okazji takie języki jak Java i C#, zaciemniają początkującym ważną kwestię, jaką jest zrozumienia działania wskaźników.


    Pisząc w Javie i C#, po jakimś czasie i tak się dojdzie do tego, że typ referencyjny to nic innego jak wskaźnik. Z resztą mylisz się myśląc, że w C# nie da się użyć wskaźnika :)

    0
  • #24 08 Maj 2012 11:45
    McMonster
    Poziom 32  

    gaskoin napisał:
    McMonster napisał:
    Odradzałbym też przy okazji takie języki jak Java i C#, zaciemniają początkującym ważną kwestię, jaką jest zrozumienia działania wskaźników.


    Pisząc w Javie i C#, po jakimś czasie i tak się dojdzie do tego, że typ referencyjny to nic innego jak wskaźnik. Z resztą mylisz się myśląc, że w C# nie da się użyć wskaźnika :)


    Ale można pisać w np. Javie baaardzo długo i żyć w kompletnej niewiedzy na temat tego, czym jest i jak działa wskaźnik.

    0
  • #25 08 Maj 2012 14:26
    markonedj
    Poziom 22  

    McMonster napisał:
    gaskoin napisał:
    McMonster napisał:
    Odradzałbym też przy okazji takie języki jak Java i C#, zaciemniają początkującym ważną kwestię, jaką jest zrozumienia działania wskaźników.


    Pisząc w Javie i C#, po jakimś czasie i tak się dojdzie do tego, że typ referencyjny to nic innego jak wskaźnik. Z resztą mylisz się myśląc, że w C# nie da się użyć wskaźnika :)


    Ale można pisać w np. Javie baaardzo długo i żyć w kompletnej niewiedzy na temat tego, czym jest i jak działa wskaźnik.


    au contraire... no chyba że ktoś przez 5 lat programowania nie wyszedł poza umieszczanie logiki aplikacji pod zdarzeniami kontrolek. W wielu książkach i na wielu forach, blogach w Internecie można spotkać porównanie typów referencyjnych do wskaźników, no chyba że jak napisałem, ktoś nie wyszedł poza wiek dziecięcy programowania.

    0
  • #26 08 Maj 2012 15:00
    Nolik
    Poziom 12  

    Na dzień dzisiejszy jestem zainteresowaniem pisaniem gier, baza danych oraz programy które mi pomogą tzw "boty".

    0
  • #27 08 Maj 2012 18:49
    markonedj
    Poziom 22  

    Moje zdanie:
    - gry: C++ więc Symfonia Grębosza i inne klasyki gatunku do podstaw, później wiadomo jakieś biblioteki (OpenGL, DirectX, czy bardzo ciekawe OGRE, w porównaniu do dwóch pierwszych OGRE to szybkość i prostota)
    - bazy danych - tu zależy do czego ? Zwykłe przechowywanie danych, hurtownie danych, business intelligence, data mining ? Doprecyzuj
    - ze skryptów to miałem kontakt tylko z Lua

    0
  • #28 08 Maj 2012 20:05
    ty221
    Poziom 10  

    Do c++ polecam :
    Podstawy Jezyka C++ (Lippman, Jajoie)
    oraz
    Thinking in C++

    0
  Szukaj w 5mln produktów