5 lý do tại sao tôi lại “rơi vào lưới tình” của Swift?

30

Không nghi ngờ gì nữa, Swift sẽ là ngôn ngữ đầu tiên dành cho những lập trình viên hoàn toàn mới. Bài viết dưới đây liệt kê 5 lý do khiến tác giả bài viết yêu thích Swift. Hy vọng, danh sách này sẽ tạo động lực cho các bạn theo đuổi ngôn ngữ của Apple.

1. Auto-Completion

Ắt hẳn bạn đã trải nghiệm cảm giác dù không nhớ chính xác từ, nhưng khi gõ vài từ khóa lên Google, bạn vẫn có thể tìm ra được câu trả lời.

Tương tự Google, Swift tự hoàn thiện toàn bộ syntax và chỉ rõ functionality của syntax. Gần đây, tôi cũng học Javascript có sử dụng Sublime Text Editor. Tôi nhận ra Swift tiện lợi hơn nhiều vì nó auto-finding giúp tôi nhiều hơn.

2. Instant Reward and Fix

Lợi ích của việc sử dụng Swift chính là môi trường Xcode. Nó không chỉ autocomplete syntax mà còn hiển thị kết quả ngay trong Playgrounds. Playgroungds là 1 extension của Xcode nên bạn có thể viết nhiều dòng codes để test hoặc đơn giản là “chơi đùa” trong Xcode. Nó sẽ chạy Xcode mà không bạn nhấn button, lưu hay refresh.

Khi đã có kết quả, bạn có thể nhận diện vấn đề ngay vào giai đoạn đầu, tránh bị tốn thời gian tìm kiếm các thiết sót có thể dẫn đến hàng tá các lỗi khác. Nếu phát hiện ra lỗi, tôi sẽ sao chép dòng tin đó và dán vào Google. Hầu hết thời gian, tôi dành để tự mình xác định và nghiên cứu vấn đề đó.

3. Drag và Drop

Dù nhiều công ty lớn tránh dùng thao tác kéo – thả để lập trình ứng dụng, nhưng đây là phương pháp tốt để những bạn mới bắt đầu nắm bắt được concept của lập trình iOS. Storyboard là nơi bạn chèn nhiều màn hình. Trong mỗi màn hình, bạn có thể thả các buttons, texts, hình ảnh… . Bạn cũng có thể thay đổi các thuộc tính của những đối tượng này mà không cần viết thêm 1 dòng code đơn nào, khá giống với Photoshop và Powerpoint. Dĩ nhiên, nếu muốn app sinh động hơn, bạn phải dùng đến code. Với những ai đã quen thuộc với UX/UI, thì sẽ yêu thích phương pháp kéo-thả ngay.

Gần đây, tôi quyết định sẽ không dùng Storyboard để thiết kế giao diện người dùng nữa. Tốc độ production dần nhanh hơn khi tôi bắt tay vào gõ các dòng code trên bàn phím. Tất nhiên rất khó xác định phương pháp nào tốt hơn, nhưng những bạn mới lập trình nên khai thác lợi ích hệ sinh thái này để có được 1 giao diện người dùng graphic thân thiện.

4. Những tài liệu/ khóa học online hay

Nếu quyết định học Swift, bạn có thể tìm thấy rất nhiều nguồn tài liệu ở khắp mọi nơi. Tôi đã học qua Youtube, Udacity, Treehouse, Tài liệu chính thống của Apple, Lynda và Udemy.

Khi đã thuần thục các nguồn tài liệu này, tôi bắt đầu tải về các dự án của các lập trình viên, phân tích, mổ xẻ cách họ code. Tôi sao chép style của họ và liên tục nghiên cứu style của mình. Một lợi điểm khác của Swift chính là Apple nắm quyền kiểm soát chặt chẽ các sản phẩm của họ, nên các tài liệu và hướng dẫn của Apple được biên soạn rất tốt để các lập trình viên mới có thể tự học được. Dĩ nhiên, cộng đồng online cũng rất phi thường. Mọi người đều muốn chia sẻ và đóng góp kiến thức cho cộng đồng. Tôi đã học từ những lập trình viên rộng lượng như thế mà không cần có người hướng dẫn kè kè bên cạnh.

5. Chính là nó, Xcode!

Trong 2 tháng qua, tôi bắt đầu học React.js – 1 thư viện lập trình fron-web được Facebook phát triển, hỗ trợ bạn tạo nội dung 1 cách chủ động mà không cần refresh trang. Tuy nhiên có hàng tá các thư viện mà tôi phải nhập vào để tạo được 1 web app to-do list đơn giản.

Thêm nữa, hệ sinh thái front-end web này bị gián đoạn mỗi năm vì nó chủ yếu được lập trình bởi những người nhiệt tình trên toàn thế giới. Có hàng trăm, nếu không nói là hàng ngàn dự án cùng chạy 1 lúc. Đôi khi bạn sẽ thấy rất khó khăn để tiếp cận với những xu hướng mới. Tuy iOS được các kĩ sư Apple lập trình nên và iOS cũng mang đến nhiều tính năng, nhưng khi lập trình web, bạn phải nhập thủ công.

Hệ quả là, tuy iOS gần như không đổi thì hệ sinh thái lập trình front web đã thay đổi rất nhiều, đặc biệt là khi có 1 framework hoặc lib tốt hơn. Nếu bạn chưa gõ “Hello, World” trước đây, bạn chắc chắn sẽ bị bội thực bởi các external software phải dùng. Dĩ nhiên, việc lên kế hoạch tạo 1 website tĩnh với HTML/CSS và Javascript lại là câu chuyện khác

Nguồn: IDE Academy via Medium