Học lập trình iOS nên chọn Objective-C hay SWIFT?

Thảo luận trong 'Thảo luận học tập chung' bắt đầu bởi halaze, 10/5/16.

  1. halaze

    halaze New Member

    Chào các anh chị, em đang tìm tài liệu học lập trình iOS.

    Theo em biết thì Apple vừa ra mắt ngôn ngữ SWIFT cho iOS8, sắp tới là bộ WatchKit đồng hồ gì gì đó, dành riêng cho Swift thôi. Em có 2 thắc mắc

    - Em phân vân quá, không biết nên chọn Objective-C hay Swift.
    - Em ở TPHCM thì học lập trình iOS để được học Swift

    Cám ơn anh chị nhiều.
     
  2. tranvuthang

    tranvuthang New Member

    Mình khuyên bạn nên học lập trình Swift. Đây là ngôn ngữ tiềm năng, dễ học hơn Objective-C, trong tương lai sẽ thay thế Objective-C. Sẽ rất ổn nếu bạn tự học, học từ đầu ngay từ bây giờ. Ngoài ra, mình có một số thông tin cho bạn tham khảo:

    Những lợi ích của Swift
    • Khả năng phát triển ứng dụng di động và kiểm tra thành quả của mình theo thời gian thực sẽ giúp cho quá trình code của các lập trình viên trở nên nhanh và dễ dàng hơn rất nhiều. Ngoài ra, việc không phải chạy chương trình compiler và các chương trình test quá thường xuyên cũng sẽ tiết kiệm được sức mạnh phần cứng cho nhà phát triển. Thay vì tập trung kiểm tra, thử nghiệm các tính năng nhỏ lẻ, lập trình viên Swift có thể dành nhiều thời gian để thực hiện các bài test ở mức độ tích hợp cao hơn một cách kỹ càng hơn.
    • Lợi ích thứ 2 của Swift là các dòng code rất ngắn và dễ đọc. Trong bài trình bày của Apple, 3 dòng code Objective C có thể gói gọn vào 1 dòng code Swift. Điều này sẽ đẩy nhanh quá trình phát triển ứng dụng và tăng hiệu quả cho quá trình bảo trì/vá lỗi trong tương lai.
    • Swift hoạt động tương tự một phiên bản Objective C đơn giản, với các lớp đối tượng được đơn giản hóa, và các dòng mã được sắp xếp hợp lý. Với Swift, Các nhà phát triển sẽ có môi trường runtime tương tự Objective C, do vậy nó rất quen thuộc và dễ quản lý.
    • Ngoài sự đơn giản và phương thức sắp xếp hợp lý hơn cho việc sáng tạo ứng dụng, X Code runtime được thực hiện trong thời gian thực cho Swift. Viết một dòng mã và nhận được kết quả trong thời gian thực, và hình ảnh cũng có thể được xem từ bên trong IDE. X Code cũng sẽ dựng các kịch bản(script) thực hiện trong các ứng dụng, vì vậy theo Apple nói thì lập trình viên có thể quản lý tốt hơn một ứng dụng để tránh sự cố tràn bộ nhớ.
    • Swift có thể làm việc liền mạch với Objective C, vì vậy các ứng dụng hiện tại có thể được cập nhật bằng Swift. Các nhà phát triển cũng có thể sử dụng các công cụ hữu ích của Objective C ngay chính trên Swift (có thể sống chung với mã C và Objetive-C trong cùng một ứng dụng).
    • Swift tạo ra các ứng dụng có sức ép phần cứng thấp hơn Objective-C, chúng ta sẽ được tận hưởng trải nghiệm game ấn tượng hơn trên các thiết bị iOS.
    Điểm yếu của Swift
    • Điểm yếu lớn nhất của Swift có lẽ sẽ là tuổi đời quá trẻ của ngôn ngữ lập trình này. Cụ thể hơn, để sử dụng Swift, các nhà phát triển sẽ phải học lại một ngôn ngữ lập trình hoàn toàn mới. Và cộng đồng cũng chưa có nhiều, Các nhà phát triển ứng dụng iOS sẽ mất một khoảng thời gian đáng kể để làm chủ ngôn ngữ mới của Apple.
    • Do vẫn còn đang trong giai đoạn phát triển nên còn non trẻ cần có thời gian để cộng đồng kiềm nghiệm và đánh giá ưu/nhược và tính hiệu quả so với Objective C có tuổi đời trên 30 năm.
     
  3. anhsontran

    anhsontran New Member

    Theo mình thì bạn nên biết cả hai. Phải một thời gian nữa Swift mới thay thế hoàn toàn objC dc. Hơn nữa nếu đã biết một trong hai thì cũng sẽ dễ dàng học cái còn lại.
     
  4. haong

    haong New Member

    Học một cái cho thành thạo, ban đầu không biết gì sẽ rất dễ học, nếu không có Swift thì lựa chọnObjective-C không có vấn đề gì, nhưng đã có Swift rồi thì không nên học cái gì cả hai cái cả, Swiftthẳng tiến.
    Đặt trường hợp bạn chưa biết dùng Word đi, một cái Word 2013 và Word 2003 bạn sẽ chọn cái nào? Nếu chọn Word 2013 học trước thì dùng lại Word 2003 bạn sẽ thấy thế nào; và rồi học Word 2003 rồi mới học Word 2013 bạn có cảm thấy phí thời gian không? Hãy chú tâm vào mục đích cuối cùng của bạn khi học là gì? Hãy suy nghĩ về lời khuyên của mình.
     
  5. thanhth

    thanhth New Member

    Switf viết dễ hơn nhưng k0 có nghĩa là bỏ qua Objective-C, nó là căn bản của iOS Dev đó
     
  6. lienmb

    lienmb New Member

    minh khuyen bạn nên học unity, và Objective-C
     
  7. mybt

    mybt Tư vấn viên tại Stanford Thành viên BQT

    Thực ra cũng chỉ là 1 cách viết thôi, các thư viện gần như là giống nhau. Swift hay Objective-C đều được cả. Học được 1 rồi thì chuyển qua cái kia cũng nhanh lắm
     

Chia sẻ trang này