courses of instruction - Lafayette College
courses of instruction - Lafayette College
courses of instruction - Lafayette College
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
COMPUTER SCIENCE<br />
guages and operating systems in labora<br />
tory sections. Students have opportunities<br />
for team projects as well as independent<br />
study and research.<br />
<strong>Lafayette</strong>'s fiber-optic networked cam<br />
pus provides computing resources to sup<br />
port course work, research, and personal<br />
projects. Many students gain additional<br />
experience by working part-time for the<br />
Computing Services and Support depart<br />
ment.<br />
Requirements for the major: Require<br />
ments for the Bachelor <strong>of</strong> Science degree<br />
in Computer Science are 32 <strong>courses</strong>, dis<br />
tributed as follows: Computer Science 102,<br />
103, 202, 203, 204, 205, 301, 302, 303, 305,<br />
470 or 495, and two additional 400-level<br />
<strong>courses</strong>; Mathematics 146,161,162,186,<br />
263, 282; Philosophy 103; a Values and Sci<br />
ence/Technology seminar from a list <strong>of</strong><br />
<strong>courses</strong> approved by the department that<br />
covers the social and ethical implications<br />
<strong>of</strong> computing; First-Year Seminar; <strong>College</strong><br />
Writing; and in addition two enhanced-<br />
writing <strong>courses</strong>; Physics 111-112,121-122<br />
or 131-132, and one other laboratory<br />
course in the natural sciences; four addi<br />
tional Humanities/Social Science <strong>courses</strong><br />
(at least one <strong>of</strong> each); two free electives.<br />
Requirements for the Bachelor <strong>of</strong> Arts<br />
degree in Computer Science are 32 cours<br />
es, which must include the following:<br />
Computer Science 102,103, 202,203, 205;<br />
three additional computer science <strong>courses</strong><br />
at the 300 or 400 level; Mathematics 161 or<br />
125,146,186; Philosophy 103; a coherent,<br />
pre-approved (by the department) cluster<br />
<strong>of</strong> five or six <strong>courses</strong> outside <strong>of</strong> computer<br />
science (this requirement is waived for<br />
double majors); the Common Course <strong>of</strong><br />
Study.<br />
Requirements for the minor: Computer<br />
Science 102,103, and four <strong>courses</strong> at the<br />
200 level or above.<br />
100. Introduction to Computing. The<br />
computer is the most versatile tool ever<br />
invented. In this course, students learn<br />
how to work with computers and how<br />
computers affect lives. Lecture/laboratory.<br />
(This course does NOT satisfy any re<br />
76<br />
quirement <strong>of</strong> the Common Course <strong>of</strong><br />
Study.) Staff<br />
102. Principles <strong>of</strong> Computer Science I.<br />
A rigorous introduction to object-oriented<br />
design and implementation. Lecture/labo<br />
ratory. This course requires considerable<br />
analytical ability; it is not a course in com<br />
puter literacy or basic computer skills.<br />
Staff<br />
103. Principles <strong>of</strong> Computer Science II.<br />
Continuation, from Computer Science 102,<br />
<strong>of</strong> an object-oriented approach to the de<br />
sign and implementation <strong>of</strong> s<strong>of</strong>tware sys<br />
tems. Prerequisite: Computer Science 102.<br />
Lecture/laboratory. Mr. Collins<br />
202. Analysis <strong>of</strong> Algorithms. The design<br />
and analysis <strong>of</strong> algorithms and their com<br />
plexity. This course studies techniques for<br />
measuring algorithm complexity, funda<br />
mental algorithms and data structures, in<br />
tractable problems, and algorithm-design<br />
techniques. Prerequisites: Computer Sci<br />
ence 103 and Mathematics 146.<br />
Mr. Bjorling-Sachs<br />
203. Computer Organization. A study <strong>of</strong><br />
digital logic, computer components, inter<br />
nal and external memory, <strong>instruction</strong> sets,<br />
interrupts, micro- and macroprogramming.<br />
Prerequisite: Computer Science 103. Lec<br />
ture/laboratory. Mr. Schwar<br />
204. System S<strong>of</strong>tware. This course deals<br />
with system-s<strong>of</strong>tware topics such as run<br />
time organization, parameter passing,<br />
interrupt processing, exception handling,<br />
device drivers, assembly language, and<br />
high-level language interface. Prerequisite:<br />
Computer Science 203. Lecture/laboratory.<br />
Mr. Schwar<br />
205. S<strong>of</strong>tware Engineering. The analysis,<br />
design, implementation, and maintenance<br />
strategies appropriate for large s<strong>of</strong>tware<br />
projects. Prerequisite: Computer Science<br />
103. Lecture/laboratory. Permission <strong>of</strong> de<br />
partment head required. Mr. Liew<br />
301. Principles <strong>of</strong> Programming Lan<br />
guages. An introduction to the theory <strong>of</strong>