Course Information
Description
This hands-on programming course introduces fundamental software development practices using JavaScript. You’ll learn to think like a developer—designing algorithms, writing clean, modular code, testing thoroughly, and debugging effectively—while adhering to industry standards and best practices. Through a mix of design documentation, coding assignments, code reviews, and self-reflection, you’ll build from simple functions and variable management up to complete programs that solve real-world problems.
Total Credits
3
Prior Learning Assessment
- Exam-College Developed Challenge Exam
Course Competencies
-
Design algorithms to solve problemsAssessment StrategiesDesign documentWorking programCriteriaTrace and explain what a given algorithm doesCreate design documentation for a given problem statementDiagram logical flowDocument expected input dataDocument expected output dataDocument sequential processing stepsValidate the algorithm produces the expected result
-
Plan and execute the testing of a programAssessment StrategiesWritten documentCriteriaIdentify test scenarios to verify all pathways through the codeDocument test input values for pass and fail scenariosDocument expected output valuesExecute program with test data for pass and fail scenariosAnalyze test resultsAdd line and block comments to a program following industry standards
-
Debug and correct errorsAssessment StrategiesWorking programCriteriaIdentify problem-solving strategiesDebug a program using a browser developer consoleLocate an error using developer consoleIdentify the cause of logic, syntax, and runtime errorsRun a program in strict modeWrite messages to the debugging consoleExamine console output for errorsTrace logic, syntax, or runtime program errors to its sourceResolve logic, syntax, or runtime program errorsDisplay the value of a program variable on each line of codeFind and implement proper solutions from external sources
-
Explain algorithms and decision-making processesAssessment StrategiesCode reviewsPeer coding projectSelf-reflectionCriteriaDescribe code using correct programming vocabularyExplain programming logic in plain (non-tech) languageExplain design and programming decisionsDiscuss problem-solving techniques
-
Conform to industry standards and best practicesAssessment StrategiesCoded programCriteriaImplement JavaScript syntax correctlyWrite code that conforms to specified standardsWrite a program following the basic principles of programming, i.e., DRY principlesWrite modular and reusable codeWrite meaningful code comments using appropriate language and tonePerform regular backups of course materials and codeUse file and directory naming that meets specified standards
-
Write FunctionsAssessment StrategiesCoded programCriteriaDefine function in terms of programming paradigmsExplain how to use a function in a procedural programExamine the differences between functions and methodsUse functions built into JavaScriptUse appropriate scope of functions in a programTrace a function to deduce the function’s purposeDevelop reusable functions for a maintainable programWrite functions with and without parametersWrite functions with and without return valuesWrite single-purpose functionsCall functions that receive dataCall functions that return data
-
Manage variables within a programAssessment StrategiesCoded programCriteriaUse appropriate scope of variables in a programUse constants within a program to store fixed dataIdentify variable data typesDescribe the concept of variables in a programming languageDeclare a variable using the let, and const keywordModify a variable's value within a JavaScript expressionCalculate values with an arithmetic operatorConduct String manipulation (concatenation, length, convert to Number)Create an array containing data valuesIterate over an arrayAdd values to an arraySearch for a value in an arrayDisplay values in an arrayDetermine the size of an array using the length propertyReference an element within an array by its index
-
Conditional logic and iterationAssessment StrategiesCoded programCriteriaDescribe and identify the role of an operator in an expressionCreate a Boolean value for logical conditionsWrite a binary operatorWrite a unary operatorEvaluate a logical expression with a comparison operatorDetermine the precedence of operators with an expressionWrite code to break out of a loop using the break statementWrite code to break out of loop using the continue statementTrace and explain code that performs iteration over a collection of itemsTrace and explain code that evaluates multiple conditionsTrace and explain code that performs sequential logicWrite code that solves a problem using sequential logicWrite code that evaluates multiple conditionsWrite code that iterates over a collection of itemsWrite linear and non-linear if/else statements with single or multiple conditional logicWrite loops using for, for/in, for/of, while, and do/while for both counted and conditional testsWrite code that combines loop and if structures
-
Create programs to solve problemsAssessment StrategiesCoded programCriteriaTrace and explain the execution order of a program consisting of multiple functionsTrace programs to deduce what the program does or what problem the program solvesDocument the problem the program solvesWrite a program that solves a problem based on planning/design documentUtilize appropriate control structures for efficient and sound logicProve the program solves the problem