About This Course
This Specialization enables learners to successfully apply core Java programming languages features & software patterns needed to develop maintainable mobile apps comprised of core Android components, as well as fundamental Java I/O & persistence mechanisms.
The Capstone project will integrate the material from throughout the Specialization to exercise and assess the ability of learners to create an interesting Android app by applying knowledge and skills learned including Java programming features, Android Studio tools, Android Activity components, Material Design, file I/O and data persistence, unit testing, and software patterns. The project itself will be similar in design goals to previous assignments, however it will provide less of the skeleton code to enable more creativity to learners and greater opportunity for learners to customize the app.
There are 5 Courses in this Specialization
COURSE-1 : Kotlin For Android
Android Basics in Kotlin is a course about building basic Android apps. This course is for people with no prior programming experience.
You will learn Kotlin, the recommended programming language for developing Android apps. You will use the Android Studio tool to build these apps, and you will learn the fundamental concepts of Android development along the way.
By the end of this course, you will have created a collection of well-designed, interesting, and fun Android apps. We hope that this will spark your imagination to continue learning Android and building cool apps on your own!
COURSE-2 : Android App Components
There are some necessary building blocks that an Android application consists of. These loosely coupled components are bound by the application manifest file which contains description of each component and how they interact. The manifest file also contains the app’s metadata, its hardware configuration and platform requirements, external libraries and required permissions.
There are the following main components of an android app:-
- Activities – Activities are said to be the presentation layer of our applications. The UI of our application is build around one or more extensions of the Activity class. By using Fragments and Views, activities set the layout and display the output and also respond to the users actions.
An activity is implemented as a subclass of class
- Services – These are like invisible workers of our app. These components run at backend, updating your data sources and Activities, triggering Notification and also broadcast Intents. They also perform some tasks when applications are not active. A service can be used as a subclass of class
- Content Providers – It is used to manage and persist the application data also typically interact with SQL database. They are also responsible for sharing the data beyond the application boundaries. The Content Providers of a particular application can be configured to allow access from other applications, and the Content Providers exposed by other applications can also be configured.
A content provider should be a sub class of the class ContentProvider.
COURSE-3: Android App Components – Services, Local IPC, and Content Providers
This 6 week course builds upon the core Android app components and concurrency frameworks covered in Course 2 by focusing on started and bound services, local inter-process communication (IPC), and content providers. Case study apps will be examined from multiple perspectives to learn how to program these app components using Android’s material design paradigm. Students will work incrementally on a hands-on project involving a material design-based RSS reader app. Each week you will add additional capabilities to the project, based on material covered in the lecture videos.
COURSE-4: Engineering Maintainable Android Apps
Engineering Maintainable Android Apps, which is a 6 week course that shows by example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using Kotlin and Android Studio (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Kotlin/Android software patterns to improve the extensibility and clarity of Android apps. Students will work on the appropriate automated unit quizzes, based on the material covered in the lecture videos. These lessons will demonstrate the benefits of good software engineering practices that are targeted at creating maintainable code for mobile apps.
There will be roughly 3-4 hours of student engagement time per week, including video lectures, and quizzes. The ordering of the modules within the course is designed to be flexible. In particular, students can watch the videos in whatever order suits their experience and needs, e.g., they may want to watch the unit testing videos prior to the software pattern videos if they prefer to learn about unit testing first.
Build Your Own Android App
In the Build Your Own Android App capstone you will expand your repertoire of additional features and more advanced functions that may be implemented within the Android environment. You will refine your development skill set and will apply your accumulated skills over the entire specialization series in an applied application development capstone project. This particular course is project based and structured around you building a high quality app as a capstone to the specialization.
Currently this course is taught using Kotlin v1. 3 in Android Studio. On 7 May 2019, Google announced that the Kotlin programming language is now its preferred language for Android app developers.
- For Indian Students: INR 30,000+ GST
- For International Students: USD 410
- Installment option available for all applicants
- Duration: 9 weeks
- Schedule of Classes: Sundays from 10.00 a.m. to 01.15 p.m. IST