Cocoa and Cocoa Touch: Cara Bermula Membangun Aplikasi Mac dan iOS

Pendedahan: Sokongan anda membantu mengekalkan laman web ini! Kami memperoleh bayaran rujukan untuk beberapa perkhidmatan yang kami cadangkan di halaman ini.


Koko adalah API pengembangan yang berasal dari sistem operasi Mac OS X. Cocoa Touch adalah platform analog yang berkait rapat untuk iOS. Ini ditulis dalam Objective-C, dan bertindak sebagai semacam “lapisan atas” untuk setiap sistem operasi.

Kakao dapat dianggap sebagai platform aplikasi atau kerangka pengembangan aplikasi, tetapi lebih terintegrasi ke dalam sistem operasi daripada salah satu dari yang ada di lingkungan Linux atau Windows.

Penyatuan yang ketat antara API, sistem operasi, dan (tentu saja) perkakasan Apple sendiri bertujuan untuk menyediakan persekitaran pembangunan yang lancar dan menegakkan “cara Apple” melakukan sesuatu.

Sejarah Koko

Koko bermula dengan C. Secara harfiah.

Pada awal 1980-an, sepasang pengembang bernama Brad Cox dan Tom Love berusaha menambahkan Objek Orientasi ke bahasa pengaturcaraan C, yang tidak menyokong OOP pada masa itu.

Penyelesaian mereka adalah dengan membuat pra-pemproses yang akan menjadikan kod C dengan beberapa penambahan seperti Smalltalk menjadi kod C yang dapat dikompilasi. (Smalltalk adalah bahasa berorientasikan objek awal.)

Praprosesor ini dengan cepat berkembang menjadi peluasan bahasa yang lengkap dan dikenali sebagai Objective-C. Perisian NeXT, yang diasaskan oleh Steve Jobs setelah dia dipecat dari Apple pada tahun 1985, melesenkan Objective-C dari penciptanya dan menggunakannya sebagai asas untuk beberapa kerangka pengembangan.

Ini membentuk platform aplikasi NeXTSTEP dan OpenStep, yang dijual oleh NeXT sepanjang tahun 80an dan 90an.

Apple memperoleh NeXT pada tahun 1996, dan Steve Jobs kembali sebagai CEO. Kerangka kerja NeXTSTEP memasuki sistem operasi Mac.

Apple telah menandakan nama Cocoa, untuk projek terpisah yang dihentikan. Untuk meletakkan nama jenama dagang dengan cepat pada kerangka versi terbaru Apple, mereka memanggilnya Koko.

Koko telah menjadi sebahagian daripada semua sistem operasi Apple sejak akhir 1990-an, dan telah berkembang seiring dengan OS dan platform peranti baru sejak itu.

Apa yang Kakao Lakukan?

Koko melakukan banyak perkara, tetapi secara umum ini merangkumi empat kategori:

  • Bertindak sebagai perpustakaan standard yang diperluas untuk Objective-C, memberikan sokongan untuk objek yang lebih kaya dan ciri bahasa pengkomputeran moden yang tidak terdapat dalam reka bentuk Objective-C.

  • Menyediakan antara muka pengguna dan pengalaman pengguna yang bersatu.

  • Membolehkan aplikasi mengakses aplikasi, perkhidmatan, dan ciri peranti lain.

  • Menggalakkan corak pengurusan data dan seni bina tertentu.

Matlamat reka bentuk yang luas ini dilaksanakan dalam beberapa “kerangka kerja.” Istilah ini mungkin agak membingungkan. Dalam bahasa kontemporari, Koko lebih seperti kerangka tunggal, dengan beberapa modul atau perpustakaan. Tetapi Apple memanggil setiap perpustakaan ini sebagai “kerangka.”

Mari kita selidiki setiap tujuan fungsional ini dan bagaimana pelbagai kerangka kerja Kakao mencapainya.

Koko sebagai Perpustakaan Standard

Objective-C mempunyai perpustakaan standard. Di persekitaran Kakao, perpustakaan standard dan waktu operasi sebenarnya disediakan oleh Cocoa. Selain itu, satu set ciri bahasa yang diperluas disediakan oleh Foundation Kit yang, dalam praktiknya, berfungsi sebagai perpustakaan standard de facto.

Ini memberikan ciri bahasa yang lebih maju daripada biasanya terdapat di Objective-C. Ini termasuk berbagai kelas dasar untuk jenis objek yang biasa digunakan – angka, tarikh, rentetan, URL, ungkapan biasa, dan pesan kesalahan.

Kerangka Kit Asas ini penting dalam aplikasi yang ditulis dalam Objektif-C. Walau bagaimanapun, pengembangan aplikasi di platform Apple menjauh dari Objective-C, kerana Apple mempromosikan bahasa pengembangan Swift yang lebih baru.

Swift secara asli menyediakan banyak ciri bahasa moden yang ditambahkan oleh Foundation Kit, dan tidak jelas peranan apa yang akan dimainkan oleh Foundation, dan Objective-C pada masa depan Swift-centric.

Koko sebagai Antaramuka UI / UX

Aspek Koko ini mungkin yang paling penting bagi pembangun aplikasi.

Dalam versi OS X Kakao, API pengalaman pengguna disediakan oleh kerangka yang disebut AppKit. Dalam Cocoa Touch untuk iOS, ini dipanggil UIKit.

Dalam kedua-dua kes, ini menyediakan elemen grafik, kawalan antara muka pengguna, pengurusan tetingkap dan panel, antara muka berbilang sentuhan, dan semua perincian interaksi lain antara pengguna dan sistem.

Penggunaan AppKit dan UIKit adalah apa yang membuat aplikasi tampak dan terasa asli sistem Apple, dan merespons input (gerak isyarat, klik, pergerakan) dengan cara “benar”.

Perbezaan besar antara Cocoa dan Cocoa Touch adalah perbezaan antara AppKit dan UIKit. Sebanyak mana Apple berusaha untuk menyatukan pengalaman pengguna di seluruh platform, anda masih berinteraksi dengan iPhone dengan cara yang berbeza daripada yang anda lakukan dengan Mac desktop.

Selain elemen GUI yang sedikit berbeza, UIKit termasuk sokongan untuk hal-hal seperti arah kompas, GPS, akselerometer (pergerakan peranti), dan layar sentuh.

Koko sebagai Antaramuka Sistem Operasi

Aplikasi Apple juga perlu berinteraksi dengan aplikasi lain dan perkhidmatan sistem operasi.

Sekiranya anda ingin dapat mengklik nombor telefon di aplikasi sembang anda dan mempunyai yang melancarkan panggilan telefon, aplikasi harus dapat bercakap antara satu sama lain.

Sekiranya anda mahukan aplikasi penyuntingan muzik dapat mengambil suara dari mikrofon dan bermain ke pembesar suara anda, aplikasi harus dapat berinteraksi dengan perkhidmatan sistem operasi.

Koko menyediakan senarai panjang kerangka kerja yang menyediakan akses ke aplikasi dan perkhidmatan. Ini adalah yang membolehkan aplikasi bukan hanya dapat dilaksanakan secara mandiri, tetapi dapat wujud dan beroperasi dalam ekosistem bersepadu.

Koko sebagai Arkitek

Koko menyokong dua corak seni bina penting, satu dalam aplikasi dan satu bagaimana aplikasi berkomunikasi di luar dirinya.

Koko ditulis dengan mempertimbangkan paradigma seni bina Model-View-Controller, dan menyokong pengembangan MVC di semua peringkat.

Paparan dilaksanakan oleh kerangka AppKit atau UIKit. Modul pengawal disokong melalui keluarga kelas yang dibina di dalam Kit Asas. Model, dan hubungannya yang diperlukan dengan lapisan ketekunan data, dikendalikan oleh kerangka lain yang disebut Core Data.

Reka bentuk ini mendorong (ada yang mengatakan menegakkan) seni bina Model-View-Controller dalam aplikasi iOS dan OS X.

Di antara aplikasi yang berbeza, dan juga antara aplikasi dan perkhidmatan, pelbagai kerangka kerja memediasi interaksi secara asasnya berorientasikan perkhidmatan. Ini menjadikannya lebih mudah dan selamat untuk mengintegrasikan aplikasi antara satu sama lain, mempromosikan ekosistem aplikasi yang kuat dan berdaya tahan.

Sumber Koko

Dalam talian

Tutorial

  • Konsep Pengaturcaraan Asas untuk Kakao dan Cocoa Touch

  • Pengenalan Garis Panduan Pengekodan untuk Koko

  • Cocoa Dev Central

  • Mengaturcara Mac OS X dengan Koko untuk Pemula.

Alat

  • Kawalan Koko: komponen UI sumber terbuka untuk iOS dan OS X.

  • Cocoa Pods: pengurus pakej untuk projek Kakao.

Komuniti dan Pembelajaran Berterusan

  • CocoaHeads: rangkaian kumpulan pertemuan dan perbincangan tempatan di seluruh dunia yang didedikasikan untuk pembangunan Cocoa dan Cocoa Touch.

  • Subreddit Koko.

Buku

  • Swift Development with Cocoa: Membangunkan untuk App Store Mac dan iOS

  • Pengaturcaraan Koko untuk OS X: The Big Nerd Ranch Guide

  • Belajar Koko dengan Objektif-C

  • Tutorial Koko Ry

  • Koko (Rujukan Pembangun)

  • Corak Reka Bentuk Koko.

Sumber Pembangunan OS X dan iOS yang lain

Anda tidak boleh menggunakan Cocoa atau Cocoa Touch dalam keadaan hampa. Ini adalah sekeping persekitaran pengembangan Aplikasi Apple yang lebih besar, yang merangkumi Xcode, Objective-C, dan Swift. Alat dan teknologi yang berbeza ini bekerjasama untuk membentuk ekosistem pembangunan.

Kod X

Xcode adalah Persekitaran Pembangunan Bersepadu (IDE) yang diperlukan untuk membina aplikasi OS X dan iOS. Ia terintegrasi erat dengan Swift, Kakao, gedung Apple App, dan ekosistem Apple yang lebih besar.

Tidak ada banyak tutorial mengenai Xcode secara khusus, kerana ia dibahas dalam setiap sumber pembangunan umum Apple. Satu sumber yang hebat adalah Tutorial Xcode ini, yang selalu dikemas kini apabila versi Xcode baru keluar.

Objektif-C

  • Mengenai Objektif-C: tutorial pengenalan dari pusat Pembangun Apple

  • Pengaturcaraan Objektif-C

  • Pengaturcaraan Objektif-C: Panduan Big Nerd Ranch.

Kami juga mempunyai senarai sumber Objektif-C yang lebih lengkap.

Pantas

  • Bahasa Pengaturcaraan Swift: panduan rasmi Apple

  • Pengaturcaraan Swift: Panduan Big Nerd Ranch: buku pasti mengenai perkara ini.

Kami juga mempunyai senarai lengkap sumber Swift.

Sumber Pembangunan Apple Umum

Tempat pertama untuk mendapatkan maklumat dan sumber mengenai pengembangan untuk platform Apple adalah laman Apple Developer.

Banyak buku terbaik untuk pengembangan Mac dan iOS berasal dari Big Nerd Ranch. Buku-buku mereka mengenai topik tertentu disebutkan di atas, dan anda juga harus melihat buku-buku mereka mengenai Pengaturcaraan Mac OS X Lanjutan dan Pengaturcaraan iOS.

Sumber am lain yang baik:

  • Tutorial Ray Wenderlich: salah satu penyedia yang agak sedikit yang kembali dan mengemas kini tutorial lama apabila Apple mengemas kini platform.

  • Saluran Pengaturcaraan Apple di YouTube: tidak rasmi, tetapi sangat membantu.

  • WeHeartSwift: secara nominal mengenai Swift, tetapi laman web ini merangkumi semua aspek pengembangan OS X dan iOS.

  • NSHipster: blog popular mengenai pengembangan Mac dan iOS, dengan banyak tutorial mengenai “bit yang diabaikan dalam Objective-C, Swift, dan Cocoa.” Mereka juga sangat berpandangan dalam liputan mereka, yang mungkin merupakan kekuatan.

  • ObjC.io: buku dan artikel mengenai teknik dan amalan lanjutan untuk pengembangan iOS dan OS X.

Pokoknya…

Cocoa dan Cocoa Touch adalah asas pengembangan Aplikasi asli untuk Mac dan iOS.

Untuk iOS ada cara lain untuk membuat aplikasi mudah alih bukan asli dengan HTML5 dan JS, tetapi ini tidak selalu berjalan seperti yang diharapkan – sungguh.

Sekiranya anda ingin membina aplikasi iPhone besar seterusnya, atau membuat aplikasi Mac yang berintegrasi dengan OS X dan sesuai dengan harapan pengguna, anda benar-benar perlu menggali Cocoa dan Cocoa Touch. Untuk pembangunan aplikasi asli, sebenarnya tidak ada pengganti.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me