07/09/2018, 18:07

Tạo ứng dụng TODO LIST bằng Android và REST API (Phần 1)

Phần này mình sẽ nói sơ qua tất cả các công nghệ mình sử dụng cho dự án và chức năng của nó . Tất cả các công nghệ dưới đây đã được sử dụng thực tế và hòan tòan miễn phí. Lời nói đầu Chào các bạn , đây là lần đầu tiên mình viết bài chia sẽ kinh nghiệm và bài viết này mình viết dựa trên kinh ...

Phần này mình sẽ nói sơ qua tất cả các công nghệ mình sử dụng cho dự án và chức năng của nó . Tất cả các công nghệ dưới đây đã được sử dụng thực tế và hòan tòan miễn phí.

Lời nói đầu

Chào các bạn , đây là lần đầu tiên mình viết bài chia sẽ kinh nghiệm và bài viết này mình viết dựa trên kinh nghiệm thực tế của mình . Mục đích của series này là giúp các bạn beginner Android có một cái nhìn tổng quát và thực tế nhất về cách tạo ra một ứng dụng di động .Bắt đầu bài viết mình sẽ giới thiệu những công nghệ sử dụng cho ứng dụng này .

Yêu cầu

  • Đã biết Java cơ bản và hướng đối tượng trong Java.
  • Biết sử dụng các IDE như Eclipse , Android Studio.
  • Hiểu REST API là một lợi thế.

Công nghệ sử dụng

  • Spring Boot dùng để viết một REST API cho ứng dụng.
  • My SQL để lưu trữ dử liệu.
  • Swagger để viết Document cho API.
  • Android Studio để xây dựng ứng dụng.

Review

alt

1. Rest API là gì ?

alt

Có rất nhiều bài viết về REST API bạn có thể kham khảo trên Google , sau đây mình sẽ nói đơn giản nhất cho các bạn hiểu thì REST API chỉ đơn giản là dùng để giao tiếp giữa ứng dụng và Database thông qua một Webservice . Nó giúp cho ứng dụng lấy và lưu trữ dữ liệu theo dạng Json hoặc XML thông qua URL (tên miền) của Webservice. Nếu các bạn còn mơ hồ thì đừng lo vì lúc đầu mình tìm hiểu hết một tuần vẫn chả hiểu REST API là cái gì , theo dõi hết series này các bạn sẽ hiểu.

Ví dụ :

Khi người dùng muốn đăng ký thì REST API sẽ lấy dữ liệu từ Edit Text chuyển thành dạng Json và lưu trên Webservice sau đó nó chuyển đổi dử liệu từ Json sang ký tự và lưu vào Database

2. Spring Boot Framework

alt

Như ở trên mình nói thì nếu viết API theo cách thông thường thì các bạn sẽ tự code một Webservice khi code xong Webservice các bạn code tiếp API và thư viện sử dụng cho nó thì rất nhiều , lúc đó Project của các bạn rất khó để quản lý . Chính vì lý do đó Spring Boot ra đời , nó sẽ hòan thành tất cả những việc trên thay bạn và bạn chỉ cần tập trung vào viết API thôi , tiện lợi chưa nào .

Vì sao phải sử dụng Spring Boot Framework :

  1. Vì nó miển phí và đuợc chuyên gia đánh giá cao.
  2. Được cập nhật thường xuyên.
  3. Có nhiều người sử dụng.

67% (8/2017) Java Developer sử dụng Spring trong dự án của mình , và Spring Boot Framework là một phần nhỏ trong hệ sinh thái Spring Framework.

3. My SQL

Chắc ai cũng biết My SQL là gì nên mình chỉ nói sơ qua tại sao mình lại sử dụng My SQL :

  1. Vì nó miễn phí và đến từ Oracle.
  2. Tải và cài đặt đơn giản , nhẹ nhàng dễ sử dụng.

Các bạn tải My SQL Database để lưu trử dữ liệu và bản My SQL Workbend để sử dụng bằng giao diện. Các bạn có thể kham khảo trên mạng cách cài đặt.

4. Swagger

alt

Làm thế nào để thành viên khác hiểu đuợc API mình viết và sử dụng nó . Lúc này bạn phải viết một document cho API của mình để mọi developer nhìn vào điều có thể sử dụng đuợc . Viết document API không phải là mở Word lên và gõ chữ đâu vì như vậy sẽ mất rất nhiều thời gian mà đôi khi nguời khác đọc cũng chả hiểu. Do đó Swagger ra đời , nó là một framework mới xuất hiện mạnh mẽ gần đây và được đánh giá rất cao từ các developer tiền bối về tính năng đơn giản , dễ sử dụng của nó.
Nó sẽ tự động giải thích các Request API mình viết và tích hợp trực tiếp trên Webservice để người khác dễ dàng sử dụng nó. Ở các bài viết tiếp theo các bạn sẽ thấy sự kì diệu của Swagger mang lại.

5. Android Studio

Bất cứ một Android Developer nào cũng phải biết sử dụng IDE này vì đây là IDE chuẩn của Android dành cho các lập trình viên và mình cũng chắc rằng ai cũng đã từng sử dụng nó nên mình sẽ nói sơ qua ưu điểm nhược điểm của nó.

Ưu điểm :

  • Hỗ trợ lập trình giao diện khá tốt và đầy đủ.
  • Quản lý các folder chặt chẽ.
  • Tích hợp sẵn SDK và máy ảo để build ứng dụng.
  • Giao diện đẹp , dễ sữ dụng
  • Miễn phí.

Nhược điểm :

  • Phần mềm khá nặng.
  • Máy ảo build khá lâu và chậm , khi thay đổi code phải build lại app.
  • Thiết kế màu sắc cho text code khá xấu.

Hết phần 1

Cảm ơn các bạn đã theo dõi
Ở phần 2 mình sẽ hướng dẫn các bạn viết một Rest API đơn giản để các bạn có thể hiểu được cách thức hoạt động của nó như thế nào.

0