Test your basic knowledge |

Objective C Programming Basics

Subjects : it-skills, apple
Instructions:
  • Answer 50 questions in 15 minutes.
  • If you are not ready to take this test, you can study here.
  • Match each statement with the correct term.
  • Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.

This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. A ____ ____ is a situation where you free memory and then accidentally continue to use it






2. An object in another application - one that's a potential receiver for a remote message.






3. Property attribute that synthesizes both a getter and setter for the property






4. The process of setting or reading the value at an address pointed to by a pointer






5. A ____ _____ is where you forget to free up memory






6. C-style strings are stored in an array of _____






7. In object-oriented programming the hierarchy of classes that's defined by the arrangement of superclasses and subclasses. Every class (except root classes such as NSObject) has a superclass and any class may have an unlimited number of subclasses.






8. _____ allow indirect access and modification of a variable's value.






9. Any class that's one step below another class in the inheritance hierarchy.






10. Procedures (like verbs) are processes that manipulate or transform data and in Objective-C these 3 elements are _____ - functions and methods






11. _____ data types can be both positive and negative






12. A message sent from one application to an object in another application.






13. A prototype for a particular kind of object; declares instance variables and defines methods for all members of the class.






14. Property attribute that synthesizes accessors that are not thread safe






15. The nine fundamental building blocks of Objective-C can be dividing into 2 categories: data and _______






16. The direct or indirect report of external activity especially user activity on the keyboard and mouse.






17. A remote message that returns immediately without waiting for the application that receives the message to respond. The sending application and the receiving application act independently and are therefore not in sync.






18. A programming technique that hides the implementation of an operation from its users behind an abstract interface; allows the implementation to be updated or changed without impacting the users of the interface.






19. All objects are created on the _____






20. To destroy an object set the variable that points to it to _____






21. Xcode sequence to examine an app for memory leaks or retain cycles






22. Created by the compiler - lacks instance variables and can't be statically typed but otherwise behave like all other objects. As the receiver in a message expression - a it is represented by the class name.






23. Property attribute that causes the setter to store a zeroing weak reference to the assigned value






24. _____ operators take 2 operands






25. In object-oriented programming the object that is sent a message.






26. _____ is one of the main advantages of object-oriented code and allows objects to 'hide away' much of their complexity operating at times like a proverbial 'black-box'.






27. Protocols are adopted by adding a ____________ list of protocols inside angled brackets after the superclass declaration in a class's @interface block






28. Same as class object. (first way to say it.)






29. Pointers are declared by placing a(n) ___ between the type declaration and the variable name






30. Objective-C's protocols are really about communicating _____ _______






31. 3 Common Float data types: float - _____ - CGFloat






32. A class that's defined solely so that other classes can inherit from it. Programs don't use instances of this; they use only instances of its subclasses.






33. An advanced object-oriented development platform in Mac OS X; a set of frameworks whose primary programming interfaces are in Objective-C.






34. Giving the compiler information about what kind of object an instance is - by typing it as a pointer to a class.






35. This symbol denotes a method as being a class method






36. A way to package a logically related set of classes & protocols and functions together with localized strings & online documentation and other pertinent files.






37. _____ allow you to add new methods to existing classes






38. In the Objective-C language an object that belongs to (is a member of) a particular class; created at runtime according to the specification in the class definition.






39. There are ____ fundamental building blocks in Objective-C






40. In computer science the mathematical concept of 'order of operations' is known as the 'order of ______'






41. A protocol that's declared with the @protocol directive. Classes can adopt these - objects can respond at runtime when asked if they conform to them and instances can be typed by those that they conform to.






42. Another name for a class that's defined solely so that other classes can inherit from it.






43. In object-oriented programming the ability of a superclass to pass its characteristics (methods and instance variables) on to its subclasses.






44. Any variable that's part of the internal data structure of an instance; declared in a class definition and become part of all objects that are members of or inherit from the class.






45. A struct may contain multiple ____ consisting of different data types






46. The most flexible C data type: ______






47. Instance variables are optional in iOS if ________ are used






48. Objective-C objects should use strong or weak ______






49. Symbol used to denote a placeholder in a format string






50. The part of an Objective-C class specification that declares its public interface which includes its superclass name & instances variables and public-method prototypes.