Hôm nay là thời điểm tốt nhất để học lập trình Android

Hôm nay là thời điểm tốt nhất để học lập trình Android

Nếu bạn đã suy nghĩ về việc học lập trình Android nhưng chưa biết bắt đầu từ đâu, thì bây giờ là lúc tốt nhất để làm việc ấy. Hãy để tôi phân tích cho bạn biết tại sao lại như thế nhé.

Hệ điều hành Android đang phát triển ổn định

Kể từ ngày ra mắt đến nay, hệ điều hành Android đã có tuổi đời ngót nghét hơn 11 năm. Sau từng ấy năm, Android đã có được những tiến bộ vượt bậc trong quá trình phát triển và cải thiện hiệu năng. Được đánh giá và thống kế với danh hiệu nền tảng mobile có nhiều ứng dụng nhất trên thế giới, Android đã khẳng định được được sự tin dùng từ khách hàng và cộng đồng phát triển.

Hàng tá các công nghệ, framework, thư viện lập trình được thêm mới, cải tiến ngày đêm từ chính Google cũng như hàng triệu lập trình viên tài năng trên thế giới. Chính điều này đã góp phần khiến cho việc tiếp xúc và học hỏi cách phát triển ứng dụng mobile trên Android càng ngày càng dễ dàng tiếp cận đa số cộng đồng lập trình viên mới.

Tuy nhiên, trong năm ngoái kia(năm 2017) rất nhiều thành phần cốt lõi trong quá trình phát triển ứng dụng trên Android được định nghĩa lại như: ngôn ngữ Kotlin, Android Jetpack, khung cấu trúc phát triển MVVM, AI, Cloud … nhưng vẫn giữ lại những tinh túy và cốt lõi khi xưa. Điều này càng khiến cho đa số mọi người hứng thú với việc làm quen và phát triển trên hệ sinh thái Android.

Sự cải tổ các tính năng này không phải là đập bỏ những cái cũ. Team android của google đã giữ lại những ưu điểm những tinh túy của hệ thống cũ, phát triển thêm trên đó để tạo bước nhảy vượt bậc. Cùng điểm lại những cái mới của android trong năm nay:

Ngôn ngữ lập trình Kotlin

Kotlin không phải là một ngôn ngữ hoàn toàn mới nhưng với tư cách là một ngôn ngữ được Google ưu tiên nhất trên Android. Ngôn ngữ này mang đặc điểm ngắn gọn, xúc tích nhưng lại mạnh mẽ vượt trội. Mặc dù chỉ mới nổi trong vài năm(2 năm) nhưng nó đã được đa số người dùng(các lập trình viên) xem như một hot trend hấp dẫn trong quá trình phát triển ứng dụng. Trong khi một số lập trình viên vẫn tìm kiếm sự ổn định của JAVA, một phần không nhỏ trong công đồng viên lập trình Android đang có xu hướng chuyển giao sang Kotlin.

Tiếp cận với ngôn ngữ mới là tiếp cận với tư duy mới cũng như các kỹ thuật mới từ đầu. Một lập trình viên Kotlin mới sẽ không phải ná thở chạy đua nước rút với các lập trình viên Java lâu năm đầy kinh nghiệm trong các dự án Android được viết bằng Kotlin. Bạn sẽ không thấy yêu cầu về nhiều năm kinh nghiệm(5 năm chẳng hạn) cho một tin tuyển dụng tìm kiếm lập trình Kotlin.

Dễ dàng chuyển đổi nền tảng từ IOS sang Android.

Một thay đổi sáng giá mà Kotlin đem lại là tạo sức hút chuyển đổi nền tảng cho các các lập trình viên IOS. Swift và Kotlin có rất nhiều nét tương đồng trong cú pháp cũng nhưng các khái niệm tiếp cận. Nếu bạn tình cờ có nền tảng học tập iOS, tiếp xúc Kotlin sẽ không mất nhiều thời gian. Các ngôn ngữ rất giống nhau về cú pháp nhưng thậm chí nhiều hơn trong các mô hình lập trình. Bất kỳ nhà phát triển Swift nào cũng sẽ cảm thấy như ở nhà trong Kotlin.

Ngoài ra nếu bạn tinh ý nhận xét bạn cũng sẽ thấy rằng hiểu được Kotlin cũng đem lại lợi thế lớn cho bạn khi chuyển đổi từ Android sang IOS.

Layouts — ConstraintLayout

Ngày xưa trong biết bao nhiêu năm phát triển, mục tiêu xây dựng một giao diện chuyên nghiệp, hoàn hảo với bố cục chỉnh chu trên Android rất mất nhiều thời gian. Hàng loạt các thư viện, controllers được phát triển để hoàn thành nhiệm vụ này. Tuy nhiên mãi đến khi Layouts — ConstraintLayout được giới thiệu với đông đảo người dùng đã loại bỏ sự chậm chạp nặng nề của RelativeLayout.

Đầu năm 2017, Google đã giới thiệu bản phát hành ổn định đầu tiên của ConstraintLayout. Layout không có gì mới, bố cục sắp xếp dựa trên thuật toán Cassowary từ những năm 1990. Tuy nhiên controller này đã giải quyết được hàng loạt các khuyết điểm khi thiết kế giao diện trên Android. Học sử dụng ConstraintLayout rất dễ. Bạn sẽ không phải biết tất cả các hàm, các lệnh để có thể sử dụng nó. Chỉ cần bắt đầu và bạn sẽ thấy mình có khả thay thế gần như tất cả các bố cục khác bằng cái mới này.

Một lần nữa, nếu bạn đến từ thế giới iOS, bạn sẽ nhận ra sự tương đồng giữa AutoLayout iOS và Android ConstraintLayout. Tuy nhiên, hãy cẩn thận để không mang theo những giới hạn kích thước màn hình nghiêm ngặt trên các thiết bị Iphone.Các thiết bị Android có kích thước màn hình vô hạn, bạn phải tận dụng được những gì ConstraintLayout mang lại và tạo điều kì diệu từ nó.

Android Architecture Components

Trong quá khứ phát triển Android, dường như Google đã phải dành tất cả thanh xuân, tâm huyết để chạy theo người hàng xóm IOS của mình. Không một thư viện , hay các gợi ý, hoặc bất cứ thông tin gì về việc chuẩn hóa cấu trúc phát triển trên Android. Cách tiếp cận của họ là khung là công cụ và cách bạn sử dụng nó tùy thuộc vào bạn. Điều này cũng tốt, bạn có khả năng bố trí và tổ chức ứng dụng theo kinh nghiệm của bạn. Tuy nhiên, đối với những người mới, điểm này khiến cho việc tiếp cận của các lập trình viên thiếu kinh nghiệm trở thành thảm họa. Cách tiếp cận từ hai nhóm lập trình viên này tạo nên một sự hỗn loạn đáng kể trong quá trình phát triển.

Điều này dẫn đến sự đa dạng quá lớn của các phương pháp tiếp cận trong các công ty khác nhau. Khi gia nhập một công ty mới, câu hỏi đầu tiên luôn là: Bạn sử dụng loại kiến ​​trúc và công cụ nào? Câu trả lời khác nhau từ đơn giản đến triển khai event bus và RX và hơn thế nữa. Điều này cũng tạo ra những hạn chế hoặc vấn đề kỳ lạ khi tìm việc. Một số công ty ưa thích các công cụ mà bạn ghét (RX) và một số công cụ phù hợp hơn.

Google giới thiệu “Android Architecture Components . Đây là một tập hợp các components và thư viện hướng dẫn các nhà phát triển đi đúng hướng khi xác định cách thức. Ví dụ, dữ liệu sẽ chảy qua ứng dụng. Những thứ như LiveData và ViewModels là một số cách cốt lõi để xử lý các vấn đề phổ biến liên quan đến dữ liệu. Chúng đơn giản và thường được sử dụng. Bạn không còn phải chuẩn bị cho một cuộc phỏng vấn xin việc bằng cách ghi nhớ vô số thư viện của bên thứ 3 và các khung công tác hip hip mới nhất mà thay vào đó, việc nghiên cứu các thành phần Arch là đủ. Khi được hỏi về tác vụ nền tảng Android nếu bạn biết WorkManager bạn sẽ rất hiếm khi trả lời sai.

Lợi ích của các thành phần kiến ​​trúc tiêu chuẩn tự nhiên vượt xa lợi ích cho các cuộc phỏng vấn việc làm. Tham gia các dự án nguồn mở dễ dàng hơn, bắt đầu các dự án của riêng bạn nhanh hơn vì bạn có thể chỉ cần đi với LiveData cho hầu hết các trường hợp sử dụng khi xử lý các UI bất đồng bộ.

Những điểm cải tiến khác

Chỉ cần năm bắt  3 điều trên: Kotlin, Contraint Layout, Android Architecture Components sẽ không giúp bạn trở thành nhà phát triển Android chuyên nghiệp. Bạn vẫn sẽ cần tìm hiểu các API  và các công cụ Android Studio, v.v. Tuy nhiên, một khi bạn đã bắt đầu với 3 điều trên, phần còn lại sẽ đến với bạn tự nhiên theo thời gian. Tiếp cận một kiến ​​thức cơ bản vững chắc bây giờ dễ dàng hơn trước.

Tóm lại:

Hệ sinh thái nhà phát triển Android đã được thiết lập lại và tiêu chuẩn hóa và ngay cả những nhà phát triển Android có kinh nghiệm nhất cũng đã học hỏi được từ đầu. Đối với một nhà phát triển mới, hệ sinh thái nhà phát triển Android bây giờ thân thiện hơn nhiều so với trước đây. Ngôn ngữ mới, hệ thống bố trí chính mới và cách tiếp cận kiến ​​trúc tiêu chuẩn hơn. Chưa bao giờ là thời điểm tốt hơn để trở thành nhà phát triển Android hơn bây giờ!

Bài sau →