Trong rất nhiều các ngôn ngữ lập trình khác nhau, hiện nay rất nhiều bạn chọn iOS là con đường phát triển nghề nghiệp của mình. Còn bạn thì sao? Nếu còn đang phân vân thì bài viết này dưới đây sẽ đưa ra một vài thông tin cần thiết giúp bạn đưa ra quyết định cho riêng mình nhé. Với các bạn đã hạ quyết tâm thì cùng đọc để xem chúng mình cần chuẩn bị hành trang ra sao nào.

 

1. Chọn iOS – Tại sao?

Như các bạn đã biết, nghề IT bao gồm rất nhiều mảng ngành nghề khác nhau, với những ngôn ngữ lập trình khác nhau. Và khi đứng trước quyết định phải chọn một ngôn ngữ để tìm hiểu và theo đuổi, điều gì khiến bạn chọn việc lập trình iOS?

Điều đầu tiên phải nhắc đến ở đây là sự bùng nổ của xu hướng mobile hoá hiện nay. Trong thời đại công nghệ số đang ngày càng lan toả, sự phát triển của nền tảng mobile là một điều tất yếu. Lợi thế của mobile là sự di động và khả năng cá nhân hoá. Vượt trên mọi chiếc máy tính hay laptop, điện thoại di động luôn đi theo bạn mọi lúc mọi nơi, hiểu hành vi thói quen của bạn. Điều này không chỉ mang lại sự tiện dụng cho bản thân người dùng, mà đối với chính các nhà cung cấp dịch vụ, các nhà phát triển, đó cũng là cơ hội rất lớn để tiếp cận lượng người dùng khổng lồ này. Chính vì vậy, ngày nay, phát triển sản phẩm trên nền tảng mobile đang là xu thế của rất nhiều mảng dịch vụ.

Nhưng tại sao nên chọn iOS thay vì các hệ điều hành khác, như Android, hay Hybrid? Trước hết, nếu so sánh với ứng dụng Hybrid, một ứng dụng iOS native sẽ có những ưu điểm về sự ổn định, mượt mà, khả năng tối ưu hoá hiệu năng của thiết bị cũng như trải nghiệm của người dùng. Còn nếu so sánh với Android, thực tế hiện nay, cả hai nền tảng di động này đều đã phát triển ổn định và nhu cầu của thị trường rất lớn. Tuy nhiên, trong thực tế, rất nhiều doanh nghiệp chọn iOS là nền tảng đầu tiên khi họ có nhu cầu phát triển ứng dụng mobile. Nguyên nhân bắt nguồn từ sự ổn định và hiệu quả thu được từ thực tế. 

2. Thiết bị sẵn sàng

Một trong những khó khăn lớn nhất ngăn cản bạn đến với nghề lập trình iOS chính là thiết bị. Để có thể bắt tay vào tìm hiểu ngôn ngữ lập trình này, bạn cần một chiếc máy tính chạy MAC OS.

Nếu như trước đây, giá của một chiếc máy tính mang thương hiệu Apple có giá tương đối đắt đỏ, không phù hợp với các bạn sinh viên đang trong ghế nhà trường hoặc mới ra trường, thì hiện nay, tình hình đã thay đổi khá nhiều. Bạn hoàn toàn có thể mua một chiếc Macbook cũ, với mức giá trên dưới 10 triệu đồng, hoàn toàn đáp ứng được nhu cầu học lập trình iOS. Bạn cũng có thể sử dụng một chiếc máy tính mang thương hiệu bình thường và cài MAC OS theo hình thức Hackintosh. Tuy nhiên, điều này sẽ khiến bạn gặp nhiều những khó khăn khác, như việc máy không hỗ trợ nhiều phần cứng cũng như khả năng cập nhật lên hệ điều hành mới. Theo ý kiến cá nhân tác giả, bạn hãy cố gắng trang bị cho mình một chiếc Macbook, với năm sản xuất khoảng từ 3 năm trở lại là tốt nhất.

Ngoài máy tính, một điều không thể thiếu với một lập trình viên mobile nói chung, cũng như lập trình viên iOS nói riêng, đó là thiết bị test. Để bước đầu tìm hiểu iOS, bạn hãy trang bị cho mình một chiếc iPhone. Ngày nay, việc sở hữu iPhone đã không còn là điều gì quá xa xỉ với đại đa số người dân Việt Nam. Chỉ cần từ 3-5 triệu đồng, bạn đã có một chiếc iPhone đủ để vọc vạch lập trình iOS.

3. Tìm hiểu nguyên tắc lập trình

Cũng như tất cả các ngôn ngữ khác, để học một ngôn ngữ lập trình, bạn cần có kiến thức cơ bản về lập trình. Điều này giống như việc bạn học bảng chữ cái khi muốn học một ngoại ngữ mới. Với đại đa số sinh viên công nghệ, các bạn đều đã được trang bị kiến thức đó từ trường đại học. Những câu lệnh if else, switch case hay vòng lặp for, while,.. các bạn chắc hẳn đã được học. Như vậy các bạn đã nắm trong tay 50% khả năng để trở thành lập trình viên iOS rồi. Hãy tự tin rằng, các ngôn ngữ lập trình đều giống nhau về tư tưởng, sự khác biệt chỉ nằm ở cách trình bày mà thôi.

4. Học cách sử dụng xCode

Với bất cứ ngôn ngữ lập trình nào, IDE là công cụ hỗ trợ đóng vai trò vô cùng quan trọng mà nếu thiếu, năng suất lao động sẽ không thể hiệu quả. Với lập trình viên iOS, xCode là một công cụ như vậy. Gần như tất cả lập trình viên iOS trên thế giới đều sử dụng xCode để lập trình iOS. Apple đã xây dựng và cung cấp một bộ IDE tuyệt vời cho các lập trình viên của mình. Không chỉ hỗ trợ coding hay debug, bạn còn có thể thực hiện rất nhiều tác vụ với xCode như merge source code, trích xuất ipa hay đẩy bản build lên Apple Store,… Bạn sẽ không thể nào viết đúng viết đẹp nếu không biết cách sử dụng chiếc bút. Thế nên, hãy mở xCode và thử sử dụng tất cả những gì có thể, với sự tò mò, hiếu kì của một đứa trẻ.

Bạn có thể tải về xCode từ AppStore của Apple, hoàn toàn miễn phí ở đây.

5. Quyết định học Objective C hay Swift

Nếu như trước đây, nhắc đến lập trình di động iOS, người ta chỉ có một sự lựa chọn duy nhất, Objective C, thì ngày nay, Swift đang ngày càng trở nên phổ biến và thay thế dần Objective C truyền thống.

Theo ý kiến của một số người, ngôn ngữ Objective C quá dài và khó nhớ. Tuy nhiên, với người làm iOS lâu năm, đó lại là lợi thế không nhỏ của Objective C. Việc viết các câu lệnh dài khiến chúng ta rất khó để nhớ chính xác, tuy nhiên, cách viết gần gũi với ngôn ngữ tự nhiên lại giúp cho lập trình viên có cảm giác viết code như viết văn vậy. Điều này cũng giúp cho việc đọc hiểu source code dễ dàng hơn, bớt nhàm chán hơn.

Với việc phát triển Swift, Apple đã góp phần tinh giản đi lượng source mà lập trình viên phải viết, tăng cường tính chặt chẽ trong quy trình phát triển, giúp giảm bớt thời gian phát triển một sản phẩm. Tuy nhiên, như đã nói ở trên, dù là Objective C hay Swift, tư tưởng vẫn vậy, chỉ có cách trình bày là khác nhau. Nếu bạn mới bắt tay vào học lập trình iOS, hãy chọn Swift, vì đây sẽ là tương lai của lập trình iOS.

6. Học lập trình iOS

Sau khi có được kiến thức căn bản, hãy bắt tay vào tìm hiểu lập trình iOS. Với kinh nghiệm của bản thân cũng như từ nhiều lập trình viên khác, việc học theo các tutorial là một phương pháp học hiệu quả. Hiện nay, trên mạng internet, rất nhiều trang tutorial dạy cách lập trình iOS nổi tiếng, được nhiều người biết đến. Sau đây là một số trang để các bạn có thể tham khảo:

Ray Wenderlich: Trang web chứa rất nhiều bài học từ cơ bản đến nâng cao cho người mới học iOS cũng như cung cấp kiến thức nâng cao cho người làm iOS lâu năm. Cá nhân tác giả rất thích cách viết tutorial của trang này, rất dễ hiểu và có tính hệ thống.

APPCODA: Một trong những trang chứa nhiều hướng dẫn lập trình iOS nhất hiện nay, cung cấp lượng kiến thức phong phú và được cập nhật thường xuyên.

TUTSPLUS: Bạn có thể tìm kiếm rất nhiều nội dung để hoàn thành giấc mơ trở thành lập trình viên iOS ở đây. Hãy đi từng bước một, bạn sẽ thấy mình trưởng thành qua mỗi bài học.

Ngoài ra, bạn có thể tham khảo các video hướng dẫn rất sinh động, trực quan của Apple hay trên trang mạng Youtube. Tuy nhiên, từ các tutorial đó, hãy cố gắng áp dụng và phát triển thêm nhiều hơn nữa để hiểu rõ về nội dung bài học.

7. Tầm quan trọng của Source Code

Với nhiều lập trình viên ngôn ngữ khác, việc lập trình iOS có vẻ rất dễ dàng và nhàn hạ, với việc kéo và thả các control lên giao diện. Tuy nhiên, để nắm rõ nguyên lý của việc đó cũng cần nhiều thời gian tìm hiểu.

Với những người bắt đầu học một ngôn ngữ mới, việc tự mình viết source code sẽ giúp bạn ghi nhớ và hiểu sâu hơn về nguyên lý hoạt động của các thành phần trong ngôn ngữ đó. Dù rằng việc đó có tốn nhiều thời gian hơn, nhưng sẽ rất tốt cho việc học của bạn. Hơn nữa, viết source code giúp cho việc xử lý linh hoạt hơn, có thể xử lý được nhiều trường hợp phức tạp hơn so với việc kéo thả

Một khi đã hiểu rõ và ghi nhớ được rồi, bạn cũng nên thử kéo thả , sử dụng Interface Builder (XIB, StoryBoard). Đó là những công cụ mới hơn, cho phép tăng năng suất làm việc, giảm số lượng code mà lập trình viên phải viết. Điều này đặc biệt hữu ích khi sử dụng autolayout để hỗ trợ các loại thiết bị có kích thước màn hình khác nhau.

8. “Bucket list” kiến thức iOS bạn cần biết

Việc học lập trình iOS bao gồm quá trình tìm hiểu và nắm bắt rất nhiều kiến thức khác nhau của hệ thống. Tuy nhiên, với những người mới học, việc đánh giá độ ưu tiên của các kiến thức này khá khó khăn. Cái nào thực tế sử dụng nhiều, cái nào hay nhưng ít áp dụng, khó mà phân biệt được. Hiện nay, một số mảng kiến thức cần thiết của một lập trình viên iOS có thể kể đến như sau:

- Hiểu và sử dụng được các control của hệ thống: label, button, table view, collection view, navigation controller, tab bar,…

- Hiểu về các phương thức truyền thông điệp trong ứng dụng: delegate, KVO, notification,…

- Hiểu và sử dụng được các cách lưu trữ dữ liệu trong ứng dụng với NSUserDefault, file, CoreData,…

- Biết cách sử dụng StoryBoard, Interface Builder, Autolayout, Auto resize

- Sử dụng được một số framework hệ thống như MediaPlayer, Location, MapKit

- Hiểu cơ chế hoạt động và xử lý được các tác vụ với APNS

9. Tham gia khóa học iOS tại Techmaster VietNam

Lộ trình iOS Swift 3 tháng từ căn bản

- Khóa học đào tạo từ cơ bản (dành cho người mới bắt đầu) đào tạo từ căn bản đến nâng cao, hoàn chỉnh giao diện UI/UX

- Sau khóa học sinh viên sẽ code được một ứng dụng từ A-Z, có thể đưa lên App Store. Sinh viên đủ kiến thức cơ bản để ứng tuyển vào các vị trí IOS Developer tại các công ty

Liên hệ tư vấn khóa học: Ms Mẫn 0963023185 (zalo)

Lớp iOS
Lớp iOS