С++ ЗА 10 ЧАСОВ (25 минут вырезки)
HTML-код
- Опубликовано: 1 июн 2024
- Привет.
Что такое Тесты? Что такое CI/CD? 90% видео практические примеры, и 10% теоретического соуса чтобы вы были в тонусе.
Покрываем:
- unit тесты
- регрессионные
- интеграционные
- fuzzing
- Тестируем и на Windows и на Linux
- CI/CD пайплайн в github actions
- ctest
- google test
- gmock
- cmake
Регистрируйся и разворачивай в пару кликов гибкую IT-инфраструктуру в облаке собственной разработки Selectel: slc.tl/49o9y
erid: 2VtzqvidU7M
Я wndtn, мне 20 c чем-то лет, и я изучаю computer science и программирую ~10 лет.
Я into С++, и всякие low-level штуки.
У меня есть небольшой проект, xplatform, который вы сможете найти на github, и через него практиковаться в изучении всей базы программирования, и если вам повезет(если вы упорный), вы станете хорошим программистом %)
Если нужна помощь в программировании 1 на 1, чекайте ссылки .
всем добра
Телега - t.me/wndtn
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Весь код тут - github.com/Winderton/xplatform
Сериализация - • БлокЧейн | C++ | Сериа...
Десериализация - • Введение в Сокеты и се...
Google Test - github.com/google/googletest
Ctest - cmake.org/cmake/help/latest/m...
"Если не найдешь тут какую-то ссылку из видео, то пиши коммент, я ее добавлю".
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Подпишись сюда:
Telega и чатик - t.me/wndtn
Boosty(менторинг для РФ) - boosty.to/wndtn
Patreon(для остальных стран) - / winderton
Instagram - / winderton
Github проекта(код с канала) - github.com/winderton
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Оборудование:
Камера - Sony a7ii
Объектив - SIgma F1.4 DG
Микрофон - AudioTechnica at2035
Звуковая карта - Scarlett Solo
Петличка - Rode smartlav+
Клавиатура - HyperX Alloy
Вторая клавиатура - apple magic keyboard(black edition)
Монитор DELL 25'
Монитор Asus mg248q
Iphone 11 pro(зеленый)
CAMLINK elgato - для стриминга
JBL headset
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Музыка:
Inteus w BACKWHEN - Planetarium
KASPA- Not long now
LOCAL STRANGER w BERRYMANE - CUT-THROAT (TERROR TOWN)
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
00:00 Введение
01:40 Самый простой пример
03:20 Разбор реального проекта и тест этого проекта
06:30 Тесты на Windows(Как и что? Google Test)
10:55 Тесты на Linux
16:45 Про виды тестирования и какие они бывают
20:35 CI/CD пайлайн
Давай гайд на 10 часов по с++ уверен много людей ждут от тебя
Десять мало...
На 24 часа.
Не ломался дай видос на 10 часов или на Udemy за 15$ выложи епт
Пофиг на сколько, главное подробно
на 10 лет
Хочется 10 часововой курс по с++. Даже не для того, чтобы выучить теорию по нему, а чтобы понять, как мыслит или должен мыслить более менее состоятельный программист.
хотим гайд по плюсам от самого очевидного до чего-то интересного. шоб тутор такой вышел: что учить самым маленьким, тем кто понимает какое-то ООП там и так далее по нарастающей. ХОТИМ
Это очень круто! Знания в такой подаче. Сижу, слушаю, записываю и не засыпаю. Мне, как новичку очень нравится твой контент
видео пушка! нравится по вечерам смотреть твой материал, интересная подача и приятный голос :)
Блин, честно, из-за того, что начала заниматься программированием не так давно, смотреть до ужаса сложно, но как же это интересно и хочется заниматься дальше и дальше. Спасибо тебе за видосы )
58%, клевые видосы и подача, и монтаж, и вайб
лично для себя не нашел ценности, за половину видоса осела инфа только про типы тестирования, но и те проскроллились оч быстро, хотя тестирование в целом интересно
буду благодарен как за видосы на прикладные темы так и из области CS, разбор сложных вещей, теория с пояснениями, все то, что нужно сидеть разбирать самому, но не хватает времени из-за работы+петпроекта+девушка
лайк за то, что по ходу видоса упоминая специализированные термины сразу объясняешь смысл простым язык+даешь контекст к термину
у тебя крутой стиль! удачи
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Интересно. Особенно импонирует стиль повествования. Кратко и без воды.
Когда то всё таки произойдёт это и я начну изучать это досконально. С каждым видео я чувствую что этот момент всё ближе и ближе. Желание огромное в этом понимать, но заучивать пока желание не перебороло)))
Респекутую тебе за CI/CD Все видео смотрятся как на одном вздохе))))
Даже иногда жалею что не начал ++ изучать в молодости)
Спасибо за гайд, а более всего за идею x-platform
блин, долго искал что такое эти ваши юнит тесты на плюсах. вот это то что мне надо было, наглядно, без воды и четко, поставил бы больше одного лайка, если была бы возможность. конкретный респект!
Очень поучительный видос. Жаль, что лишь не многим нужен такой контент.
Обучаюсь в школе 21 от Сбера в мск и ты очень вдохновляешь не бросать все это. Своей серьезностью, разборами и многим, ибо людей, которым рили интересно что-либо изучать, знать компьютерные технологии, железо и копаться во всем этом, а не быть тупо кодерами - очень мало.
Очень дизморалит.
Твои видео - глоток свежего воздуха и позволяет понять, зачем, для чего и как это нужно, не бросать начатое, ибо бывают моменты с затыками и затупками.,
Твой канал отличается серьезностью к темам с одновременной мягкостью для новичков, ибо даешь указатели в те стороны, куда надо копать, чтобы не потерять время.
И еще скорость повествования радует)
Поэтому - не бросай и продолжай пилить контент. Очень выручаешь.
До этого видео никак не мог вкатиться в тестирование, ибо ВООБЩЕ не понимал, что изучать и как начинать. А люди, которые знают - далеко не всегда хорошо объясняют для других.
Спасибо! Ждем туториал по c++.
За сравнение тестировки со сведением и мастерингом сразу лайк!
Уууууууу обожаю твой контент ролик не смотрел только увидел но уже сзаю что он будет просто прекрасным прошу продолжай в тоже духк и не останавливайся
Clion рулит. Очень полезно для новичков, автоматический статический анализ Clang-Tidy и подсказки. Система сборки - Cmake по умолчанию. Даже теже Gтесты есть встроенные
Winderton, классный контент. Очень увлекательно. Хотелось бы посмотреть от тебя видео-обзор про Qt Framework (сделать какой-нибудь проектик, добавить туда тесты Qt Test и использовать прочие возможности фреймворка)
Очень интересно, большое спасибо, но пожалуйста не торопись.
Дружище! Ничего не понятно, но очень интересно!!! 😵💫
Твои видео - лучшее что есть в IT индустрии на пару с alekOS, спасибо за контентич😘
На счет деливерной части - можно наверно веб-приложение релизить на кластер в кубере (докере) на тех же селектелах. Вот будет дичь: код напиши, тестами покрой, процесс настрой, собери, протестируй, разверни, откати…все как в реальной жизни)
можно и на императивных языках писать функциональщину, если жестко следить за стейтом и тем, что он не меняется. Я в ВУЗе вместо курса по тестрированию взял курс по дизайну ПО. Было довольно интересно посмотреть
Крутой видос, очень хорошо обьясняешь, прям в кайф смотреть и осваивать материал
Тема интересная, но очень быстро все. Хотелось бы чуть подольше и поподробнее. Но и так очень годно, спасибо!
Интересно да. Мало материалов таких
Спасибо, пожалуйста продолжайте!
Видос топчик.
На каком процессе, нууу половину видео понять можно)
Круто! Спасибо за видос
Конечно интересно!
Очень интересно!
Спасибо большое👍
Почти ниче не понятно, но очень интересно и хотя бы ясно в каком направлении учить
Спасибо тебе!!
Не знаю зачем я смотрел это видео, ибо только только начал учить основы яп, но видосы интересные. Лайк
Братан, хорош, давай, давай вперед! Контент в кайф, можно ещё? Вообще красавчик!
Спасибо за инфу что как используется, сам сижу в на линухе с любимым нвимом. Интересно менять самопальных костыли на рабочие конструкции
Мне оч интересно спасибо
Посмотрю видео полностью
Лучше всё же расшифровывать термины для смысла. Например, раньше не было термина CI/CD и мне было не понятно что за сокращение. А лезть смотреть было лень) А это просто Continuous Integration / Continious Deployment, старые знакомые))
P..S. Туториал гут
100%
Спасибо мужик!
Интересно, кто-то на винде включает опцию автоматического скрытия нижней панели пуска? Просто это и на видео истетично выглядит и на системе, у вас приложения работают в фулл экран, без этой выбивающейся из цветовой схемы таблички внизу.
В какой программе монтируешь
Родной scheme... Хоть где-то я встретил его упоминание.
Давай вперед вперед!!!
Привет, я вот одну фишку у разных разработчиков замечал и вот у тебя заприметил и я не совсем ее понял.Зачем использовать VS Code в паре с Visual studio ?
Visual studio нету на линуксе, поэтому на линуксе юзают vs code
Здравствуйте, Winderton! По какой книге хорошо учить C++?
Мне понравилась книга Р. Лафоре. Даже респектнули за неё из Microsoft. Но я заметил, что она устарела в плане, что там нет даже C++ 11.
А Страуструпа книга 2013 года с C++11. Компании работают (я заметил ) в основном на C++14
Если вообще не учил до этого С++, то сначала хоть что-то выучи и хоть какой-то серьёзный проект напиши, потому что все свистелки и перделки, которые добавляют в язык от версии к версии предназначены для улучшения кода для тех, кто и так умеет его писать.
Нормальная такая преджуниорская стадия)
Чётко. Красавчик
Интересно слушать, хотя я вообще из другой оперы😅
почему мультипарадигменным языкам отказывают в праве быть функциональными? типа в c++ есть какие то проблемы с замыканиями?
Все прошлые 10 лет я думал что я знаю с++)
А гайд про C будет?
Спасибо, ничего не понятно, но очень интересно
Супер!
Оставлю на завтра
Интерсно!
сделай по разработке игр видео
В C++ тестирование не так критично, как в интерпретируемых языках. Компилятор многое проверит ;). А вообще интересно было про новые фичи С++ - корутины, концепты, std::ranges etc., и вообще что там в 20/23 стандартах добавили.
А для чего тестировать по сути синтаксические баги? Мы же тесты для проверки логики пишем.
@@markriven1259в случае, если ошибка только потенциальная, компилятор вывалит тебе ворнинг с предупреждением, а кто его будет читать и вникать …
В нормальных проектах настроены линтеры, которые не позволят закоммитить код интерпретируемых языков с ошибками, то же самое можно настроить на компилируемых языках - ошибка компиляции на ворнингах например.
@@markriven1259по поводу «компилятор проверит» - это была скорее шутка. Но в каждой шутке как говорится есть доля правды. В интерпретируемых языках стремятся добиться 100% покрытия, как раз чтобы выявить синтаксические ошибки, а в плюсах такие просто на этапе компиляции выявятся. Поэтому в плюсах 100% покрытие в юнит тестах не всегда нужно.
@@couragic очень скудное представление об интерпретируемых языках от человека с сишностью головного мозга. А по поводу компилятора - в плюсах он не проверяет ничего, неверные присваивания, ошибки памяти итд итп легко будут откомпилированы. В более продвинутых языках, го например, компилятор проверяет намного больше ошибок, в расте -- компиляция гарантирует работоспособность программы, чего несчастные сишники даже тестами не могут добиться
всл, было сложно накатить какой нибудь gentoo linux, ну или void linux? нормальные дистро которые мало жрут при том что это полноценный линукс
Очень не люблю смотреть каналы на русском, ибо пытаюсь выучить английский, но твои ролики как бы такое сказать, я уже программист, настоящий как полтора года, а варюсь в теме года 2 может 3. Есть проекты и когда ты делаешь что-то долго, как ты знаешь ты всё время что-то чинишь в своём коде и как бы спустя месяца, как ты работаешь над своим проектом ты выгораешь, но твои ролики заставляют тебя хотеть снова открыть visual studio.
Ничего не понятно но очень интересно
I am looking all ever for it
Давай гайд на c++ на 10 часов
в какой проге ты рисуешь?
Krita
сильно
feed back!!!
Давай гайд по CMake`у.
На канале есть уже бро
мне интересно лайки всегда ставлю комменты боль(нужно думать)
Думал видео как всегда в х1.5 но оказалось что нет - скорость обычная 🤔
кайф просто кайф
ничего не понял
Куда привели меня рекомендации:
Когда видео по Rust'у ?
Напиши настройки баша. Я такой же хочу
СтрашнА, вырубай!😅😅😅
Салам братка
А кто мне может на вопрос чуть не по теме. Я честно говоря тестирование в работе не использую. Я сторонник проверять сам, но опыт через devOps был. Кто мне может объяснить зачем нужен devOps если юниттестинг вполне делает то же самое? Я понимаю что там можно настроить разные среды выполнения. Но, блин, если ты пишешь на винде под Линуху, то у тебя по любому должен быть dev сервак для этого. Плюс через юниттестинг ты точно можешь быть уверен что если у тебя все летит в тар тарары то это не из-за гребанных fuse систем. У меня там на определенных вызовах в kernel просто цп-шка уходит в 100ку. А нативно все ок.
Другой момент - Я сейчас пишу десктопное приложение. Вот как мне тестинг поможет? Там проблемы могут быть в результате взаимодействия с окном. Один хрен руками придется проверять
А по поводу ошибок что показал автор - блин это поймает даже статический анализ кода
+ в копилку с++ на 10 часов
ну хоть что-то не на питоне.. Ура!!
Jetbrains OneLove
wsl это ад, выжирающий память подчистую, плюс дикие тормоза при пересечении фаиловой границы между системами. Нод модули, например, могут ставится минут 5-10 просто если твой проект расположен на половине винды, а сама нода под wsl. Можно же использовать gitbash и терминал windows terminal. Практически весь софт есть и под винду. На wsl можно ставить только всякую дичь, которая "не имеет аналогов"
Конкатенирует смешное слово
Гайд по С++
Expected значение в тестовых макросах должно быть СЛЕВА!
Pre-junior, это trainee. Хотеть от вчерашнего студента знания в области CI/CD - это слишком завышенные требования
Не надо сеять в умы людей этот паттерн
Это уже стандарт, старина. Адаптироваться малым нужно.
@@wndtn Так если по факту посмотреть по вакансиям на Junior C++ программиста, то CI/CD вообще не требуется, обычно просто неплохие знания C++ и фреймворка, это скорее для Junior DevOps или у вас сильно стандарты завышены
@@wndtn CI/CD даже джунам не нужен. этим уже занимаются люди выше
что за WSL?
линукс в винде
Как тебя не начало тошнить от этого за столько лет?
Я как быший музыкант и ток вкатывающийся в проганье (ну как , уже пять лет из которых год эт плюсы) могу сказать -
так же как и музыкантов не тошнит от настройки/наладки их же инструментов .
Если ты находишь приспособу позволяющую тебе поддерживать твой инструмент , то ты будешь хотеть её изучить и использовать .
Как пример струнники юзают тюнер , что бы быстро настраивать струные инструменты , но ведь надо ещё найти и научится им пользоваться .
Видос очень интересный, однако я не знаю С++. 76%
Сорри что сложно, мужик, но зато ты чему-то научишься.
11 секунда
100%, все круто
100%, но все вообще тяжело пошло, понял может от силы процентов 10-15%
100
Пришёл сюда чисто случайно, сам на джаве сижу и там юниты прописывал и потому процентов 15-20 от ролика понял, но остальное это просто изнасилование в мозг, если бы прогал на с++ и в VS мб было б попроще, но я адепт жабы и среды разработки от JetBrains (IDEA)... В целом интересно но темп прям очень шустрый, как будто на х2 смотрю)
База
как жить, если интересно но ничего не понимаешь?
нет тупых людей. При осмыслении своего подхода к обучению тебе станет легче, и тогда прогресс в навыках станет обыденностью)
suddaa
Передать по ссылке и вернуть❤❤❤
там пометка специально добавлена, старина, но ты хорош
Коммент
Пишу на Java.
Гайд на 10 часов - это хрень. Видео лучше делать короткими 15-25 минут. Давать им осознанные названия и раскладывать в плейлисты по порядку.
А 10 часов этот самому замучаться и зрителя замучить.
зачем вообше нужны тесты? когда ты пишеш прогу ты и так отлажываеш все в процесе
Да ты издеваешься, старина
зачем нужна проверка качества сантехники? ты же когда в туалет идёшь, обычно сам бачок в процессе немного починяешь
рофел)
Вобшэ не нужоны, это всё для инфоцыган.
Я раньше тоже так думал. Потом дошло на практике: когда ты программируешь, ты там чего-то поменял, здесь. Потом глядишь, у тебя здесь работает, а в другом уже нет. Ищешь, вспоминаешь ... А, понятно. Тут чего то забыл или упустил из внимания, когда изменял код. Исправил, пошел дальше. И так много раз. Хорошо если в процессе далеко в лес не зашел и не отошел от "базы" то есть от некоего стабильного безбагового состояния. А иначе это вспоминание откатывание ментально назад и поиск ошибки и отлаживание может занять кучу времени. А так, когда у тебя есть подготовленые тесты, ты что-то изменил в программе, запустил тест-скрипт и он практически моментально прошёлся по всем аспектам/функциям итд. и засёк проблемы в случае чего и ничего не забыл. А так ты бы в ручную все аспекты проверял. Это бы заняло больше времени и во вторых, возможно ты бы чего то забыл проверить, а потом бы это у тебя вылезло, но ты уже отошёл далеко от "базы".
Короче тесты, это та же отладка, просто её процесс со всеми аспектами записан в скрипт, тебе не надо её каждый раз задавать, вспоминать, а всё ли ты проверил и концентрироватся на всём этом. Это освобождает твои умственные рессурсы (которые и так нужны для написания кода) и сокращают время, если программа сложная, многофункциональная и делаются много изменений в коде.
видос не очень👍