|
|
||||||
|
Stonehill College |
Courses in Computer ScienceCS
101 FROM GUTENBERG TO GATES CS 102 BASIC PROGRAMMINGAn introduction to
programming for non-majors using Visual Basic .NET CS 103 COMPUTER SCIENCE IProgramming in C++,
object oriented programming and design. Introduction to algorithms :
sorting and searching. Elementary data structures. CS 104 COMPUTER SCIENCE IIContinuation of CS
103: introduction to linked lists, stacks, queues, trees. CS 195 HOW COMPUTERS WORKAn exploration of how
computers work: what goes on inside the computer (hardware), how to
program computers (software), the Internet and communication
revolution, artificial intelligence and the limits of computation. CS 201 - 202
DISCRETE MATHEMATICS FOR COMPUTER SCIEINCE I AND II LC 207 MATHEMATICAL EXPERIMENTS IN COMPUTER
SCIENCE CS 211 DATA STRUCTURESStacks, queues,
linked lists, trees, graphs, searching, and sorting. Design and
analysis of algorithms. CS 221 COMPUTER LOGIC AND ORGANIZATIONBinary number
systems, information representation, Boolean algebra, gates and digital
circuit design, timing and control , memory, designing a simple
computer, software simulation CS 281 ADVANCED PROGRAMMINGAdvanced programming
and data structure techniques in a language such as Ada, LISP,
Visual C++ or Java. CS 304 COMPUTER ARCHITECTUREThe basics of
computer organization, architecture and assembly language.
Instructions sets, address modes, and the run/time stack are explored
by programming on a RISC machine. CPU and ALU design, performance
analysis, pipelining, cache, virtual memory are examined.
Trade-offs between RISC, CISC and advanced architectures is discussed.
Assumes basic knowledge of digital logic. CS 311 ALGORITHMS AND COMPLEXITYBasic algorithm
techniques: recursion, dynamic programming, greedy method branch and
bound. Analysis of algorithms: recurrence equations, NP-completeness,
asymptotic complexity. Applications include graph and combinatorial
algorithms. CS 312 COMPILER DESIGNFinite automata and
lexical analysis, context free grammars, top down and bottom up
parsing, syntax directed translation, symbol table techniques, runtime
storage administration, code generation, optimization. CS 314 OPERATING SYSTEMSFocuses on the
fundamentals of operating systems including: processes, deadlocks,
memory management, I/O, and file systems. After a thorough grounding in
these basics, students will explore distributed/multiprocessor
computing. Security and computer networks are also covered. Lectures in
class will be reinforced with programming assignments using the Linux
operating system. CS 323 PROGRAMMING LANGUAGESFormal language
concepts including syntax and basic characteristics of grammars.
Control structures, data flow, run-time considerations. Interpretative
languages. CS 325 DATABASE MANAGEMENT SYSTEMSThis course focuses
on the basic principles of Database Management Systems. Students learn
why databases are important to the information age. Data Modeling is
taught using Entity Relationship diagrams. These data models are then
translated into Relational schemas as students learn about Relational
Algebra, Calculus, and Relational Database Systems. Practical
experience is gained through projects using the commercial RDBMS
ORACLE. Students learn SQL (both DDL and DML), database administration,
and how to create complete database applications. The course will
culminate in a major programming project that demonstrates proficiency
in modern database technology. CS 382 ARTIFICIAL INTELLIGENCEKnowledge
representation. Natural language processing. Deduction and inference.
Expert Systems. Computer vision. Robotics. Programming in LISP, PROLOG,
or another AI language. CS 384 THEORY OF COMPUTATIONIntroduction to the
general theory of computation. Formal grammars: regular, context-free,
and context-sensitive languages. Formal automata: finite-state and
pushdown models. Decidability. Parsing. Turing theory. The Chomsky
hierarchy. Also listed as MA 384. CS 390 DATA NETWORKINGData Networking: Data
communications system components, network architectures, layered
protocols, traffic analysis and capacity planning CS 393 NUMERICAL ANALYSISBoth theoretical and
practical problems in the computational aspects of mathematics:
approximation of functions, numerical differentiation, solutions to
algebraic and differential equations; topics in linear algebra. Also
listed as MA 393 CS 399 TOPICS IN COMPUTER SCIENCEVarious advanced topics in
Computer Science CS 400 COMPUTER SCIENCE CAPSTONE Large-scale software
project involving teamwork, written reports, and oral presentations. CS 475 INTERNSHIP IN COMPUTER SCIENCEOpportunity for the
qualified student to work in the computer industry under professional
supervision. CS 490 DIRECTED STUDY IN COMPUTER SCIENCEOpportunity for upper
level students to advanced work in a specialized area of computer
science.
|