Develop skills that are fundamental to computer science. This course emphasizes object-oriented programming methods, with a concentration on problem-solving, algorithm development, and the study of data structures, design, and abstraction. Identify the ethical and social implications of computer use.