Download - Philadelphia University

peanutunderwearSoftware and s/w Development

Nov 7, 2013 (3 years and 7 months ago)

49 views


1

ميحرلا نمحرلا الله مسب

Philadelphia University





اـــيفلدلاــيف ةــــعماج


ك
ةيلاملاو ةيرادلأا مولعلا ةيل


Faculty of Administrative

And Financial Sciences



Departmen
t of Business Networking




لامعلأا تاكبشو مظن ةرادإ مسق

And systems management


_______________________________________________________
_____________________________
___


ةداملا ةطخ

Module Syllabus

Advanced Programming
II



Credit Hours: 3 Hours

Course Number: 0371
333

Classification: Dep. Req.

Class Contacts: 3 H / Week

Lecture Time:
8:15
-
9:45

Monday, Wednesday

Email:

ashemery@philadelphia.edu.jo

?
Course Description:


Python is a real programming language tha
t has a very simple and clean syn
tax that will help you to learn
the basics of programming without the language "getting in the way". You will study a number of data
structures and algorithms that are typically used in programming real applications, and le
arn to apply these
in new situations. At the end of this course, you should be able to design and program solutions to problems
of moderate complexity. Do not consider this a course in Python. This is a course in the fundamental aspects
of programming and
is designed to teach you the necessary program
ming and problem solving skills
that
you will be able to apply in
the next part of the course which is about Networking Programming using

Python.


This course discusses every aspect of client and server program
ming. And as Python begins to replace lots
of favorite programming language, this course will benefit serious application developers who want a
feature
-
rich, yet simple language, for deploying their products. Explanation to multitasking network servers
usi
ng several models, including
:

forking, threading, and non
-
blocking sockets. Furthermore, the extensive
lab examples demonstrate important concepts and practices, and provide a cadre of fully
-
functioning stand
alone programs. Students may even use the provi
ded examples as building blocks to create their own
software.



Course Objective:

-

After successfully passing this course, the student will be able to write well
-
designed programs using
the Python language.

-

Introduction to networking an
d Internet protocols

programming:
. TCP/IP protocol architecture; user
datagram protocol (UDP); multi
-
casting; transmission control protocol (TCP); standard Internet
services, and protocol usage by common Internet applications.

-

Sockets programming; client/server; peer
-
to
-
peer
.

-

W
eb server development
:
Web se
rvers, browsers, HTTP protocol.

-

Network services
:
telnet, FTP, email protocols (SMTP, POP), DNS,
diagnostic

tools (arp, ping,
netstat, nslookup, etc
).

-

Internet addressing; TCP sockets; UDP sockets; raw sockets.

-

Students will
also learn how to apply
Multi
-
threading and exception handling

to their Network
applications.



2


Teaching / Learning Methodology:

Hands
-
On Lab, Lectures Notes, Slideshows, & Active Presentations

Technical Information and Practice Programs



Grading System:

First Exam
-

20%

Second Exam
-

20%

Attendance,
Homework
,
and
Quiz: 20%

Final Exam
-

40%



Course Contents:


week

Basic and support material to be
covered

Homework/reports
and their due dates

(1)



Introduction to Python



Why Python for this course?


(2)



Py
thon Objects



Numbers



Sequences: Strings, Lists, and
Tuples



Quiz

(3)



Mapping and Set Types



Conditionals and Loops



Files and Input/Output



Quiz

(4)



Errors and Exceptions



Functions and Functional
Programming



Quiz

(5)



Object
-
Oriented Programming



Quiz

(6)

F
irst examination



First Exam



Introduction to Client/Server
Networking


(7)



Introduction to Client/Server
Networking



Quiz

(8)



UDP



Quiz

(9)



TCP



Quiz

(10)



Socket Names and DNS



Quiz

(11)

Second
examination



Second Exam



Server Architecture


(12)



Server Arch
itecture



Quiz

(13)



HTTP



Quiz

(14)



SMTP



Quiz


3



POP

(15)

Specimen
examination

(Optional)



Telnet



SSH



FTP



Quiz

(16)

Final
Examination



Revision



Final Exam



Textbook:



Core Python Programming
, 2
nd

Edition, Prentice Hall, 2006.



Foundations of Python Network Programming “The comprehensive guide to building network
applications with Python”
, 2
nd

Edition, Apress, 2010.


R
eferences:



http://python.org/



http://corepython.com/



http://docs.python.org/tutorial/



http://www.salina.k
-
state.edu/faculty/tim/NPstu
dy_guide/index.html