CpSc 217, Structured and Dynamic Web Programming

Syllabus, Spring, 2012

Dr. Conlon

For a printable copy of this syllabus, click here.

Catalog Description:  This course is designed to cover the features of popular programming languages specifically for creating Web pages. Mouse rollovers, browser detects, pop-up windows that launch when a Web page loads or in response to specific actions, and form data-checking are just a few of the most popular uses of Web programming languages that will be discussed. programming will be done in a representative programming language. Prerequisites: CpSc 130 and 140. (3 credits)

Class Meeting:

Section

Time

Place

1

MWF 9:30 a.m.-10:45 a.m.

ATSH 224

Instructor:

Name

Phone

Email

Office

Michael P. Conlon, Ph.D.

724-738-2143

michael.conlon@sru.edu

ATSH 252

Office hours:  As indicated below, or by appointment.

Day

Mon

Tue

Wed

Thu

Fri

Time

11 a.m.-12 m.

 

2 p.m.-4 p.m.

11 a.m.-12 m.

11 a.m.-12 m.

Office hours are for you. Please feel free to visit me to discuss any problems. Do not wait until problems become unmanageable. If I am doing other work during my office hours, it is because no student has come to see me. I will gladly drop what I am doing to help you. If my office hours are inconvenient, see me before or after class and we will find a better time to meet.

Text: JavaScript, The Definitive Guide, sixth edition, ©2011, by David
Flanagan, O'Reilly. ISBN #970-0-596-80552-4.

Grading:

Exams

Lab

Homework, service, etc.

Projects

35%

15%

15%

35%

Late Assignment Policy: Late assignments will receive a grade of zero. Exceptions will be made only in extraordinary circumstances.

Exam dates:

 

Exam 1

Exam 2

Final

Section 1

Tue, Feb 28

Tue, Apr 10

Thu., May 10, 8:00-10:00 a.m.

Attendance, reading, and participation: You are expected to attend every class and to arrive on time. Please do all assigned reading before the class in which it is covered. You are expected to attend and participate in class, and you must do the reading and homework to participate.

Exams: Exams will cover both text and lecture material; some text material may not be covered in class. If you must be absent for an examination, please see me one week in advance to make alternate arrangements to take the exam. Please take care of bodily needs before coming to an exam: you will not be permitted to leave the room during an exam until your paper is handed in. All electronic communication, computation, and entertainment devices must be turned off and put away during exams. Use of such devices during an exam will be considered cheating.

Labs: Labs will be graded mostly on completion, i.e, acceptable (100) or unacceptable (0). Your first responsibility in lab is to complete the lab assignment. When that is complete, you may work on CpSc 217 project work or homework. If you have no outstanding homework or project, make and test modifications to programs you have completed, or work on a JavaScript programming project of your choice. Your lab grade will be reduced if you are not working on JavaScript or HTML during lab time. If you do not complete your lab assignment during lab time, you must demonstrate it to the instructor by the third class or it will be marked as unacceptable (0).

Activities: You are expected to participate in four service/professional development activities during the semester. Any activity where you a) learn about computing or the business of computing; b) help others with computing; or c) prepare yourself for the workforce may count. Such activities usually take the form of lectures, workshops, and job fairs. I do not generally produce these activities: monitor the posters in the hallways for events. Half-day activities count once; full-day activities count twice. You must bring me some evidence that you attended the activity, such as a handout (preferred) or cell-phone photo of the lecturer in action (only if there is no handout).

Plagiarism policy:  Plagiarism or collusion will earn you a failing grade for the project, and you will be reported to the committee on academic integrity. You are not to cooperate with others in any way in the development of your programming projects, except as specified in the assignment. On the other hand, cooperation in doing homework and lab work is encouraged. If you have cooperated with anyone in your homework projects, you must indicate that person's name in your header comments or it will be counted as plagiarism.

Email: I may communicate via electronic mail, using your SRU address. Assignments may be announced this way. Be sure your email account is properly set up. You are responsible for checking your SRU email regularly.

Recording of Lectures: Video and/or audio recording of lectures is generally prohibited. Permission to record will be granted if there is an educational need for you to do so. The instructor reserves the right to reduce your grade should you make illicit recordings.

Copyright Permission: By registering in this course you grant the SRU Computer Science Department permission to copy any of your work from the course for use in assessment or accreditation processes. Information that identifies you, such as your name, will be removed from copies of work used for these purposes.

Teach Act Statement: The TEACH Act has modified U.S. copyright law primarily to deal with the copyright implications of on-line education. The following statement is required by PASSHE, to help ensure compliance with the act.

Copyright Statement: Students shall adhere to the laws governing the use of copyrighted materials. They must ensure that their activities comply with fair use and in no way infringe on the copyright or other proprietary rights of others. Additional information regarding copyright and fair use can be found at www.teachingcopyright.org/handout/copyright-faq.

Course Outcomes: This course and its outcomes support the Information Technology Learning Outcomes of Problem Solving and Critical Thinking (PS&CT), Communication and Interpersonal Skills (C&IS), and Ethical and Professional Responsibilities (E&PR). These Information Technology Learning Outcomes are tied directly to the University Wide Outcomes of Critical Thinking and Problem Solving, Communication, and Values and Ethics.

Program Objectives Assessed in CpSc 217:

Degree

Program Objective

Course Objective

IT

I. a. Apply programming and system management techniques to address information technology problems.

1. Write dynamic, scripted, web-based programs that involve decisions based on user input.

 

I.b. Integrate design and implementation principles to develop effective web pages.

 

I.c. Perform critical analyses of the impacts of decisions.

IT

II.a. Document all aspects of a system precisely and clearly.

2. Make web pages that are understandable and appropriately documented.

IT

III. e. Recognize the need for continuing professional development.

3. Document ability to incorporate new sources of information in the solution of computing problems.

Additional Course Objectives include:

The student will be able to:

  1. 1.Demonstrate the use of general scripting concepts. 

  2. 2.Identify the constructs of the chosen programming language that are used for sequential, conditional, and iterative programming as well as modular constructs 

  3. 3.Identify the concerns related to the ethical and legal use of advancing computer technologies. 

 

Calendar (tentative), with assigned readings:

Date

Topic

Reading

Jan

24

Core and Client-side JavaScript

HTML Review

Ch. 1

 

26

 

 

 

 

 

 

 

 

 

31

Core JS: Types, Values, Variables

JavaScript Algorithm Design

Ch. 2, 3

Feb

2

 

 

 

 

 

 

 

 

 

7

Expressions and Ops; Statements

 

Ch. 4, 5

 

9

 

 

 

 

 

 

 

 

 

14

Objects

JavaScript in Web Browsers

Ch. 6, 13

 

16

 

 

 

 

 

 

 

 

 

21

Arrays

The Window Object

Ch. 7, 14

 

23

 

 

 

 

 

 

 

 

 

28

Exam 1

 

 

Mar

1

Functions

Scripting Documents

Ch. 8, 15

 

 

 

 

 

 

6

 

 

 

 

8

Classes and Modules

 

Ch. 9

 

 

 

 

 

 

20

 

 

 

 

22

Regular Expressions

 

Ch. 10

 

 

 

 

 

 

27

Scripting CSS

 

Ch. 16

 

29

Events and Event Handling

Forms

Ch. 17

 

 

 

 

 

Apr

3

 

 

 

 

5

 

 

 

 

 

 

 

 

10

Exam 2

 

 

12

 

 

 

 

 

 

 

17

Audio

Ch. 21, sec.1, 2

 

19

 

 

 

 

 

 

 

24

Graphics

Ch. 21, sec. 4

 

26

 

 

 

 

 

 

May

1

 

 

 

3

 

 

 

 

 

 

 

10

Final Exam. 8 a.m.-10 a.m.