Summary and impressions on iOS face questions

Source: Internet
Author: User

Problem

You have to spit it out first, looking for a job interview is really a tiring life, so 跳槽有风险,选择需慎重 . LZ Why should I change my job? It's not here to explain ... Go straight to the point, this week's interview basically every day from the early to late, the interview form is filled up ... Large and small companies have, listing the time of the common face questions and some personal understanding. Ps:lz I level limited, bad place, everybody light spray ^_^! (because it is entirely by memory, the order of enumeration is purely sensory 0.0)

  1. @propertyWhat are the meanings of assign,retain,copy,nonatomic in each of them? (Explanation slightly ...) You know that)
  2. weakAnd the difference, and the difference assign strong retain , copy and retain the difference?


    assignApplies to non-object types, and weak weak references set the object to nil when the reference count is 0.
    In fact from this can also be extended to memory management of a series of problems. The interviewer will let you speak MRC and ARC understand, and then Block the memory mechanism, why recommended Block copy , Block What memory problems exist?

    Circular reference?


    Recommend an article, speak of pretty good, there are also links to Block the portal, please click on my

  3. is still memory management, release and autorelease the meaning of it? Here, in particular autorelease , it extends 自己主动释放池 , it can be extended Run loop !
    Here are the two links: Reference no. 1th @ 2nd (PS: Some links may need to be FQ, but as a developer, it is necessary to have a VPN for Google!)
  4. What is the dynamic nature of OC language? Do you have any questions that you know about? Does objective-c runtime it contain those meanings?
    Still give some good article link: number1@number2@number3
  5. Have you ever used a Core Graphic Core Animation Quartz Core frame like that?

    What functions can be implemented? The general question is about your ability to define UI controls, and the ability to achieve stunning animations. (meaning very wide, we find information, or recommend a 0.0-> to speak core animation)

  6. What kinds of multithreading are there in iOS?

    What is the difference between them? This question, undoubtedly, must be asked!!!
    NSThread: It seems that the basic has not been to ... Be able to understand the next ....
    NSOperation: It is said to be used in dealing with complex situations ... Often asked to GCD the difference, LZ slightly tangled every time do not know how to answer, just can say a deal with complex situations a simple case ... It didn't work. Just your research under AFNetworking The source code, can find that its core class is inherited ... NSOperation
    GCD: Often used ... This can look at my blog, inside very much its introduction! Point here

  7. Data storage this piece, which one do you often use? What is 序列化 ?

    sqliteIs it used directly or is it a third-party library that encapsulates it? sqlite And core data the difference?
    LZ encountered the basic are asked sqlite and core data the difference ... What is the way to decide which method of a project to do storage ... Personally think there is no need to distinguish between who is good and who is bad ... To understand that mastery must have merit ... There are a lot of differences on the internet between two, but even if you know the difference, it is useless to assume that two are not used properly. Only one solution 学!学!学

  8. 代理and 通知 ... Under what circumstances are they used?

    Difference?

    Their merits?

    (slightly, slightly, slightly, self-Google)

  9. Do you often use third-party libraries? For example AFNetworking SDWebimage JsonModel , have you ever been to understand the principle of implementation?


    Strongly recommend everyone, it is best to look at the source code, do not 仅仅知其而不知其所以然 , can learn a lot of knowledge. is also a general knowledge of the structure of the review, can also learn some excellent library design patterns.

  10. KVCAnd KVO what is it?

  11. Are you aware Socket网络编程 TCP/IP HTTP UDP of such agreement knowledge?
    Reference No. 1th @ 2nd ... So much, go find it yourself.
  12. Do you know what the 设计模式 actual project is used for? ( LZ I just answered, 单例-策略-观察者-工厂-代理 (in fact I think the agent can not be counted in))
  13. MVCWhat is it? Can you draw a diagram of the relationship between them?

    (Right, drawing)

  14. How's it going with you C++ ? 算法和数据结构 It? (This is all tears) is still mending!
  15. AutolayoutUnderstanding of ... How's it going?

    Can look at my this article ... Although not specifically speaking AutoLayout ... We can search more ... This is about whether you write the code or not ... 纯代码 storyboard The establishment of two species must be mastered.

  16. Have you studied Swift ? This, LZ suggested, after all, Apple to develop the framework library you have not changed, can take it to write the demo to maintain awareness, otherwise, you just do not write, after a period of time and forget it, white look ... Experience ... At least I can use it to write some demos now and write swift with it .... Work must still use OC, but also some companies say has been completely used swift to develop, only can say, after all, is only a very few ...
  17. Now I think of these ... Suppose there is, and then update!0.0
Think

Say the following impressions:
+ Do not write OC, will call API, you are an iOS development project teacher ... You have to expand the breadth and depth of your knowledge, for a lot of recruitment requirements you will C + +, do not always think of yourself is to apply for Iosproject Division and not C++project division ... Language is just a tool, and when you are OK, you will find that learning a language is not as difficult as you think it is, but it is a little difficult to be proficient. A lot of the time required is that you have a concept, for example, you need to call a library in the project, the library is C + + written, assuming you do not understand, what to do ... That means you're not going to write it all out. We develop very often, are to be good at using a third-party framework ... To give a sample, audio video ... Decoding transcoding or whatever, the specific thing may not need you to understand, you just need to use a tool (such as: ffmpeg ) to complete it.
+ LZ I was like I said above ... Shame ... Just swift after learning, change a kind of thought, no longer like that to exclude the difference between the language, think oneself also in peacetime have spare time, earnest study under c++ (actually I once wanted to do the game ...) Also said self-study cocos2dx ), but also to the University of the computer network on the books again to see, more understanding of network programming ... Tcp / ip... HTTP protocol, and so on.
+ Develop apps, don't just stay in one Direction ... Multi-lateral development, exposure to other types of applications. For example, I am looking for a job to IM 音频视频 wait, after all, have not contacted ... But this is only personal will, the premise that others will want me, 0.0 cry 0.0
+ Remember to be ambitious, skyrocketing rise ... Technology needs to precipitate, the mentality needs to calm down, when all should be open-minded to learn. What I said above is based on your doing the basic things ... Think, what is not fine, no skills, how can stand out? How can you finish the task of your position? iOS development this piece of knowledge also must keep learning ... UI layout-Animation effects-logic control-data storage-and docking of each end-the overall architecture.
+ The company's project should be all results-oriented, assuming you can not complete the task, then you complete the task process all the brilliant points will become useless.
+ still temporarily think of these ... Think of something else and then update ... Cond. ~o (∩_∩) o~

iOS Questions summary and Impressions

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.