As an ancient saying goes, “Live and learn.” The Internet is one of the most laborious industries, “overtime” for programmers has been “common”, and the Internet technology changes with each passing day, many programmers are tired to cope with, complaining.

So much so that there has long been a widespread misconception that 35 is the end of a programmer’s career.

How to do a good job in the busy work of technical accumulation, build personal core competitiveness, I believe that many programmers are thinking about the problem.

directory

IOS low-level advanced

IOS reverse security

Swift Elementary to advanced

Flutter elementary ~ advanced

Data structures and algorithms

Interview Questions

Learning principle

At all times, following some tried and tested principles is an important factor affecting efficiency, and the right approach is the secret to success.

Another important factor to improve the efficiency of work and study is confusion and a good attitude.

Becoming a good architect is a phased goal for most beginning – and mid-level programmers.

How to Learn In a busy job, perseverance, continuous learning and progress is a difficult task, requires strong perseverance and determination. If the method is not appropriate, it is twice the effort. Fortunately, ancient and modern philosophers have summarized many excellent learning methods. Here are some important principles. Following these methods will be of great benefit to everyone’s work and study.

IOS low-level advanced

Knowledge point mind map:

Video knowledge analysis:

block

IOS Advanced Series -Crash Analysis

Recommend the article

IOS advanced – memory management: www.jianshu.com/p/7ab67a433…

The iOS architecture – MVC:www.jianshu.com/p/d056fc87c…

IOS – deep bottom RunLoop:www.jianshu.com/p/02d90243d…

IOS advanced _KVC (& KVC value assignment process analysis & KVC custom & exception handling) : www.jianshu.com/p/b4c911a68…

IOS multithreading technology: www.jianshu.com/p/e4217d7f9…

IOS bottom column: www.jianshu.com/nb/49992476

in

It has been reported that the amount of knowledge accumulated in the past few decades exceeds the sum of the previous thousands of years of human knowledge. Computer science is one of the most rapidly evolving fields of knowledge in modern times, and programmers must accept that their deep knowledge will soon be obsolete. If you want to continue to develop in the computer field and become a good architect, you must constantly learn and master the latest technology. In a word, learning can not have.

The so-called “Rome was not built in a day”, the road to the architect is long and arduous, easily give up, all pay instantly in vain. To be a good architect, you need to be persistent!

Although knowledge changes rapidly, the underlying theories change very slowly. This is the relationship between “Tao” and “image”. Even though there are all things in the world, Tao never changes. For those very basic theoretical knowledge, we need to review frequently, that is, “learn while learning”.

I tried to join various iOS development communication groups, and the atmosphere in the group was basically: what to learn about iOS, iOS is over, OC is over, and there are roughly three kinds of people in the group: who has the enterprise development certificate, vest bag for understanding. Up to now, most iOS development groups are only for flushing water, and occasionally I can meet some kind people to solve the problem. As a developer, it is particularly important to have a learning atmosphere and a communication circle. This is my iOS development communication group: 642 363 427, no matter you are small white or big ox, welcome to enter. Let’s progress together and develop together! (The group will provide some free study books collected by the group owner and hundreds of interview questions and answers documents for free!)

IOS reverse security

Knowledge point mind map:

Video knowledge analysis:

Principles of iOS application signature

IOS Reverse Protection

Recommend the article

ARM compilation basis (iOS reverse) : www.jianshu.com/p/429477753…

IOS symbol table & reverse alipay: www.jianshu.com/p/d5d396ecc…

IOS reverse – WeChat automatically add buddy: www.jianshu.com/p/bd236e0c5…

IOS reverse learning (encryption and signature) : www.jianshu.com/p/fcce6146a…

IOS principle of reverse HOOK fishhook:www.jianshu.com/p/c219d869f…

IOS reverse security column: www.jianshu.com/nb/48987339

Short term planning

Good short-term planning should strike a balance between life, growth, performance and promotion. Most companies have a review cycle — as little as a month, as much as a year. So we might as well take the assessment cycle as a short-term learning planning cycle.

Major goal planning must be challenging and require impossible goals. Overplanning is essentially a greedy algorithm that aims to maximize the target value. Since everything is in flux, use that time to accomplish more learning goals if you can accomplish other goals earlier. In short, the future must be bright, but the road must be bumpy.

Goals do not necessarily share resources and programs do not necessarily conflict with each other.

Life is a marathon, and there’s a lot of confusion along the way. Confusion is like a shackle, holding us back. Confusion is like a deadlock, holding us back. What follows is a summary of some typical puzzles I encounter and see at work. These puzzles have long puzzled the author himself, or colleagues and friends around me. When the confusion is resolved, everyone feels liberated and provides positive energy for the next stage of the journey. Life is like a journey, do not care about the destination, care about, should be the scenery along the way, and the mood at the view. A good mental attitude is the best companion on the technology journey. We hope that we can have a happy mood to feel the long learning journey through this journey.

Swift Elementary to advanced

Knowledge point mind map:

Video knowledge analysis:

Swift– Closure analysis

Recommend the article

Swift basic grammar simplified version: www.jianshu.com/p/09a824d8a…

Objective – C and Swift through programming: www.jianshu.com/p/6b3d80eb0…

Construction method in the Swift resolution: www.jianshu.com/p/ab3f56467…

It storage facilities — Swift:www.jianshu.com/p/6758fe5ad…

“Swift code” iOS architecture model of MVP:www.jianshu.com/p/cd2911b6a…

Swift column: www.jianshu.com/nb/48739435

Never stop learning?

We must admit a cruel reality: human life is limited, but knowledge is infinite. Using limited life to learn infinite knowledge is an impossible task. At the thought of this, some programmers can’t help but feel pessimistic. Sorrow is not necessary if done properly and diligently.

Yet the whole body of human knowledge is expanding all the time. However, for many important engineering subdivisions, the basic theory is not profound. In many important areas of computing, programmers have the ability to get to the heart of the matter in limited time.

In addition, technical learning is a competitive game, although learning is endless, and overtaking most opponents is a victory. Therefore, in the right way of learning, long-term investment will form core competitiveness.

Flutter elementary ~ advanced

Knowledge point mind map:

Video knowledge analysis:

At the beginning of Flutter experience

Recommend the article

Flutter mixed development: www.jianshu.com/p/f0efacac3…

Flutter integrated iOS project: www.jianshu.com/p/a239a39bf…

Flutter Bloc mode: www.jianshu.com/p/f8ea3548a…

To improve work and study efficiency, we need to pay attention to the following points

Focus on efficiency. In many cases, the benefits of extra time are dwarfed by the benefits of increased efficiency.

Have clear results-oriented thinking. Credit and hard work are not the same thing.

Do the right thing, not just do the right thing. It’s a recurring topic, but mistakes are made every day. There are always trade-offs in order to finish a big project in a given time. If there is no focus, even force, easy to get twice the result. If the opposite is true, it is even more deplorable.

Data structures and algorithms

Knowledge point mind map:

Recommend the article

Data structure and algorithm, Huffman tree: blog.nowcoder.net/n/15ff7ca85…

Hand sorting algorithm – iOS advanced essential: blog.nowcoder.net/n/fc6c8b163…

Algorithm of “superior training” [project] partition algorithm: blog.nowcoder.net/n/d87a50eab…

BAT algorithm advanced the interview (1) – the sum of two Numbers: blog.nowcoder.net/n/c720567c4…

BAT algorithm advanced the interview – without repeating characters (2) the eldest son string (sliding method optimization + ASCII method) : blog.nowcoder.net/n/bd1378912…

BAT algorithm advanced the interview – (3) back to the text string: longest blog.nowcoder.net/n/fed9d2883…

BAT algorithm advanced the interview – (4) inverse integer: blog.nowcoder.net/n/353f8350f…

BAT algorithm advanced the interview – (5) remove duplicates in the sorted array: blog.nowcoder.net/n/257f3fb94…

BAT algorithm interview questions (6), the length of the longest Fibonacci sequence (dynamic programming) : blog.nowcoder.net/n/b37b20ab1…

BAT iOS algorithm interview questions (summary) : blog.nowcoder.net/n/2a424cefe…

BAT algorithm column: the interview blog.nowcoder.net/zhuanlan/v0…

Interview Questions

Video knowledge analysis:

Big factory iOS interview questions comprehensive explanation (1)

Big factory iOS interview questions comprehensive explanation (ii)

Recommend the article

IOS – interview questions: multi-threaded: www.jianshu.com/p/7d5b2af06…

IOS – interview: multi-threaded (2) : www.jianshu.com/p/2d176045d…

IOS – interview: multithreading (end) : www.jianshu.com/p/74e30aab7…

IOS development — interview: performance optimization (1) : www.jianshu.com/p/e55e35d5a…

IOS development — interview: performance optimization (subsequent) : www.jianshu.com/p/3eb437ea3…

The interview column: www.jianshu.com/nb/48739464

Focus on summary and output

Programmers can master a lot of details in practice, but even if they master all the details, they will fall into a situation of “learning without thinking” without deeply summarizing and thinking. The “quantitative change” of growth comes from the gradual and in-depth control of details, and the real “qualitative change” comes from a deeper understanding of the “Tao”.

Putting your experience out there and having it tested by others is a high-level summary. This kind of output not only helps others, but also helps oneself. There are many ways to summarize, including organizing sharing, writing technical articles and so on. Of course, “three days to check my body” is also a good way to sum up. In short, a lot of summary, a lot of sharing, nothing!

Answering other people’s questions is also an important means of personal growth. Sometimes, a problem is not quite understood by oneself, but when explaining it to others, it suddenly becomes clear. Therefore, “teach others tirelessly” to benefit others and yourself.

Planning is the key to success; unpredictability is waste. For a long learning career, a good plan is half the battle.

Long-term planning Implementing long-term planning requires perseverance and determination, but getting it right also requires a big vision, a super-sensitive nerve, and a lot of luck hitting the jackpot. For most people, long-term planning is mainly about “setting direction”.

Writing here, found is slowly harvest, I hope this article can help the whole network engaged in iOS partners, your support is always our output the biggest power!!

Learning is endless, welcome to pay attention to: iOS_ Tianlin, take you to dachang!

This article high-definition mind map, there is a need to leave a message in the comments section!

The original address: blog.csdn.net/chenzuoY/ar…