With the high-speed development of mobile Internet flood, more and more people interested in learning mobile development, the competition is also more and more big, need to learn a lot of things, how can outshine others in the competition in the mobile developers, to become a truly qualified senior iOS development engineer?
said few words directly on dry
1. Senior C language, C + + language
C language is the language of the iOS development (Objective - C),
No matter what kind of development, cannot leave the program language of learning, Objective - C are the official languages of the iOS, but also study and understand the basic for the development of the iOS,
Great oaks grow from little acorns, the OC learned thoroughly at least need to know C language foundation, the foundation of the Object - C, OC operation characteristics, the concept of object-oriented, Protocol/Block/Category, memory management, etc.,
as a developer, there is an atmosphere of learning is especially important to communicate with a circle that is a my iOS communication group: 638302184, whether you're a small white or Daniel, welcome to share BAT, inside the exam and interview experience, discuss the technology, learn to grow together!
The following information in the group of files are free to download!
Are to be highlighted is not proficient in C/C + +, but to master to be used in the development of the iOS, the core content of C/C + +,
In addition, as a foundation for a solid iOS engineer, familiar with swift is also very important, swift, perhaps is the language of one in the future to replace OC,
2. The use of development tools
The iOS SDK is the core of the iOS development, in addition to master the essence of the Xcode, more important is to control Instruments, the iOS simulator, Printer simulator, the org.eclipse.swt.accessibility inspector, Filemerge, Application loader iOS development tools, such as
3. The design pattern
MVC, KVO, Notification, Target... Action, Sigleton and Delegate all of these are in the process of the iphone application development needs to know about iOS design patterns,
Design pattern is very important in the work, very useful, 23 kinds of commonly used in key research design patterns to 10 species of, q&a about design patterns mainly three directions:
(1) used in your project which design patterns, how to use the
(2) know the advantages and disadvantages of the commonly used design patterns
(3) to draw the design pattern commonly used UML diagrams
4. Multithreading
Multithreaded development is particularly important to elaborate work, even if you are so also has many years of development experience engineer, in order to make the primary iOS development engineers can also use multithreading, while simplifying the complexity, suggest that in the case of as much as possible to avoid direct Operation thread, using the mechanism, such as NSOperationQueue Operation objects, the GCD, Idle - time notifications, Asynchronous functions provides, timers, Separate the processes such as
5. Network programming
Network programming is iOS development must master of programming skills, here involves synchronous, asynchronous, Http, Htpps, Socket, Taiwan before and after interaction, etc; In this part of the process specification, directly affect the apple AppStore audit,
6. Interface development
Someone once said so, you see in the iPhone, touch, are UIView, so UIView in iOS development has a very important role, the following questions can you answer it?
1, how to use the constraint to control UIView?
2, the changes which properties can be used in the UIVIew animation to present?
To solve these problems to the deep understanding of the interface development, primary interface development, engineers need to complete at least one APP page, a thorough understanding of all kinds of interface elements is how to use, and from all walks of life between elements is how to make the layout of the complex arrangement, the following is need this part of the core skills:
, the commonly used control using
UIViewController, commonly used containers use
Based (manual layout, layout and AutoLayout)
App lifecycle,
Incident response process,
Simple gestures,
Advanced interface development, the engineers in order to achieve the "product category" good interaction experience, unique animations, offer more abundant function, need to understand gestures and events, rendering, animation and other advanced technology, as well as audio and video, photo albums, camera position, movement and so on the realization of the common characteristics of iOS,
7. Engineering
Whether enterprise developers or independent developers, on demand, interactive, vision, after the development of a series of steps, will be in the face of the APP testing, optimization, on-line version update problem, a good iOS developers in the face of this problem, just to have some knowledge of engineering, make sure we develop the APP can run for a long time, high efficiency optimization, this part we have to understand the content has the following several parts:
Commonly used third-party libraries,
Version management tools, and common workflow
A third-party library management tool,
Debug skill,
Performance tuning,
Unit testing,
end
More efforts, more lucky, if you are not official second generation, rich second generation, in red, so please remember: diligence is the only shortcut to change your fate,
CodePudding user response: