| |
Course Descriptions: Computer Science (COSC)
COSC 105. Introduction to Programming (3) Introduction to programming with the C++ language. Data types: numeric, character, the string class, and boolean. Input/output stream classes: interactive I/O, file I/O. Programming constructs: sequential, conditional, iterative. Functions: parameter passing mechanisms, function libraries. Arrays: one-dimensional arrays, searching and sorting, two-dimensional arrays. Introduction to classes.
^ top
COSC 219. Computer Science Review (1) A review of topics from COSC 220. This course is intended for those who have previously taken a computer programming course and wish to enroll in COSC 221 without taking COSC 220. Topics selected for review will depend on the preparation of the students and may vary from year to year. Prerequisite: consent of instructor.
^ top
COSC 220. Computer Science I (3) Introduction to programming with an object-oriented framework using the C++ language. Input/output: graphical user interfaces based on the model/view/controller paradigm. Programming constructs: sequential, conditional, iterative. Data abstraction: abstract data structures, stacks and lists as abstract data types. Procedural abstraction: proper procedures, function procedures. Basic algorithms and applications: random numbers, iterative array searching and sorting. Prerequisite: MATH 220 or concurrent enrollment.
^ top
COSC 221. Computer Science II (3) Introduction to object-oriented programming. Recursion–basic algorithms, array searching and sorting. Dynamic storage allocation–pointer types, linked lists and binary search trees as abstract data types. Classes–objects, abstract classes, inheritance and polymorphism, linked lists and binary trees as classes. Prerequisites: MATH 221 or concurrent enrollment and COSC 220.
^ top
COSC 292. Selected Topics (1-4)
^ top
COSC 299. Directed Studies (1-4) Consent of the divisional chairperson is required.
^ top
COSC 320. Data Structures (4) Abstract data types, classes, and design patterns with the C++ language. Sorting algorithms–insertion sort, merge sort, heapsort, quicksort. Linear data structures–stacks, queues, linked lists. Hash tables. Trees–binary search trees, 2-3 trees, B-trees, abstract syntax trees. Disjoint sets. Graphs–search algorithms, spanning trees, Kruskal's and Dijkstra's algorithms. Prerequisite: COSC 221.
^ top
COSC 330. Computer Systems (3) A study of computers as multi-level systems. The machine level: binary representations, instruction sets, von Neumann machines. The assembly level: addressing modes, compiling to the assembly level, language translation principles. The operating system level: loaders, interrupts. Prerequisite: COSC 320.
^ top
COSC 450. Programming Paradigms (4) A study of three programming paradigms and their associated languages: the functional paradigm with Scheme, the logical/declarative paradigm with Prolog, and the concurrent processing paradigm with Java. Prerequisite: COSC 221.
^ top
COSC 475. Computer Networks (4) The theory of computer networks and its applications. Network layers and protocols for the OSI reference model. TCP/IP and the Internet. Network programming using the Java language. Rudiments of queuing theory. Prerequisites: MATH 510 or concurrent enrollment, COSC 450 or concurrent enrollment, and COSC 330.
^ top
COSC 490. Senior Capstone (4) A large software team project based on a topic that may vary from year to year and which builds on one or more of the prerequisites. Possible topics include but are not limited to database, computer graphics, artificial intelligence, compiler construction, distributed computing. Oral presentation required. Prerequisites: COSC 475, COSC 450, MATH 330, and MATH 460. (WI, RM, PS).
^ top
COSC 525. Computer Organization (3) Hardware organization and design. The logic gate level: combinational and sequential circuits and devices. The microprogramming level: microarchitecture, microprograms. The machine level: CPU designs, instruction formats, addressing modes, floating point formats. Parallel architectures. Occasional laboratory sessions. Prerequisite: COSC 330.
^ top
COSC 535. Operating Systems (3) Operating systems design and implementation: process management, device management, memory management, file management, protection and security. Prerequisites: COSC 330 and COSC 450.
^ top
COSC 590. Research in Computer Science (1-4) Research in the field of computer science. May be taken with the consent of a selected faculty member. The student will be required to submit a written research paper to the faculty member.
^ top
COSC 592. Selected Topics (1-4)
^ top
COSC 595. Internship in Computing (1-4) A supervised internship in a computing environment. Placement will be in a business, industry, service organization, or government institution. In addition to frequent consultation with the instructor on campus, the student will submit written reports of activities and will make an oral presentation to the computer science/math faculty at the conclusion of the work experience. Prerequisites: completion of at least ninety units with a minimum 3.0 grade point average and approval of the Computer Science/Math Internship Committee.
^ top
COSC 599. Directed Studies (1-4) Consent of the instructor and the divisional chairperson is required.
^ top
Although the above are excerpted from the 2008-2009 Seaver catalog this is
not an official binding document. To view the actual catalog visit:
http://seaver.pepperdine.edu/academics/catalog/
|
 |