Objective-C là ngôn ngữ lập trình trên hệ thống Apple iOS và Os X. Ngôn ngữ này đã được biên soạn để có thể xây dựng tất cả mọi thứ từ common line utilities đến animated GUI (giao diện người dùng đồ họa) và các thư viện hoàn chỉnh. Nó cũng có thể tạo ra các công cụ để duy trì các frameworks lớn.

lập trình Objective-C
Types of programs written in Objective-C

Giống C++, Objective C được thiết kế để có thể thêm các tính năng vào C, nhưng hai ngôn ngữ này làm điều này bằng 2 cách khác nhau. Objective C năng động hơn và diều này được thể hiện trên các mẫu thiết kế cơ bản cho nền tảng phát triển iOS và OS X

Objective-C được biết đến một phần là do cách đặt tên dài dòng. Đây là lý do tại sao code trong Objective-C rất dễ hiểu và khó có thể bị nhầm lẫn. Các bạn có thể thấy sự so sánh giữa C++ và Objective-C ở dưới

lập trình Objective-C cơ bản

Như các bạn thấy, Objective-C được đọc như ngôn ngữ của con người hơn là máy tính. Khi bạn đã quen rồi thì bạn sẽ rất dễ dàng làm quen với các dự án mới và làm việc với ngôn ngữ này.

Frameworks

Như các ngôn ngữ lập trình khác, Objective-C là một ngôn ngữ khá đơn giản và được hỗ trợ bởi một thư viện có tiêu chuẩn. Có rất nhiều các thư viện khác nhau, nhưng Apple CocoaCocoa Touchlà hai thư viện hay được dùng nhất. Bảng dưới là miêu tả của một số framework trong Cocoa và Cocoa Touch.

FrameworkMô tả
FoundationXác định các loại dữ liệu như strings, arays, dictionaries…
UIKitTạo ra vô số các cách để tạo và quản lý dao diện trên iOS
AppKitGiống UIKit, nhưng dành cho OS X
CoreDataCung cấp API quản lý các mối quan hệ đối tượng, trợ giúp undo/redo và dùng lưu trữ liên tục
MediaPlayerTrở giúp API chơi và tích hợp nhạc chất lượng cáo, xem video, truy cập vào thư viện iTunes của người dùng
AVFoundationTrợ giúp phát và tích hợp nhạc và video chất lượng kém hơn
CoreGraphicsTrợ giúp vẽ đồ họa 2D

Xcode

X code là môi trường phát triển thích hợp của Apple để làm ra các app cho Mac, iPhone và iPad. Xcode có mọi tiện nghi để giúp bạn tạo ra app: trình soạn thảo, công cụ xây dựng dao giện, trình gỡ lỗi, và các framework trong Cocoa và Cocoa Touch.

Trong tất cả các công cụ để viết Objective-C, Xcode là phần mềm dễ dùng nhất. các bạn có thể dowload miễn phí tại Mac App Store

Tạo ra ứng dụng

Xcode cung cấp một số mẫu thiết kế cho ap trên iOS và OS X. Tất cả đều có thể được tìm thấy qua File>New>Project… hoặc dùng Cmd+Shift+N. Bạn sẽ thấy màn hình mới mở ra cho bạn chọn một mẫu:

lập trình Objective-C nâng cao

Creating a command line application

Trong bài này, chúng ta sẽ dùng mẫu Command Line Tool ở trong OS X> Application, như các bạn thấy trong ảnh. Hãy tạo ra file mới và bạn sẽ nhìn thấy hình sau:

lập trình Objective-C iOS

Configuring a command line application

Bạn có thể đặt tên bất kỳ cho sản phẩm, công ty. Trong phần Company identifier, hãy viết ‘edu.self’ dùng cho cá nhân. Cho các ứng dụng để bán, bạn sẽ phải đăng ký với Applee để thành lập trình viên. Trong bài này hãy chọn Foundation trong Type và nhớ tích Use Automatic Reference Counting cho tất cả các dự án mới lập

Ân Next sẽ bật ra màn hình mới hỏi bạn muốn lưu dự án này vào đâu (bất kỳ đâu bạn muốn) và bạn đã có một dự án Xcode mới để thử nhiệm. Trong cột trái của Xcode IDE, bạn sẽ tìm thấy file main.m (và các mục khác). Hiện tại thì file này có toàn bộ thông tin về ứng dụng của bạn. Nhớ rằng file .m được dùng cho các mã nguồn của Objective-C

lập trình Objective-C hiệu quả

main.m in the Project Navigator

Để chạy thử dự án, ấn nút Run ở góc bên trái phía trên của IDE hoặc dùng Cmd+R. Màn hình ngoài hiển thị Hello,World! sẽ được bật lên

lập trình Objective-C chất lượng

Cú phác main()

Như các phần mêm C cũ, cú phác main() là khởi đầu của Objective-C. Hầu như tất cả các mẫu trong X-code đều có một file tên là main.m với dòng code mạc định main()

Khi các bạn nhấn vào main.m trong Xcode các bạn sẽ thấy hình ảnh sau đây

lập trình Objective-C iPhone

@autoreleasepool chings là nơi các bạn sẽ viết code cho lập trình. Cú phác main() thật ra là để nối với NSLog() mà đã được quy định bởi Foundation Framework. Hãy nhớ rằng string trong Objectice-C đều có @ đứng trước.

Trong bài này, chúng ta sẽ trục tiếp code trong main.m để xem xem ngôn ngũ mới này làm việc thế nào, chứ thật ra kh làm thât, bạn hầu như không bao giờ phải thay đổi file main.m đã được định sẵn này.

Khóa học lập trình di động tại Techmaster:

Để cài đặt MacOSX lên phần cứng không phải Apple liên hệ chuyên gia cài Hackintosh:

  • Nguyễn Minh Sơn: 01287065634
  • Huỳnh Minh Sơn: 0936225565
  • Website: caidatmacos.com