Computer Science students are required to study all aspects of computing, including hardware, software, and theory.Majors complete a core of basic computer science courses that includes the study of programming and algorithms, data structures, database concepts, computer architecture and organization, programming languages, compilers, operating systems, and software engineering.