|

         
|
 |
Computer Science Program
The Computer Science program at Marietta College prepares students to
work at the systems level on software and other computer products developed
by high-technology enterprises. It also prepares students to enter graduate
school and pursue advanced studies in Computer Science and related fields.
The core courses in the curriculum stress the basic concepts underlying
the study of Computer Science: algorithms, data types and structures,
abstraction, digital electronics, architecture, programming language principles,
databases and operating systems.
By choosing electives carefully, students can focus in more specialized
areas of Computer Science, including:
- Networking (including working on McNet)
- Artificial Intelligence and Expert Systems
- Scientific Computing and Numerical Analysis
- Graphics (including fractals)
- Programming Language Theory and Compilers
- Theoretical Foundations of Computing.
Programs Goals
- Given the specifications for a software application, design the
appropriate internal and external data structures, then design, implement,
and test the algorithms which represent and transform the data structures
necessary to solve the problem.
- Work within a group programming environment to utilize the object
oriented paradigm and sound software engineering principles, such
as using cohesive, independently compiled modules with appropriate
abstract data types and user interfaces, in the program development
cycle.
- Communicate technical information clearly and concisely in oral
and written forms.
- Understand client/server and enterprise computing strategies and
their important relationships to database design, application programming,
data communications, and networking (workstations, LANs, WANs, World-Wide-Web).
- Use analytical and technical skills for identifying, studying, and
solving complex system problems.
- Implement algorithms using a variety of software development tools
based on a solid understanding of the architecture of the tools.
- Design and implement major components of computer systems, such
as hardware architectures, language translators, multi-tasking kernels
and graphical user interfaces.
- Utilize appropriate formal methods to model and analyze algorithms,
programming languages, tasks, digital circuits, bus architectures
and other aspects of computer systems.
- Apply the various stages of the system development life cycle to
the creation of medium and large-scale system-level software.
Requirements
|