CSC-115 CS1: Introduction To Programming And Computational Thinking
CS1: Introduction to Programming and Computational Thinking serves as a first course for all computer-related majors. This course is for beginning programmers, and is the first course in a sequence of three programming courses. The course emphasizes the development of languages and software, problem-solving, and programming in a structured, object-oriented language. The Java programming language is used throughout the course.
Corequisite
MAT-097 or Math Placement Level 1
For more detailed course information view the
Course Outline
Department
Computer Science
Course Description
CS1: Introduction to Programming and Computational Thinking serves as a first course for all computer-related majors. This course is for beginning programmers, and is the first course in a sequence of three programming courses. The course emphasizes the development of languages and software, problem-solving, and programming in a structured, object-oriented language. The Java programming language is used throughout the course.
Credit Hours
3Semester(s) Course Will Be Offered
Fall, Spring, Summer
Corequisites
MAT-097 or Math Placement Level 1
Course Learning Outcomes
- Construct fundamental computer algorithms to solve simple problems
- Create basic computer programs using the formal syntax from a high-level, object-oriented programming language
- Translate foundational algorithms into simple technical computer program solutions
Topic Outline
- Fundamentals of Computer Problem Solving
- Problem Analysis
- Design Logic – Simple Algorithmic Development
- Flowcharts
- Pseudocode
- Fundamentals of Computer Programming
- Programming Languages and Environments
- Object-Oriented verses Structured Programming and Functional Methodologies
- Phases of Language Translation (Compiling, Interpreting, Linking, and Executing)
- Java Language Specification: API, JDK, and IDE
- Error Conditions: Syntax, Runtime, and Logic
- Software Development Process (IPO)
- Requirements
- Specification
- Analysis
- Design
- Implementation
- Testing
- Deployment
- Maintenance
- Creating, Compiling, and Executing a Java Program
- Identifiers, Variables, and Constants
- Memory Representations and Data Types
- Numeric, String, Boolean, Character
- Assignment, Numeric, Relational and Logical Operators
- Expression Evaluation: Assignment, Numeric, Boolean
- Fundamental Programming Constructs
- Sequence
- Selection
- Iteration
- Subprograms, Functions, and Methods
- Formal Parameters, Actual Parameters
- Passing Arguments and Return Values
- Method Overloading
- Developing Reusable Code
- Secure Coding Techniques
- Variable Scope
- Input Data Validation
- Arrays
- Common Array Operations
- Sorting and Searching