Chắc chắn, nếu mọi thứ bạn thấy trong cuộc sống của mình là Objective C, thì cú pháp của nó giống như duy nhất có thể. Chúng tôi có thể gọi bạn là "trinh nữ lập trình".
Nhưng vì rất nhiều mã được viết bằng C, C ++, Java, JavaScript, Pascal và các ngôn ngữ khác, bạn sẽ thấy ObjectiveC khác với tất cả chúng, nhưng không phải theo cách tốt. Họ có lý do cho điều này? Hãy xem các ngôn ngữ phổ biến khác:
C ++ đã thêm rất nhiều tính năng bổ sung vào C, nhưng nó chỉ thay đổi cú pháp ban đầu khi cần thiết.
C # đã thêm rất nhiều tính năng bổ sung so với C ++ nhưng nó chỉ thay đổi những thứ xấu xí trong C ++ (như loại bỏ "::" khỏi giao diện).
Java đã thay đổi rất nhiều thứ, nhưng nó vẫn giữ nguyên cú pháp quen thuộc ngoại trừ những phần cần thay đổi.
JavaScript là một ngôn ngữ hoàn toàn động có thể làm được nhiều điều mà ObjectiveC không thể. Tuy nhiên, những người tạo ra nó đã không phát minh ra một cách mới để gọi các phương thức và truyền các tham số chỉ để khác biệt với phần còn lại của thế giới.
Visual Basic có thể truyền các tham số không theo thứ tự, giống như ObjectiveC. Bạn có thể đặt tên cho các tham số, nhưng bạn cũng có thể chuyển chúng theo cách thông thường. Bất cứ điều gì bạn sử dụng, đó là cách phân cách bằng dấu phẩy bình thường mà mọi người đều hiểu. Dấu phẩy là dấu phân cách thông thường, không chỉ trong ngôn ngữ lập trình mà còn trong sách, báo và ngôn ngữ viết nói chung.
Object Pascal có cú pháp khác với C, nhưng cú pháp của nó thực sự DỄ DÀNG hơn để người lập trình đọc (có thể không phải đối với máy tính, nhưng ai quan tâm máy tính nghĩ gì). Vì vậy, có thể họ lạc đề, nhưng ít nhất kết quả của họ tốt hơn.
Python có một cú pháp khác, thậm chí còn dễ đọc hơn (đối với con người) so với Pascal. Vì vậy, khi họ thay đổi nó, làm cho nó khác đi, ít nhất họ đã làm cho nó tốt hơn cho các lập trình viên chúng tôi.
Và sau đó chúng ta có ObjectiveC. Thêm một số cải tiến cho C, nhưng phát minh ra cú pháp giao diện riêng, gọi phương thức, truyền tham số và những gì không. Tôi tự hỏi tại sao họ không hoán đổi + và - để cộng trừ hai số. Nó sẽ còn mát hơn.
Steve Jobs đã gặp khó khăn khi hỗ trợ ObjectiveC. Tất nhiên anh ta không thể hỗ trợ C #, tốt hơn, nhưng thuộc về đối thủ cạnh tranh tồi tệ nhất của anh ta. Vì vậy, đây là một quyết định chính trị, không phải là một quyết định thực tế. Công nghệ luôn bị ảnh hưởng khi các quyết định công nghệ được đưa ra vì lý do chính trị. Anh ta nên lãnh đạo công ty mà anh ta làm tốt, và để các vấn đề về lập trình cho các chuyên gia thực sự.
Tôi chắc rằng sẽ có nhiều ứng dụng hơn nữa cho iPhone nếu anh ấy quyết định viết iOS và hỗ trợ các thư viện bằng bất kỳ ngôn ngữ nào khác ngoài ObjectiveC. Đối với tất cả mọi người, ngoại trừ những người hâm mộ khó tính, những lập trình viên còn trinh và Steve Jobs, ObjectiveC trông thật lố bịch, xấu xí và ghê tởm.