210 likes | 239 Views
159.339. Paper Coordinator: Dr . Napoleon H. Reyes, Ph.D. Internet Programming. Computer Science. Institute of Information and Mathematical Sciences. Rm. 2.38 QA , or IIMS Lab 1.10, Albany Campus. email: n.h.reyes@massey.ac.nz Tel. No.: 64 9 4140800 x 9512 or 41572
E N D
159.339 Paper Coordinator: Dr. Napoleon H. Reyes, Ph.D. Internet Programming Computer Science Institute of Information and Mathematical Sciences Rm. 2.38 QA, or IIMS Lab 1.10, Albany Campus email: n.h.reyes@massey.ac.nz Tel. No.: 64 9 4140800 x 9512 or 41572 Fax No.: 64 9 441 8181
159.339 Lectures/Tutorials Lectures:Monday 9:00 am 1:00hr AT7 Thursday 3:00 pm 2:00hrs AT5 Consultation Hours: Immediately after lectures Tutorial: Friday 11:00 am 1:00hr CL QB5 Tutor:Gareth Stretton
Pre-requisites Course Overview Topics for Discussion Learning Outcomes Texts and Course Material Assessment Course Schedule
Programming experience of some sort (C, Java), in this course we will use mainly PHP Pre-requisites Knowledge of OO approach is useful, but not essential (as covered in 159.234)
Note: Student Responsibility If a student cannot attend lectures/tutorials it is the student’s responsibility to find out what was discussed in lectures / tutorials (possible changes to assignments, questions & answers).
Main text book Dynamic Web Application Development using PHP and MySQL by Simon Stobart & David Parsons Texts and Course Material Other References http://www.w3schools.com http://massey.ac.nz/~nhreyes/159339.htm
Working definition. Programming to: – Access and deliver data across the Internet – Enable functionality distributed across the Internet • This is a computer science course on Internet programming What is Internet Programming?
Topics Covered Foundations – What is Internet programming, Internet protocols, history, concept of the Web, hypertext, http, URL. Client-side technologies – HTML, CSS, Javascript Server-side Web programming – PHP, MySQL, Java Servlets, JSPs, other platforms Some Extras: XML and the Web – What is XML, Web syndication, remote application deployment, rich Internet applications, Web services
Technologies that support Web based applications Server Side Application Programming Client side programming Database driven applications What is Internet Programming?
Not Low level network programming • Socket level programming (159334!) • Not Implementing Network Protocols • TCP/IP, UDP (159334!) • Not Client side Graphical User Interfaces • IS (157.___!) • Not a “how to” design a cool fancy website What is NOT Internet Programming?
Relation with other courses • The computer networks course (159.334) deals with low-level network programming – Socket level programming – Implementing Network Protocols – TCP/IP, UDP • Client side Graphical User Interfaces – Courses offered by IT (158.XXX) – (Designing cool websites) • .NET programming – IT courses – Microsoft training courses
1. Introduction – nuts and bolts of the Internet, TCP/IP, www, IP stack, HTTP protocol 2. Web content, HTML, Web server 3. Client-side Programming – Java script, Event handling, HTML Document Model 4. PHP programming 5. Persistence: Cookies and Sessions Course Schedule
Security Issues Database Access - Using MySQL, database driven applications. Java Servlets Java Server Pages and more HTML Other Internet Programming Technologies – Java Beans, JSP Standard Tag Library, J2EE Web services and XML - SOAP, WSDL, UDDI Course Schedule
On successful completion of the course, the students should be able to: Learning Outcomes Implement database driven Internet applications using PHP/MySQL/Webserver. Implement server side applications. Apply the Internet Programming design concepts in solving real world problems. Identify the advantages and disadvantages of various Internet Programming techniques to real world problems. Demonstrate knowledge of new and emerging internet programming technologies .
Browsers • HTML, javascript • Network Protocols • TCP/IP, HTTP, FTP etc • Servers • Web Servers, Server side programming environments • Operating Systems • Windows, Linux, Unix, GNU software Technologies that support Web based applications
Web servers • Apache, Xitami, Netscape Application Server, IIS server etc. • Cgi programming, server api, perl, php • Application Servers • Sun ONE J2EE server, BEA Weblogic, IBM Websphere, tomcat, jboss, jonas, etc. Server Side Application Programming
Browser-Based Clients • HTML + DHTML • Applets • Clients run in a sand box, secure environment • Application Based Clients • Heavy and Light Clients with full access to local machine Client-side programming
At least 2 assignments: 40% Assessment Final Exam (3 hours): 60% • The course will be assessed by a combination of practical and theoretical works. • There will be 2 practical assignments and one three hour exam. The exam will be a CLOSED BOOK exam. • All assignments will be submitted electronically.
Program solutions that do not compile or do not run in our laboratories get 0 marks. Assessment Late assignments will be penalized Assignments may be completed in groups all members of the group should be named in the source file of each assignment, including the contribution of each member. All submitted assignments will have to be accompanied by a short documentation as well. There can be at most 3 members in a group.
Each group member will receive the same grade. Assessment Students in a team have the authority (in consultation with the lecturer) to "expel" any member that does not meet obligations . The collaboration is limited only to members within each group. It is the students’ responsibility to check their assignment marks and notify in writing any errors they might find no later than 10 days after the day the marks were made available.