Introduction to course — Android + AWS Course 1 — Demo, Flows, Architecture, Technologies

Palash Kosta
2 min readNov 19, 2019

--

#This is the part-1 of the course — Android + AWS Course 1.

#Learning— This part will provide you the details on the use cases, demo, architecture and tools/technologies that we are going to use through out this course to implement the final project.

The video of complete demo for the project/course (mobile application and AWS console changes) is mentioned at the bottom of this article.

#Use Case for this course — We are going to build a Movie Android Mobile Application with real time data stored in AWS cloud using server-less technologies. We will implement both front-end and back-end of the project. First, we will be acting as back-end developer and develop the APIs (end-points) which will be provided to front-end developers. And then we will be acting as a front-end developer to create the mobile application (UI) and consume the APIs to handle the real time data.

#Feature of the mobile application

  1. User can view all the movies on the main screen
  2. User can view details of the particular movie
  3. User can create a movie from the mobile application
  4. User can delete the particular movie
  5. User can update the rating of the particular movie

#Demo (Mobile Application — UI) —

short demo of mobile app only

#Architecture —

#Tools and Technologies (Back-End) —

  1. API Gateway — To manage the APIs. It maps the end-point to lambda function to execute.
  2. Lambda Function — To execute the code at back-end (back-end coding). We are going to use NodeJs language to write back-end code.
  3. DynamoDB — To store the data permanently (NoSql DB).
  4. Swagger — To define the service end-point, request parameters and expected response. We will use YAML language in swagger tool to create the swagger file. Swagger file can be imported directly to create end-points in API Gateway. Swagger file is also considered as the contract between front-end development team and back-end development team.

#Tools and Technologies (Front-End) —

  1. Android Studio — IDE to develop android mobile applications.
  2. Android Architecture Components — ViewModel and LiveData — To architecture the mobile application better (on the UI side).
  3. Retrofit library — A networking library to call the APIs end-points to get and manipulate the data stored in the server.
  4. Picasso — A image loading library which can load the images asynchronously displayed on the list view.

I would recommend to watch the video to get the better understanding of the course/project:

Demo of complete course/project

In the next article/video, we will discuss “Introduction to back-end technologies and why serverless computing for this course”.

Thanks for reading this article!

Part-0 — https://medium.com/@kosta.palash/welcome-to-the-android-aws-course-1-7380ddaa8234

Part-2 — https://medium.com/@kosta.palash/back-end-why-serverless-computing-for-this-course-6c0cce0020ae

--

--

Palash Kosta

Google Certified Android App Developer | AWS developer | Angular Developer | Programmer | Learner