Showing posts with label mobile programming. Show all posts
Showing posts with label mobile programming. Show all posts

Friday, March 25, 2016

Belajar iOs Programming Dan Objective C



Katakanlah kamu tertarik untuk menjadi seorang iOS Developer dan punya semangat belajar yang luar biasa. Tapi ada satu masalah: kamu sama sekali tidak punya pengalaman coding. Coding atau menulis kode pemrograman mutlak diperlukan untuk membuat atau mengembangkan sebuah aplikasi iOS (ataupun aplikasi dengan platform lainnya). Jadi bagaimana caranya?
Tentu saja langkah-langkah dibawah ini tidak menafikan coding. Kamu tetap harus coding untuk menuliskan fungsi-fungsi app kamu. Langkah ini adalah sedikit panduan bagaimana cara menjadi seorang iOS Developer bagi mereka yang sama sekali baru akan memasuki dunia ini.

1. Register Sebagai iOS Developer
Langkah pertama, daftarkan diri kamu sebagai iOS Developer disini. Ada dua tipe developer; berbayar dan tidak. Jika kamu memilih untuk tidak membayar, kamu tetap bisa mendownload Xcode SDK. Namun, developer tipe ini tidak bisa mengetes aplikasi buatan mereka pada device sebenarnya (iPhone/iPad/iPod Touch). Sebaiknya, segera mendaftar sebagai iOS Developer Program dengan biaya $99 pertahun. Keuntungan yang bisa kamu dapat sangat jauh melampaui apa yang kamu bayar. Percayalah. Pelajari selengkapnya disini

2. Download Xcode SDK
Buka App Store pada Mac kamu, ketikkan ‘Xcode’ dan download aplikasinya. Besarnya file mencapai lebih dari 2GB. Perhatikan bahwa saat artikel ini ditulis, Xcode yang ada merupakan versi 6.1. Saran saya, download juga Xcode versi 5.1 agar lebih memudahkan kamu belajar di kemudian hari. Untuk mendownload Xcode versi 5.1.1, klik disini.

3. Saatnya Belajar
Setelah kamu mendownload Xcode dan menginstallnya, kini waktunya kamu mempelajarinya. Saat artikel ini ditulis, aplikasi iOS dapat dibuat menggunakan bahasa pemrograman lama yaitu Objective-C dan bahasa pemrograman baru bernama Swift. Bahasa manapun yang kamu pilih, semua tetap bisa berfungsi. Penjelasan lebih lanjut mengenai kedua bahasa pemrograman ini akan saya bahas di artikel lainnya.
Namun versi singkatnya, Objective-C merupakan bahasa dengan usia lebih dari 30 tahun lalu untuk membuat aplikasi baik di Mac maupun iOS. Karena sudah lama, maka banyak sekali referensi tutorial diluar sana. Kekurangannya, bagi kebanyakan programmer, Objective-C dinilai lebih sulit untuk dipelajari karena memiliki banyak unsur-unsur tambahan pada syntax nya. Tentu saja ini hanyalah penilaian subyektif. Kamu tidak akan sayang jika belum mengenalnya bukan? Sedangkan Swift, baru dikenalkan pada pertengahan tahun 2014 oleh Apple. Swift merupakan pengembangan dari Objective-C. Pada Swift, Apple membuatnya jauh lebih simpel dari Objective-C dan memiliki banyak kesamaan dengan syntax-syntax bahasa pemrograman populer lainnya. Tujuannya tentu saja Apple berharap akan semakin banyak lagi orang yang mempelajari iOS Development tanpa harus dipusingkan dengan kerumitan syntax Objective-C. Walau banyak kesamaan dengan bahasa pemrograman lainnya, Swift jelas bukan gabungan dari beberapa bahasa lainnya. Swift adalah Swift.
Jika kamu lebih mengutamakan kecepatan belajar menggunakan contoh-contoh code, maka Objective-C adalah pilihan kamu. Dan jika kamu lebih memilih untuk berpikir ke depan dan mulai dari nol, maka Swift adalah pilihan kamu. karena masih baru, masih sangat jarang tutorial dan sample code untuk Swift. Jikapun ada, lebih diperuntukkan bagi mereka yang sudah mengenal Objective-C. Sementara untuk Objective-C, tutorial dan sample code banyak bertebaran di internet.
Beberapa website referensi tutorial yang bisa kamu mulai:
– Youtube, tentu saja. Akan jauh lebih mudah mempelajari coding dari video ketimbang buku, setuju?
– GeekyLemonDevelopment. Tutorialnya menyeluruh dari basic dan cukup untuk mengantarkan kamu membuat aplikasi pertamamu. Diperlukan registrasi untuk melihat tutorialnya. Jangan khawatir, registrasinya gratis. Penjelasannya cukup lugas disertai video dan sample code.
– AppCoda. Jika kamu lebih suka membaca dan mengikuti tutorial sejak awal, maka website ini pilihannya. Penjelasannya lugas, jelas, dan langsung.
– Ray Wenderlich. Bagi yang merasa sudah mahir atau setidaknya merasa intermediate, maka website ini pilihannya. Diasuh oleh Ray Wenderlich dan didukung oleh developer-developer mumpuni dari seluruh dunia.

Sekilas Tentang Objective C




Pendahuluan
Bagian ini menyediakan pengenalan dasar tentang bahasa pemrograman Objective-C. Objective C adalah bahasa pemrograman yang sangat tua dan itu dirancang dan dikembangkan pada tahun 1980. Sekarang Objective-C telah menjadi populer sekali lagi karena sedang digunakan oleh Apple untuk mengembangkan aplikasi untuk sistem Mac dan iPhone

Mengapa Objective-C?
Dalam bagian ini kita akan belajar tentang pentingnya Objective-C dan “Mengapa Objective-C?” digunakan sebagai bahasa pemrograman untuk mengembangkan aplikasi untuk Mac Sistem dan iPhone.

Objective-C Hello World Contoh
Dalam bagian ini saya akan menunjukkan kepada Anda bagaimana mengembangkan Hello World Objective-C program.

Objective-C pada Windows
Dalam bagian ini anda akan belajar cara menggunakan Objective C pada mesin Windows. Kami akan men-download dan menginstal Windows Objective-C compiler. Pada jendela GNU C compiler dapat digunakan untuk mengkompilasi program Objective-C.

Objective-C di Mac
Aku bagian ini kita akan menunjukkan cara untuk mengkompilasi dan menjalankan program Objective-C mesin Mac.
Kompilasi Objective-C
Pada bagian ini kita akan menunjukkan kepada Anda bagaimana untuk mengkompilasi program Objective-C jendela dan Max OS x mesin. Kompilasi program Objective-C diperlukan karena menghasilkan executable program yang dapat dijalankan.

kata kunci Objective-C
Dalam bagian ini kita akan tahu tentang kata kunci yang digunakan dalam bahasa C tujuan-. Objective-C adalah superset dari bahasa C, jadi program yang ditulis dalam c dan C + + harus mengkompilasi sebagai tujuan-c.

koment dan Expressions pesan
Seperti C dan C + + objektif-C memberikan komentar. Programmer dapat menggunakan baris tunggal atau multi komentar dalam kode sesuai dengan kebutuhan. Pesan ekspresi diapit oleh tanda kurung siku.
definisi Kelas dan deklarasi Metode
Karena tujuan-C adalah perpanjangan dari ANSI-C dan ia mengikuti pendekatan berorientasi obyek sehingga memberikan kelas-kelas dan objek. Cara untuk menyatakan dan menentukan kelas dan objek penciptaan sedikit berbeda dari C dan C + +.

program Objective-C dengan beberapa parameter
Objective-C memungkinkan programmer untuk menggunakan metode dengan beberapa parameter. Parameter ini dapat dari jenis yang sama atau dari jenis yang berbeda.
Ini adalah contoh program yang menunjukkan jumlah dari tiga angka sebagai output.
Access Modifiers dan Garbage Collection
Sebelumnya itu merupakan salah satu persyaratan untuk mengalokasikan dan melepaskan memori secara manual untuk membantu dengan masalah ini menyediakan referensi-sistem manajemen memori menghitung melalui menyimpan dan melepaskan kata kunci.
Kelas akses tingkat
Objective-C menyediakan fasilitas akses tingkat kelas. Dalam contoh yang diberikan di atas kita telah menggunakan ‘-’ tanda sebelum metode, ‘-’ berarti tingkat contoh akses. Sekarang kita akan melihat bagaimana untuk menentukan metode yang dapat mengakses pada tingkat kelas.
penanganan Exception di Objective-C
Objective-C memberikan pengecualian penanganan untuk menangani kondisi yang luar biasa sehingga kode dapat lebih mudah untuk menulis, mudah untuk mendeteksi pengecualian dalam kode dan lebih mudah untuk mempertahankan juga. Untuk mengambil pengecualian mendukung penanganan pastikan fobj-pengecualian-flag diaktifkan.
Objective-C Warisan
Objective-C memungkinkan programmer untuk Common mewarisi metode dan properti dari kelas yang lain, yang dikenal sebagai warisan. Kelas dari metode dan properti Warisan dikenal sebagai Base Class dan kelas yang dikenal sebagai turunan mewarisi Kelas.
Type Dinamis diObjective-C
 
Objective-C menyediakan banyak metode untuk bekerja dengan tipe dinamis. Dengan metode ini pemrogram dapat memeriksa bahwa obyek adalah kelas yang diberikan atau tidak, metode yang diberikan anggota kelas yang diberikan atau tidak dll
Objective-c manajemen memori:
 
mempertahankan dan lepaskan dimanajemen memori Objective-C menggunakan dua metode mempertahankan dan lepaskan. Di Objective-C setiap objek memiliki counter internal yang digunakan untuk melacak semua referensi yang digunakan oleh objek atau benda.
Objective-c Dealloc
 
Ketika sebuah objek berisi objek lain sebelum deallocation pemrogram perlu melepaskan semua benda-benda tersebut. Contoh ini menunjukkan bagaimana menggunakan metode dealloc, ketika Anda ingin DEALLOCATE sebuah objek yang sudah beberapa objek lainnya terpasang.

Kategori
Ketika programer tersebut ingin menambahkan beberapa fungsi ke kelas, biasanya memperpanjang kelas. Tapi ini bukan cara yang benar di mana-mana, jadi seperti ruby Objective-C juga menyediakan kategori untuk mencapai hal ini.

Postin
Berpose mirip dengan kategori tetapi bekerja sedikit berbeda dengan kategori. Ini memungkinkan pemrogram untuk mengajukan subclass untuk kelas super global. Ketika subclass berpose super metode kelas yang sama pada kedua kelas dengan subclass override metode.
Mungkin anda akan merasa aneh dengan struktur objective-c ini, tetapi jangan kuatir karena hampir semua orang mempunyai pendapat sama, termasuk saya.
 
NSString
Di C, variable string biasanya dideklarasikan sbb:
char *s = “ini adalah string”;
Dengan NSString, menjadi:
NSString *s = @”ini adalah string”;
NSString disini adalah object string.
@”string” akan membuat sebuah object string, yang bisa langsung diassign ke dalam sebuah variable atau menjadi argument dalam sebuah function.
Penggunaan Method
 
Dalam bahasa C atau PHP, pemanggilan method biasanya dilakukan dengan cara berikut:
addressBook.displayNames();
addressBook.displayNamesWithPrefix( prefix );
Berikut caranya dalam Objective-C:
[addressBook displayNames];
[addressBook displayNamesWithPrefix: prefix];
Jika melihat contoh diatas, maka format penggunaan method secara keseluruhan bisa disimpulkan sebagai berikut:
[object method];
[object methodWithInput:input];
Untuk function yang mengembalikan sebuah nilai, formatnya sama:
output = [object methodWithOutput];
output = [object methodWithInputAndOutput:input];
Selain pemanggilan function pada sebuah ojbect, kita juga bisa melakukan pemanggilan function pada sebuah class.
Contoh, pemanggilan function string dalam class NSString, yang mengembalikan object NSString:
NSString* str = [NSString string];
Ingat, semua variable object dalam Objective-C bertipe pointer sehingga harus ada simbol asterisk(*) disebelah kanan object type, kecuali type “id” karena sudah bertype pointer secara predefined.
Nested Methods
 
Kita juga bisa menggunakan method/function sebagai parameter dalam function lain, ini disebut nested methods.
Contoh:
function1 ( function2() )
stringWithFormat ( format())
result dari function format() menjadi input/parameter di stringWithFormat().
Di Objective-C, format penulisannya sebagai berikut:
[NSString stringWithFormat:[prefs format]]
Multiple Arguments
 
Contoh berikut menggunakan 3 buah argument (string, date dan integer).
 
  [ptr setStr:@”A new test…” andDate:[NSDate date] andInteger:99];
 
Sebelumnya, dideklarasikan sebagai berikut:
 
-(void) setStr:(NSString *)str andDate:(NSDate *)date andInteger:(int)x;
Implementasi dari method setStr() yang menggunakan tiga argument:
-(void) setStr:(NSString *)strInput andDate:(NSDate *)dateInput
    andInteger:(int)xInput
{
  [self setStr:strInput];
  [self setDate:dateInput];
  [self setX:xInput];
}
 
Bisa dilihat pada saat metode setStr() didefinisikan, kita menggunakan variable str, date dan x. Tetapi di implementasinya, kita menggunakan variable strInput, dateInput, dan xInput. Ini karena objective-c mengharuskan nama variable lokal (pada method) tidak boleh sama dengan nama variable yang didefinisikan.
 
Accessors
Semua instance variable secara default adalah private, sehingga anda harus menggunakan accessors untuk mendapatkan/mengeset nilai pada variable instance tersebut.
setter:
[photo setCaption:@”Day at the Beach”];
getter:
output = [photo caption];
 
Catatan penting:
– Dimanapun anda melihat code didalam “square brackets”, berarti anda mengirim sebuah message pada object atau class.