• Wrong document? Swap it for free
  • Written by students who passed
  • Immediately available after payment
  • Read online or as PDF
Sell
Where do you study
Your language
Document preview thumbnail
Preview 1 out of 1 pages
Class notes

CSC125 – Principles of Software Development | Programming & OOP Notes

Document preview thumbnail
Preview 1 out of 1 pages

CSC125 – Principles of Software Development These CSC125 notes introduce the core principles of software development, explaining what programming is and how computers follow precise, step-by-step instructions. They describe programs as models of real-world systems built using abstraction and simplification. The notes outline what makes good software, including functionality, robustness, efficiency, flexibility, maintainability, and user-centered design. They also compare major programming paradigms—imperative, object-oriented, and functional—highlighting their different ways of solving problems. Through clear examples like poker and Tetris, the notes explain object-oriented programming concepts such as objects, properties, methods, abstraction, encapsulation, and managing complexity in real programs.

Content preview

CSC125 _ Principles of Software Development

Program? Definition
Programming = telling a computer exactly what to do A sequence of instructions written in a
Computers only do what they are explicitly instructed programming language:
Problem solving: make computers do useful tasks Syntax: rules for writing instructions
Creativity: multiple solutions → choose the best one Semantics: meaning of instructions
Modeling: represent real systems in simplified form
Abstraction: focus on important features, ignore details Programs are models of systems:
Concrete execution: give precise step-by-step instructions Model = simpli ed representation
System = components working together


Good program Functional: does what it’s supposed to do
Robust: reliable, few bugs
Flexible: easy to adapt or extend
Efficient: good performance
Maintainable: easy to update and fix
User-friendly: easy to learn and use
User-centered: good design and experience


Programming paradigms
Imperative / Task-oriented Object-oriented Functional / declarative
Break problems into steps Break problem into objects Uses expressions and functions.
Focus on how to do things Objects interact with each other Focus on what should be done
Data + behavior


Task-oriented Object-oriented
sprochdure
berhavor (hinse
, >
-


Example: Focus on actions taslss Focus on things( nouns)
Written us "sequene of steps" Built from "objects that interact"
Playing poker game → Poker: shuf e cards, distrbute → poker: one card, deck of cards,
cards, play the game players




Object-oriented programming (OOP)
Write programs by modeling problems as a set of collaborating objects.

Objects: Represent real-world entities
Have properies (data) and capabilities (methods)
Key benefits:
Example: Objects: piece, board Abstractions
Capabilities: Encapsulation (black box)
Tetris Better control of complexity
Piece: create, fall, rotate, stop on collision
Properties:
Piece: shape, position, orientation, color
Board: size, rows


fl fi

Document information

Uploaded on
February 5, 2026
Number of pages
1
Written in
2025/2026
Type
Class notes
Professor(s)
John smith alexa
Contains
All classes
$9.99

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

Sold
0
Followers
0
Items
1
Last sold
-



Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions