50-152-703Intermediate Programming for IT: Software Apprentices
Course Information
Description
Focuses on intermediate programming skills for apprentices. Apprentices create a code branch, resolve merge conflicts and utilize file storage. Emphasis is placed on object oriented programming principles.
Total Credits
2
Course Competencies
-
Create a code branchAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice determines which version of the software is needed to be used as a basis for the branchapprentice checks out code from the trunk as branchapprentice creates a branchapprentice commits the finished workapprentice does not merge code unless it is ready for deploymentapprentice deletes a branch
-
Resolve merge conflictsAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice collaborates on a source file with other developersapprentice identifies the cause of the merge conflictapprentices locates the conflictsapprentice tests any code differences that were mergedapprentice selects the right changes from the current branch and from the source branch apprentice forms working codeapprentice checks in and tags the new version after conflicts are resolvedapprentice consults team members to resolve conflicts
-
Define basic object-oriented programming (OOP) principlesAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice defines the Single Responsibility Principleapprentice defines the Open-Closed Principleapprentice defines the Dependency Inversion Principleapprentice defines the Don't Repeat Yourself Principleapprentice defines the Encapsulate What Varies Principleapprentice defines the Program to Interfaces Principleapprentice defines the Favor Composition Over Inheritance Principleapprentice defines the Principle of Least Knowledge
-
Implement object oriented programming (OOP) principlesAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice implements the Single Responsibility Principleapprentice implements the Open-Closed Principleapprentice implements the Dependency Inversion Principleapprentice implements the Don't Repeat Yourself Principleapprentice implements the Encapsulate What Varies Principleapprentice implements the Program to Interfaces Principleapprentice implements the Favor Composition Over Inheritance Principleapprentice implements the Principle of Least Knowledge
-
Utilize file storage for applicationsAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice selects the appropriate data storage formatapprentice optimizes the data storage design for storage efficiencyapprentice provides for indexing of the data to optimize queries
-
Implement event-driven programmingAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice utilizes user interface controlsapprentice validates information entered in user interface controlsapprentice defines an event handlerapprentice invokes the event handler
-
Implement unit testsAssessment StrategiesOral, Written and/or Skill AssessmentCriteriaapprentice creates a unit test projectapprentice creates the test classapprentice creates the test methodapprentice builds and runs the testapprentice fixes the code and reruns the testapprentice uses the test result to improve the codeapprentice considers application security