Summary of common questions of iOS development engineers

Source: Internet
Author: User


After my recent interview and some summary of the interview materials, I am going to record these interview questions so that iOS development engineers can look for a job to review, I hope that students with experience in the interview can complete this module with me at the same time, first issue the interview questions, and then release the answers.

1. Can object-C classes be inherited multiple times? Can multiple interfaces be implemented? What is category? Is the method of rewriting a class well inherited or well classified? Why?

2. What is the difference between # import and # include? What is the difference between @ class and # import <> and # import?

3. attributes: readwrite, readonly, assign, retain, copy, nonatomic
What is the role of each function, in that case?

4. What are the features of the object declared by ID?

5. What is MVC? What are the features? Why is it widely used on iPhone?

6. For the statement nsstring * testobject = [[nsdata alloc] init]; what types of objects are used for testobject during compilation and runtime?

7. What is secure release?

8. Why is an error reported when some 4.0 unique objective-C functions run on 3.1, while 4.0 exclusive classes do not report an error when allocating memory on 3.1? What is the allocation result?

9. Why is no error reported when the C function exclusive to 4.0 runs on 3.1 machines (without being called ?) When a class name exclusive to 4.0 runs on 3.1 machines, an error is reported?

10. What are the common object-C data types? What is the difference between them and C's basic data types? Such as nsinteger and int

11. What are the meanings of attributes retain, copy, and assgin in property? What is the difference? How can I convert it into a GET/set method? What are precautions?

12. What is delegation? What attributes are used for the delegated property declaration? Why?

13. What is the difference between shallow copy and deep copy ?...

14. What is the difference between nsstring and nsmutablestring?

15. What is the difference between the automatic release pool and GC? Is there GC on the iPhone? What is the difference between [pool release] and [pool drain?

16.

for(int index = 0; index < 20; index ++){    NSString *tempStr = @”tempStr”;    NSLog(tempStr);    NSNumber *tempNumber = [NSNumber numberWithInt:2];    NSLog(tempNumber);}

What is the problem with this code .? Will it cause memory leakage (multithreading )? Is the pool automatically released when a large loop is made on a device with insufficient memory written in the loop or out of the loop? Why?

17. What are the principles of memory management? According to the default rule, which keywords need to be manually released? How can we effectively avoid Memory leakage when combined with property?

18. Before an object is released, what problems may occur if it is added to icationicationcenter. If it is not removed from icationicationcenter?

19. How to implement a singleton class.

20. What is serialization or acrchiving, what can be used for, how to combine with copy, and what is the principle ?.

21. What is a thread? What are precautions .?

22. There are two things to do on the iPhone. Is it highly efficient in order in one thread or two threads? Why?

23. What is runloop? An asynchronous function is called in a function in the main thread. How to block the current thread and respond to timer events and touch events of the current thread.

24. How does the iOS platform achieve data persistence? Is coredata bound to SQLite? Is coredata a relational database?

25. Describe the lifecycle of an Nil object generated from the interface bulider, loaded to the program running space, and finally released.

26. Is notification synchronous or asynchronous? Is KVO synchronous or asynchronous? Is notification a whole process space notification? What about KVO?

27. What is KVC? What is KVO? What are the features?

28. What is the responder chain?

29. How do processes communicate with each other on UNIX?

30. Is the timer interval accurate? Why? How to implement a precise timer?

31. What design patterns does uiscrollvew use? Can I find something similar in the foundation database?

32. If you want to develop a software similar to eclipse, the plug-in structure is supported. And open to third-party development. How do you design it? (General idea)

33. What are the differences and connections between threads and processes?

34. How can I mix C and obj-C?

35. What is the retain count of the person object after each line of code below is executed?

Person * person = [[person alloc] init]; // count 1

[Person retain]; // count 2

[Person release]; // count 1

[Person release]; // retain COUNT = 1;

36. When is the loadview, viewdidload, and viewdidunload of viewcontroller called?

37. When was didreceivememorywarning of viewcontroller called?

38. What are the new features of ios5?

39. How do you understand and understand arc?

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.