You must be logged in to take this course → LOGIN | REGISTER NOW
Part 1 of this course introduced the fundamental concepts, preparing you for the more advanced topics covered in this course! Throughout this course, you will learn programming concepts and techniques, and practice them immediately through advanced browser-based tools that let you write programs, compile, and run and test them against predefined test sets. You’ll see your results right away in your browser!
Assessment
This course does not involve any written exams. Students need to answer 5 assignment questions to complete the course, the answers will be in the form of written work in pdf or word. Students can write the answers in their own time. Each answer needs to be 200 words (1 Page). Once the answers are submitted, the tutor will check and assess the work.
Certification
Edukite courses are free to study. To successfully complete a course you must submit all the assignment of the course as part of assessment. Upon successful completion of a course, you can choose to make your achievement formal by obtaining your Certificate at a cost of £49.
Having an Official Edukite Certification is a great way to celebrate and share your success. You can:
- Add the certificate to your CV or resume and brighten up your career
- Show it to prove your success
Course Credit: ETH Zurich
Course Curriculum
Course Preview | |||
Course Preview : Week 1 | 00:03:00 | ||
From programming to software engineering | |||
From programming to software engineering | 00:02:00 | ||
What is software engineering | 00:10:00 | ||
Software quality | 00:11:00 | ||
Requirements | 00:09:00 | ||
Lifecycle and processes (A) | 00:11:00 | ||
Lifecycle and processes (B) | 00:14:00 | ||
Techniques and tools, conclusion | 00:19:00 | ||
Advanced information hiding | |||
Advanced information hiding | 00:02:00 | ||
The privileges of a client | 00:11:00 | ||
Selective exports | 00:12:00 | ||
Multiple inheritance | |||
Multiple inheritance | 00:01:00 | ||
Multiple inheritance basics | 00:10:00 | ||
The rationale for multiple inheritance | 00:08:00 | ||
Name clashes and renaming | 00:08:00 | ||
A few games we can play | 00:10:00 | ||
Repeated inheritance | 00:11:00 | ||
Object-Oriented design pills | |||
Object-Oriented design pills | 00:02:00 | ||
Finding classes | 00:11:00 | ||
Coupling and cohesion | 00:05:00 | ||
Inheritance vs. client relationship | 00:09:00 | ||
Object-oriented design patterns | |||
Design patterns I | 00:05:00 | ||
Design patterns II | 00:08:00 | ||
Design patterns III | 00:08:00 | ||
Event-driven programming and agents | |||
Event-driven programming and agents | 00:02:00 | ||
The need for event-driven systems | 00:12:00 | ||
The observer pattern | 00:11:00 | ||
Using agents | 00:15:00 | ||
Tuple and agent details | 00:15:00 | ||
Applications: integration and iteration | 00:12:00 | ||
An instructive example: Undo/Redo | |||
Undo/Redo | 00:03:00 | ||
The problem, and how not to solve it | 00:11:00 | ||
The right abstraction | 00:13:00 | ||
How the command pattern works | 00:14:00 | ||
A more concise and general solution | 00:09:00 | ||
An instructive example: Topological sort | |||
Topological sort | 00:03:00 | ||
The problem and why it is important | 00:13:00 | ||
Background: binary relations | 00:10:00 | ||
Mathematical model for topological sort | 00:18:00 | ||
First algorithmic solution | 00:15:00 | ||
Efficient solution | 00:13:00 | ||
Software engineering lessons | 00:10:00 | ||
Introduction to concurrency and SCOOP | |||
Introduction to concurrency and SCOOP | 00:03:00 | ||
What is concurrency? | 00:09:00 | ||
Concurrency is hard | 00:09:00 | ||
Why concurrency is hard | 00:09:00 | ||
SCOOP model basics | 00:07:00 | ||
Calls: synchronous and asynchronous | 00:07:00 | ||
How to wait | 00:08:00 | ||
Final examples | 00:05:00 | ||
Loop invariants | |||
Loop invariants | 00:01:00 | ||
Loop invariants: definitions | 00:10:00 | ||
The across expression in contracts | 00:05:00 | ||
Loop invariants of linear search | 00:06:00 | ||
Assessment | |||
Submit Your Assignment | 00:00:00 | ||
Certification | 00:00:00 |
Course Reviews
No Reviews found for this course.