Instructional Video5:48
Curated Video

Learn and Master C Programming - Using if...else...conditional statements

Higher Ed
We will look at how to use if...else conditional statements in C and understand how they work. This clip is from the chapter "Conditional Statements" of the series "Learn and Master C Programming For Absolute Beginners!".In this section,...
Instructional Video8:36
Fun Robotics

Conditions Part 1

3rd - 12th
Defining conditions and their usage in Python programming
Instructional Video5:21
Curated Video

Multi-Paradigm Programming with Modern C++ - Instantiating the Template

Higher Ed
When we use a template, we instantiate it. Let’s create a type that performs fixed-point arithmetic, parameterized with templates. Then let’s support that type in our math library

• Developing a fixed-point math
class
•...
Instructional Video5:27
Curated Video

Multi-Paradigm Programming with Modern C++ - Arguments and Return Values

Higher Ed
How many arguments should a function have, and how to pass them properly? There are simple ways for making the functions even better.

• How many argum
ents?
• Passing by value, by reference and
by pointer
• Return...
Instructional Video7:44
Curated Video

Beginning Python (Video 22)

Higher Ed
Python is the becoming the language of choice for pretty much every arena. It is a very simple yet extremely powerful programming language. It is a scripting language that is widely used for prototyping to get work up and running...
Instructional Video7:36
Curated Video

Multi-Paradigm Programming with Modern C++ - Parallel STL

Higher Ed
C++17 has introduced parallel STL. Many of the existing algorithms can now be executed in parallel. Parallelism can be enabled by specifying execution policies. In this video we will learn how existing algorithms can be parallelized...
Instructional Video6:36
Curated Video

Multi-Paradigm Programming with Modern C++ - In Search of a Perfect Container

Higher Ed
STL provides many containers, many of them similar. When to use std::vector, and when std::list? This video provides some answers.

• Contiguous storage: array and v
ector
• Details of std::vector, and why prefer vectors...
Instructional Video6:14
Curated Video

Multi-Paradigm Programming with Modern C++ - Designing Class Hierarchies

Higher Ed
Inheritance is one of the cornerstone features of object-oriented design. We use it to represent a set of hierarchically organized concepts. How to design a good hierarchy?

• Drawing a hier
archy
• When to use inheritance...
Instructional Video8:48
Curated Video

Multi-Paradigm Programming with Modern C++ - Writing Our First Coroutine

Higher Ed
Writing a coroutine framework is not as simple as writing a function. In this video, we will try to create the simplest coroutine possible. This coroutine will do nothing useful, but we will implement all the required elements.

...
Instructional Video7:07
Curated Video

Multi-Paradigm Programming with Modern C++ - On Programming Paradigms

Higher Ed
C++ is a multi-paradigm programming language. We learn about different paradigms (styles), and how C++ supports them.

• Programming styles supported b
y C++
• Critic
ism of C++
• Your C++ knowled
ge
as a toolbox
...
Instructional Video6:32
Curated Video

Multi-Paradigm Programming with Modern C++ - Specializing the Template

Higher Ed
Our “equal” function uses an epsilon to compare values. This works well with floating point types, but it’s inefficient for fixed point. We can try to specialize the function template, but how to do this in a generic way?

•...
Instructional Video8:01
Curated Video

Multi-Paradigm Programming with Modern C++ - Shared Pointer

Higher Ed
Shared_ptr is a reference-counting smart pointer. It’s less efficient than unique_ptr, but lets us forget about complexities of memory management, and helps avoid double delete bugs.

• How shared_ptr
works
• Using...
Instructional Video5:46
Curated Video

Multi-Paradigm Programming with Modern C++ - Putting It All Together

Higher Ed
In this video we will see how useful the new coroutine framework is. We will take the example from Section 9, where we first calculate the average value, then use that value to find standard deviation and items above average in...
Instructional Video3:09
Curated Video

Multi-Paradigm Programming with Modern C++ - Manipulating Data

Higher Ed
Real-world programs manipulate data in numerous ways. You will need filtering, conversions, transformations, and so on. There is always a temptation to write a loop, but STL algorithms are preferable.

• How many ways are there...
Instructional Video5:11
Curated Video

Multi-Paradigm Programming with Modern C++ - Data Access Modes

Higher Ed
It’s easy to use multiple threads in modern C++. Writing safe multi-threaded code, on the other hand, is not easy. The difficult part is accessing data.

• Four modes of concurrent data a
ccess
• Example of race...
Instructional Video7:45
Curated Video

Multi-Paradigm Programming with Modern C++ - What Makes a Good Function

Higher Ed
A function should perform a single logical operation. Small functions are easy to maintain and promote code reuse. The most common anti-pattern is a function that does too many things.

• Why small functions are
good?
•...
Instructional Video9:32
Curated Video

Multi-Paradigm Programming with Modern C++ - Constructors and Destructors

Higher Ed
Constructors, destructors, and assignment operators are all about object’s lifetime. Sometimes they are automatically generated, sometimes not. This video, provides instructions on how to deal with them.

• The rule of zero:...
Instructional Video5:51
Curated Video

Multi-Paradigm Programming with Modern C++ - Entering Concepts

Higher Ed
Templates make poor interfaces: typename is a wildcard. Concepts let us set requirements for template parameters. Template writer can easily describe what’s expected of the user. Concepts make template interface good.

• About...
Instructional Video6:31
Curated Video

Multi-Paradigm Programming with Modern C++ - Using Lambdas

Higher Ed
In this coding demo, we use lambda expressions to implement callbacks, for adding logger capability to the server, without increasing coupling.

• About call
backs
• Std
::function
• Using callbacks to implement...
Instructional Video11:00
Curated Video

Multi-Paradigm Programming with Modern C++ - Dual Hierarchy Example

Higher Ed
In this video we implement a dual hierarchy for server applications supporting multiple protocols

• Overview of what we will impl
ement
• Implementing a hierarchy
of servers
• What we learned by implementing
t
he...
Instructional Video9:24
Curated Video

Multi-Paradigm Programming with Modern C++ - Distributing the Work

Higher Ed
Task creation is cheap, but it’s not free. We have to find a compromise between loading all threads with data and introducing unnecessary overhead. In this video we will learn a simple formula for distributing the work, and also...
Instructional Video9:34
Curated Video

Multi-Paradigm Programming with Modern C++ - Promise and Future

Higher Ed
Publication safety pattern that we have implemented with atomics, is somewhat harder to implement for non-trivial types. Luckily, STL provides some primitives for publication safety. In this video we will learn about std future, std...
Instructional Video6:56
Curated Video

Multi-Paradigm Programming with Modern C++ - Diving into Concepts

Higher Ed
So far, we have explored a single use case for concepts. There are more benefits and more tools at our disposal. Some best practices are already defined too.

• Different ways to specify type require
ments
• Most important...
Instructional Video6:51
Curated Video

Multi-Paradigm Programming with Modern C++ - Structuring Modules

Higher Ed
In this video, we learn how modules can be split into implementation and partition units.

• Implementation
units

Partitions

Mo
dules summary

This clip is from the chapter "Structuring Projects in...