Course Title: Mobile App Development
Course Code: CS 218
Credit Value: 4 Credits
Contact Hours
Lectures: 2 hours/week
Practical/Laboratories: 3 hours/week
Duration: 15 Weeks (One Semester)
Prerequisite: Programming II
Primary Platform: Android Studio (Java-Based Development)
1. COURSE DESCRIPTION
Mobile App Development introduces students to the principles, tools, and practices used in designing and developing applications for mobile devices. The course focuses primarily on Android application development using Java and Android Studio.
Students learn how mobile applications are structured, how user interfaces are designed, how mobile devices manage resources, and how applications interact with local storage, networks, and device services. Emphasis is placed on practical development, usability, responsiveness, security, and deployment-ready application design.
The course integrates software engineering principles with hands-on mobile application projects, preparing students for modern mobile computing environments and entry-level mobile development roles.
2. COURSE OBJECTIVES
By the end of this course, students should be able to:
Understand the architecture of mobile applications and mobile operating systems.
Design and develop Android applications using Java.
Build responsive and user-friendly mobile interfaces following Material Design principles.
Manage application data using modern local storage mechanisms.
Integrate networking and external resources into applications.
Apply secure coding practices in mobile environments.
Test, debug, optimize, and deploy functional mobile applications.
3. LEARNING OUTCOMES
Upon successful completion of this course, students will be able to:
Explain core concepts in mobile application development.
Use Android Studio and Android SDK tools effectively.
Develop interactive Android applications using Java.
Design mobile user interfaces following usability and accessibility principles.
Implement activity navigation and application lifecycle management.
Store and retrieve application data using SharedPreferences and Room databases.
Consume REST APIs and process JSON data.
Implement background tasks and resource-efficient applications.
Apply secure coding practices and permission management.
Debug, test, optimize, and package mobile applications for deployment.