Programming
and Algorithms
Week 1
Introduction to the module, to PSEUDOCODE, and to PYTHON. |
![Pseudocode and programming](PseudocodeAndProgramming.jpg) |
Week 2
TOP-DOWN
DESIGN, SEQUENCE and VARIABLES. |
![Variables](Variables.jpg) |
Week 3
SELECTION, IF Statement, CASE Statement, Boolean logic. |
![Selection](Selection.jpg) |
Week 4
ITERATION, WHILE loop, FOR, DO and LOOP loop. |
![Iteration](Iteration.jpg) |
Week 5
Some common algorithms: PRIME NUMBERS, FIBONACCI NUMBERS and
COMPRESSION. |
![Common Algorithms](CommonAlgorithms.jpg) |
Week 6
Looking at MODULARISATION. Introduction to SOFTWARE TESTING. |
![Modularisation and Testing](ModularisationAndTesting.jpg)
|
Week 7
Complex Data Structures, ARRAYS, Searching using SEQUENTIAL and BINARY
SEARCH. |
![Arrays and Searching](ArraysAndSearching.jpg) |
Week 8
We will also look at some simple STATISTICS, as well as the BUBBLESORT
algorithm, and looking at ways of OPTIMISING bubblesort. |
![Bubble sort](Bubblesort.jpg) |
Week 9
The SELECTIONSORT algorithm. Multi-dimensional arrays. |
![Selection sort and multi-dimensional arrays](SelectionsortAndNDimArrays.jpg) |
Week 10
ADVANCED DATA STRUCTURES, TECHNICAL ARCHITECTURES, and UNIVERSAL DESIGN. |
![Advanced Data Structures](AdvancedDataStructures.jpg) |
Week 11
SOFTWARE DEVELOPMENT METHODOLOGIES and COMPUTER NETWORKS |
![Software Development](SoftwareDevelopment.jpg) |
Week 12
Bringing it all together. |
![Exams and Revison](ExamsAndRevision-blue.jpg)
|
|
Week
1-12 Assessments
![Assessments](Assessments.jpg)
|
![Banner Semester 2](banner-sem2.jpg)
![Notifications](Notifications.jpg)
Week 13
FUNCTIONS, PARAMETER PASSING, RETURN values. VARIABLE SCOPE, LOCAL
and GLOBAL VARIABLES. |
![structured programming](StructuredProgramming.jpg) |
Week 14
STACKS: Push(), Top(), Pop(), IsEmpty().
QUEUES: IsEmpty(), AddToQ(), DeleteFromQ().
|
![stacks and queues as arrays](StacksAndQueues-Arrays.jpg) |
Week 15
Adding and Deleting Nodes, Travesring the list. FACTORIAL, FIBONACCI,
DECIMAL to BINARY conversion, LINKED LISTS parsing. |
![Linked Lists And Recursion](LinkedListsAndRecursion.jpg) |
Week 16
STACKS: Push(), Top(), Pop(), IsEmpty().
QUEUES: IsEmpty(), AddToQ(), DeleteFromQ().
|
![Stacks And Queues as Linked Lists](StacksAndQueues-LinkedLists.jpg) |
Week 17
Advanced Sorting - INSERTION SORT, SHELL SORT, MERGE SORT, QUICK SORT
|
![Advanced Algorithms](AdvancedAlgorithms.jpg) |
Week 18
Objectives and principles of TESTING. Choosing TEST DATA.
Testing and debugging strategies. UNIVERSAL DESIGN. |
![Software Testing.](SoftwareTesting.jpg)
|
Week 19
FILE MANAGEMENT: Reading and Writing Text Files, Reading Binary Files.
EXCEPTION HANDLING: Handling different errors. |
![Data Persistence](DataPersistence.jpg) |
Week 20
FILE ANALYSIS: Character counting, Word counting, Line
counting, Word frequency, Full File Analysis.
|
![File Analysis](FileAnalysis.jpg) |
Week 21
Getting a URL, opening a webpage, finding links on a webpage, CRAWLING
on the web.
|
![WebCrawling](WebCrawling.jpg) |
Week 22
Creating, searching and
Travesring BINARY TREES. Finding a node and Inserting a node.
|
![Binary Trees](BinaryTrees.jpg)
|
Week 23
What is a DATABASE? How do we use SQL to make databases? How do we use
PYTHON to connect to a database.
|
![Data Integrity And Retention](DataIntegrityAndRetention.jpg) |
Week 24
Bringing it all together. |
![Exams and Revision](ExamsAndRevision-orange.jpg)
|
Week
13-24 Assessments
![Assessments](Assessments-gold.jpg)
|
![Banner](banner.jpg)
![Notifications](Notifications.jpg)
Week 25
Introduction to OBJECT-ORIENTATED DESIGN, UML, INFORMATION HIDING,
ABSTRACTION, COMPOSITION. |
![Object-Oriented Design](ObjectOrientatedDesign.jpg)
|
Week 26
CLASSES and OBJECTS in PYTHON, DOCSTRINGS.
|
![Objects in Python](ObjectsInPython.jpg)
|
Week 27
MODULES and PACKAGES, ACCESS CONTROL and THIRD-PARTY LIBRARIES. |
![Modules and Packages](ModulesAndPackages.jpg)
|
Week 28
INTERITANCE (both BASIC and MULTIPLE) in
PYTHON.
|
![Inheritance](Inheritance.jpg)
|
Week 29
Implementing OBJECT ORIENTED PROGRAMS and PROPERTY.
|
![Object Oriented Programs](OOPrograms.jpg)
|
Week 30
STRING FORMATTING, MANIPULATION, and REGULAR EXPRESSIONS.
|
![Strings and Serialization](StringsAndSerialization.jpg)
|
Week 31
FILE MANAGEMENT and SERIALIZING OBJECTS and DATA. |
![Strings and Serialization Part 2](StringsAndSerialization2.jpg)
|
Week 32
DESIGN PATTERNS, and the SINGLETON PATTERN.
|
![Design Patterns 1](DesignPatterns1.jpg)
|
Week 33
The ITERATOR PATTERN, COMPREHENSIONS and GENERATORS.
|
![Design patterns 2](DesignPatterns2.jpg)
|
Week 34
OBJECT-ORIENTED TESTING and UNIT TESTING in PYTHON
|
![object oriented testing 1](OOTesting1.jpg)
|
Week 35
PY.TEST and TESTING SCOPE
|
![object oriented testing 2](OOTesting2.jpg)
|
Week 36
Bringing it all together. |
![Exams and Revision](ExamsAndRevision-blue.jpg)
|
Week
25-36 Assessments
![Assessments](Assessments.jpg)
|
![Key skills](KeySkills.jpg)
![py con](PyCon.jpg)
![File Index](FileIndex.jpg)
|
If you have
any suggestions, corrections, or
comments, please feel free to e-mail me at:
Damian.Gordon(a)dit.ie |
|