Bạn yêu thích viết những ứng dụng cho điện thoại Android. Nhưng lại chưa có những định hướng để bắt đầu tìm hiểu và học để lập trình ứng dụng Android. Trong bài viết này, mình sẽ chia sẻ những điều mình đã tích luỹ trong vài năm viết ứng dụng cũng như tổng hợp lại những hướng dẫn định hướng bắt đầu lập trình Android mà nhiều người chia sẻ trên mạng.

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

Ngôn ngữ lập trình chính của Android vẫn là Java. Bên cạnh đó, Android còn được viết bằng Kotlin nhưng cũng dựa trên Java. Do đó, khởi đầu bạn hãy học và nắm vững kiến thức Java là tốt nhất. 

Cài đặt Android Studio IDE và Bắt đầu với Android

  • Android là gì? Làm thế nào ứng dụng Android chạy được?
  • Cài đặt Android Studio như thế?
Đó là những điều bạn cần tìm hiểu trước khi đến với Android. Những khái niệm về Android, cách ứng dụng Android đã được rất nhiều các anh/ chị khác chia sẻ nhiều trên mạng, các bạn có thể dựa trên những câu hỏi đó để tìm hiểu thêm. Còn cài đặt Android Studio, mình đã chia sẻ trong bài viết trước đó.

Xem thêm: Cài Đặt Android Studio

Những thành phần có trong Android

  • Activity là gì?
  • Thiết kế UI — User Interface
  • View là gì and hoạt động ra sao?
  • Thế nào là một Intent?
  • Activity Lifecycle.
  • Dialog UI.

Shared Preferences

Bạn có thể  lưu trữ những dữ liệu mà bạn không muốn mất đi cho dù tắt app thì hãy sử dụng Shared Preferences.

RecyclerView

Đây có thể là một trong những thành phần phổ biến nhất. Khi bạn sử dụng các ứng có những phần giống như nhau và có thể cuộn lên xuống, trái phải được. Tất cả đó hầu như được tạo nên từ RecyclerView.
Một ví dụ là những ứng dụng chat sử dụng RecyclerView là nhiều nhất.

Singleton, Process, and Thread

Nếu bạn tận dụng tốt những cái này sẽ giúp cho app của bạn chạy mượt mà nhanh hơn. Từ đó, app có được một trải nghiệm người dùng tốt.

Tích hợp Cơ sở dữ liệu

Android có sẵn Cơ sở dữ liệu local dành cho bạn để sử dụng trong apps. Một vài ví dụ như SQL Lite, Room, Realm. Bạn có thể tìm hiểu những cơ sở dữ liệu này khi bạn muốn lưu trữ một lượng data ở dưới apps lớn. Còn nếu không bạn vẫn có thể sử dụng Shared Preferences nhưng không đảm bảo về độ tối ưu truy xuất khi lương data nhiều.

Permissions and Image Loading

Để đảm bảo tính bảo mật và riêng tư của người dùng. Android luôn yêu cầu bạn phải xin quyền trước khi một làm một việc gì đó. Hãy tìm hiểu về cách xin quyền trên Android, ví dụ như: vị trí của bạn, mạng, camera,...

Để hiện thị một hình ảnh nào đó, hãy sử dụng đến một trong 2 thư viện hay dùng nhất là GlidePicasso.

Work Manager

Sử dụng Work Manager hoặc NewsApp, nếu bạn muốn ứng dụng cập nhật những dữ liệu mới vào một thời điểm cụ thể nào đó.

Thông báo - Notification

Hầu hết các ứng dụng Android đều cung cấp tính năng nhận thông báo nhằm giúp người dùng nhận được thông tin mới nhất.

Networking

Bạn muốn ứng dụng nhận data từ server. Hãy tìm hiểu về nó nha. Một vài thư viện bạn nên tham khảo: Retrofit, OkHttp, RxJava,...

ViewPager and Fragment

Hai thành phần này như cặp bài trùng luôn đi chung với nhau. Một ví dụ điển hình là ứng dụng Facebook, có nhiều phần khác nhau như: Home, bạn bè, thông báo,... Mỗi phần có giao diện khác nhau là nhờ có Fragment và quản lí những Fragment đó là ViewPager.

Activity chứa những Fragment. Do đó, bạn có thể sử dụng nhiều Fragment khác nhau và cho vào cùng Activity vẫn được nhưng chỉ nên hiển thị một Fragment duy nhất trong cùng 1 lúc.

Debugging and APK Release

Debugging là phần hỗ trợ bạn rà sót lại ứng dụng và tìm lỗi cũng như giải quyết những lỗi đó.

Sau khi bạn hoàn tất một apps, tất nhiên phải phổ biến ứng dụng đến mọi người đúng không? Đây là phần xuất APK Release để publish. Ví dụ đưa app lên CH Play, hay chỉ là chia sẻ file apk thôi.

Yếu tố khác

  • Thế nào là Context?
  • Object-Oriented Programming - OOP (Lập trình hướng đối tượng).
  • Class Design and Structure.
  • File System, Read, Write, Assets read write.
  • ConstraintLayout in Android.
  • Canvas API in Android.
  • Custom View.
Những yếu tố khác này góp phần giúp bạn viết một ứng dụng hoàn chỉnh hơn.

Tóm lại

Trên đây, mình đã chia sẻ ngắn gọn những phần mà mình thấy thường sử dụng nhiều nhất. Ngoài khác, nếu bạn một trải nghiệm một điều gì mới mẻ hơn hãy bắt đầu thử sức với Kotlin.

Post a Comment

Mới hơn Cũ hơn