Continuously updating...
The road to self-study is long and long. Only by constantly summarizing, reflecting, and sharing can we grow!
To contact me, you can go to [Official Account] and send me a private message directly, or add me on [WeChat]
learning route
- Java backend development learning route
Note: The image may be compressed after uploading. If you need a lossless version of the high-definition large image, you can go to the WeChat public account "CodeSheep" and reply with the four words "high-definition large image" in the background to obtain it.
- C language/C++ development learning route (backend side)
- Linux learning route
- Front-end development learning route
Project recommendations
- After reading this article, you should be able to understand other people’s open source project structures.
- Who said there was a need for a Java open source project last time? Come!
- Share several C language/C++ open source projects suitable for beginners
- Friends who are clamoring to learn AI can take a look at these awesome open source projects
- Organize a few more open source projects: you don’t have to worry about practicing/completion/private work
- Open source projects for practice in the field of C/C++, friends, take over
- 5 enterprise-level open source projects worth learning and practicing!
- A tour of the top ten open source projects in Internet development!
- Recommend several cool Python open source projects
Book recommendations
- Sharing my small bookshelf of Java back-end development
- Recommended must-read computer programming books! The programmer guy moved out his bookshelf!
- Recommended books for self-study C/C++ (recommended reading route for self-study C/C++)
Self-taught programming
Programming basics!
Fun learning of basic skills
- The boss said: Anyone who wants to use double to define the amount of goods should just pack up and go.
- Why do we program for interfaces? !
- IMHO, I suspect you haven't used enums much
- An article explaining serialization and deserialization in detail
- Sorry I'm holding back! I just started using Java 11
- Promise me, can you stop taking over the world if/else?
- Promise me, will you stop taking over the world with if/else? "C++ version"
- I heard that you can only use annotations but not write them yourself?
- Learn several basic skills of programmers from an interview question
- Just because I wrote one less test, my code exploded after it went online!
- If I write a for loop again in the future, I will beat myself up
- What? Are you still using Date to represent time in your project? !
- Interviewer: Why should we rewrite the hashcode and equals methods?
- This is the basis for learning programming!
- Are there really friends who don’t know how to convert floating point numbers to binary?
- List uses pitfall records
- Map uses trap records
Multithreading/concurrency
- ThreadLocal source code analysis
- Detailed explanation of thread pool
- Popular science on various "locks"
- JUC tool class analysis
JVM
- Analysis of JVM memory model
- Detailed explanation of JVM garbage collection
- Class loading mechanism
- Performance tuning and troubleshooting
Data structures and algorithms
- 24 pictures, nine major data structures are clearly arranged!
- Zhuge Liang vs. Sima Yi, who will have the last laugh in the sorting algorithm battle?
- A review of the top ten classic sorting algorithms (animated pictures + code)
- Various difficult "trees" in data structures, understand them in one article
- One article to thoroughly learn how to solve problems using recursive methods!
- Detailed explanation of hash algorithm
Computer network (TCP/IP protocol stack)
- Jiwang IP knowledge bucket for the whole family, a set of 45 pictures to take away
- The ping command is used like this. Do you know the principle? An illustration!
- Explore: How does a data packet travel in the network?
- It's up to you whether it's hard or not! Full illustration of the TCP three-way handshake and four-way wave interview questions that have been asked hundreds of times
- Hardcore! 30 diagrams of common HTTP interview questions
- If the interview asks again about the difference between GET and POST, give him this article.
- A large collection of some high-frequency interview questions for JiNet TCP/UDP
operating system
- Hard-core science popularization: 89 core operating system concepts that programmers must know
Database/SQL
- Can't tell the difference between left join, right join and join?
- What exactly is a database index?
- Principles and usage guidelines of database indexes
- Database lock mechanism
- Detailed explanation of database transaction characteristics and isolation levels
- Detailed explanation of SQL optimization
- Agent-based database sub-table framework Mycat practice
other
- UML popular science: sort out 14 types of UML diagrams in one article
Tools and software
[Top 1] After staying up for 10 days and nights, I came up with this PDF version of "Software Installation Manual"
[Top 2] After two nights of hard work, I wrote a practical PDF manual of "Server Project Deployment"
Linux system
- A comprehensive inventory of commonly used Linux distribution operating systems
- Building a Linux environment with one person: macOS version tutorial
- Everyone has a Linux environment: Windows version tutorial
- 20 Linux commands frequently asked in interviews
- Rescue plan for useless computers: Wouldn’t it be nice to build a cloud server?
Git/SVN
- Accelerate GitHub downloads in one move!
- Why Git slapped SVN on the beach!
- The origin, data model and basic commands of Git
- This article is enough for Git operations and commands!
Develop software
- Chuanxin IDEA 2020.1 Really fragrant experience!
- Never used these IDEA plug-ins? No wonder I have a headache writing code
- Test the official new programming font of JetBrains, it smells great!
continuous integration
- Jenkins has grown up, it’s time to use Pipeline!
- How can I prevent myself from writing fewer bugs?
Document management
Other software and tools
- My commonly used software is revealed!
- There are so many programming learning websites, there is bound to be one suitable for you.
- With the front and back ends separated, it’s time to build a useful API management system!
- Server software inventory!
- Several software artifacts to improve efficiency and B-level
- My favorite online tools website
application framework
Look at the source code
- Building a Java (JDK) source code reading environment
- Spring Boot source code reading and debugging environment construction
- Building Redis source code reading and debugging environment
Interview related
Interview question sharing
- A large collection of Java basic knowledge interview questions
- A large collection of Java Virtual Machine (JVM) interview questions
- A large collection of Java concurrency and multi-threading basic interview questions
- A large collection of some high-frequency interview questions for JiNet TCP/UDP
- 20 Linux commands frequently asked in interviews
- A large collection of Spring classic interview questions
- A large collection of Spring Boot basic interview questions
- A large collection of Spring Cloud basic interview questions
- A large collection of C language/C++ basic interview knowledge
Sharing of face-to-face experiences
- A friend’s personal experience: How to prepare for Linux backend development
- Two books without internship landed on Didi JD.com 58 Review (Part 1)
- Two books without internship landed on Didi JD.com 58·Review (Part 2)
- Sharing experience with friends (1): Convinced (including answers)
- Sharing experience with friends (2): JD.com (including answers)
- A programmer’s interview experience for autumn software development positions
- Write a resume → Interview → Negotiate salary: One green heading north
resume template
City/company selection
- List of well-known IT Internet companies in first- and second-tier cities
Resource recommendations
- Sharing my small bookshelf of Java back-end development
- There are so many programming learning websites, there is bound to be one suitable for you.
- Alibaba Java Development Manual Sharing
- Resume template sharing
Other technical articles
- The principle behind scanning QR code to pay is actually this
About the author
introduce yourself
Contact information
- Contact me via private message on WeChat official account
My journey
- My graduation season has no sense of ceremony
- Since I am going to engage in development after graduating with a master's degree, why should I study for a master's degree?
- Do programmers in second-tier cities live well?
- Eight misunderstandings about self-taught programming! Get over it!
- My undergraduate memoir: From confusion and low self-esteem to admission to Huake University of Science and Technology
- Let’s talk about how to effectively improve yourself when you work overtime
- Do you want to take the postgraduate entrance examination?
- Last night, I dreamed of returning to Wuhan...
- The journey to change careers is actually a bit tiring...
- After coming to Station B for a year, I became like a human being!
- At almost 30 years old, I finally earned my first 100,000 yuan!
The path to writing
- I have been blogging for three years and share a few secret gadgets
- Tutorial on setting up Hexo blog under Win10 and practical deployment of Alibaba Cloud server
- Using Github+docsify, it took me half a day to set up my personal blog
Small talk/talking about mountains and rivers
- How to express to the teacher gracefully: I have not made much progress on my tasks this week?
- Why C language will not become obsolete
- What should I do if I finally get a graduate degree and meet a mentor who is a sheep herder?
- Programmer Piggy Teammate Behavior Award
- We have expanded enrollment for graduate students/junior college students, and we have no reason to give up!
- To be honest, after working remotely from home for 15 days, I feel a little autistic
- At the beginning of 2020, C language returns to its peak!
- Worship! Thanks to the big guys for enjoying the meal, I salute you!
- Well, I used the Kotlin programming language for a while, and it smells great!
- Programmers can also play romance? [Non-programmers are not allowed to enter]
- The 2/8 rule in the real IT field is heartbreaking!
For IT consultation, updates, and resources, just scan the QR code and send me a private message!