{
  "college": "miracosta-college",
  "edition": "2026-2027",
  "code": "CS",
  "name": "Computer Science",
  "sourceUrl": "https://catalog.miracosta.edu/disciplines/computerscience/",
  "courses": [
    {
      "code": "CS 101",
      "subject": "CS",
      "number": "101",
      "title": "Introduction to Computer Science Principles",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "cid": [
        "COMP-112"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course introduces beginning or exploring students to core principles, theories, and topics in computer science while emphasizing their relevance in society. Topics include general computational problem-solving techniques, design of digital devices, how computers work, and how to design, implement, test, and document programs in both an interactive and a high-level programming language (Python). This course is highly recommended for students prior to taking a beginning programming class (CS 111, CS 150, CS 138, or CS 155), non-computer science majors, or those interested in exploring computer science. C-ID COMP-112.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 6,
          "open": 6,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-101"
        }
      ]
    },
    {
      "code": "CS 111",
      "subject": "CS",
      "number": "111",
      "title": "Introduction to Computer Science I: Java",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "cid": [
        "COMP 122",
        "ITIS-130"
      ],
      "transfer": [
        "CSU",
        "UC (with credit limitation)"
      ],
      "description": "This course introduces object-oriented programming and concepts designed primarily for students majoring in computer science and engineering who have some programming fundamentals. The course uses topics of personal and social relevance to investigate the impacts of computing through exploring language basics, including control structures, data types, input/output, operators, classes, methods and parameters, basic inheritance, and documentation practices as well as testing and verification techniques. UC CREDIT LIMITATION: No credit for CS 111 if taken after CS 112. C-ID COMP 122, ITIS-130.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 8,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-111"
        }
      ]
    },
    {
      "code": "CS 112",
      "subject": "CS",
      "number": "112",
      "title": "Introduction to Computer Science II: Java",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 111",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course uses topics of personal and social relevance to investigate the impacts of computing through exploring advanced object-oriented programming concepts such as abstraction, inheritance, polymorphism, and encapsulation. Topics include recursion, generics, event-driven programming, graphical user interfaces, file input and output, and exception handling.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 6,
          "open": 6,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-112"
        }
      ]
    },
    {
      "code": "CS 113",
      "subject": "CS",
      "number": "113",
      "title": "Basic Data Structures and Algorithms",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 112 or CS 151",
      "cid": [
        "COMP-132"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "The course uses topics of personal and social relevance to investigate the impact of computing through efficient algorithms and properly designed data structures. Students explore the software development process by developing effective solutions using industry-standard tools. Topics include searching, sorting, hashing, algorithm analysis, object-oriented design, collections, lists, stacks, queues, trees, sets, dictionaries, and graphs. C-ID COMP-132.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 4,
          "open": 4,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-113"
        }
      ]
    },
    {
      "code": "CS 134",
      "subject": "CS",
      "number": "134",
      "title": "Mobile Application Development",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 112",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course covers how to develop applications for smartphones and tablets with the Android open-source platform. Topics include the Model-View-Controller architecture, designing and handling user input, defining activity layouts, application events, displaying images, managing navigation, and core device features, such as GPS, the Google Maps API, accelerometers, and touch gestures. Students leverage and expand their programming knowledge to build mobile applications from start to finish.",
      "notes": [
        "Course Typically Offered: Fall"
      ],
      "offered": []
    },
    {
      "code": "CS 138",
      "subject": "CS",
      "number": "138",
      "title": "Programming with Python",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "advisory": "CS 101",
      "cid": [
        "COMP-122"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course introduces the Python programming language and its features. Python, a dynamic, object-oriented, extensible language, is perfect for the beginner and also meets industry needs. Python is well-suited for applications ranging from simple data manipulation to large, complex applications. C-ID COMP-122.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 6,
          "open": 6,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-138"
        }
      ]
    },
    {
      "code": "CS 139",
      "subject": "CS",
      "number": "139",
      "title": "Advanced Programming with Python",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 138",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course continues with the Python programming language, using topics of personal and social relevance to investigate the impact of computing. This course includes data structures and libraries for modularization, data extraction and visualization, web APIs, server applications, and an introduction to machine learning.",
      "notes": [
        "Course Typically Offered: Spring"
      ],
      "offered": []
    },
    {
      "code": "CS 150",
      "subject": "CS",
      "number": "150",
      "title": "C++ Programming",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "cid": [
        "COMP-122"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "Using an object-oriented approach to design and programming in the C++ language, this course covers data input/output, data types, control structures, operators, functions, and the operating environment. Upon successful completion of the course, students are able to construct moderately complex programs in C++. C-ID COMP-122.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 4,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-150"
        }
      ]
    },
    {
      "code": "CS 151",
      "subject": "CS",
      "number": "151",
      "title": "Advanced C++ Programming",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 150",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "In this advanced programming course, students design and implement increasingly complex C++ programs that build upon skills acquired in C++ Programming (CS 150). Students also develop appropriate and efficient methods to test their programs. Topics include polymorphism, inheritance, class libraries, the standard template library, pointers, advanced file input/output operations, recursion, virtual functions, exception handling, dynamic memory management, bitwise operators, and data structures, such as linked lists, stacks, queues, and binary trees.",
      "notes": [
        "Course Typically Offered: Fall, Spring"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 2,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-151"
        }
      ]
    },
    {
      "code": "CS 155",
      "subject": "CS",
      "number": "155",
      "title": "Introduction to Game Development",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "advisory": "CS 101",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course provides an introduction for students who have an interest in combining skills in programming, software development, and game development in C# and the Unity platform to create interactive games that reflect people and cultures, most especially those minoritized in the gaming industry. Students think critically about the industry while exploring how representation and their intentional choices change the impact of their work. The C# language encompasses functional, generic, object-oriented, and component-oriented programming disciplines, which students apply within Unity to create games that utilize a combination of gameplay mechanics, UI, and robust error handling.",
      "notes": [
        "Course Typically Offered: Fall"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 2,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-155"
        }
      ]
    },
    {
      "code": "CS 210",
      "subject": "CS",
      "number": "210",
      "title": "Software Engineering",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 112",
      "cid": [],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course introduces students to team-based software development and engineering methods, including specification, design, implementation, testing, and process. It emphasizes team development, agile methods, software design, and use of software engineering tools, such as integrated development environments, version control, automated test framework, build automation, and software containers. As a culminating project, each team produces three deliverables: a Software Requirements Specification document, a Software Design Specification document, and an executable application satisfying stakeholder requirements.",
      "notes": [
        "Course Typically Offered: Fall, Spring"
      ],
      "offered": []
    },
    {
      "code": "CS 220",
      "subject": "CS",
      "number": "220",
      "title": "Computer Architecture and Embedded Systems",
      "units": "3",
      "hours": "Lecture 2 hours, laboratory 3 hours",
      "prerequisite": "CS 112 or CS 151",
      "cid": [
        "COMP-142"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "This course introduces how computer hardware and software interact, focusing on the design, organization, and performance of computer architecture. Topics typically include computer organization, instruction sets, memory addressing, representation of numeric and non-numeric data, interrupts, computer arithmetic, and interfacing with hardware and programming in assembly language and other low-level languages to build embedded systems. C-ID COMP-142.",
      "notes": [
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 4,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-220"
        }
      ]
    },
    {
      "code": "CS 226",
      "subject": "CS",
      "number": "226",
      "title": "Discrete Structures",
      "units": "4",
      "hours": "Lecture 3.50 hours, laboratory 1.50 hours",
      "prerequisite": "CS 111, CS 138, or CS 150 and MATH 126, MATH 126S, or eligibility determined by the math placement process",
      "cid": [
        "COMP-152"
      ],
      "transfer": [
        "CSU",
        "UC"
      ],
      "description": "Designed for students majoring in computer science, this course introduces discrete mathematics, including logic, methods of proof, number theory, sets, counting, relations, recursion, recurrence relations, Boolean algebra, graphs, trees, and networks. Topics are illustrated with applications to computer science, including design and analysis of algorithms, undecidability, program correctness, and digital logic design. C-ID COMP-152.",
      "notes": [
        "Course Typically Offered: Fall, Spring"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 2,
          "open": 2,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-226"
        }
      ]
    },
    {
      "code": "CS 292",
      "subject": "CS",
      "number": "292",
      "title": "Internship Studies",
      "units": "0.5-14",
      "corequisite": "Complete 54 hours of work per unit, paid or unpaid",
      "cid": [],
      "transfer": [
        "CSU"
      ],
      "description": "This course provides students the opportunity to apply the theories and techniques of their discipline in an internship position in a professional setting under the instruction of a faculty-mentor and site supervisor. It introduces students to aspects of the roles and responsibilities of professionals employed in the field of study. Topics include goal-setting, employability skills development, and examination of the world of work as it relates to the student's career plans. Students must develop new learning objectives and/or work/intern at a new site upon each enrollment.",
      "notes": [
        "Enrollment Limitation: Instructor, dept chair, and Career Center approval. Fourteen unit maximum in any combination of work experience education and/or internship studies per semester.",
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 2,
          "open": 1,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-292"
        }
      ]
    },
    {
      "code": "CS 299",
      "subject": "CS",
      "number": "299",
      "title": "Occupational Work Experience Education",
      "units": "0.5-14",
      "corequisite": "Complete 54 hours of work per unit, paid or unpaid",
      "cid": [],
      "transfer": [
        "CSU"
      ],
      "description": "This course is intended for students who are employed in a job directly related to their major or career area of interest. It allows such students the opportunity to apply the theories and skills of their discipline to their position and to undertake new responsibilities and learn new skills at work. Topics include goal-setting, employability skills development, and examination of the world of work as it relates to the student's career plans. Students must develop new learning objectives and/or work/intern at a new site upon each enrollment.",
      "notes": [
        "Enrollment Limitation: Career Center approval. Fourteen unit maximum in any combination of work experience education and/or internship studies per semester.",
        "Course Typically Offered: Fall, Spring, and Summer"
      ],
      "offered": [
        {
          "term": "fall-2026",
          "name": "Fall 2026",
          "sections": 1,
          "open": 1,
          "url": "/c/miracosta-college/schedule/fall-2026/cs/#cs-299"
        }
      ]
    }
  ]
}