Un prieten mi-a cerut recent cateva recomandari de carti care sa il ajute sa se imbunatateasca in programare. Cel mai usor sa cresti in nivel e sa programezi mult, sa duci un proiect de la inceput la sfarsit, sa incerci proiecte variate, sa inveti de la colegi. Rar ai timp sau chef la dispozitie incat sa citesti o carte intreaga. Totusi pentru varietate merge si cate o carte. Astfel va dau o lista de recomandari:
*!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cc.gif 50%!
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?cc.gif 50%!
*Code complete* 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. In general cartea contine reguli de bun simt dar e bine ca sunt multe impreuna. 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 ...
*!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ej.jpg 60%!
* !{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ej.jpg 60%!
*Effective Java* are multe subiecte mai detaliate Java. E scrisa de Joshua Bloch care a facut colectiile in java. Ea aduce cititorul de la incepator competent in limbaj la programator avansat.
*!{margin: 1px; margin-right: 10px; border: 1px solid gray;}<blog/carti?ec.jpg!
* !{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%!
* !{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?dp.jpg!
* !{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!