* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ec.jpg! *Effective C++* e o carte importanta daca lucrezi in C++ in industrie. Contine o gramada de sfaturi utile si e mult mai scurta decat alte carti care incearca sa faca acelasi lucru cum ar fi Thinking in C++ sau The C++ Programming Language.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?mmm.jpg 50%! Daca sunteti interesati de managementul proiectelor software, *Mythical man month* e o carte clasica in domeniu. Ea contine mai multe principii si discutii despre proiecte software. Un principiu interesant porneste de la iodeea ca ca cu 9 femei nu poti face un copil in o luna. Aplicat la proiecte software, ideea evidenteaza ca adaugarea de ingineri la un proiect care e pe cale sa nu isi atinga termenul limita nu ajuta proiectul.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?mmm.jpg 50%! *Mythical man month* e o carte clasica despre managementului proiectelor software. Ea contine mai multe principii si discutii in jurul acestui domeniu. Un principiu interesant porneste de la ideea ca ca cu 9 femei nu poti face un copil in o luna. Aplicat la proiecte software, ideea evidenteaza ca adaugarea de ingineri la un proiect care e pe cale sa nu isi atinga termenul limita nu ajuta proiectul.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?dp.jpg! *Design Patterns* e o carte importanta pe care multi programatori o au pe raft, dar putini reusesc sa o citeasca. E greoaie, dar are concepte interesante. Eu am reusit sa parcurg mare parte din ea facand un curs de Desing Patterns la servici, unde impreuna cu alti colegi trebuia sa citim cate un capitol si sa il discutam. Astfel recomand sa incercati sa o parcurgeti in grup. Pe langa ideile din carte, dintre care unele nu sunt foarte complicate ea ofera programatorilor un limbaj comun.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?dp.jpg! *Design Patterns* e o carte importanta pe care multi programatori o au pe raft, dar putini reusesc sa o citeasca. E greoaie dar are concepte interesante. Eu am reusit sa parcurg mare parte din ea facand un curs de Desing Patterns la Google unde impreuna cu alti colegi trebuia sa citim cate un capitol si sa il discutam. Astfel recomand sa incercati sa o parcurgeti in grup. Terminologie.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?rf.jpg! Lucrand cu un codebase mediu vei avea de foarte multe ori nevoie sa il adaptezi la cerinte noi. *Refactoring* contine o gramada de sabloane pentru a face partea de rescriere usoara. Pe langa asta contine o lista de asa numite "code smells", niste sabloane care iti spun ca ai putea imbunatati calitatea codului pe unele locuri. Multe din sabloanele de aici sunt evidente, dar din nou, cartea ofera un limbaj comun pentru programatori.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?rf.jpg! *Refactoring* Cand lucrezi cu un codebase mare ajungi sa ai de a face cu cod mai vechi pe care il schimbi sa fie compatibil cu cerinte noi. Astfel trebuie sa refactorizezi de multe ori si sa faci curat. code smells Cartea ... e una fundamentala in domeniu si iti explica o gramada de "code smells" si metode de abordare si curatare a codului.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?pp.jpg! *Programming pearls* e o carte foarte misto pe subiectul algoritmica in industrie. Are un stil de a explica foarte bun si discuta probleme frumoase si curate. Este foarte abordabila de incepatori si are unele trucuri misto care sunt interesante si pentru avansati.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?pp.jpg! *Programming pearls* Carte foarte misto pentru cei ce au foarte putina pregatire pe algoritmica. .... are un stil de a explica foarte bun si discuta probleme frumoase si curate. Este destul de abordabila pentru incepatori si mai are unele trucuri misto care sunt interesante si pentru avansati.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ia.jpg! *Introduction to algorithms* Cartea de baza in algoritmica. Are o gramada de material, si astfel parcurgerea ei poate dura multa vreme. Unele demonstratii sunt ceva mai lungi decat ar trebui, accentul pare pus mai mult pe rigoarea matematica decat pe intuitia din spatele demonstratiilor. As recomanda oricui parcurgerea problemelor.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cci.jpg! *Cracking the code interview* Daca sunteti interesati doar de o recapitulare pentru interviuri, asa cum am zis in postul .... recomand Cracking the code interview. Alte carti ca Programming Interviews Exposed au probleme ceva mai banale, dar asta contine probleme la un nivel bun si are si rezolvari. ...............................................................................
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ia.jpg! *Introduction to algorithms* e biblia algoritmilor :). Contine mult material, tratat bine. Astfel parcurgerea ei poate dura multa vreme. Unele demonstratii sunt ceva mai lungi decat ar trebui, iar accentul e pus mai mult pe rigoarea matematica decat pe intuitia din spatele demonstratiilor. As recomanda oricui parcurgerea problemelor, si este carte de baza pentru pregatirea la olimpiade.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cci.jpg! *Cracking the code interview* e cea mai buna carte de pregatire pentru interviuri de programare. V-am mai recomandat-o si in postul... Problemele sunt exact la nivelul interviurilor din Bay Area. Alte carti ca Programming Interviews Exposed au probleme ceva mai banale.
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?taocp.jpg 50%! *The art of computer programming* Probabil cea mai cunoscuta carte de informatica are un continut foarte misto, dar poate prea orientat matematic si de cand autorul lucreaza la ea i-au luat-o alte carti de algoritmica inainte.
Voi ce parere aveti de cartile astea si ce alte carti ati recomanda unui programator la inceput de drum?
in o pauza de news.ycombinator.com sau programming.reddit.com ajuta din cand in cand asa ca va dau aici o lista de carti recomandate si descrieri despre ele.
Voi ce parere aveti de cartile astea si ce alte carti ati recomanda unui programator la inceput de drum?