JavaScript Syllabus

 

Course:           Computer Programming in JavaScript:

Instructor:           James Larson

Phone:          (937) 461-7513

Email:          jlarson43@juno.com

 

Course Description

 

This is a computer programming class. The emphasis will be on analyzing, coding, debugging, and deploying web pages or scripts that do something useful or entertaining. While eye-catching visual affects like hover buttons will be touched on, the primary focus is on fundamentals of program development and coding. In real life, most of the opportunities to write programs will be small projects involving some tedious task for work, class, or fun.  Therefore, it is important to grasp basics first. Mastering this material will empower the student to view computers as an intellectual tool they can use in service to God and neighbors.

 

Prerequisites

 

Students must pass an online test in basic HTML coding. Previous programming courses in other languages may prove helpful, but not essential. Basic math and algebra skills also required. A desire to learn challenging new problem solving techniques a definite plus.

 

Textbook

 

The text used in the course will be online material from the Internet written either by the instructor or others.

 

Software

 

The software will be any text editor or program editor the student feels comfortable with, such as ConTEXT found at http://www.context.cx/ or UltraEdit-32* found at http://www.ultraedit.com/. Internet Explorer will be used to run and test HTML pages containing JavaScript. Also used will be wscript.exe, and cscript.exe (all of which come standard with Windows XP). The student will also need to download and install the Windows Script Debugger from Microsoft.

 

* UltraEdit-32 is reasonably priced. All other required software is free to licensed Microsoft Windows users.


Course Subjects

 

Brief History of Computing

Reasons to Study Computer Programming

          http://www.dst-corp.com/james/programmingforhighschoolers.htm

(Note: this is a preliminary version without graphics.)

 

Introduction to Problem Analysis

 

Variables

          String

          Numeric

          Arrays

          Object

 

Expressions

          String

          Numeric

          Arrays

          Object        

 

Variable Scoping

          Private

          Global

 

Arrays Indexing

          Numeric

          String

 

Object Indexing

          Numeric

          String

 

Statements

          Var

          Assignment

          Conditional

          Looping

          User function definitions

 

 

Grouping Operators

          Parenthesis for expression precedence

          Curly Brackets for statement grouping

          Square brackets for Array and Object index expressions

 

Conditional Statements

          If(expr), if(expr)/else

          Switch

          While(expr)

          Do..While(expr)

          For (expr1;expr2;expr3)

 

Objects

          User

          Document Object Model

          Window Object

          File System Object

 

Properties

          Library Object Properties

          User Defined Objects

 

Event Handlers

          Body tag onload

          Frameset tag

          Form Element Events

                    onclick

                    onmouseover

          Window Object Events

                    setInterval

                    setTimeout

 

Course Schedule

 

Students can expect to have daily readings, weekly HW assignments and biweekly programming assignments, which will increase in difficulty as the year progresses.  Periodic tests or quizzes may be assigned on weeks without a programming assignment.

 

 Grading Policy

 

All non-interactive homework assignments are to be graded at home with scores submitted as requested.  Homework is for your practice and should not be neglected even though the grades will seldom count. Quizzes may be assigned in advance or be pop quizzes given during class time. All tests and programming assignments will be due Midnight ET.  All late work will assess a 1-letter grade per day penalty. Assignments more then three days late will not be graded and will be assessed a 0.

 

Semester Grading Schedule

 

The semester grades will be calculated as follows.

 

Homework/Quizzes:          10%

Tests:                              25%

Programs:                        50%

End of Semester Exam: 15%

 

This syllabus is preliminary and subject to change as experience dictates.

 

18 May 2007

 

James Larson

Instructor

http://www.dst-corp.com/james

http://www.email-chess.com

In God We Trust…