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.

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

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

NEW 3112   9:30a-10:50a TTh   BUS 203   Marchand K A

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

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

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

1606   Arrange-6.5 Hours    ONLINE-E   Hurley D P

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

1607   Arrange-4.5 Hours    ONLINE-E   Hurley D P

Above section 1607 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

4103   6:45p-9:50p T   BUS 201   Hurley D P

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.

4104   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.

1608   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1608 meets for 13 weeks, Mar 04 to May 31, 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.

4105   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.

1609   12:45p-2:05p TTh   BUS 203   Darwiche J

1610   Arrange-4.5 Hours    ONLINE-E   Hurley D P

Above section 1610 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

4106   6:45p-9:50p W   BUS 106   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.

1611   Arrange-4.5 Hours    ONLINE   Stahl H A

Above section 1611 meets for 13 weeks, Mar 04 to May 31, 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.

1612   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1612 meets for 13 weeks, Mar 04 to May 31, 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.

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

CS 30, MATLAB Programming    3 units

Transfer: UC, CSU • Prerequisite: Math 7.

MATLAB is a scientific computing tool for data modeling and analysis, image processing, and other data intensive applications. This class is designed for science major students. It covers the basics of programming using MATLAB and uses numerical methods as an application to help students learn how to accelerate simple and complex numerical data modeling and analyses.

1613   Arrange-4.5 Hours    ONLINE-E   Darwiche J

Above section 1613 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

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.

1614   Arrange-4.5 Hours    ONLINE-E   Olsen A B

Above section 1614 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

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.

4108   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.

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

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

4110   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.

4111   6:45p-9:50p M   BUS 259   Stahl H A

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.

4112   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.

4113   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).

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

4114   6:45p-9:50p Th   BUS 201   Staff

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.

1617   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.

4115   6:45p-9:50p M   BUS 250   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.

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

CS 65, Oracle Programming    3 units

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

This course is a practical, hands-on overview of the Oracle Database Management System to store, retrieve, and manipulate data. Oracle is a widely used database that runs on PC’s, minicomputers, and mainframes, and Oracle programmers and developers are very much in demand. Oracle’s SQL is used to create and alter tables with various constraints. Data is retrieved and manipulated by using SELECTS that can group data and retrieve data from several tables by joining them or by using set operations. Views are created. PL/SQL, with its variables, symbolic constants, IF statements, and loops is used to program stored functions, stored procedures, and triggers. Cursors and error handling (exceptions) are introduced.

4117   6:45p-9:50p Th   BUS 250   Rogler H L

CS 70, Network Fundamentals and Architecture    3 units

Transfer: CSU • Prerequisite: One programming course.

This course offers a broad introduction to networking concepts and analyzes different network architectures. Introductory topics include network topologies, media and signaling, protocols, addressing, and distributed networks. The varied ways to connect computers are explored as are the resulting architectures. The course explores subnetting, both physical and virtual and internetworks are constructed in the lab. Server programs are introduced to demonstrate their signature socket-API structure. Specific real-world services such as the apache web server, BIND name server, NFS and Samba file system servers, DHCP address server, and others are discussed.

4118   6:45p-9:50p F   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.

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

Above section 1618 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

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

Above section 1619 meets for 13 weeks, Mar 04 to May 31, 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.

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

Above section 1620 meets for 13 weeks, Mar 04 to May 31, 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.

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

Above section 1621 meets for 13 weeks, Mar 04 to May 31, and is a Distance Education course conducted over the Internet. For additional information, go to smconline.org (schedule of classes).

CS 86, Android Development    3 units

Transfer: CSU • Prerequisite: CS 55 • Skills Advisory: CS 56

This course teaches how to design, develop, test, and debug applications that run on Android, a software stack for mobile devices that includes an operating system, middleware and key applications. Topics include the Android Software Development Kit (SDK), design principles, application structure, strings, graphics, user interfaces, animation, storage, networking, telephony, Location-Based Services (LBS), multimedia, 3D graphics, notifications, and services.

4119   6:45p-9:50p T   BUS 259   Geddes Jr J K

CS 88A, Independent Studies in Computer Science    1 unit

Transfer: CSU

Please see “Independent Studies” section.

1622   Arrange-1 Hour    BUS 220G   Bolandhemat F

CS 88B, Independent Studies in Computer Science    2 units

Transfer: CSU

Please see “Independent Studies” section.

1623   Arrange-2 Hours    BUS 220G   Bolandhemat F

CS 88C, Independent Studies in Computer Science    3 units

Transfer: CSU

Please see “Independent Studies” section.

1624   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.

1625   Arrange-8 Hours        Bolandhemat F

Above section 1625 meets for 8 weeks, Apr 15 to Jun 07.

1626   Arrange-12 Hours    BUS 220G   Bolandhemat F

 Previous | Next