- Level Foundation
- المدة 9 ساعات hours
- الطبع بواسطة Vanderbilt University
-
Offered by
عن
Engineering Maintainable Android Apps, which is a 4 week MOOC that shows by example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using JUnit and Robotium (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Java/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.الوحدات
Course Overview
1
Videos
- Course Intro
Testing I
1
Assignment
- Testing I Quiz
7
Videos
- Software Engineering as Search
- Why Test?
- Unit Testing
- Unit Testing with Android Studio
- The Importance of Test Automation
- Code Coverage
- Styles of Testing
Optional Assignment: Testing
1
Peer Review
- Assignment: Testing (Optional)
Testing II
2
Assignment
- Testing II Quiz
- Optional Assignment 1: Android Test Driven Development (Programming)
7
Videos
- Functional & Non-functional Properties
- Refactoring
- Refactoring and Regression Testing
- Integration Testing
- Integration Testing with Android Studio
- Mock Objects with Android Studio
- UI Testing with Espresso in Android Studio
Security Design Principles
1
Assignment
- Security I Quiz
9
Videos
- Security & Sustainability
- Economy of Mechanism
- Economy of Mechanism Example
- Least Privilege
- Least Privilege Example
- Complete Mediation
- Complete Mediation Example
- Secure Defaults
- Secure Defaults Example
Android App Security
1
Assignment
- Security II Quiz
13
Videos
- Traditional App Accounts
- Traditional vs. Mobile App Accounts
- App Account Mapping to Linux Users
- Apps Lie & Steal
- How Android Protects Apps
- What Android Does Not Protect
- The Challenges of Secure Coding
- Security Vulnerability Walkthrough
- The iRemember App Example
- Privilege Escalation I
- Privilege Escalation II
- Privilege Escalation III
- Course Wrap-up
Auto Summary
"Engineering Maintainable Android Apps" is a comprehensive 4-week course designed for those looking to enhance their skills in creating robust and maintainable mobile applications. This course, offered by Coursera, delves into essential methods such as test-driven development, unit testing using frameworks like JUnit and Robotium, and the application of common Java/Android software patterns. Under the expert guidance of your instructor, you’ll engage in approximately 3-4 hours of learning per week through video lectures and automated quizzes. The course structure is flexible, allowing you to tailor your learning path based on your experience and interests, whether you prioritize unit testing or software patterns first. Ideal for individuals at the foundational level in IT and Computer Science, it provides a solid framework to improve the clarity and extensibility of Android apps. Subscription options include Starter, Professional, and Paid plans, catering to different learning needs and budgets. Join now to elevate your mobile app development practices and ensure your code remains maintainable for the long haul.

Dr. Douglas C. Schmidt

Michael Walker

Dr. Jules White

Jerry Roth