CSCA48H3 Lecture Notes - Lecture 1: Init

75 views2 pages
Week 1: ADT
Course Intro:
-More on ADT
-Data structures
-Algorithm Analysis
-Sorting and searching
-Recursion
References:
- Online book: How to think like a computer scientist (same as in A08)
- Recommend Textbook: Data structures and algorithms in Python by M. Goodrich
Assessment:
Weekly Assignments (exercises): 10% (1% ea.)
Major Assignments (assignments): 15% (7% + 8%)
Term Tests (midterms): 25% (12.5% ea.)
Final (exam): 45%
If a midterm is missed:
-It will be replaced by your final mark
-You can miss only one midterm
Software Engineering:
-Requirement Engineering
-Software Architecture Design
-Implementation
-Testing
-Maintenance
-Cost of change will dramatically increase in later stages
Abstract Class:
-Change will be easier with less cost
-To focus on operations rather than implementation
To hide away implementation details
To make the codes reusable (inheritance concept)
-It doesn’t make sense to instantiate some classes
-abstract classes vs. concrete classes
-It makes it possible to declare a method without implementing it
-Abstract classes inherits from ABC (Abstract Base Classes) module in Python
-At least one of the methods should be decorated with @abstractmethod
-An abstract class can contain both abstract and non-abstract method
-An abstract method must be overridden in all of the subclasses
ADT:
-An abstraction of a data structure
Data
Operation
Exceptions (almost always)
Unlock document

This preview shows half of the first page of the document.
Unlock all 2 pages and 3 million more documents.

Already have an account? Log in

Get access

Grade+20% off
$8 USD/m$10 USD/m
Billed $96 USD annually
Grade+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
40 Verified Answers
Class+
$8 USD/m
Billed $96 USD annually
Class+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
30 Verified Answers

Related Documents