Jul 24, 2019  
2018-2019 Course Catalog 
    
2018-2019 Course Catalog [ARCHIVED CATALOG]

[Add to Portfolio]

CIS 451 - PLTW-Computer Science Applications

Credits: 3
Lecture Hours: 1
Lab Hours: 4
Practicum Hours: 0
Work Experience: 0
Course Type: Voc/Tech
This course focuses on developing computational thinking skills through the medium of Android™ App development for mobile platforms. The course utilizes industry-standard tools such as Android Studio, Java™ programming language, XML, and device emulators. Students collaborate to create original solutions to problems of their own choosing by designing and implementing user interfaces and Web-based databases.
Competencies
  1. Create a Java Program
    1. Define Object Oriented Programming
    2. Describe the basic features of the Java programming language
    3. Use an Integrated Development Environment to enter Java code
    4. Utilize programming logic to create a Java application
    5. Demonstrate ability to write Java methods that accept arguments and return a value.
  2. Assess and manipulate data in Java
    1. Demonstrate how to define an array
    2. Manipulate array elements
    3. Create a String object
    4. Write Java code that parses String data
    5. Develop Java code to manage and maintain lists
    6. Implement the autoboxing feature
  3. Incorporate and extend common User Interface (UI) features
    1. Create a Java application using graphical user interface components
    2. Investigate the concept of inheritance
    3. Understand class definitions
    4. Incorporate a navigation drawer
    5. Explore and critique a Unified Modeling Language (UML) diagram
    6. Outline the components of a Java method
    7. Demonstrate method overloading
  4. Implement common data structures
    1. Utilize an ArrayList
    2. Use loops to traverse Arrays and ArrayLists
    3. Define a stack data structure
    4. Describe a queue
    5. Access a Backend as a Service (Baas) to implement data persistence
  5. Demonstrate the App Development Process
    1. Define a project
    2. Follow the steps of prototyping and usability testing
    3. Present an app with documentation as a final project
  6. Create a backend service for apps
    1. Store and retrieve user data from the cloud
    2. Connect Object Oriented Programming (OOP) to Application Programming Interfaces (API)
    3. Create apps that store significant amounts of data
    4. Manage interfaces for a social networking app
  7. Develop a location aware app
    1. Define GPS (Global Positioning System)
    2. Utilize Google Play services
    3. Add location data to user posts in an app
  8. Analyze the concept of Java classes and objects
    1. Categorize data into subclasses of an abstract type
    2. Combine data into lists
    3. Understand and use polymorphism
    4. Demonstrate the use of dynamic late binding
    5. Construct classes that inherit from interfaces
  9. Implement Java computational algorithms
    1. Analyze the performance of various searches and sorts
    2. Perform statement execution counts
    3. Use a simple rounding algorithm
    4. Experiment with operator precedence and witness integer overflow
    5. Convert between hexadecimal and decimal number systems
  10. Utilize Java frameworks
    1. Use LibGDX (an open source game development framework)
    2. Access resources and utilize tools
    3. Collaborate with a team or a client
    4. Incorporate media assets
    5. Work with touch events
    6. Manipulate data in 2D data structures
    7. Communicate with a database
  11. Support Program Code Maintenance
    1. Identify code problems
    2. Correct existing logic errors
    3. Implement new features into existing apps
    4. Create checked exceptions



[Add to Portfolio]