*Code complete*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cc.gif!
Cartea contine multe subiecte care nu sunt abordate prea mult la scoala dar sunt folosite de programatori frecvent cum ar fi unit testing, coding style, desing approach debugging. I se potriveste unui student care vrea sa inteleaga mai bine cum e viata de programator, dar daca ai facut ceva internshipuri, ai lucrat in industrie sau ai citit multe bloguri pe tema ...
*Effective Java*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ej.jpg!
O carte cu multe subiecte ceva mai adanci in Java. E foarte buna pentru cineva care poate folosi limbajul la un nivel de baza dar vrea sa il inteleaga in profunzime.
*Effective C++*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ec.jpg!
La fel ca effective Java.
*Mythical man month*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?mmm.jpg!
*Design Patterns*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?dp.jpg!
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.
*Refactoring*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?rf.jpg!
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. Cartea ... e una fundamentala in domeniu si iti explica o gramada de "code smells" si metode de abordare si curatare a codului.
*Programming pearls*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?pp.jpg!
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.
*Introduction to algorithms*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ia.jpg!
Cartea de baza in algoritmica. 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.
*Cracking the code interview*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cci.jpg!
Daca sunteti interesati doar de o recapitulare pentru interviuri, asa cum am zis in postul .... recomand Cracking the code interview. Alte carti au probleme ceva mai banale, dar asta contine probleme la un nivel bun si are si rezolvari.
*The art of computer programming*
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?taocp.jpg!
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.
!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?taocp.jpg!