[+] Pascal/C++ - od którego zacz

Potrzebujesz pomocy z C, C++, perl, python, itp.
Awatar użytkownika
3ndriu
Beginner
Posty: 246
Rejestracja: 15 kwietnia 2007, 18:00
Lokalizacja: Chodzież

Post autor: 3ndriu »

Nie chcę zakładać niepotrzebnie nowego tematu, więc zapytam tutaj. Wiele osób zachwala książkę "Symfonia C++". Jak prezentuje się w porównaniu z nią "Thinking in C++"? Może ktoś miał w ręku obie te pozycje? Zastanawiam się, która byłaby lepsza dla początkującego programisty (czyli takiego, który wie mniej więcej o co chodzi z programowaniem, co to są obiekty i wskaźniki).
mikolajs
Posty: 33
Rejestracja: 04 lutego 2008, 10:06
Lokalizacja: Gdañsk

Post autor: mikolajs »

Obie książki są dobre. Uczyłem się z Symfoni i polecam, Thinking ... czytałem kawałki i też całkiem niezła, choć nie gwarantuje za całość bo np. w Thinking in Java Eckel wymyślił sobie że każdy musi znać wyrażenia regularne i skonstruował dziwne klasy które służyły zamiast wydruków programów co powodowało moją niechęć do czytania tej książki, mimo bardzo dobrego tłumaczenia składni javy.
A wracając do Twojego wcześniejszego pytania to:
pascal - w miarę łatwy język do nauki dla początkującego programisty, ale nie za bardzo przyda ci się w przyszłości, wymyślono go jako pomoc dydaktyczną i w tym sprawdza się najlepiej. Na windows mógłbyś ewentulnie przenieść się na Delphi który jest oparty na Pascalu
c/c++ - są dość trudne dla początkującego i obecnie raczej rzadko używa się ich do pisania programów dla biznesu, opłaca się w nich pisać programy które mają działać szybko, w czasie rzeczywistym lub gdy bardzo wielu użytkowników będzie z nich korzystać
Java i C# - to obecnie chyba najbardziej popularne języki do tworzenia oprogramowania użytkowego - wcale nie musisz zaczynać od C lub C++ aby nauczyć się w nich programować, (chyba że chcesz poświęcić dużo czasu na naukę wtedy warto zapoznać się w cześniej z C/C++)
języki skryptowe - dość łatwe do nauki, umożliwiają wykonywanie w prosty sposób rzeczy które w innych językach wymagają wielu godzin pracy i wysokich umiejętności . Niestety ich wadą jest mniejsza prędkość działania więc nie napisze się w nich wielkiej szybkodziałającej aplikacji. Za to szybkość tworzenia programów jest dużo większa.
Wybór języka zależy głównie od tego ile czasu chcesz poświęcić na naukę i co chcesz zrobić z tą umiejętnością. Osobiście polecałbym Ci rozpoczęcie nauki języka skryptowego typu python, perl itd a z czasem wraz ze wzrostem wiedzy ogólnej douczenie się innych języków w zależności od potrzeb.
Słyszałem kiedyś taką opinię, że należy zaczynać naukę od C bo później gdy ktoś nauczy się Javy lub pythona to nie chce już sięgać do tak niskopoziomowego języka jak C. Ale świadczy to chyba o tym, że większości nie jest on już potrzebny.
To oczywiście moja subiektywna opinia, ale najważniejsze abyś się szybko zdecydował i zaczął wreszcie pisać bo jak mówił pewien znany poeta: "¯eby nauczyć się pisać trzeba pisać ..."
Pozdrawiam
MS
AdeBe
Junior Member
Posty: 825
Rejestracja: 01 grudnia 2007, 14:41

Post autor: AdeBe »

mikolajs poruszył ważną kwestię. Zastanów się CO chcesz programować. Jeżeli aplikacje okienkowe dla zwykłych biznesu to faktycznie Java może być dobra. Jeśli aplikacje okienkowe dla zwykłych juserów, to IMHO C++ nadal ma duże znaczenie.
Natomiast C obecnie jest używany głównie (pomijając GTK) do pisania sterowników, kernela, ogólnie "blisko" sprzętu.
Awatar użytkownika
3ndriu
Beginner
Posty: 246
Rejestracja: 15 kwietnia 2007, 18:00
Lokalizacja: Chodzież

Post autor: 3ndriu »

mikolajs, cała Twoja wypowiedź jest skierowana do mnie? Nie wiem, czy zauważyłeś, ale to nie ja założyłem ten temat. Ja tylko zastanawiam się, która z ww. książek jest lepsza (bo słyszałem, że "Thinking in C++" jest dla osób "oblatanych" w programowaniu).
jedi1
Posty: 46
Rejestracja: 08 maja 2007, 17:08
Lokalizacja: Gdynia

Post autor: jedi1 »

3ndriu thinking in C++ mozesz sobie zobaczyc w necie, jest do sciagniecia za darmo (angielska wersja)

thinking in C++ tylko przegladalem, ale wydaje mi sie ze symfonia jest ciekawiej napisana i lepiej wytlumaczona, thinking in C++ taki bardziej techniczny imho, ale nie przeczytalem calej ksiazki wiec moge sie mylic, ale przy tym chyba posiada wiecej informacji :)
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

Na p2p jest masa ksiazek informatycznych, do C++ multum, po polsku tez. Zreszta moim zdaniem upieranie sie na materialy po polsku uczac sie programowania to glupota i niestety predzej czy pozniej przyjdzie chwila, ze trzeba bedzie siegnac po angielska dokumentacje. Jezeli angielski to dla kogos bariera nie do pokonania, to niech da sobie spokoj z programowaniem, bo zbyt daleko nie zajdzie.
Tak na dobra sprawe ksiazke mozna przeczytac uczac sie samych podstaw (typu skladnia i wszystkie konstrukcje dostepne w danym jezyku), ale zawsze najlepsza nauka to praktyka. A poza tym, poznajac nowe technologie ksiazka bedzie zawsze nieaktualna albo wcale jej nie bedzie.

Pokazcie mi jakakolwiek ksiazke o wxWidgets, GTK (po polsku, ale porzadna), QT. Ilosc ksiazek po polsku do C#, to pewnie okolo 2-3, a zadna nie dotyczy na pewno Visual C# 2008, .NET 3.5. Linq, WebSerwice Software Factory - takich rzeczy najlepiej uczyc sie z oficjalnej dokumentacji, a nie wydawac kase na ksiazki.... no ale to tylko moje zdanie

Co do wydajnosci... C++ - natywne, szybkie, C# - prawie rownie szybkie (najwiekszy narzut przy pierwszym uruchomieniu aplikacji, co wynika ze sposobu dzialania .net) i bardziej pamieciozerne, Java - cholernie pamieciozerna i bardzo wolna w porownaniu z pozostalymi dwoma, ale za to wieloplatformowa..... czego uzyc to zalezy od sytuacji
Theq
Beginner
Posty: 140
Rejestracja: 16 kwietnia 2007, 19:00
Lokalizacja: Legnica

Post autor: Theq »

+ C# - ciagle windows only :-P
AdeBe
Junior Member
Posty: 825
Rejestracja: 01 grudnia 2007, 14:41

Post autor: AdeBe »

Theq pisze:+ C# - ciagle windows only :-P
A Mono to co?
Theq
Beginner
Posty: 140
Rejestracja: 16 kwietnia 2007, 19:00
Lokalizacja: Legnica

Post autor: Theq »

A robiles cos (powazniejszego) pod mono? Jedno nie dziala, jednego nie ma, az w koncu jedynym wyjsciem jest robienie pod windows. Troche jak z wine tylko gorzej.
mikolajs
Posty: 33
Rejestracja: 04 lutego 2008, 10:06
Lokalizacja: Gdañsk

Post autor: mikolajs »

Przepraszam 3ndriu ale nie zauważyłem, że kto inny pyta o książkę, a kto inny zakładał post.

Co do C# to na Windows działa on trochę szybciej niż Java (ale nie tak bardzo) natomiast w mono jest znacznie wolniej niż w Java (Linux). Poza tym C# jest dużo wolniejszy od C++ a nie prawie tak samo szybki. Można co prawda używać unsafe mode ale jest to kłopotliwe. Przenośność C# na inne platformy nie jest tak dobra jak Javy. Język jest bardzo podobny do Javy dlatego też dużo łatwiejszy od C++, ale nie daje takich możliwości jak C++. Programiście który chce robić programy głównie na Linux nie polecałbym tego języka. Jest on idealny dla programistów windows.
Moja opinia oczywiście jest bardzo subiektywna bowiem pisałem dużą aplikację w tym języku choć szczerze go nienawidzę!

Jeśli chodzi o książki po polsku to osobiście zdecydowanie lubię czytać w rodzinnym języku!
Czytając książkę po polsku szybciej zrozumiem o co chodzi. Oczywiście książka jest tylko podstawą, wporwadzeniem do zagadnienia, a wszystkiego i tak trzeba nauczyć się w praktyce i dopiero tutaj sięgam po dokumentację. ¯adna dokumentacja nie jest napisana dobrze pod względem dydaktycznym. Nie wyobrażam sobie nauczenia się języka programowania z dokumentacji (references).
Pozdrawiam.
ODPOWIEDZ