Java Course Syllabus

Jan 15, 1998
Instructor : Dr. Constantine Roussos
Office : Hobbs 104
Phone : Office 544-8395
EMail: roussos@lynchburg.edu

The primary objectives of this course are the following:
The student will develop an intermediate level proficiency in the use of the Java programming language especially as applied to developing web-based applications. The student will also develop comparable proficiency in the use of HTML and JavaScript. The student will be able to use these three development tools together to develop interactive web-based applications. Applications developed in the course will utilize graphic images, tables, forms, frames, CGI programming and database interfaces in a interactive GUI environment.


Using our VAX/VMS, Windows 95 and Windows NT computers.
A) Getting started
1. On-campus computing facilities and LC's LAN
2. TELNET and logging into your VAX account.
a. Username, Password, UIC., etc.
b. Directories and subdirectories.
c. Privileges and access.
3. VMSCAI and other forms of help
B) The class directories and your directories - VMS and Windows NT
1. Passwords, protection, etc.
2. Accessing the directories
3. file owner, protection, date/time.
C) Files under VMS and Windows
1. Understanding and using various types of files
2. Login scripts and LOGIN.COM
D) Electronic MAIL under VMS.
1. Using MAIL commands.
a. Reading, sending, extracting, etc.
b. Sending MAIL to me.
2. Your homework assignments, programs and general communication.
3. FTP and your class materials
An Overview of Web Serving and Surfing
Web servers
Web clients (browsers)
HTML
Your web directories
CGI programming
HTML
The Basic HTML tags
Intermediate HTML
Style Sheets
  • Cascading style sheets and their properties
  • JavaScript style sheets and their properties
JavaScript
Overview
  • An object oriented programming language within HTML
    • Data types
    • Literals
    • Operators
    • Statements
  • A scripting language for HTML
  • Writing a first JavaScript

Objects in JavaScript and HTML
  • Classes and Objects
  • Properties
  • Methods
  • Events

Functions and parameters

Event Handling
The Java Programming Language
The Java Virtual Machine and other introductory topics

Further discussion of Object Oriented Programming
  • Constructors and Finalizers
  • Inheritance
  • Scope/ Visibility
  • Polymorphism

Overview of Java applications
  • The relationship between Java, JavaScript and HTML
  • An independent object oriented programming language
    • Data types
    • Literals
    • Operators
    • Statements
More Java
  • Strings
  • Flow Control
  • Dynamic Data Structures
  • Arrays
  • Exception Handling
  • Threads

Java APIs, Libraries and Utility Classes

Java Applets
  • Utilities and Libraries
  • The Abstract Window Toolkit
  • Graphics
  • File I/O
  • Network Programming
Specifications
RFCs
Standards Committees - Who they are and what they do.
TCP/IP and its implmentations
  • Telnet
  • FTP
  • HTTP
  • eMail
Programming with sockets
Network Hardware
Data transmission media
  • Fiber
  • Twisted pair
  • Thin and thick coax
  • Wireless
Network Interface Cards
Hubs
Routers and Switches
Communication Protocols and Network Architecture
Protocols and Protocol Stacks - What they are.
Example Protocols and Stacks
Some Possible Projects/Programs
  • Create basic HTML pages using the template
  • Create an HTML application using all the HTML devices used in HTMLDemo.html.
  • Create HTML pages implementing a small on-line business using JavaScript and HTML
  • Use JavaScript tocreate a financial calculator based on MoneyMac.
  • Use JavaScript to create an object inspector
  • Use JavaScript to write an HTML page generator.
  • Write a Java applet that implements a list object.
      The list must implement the following methods
    • Init - Initialize the list
    • Addr - add to the rear of the list
    • Addf - add to the front of the list
    • Delf - delete from the front of the list
    • Display - display the elements of the list
  • Write a Java application which uses a proprietary TCP protocol to communicate between two computers. The application will consist of client and server code. The client will first prompt for a username and password. It will then accept a message from the user and transmit it to the server. The server will store the message in a file whose name and location will be determined by information in the message header. The message header will contain the following:
    1. The URL of the sending machine
    2. The date and time of the message
    3. A message ID
    4. The sending user ID and encrypted password
    5. The message

  • Testing :
    There will be 3 tests, an undetermined number of pop quizzes, and homework assignments, several projects and programs and a final exam. Class participation will also count towards one's grade.

    Two tests 32%
    Final Exam 24%
    Projects and Programs 35%
    Homework and class participation 9%


    Total 100%

    Grading :
    The standard 10 point grading scale will be used.
    (i.e. 90-100 = A, 80-89 = B, 70-79 = C, 60-69 = D, below 60 = F)
    THERE WILL BE NO CURVE. You will always know approximately how you are doing in the course by applying the above factors to your grades to date.


    Important notes:

    1. If you are having trouble with the course come to me for help right away - DO NOT WAIT.
    2. You are responsible for attending class, completing assignments on time, taking tests when scheduled, knowing the College's grading policies, knowing course withdrawal dates and making up all missed work.
    3. As always, the honor code is in full effect. You may NOT collaborate on tests. You may NOT collaborate on projects and programs except as instructed by me. If you are ever in doubt of whether or not an action constitutes an honor violation ask me beforehand.
    4. Class participation on your part is an excellent means of making our classes more interesting and demonstrating to me your knowledge of and interest in the subject matter.




    Top of this page   Top of page      Home page   Home page