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 programming unit that groups together a data structure (instance variables) and the operations (methods) that can use or affect that data; the principal building blocks of object-oriented programs.






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






3. 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.






4. Data (like nouns) represent the information we are processing and in Objective-C this made up of the four elements of C types - _____ - enums and objects






5. C-style strings always end with a ____ character






6. The _____ function can be used to print a message to the console






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






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






9. _____ operators take 2 operands






10. Consider: [NSString alloc]. 'alloc' is an example of a(n) class method rather than a _______ method






11. _____ data types can be both positive and negative






12. Objective-C methods are called using ____ _____






13. In a home building analogy a ____ is the blueprint and the object is the house






14. In object-oriented programming - the method selector (name) and accompanying parameters that tell the receiving object in a message expression what to do.






15. A Cocoa framework that implements an application's user interface; provides a basic program structure for applications that draw on the screen and respond to events.






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






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 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.






19. The part of an Objective-C class specification that defines public methods (those declared in the class's interface) as well as private methods (those not declared in the class's interface).






20. ____ provide a concise & elegant method for defining a discrete set of values






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






22. 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.






23. In object-oriented programming a procedure that can be executed by an object.






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






25. The time when source code is compiled; constrained by the amount and kind of information encoded in source files.






26. An object of unknown class. Interface is published through protocol declaration.






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






28. ARC is susceptible to retain _____






29. 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.






30. The Objective-C runtime table that contains entries that associate method selectors with the class-specific addresses of the methods they identify.






31. Any method that can be used by an instance of a class rather than by the class object.






32. Data types are divided into two main categories: integer and ______






33. The time after a program is launched and while it's running. Decisions made at during this time can be influenced by choices the user makes.






34. The most flexible C data type: ______






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






36. All objects are created on the _____






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






38. Discovering the class of an object at runtime rather than at compile time.






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






40. Zeroing weak referencing should be used for _____ and data sources to prevent inadvertent retain cycles






41. A class is said to do this when it declares that it implements all the methods in the protocol.






42. A _______ method is one that is likely to be unsupported in the future. It's use should be discontinued.






43. An object id with a value of 0.






44. Same as class object. (second way to say it.)






45. The name of a method when it's used in a source-code message to an object or the unique identifier that replaces the name when the source code is compiled.






46. 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.






47. _____ 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'.






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






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






50. A method that can operate on class objects rather than instances of the class.