Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
SNSI06-016
PROTOTYPE DESAIN APLIKASI BERBASIS iPAD DAN iPHONE UNTUK MENYELENGGARAKAN RAPAT JARAK JAUH SECARA ONLINE Yuliana Melita Pranoto1) Donald Latumahina2) Yasa Kowara Wibawa3) Sekolah Tinggi Teknik Surabaya, Surabaya
[email protected])
[email protected])
[email protected])
ABSTRACT We live in a modern world where information moves really fast. Sometimes, this movement of information is so fast that requires a quick anticipation to prevent an organization or a person being left behind, especially by a very thight competition. In one organization where founded by several people, a decision usually has to be made collectively, which is every single person who is part of the organization's stakeholder must be asked for his or her oppinion over matters and this is done through a gathering called a metting. When sudden changes occur which will invalidate current executed plan, then a coordination with all stakeholders must be made. It is also possible to have new matters or problems emerge which require a decision needs to be taken as soon as possible without any further delay. Executing a remote meeting apparently an effective solution for this issue, especially with the availability of hardwares that can be used to implement the solution. By understanding that iOS-based gadget is very popular now, therefore iPad and iPhone are selected to become the hardware platform of the solution. Besides, several available software technologies and network infrastructures are apparently sufficient enough to be used to provide solution. Keywords: Remote Meeting, iPad, iPhone.
1. Pendahuluan Meeting dalam sebuah organisasi merupakan sebuah mekanisme pengambilan keputusan yang penting, dimana setiap orang yang dianggap tergabung sebagai stakeholder dari organisasi tersebut diharapkan untuk memberikan pendapat dan masukan atas masalah-masalah yang ada. Mekanisme penyelenggaraan rapat secara konvensional memang bagus tetapi dengan perkembangan kondisi yang dapat berbeda di lapangan serta kendala-kendala lain yang mungkin muncul membuat timbulnya pemikiran akan adanya sebuah cara untuk dapat menyelenggarakan rapat dengan metode yang berbeda tetapi tetap memberikan efektifitas dan efisiensi yang layak untuk mengambil keputusan. 1.1 Background Didalam pengambilkan keputusan, meeting merupakan sebuah hal penting yang tidak bisa diabaikan. Apalagi jika ada kejadian mendadak yang mengharuskan adanya keputusan kolektif untuk mengatasi hal tersebut. Namun hal ini tentunya tidak se-ideal yang dibayangkan. Ada kalanya beberapa personil berhalangan untuk hadir, entah karena sedang terikat pada aktifitas kerja yang tidak dapat ditinggalkan, atau terjebak macet di perjalanan. Ketidakhadiran satu atau beberapa orang peserta rapat tentunya dapat mempengaruhi kualitas dari rapat itu sendiri, termasuk legalitas dari pengambilan keputusannya. Dapat juga sebuah situasi dimana personil rapat harus berada dilapangan, stand-by, sambil terus memberikan update akan apa yang terjadi dilapangan. Semua hal ini tentunya sulit atau bahkan tidak mungkin dapat diselesaikan dengan mekanisme rapat konvensional. Perlu adanya sebuah terobosan metode rapat yang berbeda. Belakangan, perkembangan tablet computer dan smartphone begitu fenomenal. Hampir setiap orang memiliki smartphone didalam genggamannya. Salah satu merek gadget dan smartphone yang terkenal adalah iPhone dan iPad. Keduanya terbukti memiliki penggemar yang fanatik dan populasi yang terus meningkat. Performan hardware yang mumpuni dan ketersediaan jaringan infrastruktur yang cukup memadai merupakan salah satu keunggulan yang dapat dimanfaatkan untuk menyusun sebuah mekanisme penyelenggaraan rapat secara non-konvensional. 1.2 Tujuan Penelitian Penelitian ini bertujuan untuk mengembangkan sebuah aplikasi berbasis iOS yang mampu menyelenggarakan rapat jarak jauh secara online. Beberapa tujuan spesifik yang dapat diberikan adalah sebagai berikut: 1. Menyediakan sebuah media untuk memungkinkan rapat jarak jauh, tidak terikat pada lokasi. 2. Menyediakan kebutuhan operasional rapat melalui program, seperti: a. Direct message. b. Berbagi dokumen, gambar, grafik. c. Quick-response, seperti: SETUJU, TIDAK SETUJU, BREAK. d. Antrian bertanya kepada Coordinator. e. Mekanisme voting. f. Aktifitas yang terekam. 3. Mengatur personil rapat yang terundang. 4. Menghasilkan sebuah desain / prototype dari aplikasi penyelenggaraan rapat jarak jauh secara online.
1
Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
SNSI06-016
1.3 Rumusan Masalah Beberapa rumusan masalah yang mendasari penelitian ini adalah sebagai berikut: 1. Adanya kebutuhan untuk menyelenggarakan meeting tanpa dibatasi oleh lokasi. Ada kalanya beberapa personil perlu tetap berada dilapangan sambil memberikan update atas kondisi terbaru. 2. Perkembangan dunia gadget yang semakin cepat, memberikan fakta bahwa populasi komputer tablet dan smartphone – khususnya yang berbasis iOS – cukup tinggi. 3. Belum ada software penyelenggara meeting yang benar-benar menawarkan fitur-fitur khusus meeting seperti quick-response, queue statement, mekanisme voting dan lain-lain. Mayoritas software meeting di platform iOS menawarkan fitur-fitur generic seperti teleconference, video call dan chatting.
2. Landasan Teori 2.1 Konsep Meeting Menurut Kamus Besar Indonesia (KBI), meeting (=rapat) adalah "sebuah pertemuan (kumpulan) untuk membicarakan sesuatu; sidang; majelis". Rapat merupakan sebuah mekanisme pengambilan keputusan yang efektif, dengan mengumpulkan semua pihak yang terlibat atau yang berperan. Secara konvensional, setiap anggota organisasi yang terundang rapat harus hadir di lokasi yang sama agar pertemuan ini dapat diselenggarakan. Hal ini karena adanya aktifitas umum rapat seperti distribusi dokumen, gambar, grafik dan lain-lain. Penelitian ini bertujuan untuk memberikan sebuah alternatif terselenggaranya rapat secara non-konvensional, dimana para pesertanya tidak terikat pada lokasi tertentu, tetapi aktifitas umum tetap dapat dilakukan. 2.2 iPad dan iPhone iPad adalah sebuah komputer tablet yang didesain, dikembangkan dan dipasarkan oleh Apple. Fungsi utamanya adalah untuk keperluan media audio-visual, seperti buku, musik, permainan dan berselancar di internet. Bentuknya yang tipis dan menawan telah berhasil memikat banyak orang untuk membelinya. Gadget ini tergolong cukup ringan, dimana bobotnya berada antara smartphone dengan komputer laptop. Sistem operasi yang digunakan adalah buatan Apple sendiri, yaitu iOS yang juga dipakai di gadget lain dari Apple yaitu iPhone. iOS merupakan sebuah sistem operasi yang arsitekturnya tertutup (closed system). Secara default, iPad hanya dapat menjalankan program (application – “app”) yang telah disetujui oleh Apple yang didistribusikan melalui Apple App Store. Program yang tidak mendapat persetujuan ini tentu saja tidak dapat dipasang di iPad. Sebuah aktifitas yang disebut sebagai “jailbreak” akan memungkinkan program-program yang tidak ada approval dari Apple tetap dapat diinstall dan dipasang pada iPad. Sebenarnya inilah tujuan utama dari jailbreak. 2.3 Pengembangan aplikasi iOS Sebagaimana sebuah produk yang telah didesain dengan matang, iPad dan iPhone memiliki sebuah SDK yang lengkap dan komprehensif untuk pengembangan aplikasinya. Sekedar informasi, SDK adalah singkatan dari Software Development Kit, yaitu sebuah kompilasi yang berisi kumpulan library dari fungsi-fungsi, tools, compiler, dan editor yang diperlukan untuk membuat sebuah aplikasi. SDK ini mutlak diperlukan dan dapat didownload secara gratis pada website Apple (http://developer.apple.com). Selain SDK, hal lain yang perlu untuk diketahui adalah standar bahasa pemrograman yang digunakan pada produkproduk Apple seperti iPhone dan iPad. Kedua gadget tersebut menggunakan sistem operasi buatan Apple sendiri yang bernama iOS. Bahasa pemrograman standarnya adalah Objective-C. Bahasa pemrograman ini mirip dengan bahasa C yang telah populer (ANSI-C). Software developer yang belum pernah mengenal Objective-C akan dengan mudah mengenali gaya bahasa C ketika melihat source-code sebuah program yang ditulis dengan Objective-C (karena memang masih satu keluarga), tetapi kemudian akan menemukan adanya perbedaan sintaksis yang cukup signifikan jika dibandingkan dengan ANSI-C, yang biasanya lebih umum dipelajari dan diajarkan. SDK yang download dari website Apple berisi sebuah IDE (Integrated Development Environment) yang oleh Apple disebut sebagai Xcode. IDE adalah sebuah lingkungan terintegrasi dimana seorang software developer dapat melakukan coding (menulis program), menjalankannya sekaligus melakukan debugging untuk menemukan dimana terdapat kesalahan program. Xcode juga berisi sebagian besar dokumentasi untuk pengembang aplikasi dan sebuah Interface Builder, sebuah aplikasi yang digunakan untuk membuat antarmuka program. Satu hal yang mungkin bisa menjadi hambatan adalah kebijakan Apple untuk menarik biaya agar aplikasi yang dikembangkan dapat dipasang pada iPad. SDK yang disediakan oleh Apple memang gratis untuk didownload dan pengembang aplikasi dapat mencoba bagaimana kerja programnya melalui sebuah iPad emulator yang telah disediakan. Tetapi, sebuah emulator tetaplah sebuah emulator, yang tidak dapat mewakili 100% kondisi riil-nya. Untuk benar-benar mencoba menjalankan aplikasi pada iPad, seorang developer harus membayar $99/tahun kepada Apple sebagai biaya registrasi kemudian mengirimkan aplikasi tersebut ke Apple untuk diproses lebih lanjut. Pihak Apple akan mem-
2
Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
SNSI06-016
verifikasi aplikasinya dan jika dianggap layak (sesuai standar dan parameter yang telah mereka tetapkan sebelumnya) barulah aplikasi tersebut dapat dipasang di iPad. Keuntungan lain yang didapat dengan membayar biaya tersebut adalah Apple mengijinkan program tadi dipasarkan melalui jaringan Apple App Store dan memungkinkan pengembangnya untuk mendapatkan uang (menjual program).
3. Metodologi Penelitian Metodologi penelitian dapat dijelaskan sebagai berikut: 1. Melakukan analisa mengenai kebutuhan rapat. Didefinisikan berbagai macam kebutuhan penyelenggaraan sebuah rapat, mulai dari mekanisme pendaftaraan peserta rapat hingga proses pengambilan keputusan. Daftar kebutuhan ini kemudian dimodelkan agar dapat direpresentasikan kedalam sebuah perangkat lunak. 2. Mempelajari fitur-fitur yang disediakan oleh app sejenis di iPad dan iPhone dan keterbatasannya. 3. Mempelajari teknologi-teknologi perangkat lunak yang dapat dimanfaatkan untuk mengimplementasikan permodelan sistem yang telah dibuat sebelumnya. 4. Mengembangan sebuah prototype berisi spesifikasi teknis yang lengkap tentang arsitektur sistem yang akan diimplementasikan kedalam platform iOS.
4. Permodelan Sistem 4.1 Komparasi dengan Produk Sejenis Ada beberapa software penyelenggara meeting online yang tersedia di platform iOS yang cukup baik. Mereka umumnya menawarkan fitur sebagai media chatting dan online video conference. "Fuze Meeting" dan "MightyMeeting" adalah app berbasis iOS yang digunakan untuk keperluan ini. MightyMeeteing memungkinkan user untuk meletakkan presentasinya dalam sistem cloud dan mengaksesnya kembali dengan menggunakan iPad. Fuze Meeting juga menawarkan fitur yang kurang lebih sama. Khusus untuk Fuze Meeting, ada fitur yang cukup berguna yaitu kemampuan untuk melakukan video teleconference bagi seluruh peserta meeting. Tetapi, walaupun berisi dengan fitur-fitur yang menarik, kedua aplikasi tersebut belum memiliki fitur khas yang seharusnya ada didalam menyelenggarakan sebuah rapat. Berdasarkan analisa yang dilakukan, ada beberapa hal yang diharapkan untuk tersedia dalam sebuah aplikasi yang menyelenggarakan rapat secara online, yaitu: • Quick Response: sebuah fasilitas untuk memberikan tanggapan atas kesimpulan atau event dari pemimpin rapat secara cepat. • Queued Statement: sebuah fasilitas untuk mengajukan pertanyaan ataupun pernyataan kepada pemimpin rapat dalam bentuk antrian yang teratur supaya dapat terbaca dengan baik dan bukannya campur-aduk dengan pertanyaan atau pernyataan dari peserta rapat lainnya. • Mekanisme Voting: sebuah fasilitas untuk mengajukan voting, dimana setiap peserta dapat berpartisipasi memberikan suaranya. Selain itu, video teleconference kurang begitu pas dan cocok jika digunakan pada jaringan GSM/CDMA di Indonesia, mengingat tidak adanya standar kualitas layanan internet operator GSM/CDMA. Tidak ada jaminan bahwa jaringan yang aktif saat itu dapat mendukung dilakukannya video conference. Jika sebuah aplikasi penyelenggara rapat sangat menggantungkan kinerjanya pada hal ini, maka tidak ada jaminan rapat dapat diselenggarakan dengan nyaman. Untuk itulah penelitian ini diajukan, guna memberikan sebuah alternatif metode penyelenggaraan rapat tetap lebih cocok dan nyaman digunakan tanpa begitu tergantung dengan stabilitas jaringan internetnya. 4.2 Metode Penyelenggaraan Rapat Jarak Jauh secara Online dalam Penelitian ini Penelitian ini mengajukan sebuah metode penyelenggaraan rapat jarak jauh yang berbasis tekstual dan bukannya berbasis video / audio teleconference. Tetapi penelitian ini tidak sekedar menghasilkan sebuah aplikasi chatting saja karena jika hanya demikian maka sudah banyak aplikasi sejenis yang sudah tersedia. Aplikasi yang dihasilkan menawarkan sebuah metode komunikasi yang ringan berbasis tekstual. Dengan demikian, jika jaringan internet yang tersedia saat itu sedang lambat, maka rapat tetap dapat diselenggarakan dengan nyaman mengingat data tekstual tidak membutuhkan bandwidth yang besar. Namun demikian, aplikasi ini tetap menawarkan fitur-fitur khas rapat yang masih belum tersedia pada aplikasi sejenis seperti yang telah disebutkan pada subbab 4.1 Selain itu, para peserta rapat juga tetap dapat melakukan sharing file-file penting yang berhubungan dengan rapat seperti dokumen, grafik dan gambar. 4.3 Pendaftaran Peserta Rapat dan Penjadwalan Rapat Sebelum dapat menggunakan iPowerMeeting (nama perangkat lunak yang dikembangkan didalam penelitian ini) di iPad, pengguna wajib mendaftarkan diri terlebih dahulu ke situs resminya (http://ipm.kosh-id.com). Ada tiga informasi penting yang minimal harus diberikan oleh user saat melakukan registrasi: • User ID • Password
3
Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
•
SNSI06-016
Invite Key (kunci yang memungkinkan orang mendaftarkan kita kedalam meeting yang mereka buat). Invite Key HARUS unik untuk setiap user, tidak boleh ada user dengan invite key yang sama.
Informasi lain yang dapat dimasukkan adalah: User name, Profile Picture, Nama Organisasi dan Jabatan. Didalam iPowerMeeting, seorang user dapat memiliki dua peran, yaitu COORDINATOR (penggagas meeting) dan PARTICIPANT (peserta meeting). Peran ini hanya bisa aktif salah satu, tidak bisa keduanya aktif. Untuk menambahkan (=membuat) sebuah scheduled meeting yang baru, seorang user tinggal memasukkan detail-detail mengenai meeting tersebut, seperti deskripsi, nama ruangan (autocomplete, history dari user tersebut), nama organisasi (autocomplete, history dari user tersebut), jadwal dan lain-lain. Creator dari meeting tersebut secara otomatis akan menjadi COORDINATOR. Tahapan pembuatan scheduled meeting adalah sebagai berikut: • mengisi detail meeting. • menentukan peserta rapat. Untuk mendaftarkan peserta rapat adalah dilakukan secara manual. Guna memudahkan proses ini, terdapat fasilitas SEARCH USER. Hal yang penting untuk diketahui adalah untuk dapat menambahkan seorang peserta, anda harus tahu invite_key dari peserta tersebut. Tidak dibutuhkan approval dari invited user, yang terpenting adalah begitu invite_key cocok maka user akan langsung ditambahkan kedalam invitation guest dari user tersebut. Sekali lagi dijelaskan bahwa invite_key bersifat unik, jadi satu invite_key untuk satu user. Jadi, seorang user harus tercatat sebagai peserta dari sebuah meeting untuk bisa masuk kedalam meeting tersebut. 4.4 Aktifitas Rapat Terdapat delapan menu yang dapat dimanfaatkan oleh user untuk dapat menyelenggarakan rapat dengan software iPower Meeting ini, yaitu: HOME, NOTIFICATION, MEETING INFORMATION, SHARED DOCUMENT, VOTING, QUICK FEEDBACK, QUEUED dan DIRECT MESSAGE. Penjelasan dari masing-masing menu utama tadi dapat dilihat pada tabel 1 dibawah ini. Model informasi yang ada disetiap menu diatas adalah Single Newsfeed a la Twitter. Tabel 1. Penjelasan Menu Utama iPowerMeeting Disini semua data-data komunikasi meeting tercatat. HOME dapat diasumsikan HOME sebagai papan tulis besar didalam ruang rapat yang digunakan untuk menulis informasi-informasi ataupun catatan-catatan penting seputar materi rapat. Pada bagian ini, seluruh notifikasi dari aktifitas rapat tertentu muncul, seperti ketika ada update voting, masuknya pesan pribadi dari peserta lain, sinyal QUICK NOTIFICATION FEEDBACK, dan lain-lain. Kategori notifikasi yang muncul disini dapat berbedabeda, tergantung peran dari user tersebut (sebagai coordinator/participant). MEETING INFORMATION Segala bentuk informasi meeting. Menu shared document menampilkan daftar file-file yang di-upload oleh peserta SHARED DOCUMENT rapat, sepert file documen, gambar, grafik dan lain-lain. Ketika coordinator melakukan opsi Voting, maka disinilah para user dapat VOTING berpartisipasi dan melihat perkembangannya. Sebuah model antrian, dimana participant dapat bertanya kepada coordinator QUEUED secara private, tetapi harus masuk antrian dengan pertanyaan participant lainnya. DIRECT MESSAGE Fitur untuk berkomunikasi secara private antar 2 peserta rapat. Menyediakan sebuah 1-button response. Ini berkaitan erat yang aktifitas coordinator rapat. Ada delapan predefined quick response yang disediakan:
QUICK FEEDBACK
• • • • • • • •
BORING MAKE IT QUICK! CAN I LEAVE NOW? SUPERB! I AM WITH YOU I DISAGREE TAKE A BREAK, PLEASE! *CHEERS!*
Model Antar-muka (User Interface) dari iPowerMeeting didesain agar mudah untuk digunakan. Bahkan user yang baru saja mengenal iPowerMeeting seharusnya dapat dengan mudah untuk mengoperasikan aplikasi ini. Interfacenya menggunakan layout PORTRAIT (tegak) dengan tujuan untuk memperluas wilayah scrolling-nya. Ini karena model informasi yang ditampilkan adalah newsfeed seperti yang telah disebutkan sebelumnya. Model newsfeed bermakna bahwa setiap ada entry baru maka entry yang lebih lama akan tergulung kebawah. Dengan menggunakan model portrait
4
Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
SNSI06-016
maka wilayah scroll dari newsfeed ini menjadi lebih panjang sehingga diharapkan dalam satu page tetap banyak informasi yang bisa dibaca oleh pengguna. Form untuk menulis ke wall rapat, sifatnya publik ke semua peserta rapat.
News Feedfeed
Gambar 1. Model desain user interface iPowerMeeting Setiap entry dari newsfeed memiliki model yang kurang lebih sama. Terdapat thumbnail dari foto profil user, timestamp dari newsfeed tersebut dan deskripsinya. Model ini cukup representatif untuk memberikan informasi yang efektif.
Foto Profil
Detail dari newsfeed: nama, timestamp, deskripsi newsfeed. Gambar 2. Model desain user interface iPowerMeeting
5. Arsitektur Sistem Aplikasi perangkat lunak yang dibuat didalam penelitian ini (iPowerMeeting) dikembangkan dengan beberapa teknologi yang berbeda. Secara umum, framework dari iPowerMeeting dibuat dengan bahasa Objective-C dan dikembangkan didalam platform Machintosh 10.6+ Snow Leopard. Compilernya adalah Xcode 4.4. Untuk menyimpan data-data seputar meeting, iPowerMeeting menggunakan free cloud storage SugarSync. Beberapa menu utama didalam iPowerMeeting juga membutuhkan akses ke server pusat iPowerMeeting itu sendiri melalui WebService. Komunikasi antara iPowerMeeting dengan webservicenya menggunakan protocol REST dan data formatnya adalah JSON. Penggunaan SugarSync sebagai cloud storage disini berdasarkan pertimbangan fasilitas free storage minimal sebesar 5GB. Kapasitas sebesar ini sulit diperoleh dengan harga murah jika kita menggunakan layanan web-hosting. Hal ini tentunya dapat dimengerti karena web-hosting adalah layanan yang menyediakan executable environment bagi sebuah web-based app yang berarti cost dan featurenya jelas lebih banyak, sedangkan SugarSync sebagai cloud storage hanya menyediakan sarana penyimpanan data saja. iPowerMeeting Server adalah sebuah webserver standard yang bertugas untuk mencatat (logging) segala aktifitas para peserta rapat. Jadi didalam Server ini terdapat data-data rapat yang telah dan sedang diselenggarakan. Keterbatasan kapasitas dari webserver inilah yang membuat adanya kebutuhan storage pada cloud Sugar Sync.
5
Seminar Nasional Sistem dan Informatika 2012; Bali, November 17, 2012
SNSI06-016
Gambar 3. Bagan arsitektur sistem iPowerMeeting Pembagian server penyimpan data iPowerMeeting cukup sederhana. Untuk logging rapat dan pesan-pesan tekstual dari peserta akan disimpan didalam iPowerMeeting server. Disini juga tersimpan data-data para peserta (Participant) dan pemimpin rapat (Coordinator) serta rapat-rapat yang telah terjadwal. Sedangkan SugarSync Cloud Storage akan digunakan untuk menyimpan file-file yang diupload oleh para peserta rapat, seperti dokumen, gambar dan lain-lain.
6. Kesimpulan Kesimpulan yang bisa ditarik dari penelitan ini adalah: • Gadget yang tersedia dipasar dapat dimanfaatkan untuk melakukan meeting jarak jauh secara online, dan gadget berbasis iOS dipilih berdasarkan pertimbangan populasinya yang cukup tinggi didunia. • Aplikasi harus dipikirkan untuk memiliki sebuah fitur inti yang mempertimbangkan kondisi infrastruktur jaringan internet. Untuk itu, video / audio teleconference dianggap tidak cocok. • Komunikasi secara tekstual dianggap cukup representatif. Jika dibutuhkan, maka audio communication tetap dapat dilakukan (melakukan panggilan telepon). • Beberapa fitur khas rapat seharusnya ada pada aplikasi yang menawarkan remote meeting.
7. Batasan Penelitian Dalam penelitian ini, aplikasi yang dihasilkan terbatas untuk platform iOS saja, yaitu berbasis iPad dan iPhone. Untuk saat ini platform lain seperti Android atau Windows Phone tidak didukung. Selain itu, iPowerMeeting tidak didesain untuk melakukan live teleconference melalui kamera dan audio. Hal ini didasarkan pada pertimbangan stabilitas koneksi internet di Indonesia saat ini. Kami tidak ingin menggunakan fitur ini sebagai ujung-tombak aplikasi tetapi malah tidak banyak dimanfaatkan akibat lemahnya jaringan internet yang tersedia.
Bibliography [1] [2] [3] [4] [5]
Ali, Maher. Advanced iOS 4 Programming: Developing Mobile Applications for Apple iPhone, iPad and iPod touch. A John Wiley and Sons, Ltd., Publication. Bennett, Gary (2010). Objective-C for Absolute Beginners: iPhone, iPad and Mac Programming Made Easy. Apress; 1 edition Brannan, James A (2010). Objective-C for iPhone Developer. McGraw-Hill Companies. H Steinberg, Daniel and T Freeman, Eric (2010). iPad Programming. Pragmatic Bookshelf; 1 edition Neuberg, Matt (2011). Programming iOS4: Fundamentals of iPhone, iPad, and iPod touch Development. O’Reilly Media, Inc.
6