Learning software Development should read the book

Source: Internet
Author: User
Tags php and mysql


Learning software Development should read the bookSource: The log of Li Yue Jia


1. C Language Promotion



"C and Pointers"



C Defects and pitfalls



"C Expert Programming"



This three book is a junior C programmer must read three books, but also fresh new employees have to study the textbook, very suitable for the newly graduated college students study



2. C + + language promotion



"Effective C + +: 55 specific practices for improving procedures and design"



More effective c++:35 an effective way to improve programming and design (Chinese version)



"Meditation on C + +"



"C++templates Chinese Version"



"Deep Exploration of C + + object Model"



Generic Programming and STL



I am a C to C + + programmer, so never systematically learn C + + grammar, often used to learn what. If you want to get started with the system, C + + primer is good. The above several books, I am reading is the first, intends these two months can finish "effective C + +" and "more effective C + +", and then further study. Of course, the study here is just to read the book, make a note, to fully understand the contents of the book also need further practice.




3. Design class



Code Encyclopedia: This is a book I like very much, very suitable for people who work 2-3 years of intensive reading. I did a special recommendation in an article.



Refactoring-Improving the design of existing code



The way of code cleanliness



"Realization Mode"



"97 Things programmers should Know"



These books are generally about functions and lower-level designs. "Code Encyclopedia" finished a full read, and made a lot of notes, the benefits. "Refactoring" does not have to say, the other several books in front of a general look, but also very good, planning to have time to study hard.




4. Architecture



"The Art of Software Architecture"



Domain-driven Design: The answer to the core complexities of software



97 things the software architect should know



"Enterprise Application Architecture Model"



Schema-Oriented Software Architecture Volume 1: Mode system



"Software Architecture Design"



97 Things architects need to know



I am more unfamiliar with this piece, this is my study focus this year. "Software Architecture Design" This book I read from beginning to end, the software architecture is only to create a whole impression. After this piece of study I will and the pattern of learning combined together. The first learning goal is "pattern-oriented Software Architecture Volume 1", followed by "Analysis mode", "Enterprise Application Architecture Model", "Domain driven design".




5. Agile development



"Test-driven development"



"Agile software Development-principles, patterns and practices"



Scrum Agile Project Management



Scrum in the smoke and xp--how we implement Scrum



"Agile Software Development" This book I learned the "principles" this part of the Agile Software Development has a general understanding. Other books are more like a reference book to me. It is not possible to schedule a large amount of time for system learning.




6. Mode



Java and patterns (including disks)



"Realization Mode"



"Enterprise Application Architecture Model"



The reusable object model of Analytical mode



Anti-Patterns: refactoring of software, architecture, and projects in crisis



"Design Mode"



Schema-Oriented Software Architecture Volume 1: Mode system



The above-mentioned architecture says that the learning of patterns should be combined with architecture. This is, of course, a higher level: the pattern of architecture. "Realization Mode" is a function-oriented, "design pattern" is an object-oriented system. "Design mode" I have seen it from beginning to end, but I still need to look at it, when I read it, my experience is limited and I don't understand it very well. Now it's going to be a new harvest.




7. Thought class



"Thinking in the change--Ya decoding innovation"



"The road of technological leadership--the way to solve problems comprehensively"



"Innovation wins the world: Nine business leaders talk about innovation"



"Software Caprice: The programmer tribal chief Joel talking Software": This book is very good articles.



"Research and development": it seems a bit inappropriate to put it here.



"Hackers and painters"



The Art of UNIX programming



The way of code



These books can exercise the thought power. I prefer the "software Caprice" and "Code of the Road", more looking forward to is "hackers and painters."




8, the Beauty series



The beauty of the team



The beauty of architecture



The beauty of code



These three books are all about choosing a theme, and then finding some world-class experts to write an article on the subject, so the books are not very systematic (but they don't mean the book is bad). You can keep it handy, read a chapter when you have time, and talk to the master.




9. Development language



PHP 6 and MySQL 5 basic tutorial



"PHP and MySQL Program design (3rd edition)"



"Ruby for Rails Chinese version"



My first working language is C/s + +, the second working language is Python, and the working language in the spare time is PHP. The book above also has less Python-related books that are being supplemented and are also being studied.



10, Linux/unix



Deep understanding of the Linux kernel



"Deep Linux kernel Architecture"



Advanced Programming for the UNIX environment



"Linux kernel design and implementation"



"Linker and loader"



"Linux Advanced Programming"



"Arm embedded system development: Software Design and optimization"



The Art of UNIX programming



Most of these books are some of my reference books, except "Unix Programming Art", which is a very special book that deserves a good read.



In addition, I always wanted to take time to study the Linux kernel.




11. Management class



Effective Manager (Collector's Edition)



Management Practice (Collector's Edition)



45 Habits of high-efficiency programmers: The path of agile development and cultivation



"Effective Manager (Collector's Edition)" This book I read from beginning to end, also made notes, this is a very good book.




12. Algorithm



Introduction to the algorithm



"Programming Zhu Ji Nanxiong"



This can be said to be my weakness. The first book does not read, the second book has not been read. Try to do it.



The above classification is my general division, probably not enough science. But it should be more than enough to organize my list of books.



In addition, the above book, there are a lot of content may be repeated, this need to read the time when you choose according to the specific situation. There may be some books you can't buy, but you should find an ebook.



Finally, let me say some of my views on reading:



1, some books must be intensive, while the intensive reading, must take notes.



2, choose the timing of reading is also very important, if you do not have a certain practice and foundation, reading some books may be a very painful thing. This time, to stop. This is the best time if you have a very strong desire or need for a certain aspect of your knowledge.



3. The learning effect is the best in the course of development practice.



4, focus. Divided into two levels. The first level is to focus on a large segment of time (say, 90 minutes), which can improve learning efficiency, the second level is long-term focus, and in a long period (for example, a quarter, a year) to focus on a certain area, so as to be in a certain area of accumulation and breakthrough, not be reduced to a general who knows everything but is not fine. I am currently focusing on C + +, followed by patterns and architectures.



5, on the basis of focus on the expansion of their knowledge, to understand the current IT technology is changing what is happening.



To be a "T" type it person: both depth and breadth.



Learning software Development should read the book


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.