From 3f814e58e9ab19348a985cf02e1fbdac407f3a6d Mon Sep 17 00:00:00 2001 From: Eugene Yagrushkin Date: Wed, 10 Jul 2013 14:20:46 -0400 Subject: Update objvectiv-C.html.markdown --- objvectiv-C.html.markdown | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) (limited to 'objvectiv-C.html.markdown') diff --git a/objvectiv-C.html.markdown b/objvectiv-C.html.markdown index 02975eb6..787a9219 100644 --- a/objvectiv-C.html.markdown +++ b/objvectiv-C.html.markdown @@ -15,10 +15,32 @@ It's is a general-purpose, object-oriented programming language that adds Smallt Multi-line comments look like this. */ +##Basic types +// all the primitive variable types are the same as in C +// char, int, long, double, float + + +// Simple, common classes +// number +NSNumber *firstNumber = @1; +NSNumber *secondNumber = @23.0; +NSNumber *boolNumber = @YES; + +// string +NSString *aString = @"some string"; + +// array +NSArray *array = @[ @1, @2]; + +// dictionary +NSDictionay *dictionary = @{ @"aKey" : @"aValue", @"aKey2" : @"aValue2" }; + // Import headers with #import #import #import "SomeAppDelegate.h" +##Coding classes + // Declare your class in a header(.h) file: @interface UserObject : NSObject{ @@ -43,19 +65,29 @@ Multi-line comments look like this. - (NSString*) instanceMethodWithParmeter:(NSString*)string; { - return [NSString stringWithString:string]; + return @"New string"; } +- (NSString*) otherMethodWithString:(NSString*)string; +{ + return [NSString stringWithString:string]; +} @end // Create an object instance by allocating memory and initializing it. An object is not fully functional until both steps have been completed. UserObject *someObject = [[UserObject alloc] init]; +##Calling Methods + // The Objective-C model of object-oriented programming is based on message passing to object instances. // In Objective-C one does not simply call a method; one sends a message. -[someObject instanceMethodWithParmeter@"Steve Jobs"]; +[someObject instanceMethodWithParmeter:@"Steve Jobs"]; + +##Nested Messages +// nested messages look like this: +[someObject instanceMethodWithParmeter:[someObject otherMethodWithString:@"Jony Ive"]]; ``` ## Further Reading -- cgit v1.2.3