This course introduces the "algorithmic thinking" and the design and implementation processes necessary for you to solve complex, real-world problems with computers. We introduce the Java programming language to learn to write programs; understand the features of programming languages; decompose problems; develop algorithms; and use important software practices. We include software architecture (structure), classes (ways of modeling things), handling data, some computer ethics, standards, and maintaining program correctness. This course and its successor, CS 142 will help you become more competent and comfortable on the paths to both computer science and professional software development. This class may include students from multiple sections. (Elective)
CSC 100 is strongly recommended for students with no programming experience.