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. Instance variables are optional in iOS if ________ are used






2. Placing a ____ before a normal variable name gives it's address






3. A class is said to do this to a protocol if it (or a superclass) implements the methods declared in the protocol. An instance does this to a protocol if its class does. Thus an instance that does this to a protocol can perform any of the instance met






4. Objective-C methods are called using ____ _____






5. A compiler feature that provides automated memory management






6. In object-oriented programming an expression that sends a message to an object. In the Objective-C language they are enclosed within square brackets and consist of a receiver followed by a message (method selector and parameters).






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






8. In object-oriented programming the ability of different objects to respond each in its own way - to the same message.






9. If you are compiling an application with ARC (Automatic reference Counting) you _______ store Objective-C objects inside a struct






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






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






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






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






14. Objective-C borrows much of its syntax from ______ one of the earliest object-oriented languages






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






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






17. ______ data types are always zero or greate






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






19. _____ operators take 2 operands






20. Square bracket syntax for calling a method






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






22. Property attribute that synthesizes only a getter for the property






23. A class that's one step above another class in the inheritance hierarchy; the class through which a subclass inherits methods and instance variables.






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






25. Property attribute that causes the setter to store a strong reference to the assigned value






26. Short for mutual exclusion semaphore. An object used to synchronize thread execution.






27. In C all functions pass their arguments by ____ which means the compiler makes local copies of those arguments






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






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






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






31. ______ operators take a single operand






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






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






34. a++; is an example of using a _____ operator






35. In Objective-C floats are more commonly used than ______






36. Property attribute that causes the setter to store a copy of the assigned value






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






38. An instance variable that points to another object; _____ instance variables are a way for an object to keep track of the other objects to which it may need to send messages.






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






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






41. This symbol denotes a method as being an instance method






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






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






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






45. Finding the method implementation to invoke in response to the message






46. 7 Common Integer data types: BOOL - char- short - int - long - _____ - NSInteger






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






48. Two additional foundational building blocks of Objective-C distinct from data and procedure type foundations: ________ and Categories/Extensions






49. The 6 main categories of operators are: ____ - arithmetic - comparison - logical - bitwise and membership






50. The time when files compiled from different source modules are linked into a single program. Decisions made by the linker are constrained by the compiled code and ultimately by the information contained in source code.