 |
Course Description
An introduction to technologies of current importance in information management
application development, such as database management, computer graphics, artificial intelligence,
and web development. Prerequisite: CS 2020.
Course Syllabus
-
Java overview [4 weeks]
-
Language basics (2 hours)
- similarities/differences from C++.
- types, control structures
- program organization
- importing
- Editing, compiling, running a java program.
-
Applets (4 hours )
- Creating and running an applet
- Using an IDE
- GUI creation. AWT? SWING?
- GUI event handling
-
Graphics and Applets (6 hours)
- Notion of a graphics window/canvas
- Key graphics primitives, e.g. drawline, drawArc
- Setting attributes, line thickness, Color
- Java Graphics object
- Event Handling
- Detained vs immediate mode, Display Lists
-
Databases [at least 3 weeks]
-
Database basics
- Introduction to information systems
- History and motivation
- Components and functions of database systems
- Database architecture
- Data dependency
-
Introduction to SQL
- Table creation: create, alter and drop
- Retrieval: various forms of select
- Update: insert, update, delete
- Database connectivity (embedded SQL, ODBC)
-
Artificial Intelligence (AI) [at least 2 weeks]
- Overview (1 hour)
-
Search space and constraint satisfaction
- Brute Force
- Depth first
- Breadth first
- Minimax search
- Heuristics
-
Web Application Development [4 weeks]
-
Internet protocols (brief overview)
- TCP/IP and Application protocols: HTTP, FTP, and Email
-
Markup Languages (brief overview)
- Hypertext Markup Language (HTML)
- Extensible Markup Language (XML)
- Extensible Hypertext Markup Language (XHTML)
- Cascading style sheets
- Use of web development software (e.g. Dreamweaver)
-
N-tier architecture
- Presentation tier
- Business logic tier
- Data access tier
- Data tier
-
Server-side scripting
- Java Server Pages (JSP)
- Client-side scripting (Javascript)
This syllabus indicates the topics covered but not the order of coverage.
Lab exercises
Programming assignments will be given using database, graphics, and artificial intelligence. A web
project will be assigned that integrates all of the material taught in this course.
|