Course Descriptions

CSC Home

Course Sequences

Course Descriptions

FAQs

Links

Fall 2002 Courses

Math Dept

CSC100 Introduction to Computer Science (C++)      4 credits

Concepts of problem solving, structured programming in C++, fundamental algorithms and techniques, and computer systems concepts. Social and ethical responsibilities. 

Prerequisites: Intermediate Algebra (MAT120/122), or permission of instructor. 

Course Outline

CSC110 Introduction to Computer Science (Java) 4 credits

Concepts of problem solving, structured and object-oriented programming in Java, fundamental algorithms and techniques and computer system concepts. Social and ethical responsibilities. Intended for Computer Science and Computer Systems Engineering Majors.

Prerequisites: Intermediate Algebra (MAT120/122), or permission of instructor. 

Course Outline

CSC120 Digital Design Fundamentals      4 credits

Number systems, conversion methods, binary and complement arithmetic, Boolean and switching algebra, circuit minimizations, ROMs, PLAs, flip-flops, synchronous sequential circuits, register transfer design. Building physical circuits. 

Prerequisites: CSC100/110 or CSC181 or ELE181 or ELT181 or equivalent, or permission of instructor. 

Course Outline

CSC150 Programming in C++      4 credits

Flow control, functions, pointers, data structures, file handling, and introduction to object-oriented programming. This course teaches core C++ assuming an existing background in computer programming. This is not an introductory course; CSC100 or equivalent coursework/experience is assumed. Core C++ language constructs.

Prerequisites: CSC100 or equivalent coursework or permission of instructor. 

Course Outline

CSC181 Applied Problem Solving with Visual BASIC     4 credits

Introduction to systematic definition of problems, solution formulation, and testing. Visual BASIC programming language applied to problems in mathematics, science, and business.

Prerequisites: Intermediate Algebra (MAT120/122) or permissison of instructor. 

Course Outline

CSC185 World Wide Web and Introductory Internet Programming 3 credits

The Internet opens up a whole new arena of available information: textual and multi-media. This introductory course describes how this information is organized and accessed, how new information is made available on the Internet, how to create home pages that include multi-media, and how to make those pages interact with the end-user. This course also addresses the more serious side of this technology: privacy, security and ethical issues. This course is not intended for Computer Science majors although they are welcome to take it as an elective.

Prerequisites: None. 

Course Outline

CSC200 Principles of Computer Science  4 credits

Introduction to computer science. Issues and concepts throughout the field, including software development, data organization, machine architecture, algorithmic machines, and ethics in computing. Programming in Java. 

This course assumes a previous programming background. It is the second core course for Computer Science majors; it is a requirement for Computer Science majors and is transferable as such.  

Prerequisites: CSC100/110 (or equivalent) or permission of instructor. 

Course Outline

CSC210 Data Structures and Algorithms     4 credits

Static and dynamic data structures and associated applications; recursive and iterative sorting and searching algorithms; introduction to Object-Oriented design and programming techniques; software engineering methods including design models and implementation/testing strategies; C++ or Java languages used. Beginning in Spring 1999, there will be two flavors of this course; one will be taught using C++; the other will use the Java programming language. 

This course is the third core Computer Science course; it is a requirement for Computer Science majors and is transferable as such. 

Prerequisites: CSC200 or permission of instructor. 

Course Outline

CSC225 Assembly Language Programming                      4 credits

Assembly Language programming, including input/output programming and exception/interrupt handling. Register level computer organization, I/O interfaces, assemblers, and linkers. Motorola HC11 microcontroller architecture.

Prerequisites: CSC100/110 or CSC200 and CSC120/EEE120 or permission of instructor. 

Course Outline

CSC240 Introduction to Programming Languages   3 credits

Introduction to Procedural (Ada), applicative (LISP) and declarative (Prolog) programming languages. 

This course is the fourth core Computer Science course; it is a requirement for Computer Science majors and is transferable as such. 

Prerequisites: CSC210 or permission of instructor. 

Course Outline

CSC250 Advanced Programming in C++      4 credits

This course covers the fundamentals of Object-Oriented Programming in C++ (assuming strong C or core C++ language competency) including Objects and Classes, Inheritance and Polymorphism. Data Structures using templates and the STL will be taught and used extensively throughout the course. C++ exception handling will also be covered. 

This is a course for the knowledgeable C or C++ programmer who wants to learn more about the techniques and methods used in designing and building non-trivial applications using C++. 

Prerequisites: CSC150 or CSC210 or permission of instructor. 

Course Outline

CSC251 Advanced Visual C++ Programming using MFC     4 credits

This advanced course is devoted to mastering the Microsoft Foundation Class hierarchy in Visual C++ which will be used to build applications and ActiveX components. Coverage includes Event-driven programming, Standard and Common controls, Graphics Device Interface and Device Contexts, Document/View Architecture, threads, DLLs, and ActiveX components. MS Visual C++ 6.0 will be used for all projects. 

Prerequisites: CSC250 or permission of instructor. 

Course Outline

CSC260 Object-Oriented Programming in Java  4 credits

Serious software development in Java: Applets to run inside web browsers and stand-alone graphical applications. Topics include Object-Oriented fundamentals (Objects and Classes, Inheritance, Polymorphism and Interfaces), Graphics programming with the Abstract Windowing Toolkit and Graphical User Interface design and layout. The Java language (and package set) will be taught in depth assuming an existing competency in C, C++ or Java. 

Prerequisites: CSC150 or CSC200 or permission of instructor. 

Course Outline

CSC261 Advanced Programming in Java                   4 credits

Advanced topics in Java programming are covered assuming existing Java programming skills. Topics include Client/Server development using Java sockets, the Java Database Connectivity Interface (JDBC), Remote Method Invocation (RMI) and Corba (ie., distributed objects). The Java Bean component model will be taught along with the Java Foundation Class hierarchy. 

Prerequisites: CSC260 or permission of instructor. 

Course Outline

CSC270 C# Programming              3 credits

Developing C# applications for the Microsoft .NET platform. Use of object-oriented principles in developing modularized C# programs.  

Prerequisites: CSC200, or CSC250, or CSC260, or permission of instructor. 
 
Course Outline

CSC281 Advanced Programming in Visual BASIC   4 credits

Graphical User Interfaces are designed and implemented for advanced programming applications using Visual BASIC. Topics include event-driven programs, programming mouse interactions, interactive computer graphics, and the object-oriented programming paradigm. Interfaces to databases and other applications will also be covered. 

Prerequisites: CSC100/110 or CSC181 or permission of instructor. 

Course Outline

CSC285 Programming in the WWW environment      4 credits

This course covers Internet programming environments and paradigms assuming existing programming knowledge and skills. Topics include advanced HTML (basic HTML knowledge is assumed (see CSC185)), JavaScript, Common Gateway Interface (CGI), CGI scripting languages (e.g., Perl) and CORBA (ie., distributed objects).

Issues such as security and large scale data management will be discussed as well. 

Prerequisites: CSC185 or prior programming experience/coursework or permission

of instructor. 

Course Outline