Welcome | Admission | Enrollment | Fees | Payment | Book Information
Financial Assistance | Campus Services Other Programs

Computer Science

Keyboarding skills of 25 words per minute or enrollment in OFTECH 1A or 9A are recommended for computer programming classes.

CS 3, Introduction to Computer Systems   3 units

Transfer: UC*, CSU • Prerequisite: None.

*No UC credit for CIS 1 or 4 if taken after CS 3.

This is a beginning course intended for students who plan to take additional computer programming or computer science courses. Emphasis in the course is divided between a broad survey of the field of computer information systems and the acquisition of computer skills necessary for more advanced classes. Such skills would involve use of the operating system, file management techniques, use of an editor, and an introduction to programming.

1634   8:00a-9:20a TTh   BUS 203   Marchand K A

1635   9:30a-10:50a MW   BUS 203   Rogler H L

1636   11:15a-12:35p MW   BUS 203   Rogler H L

1637   2:15p-3:35p MW   BUS 203   Rogler H L

1638   2:15p-3:35p TTh   BUS 201   Hurley D P

1639   3:45p-5:05p MW   BUS 203   Rogler H L

1640   Arrange-6.5 Hours    ONLINE-E   Hurley D P

Above section 1640 meets for 8 weeks, Feb 18 to Apr 11, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

1641   Arrange-4.5 Hours    ONLINE-E   Hurley D P

Above section 1641 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

1642   Arrange-4.5 Hours    ONLINE-E   Hurley D P

Above section 1642 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

4105   6:45p-9:50p T   BUS 201   Marchand K A

CS 9A, Technology Project Management I    3 units

Transfer: CSU • Prerequisite: CS 3 or CIS 1.

This course covers the fundamentals of Project Management theory, implementation, and best practices. It is aimed at students who work mostly in the Technology sectors covering software and website development, and other areas of computer science or information systems. Students will learn the theory, as well as the use of Project Management software to plan, track and manage project resources. Topics covered include project life cycles, tasks, schedules, resources, and costs.

CS 9A is the same course as CIS 9A. Credit may be earned for one, not both.

4106   6:45p-9:50p T   BUS 255   Kurtz K A

CS 9B, Technology Project Management II    3 units

Transfer: CSU • Prerequisite: CS 9A or CIS 9A.

This course covers advanced topics of Project Management theory and practice. Students will learn how to manage projects with changing tasks and schedules, and to adjust their resources and budgets. Also covered are leadership and communication skills. Students will complement the theory with case studies and the use of Project Management software.

CS 9B is the same course as CIS 9B. Credit may be earned for one, not both.

1643   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1643 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 10, Discrete Structures   3 units

Transfer: UC, CSU • IGETC AREA 2 (Mathematical Concepts) • Prerequisite: Math 8.

This course is intended for computer science, engineering, and mathematics majors. Topics include proof techniques, cardinality of sets, partial orderings and equivalence relations, symbolic logic and valid arguments, permutations and combinations with repetition, and an introduction to graph theory.

Computer Science 10 is the same course as Math 10. Students may receive credit for one, but not both.

4107   5:15p-6:35p TTh   MC 66   Nestler A E

CS 15, Visual Basic Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 3.

This introductory course covers basic programming constructs and techniques using VB.Net. Students will learn how to plan, create and debug code based on Object Oriented Programming design and analysis techniques. Topics covered include Data Types, Variables, Decision Statements, Loops, Arrays Input/Output, and basics of Object Oriented Programming using Classes and Objects.

VB .NET complier software is included in course material. This course helps students pass Microsoft Certification Exams.

1644   12:45p-2:05p TTh   BUS 259   Darwiche J

1645   Arrange-4.5 Hours    ONLINE-E   Robertson Sc E

Above section 1645 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

4108   6:45p-9:50p W   BUS 201   Robertson Sc E

CS 17, Assembly Language Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 50.

Assembly Language allows the programmer to fully utilize all of the special features of the computer in the most efficient manner. It also aids the high-level language programmer in writing subroutines. The student will write Assembly Language programs that utilize the Intel Pentium chip architecture.

Students must have access to a Pentium-chip compatible computer system. Software included in course material.

1646   Arrange-4.5 Hours    ONLINE   Stahl H A

Above section 1646 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to http://homepage.smc.edu/stahl_howard.

CS 19, Advanced Visual Basic Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 15.

This course covers advanced programming techniques using Visual Basic .NET. Topics include Structures, Classes, Events, Inheritance, and Polymorphism, Overloading, Dynamic Binding, Multiple Document Interface, Windows API, Collections, and Exception Handling. Students also learn how to interface to Databases and build Web forms.

VB. NET compiler software is included in course material. This course helps students pass Microsoft Certification Exams.

1647   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1647 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 20A, Data Structures with C++    3 units

Transfer: UC, CSU • Prerequisite: CS 52.

This advanced programming course will use the C++ language to teach methods of representing and manipulating data within a computer. Topics include stacks, queues, trees, sorting, searching, modeling, and dynamically created storage spaces. Students will learn the problem solving skills necessary to write complex computer programs and to make important software design and maintainability decisions.

Software included in course material.

4109   6:45p-9:50p W   BUS 259   Stahl H A

CS 37, Web Programming in VB .Net    3 units

Transfer: UC, CSU • Prerequisite: CS 15.

VB.Net is an object-oriented programming language that is part of the .Net Microsoft suite. This course covers web application development, including the use of ASP and VB .NET. Topics include ASP .NET, Web forms and controls, web data access, state management, web services, using AJAX and security measures implementation.

4110   6:45p-9:50p T   BUS 259   Olsen A B

CS 40, Operating Systems   3 units

Transfer: UC, CSU • Prerequisite: CS 17. • Advisory: CS 3 and one programming course.

This course provides a functional understanding of operating systems. Topics include memory and process management under multiprogramming, devices and file systems, and user interfaces. Foundation concepts reviewed at the outset include hardware architecture, CPU instruction sets and machine language, number systems, and data structures. UNIX is used to demonstrate concepts, commands, and programming languages.

4111   6:45p-9:50p F   BUS 263   Morgan D B

CS 42, Computer Architecture    3 units

Transfer: UC, CSU • Prerequisite: Math 20.

This course provides an introduction to fundamental operations and components that make computers possible. Topics include: number systems; Boolean algebra and logic gates (AND, OR, NOT, XOR, and NAND); simplification of Boolean functions; combination logic; sequential logic; design of the adder, subtractor, ROM, decoder, and multiplexer; register transfer logic; and processor logic, control logic, and microcomputer system design.

4112   6:45p-9:50p W   BUS 207   Kurtz K A

CS 50, C Programming   3 units

Transfer: UC, CSU • Prerequisite: CS 3.

This course will include a review of the concepts of structured programming, error checking, sorting, searching, data types, advanced array handling methods, pointers, and data structures. Applications in business, mathematics, and science will be discussed.

1648   1:00p-4:05p Sat   BUS 207   Dehkhoda A

4113   5:15p-6:35p TTh   BUS 207   Dehkhoda A

4114   6:45p-9:50p T   BUS 203   Dehkhoda A

CS 52, C++ Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 50.

This course is a continuation of C language programming using the C++ superset of C. C++ offers the following enhancements to C: operator and function overloading, information hiding, inheritance, and virtual functions. C++ will be used in the context of both traditional and object-oriented programming.

Software included in course material.

NEW 4490   6:45p-9:50p M   BUS 201   Robertson SC E

1649   Arrange-4.5 Hours    ONLINE   Stahl H A

Above section 1649 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to http://homepage.smc.edu/stahl_howard.

CS 53A, iOS Development with Objective-C    3 units

Transfer: CSU • Prerequisite: CS 50

Objective-C is an object-oriented language designed for iOS, Apple’s advanced mobile platform. In this course, students will learn the syntax and semantics of Objective-C, be able to apply fundamental principles of top-down algorithmic design to solve computer problems, and learn how to code, test and debug programs in this language using the XCode, the Apple integrated development environment.

Please note: Students will need access to Intel-based Mac computers but do not need to have a mobile device such as an iPad or IPhone. Students will be provided XCode to download, if needed.

4115   6:45p-9:50p Th   BUS 203   Dehkhoda A

CS 53B, iOS Mobile App Development    3 units

Transfer: CSU • Prerequisite: CS 53A.

This course teaches how to design, develop, test and debug applications that run on Apple iOS, a software stack for Apple mobile devices that includes an operating system, middleware and key applications. Topics include the Cocoa Multi-Touch programming framework, the Model-View-Controller design paradigm, application structure, strings, graphics, user interfaces and storage.

NOTE: Students will need access to Intel-based Mac computers, but do not need to have a mobile device such as an iPad or IPhone. Students will be provided XCode to download, if needed.

4116   6:45p-9:50p W   BUS 203   Dehkhoda A

CS 55, Java Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 19 or 50.

Java is a general-purpose language for writing platform-independent, robust, secure programs. This course is intended for students who have completed a course in C programming. Students will learn how to develop Java applications and applets. Topics covered include the Java programming language, object-oriented programming (OOP), the Java applications programming interface (API), and graphical user interfaces (GUI’s).

1650   9:30a-10:50a TTh   BUS 201   Dehkhoda A

4117   6:45p-9:50p Th   BUS 201   Jupe E

CS 56 Advanced Java Programming    3 units

Transfer: UC, CSU • Prerequisite: CS 55.

Java is a general-purpose language for writing platform-independent robust, secure programs. This course continues where CS 55 leaves off in developing mastery of the use of Java programming language and its extensive APIs. Topics covered include exceptions, multithreading, multimedia, Input/Output, Java Database Connectivity (JDBC), Servlets, Remote Method Invocation (RMI), and networking.

1651   9:00a-12:05p Sat   BUS 207   Dehkhoda A

CS 60, Database Concepts and Applications   3 units

Transfer: CSU • Prerequisite: CS 3 and one programming course.

This course introduces modern database concepts while emphasizing the relational database model. Topics include design methodologies, normalization of tables to reduce redundancies, supertypes and subtypes to reduce nulls, data integrity, referential integrity, and using locks and other techniques for concurrency control in a multi-user database. Factors that should be balanced during the design of a database are described. To document databases, entity relationship diagrams, relational schemas, and data dictionaries are described. Principles are applied by performing exercises using MySQL or other database management system. SQL and other languages are used to create and fill tables, retrieve data, and manipulate it by stored programs.

4118   6:45p-9:50p M   BUS 255   Rogler H L

CS 61, Microsoft SQL Server Database    3 units

Transfer: CSU • Prerequisite: CS 3.

Microsoft SQL Server is a popular midrange relational database management system (DBMS) that is used in client/server systems and as a personal DBMS. It can be accessed through the Internet. Topics covered in this course include installing the software, principles of relational databases; creating databases, tables, indexes, and views; inserting, deleting, and updating raw data; updating transactions; and querying the database. With the Transact-SQL extensions, topics include creating functions, procedures, and triggers stored in the database.

4119   6:45p-9:50p W   BUS 250   Rogler H L

CS 73, Computer Security Concepts    3 units

Transfer: CSU • Prerequisite: CS 3 or CIS 1.

In this introductory course students will learn how to defend and protect critical computer assets from various security threats including computer worms and viruses. This course will describe fundamental techniques and principles for modeling and analyzing security. Students will learn how to express security requirements, translate requirements into policies, implement mechanisms that enforce policy, and ensure that these policies are effective. Current industry best practices for safeguarding computer resources will be discussed. Various case studies will outline the typical way that security failures get exploited by attackers and how these attacks can be discovered, understood, and countered.

1652   Arrange-4.5 Hours    ONLINE-E   Hurley D P

Above section 1652 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 75, Network Protocols and Analysis    2 units

Transfer: CSU • Prerequisite: CS 70.

This course introduces major protocols and their roles in protocol suites with emphasis on TCP/IP. Detailed coverage is given to at least one protocol at each layer, the main application level protocols and at least one security protocol. Analytic programs such as ping, traceroute, and packet capture are studied and applied as tools to protocol analysis. The Wireshark packet capture and protocol decoder program is centrally utilized.

1653   10:00a-12:05p Sat   BUS 263   Morgan D B

CS 80, Internet Programming    3 units

Transfer: CSU • Prerequisite: CS 3.

This course surveys the many technologies that are used to program multitiered, client/server, database-intensive, Web-based applications. Topics include: XHTML, Cascading Style Sheets (CSS), JavaScript, Extensible Markup Language (XML), RSS, Ajax, Rich Internet Applications, Web servers, databases, MySQL, PHP, Ruby on Rails, Active Server Pages (ASP), JavaServer Faces, and Web Services.

1654   12:45p-2:05p TTh   BUS 203   Geddes Jr J K

1655   Arrange-4.5 Hours    ONLINE-E   Geddes Jr J K

Above section 1655 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

1656   Arrange-4.5 Hours    ONLINE-E   Geddes Jr J K

Above section 1656 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 81, JavaScript and Dynamic HTML    3 units

Transfer: CSU • Prerequisite: CS 80.

This introductory programming course teaches the fundamentals of computer programming with the JavaScript language, the standard for client-side Web programming. It offers a thorough treatment of programming concepts with programs that yield visible or audible results in Web pages and Web-based applications. It shows how to use Core and Client-Side JavaScript and the Document Object Model to build interactive, high-performance Web sites.

This course uses JavaScript which is open-source (free) software.

1657   Arrange-4.5 Hours    ONLINE-E   Geddes Jr J K

Above section 1657 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 85 PHP Programming    3 units

Transfer: CSU • Prerequisite: CS 81.

This course teaches how to design and write applications that extend Web servers. These applications process data submitted from Web forms and access back-end databases to dynamically generate Web pages. This course covers the PHP server-side technology. PHP, which stands for “PHP: Hypertext Preprocessor” is a widely-used, Open Source, general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.

This course uses PHP and MySQL which are open-source (free) software.

1658   Arrange-4.5 Hours    ONLINE-E   Geddes Jr J K

Above section 1658 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 87A, Python Programming    3 units

Transfer: CSU • Prerequisite: CS 3.

This course introduces the Python programming language. Students will learn how to write programs dealing in a wide range of application domains. Topics covered include the language syntax, IDE, control flow, strings, I/O, classes and regular expressions. Students may use either a PC (Windows) or a Mac (Linux) to complete their programming assignments.

1659   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1659 meets for 13 weeks, Mar 10 to Jun 06, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 88A, Independent Studies in \Computer Science    1 unit

Transfer: CSU

Please see “Independent Studies” section.

1660   Arrange-1 Hour    BUS 220G   Bolandhemat F

CS 88B, Independent Studies in Computer Science    2 units

Transfer: CSU

Please see “Independent Studies” section.

1661   Arrange-2 Hours    BUS 220G   Bolandhemat F

CS 88C, Independent Studies in Computer Science    3 units

Transfer: CSU

Please see “Independent Studies” section.

1662   Arrange-3 Hours    BUS 220G   Bolandhemat F

CS 90A, Internship in Computer Science    1 unit

Transfer: CSU • Prerequisite: None.

Students must arrange an approved internship prior to enrolling in this class. F-1 students must see the Immigration Coordinator at the International Education Center before enrolling.

The Internship Program is designed to provide the student with the opportunity of on-site work experience in a computer lab. Students spend time weekly in a supervised computer facility.

1663   Arrange-8 Hours        Bolandhemat F

Above section 1663 meets for 8 weeks, Apr 21 to Jun 13.

1664   Arrange-12 Hours    BUS 220G   Bolandhemat F

 Previous | Next

IMPORTANT! Many SMC classes require the use of a computer with Internet access to reach class resources and/or to complete assignments and/or take exams. To locate a computer lab on campus go to www.smc.edu/acadcomp and click on the “Labs” link.