components and each component is an object. For example, every single icon, message and
photo is an object. Besides these visible objects, there are also many objects working in the
background, providing a variety of support for foreground objects. For instance, some objects
are responsible for communicating with servers of Apple and some others are responsible for
reading and writing files. One object can own other objects, such as an icon object owns a label
object, which displays the name of the App. In general, each object has its own significance. By
combination of different objects, developers can implement different features. In Objective-C,
we call the function of an object “method”. The behavior of method is called “implementation”.
The relationship among objects, methods and implementation is where tweaks take effect.
If an object is provided with some certain function, we can send it a message like [object
method] which lets the object perform its function, i.e. we can call the method of the object. So
far, you may wonder that “object” and “method” are both nouns, where is the verb that used to
perform the function? Good point, we lack a verb representing the implementation of
“method”. So here, the word “implementation” can be the missing verb and it means that when
we call the method, what does iOS do inside the method, or in other words, what code is
executed. In Objective-C, the relationship between method and its implementation is decided
during run time rather than compile time.
During development, method in [object method] may not be a noun. Instead, it can be a
verb. However, with only a brief [object method], we still don’t know how this method works.
Let’s take a look at the following examples.
- When here comes a phone call, we may say that “Mom, answer the phone, please”. When we want
to translate this sentence into Objective-C, it will be [mom answerThePhone]. Here, the object is
“mom” and the method is “answerThePhone”. The implementation could be “Mom stops cooking
and goes to the sitting room to answer the phone”.
-^ "snakeninny, come here and help me move out this box". This could be translated into [snakeninny
moveOutTheBox]. The object here is “snakeninny” and method is “moveOutTheBox” while the
implementation could be “snakeninny stops working and goes to the boss’ office to move a box
downstairs”.
In the above examples, if there is no specific implementation, even we call a method of an
object, the object still doesn’t know what to do. So now, we can think implementation as the
interpretation of method. Is it a little confusing? Don’t worry. Let’s draw an analogy between
programming and dictionary. You can just imagine the method here to be a word in the