Mar 29, 2024  
2021 - 2022 Catalog 
    
2021 - 2022 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

CST 185 - Mobile App Development

Credits: 3
Instructional Contact Hours: 3

Introduces software development of mobile apps for smart devices. Utilizes one or more platforms currently on the software market.  Includes programming views, view navigation, user interfaces, and the integration of graphics, mapping and location.

Prerequisite(s): CST 183  with a minimum grade of “C”
Corequisite(s): None
Lecture Hours: 45 Lab Hours: 0
Meets MTA Requirement: None
Pass/NoCredit: Yes

Outcomes and Objectives  

  1. Demonstrate understanding of the platform and operating system.
    1. Demonstrate understanding of the current market for mobile apps.
    2. Describe and compare different mobile application models, architectures, and patterns.
    3. Create an app development project utilizing development tools.
    4. Navigate and utilize a relevant integrated development environment for app creation.
    5. Utilize various project templates, frameworks, or patterns for creation of specific types of mobile apps.
  2. Develop program code using the underlying programming language(s) for the mobile platform.
    1. Define key data types and classes necessary for app development.
    2. Construct code that requires control structures.
    3. Break program into subprograms using methods.
    4. Utilize object- oriented programming to define classes appropriate to their purpose.
    5. Utilize string data for various programming solutions.
    6. Work with arrays, maps, dictionaries, and other built-in data structures.
    7. Integrate XML and other external data storage sources into program development.
    8. Build app components using visual development features as well as programmatically.
  3. Construct apps designed for their intended purpose.
    1. Demonstrate familiarity with current app design patterns, rules, limitation, and traditions for selected platform.
    2. Create basic paper designed or storyboards for intended app navigation and behavior.
    3. Implement view and contained user interface components.
    4. Construct navigation between views.
    5. Implement specialized app execution behaviors including launch screens.
    6. Utilize an appropriate navigation control model for intended purpose of app.
    7. Interface with data sources stored on local device as well as eternally via the network.
  4. Integrate user interface components into app views.
    1. Insert labels, text views, and buttons into app views.
    2. Handle user events such as touches, swipes, and pinches.
    3. Integrate a variety of images and manage related controls.
    4. Manage keyboard data entry.
    5. Pass data between views.
  5. Integrate special features and services customary with mobile apps.
    1. Integrate map interface into an app view.
    2. Utilize GPS location services with an app.
    3. Interface with external data via network connectivity.
    4. Embed web browser views into an app view.
    5. Integrate audio, imagery, and video into the app.
  6. Deploy apps to the user community.
    1. Debug errors in app development code.
    2. Compile code into working mobile applications.
    3. Test apps to validate that they are bug-free and meet requirements.
    4. Execute apps on relevant simulator or emulator.
    5. Describe the procedure for deploying apps for sale and distribution. 
  7. Utilize and build software solutions with a gaming emphasis.
    1. Integrate a pseudo-random number generator into computing solutions.
    2. Integrate simple drawing and animation features into a mobile app with a game context.
    3. Build programming solutions for basic gaming mechanisms including dice throws, card draws, lottery numbers, etc.
    4. Integrate typical mobile app user interface actions (swipes, pinches, touches, etc.) into basic game apps.
    5. Build and manage a basic game as a course capstone project.



Add to Portfolio (opens a new window)