Lập trình viên iOS cần biết ngôn ngữ Objective-C

Thảo luận trong 'Lập trình ứng dụng di động' bắt đầu bởi Trần Văn Cường, 17/6/16.

  1. Trần Văn Cường

    Trần Văn Cường I love CNTT Thành viên BQT Thành viên BQT

    Tham gia ngày:
    8/11/15
    Bài viết:
    3,693
    Đã được thích:
    43
    Điểm thành tích:
    48
    Giới tính:
    Nam
    Nghề nghiệp:
    Sinh Viên
    Nơi ở:
    Quảng Ninh thân yêu!
    Web:

    Khi hãng Apple giới thiệu ra công chúng ngôn ngữ lập trình Swift, tôi đã nghe thấy một số người nói rằng "Hoan hô! Giờ đây tôi có thể trở thành một lập trình viên iOS mà chẳng cần phải học ngôn ngữ Objective-C!". Tôi xin có 3 thông điệp gửi đến những người đó như sau:

    • Nếu bạn muốn trở thành một lập trình viên iOS thì bạn sẽ vẫn cần biết về ngôn ngữ lập trình Objective-C.
    • Objective-C là ngôn ngữ dễ học hơn Swift.
    • Một khi bạn đã biết về Objective-C thì việc chuyển sang học Swift sẽ rất dễ dàng.
    Trước khi tiếp tục, hãy để tôi được nói trước rằng bản thân tôi rất yêu thích ngôn ngữ lập trình Swift. Cú pháp của nó thật sáng sủa. Trình biên dịch Swift sẽ bắt rất nhiều lỗi cho chúng ta; tôi chắc chắn vào điều đó bởi vì các ứng dụng viết bằng Swift có độ tin cậy tăng lên một cách đáng kể. Swift là một bước tiến lớn cho toàn bộ hệ sinh thái iOS và Mac OS X. Nhưng...

    [​IMG]
    Lập trình viên iOS vẫn cần biết ngôn ngữ lập trình Objective-C
    Nếu bạn muốn trở thành một lập trình viên iOS thì bạn sẽ vẫn cần biết về ngôn ngữ lập trình Objective-C.
    • Bạn không thể làm mọi thứ trong Swift. Ví dụ, nếu bạn muốn sử dụng một thư viện code C++ trong ứng dụng của bạn, bạn sẽ cần "nói chuyện" với các đối tượng C++ từ Objective-C. Swift có thể gọi các function C, nhưng tôi tin rằng nếu bạn đang làm việc với rất nhiều function và type của C thì bạn sẽ muốn viết code bằng Objective-C.
    • Cộng đồng đang nói chuyện bằng ngôn ngữ Objective-C. Có hàng ngàn đoạn code hữu ích viết bằng Objective-C trênStackOverflow và ở khắp nơi trên các blog của các lập trình viên iOS. Objective-C là ngôn ngữ chúng ta đã sử dụng trong 6 năm vừa qua để làm việc với các thư viện Cocoa Touch. Nếu bạn không thể đọc code Objective-C, bạn sẽ không có khả năng hiểu được những nguồn kiến thức quý báu đó.
    • Các framework được viết bằng Objective-C. Khi bạn có một bug, nó thường không lộ diện cho tới khi thực thi ở mức sâu trong code của Apple. Nếu bạn muốn hiểu điều mà trình debugger đang nói với bạn, thì bạn sẽ cần phải hiểu Objective-C.
    • Objective-C rất ổn định và đã được kiểm thử kỹ càng. Swift trông rất tuyệt, nhưng ngôn ngữ này đang trong quá trình phát triển và trình biên dịch thì chưa thực sự chín muồi. Nếu tôi đang đặt cược lớn vào việc phát triển một ứng dụng trong năm nay, thì tôi vẫn sẽ sử dụng Objective-C.
    Objective-C là ngôn ngữ dễ học hơn Swift.
    • C là một ngôn ngữ lập trình thực sự khá đơn giản, và Objective-C là một sự mở rộng của ngôn ngữ C. Swift có nhiều quy tắc mà Objective-C không có. (Tôi với tư cách là một giảng viên, cũng đang cố gắng để tìm cách làm thế nào để giải thích về những quy tắc xung quanh các biến tùy chọn). Những quy tắc mở rộng đó làm cho trình biên dịch trở nên khá màu mè trong việc ép buộc viết code tốt, nhưng nó cũng đồng nghĩa bạn sẽ cần nhiều thời gian hơn để học về ngôn ngữ này.
    • Objective-C yêu cầu các lập trình viên phải rõ ràng. Ngôn ngữ Swift cho phép trình biên dịch làm nhiều công việc hỗ trợ cho lập trình viên. Điều này thì rất tuyệt - các lập trình viên sẽ phải gõ code ít đi, đúng không? - nhưng nó cũng đồng nghĩa rằng khi bạn nhìn vào một dòng code, nó sẽ không có ý nghĩa nhiều nếu thiếu một sự hiểu biết sâu sắc về ngữ cảnh mà đoạn code ở trong đó. Các ngôn ngữ lập trình rõ ràng thì dễ hiểu hơn đối với người mới bắt đầu.
    • Swift có một số construct mà Objective-C không có. Ví dụ, generic làm việc kiểm tra kiểu (type checking) thì tốt hơn trong Swift, nhưng nó khiến cho ngôn ngữ này trở nên phức tạp hơn đáng kể.
    Một khi bạn đã biết về Objective-C thì việc chuyển sang học Swift sẽ rất dễ dàng.
    • Để Swift có thể hoán đổi qua lại với Objective-C, thì hãng Apple đã tạo Swift giống Objective-C rất nhiều. Các đối tượng, tham chiếu strong và weak, kế thừa thì giống hệt như trong Swift - chúng chỉ sử dụng cú pháp diễn đạt khác nhau mà thôi.
    Thành thật mà nói, việc bạn học ngôn ngữ nào đầu tiên không quan trọng lắm; điều quan trọng là cuối cùng bạn sẽ biết cả hai ngôn ngữ. Và bạn sẽ cần học ngôn ngữ Objective-C.
     

    Bình Luận Bằng Facebook

    data-href="https://cnttqn.com/threads/lap-trinh-vien-ios-can-biet-ngon-ngu-objective-c.2201.html"