Что пишут на языке программирования C++?
HTML-код
- Опубликовано: 14 май 2024
- Говоря о языке С++ нельзя не затронуть историю. С++ возник от языка Си.
Чем эти языки отличаются? Что пишут на С++?
💻 Немного знаете C++, знакомы с Unreal Engine 4, уважаете математику и неплохо относитесь к физике? Такой набор супернавыков можно применить к разработке игр!
🎓GAME DEVELOPMENT - bit.ly/37HIABD
Курсы для новичков:
🎓JAVA - bit.ly/3iEwLCy
🎓JAVA Start - bit.ly/3yKCnRl
🎓PYTHON - bit.ly/3xDGBIV
🎓C# START - bit.ly/3CMXBAc
🎓C#/.NET - bit.ly/3AHehqX
🎓Инструментарий JAVA - bit.ly/3AFGDC0
🎓Automation QA (Java) - bit.ly/3iHjdWG
🎓ANDROID - bit.ly/2VPAzaU
🎓FRONT-END (ANGULAR) - bit.ly/3yI48d6
🎓FRONT-END (REACT) - bit.ly/2VVgpwB
🎓SALESFORCE Developer - bit.ly/2UcIbUy
🎓UI/UX дизайн - bit.ly/3giqTNR
🎓Обучение на проекте - bit.ly/3xLH1gq
Продвинутые курсы для состоявшихся девелоперов:
🎓Enterprise patterns - bit.ly/3scVfpy
Если вы:
🔴Специалист уровня Junior
🔴Только что получили новую профессию или заканчиваете обучение (направление Java /C#/.Net/ Front-End/ Automation QA)
🔴Ходите на собеседования и получаете отказы в трудоустройстве
🔴Вас не зовут на собеседования
🔴Боитесь, что не справитесь с волнением и завалите собеседование. Тогда именно для вас мы разработали уникальную услугу «Пробное собеседование».
🔧 Пробное техническое собеседование со специалистом уровня Senior Developer/ Team Leader - bit.ly/3m0Zvar
Что мы предлагаем:
✅ Собеседование с техническим специалистом уровня Senior Developer/ Team Leader (Skype):
✅ После собеседования вы получите рекомендации по улучшению знаний, на что обратить внимание, какие моменты проработать, чего не хватает именно вам, чтобы успешно пройти собеседование на желаемую должность.
📢 Если у вас возникают сложности с определением вашего дальнейшего пути развития в ИТ или вы только начинаете карьеру и не знаете с чего начать или вы хотите поменять вид деятельности имеете определенные навыки и не знаете как правильно поступить, предлагаем вам помощь в виде Карьерного консультирования от Сергея Немчинского.
👔 Карьерная консультация с Сергеем Немчинским - bit.ly/3iHmp4R
Сайт FoxmindEd: bit.ly/3fYFEVU
FoxmindEd в ФБ: / foxmindedco
FoxmindEd в Instagram: / foxminded.ua
FoxmindEd в VK: foxminded
Мой Telegram: t.me/nemchinskiyOnBusiness
Для деловых запросов: youtube@foxminded.ua
Тайминг:
00:00 - вступление Сергея Немчинского
00:22 - рекламная пауза
01:20 - С++ возник как развитие языка Си
02:39 - что пишут на языке Си
03:24 - синтаксис
06:27 - явление “говнокодеры”
08:54 - сложный из-за своей избыточности
09:36 - один из самых богатых языков
11:13 - все варианты использования С++
12:12 - Game Development
12:56 - Embedded разработка
13:39 - системное программирование
14:13 - профессии С++ разработчиков
#С++ #немчинский #ityoutubersru
😭 5 самых распространенных ошибок в обучении на программиста (студентам будет больно) - ruclips.net/video/lG9rjJB5Nas/видео.html
Как говорилось на Java можно написать всё, а на C++ можно написать Java
UPD: Ещё немного и коммент обгонит ролик по лайкам)
Большая часть Java написана на Java, а если JVM написана на C++, это не значит, что доя этого не подходит любой другой не managed язык.
@@IExSet ну да, после создания языка, его пересоздают с помощью его же самого.
на Assembler можно написать C++
@@user-wm3sb9gj7q отчасти, но в основном компиляторы пишут на C/C++
@@IExSet какие бывают клоуны... эхх
"Каждый объектик должен быть под надзором!". Настоящие диктаторы прогают на С++ )
У плохих же диктаторов объекты сбегают от надзора.
Ленивые диктаторы кодят на Rust.
Оригинальная шутка:)))
В Си требования по надзору куда жёстче, особенно емли сравнивать с "плюсами" начиная с 11-х. В плюсах какие-то Умные указатели есть, которые нередко самоуничтожаться могут.
Так что, идеальным языком тоталитарного диктатора является именно C.
Дедушка Адольф пошёл учить MASM
@@levoradikal в 92году помню начинал с тасма, закончил мясом
Я много лет в геймдеве и хотел бы сделать ремарку: не слушайте тех, кто боится C++, не такой уж он и сложный. Напротив, на мой взгляд, C++ намного проще Java и С#, т к его инфраструктура более прямолинейна. Да, нужно разобраться с тем как работает сборка(препроцессор, компилятор, линковщик), работа с памятью(стек, куча, malloc, free, new, delete, Smart Pointers). Но на этом все - остальное это надстройки стандартной библиотеки, которые вы можете изучить прямо в коде, посмотрев исходники. В C# же, чтобы разбираться в технологи надо читать документацию, книги обо всех фичах виртуальной машины, GC, какие-то поколения, все это устроено намного сложнее, чем в C++(поэтому оно и медленнее).
Кстати, говорить, что C# отжал что-то у C++ в геймдеве не совсем корректно. В Unity на C# пишутся скрипты с игровой логикой, но под капотом все тот же C++. В других игровых движках используются другие скриптовые языки: Lua, Python, могут использоваться проприетарные языки или визуальный скриптинг(Blueprints в Unreal Engine). Тут скорее C# конкурирует с ними. Если вы хотите работать в геймдеве с чем-то кроме высокоуровневой игровой логики(графика, физика, анимации, ресурсы и пр) - это всегда C++.
Посоветуйте материалы для изучения, если не сложно)
@@aleksandr3938 cppreference
Далеко не все. А как же правила вывода типов, тонкости со sfinae, rv/cv spec, rvo/nrvo, трайты, концепты, виды инициализаций и т.д. ?
@@nameundef8076 вы сами пишете, что это тонкости. Тонкостей, уверен, и в других языках предостаточно. Мой поинт в том, что начать писать игры на C++ - не сложно. А такие видео вводят в заблуждение и отбивают желание даже попробовать.
@@artie5913 Как раз для написания чего-то производительного и комплексного без знания этих тонкостей не получится обойтись. Иначе тогда нет особого смысла не использовать тот же C#.
12:30 Тут важно разделить понимание. C# в Unity используется как скриптовой язык. Это очень важно. А сам движок Unity написан на C++ и это понятно почему. Многие в недоумении просто будут думать что реализация таких задач как отрисовка DirectX, просчет физики в реальном времени, звуковой движок и тд, это заслуга C# в Unity.
В unity просто не .NET а Mono, т.е. С# в IL код, IL код в C++, C++ в машинный
Ой какая прекрасная серия видео! 🥰 Предлагаю вам запустить курс для проджект менеджеров с обзором всяких айтишных технологий и языков. Я вот сейчас это всё по крупинкам хожу собираю 🐥
На языке программирования C++ пишутся практически все курсовые и контрольные работы в ВУЗе )))
builder 2003 vibes
Очень приятно было послушать историю возникновения и развития языка. Сразу понимаешь сферу применения
Воу, давно не было видосов по плюсам, спасибки!
Одна из моих любимых рубрик! Лайк до просмотра.
На С/С++ разрабатываю уже 30 лет. Никаких проблем никогда не было ни с оформлением ни с чтением кода. А говнокод можно написать на любом языке, на той же Java, к примеру, так как это зависит от человека, а не от языка программирования.
А данный обзор о С/С++ от человека, который явно далек от С/С++, не соответствует реальности.
Ну а поскольку на С/С++ написаны все интерпретаторы, и компиляторы, то можно смело сказать, что на С/С++ можно написать все, что угодно. К примеру, для тех кто не осилил указатели, С/С++ разработчики написали Java, и теперь Java программисты сидят и рассуждают о С/С++ говнокоде, наверное, имея в виду эту самую Java :).
Здравствуйте. Где в литературе можно найти информацию про то, как собрать готовый проект с использованием библиотек и сторонних технологий? В книгах используются простые консольные примеры, за исключением Страуструпа, который вопрос именно подключения библиотек обходит стороной
@@sagrer128 Спасибо большое. Буду изучать эти инструменты. Иначе, по всей видимости, ни как.
Не важно на каком языке пишешь, важно кто пишеть на этих языках😀
неистово плюсую! я тоже не очень понял как coding conventions и coding style связанны с самим языком, тем более что в последние лет 10 все можно свести к общему знаменателю используя clang-tidy и clang-format
Так си или С++ ? языки похржи только синтксически А аот методу программировения и рядом не лежали...
Говорят даже Страуструп до конца не знает С++
Никто не знает C++. Там собираются дилетанты, принимают не протестированные решения и потом разрабы валят проекты. Даже в гугле есть свои правила C++, например не использовать эксепшены. А Qt во всю использует макросы в С++... Контейнеры часто делают бесполезные операции... Подходы в программировании часто бездумно меняются на 180 градусов... полный беспорядок в общем.
@@user-md3nz9hy8z
В компаниях часто ограничивают C++, чтобы не провоцировать miss use. Через исключения некоторые норовят возвращать runtime ошибки, хотя это замедляет код в тысячи раз. Или пропускают отлов каких-то исключений, в результате чего программы неожиданно вылетают по необработанному исключению. Хотя всё это можно постепенно вычистить, но есть и концептуальная проблема. А можно ли в принципе продолжать исполнение кода после уместно сгенерённого исключения?
Также многие запрещают использовать RTTI - чисто из-за размера доп.памяти на хранение информации о типах.
В 1990-х запрещали использовать template. Сейчас же ввели в язык auto, что по своей мощи сравнимо с template.
@@alexanderbelov6892 Мое мнение, исключения приводят к дублированию кода по освобождению ресурсов. Соответсвенно нарушается принцип DRY + код становится неуправляемым, если кто то забыл проверку освобождения ресурсов во всех предполагаемых точках появления исключений. Т.е. исключения дают больше проблем чем решают. И там проблемы принципиальные. До сих пор стандарт один, но настолько сложный, что производители компиляторов давно игнорируют стандарт и каждый лепит что то свое. А постоянная разница в недоработанных стандартах привела к тому, что код написанный ранее может просто перестать компилироваться (почти гарантированно старый код не скомпилируется).
@@user-md3nz9hy8z Если используется подход RAII к захвату ресурсов метода, в котором есть try catch, то усилия по освобождению не растут. Расткрутка стека производит освобождение объектов методов на стеке автоматически.
Да он в своих книгах в коде косячит - часто break не ставит и типа у него правильно логика после этого работает )))). Да и пишет он конечно писец заумно, явно преподавать ни его призвание, но после плюсов смотришь на другие языки и уже все знаешь, синтаксис тот же на 80 процентов.
В этом ролике можно узреть максимальное незнание C++, и не только.
він в кінці так і сказав! що він його не вивчив!
@@user-ho7rl2me3r ну, я бы не стал с таким уровнем понимания языка, механизмов защиты операционных систем, виртуальной памяти толкать вот эту всю дичь. Но пипл хватает :)
@@serg_joker та якийсь випуск тільки заради хайпу, привернути увагу. Інформативності нуль.
Полностью согласен. К сожалению Сергей не соизволил даже погуглить где и для чего используется с++.
И С++ не "тяжелее С".
В эмбедед его меньше используют потому, что не для всех микрочипов сделали компилятор С++. Та и не во всех микрочипах есть heap, поэтому смысла в фичах с++ нет.
@@kolyan199816 Вы работаете в embedded разработке?
Спасибо за ваш контент он сильно помогает
Как погроммист с/с++ с опытом 15 лет, заявляю: в выпуске примерно 50% - это мифы, легенды и сказания.
Благо, что Сергей прямо сказал, что не смог выучить с++, но правда сказал это в самом конце
начал учить C++ и решил посмотреть видос , автор отбил все желание учить яп
@@alexchoriy2182 чем именно отбил ?
@@Alexey_Shtakerman незнаю просто так завуалировано намекает что применений плюсам уже не так и много
@@alexchoriy2182 C++ это не Бейсик или Паскаль , к которым можно применить фразу «применений не так много». К С++ можно применить утверждение «он переживет 95% всех остальных языков». В этом вопросе Надо отталкиваться от своих предпочтений и условий.
Если можешь сразу и навсегда определиться со своей сферой IT, то осваивай наиболее популярный язык. В той сфере. Например, корпоративное ПО - Java. Веб - что-то своё. Десктоп - c++\c# ….
У мобилок - своё.
Если молодой и не можешь определиться в том, во чем хочешь специализироваться, то c++ - прекрасный старт для того чтобы потом любой другой язык пошёл у тебя легче
@@Alexey_Shtakerman я писал на питоне долго +- знаю его хорошо , но что-то захотелось более низкоуровневое програмирование изучить , попробовал плюсы вроде понравилось , но никогда не работал на таком низком уровне + никогда не интересовался электроникой поэтому немного сомневають что вывезу этот неймоверно большой поток информации + будет ли интересно мне. спасибо за коментарий , щас очень проблематично найти разработчиков на чем либо кроме питона успехов вам!
Спасибо за информацию! То что я искала.
У меня забавный случай был пару лет назад когда в stl вошла библиотека ranges я смотрел конференцию по новому стандарту c++ там из зала прозвучал вопрос - "а как на счёт скорости?" - ответ "теоретически медленнее работать не должно". Меня это заинтересовало я написал тестовую програмку на common lisp замерил время выполнения, переписал её на "новый c++" используя ranges замерил время в 2 раза быстрее, переписал в стиле "старый c++" замерил время в 1,5 быстрее :) снова переписал её как "с разработчик" заменив все stl контейнеры на свои простенькие замерил время снова быстрее :) gcc, clang.
Мои знакомые с++ разрабы пишут на pyton затем переписывают на с++ (^.^)
По описанию прям "Великий могучий"- И все-то в нем есть и синонимы, и метафоры, а учить даже носители бояться, а иностранцы сложнее китайского считают.
Добрый день! Сделайте пожалуйста видео на тему популярности Embedded разработчика. Очень хотелось бы услышать ваше мнение, я являюсь Embedded разработчиком и в профессию эту, я входил с изучения нескольких Ассемблеров, на разную архитектуру ядра.
Операционные системы это на 90% С, а не С++
да всё на 80 это С.. не питайте иллюзий..
хотя из своих сре где живётся кажется что это не так
Windows - это на 90% C#. Microsoft не зря его делали.
@@alexanderbelov6892 делали они его чтоб продавать.. а не чтоб тело видовс писать писать, они конечно мазохисты но не настолько-же...
@@igorseledtsov7345 Реальный состав кода не известен. Но сервисы Windows вполне могут быть написаны на C#.
Пусть не 90%, но 20% на C#, 70% на C++, 10% на C - вполне годный расклад.
В Интернете есть даже более-менее точный размер исходников Windows на 01.2020 - порядка 581Gb в исходниках. Это плюс-минус 10 млрд. строк кода. Писать большую часть на C++ - это уже подвиг. Хотя Сергей вот считает, что на C++ не пишут Enterprise приложения. Зато пишут миллиарды строк кода операционной системы.
@@alexanderbelov6892 как это не известен не раз утекал полный код.. дапже мне попадался..
с++ я там не видел.. писать на нём кернель это безумие. да и невозможно даже теоретически...
а прикладные програмы конечно могут быть хоть на визуал басике...
да и на си-шарпе могут.
тут вопрос что считать операционкоя.. я то про кернель... вы видимо трактуете это малость пошире
У Сергея крутая дикция. По этому видео отлично смотрится на скорости 2х.
Наконец хоть кто-то растасовал по понятиям. Что касается самой професси складывается ощущение что в программисты С++ очень высокий порог входа, там сразу ждут тех кто лет 5 его изучал в очень хорошем вузе у хорошего преподвателя.
Во всех проектах в которых я работал спокойно приходили студенты без опыта с непрофильных факультетов. Физики, математики без уклона в программирование, с желанием учиться и развиваться легко проходят собеседование, приходят на пол ставки и к концу универа и выходу на полную ставку уже официально числятся как мидлы, а не джуны.
Высокий порог входа в плюсы это миф.
@@SirVestniK возможно вы правы если речь идет о москве и о каких то проектах где можно найти дело для начинающих. Лично я таких вакансий на хх ниразу не видел. Там сразу 5 лет опыта требуют.
@@12strel по моему опыту на эту графу в вакансии смотреть бесполезно. Если в вакансии написано что ищут middle или jun разработчика, то будут готовы взять толкового кандидата без опыта, способного прямо сейчас выполнять реальные задачи в коде и с хорошим потенциалом для профф роста.
В любом проекте есть рой нужных но не сложных задач, на которых можно набираться опыта и для которых нужны руки.
Кандидату при этом всё же нужно какой-то уровень самостоятельности иметь.
Смотря где. Есть компании, которые нацелены на состоявшихся специалистов. А есть такие, которые набирают "старт карьеры" (джунов)
@@princessmary5556 То что я вижу в большинстве случаев одна и таже история , кадры начинают набирать когда жареный петух клюнул и деваться уже некуда. Везде стандартная фраза "у нас сроки горят и мы ищем не просто спецов с 10 летним опытом а чтобы ваще-ваще стразу сел и поехал на незнакомом коде в незнакомой области". Некоторые пишут о том что им нужны жуны но если почитать требования к этим жунам то складывается впечатление что жун для них это тот кто уже давно все умеет только не такой крутой "как мы тут пятый год на одном и том же проекте".
It's not bad idea to use Hungarian notation for embedded coding.
As well, use brackets on new line as well 8-spaced tabs is standard code formatting for Linux kernel source code.
Самое лучшее объяснение про С++ которое я слышал!
Батя, спасибо за твой труд по просвещению населения в ИТ-технологий.
Сергей, сделайте видео про Solidity пожалуйста :)
Не проще от профильных каналов посмотреть? Что он тебе расскажет, как много смартконтрактов он написал?)
Хреново ты подготовился к выпуску, дядя. Ты просто вводишь людей в заблуждение, а твои воззрения сильно устарели.
6:12 Какой еще until в C++?!
6:36 Перегрузка оператора точка?! O'RLY?
7:54 Наоборот, венгерская нотация как раз и была придумана для повышения читаемости. Т.к. C/C++ это язык со строгой типизацией, а на то время, компиляторы обладали очень слабым статическим анализом, и чтобы избежать ошибок при использовании типов, эта нотация позволяла хотя бы визуально отслеживать, что как используется. Это сейчас есть интерактивные супер-удобные IDE с компиляцией прямо на лету, которые все ошибки подсвечивают, а тогда это был просто текстовый редактор и что пропустил компилятор (а пропускал он очень много), то ты потом часами отлавливал в отладчике.
9:55 Все не настолько печально - мы же имеем дело с объектами, а значит с инкапсуляцией. Как минимум, можно полагаться на области видимости и смарт-поинтеры, а также есть техники с подсчетом ссылок.
10:04 Здесь начинается полная чушь. Если имеются в виду современные операционные системы (Windows, Linux, macOS), то C++ позволяет сделать ровно то, что ему позволяет операционная система. Это просто способ записи алгоритмов, а не какая-то супер сила, которая позволяет обойти ОС и защиту процессора. Те же штуки с памятью можно проделывать и в C# например (да, есть там прямой доступ к памяти - читайте Рихтера) потому что есть API и есть поддержка среды исполнения. Все отличие от C++ при этом - это просто нельзя сделать случайно, но можно если действительно надо.
10:50 При наличии фреймворков и библиотек, писать на С+ не сложнее чем на других языках. На С++/Qt например, оно вообще от C#/.NET мало отличается.
11:20 Оценка сильно завышена. Да, оно сложнее, но не в 10 раз. При наличии опыта с определенной технологией, продуктивность например на Qt/Qml будет сравнима с тем же C#/WPF. При этом ограничений будет сильно меньше, а производительность лучше.
15:55 Фишка в том, что ВЕСЬ C++ учить и не надо. Достаточно знать в целом, что есть что и что пришло в язык в определенном стандарте, а детально изучать по необходимости. Т.к. не бывает проектов, в которых используется АБСОЛЮТНО ВСЕ из C++.
Тоже прифигел с until. Чувак вообще не в теме, чисто начитался интернетов без понимания. Ага, на С++ он программировал.
Очевидно рекламируемые курсы ровно такие де
А то c++ гораздо сложнее других популярных языков, к примеру Java, это правда?
@@metrstiln1159 учи Си - не помешает. А потом можно более сложный С++, если будет желание. Я не назову себя большим профессионалом, но Си думаю знаю не плохо, по сравнению с С++. А по практическому применению, ну я например писал на Си свои дипломные писал и еще cgi-скрипты для своего сервера.
Спасибо за видео! 16 минут пролетели как одна)
Вдохновила, особенно, последняя фраза😆
Подумываю изучить C++ как дополнение к своим C# WPF проектам. Если будет нужно поработать с компьютером более "интимно"
Есть умные указатели которые умеют сами освобождать память
Вот вот. А еще есть деструкторы, которые сами автоматически подчистят ресурсы. А в java забыл поставить finally { object.close() } и труба.
Сижу вот думаю, с какого языка начать изучение какого либо языка. до 30 лет было до лампочки на всё это, и тут возникает интерес к неизвестности)))
В некоторых вузах до сих пор одной из работ для допуска к зачету, является написание простенькой программы на ассемблере.
И студентам на неё хватает от одного вечера до месяца.
Да и программа занимает примерно от 100 до 500 строк, из которых 20-30 одинаковые (константы, указатели).
Шикарный язык, для изучения устройства процессора, а так же для понимания что любые данные, независимо от типа это про набор байтов, ибо немного поигравшись, можно написать программу, которая сама себя переписывает!
Ну или при ошибке можно записать данные в область видеопамяти или ещё куда и получить весёлые артефакты.
Про байты я узнал в самом начале изучения C#, а вот про повторение кода - неужели там нету функций?
Мне 16 лет, всегда был далёк от программирования в каком-либо проявлении. Но вот решил это изменить и приступил к изучению С++.
За месяц есть уже некоторые успехи, получается писать примитивные коды. Учитывая, что запас знаний об этом языке программирования у меня скудный, получается даже использовать его для решения задач школьной программы и тп.
Отлично, продолжай в том же духе
А откуда ты брал информацию для обучения скажи пожалуйста? (спрашиваю так как только хочу начать)
@@Andruxa03 можно с Ютуба, можно по книге, можно от преподавателя
@@Aristotle314 це просто итак логично) я имел ввиду, если вы что-то читали и это вам помогло, то могли бы вы это посоветовать конкретнее (заранее спасибо)
Слушай, ты молодец. Но я начинал кодить примерно так же, как ты (сейчас мне 35, и кодить продолжаю). Единственное что бы я посоветовал - все-таки разобраться сначала с "обычным" Си, а потом накручивать плюсы. Хотя бы пару часов или денек посвяти этому, посмотри видосы. И потом уже добавляй туда ООП, шаблоны и прочие плюсовые штуки. Так просто знания будут структурированы и по факту "2 инструмента по цене одного" будут у тебя в руках, потому что они для разного.
С++ прочно обосновался в игровой индустрии, насколько мне известно, в большинстве компьютерных игр вся логика написана на С++, собственно это основной язык весьма популярного реалтайм движка Unreal Engine
На с++ пишется движок. А вот игровая логика - по возможности, на скриптовых языках.
@@princessmary5556 Игровая логика тоже на C++ в UE.
@@f1am3d В Unreal Engine 4 есть встроенная система визуального скриптинга. UE4 по умолчанию поддерживает сразу два языка программирования: текстовый C++, в котором нужно писать строчки кода, и визуальный язык Blueprints, в котором игровая логика выстраивается при помощи связанных между собой блоков.
подскажите где найти курс по языку "A" ? мне нужно по быстренькому написать REST API под него
Нет, серьезно.
Смотрю ролик с тем как Сергей что-то рассказывает интересное и как-то настраиваюсь на работу, а дальше переключаюсь на музыку)
Ключевого слова "until" в С++ нет.
Как забавно наблюдать букву Z на ноуте в сегодняшних реалиях
Хотя он вроде украинец
Ага, а я уже подумал что он из этих...
@@user-hj9ym6lr4k Ноутбук Украинец? Ладно шучу. Это HP Zbook, классный ноут и ничего общего с заблудившимися мудаками не имеет.
А он и не hoхол...
@@AlexEl327 а кто он? набутылка?
Отличное видео, спасибо! Ведёте ли вы платные уроки на с++?
На плюсах пишут код.
Спасибо сио посмотрел видео ставьте лайки подписывайтесь .
В следующем видео расскажу что пишут на Джаваскрипт
Неужели код?
Изучил его когда-то только ради написания читов к игре, в итоге работаю теперь по с++
Сейчас как раз таки пишу)
Как так получилось? Да ты гений похоже, мега сложный язык выучить по приколу)))
Ахах,тоже учу его ради читов сейчас 😂😂😂😂
8:15 сказано очень хорошо, лайк!
нет например, reflection, который мне иногда так нужен и это очень печально. Например для сериализации и десериализации в С++ нужно писать функцию для обхода всех объектов в ручную! А вот в Python reflection есть, и сериализация или трансформация в JSON занимает одну строчку кода. Но, тем не менее С++ - это мой фаворит, особенно, если умело использовать его со знанием С/glib/stl.
Не знаете вы историю. С ++ написал датчанин, ученик норвежца, который создал первый ООП язык Simula в конце 60-х. Simula в 70-е никакого применения не нашла. А Biarn Straustrup понял что пришло время ООП и решил сделать крутой ООП язык. А Smalltalk , это был второй ООП язык. Вообще если не скандинавы, то я не знаю как бы сейчас выглядело программирование
Smalltalk все таки был первым языком ООП. Само понятие и описание ООП ввел разработчик Smalltalk. Это уже потом симуловский вариант, который позаимствовал и С++, стали тоже называть ООП, хотя оно никакого отношения к ООП в видении и определении Алана Кэя не имеет.
То есть существует ООП в изначальном классическом виде (SmallTalk) и тот вариант что потом назвали ООП (Simula, C++, Java, C# и т.д.)
То чувство когда не совсем всё знаешь по теме будущего видоса но видидос сделать и залить на ютуб надо!
когда ничерта не знаешь*
поздравляю со 180 000
-В c++ нет сборщика мусора, ты должен всё помнить и делать вручную!
-Умные указатели: ну да, ну да, пошли мы на х*р.
Спасибо, интересно, я сам кодер на с/с++, обажаю язык, хотя пишу 60-70% на нем и 30% на Ява. Избыточный функционал дает такие большие возможности, расширение построения архитектуры программы.
А что вы пишите на C++ и на C?
@@interesting4899 Ну много чего, разные перегонки данных, интеграционные системы, сервисы и т д. Для линукса давно не писал. на виндовс все.
А что по зп на плюсах?
@@dimakiprich4529 Не могу сказать
@@andreynaralchuk4382 скажи пожалуйста, паттерны ты когда изучил? сложно было?
На будущее лучше не говорить про синтаксис плохо знакомого языка. Никаких until в С++ нет. Дефайны - это наследие Си и т.д.
Простительная ошибка. Зато есть for, do, while - каждый из которых нужный и выполняет свою задачу. А Until есть в Коболе и если не ошибаюсь, в Паскале.
@@yuriy333 и do-while и while-do. repeat-until - это да.. это паскаль
@@MrCter Самый полный набор этих видов циклов в Visual Basic, там "while/until" можешь ставить как в начале цикла Do-Loop, так и в конце.
писал на многих языках, C++ как качественный multitool, но иногда тяжело читаемый (хотя зависит от качества программиста), хотя новые стандарты вносят свои коррективы. в случае когда нужен performance (редкие ситуации) я беру С и иногда поглядываю что там у С++ нового, а нового из boost в стандарт много чего добавляют, судя по всему, С++ активно развивается и начинает выглядеть всё более привлекательным по сравнению с другими языками, иногда подумываю обратно к нему вернуться уже 7 лет на нём продуктового ничего не писал )
Посмотрела с интересом. Спасибо
Привязывать говнокод к конкретному ЯП... ну такое себе, говнокод больше относится к программисту.
Мде... автор видимо С++ пару раз в жизни палочкой тыкал, в 90х годах. Половину утверждений - куда-то мимо либо неверные. Цикл until - это вообще что такое в C++?
Спасибо👍
Насчет управления памяти, все-таки не так плохо сейчас все - давно в стандартной библиотеке есть shared_ptr/unique_ptr и тд
Уважаемый Сергей, для этого видео лучше бы пригласили Антона Полухина их Яндекса. Он пишет на нем как раз Enterprise решения.
под Enterprise обычно понимается решение бизнес-задач, яндекс же занимается созданием высоконагруженных сервисов. поэтому там не используют ни явы ни шарпа, зато в ходу плюсы
@@z140140 И "явы и питоны" в Яндексе активно используются, и даже испытывают огромную нехватку спецов по этим языкам для чего организовали свою "школу Яндекса"... Знаю это точно.
@@JohnSmith-ps4uk я работал в яндексе в 2018-м и тогда четвёрка основных языков там была - ява, плюсы, питон и кажись js. Но в этом сообщении под "там" я имел в виду highload, а не яндекс в целом - для него в яндексе используют плюсы поскольку ява и тем более питон работают медленней
Для написания программ для работы микроконтролеров не так много альтернатив. Это Асемблер, С и С++ по этому С++ для меня на первом месте.
Си лучше, меньше вероятности пропустить ошибку.
Я думаю, что для людей, которые C++ в своей работе постоянно не используют (вернее вообще не использует), не то чтобы прям супер-интересно что пишут на языке программирования C++, НО сам по себе ролик интересный. Правда в нём, тема так и не была раскрыта. Чисто для себя понял, что C++ используется для написания операционных систем и написания компьютерных игр. А в основном автор рассказывал об особенностях самого языка, что в принципе тоже познавательно.
Насчет ОС на C++: прошу посмотреть проект Cosmos OS, очень воодушевляюще и просто в работе.
Первое не унылое видео про програмирование увиденное мной в принципе! Всё по делу без воды, очень интересно, спасибо.
11:18 Так как C++ является обычным ООП языком на нём можно писать Enterprise приложения. Работа с памятью уже лет 20 должна вестись исключительно с помощью smart pointers, и в этом случае код можно на 99% сделать с автоматически управляемой памятью. Это не освободит от проблем ручного управления памятью в 1% случаев для массивов, но и для них придумали стандартные контейнеры, которыми настоятельно советуют пользоваться. ООП язык всё же.
Автор сам не понимает о чём говорит, сразу видно, что почитал мемов и даже не программировал на cpp
@@kirillchurkin9318 он сам сказал, что не смог изучить до конца.
@@kirillchurkin9318 Автор, видимо, просто не застал C++11 и более поздние стандарты, т.е. рассказывает по большей части про "С с классами", на котором писали во времена популярности C++Builder от Borland и Visual Studio 6 от Microsoft :). Тогда да, всё через new, delete писали, стандартные библиотечные контейнеры типа векторов вообще использовать было не модно (да о них и мало кто что-нибудь знал), с потоками (ввод-вывод) аналогично, а в учебниках по С++ тех времён основы языка объяснялись по сути на С без плюсов и к этому добавляли пару глав про классы.
@@sagrer128 Еще есть объемная библиотека boost
@@MrLaSerj boost в те времена тоже не было, насколько помню %). Ну, то есть, формально либа уже была в 1999-2000 году, но не только лишь все про неё вообще знали ).
Difference between C and C++:
C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off.
--Bjarne Stroustrup
По поводу "написание энтерпрайз-приложения займет в 10 раз больше времени, чем на Шарпе или Джаве": С++ - это только язык, все зависит от используемых библиотек и фреймворков. Имею опыт написания одного модуля (правда, с довольно витиеватой и объемной логикой) сложной энтерпрайз-системы на С++, этот язык был выбран ибо этот модуль должен был без существенных доработок собираться под Виндовз, Линукс и Андроид. Использовались фреймворки Qt5 и Boost, разработка заняла не намного больше времени (примерно плюс 20-30%) относительно разработки аналогичного приложения на C# (основной язык системы, частью которой являлся модуль), ну и пришлось немного побороться с некоторыми сайд-эффектами от отсутствия управления памятью. Резюмируя скажу, что да, если не стоит специфичных задач, то С++ для написания UI-приложений энтерпрайз-уровня - не лучший выбор, однако, это не значит, что его так уж сложно использовать с такой целью, дополнительная сложность есть, но она не в 10 раз выше, чем на других более популярных языках,
7:20 Почему code style имеет проблемы только с C/C++? В других языках code style определён в стандарте языка? Нет! В Java/C# также code style может быть любым.
Видимо, дело в том, что в других языках обычно всё же есть какой-то один принятый в сообществе стиль кодирования (бывает, IDE ещё и автоматически форматируют всё под этот стиль), а в плюсах у каждой команды свой "кодекс", нет какого-то общепринятого варианта, часто даже в рамках одной организации есть различия и надо постоянно учитывать код проекта какой из команд ты сейчас правишь :).
С чего вы взяли, что в других языках есть какой то один принятый стиль?
Когда изучал С++ был реально удивлен, когда узнал, что и сам С++ написан на С++. Этим не может похвастаться ни один другой язык программирования. :-)
From some point C is written in C.
From some point Linux is developed in Linux.
From some point any language could be written on itself.
Python написанный на Python: PyPy
Python написанный на C: CPython
И таких куча вариаций
а си написан на C++
@@arboleet а С написан на PDP-11
@@arboleet а С написан на PDP-11
Сергей добрый день. Расскажите пожалуйста в дальнейших видео про разработку на bubble платформе и перспективе становления bubble разработчиком
OMG а это еще что такое ?
@@user-be2me4qu1l треш наверно еще какой-то)))
спасибо дорогой!
В 21м году говорить что в С++ надо прям вручную за объектами следить как то странно. Уж давно смарт-поинтеры и удобные контейнеры существуют, можно писать как на жаве, не думая. Даже авто вывод типов есть.
Не только в 21. Во времена с++03 или даже в с++98 тоже самое было с той лишь разницей, что смартов не было в стандартной библиотеке. А вот в проектах они были (бустовские или частные велосипеды). В качестве вывода типов использовались typeof (gcc) или особая шаблонная магия, которой, впрочем, сегодня уже никого не удивишь.
оператор точка .не переопределяется, переопределяется оператор -> . Макрос на скобочку невозможен. P.S. Но можно перегрузить оператор скобки , круглые и квадратные. И {} скобки могут теперь уже использоваться для вызова контора и при присвоении.
Я не си++ программист, но видел картинку где кто-то дефайнами переопределил скобочку на "правая скобка" Типо делали язык программирования на русском
@@bentonitt слово менять на скобку можно, как и в си
За то можно запятую переопределить :-)
@@bentonitt это детский сишный макрос, любая книжка начинается с демонстрации подобного
Вот Вы меня удивили, я думал этот язык специально сделан для arduino IDE и всё. Спасибо.
Никто не заставляет использовать все детали синтаксиса С++. Сам Бьярн Страуструп говорит, что прежде чем комиссия по языку С++ что-то добавляет, проходят многие дебаты. Он сам не сторонник расширения синтаксиса и имеет очень веское слово в этой комиссии. Ну а сами программы на С++ становятся намного лаконичнее по сравнению с их аналогом написанным на С. Так же не будем забывать про простоту автоматического тестирования кода написанного как свойства / методы объектов.
Про чтение "любой" памяти, т.е. не принадлежащей виртуальному адресному пространству процесса - это очень сильное заявление. Хотя.. если речь о программировании под MS DOS то почему нет )
WPM/RPM ?)
ошибка сегментирования (стек памяти сброшен на диск)
Кликбейт и развод на каменты? Если да, то норм, если нет, то обидно...
Являюсь относительно "молодым" разработчиком, не могу сказать, что было 100500 лет назад, но:
1. Ни одна нормальная ОС(win, linux, mac) не даст тебе залезть в память другого процесса или ядра, т.е. ты не можешь поменять байтики в памяти которая тебе не принадлежит, получишь Access Violation или segfault.
2. Стандартная библиотека плюсов достаточно скромна, да, как правило все ещё используют boost, но до с++17, не было функций работы с файловой системой, приходилось использовать платформозависимые фунции, привет win32 и posix. Работы с сетью нет до сих пор, xml? - нет, json - тоже нет, ini-?..., ну я думаю понятно. Библиотека C# или Java значительно богаче. (Если я неуч, и dot и т.д. не является "стандартом" соряньте).
3. Ну, обосраться разрабатывая на C++, вероятность, бесспорно, больше, согласен, но современный с++ вполне удобен и относительно безопасен, Smart Pointers, RAII, ну, да, хорошо бы понимать как это работает.
P.s. чёт пробило)) соряньте.
расскажи про язык А пожалуйста )
JavaScript видос когда?))
Всегда оставляю фигурную скобку на строке, это очень удобно в написании, но иногда надо закомментить все условие, и тогда приходится ее переносить, чтобы не искать и не комментить закрывающую. Мне кажется, это не очень большая проблема :)
Что в этом удобного?
Благодарю за толковый ролик. Могли бы вы еще ролик создать с темой: стоит ли "дергаться" старикам 50+? К этому возрасту существующая работа надоедает, как горькая редька и хочется хотя бы подработки в другой сфере. Могут ли хоть на что-то рассчитывать старики? Или их удел - дворники, ночные сторожа либо охранники в пятерочке?
Думаю данный вопрос решать нужно каждому для себя, если есть силы/возможность/желание можно освоить, другой вопрос это быть "джуном" в 50+ лет когда коллеги будут в 2-2.5 раз моложе.
мдя, грубовато. Но - ладно. Идти вперед имеет смысл, если будет ожидаться какое-то вознаграждение.@@grigsky
Курс Devops планируете открывать?
спасибо большое за информацию, лет 5 с ним борюсь, получил много информации с такого короткого видео, загорелся еще больше углубиться в этот язык, буду смотреть джаву против плюсов, ибо 2 языка интересует все же, выбирать на чем в основе работать
Здравствуйте Сергей, очень заинтересовал ваш курс по геймдеву, а то курсы от различных скилфактори, мягко говоря не очень
Что пишут на С++? … -Java… все что угодно на свете - это Java - подумал Сергей;)
Столько булшита про С++ я слышу только когда собеседую джуно-мидлов. «С быстрее С++ потому что в С++ есть ООП» - это что значит? Время компиляции? Время исполнения функции? Вы сами то понимаете что говорите?
ООП подразумевает большее потребление памяти, по сравнению с таким же кодом в процедурном стиле
Если вас спросят, какая машина быстрее - вы подумаете о том, какую машину быстрее сделать или какая машина быстрее ездит? Думаю и здесь так же - большинство не подумают про время компиляции, а про время исполнения. Или разработки. Только если вы не компилируете _все_ части программы каждый раз и программа на миллионы строчек.
вот я тоже че-то не понял. Если C++ подразумевает zero-cost abstractions, то почему он должен быть прям медленнее
@@user-dv9fk1hd3s и больше сгенерированного машинного кода при использовании ООП.
@@PTolkachev Какого, виртуальных таблиц с rtti, да скрытый указатель?
Где-то в 19м году подучил с++ пару дней и теперь любой язык интуитивно понятен, уже в 22м пишу ботов для игр и программы для оптимизации любых игр(даже танков запустил на старом компе сделав какие-то 15 строчек)
Какой же грустный финал...
Представте как больно разработчикам компиляторов которым нужно поддерживать все стандарты языка C++
Ну и что в этом такого болезненного ?
зато у них работа гарантированна, так как язык еще не скоро умрет, в отличии от многих других.
Until в c++ небыло и нет. Никогда не понимал людей использующих венгерскую нотации. Операционные системы, ныне существующие, компиляторы, интерприьаторы, СУБД, написаны на си, а не с++.
Спасибо!
То есть на курсе по UE научат с++ с нуля и для использования в движке?
Стрим будет?
Так что же пишут а этом языке "X"?)
Много про него слышал) Но курсов нигде нету)
Значит, нужно его срочно создать, ведь вселенной так не хватает еще одного языка, который спасет человечество от кОтострофы
Есть отличный курс от МФТИ и Яндекса на курсере
@@danilapoddubny3734 я же не про С++, а про таинственный язык "X")
Вроде на заборах на нём что-то писали.
@@yurytuchkin5027 насколько я помню, там давали фишки C++20, насчет паттерном и шаблонного программирования - это общие вещи для большинства языков, я не уверен, что их стоит давать в вводном курсе по конкретному языку, который, к тому же, является мультипарадигмальным, потому что это увеличило бы его в 2 раза, что очень много, учитывая, что курс состоит из ~6 частей. Все еще считаю, что он довольно неплох для знакомства с языком и всем, кто хочет попробовать плюсы мог бы его рекомендовать, тем более, что он, как правило, бесплатный для студентов, однако, если вы можете посоветовать что-то лучше, то я буду очень благодарен
Тезис про "запускаешь программу и компьютер бум" некорректный. Компьютер в современном понимании - это ЭВМ на базе продвинутого процессора, который ОБЯЗАТЕЛЬНО содержит блок MMU. Вот этот блок отвечает за создание изолированного виртуального адресного пространства программы. "Компьютер бум" в результате не получится сделать случайно.
В нашем стартапе на плюсах два продукта: электронная картографическая система для кораблей и десктоп-клиент для системы управления компьютерными клубами.
Странный выбор для второго по крайней мере :-)
На С++ писать сложнее чем на питоне раза в 2, а не в 10. Просто, когда выделяешь память, тут же нужно прописывать ее высвобождение. Да и изучить минимально необходимое количество синтаксиса можно, а более сложные конструкции осваивать позже. Очень зависит от того, как подается материал.
в C++11 уже давно smart pointer есть, он сам осовобождает.
@@MrLaSerj Если что-то можешь сделать сам - делай. Придется проект на предыдущих версиях делать - будешь долго удивляться потери памяти. Поддерживать приходится проекты и 10 и 20 летней давности. Тем более на встраиваемых микроконтроллерах. На них нового компилятора может и не быть. Как и лишней памяти. Как минимум, это нужно уметь. А для того - практиковаться.
С++ - хороший язык, просто нужно знать, как его готовить. Когда я создаю новый класс, я в первую очередь продумываю, как он будет занимать память и как освобождать. Потом уже его наполняю функциональным содержимым. Так же, язык очень любит, когда проект нормально структурирован, каждая сущность является самостоятельной, а проекте чётко распланирована последовательность всех действий.
Много раз встречал проекты, где одна структура заполняется по частям в различных частях программы что в итоге выливается в то, что правка кода в одном месте ломает функционал в другом. Если такая ситуация происходит при разработке, значит что-то не так со структурой проекта и она должна быть пересмотрена.
Ну-ну, пока ты пересматриваешь структуру проекта, уйдёт много часов чтобы заново всё отрефакторить. Если какая-то часть кода сложно модифицируется, но работает без багов и прочих проблем, то нужно не менять существующее, а надстраивать новое, раз уж структура программы по вашему неудачная. А вот потом уже как будут силы со временем, можно будет переделать тот кусок хардкода, когда это будет целесообразно.
Как писал Страуструп - "Появилось понятие, создай для него класс"
Звучит как прохладная история человека, который никогда не нюхал пороху. Я вот вообще не думаю об управлении памятью. Нафига??? delete используется только по праздникам, раз в пятилетку. Хороший проект - это проект, который вообще не нужно никак специально структуировать. А напротив, можно говнокодить по принципу "тяп ляп" и в продакшен.
По Си и С++ основное знаю, в дебри соваться стрёмно, учитывая необъятность его просторов, может и столкнусь конкретно сферами прииенения, тогда может проще изучать
Я не программировал на C++, но программировал на СИ, и на самом деле, слушая видео, я понимаю, что основные "крутые возможности" C++ - свободно себя чувствуют на СИ, по типу например, полного контроля памяти, определение того, к чему она принадлежит, макросы, это всё есть в СИ
А классы? А модули?
@@linuxoidovich Я говорю о тех вещах, которые сказаны в видео, а модули... ты серьёзно?) Какой язык программирования обходится без модулей?)
@@bonefort1437 Си. Там модулей нету.
В видео же сказано что ++ это надстройка ООП над си, и всё.
Ноут Ваш в 2022 крипово выглядит(((((((
Судя по вашей логике. Да он нам и ***** не нужен ваш c++
Чтобы все это изучить, понадобится столько нервов и сил, что ты облысеешь и ослепнешь, как автор