Students develop programming skills that serve as a foundation for further study in computer science. They learn object-oriented programming and design software that models real-world systems from our networked world and gain an appreciation for the role of algorithms and data structures in problem-solving and software design (e.g., objected-oriented design, lists, files, searching, and sorting). Elementary numerical methods and the construction of a simple graphical user interface (GUI) are also discussed. AU Core Integrative Requirement: Quantitative Literacy II. Usually Offered: fall and spring. Prerequisite: CSC-148 (CS I) and completion of Quantitative Literacy I (Q1) requirement.
In this class, you will learn about:
- Software Development Fundamentals: To be able to design and implement a Java program to model a real-world system, and subsequently analyze its behavior.
- Programming Languages: To know and use basic Java programming constructs for object-oriented problem solving (e.g., classes, polymorphism, inheritance, interfaces).
- Algorithms and Complexity: To appreciate the role of algorithms and data structures in problem solving and software design (e.g., objected-oriented design, lists, files, searching and sorting)
- Software Engineering: To develop programming skills that can serve as a foundation for further study in computer science.
- Social Issues and Professional Practice: Social implications of computing in a networked world and the impact of social media on individualism, collectivism and culture.
AU Core Quantitative Literacy II (Q2) Outcomes:
- Translate real-world questions or intellectual inquiries into quantitative frameworks.
- Select and apply appropriate quantitative methods or reasoning.
- Draw appropriate insights from the application of a quantitative framework.
- Explain quantitative reasoning and insights using appropriate forms of representation so that others could replicate the findings.