Download presentation
Presentation is loading. Please wait.
Published byDaniel Wiggins Modified over 8 years ago
1
COP 3503: Programming Fundamentals for CIS Majors 2 Basics
2
Basic Programming Think algorithmically Structure data Efficient processing Time Space I/O Good communication Documentation
3
Good Programming Practices Comment code – as appropriate Keep comments up to date! Most comments in method header Follow style guidelines, e.g., http://tsunanet.net/~tsuna/cxxcodingstyle /cxxcodingstyle.pdf Give users/admins/maintainers a chance!
4
What do I expect? You will work the problems You will discuss the problems and the exercises/projects with others You will do your own work, but give credit to others where due, and give help to others as you can – Do NOT give or copy source code, except for illustrative snippets – We WILL check for violations!
5
What can You Expect? Broad material in regular lecture But will have many examples of algorithms and programs in C++ Short exercises to get used to C++ in discussion Detailed documentation not expected More involved work in projects Good practice, style, and documentation required
6
Generic Computing Sensing – I/O – user input, detectors Storage – Keep data for later use Computation – Manipulate data Communication – Send/receive data to/from elsewhere
7
Generic Computing Stored program concept – Allows for multi-purpose machine – Customize by loading new program Basic cycles – Fetch/decode/execute – Read/interpret/print – Input/processing/output
8
Generic Computing Declaration – Tells what something is - type – Compilers allocates storage for it – Interfaces – access mechanics Definition – Tells how something works – Actual implementation code
9
Control Constructs Straight-line code Next instruction follows current one Program counter incremented Alternation – If-then-else/switch/case – Test condition, jump to next instruction Iteration – For-do/While-do/Do-until – Repeat loop body multiple times
10
Good Programming Goals Modularity Information Hiding Understandability Maintainability Good performance Usability Efficiency Beauty
11
Programming Goals Sometimes, one goal may be more important than others Know what language is right for your project Know that business constraints may dictate decisions! Stay agnostic!
12
Course Goals Learn to: think computationally express solutions as C++ programs use tools of the trade play nice implement some basic data structures love computer science!
13
Homework 1 Write 1 page description of yourself – Past, present, future Include photo Submit on Sakai in PDF format Details posted later on Sakai I will include example on Sakai
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.