50-152-704Advanced Programming for IT: Software Apprentices
Course Information
Description
Examines advanced programming skills for apprentices. Focus is placed on design patterns, algorithms, data structures, and delegates. Apprentices utilize a database with an application.
Total Credits
3
Course Competencies
-
Utilize a database with an applicationAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice implements a database backendapprentice creates an editing frameworkapprentice queries the database and presents resultsapprentice generates reports from the database
-
Define design patternsAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice identifies design patternsapprentice explains how modularity is achieved using design patterns
-
Apply design patterns to the applicationAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice selects the appropriate pattern for a given situationapprentice designs a class using the Singleton design patternapprentice writes code to implement the Data Access Object (DAO) patternapprentice designs and creates objects using a Factory pattern
-
Utilize delegatesAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice defines a delegateapprentice invokes the delegate
-
Explore algorithms and data structuresAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice explores various search algorithmsapprentice explores sorting algorithmsapprentice compares various sorting algorithmsapprentice compares various searching algorithmsapprentice explores collections (i.e. lists, stacks, queues, and dictionaries)apprentice compares collections (i.e. lists, stacks, queues, and dictionaries)apprentice explores additional data structures (i.e. trees, linked lists)apprentice compares additional data structures (i.e. trees, linked lists)apprentice selects appropriate algorithm considering Big O ramifications