Jan 182013
 

Sebelum belajar programming untuk iOS/Mac, ada beberapa perkara yang perlu diketahui

Beberapa Kelebihan objective c

1. Tak perlu fikir memory management sebab dihandle secara automatik oleh ARC (kebanyakan kes)

2.  Objective C Adalah subset kpd c language, maksudnya c atau c++ juga boleh diguna selain objective c di XCode

3. Multithreading

Dipanggil Grand Central Dispatch, multithreading untuk Mac/iOS adalah mudah. Dengan GCD, tidak perlu fikir untuk create thread, cuma panggil function dan set untuk di run pada thread yang lain.

4. Animation

Animation di dalam mac/iOS dibahagi kpd implicit dan explicit animation. Implicit animation boleh dikatakan animation yang terjadi dengan automatik. Contohnya jika sesuatu object diubah position. Ia secara auto akan animate ke position yang baru. Untuk explicit animation, satu animation object mesti dibuat terlebih dahulu, explicit animation memungkinkan animation yang lebih advance.

Setiap Animation juga akan secara automatik di run pada thread selain main thread. Ini menjadikan user interface (UI) tidak diblok atau tidak mengganggu kelancaran UI.

5. Dynamic language

Objective c adalah dynamic language. Dengan dynamic language akan memungkinkan code yang ditulis lebih pendek kerana sifat language yang fleksibel. Ia juga menjadikan code lebih baik dan clean.

6. Programming Technology semakin berkembang setiap OS version

Setiap OS/iOS version, akan ada teknologi yang baru daripada Apple. Menariknya kebanyakannya akan lebih memudahkan kita code dengan lebih baik dan setiap API dari apple adalah sangat konsisten menyebabkan lebih senang untuk belajar sesuatu yang baru.

Perkara asas perlu dipelajari

1.Syntax

Belajar objective c syntax adalah paling penting. Ini disebabkan Objective c syntax banyak juga berbeza berbanding programming language lain. Bagaimanapun objective c syntax adalah di design untuk self documenting. Ia membolehkan programmer dapat faham code dengan lebih baik walaupun kurang comment

Contohnya:

Untuk create satu kotak (box), dalam c dan objective c, method syntax adalah

//C
void createBox(float height, float width, float length)
{
    //method body
}

//Objective C
- (void)createBoxWithHeight:(float)height width:(float)width length:(float)length
{
    //method body
}

Untuk panggil method,

//C
createBox(6, 3, 5);

//Objective C
[self createBoxWithHeight:6 width:3 length:5];

Sesiapa yang baru belajar objective c pastinya pening dengan syntax yang digunakan. Tetapi ia convenient dan self documenting. Sebelum semicolon, semuanya adalah sebahagian daripada method, ia adalah sebagai self description yang pendek, kalau letak apa-apa nama pun boleh sebenarnya. Selepas semicolon adalah nilai parameter yang dipass.