PDA

Visualizza la versione completa : [ot]Libreria del perfetto Cppista


Luc@s
29-12-2003, 10:11
Quali libri devono sempre essere presenti, a vostro parere, nella libreria
di un vero Cppista?

Mi hanno fornito (it.comp.lang.c++) questa lista, voi che dite???


"Kleidemos" <francesca8810@tin.it> wrote

> Quali libri devono sempre essere presenti, a vostro parere, nella libreria
> di un vero Cppista?

A mio avviso non sei per nulla OT. Andro' io OT spaziando molto ed uscendo
dal C++..... (il tag OT me lo consente ;-)

Segue una lista dei libri che credo essere importanti.....

Per comprendere la programmazione, occorre comprendere cosa e' un computer:

Architettura degli elaboratori:
--------------------
Computer Architecture: A Quantitative Approach - John L. Hennessy, David A.
Patterson
Structured Computer Organization - Andrew S. Tanenbaum

Uno di questi due libri va piu' che bene.

Facoltativamente puoi decidere di apprendere qualche cosa in piu' sul
linguaggio assembly. Un libro che ho trovato davvero semplice da leggere e
fatto bene e:

Introduzione al linguaggio assembly (x86):
--------------------
Introduction to 80X86 Assembly Language and Computer Architecture - Richard
C. Detmer

Visto che gia' un pochino di C++ lo conosci puo' essere utile approfondire
alcuni concetti del linguaggio C++ e piu' in generale dei linguaggi di
programmazione; capire cosa realmente e' un linguaggio di programmazione,
cosa e' un compilatore etc....

Linguaggi di Programmazine (teoria):
-------------------
Programming Language Pragmatics - Michael L. Scott
Programming Languages:Concepts and Constructs - Ravi Sethi

Uno dei due va benone. Ovviamente ci sono anche libri specifici su
compilatori (questi introducono solo all'argomento), ma fidati se ti dico
che sono davvero molto difficili e..... in realta' NON indispensabili.
Detto questo e' molto probabile che, data la tua eta', tu troverai molto
difficili anche questi due.

Sempre per l'importanza delle nozioni di background e' importante sapere che
cosa e' un sistema operativo:

Sistemi Operativi
---------------------
Structured Computer Organization - Andrew S. Tanenbaum

Esistono libri migliori di questo, ma questo e' molto piu' leggibile degli
altri a mio avviso.

Come gia' hai capito sapere il C++ non serve a nulla se non sai fare
"probelm solving", e non conosci strutture dati ed algoritmi fondamentali (e
non sei in grado di crearne tu stesso di nuovi):

Algoritmi in C++:
-------------------
Bundle of Algorithms in C++, Parts 1-5: Fundamentals, Data Structures,
Sorting, Searching, and Graph Algorithms (3rd Edition) - R.Sedgewick
Data Structures and Algorithms in C++ - Adam Drozdek
Data Structures & Algoritm Analysis in C++ - M. A. Weiss

Ma spesso i libri "algoritmi in ..... any-language....." sono buoni ma non i
migliori. Il vero libro degli algoritmi e':

Algoritmi:
-------------------
Introduction to Algorithms, Second Edition - Thomas H. Cormen, Charles E.
Leiserson, Ronald L. Rivest, Clifford Stein

(io ho la prima edizione). Questo libro usa un suo pseudo linguaggio, non il
C++. Tuttavia e' davvero "il" libro degli algoritmi.

Per cio' che riguarda direttamente la tua domanda....
Questi sono alcuni dei libri sul C++ che ritengo importanti e scritti bene:

C++:
-------------------
C++ Primer - Stanley B. Lippman, Josee Lajoie
The C++ Programming Language (Special 3rd Edition) - Bjarne Stroustrup
Thinking in C++: Introduction to Standard C++ - Bruce Eckel
The C++ Standard Library : A Tutorial and Reference - by Nicolai M. Josuttis
Effective C++: 50 Specific Ways to Improve Your Programs and Design (2nd
Edition) - Scott Meyers #
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and
Solutions - Herb Sutter #
More Exceptional C++ - Herb Sutter #
C++ Templates: The Complete Guide - David Vandevoorde, Nicolai M. Josuttis
Il documento ufficiale dello standard del C++

Quelli con # sono quelli che io NON ho, ma che ho letto o so per certo
essere buoni.
Alcuni di questi sono leggermente vecchi, ma hanno comunque ad oggi buoni ed
interessanti contenuti.

In particolare il libro di Eckel e' molto leggibile, C++ Primer lo considero
forse il miglior libro sul C++. (e' uscito C++ Primer Plus, ma e' un altro
libro di un altro autore... sembra esser anche questo molto buono, ma NON lo
conosco).

Il libri con la # , oltre a quello che gia' ho detto, sono anche libri il
cui contenuto e' "diverso". Sono fatti a "problema e soluzione".

Il documento ufficiale dello standard non e' una lettura molto divertente,
ma.... e' un reference davvero valido!

Ovviamente questa lista e' quello che mi e' venuto in mente al momento...
potrei aver trascurato cose davvero importanti!

Quello che volevo dirti e' che il C++ non e' tutto! Per essere in grado di
usarlo bene e di farci cose interessanti etc... devi sapere altre cose.

Quando arrivi in fondo a questa lista non e' finito nulla.... devi
specializzarti su quello che vuoi... Ecco alcuni esempi:
- Programmazione windows
- Programmazione di video giochi
- Costruzione di compilatori
- Programmazione sistemi real-time and embedded
- Implementazione di un sistema DMBS (scrivere IL database).
- Programmazione di gestionali
- etc....

Per ognuno di queti campi dovrai leggerti molti altri libri... Ma per ora
quello che ti conviene fare e' seguire l'iter comune che e' tracciato piu' o
meno dalla mia lista. Tale lista e' anche (per certi versi) buona parte di
quello che ti faranno imparare all'universita' (mancano certe cose:
matematica, reti e networking, databases, Artificial Intelligence, etc....).
Se impari *SOLO* il C++ non ti metti molto avanti per l'uni.... e .... serve
meno di quello che credi. (ma gia' lo hai capito studiando gli algoritmi che
sono forse la cosa piu' importante).

Le cose da studiare sono davvero tante, ma.... sei fortunato sei molto
giovane ed hai tutto il tempo che vuoi!

Tommy



Tnk

infinitejustice
29-12-2003, 12:36
Originariamente inviato da Luc@s
C++ Primer - Stanley B. Lippman, Josee Lajoie
The C++ Programming Language (Special 3rd Edition)
Thinking in C++: Introduction to Standard C++ - Bruce Eckel
The C++ Standard Library : A Tutorial and Reference - by Nicolai M. Josuttis
Effective C++: 50 Specific Ways to Improve Your Programs and Design (2nd
Edition) - Scott Meyers #
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and
Solutions - Herb Sutter #
More Exceptional C++ - Herb Sutter #
C++ Templates: The Complete Guide

Quelli con # sono quelli che io NON ho.
e' uscito C++ Primer Plus ma NON lo conosco.

Eheh ho tutti e tre i libri che ti mancano :bubu:
Se ti piace Effective C++ allora cerca anche More Effective C++

C++ Primer Plus (io ho la quarta ed.) va bene solo per chi parte da zero (ho letto quelli su C e Java)

Un altro interessante How not to program in C++, una raccolta di +100 codici errati con spiegazioni.

Poi beh nello specifico altri come C++ Network Programming Volumi 1 e 2, Parallel and Distributed Programming Using C++, C++ Programming with CORBA :)

Loading