Active Outline
General Information
- Course ID (CB01A and CB01B)
- CIS D037.
- Course Title (CB02)
- Java for Mobile Development
- Course Credit Status
- Credit - Degree Applicable
- Effective Term
- Fall 2023
- Course Description
- This course covers mobile application development using Android features including Android development tools, activities and intents, pictures and menus, data persistence, messaging and networking, and rich media features.
- Faculty Requirements
- Course Family
- Not Applicable
Course Justification
This course is transferable to the CSU system. It is required for the Programming in Java Certificate of Achievement at °®¶¹´«Ã½ College. This course provides skills in the Java-based Android operating system necessary for the creation of Android mobile apps.
Foothill Equivalency
- Does the course have a Foothill equivalent?
- No
- Foothill Course ID
Formerly Statement
Course Development Options
- Basic Skill Status (CB08)
- Course is not a basic skills course.
- Grade Options
- Letter Grade
- Pass/No Pass
- Repeat Limit
- 0
Transferability & Gen. Ed. Options
- Transferability
- Transferable to both UC and CSU
Units and Hours
Summary
- Minimum Credit Units
- 4.5
- Maximum Credit Units
- 4.5
Weekly Student Hours
Type | In Class | Out of Class |
---|---|---|
Lecture Hours | 4.0 | 8.0 |
Laboratory Hours | 1.5 | 0.0 |
Course Student Hours
- Course Duration (Weeks)
- 12.0
- Hours per unit divisor
- 36.0
Course In-Class (Contact) Hours
- Lecture
- 48.0
- Laboratory
- 18.0
- Total
- 66.0
Course Out-of-Class Hours
- Lecture
- 96.0
- Laboratory
- 0.0
- NA
- 0.0
- Total
- 96.0
Prerequisite(s)
Corequisite(s)
Advisory(ies)
ESL D272. and ESL D273., or ESL D472. and ESL D473., or eligibility for EWRT D001A or EWRT D01AH or ESL D005.
CIS D035A
Limitation(s) on Enrollment
Entrance Skill(s)
General Course Statement(s)
Methods of Instruction
Lecture and visual aids
Discussion of assigned reading
Homework and extended projects
Laboratory discussion sessions and quizzes that evaluate the proceedings weekly laboratory exercises
Homework and extended projects
Discussion and problem solving performed in class
Assignments
- Readings from text.
- Documenting, coding, testing and debugging six to ten programs guided with clearly documented design, covering the Lab Topics specified in X. below, half completed in the computer lab, half completed as homework.
Methods of Evaluation
- One or two midterm examinations requiring students to write code applying topics covered in the lectures and reading. Code is evaluated on correctness.
- Final examination requiring students to write code applying topics covered in the lectures,reading, and programming assignments. Code is evaluated on correctness.
- Evaluation of programming assignments based on correctness, documentation, code quality, and test plan executions.
Essential Student Materials/Essential College Facilities
Essential Student Materials:Â
- None.
- Access to a computer system with the Java 2 SDK, or an Integrated Development Environment tool supporting Java 2
Examples of Primary Texts and References
Author | Title | Publisher | Date/Edition | ISBN |
---|---|---|---|---|
Deitel, Paul. "Android, How to Program with an Introduction to Java (3rd edition)", Pearson, 2016 | ||||
Deitel,Paul & Deitel, Harvey. "Android 6 for Programmers: An App-Driven Approach (3rd edition)" Prentice Hall., 2015. |
Examples of Supporting Texts and References
Author | Title | Publisher |
---|---|---|
Darcey, Lauren. "Sams Teach Yourself Android Application Development in 24 Hours, 4th Edition." Sams, 2015. |
Learning Outcomes and Objectives
Course Objectives
- Implement Android architecture and tools (Android Virtual Device, SDK, Android Development Kit) in code writing.
- Build an Application and deploy to Android Marketplace
- Create and run Mobile Applications using Android Visual Layout Editor and Virtual Device
- Design a GUI using layout for setting up components on a screen
- Enable interaction with Android Application using Buttons
- Use Asset Management to drive user interaction
- Use graphics and sound in Mobile applications
- Describe and apply Activity Elements to manage content with rich Android features
CSLOs
- Design mobile applications using object-oriented methodology and advanced Java concepts using Android Development Kit.
- Create algorithms, code, document, debug, and test mobile applications.
Outline
- Implement Android architecture and tools (Android Virtual Device, SDK, Android Development Kit) in code writing.
- Android Overview
- Android version history
- Android Software Development Kit
- Basic HelloWorld Application
- Build an Application and deploy to Android Marketplace
- Android Marketplace
- Android best practices - compatibility, supporting multiple screens and user interface guidelines
- Preparing and uploading application to Android Market
- Launching and Managing Android Applications
- Create and run Mobile Applications using Android Visual Layout Editor and Virtual Device
- Eclipse IDE and Android Development Tools (ADT) Plugin
- ADT Visual Layout Editor
- ADT Android Virtual Device
- Design a GUI using layout for setting up components on a screen
- Edit properties of Mobile Application in an XML file
- TextView, EditText and SeekBar GUI components
- Event handling to respond to user interactions
- Enable interaction with Android Application using Buttons
- ScrollView control to display objects that do not fit on the screen
- Dynamic GUI Components in response to user interactions
- Manage Shared Preferences
- Alert Dialogs
- Open a website in a browser using an Intent
- Hide/Show soft keyboard
- Use Asset Management to drive user interaction
- AssetManager
- Menu to provide Application Options
- Using Handler to manage events
- Exception Management and Logging
- Use graphics and sound in Mobile applications
- Add Graphics with Paints and Canvas
- Play sound in response to events using SoundPool and AudioManager
- Activity Lifecycle methods and Animation with Threads, SurfaceView and SurfaceHolder
- Animation LifeCycle Events
- Describe and apply Activity Elements to manage content with rich Android features
- Application Style and elements using TextView, ListView, and MenuInflater
- Manipulate a SQLLite Database
- Multithreading to manage concurrent Database Operations
- Use Location, MapData and GPS data for creating location based service features
- Use Intents to manage content
- Use MediaPlayer to play music
- Use SurfaceView, SurfaceHolder and Camera object
- Tabbed Navigation
- Create Reusable components
Lab Topics
- 6 to 10 programming exercises, which include design as well as coding
- Android Studio
- Activities and Intents
- User Interface
- Pictures and Menus
- Data Persistence
- Messaging and Networking
- Location Based Services