Họ | C |
---|---|
Thiết kế bởi | Tom Love và Brad Cox |
Xuất hiện lần đầu | 1984 |
Phiên bản ổn định | 2.0[1]
|
Kiểm tra kiểu | Tĩnh, động, yếu |
Hệ điều hành | Đa nền tảng |
Phần mở rộng tên tập tin | .h, .m, .mm, .M |
Trang mạng | developer.apple.com |
Các bản triển khai lớn | |
Clang, GCC | |
Ảnh hưởng từ | |
C, Smalltalk | |
Ảnh hưởng tới | |
Groovy, Java, Nu, Objective-J, TOM, Swift[2] | |
|
Objective-C là một ngôn ngữ lập trình đa dụng, hướng đối tượng có bổ sung thêm thông điệp kiểu Smalltalk vào ngôn ngữ lập trình C. Ban đầu được phát triển bởi Brad Cox và Tom Love vào đầu những năm 1980, nó đã được NeXT lựa chọn cho hệ điều hành NeXTSTEP. Objective-C là ngôn ngữ lập trình tiêu chuẩn được Apple hỗ trợ để phát triển macOS (có nguồn gốc từ NeXTSTEP[3]) và các ứng dụng iOS sử dụng giao diện lập trình ứng dụng (APIs) tương ứng, Cocoa và Cocoa Touch, cho đến khi Swift được giới thiệu vào năm 2014.[4]
Các chương trình Objective-C được phát triển cho hệ điều hành không phải của Apple hoặc không phụ thuộc vào API của Apple cũng có thể được biên dịch cho bất kỳ nền tảng nào được hỗ trợ bởi GNU GCC hay LLVM/Clang.
Các tập tin chương trình 'thông điệp / hiện thực' ('messaging/implementation') của mã nguồn Objective-C thường có phần mở rộng .m, trong khi các tập tin 'tiêu đề/giao diện' ('header/interface') của Objective-C có phần mở rộng .h , giống như các tập tin tiêu đề của C. Các tập tin Objective-C++ thường được biểu thị với phần mở rộng .mm.
Objective-C chủ yếu được tạo ra bởi Brad Cox và Tom Love vào đầu những năm 1980 tại công ty Productivity Products International (PPI) của họ.[5]
Trước khi thành lập công ty của họ, cả hai đã được giới thiệu về Smalltalk khi làm việc tại Trung tâm Công nghệ Lập trình của ITT Corporation vào năm 1981. Những thảo luận sớm nhất về Objective-C bắt nguồn từ khoảng thời gian đó.[6] Cox bị hấp dẫn bởi các vấn đề về khả năng tái sử dụng thực sự trong thiết kế phần mềm và lập trình. Ông ta nhận ra rằng một ngôn ngữ như Smalltalk sẽ là vô giá trong việc xây dựng môi trường phát triển cho các nhà phát triển hệ thống tại ITT. Tuy nhiên, ông ấy và Tom Love cũng nhận ra rằng khả năng tương thích ngược với C là cực kỳ quan trọng trong môi trường kỹ thuật viễn thông của ITT.[7]
The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.