Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Incalzire in pardoseala etapizata

Suprataxa card energie?!

Cum era nivelul de trai cam din a...

probleme cu ochelarii
 Impozite pe proprietati de anul v...

teava rezistenta panou apa calda

Acces in Curte din Drum National

Sub mobila de bucatarie si sub fr...
 Rezultat RMN

Numar circuite IPAT si prindere t...

Pareri brgimportchina.ro - teapa ...

Lucruri inaintea vremurilor lor
 Discuții despre TVR Sport HD.

Cost abonament clinica privata

Tremura toata, dar nu de la ro...

Renault Android
 

Cărți despre programare

- - - - -
  • Please log in to reply
54 replies to this topic

#1
m3th0dman

m3th0dman

    Senior Member

  • Grup: Senior Members
  • Posts: 9,269
  • Înscris: 03.01.2007
Cred că ar fi okay să facem o listă de cărți despre programare/computer science într-un topic. Dacă moderatorii de aici consideră utilă ideea, ar fi okay să fie pus și sticky.
Pentru mine ar fi fost mai util, să fi avut mai devereme o astfel de listă și poate alții văd utile numele. Multe dintre ele sunt cele mai folosite textbooks (cărți pe care se bazează un curs într-o universitate).

Am încercat să le pun pe categorii. Ordinea este alfabetică.

Aștept să scrieți alte nume de cărți, pentru a completa lista.

A. Various fields
1. Art of Computer Programming - Donald Knuth ~ 3000 pag, 4 volume
- cea mai bine detaliată carte despre algoritmică; are 3 volume și urmează să apară al patrulea, în total trebuind să fie 7. Este destul de greu de citit/înțeles deoarece autorul folosește MIX un limbaj de asamblare creat de el (cu byte pe 6 biți & others).
2. Artificial Intelligence, A Modern Approach - Russel and Norvig ~ >1000 pag, ed 3
- textbook - Cea mai folosită carte în universități, la cursurile de inteligență artificială.
3. Compilers, Principles, Techniques, and Tools - Aho et al. ~ >1000 pag, ed 2
- textbook - cea mai folosită/cunoscută carte despre compilatoare.
4. Computer Architecture - A Quantitative Approach - Hennessy and Patterson ~ >700, pag ed 4
- textbook - cea mai folosită/cunoscută carte despre introducere în hardware/, alături de Computer Organization & Design; aici discuția este mai mult din perspectiva hardware.
5. Computer Graphics Principles and Practice - Foley et al. ~ > 1100 pag, ed 2
- noțiuni introductive legate de grafică; este ediție cu exemple în C.
6. Computer Networks - Andrew S. Tanenbaum ~ 350 pag, ed 4
- textbook - Destul de folosit în cursurile rețelistică.
7. Computer Organization and Design - Patterson and Hennessy ~ 700 pag, ed 3
- textbook - cea mai folosită carte în cursurile de computer architecture; discuția mai mult din perspectiva programatorului.
8. Database System Concepts - Silberschatz et al. ~ 900 pag, ed 4
- O discuție/introducere vastă în bazele de date
9. Introduction to Algorithms - Cormen et al. ~ 1300 pag, ed 3
- textbook - cea mai folosită carte în cursurile de algoritmică.
10. Introduction To The Theory Of Computation - Michael Sipser ~ 400 pag
- o introducere formală în teoria computabilității (sper să existe termenul ăsta în ro); discuții despre modele matematice, mașini Turing, automate finite, teoria complexității, P, NP ș.a.
11. Modern Operating Systems - Tanembaum ~ 1000 pag, ed 2
- textbook - probabil cea mai folosită carte în cursurile introductive de sisteme de operare, fiind pus accentul pe cum funcționează acestea și cum poate interacționa programatorul cu ele
12. Operating Systems Design and Implementation - Tanenbaum ~ 1000 pag, ed 3
- textbook - folosită în cursurile mai avansate de sisteme de operare, explicând cu se programează acestea
13. Oracle Essentials Oracle Database - Greenwald et al. ~ 400 pag, ed 4
- introducere în lucrul cu bazele de date de la Oracle
14. Structured Programming - Dahl, Dijkstra, Hoare ~ 200 pag
- o carte clasică, scrisă de autori celebri în CS; explică practic bazele programării moderne
15. Structure and Interpretation of Computer Programs - Abelson et al ~ 600 pag, ed 2
- o introducere în programare, destul de detaliată; era (sau poate încă este) cartea de bază pentru începătorii din CS de la MIT; autorii folosesc Scheme (o variantă de Lisp)
16. UNIX Power Tools - Powers et al ~ 1100 pag, ed 3
- cam tot ce ar trebui să știe cineva despre cum se folosește Unix (tata Linux, Mac OS X, Android și cam oricare în afară de Windows & Co.).

B. Programming Languages
1. The C Programming Language - Kernighan and Ritchie ~ 200 pag, ed 2
- cartea oficială limbajul C; Ritchie e inventatorul C
2.C++ Primer - Lippman et al ~ 1200 pag, ed 4
- o carte introductivă în C++ destul de folosită; detaliază pe rând programarea procedurală, STL și OOP în C++
3. Effective C++ and More Effective C++ - Meyers ~ 400 pag, 2 vol
- tehnici eficiente/avansate de programare în C++
4. Modern C++ Design Generic Programming and Design Patterns Applied - Andrei Alexandrescu ~ 300 pag
- carte scrisă de un român, despre tehnici avansate de programare în C++ cu accentul pe templates (generics)
5. The C++ Programming Language - Stroustrup ~ 900 pag, ed 3
- cartea oficială a limbajului C++, care detaliază cam tot ce ține de limbaj (a nu se confunda cu specificația tehnică); autorul ei e inventatorul C++
6. The Java Tutorial, A Short Course On The Basics - Sharon Zakhour et al ~ 700 pag, ed 4
- introducerea oficială în Java
7. The Java Programming Language - Gosling et al ~ 900 pag
- cartea oficială a limbajului Java, care descrie limbajul (a nu se confunda cu specificația tehnică); unul dintre autorii e inventatorul Java
8. JavaEE Tutorial 6 - Eric Jendrock et al ~ 900 pagini
- introducere oficială în platforma EE a limbajului Java; se găsește gratis pe siteul Oracle
9.Effective Java - Joshua Bloch ~ 400 pag
- carte ce prezintă tehinici avansate de programare în Java; probabil cea mai bună carte despre Java.

C. Software Engineering & OOP
1. Applying UML and Patterns - Craig Larman ~ 700 pag, ed 3
- textbook - introducere în OO Analysis & Design, cu accent pe UML și Design Pattens; exemple în Java
2. Design Patterns Elements Of Reusable Object Oriented Software - Gamma et al. ~ 350 pag
- o carte revoluționară în software engineering care descrie 23 de design patterns; exemple în C++ și câteva în Smalltalk
3. Head First, Design Patterns - Freeman et al. ~ 650 pag
- o descriere mai puțin formală și mai ușor de digerat a patternurilor de mai sus; exemple în Java
4. Object Oriented Analysis and Design with Applications - Booch et al. ~ 700 pag
- după cum îi spune numele, o discuție despre OOA & OOD
5. Object Oriented Software Construction - Bertrand Meyer ~ 1350 pag, ed 2
- o introducere și discuție formală despre OOP cu mențiune despre Design by Contract; problema e că autorul folosește Eiffel ca limbaj de programare (de fapt acest fapt se precizează chiar la final)
6. Patterns Of Enterprise Application Architecture - Martin Fowler et al. ~ 550 pag
- cred că-i spune numele despre ce e vorba; n-am avut tangență cu ea
7. The Unified Modeling Language User Guide -  Booch et al. ~ 400 pag
- descrierea oficială a UML; printre autorii fac parte și inventatorii UML
8. Code Complete - Steve McConnell ~ 900 pag, ed 2
- o carte care conține de toate, de la avantajele limabjelor de programare, la design, la stiluri de programare, la metodologii & other; probabil e cea mai recomandată carte de citit, către un programator; tratează exemplele în mai multe limbaje, dar în principal merge pe C syntax
9. Programming Pearls - Jon Bentley ~ 300 pag
- o culegere de probleme interesante și rezolvările frumoase
10. Refactoring Improving the Design of Existing Code - Martin Fowler ~ 350 pag
- o discuție despre coding și în principal despre ce-i spune numele
11. Software Engineering - Ian Sommerville ~ 850 pag, ed 8
- textbook - o introducere vastă în software engineering
12. The Mythical Man-Month - Frederick Brooks ~ 300 pag, ed 2
- despre factorul uman în programare și erori uzuale făcute în project management; autorul e un celebru project leader la IBM
13. The Pragmatic Programmer - Hunt and Thomas ~ 350 pag
- asemănătoare Code Complete, doar că mai scurtă

Edited by m3th0dman, 11 August 2011 - 00:19.


#2
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,194
  • Înscris: 24.02.2007
Ar fi bine venita si cate o parere din partea celor ca au citit din ele sa ne putem face o idee fiecare pentru cine/ce e mai utila.

#3
catalinmacovei88

catalinmacovei88

    Member

  • Grup: Members
  • Posts: 903
  • Înscris: 30.07.2011
Computer Architecture - A Quantitative Approach - Hennessy and Patterson  - despre functionarea unui PC la nivel hardware, procesor, ram, etc. (buna cartea)
Computer Networks - Andrew S. Tanenbaum  - despre retele, Tanenbaum este un guru in retele si software in general.
The C Programming Language - Kernighan and Ritchie - despre bazele limbajului C, practic acesti 2 autori au inventat acest limbaj. (fff buna cartea)

Felicitari pentru idee. Cele de mai sus le-am studiat si sunt bune.

Operating Systems Design and Implementation - Tanenbaum - n-am studiat-o, am rasfoit-o un pic si mie personal imi place cum explica, este despre functionarea unui SO in detaliu. Recomand.


JAVA De la 0 la Expert, Stefan Tanasa, Cristian Olaru, Stefan Andrei - Ed._Polirom_-_2003 - pentru incepatori.

#4
m3th0dman

m3th0dman

    Senior Member

  • Grup: Senior Members
  • Posts: 9,269
  • Înscris: 03.01.2007

View Postdani.user, on 10th August 2011, 23:24, said:

Ar fi bine venita si cate o parere din partea celor ca au citit din ele sa ne putem face o idee fiecare pentru cine/ce e mai utila.
Am adăugat o descriere succintă la fiecare.

#5
TLGsoft

TLGsoft

    Senior Member

  • Grup: Senior Members
  • Posts: 2,553
  • Înscris: 25.03.2006
Delphi Programming: Seria "Mastering Delphi X" si "Delphi X Handbook" de la Marco Cantu, o somitate in domeniu. Nu sunt pentru incepatori.

Edited by TLGsoft, 11 August 2011 - 00:49.


#6
andrei_0

andrei_0

    fishy

  • Grup: Moderators
  • Posts: 3,990
  • Înscris: 15.02.2006
Bibliografia e excelenta, am citit multe din cartile respective, sunt foarte bune.

#7
luk4

luk4

    Senior Member

  • Grup: Senior Members
  • Posts: 2,149
  • Înscris: 29.04.2008
Tot in categoria Java : Thinking in Java  de Bruce Eckel(are mai multe editii, pana la penultima versiune toate sunt gratis).
Prezinta limbajul java facand si o introducere destul de buna in OOP.

#8
catalinmacovei88

catalinmacovei88

    Member

  • Grup: Members
  • Posts: 903
  • Înscris: 30.07.2011
OpenGL:
1. OpenGL SuperBible 4th Edition, Richard S. Wright, Benjamin Lipchak, Nicholas Haemel - addison-wesley
2. OpenGL Programming Guide
3. OpenGL Game Development, Chris Seddon - Wordware Publishing

Despre limbajul OpenGL, creare animatii, bazele graficii si a jocurilor. Necesita cunostinte de C++ Orientat Obiect pentru a putea aborda aceste carti.

Edited by catalinmacovei88, 11 August 2011 - 09:54.


#9
andrei_0

andrei_0

    fishy

  • Grup: Moderators
  • Posts: 3,990
  • Înscris: 15.02.2006

View Postluk4, on 11th August 2011, 09:52, said:

Tot in categoria Java : Thinking in Java  de Bruce Eckel(are mai multe editii, pana la penultima versiune toate sunt gratis).
Prezinta limbajul java facand si o introducere destul de buna in OOP.
Merge pentru incepatori, insa daca o comparam cu cele din lista, e cam "subtirica". Si nu ma refer la numarul de pagini.

#10
luk4

luk4

    Senior Member

  • Grup: Senior Members
  • Posts: 2,149
  • Înscris: 29.04.2008
Pai din perspectiva unui incepator am si recomandat-o. :)

#11
tracius01

tracius01

    Active Member

  • Grup: Members
  • Posts: 1,339
  • Înscris: 11.11.2007
Modern Fortran Explained - Michael Metcalf, John Reid and Malcolm Cohen
Fortran 95/2003 for Scientists & Engineers - Stephen J. Chapman

#12
Gady_paul

Gady_paul

    Senior Member

  • Grup: Senior Members
  • Posts: 2,421
  • Înscris: 12.01.2008
Mai foloseste cineva fortran? :-?

Si am o intrebare referitoare la the art of programming. Cat de sf e cartea? adica sunt necesare cunostinte avansate de programare/matematica pentru a o putea parcurge (ma refer la toate volumele) si a putea implementa ce e acolo, sau si un incepator-intermediar (spun intermediar ca am ceva cunostinte...dar tot incepator ma cheama) ar putea citi ce e acolo (si face exercitiile)?

#13
m3th0dman

m3th0dman

    Senior Member

  • Grup: Senior Members
  • Posts: 9,269
  • Înscris: 03.01.2007

View PostGady_paul, on 11th August 2011, 21:32, said:

Mai foloseste cineva fortran? :-?


Si am o intrebare referitoare la the art of programming. Cat de sf e cartea? adica sunt necesare cunostinte avansate de programare/matematica pentru a o putea parcurge (ma refer la toate volumele) si a putea implementa ce e acolo, sau si un incepator-intermediar (spun intermediar ca am ceva cunostinte...dar tot incepator ma cheama) ar putea citi ce e acolo (si face exercitiile)?
Da, dar prea puțin; din anii '50 când a apărut și până în prezent a suferit destule modificări.


Acum depinde ce înțelegi tu prin cunoștințe avansate de matematică. Ca să fii sigur că ai backgroundul matematic oarecum asigurat poți să parcurgi întâi Concrete Mathematics, tot de Knuth (și alții). Exercițiile de acolo nu le vei putea rezolva în totalitate; sunt numerotate cu dificultate de la 1 la 50; să înțelegi ce înseamnă 50, în carte este pusă Ultima Teoremă lui Fermat (care a fost rezolvată la vreo 20 de ani după ce s-a publicat cartea, rezolvare pe care prea puțini sunt capabili să o înțeleagă). Problema mai mare pentru început cred că o va constitui limbajul, destul de dificil.
Totuși, după mine cartea respectivă este mai mult una de referință decât una pe care să o parcurgi integral.

#14
Gady_paul

Gady_paul

    Senior Member

  • Grup: Senior Members
  • Posts: 2,421
  • Înscris: 12.01.2008
Ok. Ce parere aveti despre cartile de la O'reilly (au destule carti in destule domenii)?

#15
m3th0dman

m3th0dman

    Senior Member

  • Grup: Senior Members
  • Posts: 9,269
  • Înscris: 03.01.2007

View PostGady_paul, on 13th August 2011, 20:18, said:

Ok. Ce parere aveti despre cartile de la O'reilly (au destule carti in destule domenii)?
În Computer Science editura cea mai renumită e Addison-Wesley. Oricum cel mai important este conțintului, apoi autorii.

#16
catalinmacovei88

catalinmacovei88

    Member

  • Grup: Members
  • Posts: 903
  • Înscris: 30.07.2011
Programare aplicatii folosind placa video (GPU):

CUDA by Example An Introduction to General-Purpose GPU Programming - Jason Sanders, Edward Kandrot, Addiso-Wesley.

Necesita cunostinte medii/avansate in limbajul C. Cartea este despre folosirea limbajului C pentru a realizate programe, ce nu sunt neaparat din domeniul graficii, ce ruleaza pe procesorul grafic.

#17
Pac_Man

Pac_Man

    Senior Member

  • Grup: Senior Members
  • Posts: 2,258
  • Înscris: 10.12.2001
Am dat recent peste Eloquentjavascript - A modern introduction to programming. E intr-adevar vorba despre javascript, un limbaj subestimat de multi, probabil pentru ca de multe ori este invatat prost.

Am rasfoit un pic siteul si am ramas impresionat. Nu numai ca te invata conceptele de baza din programare dar "cartea" este interactiva. Poti testa direct exemplele - n-ai nevoie de IDE/compilatoare/frameworkuri si altele. Se pare ca-s prezentati si ceva algoritmi destul de interesanti. Ah, si e gratis :)

#18
The0nly0ne

The0nly0ne

    Member

  • Grup: Members
  • Posts: 847
  • Înscris: 16.11.2010
Silberschatz & Galvin - Operating System Concepts.

Si cred ca ar fi interesant sa punem si mici "lecturi recreationale". Incep eu cu una: Fernando J. Corbató - "On Building Systems That Will Fail".

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate