Những lưu ý khi tự học iOS

27-09-2015 11:59

5 Bước tự học để trở thành một lập trình viên iOS

Để trở thành một lập trình viên iOS là điều thật tuyệt vời, nhưng tôi nên bắt đầu từ đâu? Ngày nay có rất nhiều tài nguyên học tập hơn bao giờ hết. Điều này có thể là một điều tốt, nhưng cũng là một điểm dở bởi vì bạn rất dễ bị lạc trong một biển thông tin.

Các khóa học tại ITPlus Academy

Khóa học thiết kế đồ họa chuyên nghiệp

Khóa học Illustrator

Khóa học Photoshop

Khóa thiết kế đồ họa chuyên nghiệp

Điều mà tôi sẽ làm ngày hôm nay đó là phác thảo ra một bản kế hoạch cho bạn khi tự học iOS. Đây là một bản kế hoạch mà tôi ước gì một ai đó đã đưa cho mình khi tôi mới bắt đầu học. Bản kế hoạch này sẽ giúp bạn tiết kiệm được cái tài sản có giá trị nhất của loài người: đó là thời gian.

Tôi giả sử rằng bạn chưa có kinh nghiệm về lập trình, nhưng bản kế hoạch này cũng sẽ áp dụng được thậm chí nếu bạn đã là một lập trình viên.

Tôi sẽ cố gắng giữ cho bản kế hoạch này theo hướng giúp bạn có thể bắt tay vào thực hiện nhanh nhất có thể. Ok, nào hãy cùng bắt đầu!

Làm thế nào để trở thành một lập trình viên iOS?

Bước 1: Học về các nền tảng cơ bản của lập trình trước tiên (đối với lập trình viên mới)

Khi mới bắt đầu, tôi đã xem một số khóa học bằng video ngẫu nhiên về C và Objective-C không được cấu trúc tốt và họ đã lược bỏ rất nhiều thông tin quan trọng. Tôi sẽ không đề xuất bạn nên bắt đầu theo cách đó.

Hiện nay tất cả mọi người đều muốn tạo ra các ứng dụng của riêng mình, có rất nhiều khóa học qua video và các cuốn sách nội dung rất dở, được kết hợp lại với nhau chỉ để dạy bạn phần kiến thức tối thiểu nhất. Đủ để cho bạn có thể viết ra một vài ứng dụng đơn giản.

Điều đó cũng tạm chấp nhận được nếu bạn chỉ muốn thử lập trình ứng dụng cho vui, nhưng nếu bạn thực sự muốn nghiêm túc trong việc lập trình, thì bạn nên học các kiến thức nền tảng trước, và bạn cần bắt đầu với một số tài liệu được cấu trúc tốt.

Lý do mà tôi đã phải mất khá nhiều thời gian để hoàn thành ứng dụng đầu tiên của mình chính xác là bởi vì điều đó. Tôi đã không dành thời gian để học về những kiến thức nền tảng. Nếu không có kiến thức nền tảng thì bạn chỉ có thể tiến xa hơn thông qua tìm kiếm trên Google và các câu hỏi trên Stack Overflow.

Bạn cần hiểu điều gì đang thực sự xảy ra phía dưới, và tại sao mọi thứ lại làm việc theo cách mà chúng làm, v.v…

Dù sao, có 2 khóa học mà tôi muốn đề xuất bạn nên học là:

Sách dạy lập trình iOS hay

Tôi có thể dành ra nhiều giờ liền để nói về lý do tại sao tôi lại thích những khóa học này và đã học được điều gì từ chúng, nhưng tất cả tôi có thể nói là bạn dứt khoát nên học nếu là người mới tham gia vào lĩnh vực lập trình. Simon Allardice (@allardice) là một giảng viên tuyệt vời và thường nói rất chi tiết bất cứ khi nào giảng giải về một điều gì đó.

Những khóa học này sẽ dạy bạn những kiến thức nền tảng mà bạn có thể mang theo suốt cuộc đời, và chúng sẽ giúp bạn dễ dàng hơn với bất kỳ ngôn ngữ lập trình nào bạn quyết định làm việc cùng.

Tôi thực sự ước gì mình đã tìm thấy những khóa học này và tham gia học vào những tuần đầu tiên khi tôi mới bắt đầu.

Tôi còn nhớ khi lần đầu tiên tôi đào xới vào các tài liệu của Apple iOS docs, có rất nhiều thứ trong đó mà tôi hoàn toàn chẳng hiểu gì cả.

Nhưng khi tôi đã hiểu về lập trình hướng đối tượng, thì mọi thứ trở nên rõ ràng.

Bước 2: Học ngôn ngữ lập trình Objective-C

Tôi biết là bạn đang nghĩ gì vào lúc này. Bạn đã nghe tất cả những điều đáng kinh ngạc về ngôn ngữ lập trình Swift. Có thể bạn đến từ ngôn ngữ khác mà trông tương tự như ngôn ngữ Swift, vì vậy bạn sẽ cảm thấy thoải mái trong việc học phát triển ứng dụng trên iOS.

Tôi biết là Objective-C trông như là một ngôn ngữ xa lạ khi so sánh với hầu hết các ngôn ngữ khác. Bạn sẽ để ý thấy rằng người ta thích nhảy vào những cuộc tranh cãi trên mạng về chủ đề Swift vs. Objective-C. Bạn có thể đoán được gì? Đó chỉ là những tranh luận làm tốn thời gian. Thay vì đó bạn nên bắt tay vào xây dựng sản phẩm thì hơn.

Đây là lý do tại sao bạn nên học ngôn ngữ Objective-C:

  • Có hàng tấn GitHub repo được viết bằng Objective-C
  • Có hàng tấn câu hỏi trên Stack Overflow được viết bằng Objective-C
  • Có hàng tấn code trước đây được viết bằng Objective-C

Bạn có nhìn thấy điểm chung ở đây không? Khi mới bắt đầu học, bạn sẽ gặp phải những vấn đề rất khó khăn, bạn thà có thể tìm thấy một câu trả lời đã được kiểm chứng qua thời gian bằng 300 upvote và giải quyết vấn đề của bạn, hơn là tốn thời gian quý giá để nghiên cứu chỉ vì bạn đã quyết định bắt đầu với ngôn ngữ Swift?

Nếu mục tiêu cuối cùng của bạn là trở thành một lập trình viên iOS toàn thời gian, thì bạn cần học Objective-C.Nhiều nhà tuyển dụng mong chờ bạn biết về nó, và rất nhiều người trong số họ thậm chí chẳng hề quan tâm về Swift lúc này, bởi vì nó là ngôn ngữ chưa ổn định để người ta đánh cược công việc làm ăn của họ vào đó.

Tin tôi đi, nếu bạn bắt đầu ngay bây giờ với Objective-C, bạn sẽ có một khoảng thời gian dễ dàng và đơn giản hơn. Thêm nữa, Objective-C sẽ không biến mất trong thời gian gần. Nó sẽ còn được sử dụng tiếp tục trong nhiều năm tới.

Bạn nên sử dụng cuốn sách sau đây để học về Objective-C:

Objective-C Programming: The Big Nerd Ranch Guide 2nd Edition

Objective-C Programming: The Big Nerd Ranch Guide 2nd Edition

Cuốn sày này rất tuyệt vời, và những tác giả tại BNR đều có trình độ và rất nổi tiếng. Cuốn sách sẽ giúp bạn đào sâu vào trong Objective-C và khi mà bạn đọc xong cuốn sách đó bạn sẽ cảm thấy làm việc thoải mái hơn nhiều với ngôn ngữ này.

Bước 3: Học phát triển ứng dụng iOS

Bây giờ bạn đã biết về Objective-C, đây là lúc để học về cách phát triển ứng dụng iOS. Bạn nên sử dụng cuốn sách sau đây để học phát triển ứng dụng iOS:

iOS Programming: The Big Nerd Ranch Guide 4th Edition

iOS Programming: The Big Nerd Ranch Guide 4th Edition

Khi bạn hoàn thành cuốn sách này, bạn sẽ trải qua các kiến thức nền tảng của phát triển iOS, bạn sẽ làm ra vô số ứng dụng, và học cách làm thế nào để thực sự xây dựng mọi thứ theo cách đúng đắn.

Cuốn sách này sẽ nghiêm túc mang lại kiến thức nền tảng bạn cần để đi tiếp và bắt đầu xây dựng một số ứng dụng tuyệt vời. Đừng bỏ qua cuốn sách này.

Bước 4: Bắt đầu xây dựng ứng dụng iOS đầu tiên của bạn

Ứng dụng iOS đầu tay

Lúc này, bạn đã xây dựng hàng tấn ứng dụng thông qua các project từ cuốn sách của BNR về phát triển iOS, nhưng đây là lúc để xây dựng một cái gì đó mà bạn thực sự muốn làm. Điều này cần một dự án hoài bão. Nó có thể là một ứng dụng mà bạn luôn muốn nhưng vẫn chưa tìm thấy trên store, hoặc nó có thể thậm chí là một ứng dụng đáng giá hàng triệu đô-la tiếp theo?

Tất cả vấn đề ở đây đó là một cái gì đó mà bạn thực sự muốn xây dựng. Điều này rất quan trọng bởi vì bạn sẽ có một chuyến hành trình dài và gian khó. Sẽ cần nhiều sự khích lệ trên quãng đường đi, nhưng khi bạn đã hoàn thành việc bò qua tất cả những thứ khó khăn này thì bạn sẽ trở thành một lập trình viên iOS đích thực.

Bước 5: Bắt đầu cộng tác với những lập trình viên khác trên GitHub

Cộng đồng lập trình viên iOS

Đây là điều mà tôi thực sự ước mình đã làm sớm hơn và điều tôi cần phải làm nhiều hơn. Thật khó khi bạn phải tung hứng nhiều thứ cùng một lúc vì tất cả chúng ta đều rất bận rộn, nhưng bước đầu tiên này cực kỳ quan trọng và đây là lý do tại sao:

  • Bạn sẽ học cách làm thế nào để sử dụng git source control.
  • Bạn sẽ học cách làm thế nào để phân tích, mổ xẻ, và đọc code của những lập trình viên khác.
  • Bạn sẽ học được cách mà những lập trình viên thông minh và có kinh nghiệm xây dựng ứng dụng như thế nào.
  • Bạn sẽ có khả năng kết bạn với nhiều người mới và thậm chí có thể gặp được ông chủ tương lai của mình.

Tìm kiếm một số dự án iOS hấp dẫn trên GitHub và bắt đầu đóng góp. Chạy ứng dụng đó lên và thử tìm những vấn đề, hoặc tìm một cách để cải tiến hiệu suất của một thư viện nổi tiếng. Thử tìm những cách để tổ chức code tốt hơn. Một số phần code có thể được tối ưu hóa để chạy nhanh hơn. Có thể có một phần nào đó bị chạy lỗi do một cập nhật mới của iOS. Chỉ nên nhớ rằng luôn luôn có những điểm cần phải cải tiến.

Sau đây là một số repos iOS phổ biến trên GitHub để bạn bắt đầu:

  1. WordPress for iOS - Official repository
  2. AFNetworking - A delightful iOS and OS X networking framework
  3. JSQMessagesViewController - An elegant messages UI library for iOS

Nguồn: Sưu tầm

Bài viết cùng chủ đề