Photo by Fotis Fotopoulos on Unsplash.
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 Python program that meets a list of requirements, debug that program using tests, and analyze its behavior in modelling real-world situations.
- Programming Languages: To know and use basic Python programming constructs for object-oriented programming (e.g., classes, polymorphism, inheritance). These skills serve as a foundation for OOP concepts found in most modern programming languages.
- Algorithms and Complexity: To appreciate the role of algorithms and data structures in problem-solving and software design (e.g., objected-oriented programming, lists, files, searching, and sorting). To understand the effects that algorithms of varying time complexity have on the resiliency and efficiency of real world systems.
- Software Engineering: To develop programming skills that can serve as a foundation for further study in computer science. To work with software version control systems independently and in groups.
- Social Issues and Professional Practice: To identify and discuss the social implications of computing in a networked world and the impact of social media on individuals, communities, 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.