Lập trình trên điện thoại di động ngày càng trở nên phổ biến, iOS là một trong các hệ điều hành di động nổi tiếng nhất hiện nay. Objective-C là ngôn ngữ viết nên các ứng dụng cho nó, bài viết dưới đây sẽ cho bạn cái nhìn đầu tiên về ngôn ngữ này.
Nguồn gốc Objective-C
Objective-C ban đầu được khai sinh tại NeXTSTEP vào năm 1983, công ty do Steve Jobs sáng lập. Ngôn ngữ này kế thừa từ C và được bổ sung tính hướng đối tượng, nên có thể sử dụng được C trong chương trình viết bằng Objective-C.
Ngày nay Objective-C được sử dụng rộng rãi để viết nên các ứng dụng chạy trên hệ điều hành Mac và iOS.
Xcode IDE
Để có thể viết một chương trình bằng Objective-C sử dụng Xcode, là một IDE chạy trên hệ điều hành Mac.
Hello World với Objective-C
Cấu trúc một chương trình viết bằng Objective-C.
Gồm 3 phần chính:
- Interface: nơi khai báo một lớp, và tất cả các lớp ta tạo đều phải kế thừa
NSObject
. - Implementation: nơi hiện thực lớp đã khai báo trong interface.
- Main:
entry point
của chương trình.
Ở demo bên dưới đây sẽ đặt 3 thứ này vào 3 file khác nhau.
Hiện thực chương trình
B1: tạo file Demo.h là nơi khai báo đối tượng Demo
#import <Foundation/Foundation.h> @interface Demo : NSObject - (void) HelloWorld; @end
#import <Foundation/Foundation.h>
để có thể sử dụng được đối tượngNSObject
(và nhiều đối tượng khác nữa khởi đầu với tiền tốNS
). Trong ví dụ này là lớp cha củaDemo
.(void)
cho biết là phương thức này sẽ không trả về giá trị.- Dấu
-
trước đó cho biết đây là một phương thức bình thường thuộc đối tượng, ngược lại với nó là dấu+
cho ta biết một phương thức kiểustatic
(có thể được gọi mà không cần thông qua đối tượng).
B2: tạo file Demo.m là nơi hiện thực đối tượng Demo
#import "Demo.h" @implementation Demo - (void) HelloWorld { NSLog( @"Hello World!"); } @end
Phương thức HelloWorld
sẽ được hiện thực ở đây.
Phương thức NSLog
sẽ hiển thị một chuỗi bên trong nó ra màn hình.
Dấu @
đặt trước cặp ““
cho biết đây chuỗi trong Objective-C.
B3: tạo file main.m là nơi khai báo đối tượng Demo
#import "Demo.h" int main() { Demo *demo = [[Demo alloc] init]; [demo HelloWorld]; [demo dealloc]; return 0; }
Trong hàm main
cấp phát, khởi tạo một đối tượng Demo
và gán nó cho một con trỏ demo
.
Sau đó gửi một thông điệp (gọi phương thức) HelloWorld
đến đối tượng demo để hiển thị ra màn hình dòng chữ "Hello World!
".
Giải phóng đối tượng demo
đã khởi tạo và kết thúc chương trình.