We all know that writing tests for our code is “what we should do”, and maybe we’re even doing that already. But it feels like extra busy-work that slows us down – and they hardly ever catch any bugs anyway…
Maybe we’ve even tried TDD, and felt that it was just …
* Abstract
This session will give a short introduction to the Python programming language from the perspective of C++ programmer.
We will go over the core Python language and compare its features with
C++. Although many things are similar, you will learn about some
interesting and surprising differences between the two languages.
Along …
Если поговорку "With great power comes a great responsibility" перевести на язык С++, то получится что-то в духе "Если для оптимизации программ вы используете низкоуровневый доступ к памяти, то вы же и отвечаете за контроль этого доступа".
Непонимание этой ответственности - причина большого набора известных уязвимостей в программном обеспечении.
Когда …
Описание:
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …
Дата: 21.12.2020
Время: 10:00 - 19:00 (GMT+3)
Место: Zoom.
Стоимость:
300 BYN (до 22.11.2020)
350 BYN (до 06.12.2020)
400 BYN (до 20.12.2020)
Описание:
This class gives you a detailed insight into the multithreading facilities of C++11, C++14, and the parallel algorithms which we got with C++17.
Дата: 17.12.2020 (перенос с 27.11)
Время: 10:00 - 19:00 (GMT+3)
Место: Zoom
Стоимость:
300 BYN (до 30.11.2020)
400 BYN (до 16.12.2020)
Продолжительность: 8ч
C++ Concepts is one of the most significant and long-awaited features of C++20. They improve template interfaces by explicitly stating the compile-time …
Дата: 11.12.2020
Время: 10:00 - 19:00 (GMT+3)
Место: Zoom
Стоимость:
300 BYN (до 22.11.2020)
350 BYN (до 29.11.2020)
400 BYN (до 10.12.2020)
Продолжительность: 8ч
Design patterns have proven to be useful over several decades and knowledge about them is still very useful to design …
При разработке продуктов, которые содержат в себе функционал на основе машинного обучения выделяют 2 важных этапа: обучение модели и ее применение.
Для обучения модели часто используется язык Python и многочисленные фреймворки для решения задач машинного обучения.
При применении модели уже нет такой однозначности и может возникнуть необходимость проинтегрировать готовую ML …
C++17 is out for a year now and at least partially supported by Clang, GCC, and Visual Studio. While C++ is no revolution and changes the style of programming (as C++11 did), it is a remarkable collection of many many features both in the core language and the library. It …
Язык C++ меняется на глазах. Для часто возникающих на практике задач, ранее требовавших от программиста особых ухищрений, вводятся ясные и лаконичные средства либо в сам язык, либо стандартную библиотеку, или в библиотеку Boost. Обратная сторона развития языка заключается в том, что многие программисты не успевают уследить за изменениями и продолжают …
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …
А мы построим свой CI с conan и travis
Вводная
В головах разработчиков бытует мнение, что их работа заканчивается после того, как они закомитили код, а весь остальной процесс их вовсе не касается. В ответ на этот тезис хорошо подходит цитата Роберта Хайнлайна:
Любой человек должен уметь менять пеленки, планировать вторжения, резать свиней, …
- Algorithms in the standard library
- Function objects in C++, callables and std::invoke
- Lazy evaluation, lazy algorithms and ranges
- Creating new language constructs on the library level
- Removing invalid program states with sum types and std::variant
- Generic programming and template constraints using void_t
- Handling errors with optional<T> and expected<T, E>
- …
Abstract
This class gives you a detailed insight into the multithreading facilities of C++11 and C++14, and the parallel algorithms which we got with C++17. If possible, we will have a more in-depth look into the C++ memory model consisting of the atomics and the various memory models in C++. This …
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …
А мы построим свой CI с conan и travis
Вводная
В головах разработчиков бытует мнение, что их работа заканчивается после того, как они закомитили код, а весь остальной процесс их вовсе не касается. В ответ на этот тезис хорошо подходит цитата Роберта Хайнлайна:
Любой человек должен уметь менять пеленки, планировать вторжения, резать свиней, …
C++ is no longer C with classes and it never was only an Object Oriented language. C++ is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation. If used correctly, it provides hard to beat performance. Such usage requires …
- Template parameter and auto type inference.
- Auto refenerces and passing arguments into a function.
- Expression categories: (gl|r|l|x|pr)-values.
- When are constructors get called and when do not.
- Tail recursion optimisation becomes possible in C++.
- Actually, std::move does not move anything.
- Constexpr vs. const.
- Smart pointers vs. raw pointers.
- Function objects …
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …
А мы построим свой CI с conan и travis
Вводная
В головах разработчиков бытует мнение, что их работа заканчивается после того, как они закомитили код, а весь остальной процесс их вовсе не касается. В ответ на этот тезис хорошо подходит цитата Роберта Хайнлайна:
Любой человек должен уметь менять пеленки, планировать вторжения, резать свиней, …
C++ is no longer C with classes and it never was only an Object Oriented language. C++ is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation. If used correctly, it provides hard to beat performance. Such usage requires …
- Template parameter and auto type inference.
- Auto refenerces and passing arguments into a function.
- Expression categories: (gl|r|l|x|pr)-values.
- When are constructors get called and when do not.
- Tail recursion optimisation becomes possible in C++.
- Actually, std::move does not move anything.
- Constexpr vs. const.
- Smart pointers vs. raw pointers.
- Function objects …
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …
- Категории выражений: как не запутаться в (g?l|p?r|x)value;
- Семантика перемещения и её альтернативы (RVO, CoW);
- Специализации функций для короткоживущих объектов;
- Вычисления на этапе компиляции с помощью constexpr;
- Параметрический полиморфизм;
- Гибкая настройка с помощью классов свойств;
- SFINAE и сопоставление с образцом;
- Арифметические вычисления на типах;
- Обработка списков на этапе компиляции.
Design patterns have proven to be useful over several decades and knowledge about them is still very useful to design robust, decoupled systems. Modern C++, however, has profoundly changed the way we use C++, think about design and implement solutions. This hands-on training explores modern C++ design and the modern …
Course Description
This class gives you a detailed insight into the multithreading facilities of C++11, C++14, and the parallel algorithms which we got with C++17.
Additionally, we will have a look into the C++ memory model consisting of the atomics and the various memory orders in C++. This insight will provide you …
В любой большой кодовой базе можно встретить куски абсолютно непонятного кода. Как правило такой код пишется чтобы немного выиграть в производительности приложения... и как правило такой код не нужен в принципе, так как оптимизирует не то что нужно, не в том месте где это нужно и не так как надо.
В …