CIT 597 - Programming Languages and Techniques III
Spring 2011, Pat Palmer

Google groups   Subscribe to CIT597spring11 (registered students only)
Email:
Loading
Date Announcements
M Feb. 28 No one has registered any objections to the question I posed last week in class; therefore, the course grading mix will change from 50% assignments / 50% tests to 60% assignments / 40% tests.
Older Previous announcements

 Where and when
Lecture MW 5:30-7:00 Moore 100B lab
 Contacts and office hours
Instructor: 30 min. before/after class or by apptmt.
Moore 100B lab
TA: weekends tba Moore 100B
TA: weekends tba Moore 100B
Class email list: Via Penn email
Links
Academic Integrity Policy  |   Grading
Downloads  |   Software  |   Textbooks  |   Useful Links
Sql Basics | groups (password in Blackboard Syllabus tab)
Blackboard and Instructions for Blackboard
Student web server accounts | class notes

Programming for Linux and Windows web servers. Java and/or C# topics may include serialization, synchronization, reflection, advanced I/O, servlets and generic handlers, dependency injection, protecting against SQL injection, XML, Javascript, SOAP and REST web services, and database access for web pages.  Emphasis on standards for cross-browser compliance, and best practices for security and maintainability.

IMPORTANT DATES:
 * M Jan. 31 - Add deadline | F Feb. 18 - Drop deadline 
 * A Mar. 5 - U Mar. 13 - SPRING BREAK
 * T Apr. 26 - Classes end
 * most Wednesdays: quiz first 10 minutes of class
 * most Sundays: assignment due at midnight

Class Date Lecture notes Projects, assigned readings
1 W Jan 12 Course introduction
HTML
XHTML
Assignment 1: XHTML and CSS (JA) | Strict XHTML (template)
Ch. 1 from book "HTML5 for Web Designers" (in Blackboard)
HTML tags to learn about by next week
 
  M Jan 17   no class (MLK Day)
2 W Jan 19 CSS Assignment 2: Bubblebox in C# (MZ)
Quiz 1 (beginning of class) - open book/notes
Assignment 1 web pages (see Blackboard Syllabus tab for password)
 
  Assignment 2 due MONDAY at midnight
3 M Jan 24 XML Assignment 3: Turnred in C# (JA)
 
4 W Jan 26 Serialization and XML, v2
 
So You Say You Want to Kill XML... | Protocol Buffers
 
  Assignment 3 due Sunday at midnight
5 M Jan 31 Brief history of XML, SOAP and REST
 
Assignment 4: Turnred in Javascript - double time/double credit (MZ)
"Serialize an object" code - C# and Java
"Calling a web service" code - C# and Java
 
6 W Feb 2 Javascript - Language Fundamentals
 
Quiz 2 (beginning of class) - open book/notes on XML-related slides, readings
 
   
7 M Feb 7
Javascript and HTML (events)
Javascript Examples
 
js_mouseover.zip from class M Feb 7 (with code)
Assignment 3 web page critiques (see Blackboard Syllabus tab for password)
 
8 W Feb 9 No lecture today Recommended talk: Cracking the Coding Interview
Pat in the lab until 7:15p, and also Friday 5-6:30p
 
  Assignment 4 due Sunday at midnight
9 M Feb 14 Began Ajax examples   Assignment 5: Monte Carlo in Javascript (JA)
"Programming the World Wide Web" by Sebesta (in Blackboard)
10 W Feb 16 Mostly completed the Ajax examples URL Encoding
Examples of Ajax calls from W Feb 16 (now all working): In the POST examples, see the added .setRequestHeader() method (directly above .send() ). That's all that was missing over what we did in class.
  Assignment 5 due Sunday at midnight
11 M Feb 21 Guest speaker: Dave Matuszek on Javascript first-class functions Assignment 6: Monte Carlo via Ajax GET to C# handler - double time/double credit (MZ)
"JavaScript that you need to know but might not" (in Blackboard)
Dave Matuszek's Javascript examples
12 W Feb 23 REST web services (HTTP GET handlers in C#) Code from W Feb 23: palmer_User24.zip
Dave's class notes (emailed to Pat later)
   
13 M Feb 28 Quiz 3 study guide --
  W Mar 2 -- Quiz 3 (beginning of class) - open book/notes, focus on XML and Javascript
  Assignment 6 due SUNDAY Mar. 6 at midnight
  M Mar 7   no class (spring break)
  W Mar 9   no class (spring break)
   
15 M Mar 14 -- Assignment 7: Scraper in C# - 2.5 weeks credit (JA)
"Bytecode and JIT compilation"
scraper_code_Mar14.zip
16 W Mar 16 Process_vs._thread generic_app.zip version 2 
online listing of generic_app code 
an introduction to design patterns
  (try to get your scraper scraping by tonight)
17 M Mar 21 Delegates_events version 2 Three ways to display a JFrame in Java - which does .NET do?
Long-running task in a GUI in C# via a background ("worker") thread
"How to call a C# method asynchronously" (Microsoft)
18 W Mar 23 * STA and MTA threads in Windows
* database queries and design in VS.NET 08
showThread method (C#)
   
19 M Mar 28 * call a web service asynchronously in C#
* write a web service in C#
Quiz 4 study guide
web_service_quotes (helper files for writing a web service)
web client code from class (async and blocking call)
.zip of code from class for this web service  | view code as text
20 W Mar 30 Sql Basics
Database (pt. 1)
Quiz 4 - open book/notes, no puters | answers
Assignment 8: Web service in C#, and client website (MZ)
  Assignment 7 due Sunday at midnight
21 M Apr 4 Java servlet/JSP example (Netbeans)  Assignment 9: Penn A-Z alternative website
3 Faulkner reports on ASP.NET, Java dev. tools, and PHP (get from the Blackboard Course Documents area) - ~20 pages
22 W Apr 6
Above code example rewritten in ASP.NET
Quiz 5 study guide
Singleton design pattern
Observer-Observable design pattern
Model-View-Controller (MVC) design pattern
   
23 M Apr 11 Class was about forwarding ASP.NET form submissions to another form, with and without using a master page. starter code for master pages
class code for master pages
24 W Apr 13 Class was about using a GridView control with paging and sorting. Quiz 5 | answers p1 p2
stored procedures for sorted gridview
  Assignment 8 due Sunday at midnight
25 M Apr 18 Dynamic data, forcing login, exporting to Excel files needed for today's classnew(includes better instructions and database code, since noon T 4/19)
T-SQL code for creating foreign key
login/Excel code from class
from Murach pp. 534-535
26 W Apr 20 4:30 to 6 pm Richard Stallman talk (required) - go early! There will be at least one quiz question on Stallman's talk.
  Assignment 8 due Sunday at midnight
27 M Apr 25 Quiz 6 study guide Quiz 6 - comprehensive
  Apr 27-29   reading days
  Assignment 9 due Friday April 29 May 6

 
Key
Weekly programming assignment Software for this course An article, usually offsite Tutorial
Official specification (offsite) PowerPoint file Additional information about the topic Example

Previous CIT597 (NOTE: different instructor!) | validate this page | important syntax information