@@hmixa вопрос один, что можно писать на сишке по мимо микроконтроллеров и низкоуровневого софта для железок по типу драйверов и тд? Посмотрел подкаст, решил побаловался (сам фронтентер, пишу на js и php), опыт в строготипизированных яп есть но что конкретно на сишке писать не пойму, по мимо консольных штук))
@@awenn2015 мне кажется что С вполне может подойти для каких-то утилит командной строки. И эти утилиты могут быть и простеньким и такими как тот же git. Получил параметры, распарсил их, понял что хотят, сделать что-то нужное, написал о'кей или сообщение об ошибке и ушёл.
Я с 80х си знаю. Но за десятилетия перешел на плюсы, потом на си шарп. По-другому же сервер нынче не запрограммируешь? Но я люблю микроконтроллеры как хобби и недавно имплементировал UI на маленькой ЖК матрице на си. Ужос нах. Я там нашел баги и исправил на гитхабе. И все равно работает не стабильно. Классы в UI ничем не заменишь! Си без плюсов тут дохлый номер.
@@astralfoxy1787 Боюсь, это не излечимо. Да и незачем лечиться, нас тут больных програмеров в Америке раза в полтора лучше чем других пациентов кормят :)))
Я пишу на многих языках, но в основном на Си. Причина проста - контроль над подсистемой памяти, без которого писать высокопроизводительные системы невозможно. Но я занимаюсь системным программированием. P.S.: Си это совсем непростой язык.
Не ожидал увидеть Игоря в реках, ностальгия прям по лекциям в ИТМО. Было интересно узнать, когда работаешь все время на C99, что полезного появилось в C11. А по поводу того, что останутся только gcc и llvm для C, для массовых архитектур типа x86_64 и ARM* да, но есть еще например архитектуры с VLIW системами команд типа Эльбрусов или DSP-ядер, где используются свои компиляторы со своими оптимизациями, поддержкой интринсиков и векторных регистров.
Ну как раз под такие редкие архитектуры LLVM-подобные компиляторы и разрастаются нынче. Что IR, что политика лицензирования у LLVM удобны, чтобы под интересующую железку быстро сварганить бэкенд.
Вспоминаем искусство древних,например,аллокатор на основе областей ака arena based allocators или на базе стека.и забываем всю эту смузихрень. Чем ьальше,тем больше люблю си,он даже шарпы уверенно теснит ибо это свобода,кк и паскаль.
Рассказчик не сишник 100%. Максимум usermode плюсовик. У сишников нет таких проблем, что он озвучивает. Нет проблем с неймспейсами, нет проблем с объектной моделью, потому что она не нужна. Ты просто пишешь код, который работает и не придумываешь ничего лишнего.
Нынче си - это такой универсальный ассемблер. Сишный компилятор есть нынче для всего подряд, поэтому можно нагенерить сишного кода и накомпилять его под целевые платформы. Иными словами, ветка для деплоя вашего софта просто стала чуточку длиннее. А так, что в си, что в плюсах, комьюнити просто ужасное, перед собеседованием что на сишника, что на плюсовика зажмите нос, не забудьте после такого собеса помыть руки. Общая болезнь у всей около-си тусовки - люди не знают как и куда им ещё высраться. И вместо того, чтобы сосредоточиться на продукте и его функционале, сишники и плюсовики очень любят друг друга пиздить за какие-то мелочи, которые в другой тусовке даже бы не заметили. А, и да, вот вы потратили свое время на изучение всех брачных танцев. И получили за это зарплату, сравнимую с вкатунами на каком-нибудь другом языке. Особенно это заметно в среде эмбеддеров. А знаете как это произошло? Все очень просто, зарлата есть там, где есть откуда ее платить, а не там, где сложнее брачные танцы. Ребята, си и плюсы - это чан с говном, а не шоколадная фабрика. Просто посмотрите внимательно на то, какие классные вещи и как легко можно сделать на других языках. Да, без Си и плюсов не было бы той же Явы, петухона, игровых движков и прочих благ цивилизации. Но вы уверены что хотите пребывать в позе атланта, держащего землю? В общем, вы предупреждены, дальше делайте выводы сами.
@@Turqure_rombus так дело не в языке. Комьюнити отвратительное. Ну и хотят из него выдать нечто большее, чем то, для чего он в принципе был придуман. Вот к примеру, посмотри на GTK, там же пиздец. Вот не было в си классов, а очень хотелось, и понеслась вся эта шляпа с GObject. Не, оно конечно работает, хорошо работает, но штука очень болезненная, особенно в условиях когда каждый второй занимался тем же самым и имеет свое единственно правильное понимание как должен выглядеть эрзац-класс на си.
Прямая работа с памятью в C - это привелегия и ответственность, а не проблема. В мире где на производительность влияет насколько ты cache friendly, такой язык нужен и будет нужен. На C прям видно как примерно ассемблерный код будет выглядеть. Да, Rust снижает риски "выстрела в ногу", но его синтаксис меня бесит - он какой-то нелогичный :)
Согласен на все 100%. Закончил проект на чистом С, ни одной баги с утечкой памяти. А потому что использую статическую глобальную память для всего постоянного, и стэк для всего остального. Если функции что-то нужно, она даёт память со своего стэка и передаёт ниже, но никогда ничего не возвращает указатель на память выделенную хз где. Ни байта с кучи. И все, никакой проблемы.
увидел исходники постгреса в рекомендуемых к чтению проектах, а что насчёт исходников питона? стоит ли ориентироваться на этот код с точки зрения Си разработки?
Недавно вышел Box2d 3.0 , переписан с C++ на C , улучшилась точность симуляции а производительность выросла вдвое . Новая версия SDL(используется в cs2 , dota2 , left4dead ) осталась на C .
Что такое SDL? Я заметил чтотна стадии выхода кс2 хуже шла, чем сейчас. Заметно что они поменяли процесс рендера, ранее был зернистый, а теперь ка кна стром OpenGL
Си на данный момент единственный реально кроссплатформенный язык когда написал код и с минимальными издержками компилируешь и запускаешь его на любой балалайке. У всех остальных(в том числе у котлина и java) кроссплатформенность сплошная профанация.
Разве у Java c мульииплатформенностью всё так плохо? Мне казалось, если JVM (Java Virtual Machine) портирована на устройство, то оно без проблем схавает твой код. Конечно же, это не идёт в сравнение с написанным специально под устройство кодом, но всё же. НЕ ПОПЫТКА РАЗВОДИТЬ СРАЧИ, просто начинающий джавист интересуется технологиями.
@@johnnymnemonic8923 Для этого кто-то должен портировать JVM на устройство, что не всегда возможно, а если и возможно то окажется каким-то урезанным. Пример андройда показательный - вроде обычное приложение на ява, а работает только в эмуляторе
@@user-kv3rc9jk9u в эмуляторе или в изолированной среде? Если второе, то это, как я слышал, сделано для безопасности устройства, чтобы, мол, ПО не могло навредить всей системе, а запускалось себе в песочнице и получало доступы к ресурсам по мере необходимости и со строгим контролем от операционки.
@@Александр-ф9в4ю просто, нужно обучаться через самописный искусственный интеллект, который в процессе твоего обучения будет обучаться с подкреплением :-) Не, Ну, естественно, это всё на FreeBSD будет крутиться, а не на редуксе. Редукс - для хобби! :-) и как объект приложения своих результатов обучения :)
Когда сказали что в C# тоже есть указатели, я думал речь пойдёт о директиве unsafe. Про ручное управление памятью в C# которое редко используется. А тут говорилось о указателях которые привязаны к типам - это есть в большинстве современных языков где используются сборщики мусора.
сейчас появилась в embedded новая хрень. все файлы идут с расширением .cpp. компелируются как с++. но код пишут в С. но при этом можно использовать stl библиотеки.... очень удобный mix
Посмотрел. У вас предвзятое отношение к C. Что за выражение "обмазаться структурами/макросами"? Типа как обмазаться говном? Почему вы другие языки называете "нормальные языки"? После такого нет доверия вашему утверждению, что на C не стоит начинать новый проект. Как же ядро Linux смогли написать, что аптайм у серверов получается огромный и всё работает без крашей? Может это потому, что надо писать правильно и всё будет работать быстро и надёжно? Все другие языки (с защитами от дураков) нужны из-за того, что в программисты идут всякие раздолбаи, которые не парятся, когда пишут код. Надо просто проверять на адекватность, прежде чем нанимать на работу.
@@yTuHa9I_LLIe9I а какое отношение к вопросу имеет ваш коммент? и почему некоторые любят цифры?не просветите? поясняю, вам написали о сложном и большом проекте. вы же вывернули в совсем другую плоскость. цифры-аще,скоро буду считать маркером идиотов
@@MrChelovek68 "Маркером идиотов". Понял вас. Правильно ли я понимаю, что вы хотите сказать, мол качество кода никак не зависит от числа квалифицированных разработчиков? Или что стабильность системы не зависит от длительности её эксплуатации и широты распространения? Ну тогда мне вам сказать нечего - вы, судя по всему, в своём познании преисполнились
Главная причина почему Си даёт фору всякими растам и зигам заключается в его богом проклятом тулинге. Ни единого стандарта сборщика, ни пакетного менеджера, что тут говорить, когда самая популярная тулза под Си (cmake) это кросс-плтаформенный компилятор сборщиков. А самостоятельное управление памятью это безусловный плюс, если мы конечно говорим про системное программирование. В целом на Си более-менее комфортно писать, если не суёшь нос дальше линукса.
Есть еще платфррмы на которых только асм и си Специализированные сигнальные процессоры(DSP) Там как раз и char 16бит бывает и все эти дела, ради которых неопределенное поведение введено в стандарт. Даже не знаю через сколько десятилетий на эти архитектуры придет раст и зиг…. Так что Си жив и будет жить!
@@comachineсейчас все компиляторы заставляют знать второй яп для сборки первого. Смотри как эту проблему решили nob тсодинга и jai джона блоу. Никто ничего подобного в индустрии не имеет, всем нужны девопсы и программисты на системе сборки.
Есть такая небольшая, уловка, ты очищаешь память free(p); p = NULL; в результате этого, даже если ты вызовешь ещё раз free(p); функция отработает корректно.
@@iex32 в C вселенной, вместо вываливания в ошибку, функция free(p); где p = NULL; завершается успешно, лично я не знал, до некоторого времени, о такой особенности free().
Ого, это что, адекватный сишник, да ещё и мытый. Где вы такого нашли-то? Сравнение с Rust что-то вообще не раскрыли, в таймкодах про это вообще ничего.
Потому что С не позволяет заниматься кодовым извращением, показухой и "элегантными решениями", когда слона переопределяют в муравья и показывают как это весело и красиво. А когда на крестах нужно найти код, который собственно попадает в обьект и исполняется при всем безумии наследования и полиморфизма, то доходит до тго что проще выкинуть весь код чем починить. И да, не выделяйте память на куче. Ну или где-то в начале алгоритма, и всегда освобождайте в том же файле. Не используйте кучу для данных известного размера. И не бойтесь глобальной и статической памяти, оно вас не сьест.
Каждый мув в раст это компия данных если только llvm не сможет оптимизировать, а так же каждый возврат значения. Есть бокс и прочие обертки, но много копий оберток это много копий оберток :) RVO в расте нет.
В плюсы перекочевал define и на мой любительский взгляд это самое убогое корявство в плюсах. Если для си это нормальная конструкция, то в плюсах когда видишь это слово, хочется надавать по рукам и щам за такое. Фуфу. Остальное всё люблю в плюсах.
Ну если не заморачиваться оптимизацией исполняемого кода, то define это фуфу, но если все же думать о низкоуровневых вещах, то define это путь сделать сложный код более читаемым.
помоему си .сильна в том где надо правильно распределять ресурсы. например у тебя 3 мегабайта оперативы. хуже если у тебя 8кб. вот и укладывайся в них. на других языках будет сложнее. если вообще невозможно.тут конечно дело не в языке. а в компиляторе но суть не меняется
Там нет ничего умного. Ты можешь написать Memory Safe программу на C которую невозможно будет реализовать на Rust - из-за ограничений компилятор. Это помимо того что компилятор Rust по уровню помойки которая в нем творится можно сравнивать только с Huskel. Даже если в компиляторе есть бекдоры от NSA - мы их никогда не найдем, потому что проанализировать что там творится - займет слишком много времени. И на самом деле на Rust невозможно реализовать очень большое количество вещей связанных с параллелизмом и многопроцессорностью.
@@d1namis С не предназначен для memory safe. Наоборот, он делает упор на unsafe в критически ограниченных объемах. Микроконтроллеры тому пример. Rust писался с целью - быстро и безболезненно закрывать критические участки программ. Компилятор раста продуман очень скрупулёзно. Есть конечно пооблемы в виде циклических ссылок. Но в остальном, он умён и оптимален. Умная многопоточка, умные указатели, умные оптимизации. Это лучший компилятор без GC, из тех, что я встречал за годы работы.
@@СерёгаСокольский Зачем вы мне это объясняете? Это ведь даже не ваше мнение, просто общее впечатление о Rust. На СИ можно написать программу которая будет 100% Memory Safe, но на Rust такую же программу реализовать будет невозможно - это утверждение не требует никаких особых умственных усилий для восприятия. И Сейчас и в будущем без Unsafe - реальные интересные программы и алгоритмы - на Rust просто нельзя реализовать, но то что они Memory Safe - доказано математически. И тут появляется проблема - Rust превращает простые программы в Сложные, а сложные и интересные - реализовать на Rust без unsafe невозможно. Rust это не более чем эксперимент уровня TypeScript
@@СерёгаСокольский продуман скрупулезно и Циклические ссылки? вы серьезно?это разные вселенные так то.интересно на чем его написали,что ide не показала циклические ссылки
@@User-ux1tm нет никакого учить, есть только писать программы. Если раст под задачи подходит - пиши на нем. А си, бреинфак или Хороший Учебный Язык - это дело, мягко скажем, десятое...
А как вы будете использовать уже существующие библиотеки написанные на С и С++ в Rust проекте учитывая что эти библиотеки не имеют полной документации и вообще их иногда надо патчить ?
@@kosiak10851 далеко не все. И когда ты умеешь программировать тебе без разницы особо язык. Питон просто удобно продавать. Два месяца курсов и готовый формошлеп и скрипткиди для галер - это не программист.
1:43:00 вам не нужен goto для выхода из циклов, если ваши циклы реализованы как хвостовые рекурсии. Ох уж эти проблемы императивщиков с циклами и мутабельностью
@@andrewbondaryuk пока, кстати, возможно. но популярно-не значит,что лучше или больше возможностей. порог входа ниже и все. и все dsl языки это именно dsl. что жаба,что ц-решетка,что жабаскрип, это просто надстройки. а когда ты,занимаясь dsl понимаешь какую свободу дает си, то dsl языки для тя блекнут раз и навсегда. и раст становится маркетинговым мусороом. а вот стандарты могут ток ухудшить положение,если будут следовать смузибреду
Учить Си бесполезно, как и программирование в целом, потому что ИИ и нейросети скоро заменят программистов, отправив их бомжевать или на завод, а в худшем случае в окоп...
Lunux на ruste это невозможно. Сам Торвальдс осторожно говорит на эту тему. Pascal просто вызывае отторжение и неприязнь к программированию. Не знаю почему. В школе не любил Pascal.
Правильно делаешь! Всё как твой дед который с коболя на С отказывался переходить. По итогу ты бомж, бывает. Дай вселенная твоим детям такую же судьбу 😂
@@chaquesecondeв цпп тоже есть указатели. ссылки с наличием или отсутствием обьектов никак не связаны, это просто менее декларативный и более абстрагированный способ передачи аргументов
C is important, always will be. I'd learn it in any century. The only truly cross platform portable language. Everything else is just plain bull-sh!!!!ttt!
Блять... Юнион не так работает. Он по сути перезаписывает кучу значений в 1 ячейку. Тот подхож про который он говорит, это безопасное использование, в сути своей ты можешь прочитать не последний записанный тип в юнион, не это не безопасно Вот после такого слушать даже не хочется когда он простейший тип не смог объяснить корректно
@@StartuePotoya Стеб это или на полном серьезе.... Просто сейчас в преподы не идут и по сути пойти может любой, меня больше удивило то, что после всего того что он наговорил они выложить это не постеснялись
С и С++ это самый неудобный и недружелюбный язык, что я видел Самый муторный, самый непонятный, самый злобный Программисты становятся злобными и высокомерными, например, они извращаются, чтобы непременно уместить весь код в одной строке. Ухищряются, выпрыгивают из штанов и довольны собой. И код становится совершенно нечитаемый. Но им то это надо. Надо зашифровать, чтобы потом никто ничего не понял. Язык ради языка. Его среда - VS, это самая тупая среда что я видел. В частности я говорю о VS для UE4. (а для чего еще нужен C++?) компилируется по полчаса(2024 год!) , все время пишет ложные ошибки, подсказки не работают, русский язык в самых важных местах, а именно в логе ошибок, превращается в непонятный непереводимый набор символов. VS не в состоянии даже найти инклюды, хотя, я уверен что ей для этого нужна 1 секунда. И нет нормального хоткея для компиляции Это просто чудовищно. Это ужас. Работал с кучей языков, с ними ты думаешь о программе, о логике. С С++ ты думаешь о C++ и о VS. Они делают все, чтобы не выполнить то, что ты от них хочешь. Ты постоянно должен думать об оптимизации, чтобы этот долбанный компилятор быстрее работал - инклюды размещать только в каких то эзотерических местах, например. В нужном порядке. Создавать какие то секретные непонятные файлы конфигураций. Если ты захочешь переименовать файл, то ты этого сделать не сможешь. Иначе все сломается. Это самый ужасный язык. И у него самый ужасный и тупой компилятор. С добротой вспоминаю C#. Вот это язык для людей. Как и Паскаль и его разновидности. Честно говоря, уже думаю, не перейти ли снова на Unity. И что то творить, а не биться постоянно головой о стену. Не воспринимайте мои слова слишком серьезно. Это просто мое личное мнение и мое возмущение. Вообще, у меня пожалуй больше претензий к VS. По моему, она бойкотирует С++.
@@bolatulyerdos уточнение - С++ для движка UE, в среде VS Впрочем, думаю и сам по себе это неудобный язык. Заумный и высокомерный. Недружелюбный и злобный. С кучей настроечных файлов. Это как вместо машины тебя навалили кучу гаек, хочешь поехать куда то - сиди и собирай двигатель. Но для Анрила он вообще никуда не годится. До 10 минут компиляция! Это нонсенс. Вообще, ты сначала прочти что я написал. А потом делай что хочешь.
Не пойму этого прикола со сложностью указателей, в js все не скалярные данные передаются по ссылке, в php вроде нет но там они тоже есть в виде & это знака, тут истина то простая по сути, если создавая переменную мы взяли другую по указателю то ссылаться они будут на одно место в памяти и все, ничего сложного
Бла, бла, бла! Пробовал я Ruct, идея прекрасная но симантика гавно. Короче мне не понравилось. Если я лезу функцией в переферию то всё что дальше юзает эту функцию будет небезопасным. Короче одно мозгоёбство!
@@Александр-ф9в4ю - зависит от точки зрения. Имхо, Rust комьюнити/управленцы найдут способ зафакапить будущее языка, как они уже пытались год назад (попытка введения нелепой политики в отношении символики Rust), или, например, недавний скандал с уходом Linux мэнтейнера Rust. Как бы ни был хорош сам язык (кстати, так ли уж он хорош, раз требует таких титанических усилий по изучению и по написанию кода?) , безумная комьюнити снежинок найдет способ все испортить. Не следует иметь дело с безумцами.
Эээ... аааа... мммм.. да блин, невозможно слушать, два с половиной часа такой пытки! Как вообще этот Жирков преподавал, или преподает где-то ? Лучше бы тихо сидел и книжки в углу писал, а не над людьми издевался, тем более детьми, мать его((( Каждый преподаватель, для полной профпригодности, должен пройти полное обследование, или лечение у логопеда, с соответствующей сертификацией - точка!
Три танцора говорят о программирование. Один олух ещё и в математику полез 😅 говорит "математики любят красоту" 😅 😅😅. Математика конечно красивая наука, но совсем не о красоте и не любов к красоте в ней залог успеха. Математика о решение задач, любых. Математическое мышление нацелено на решение задач и без разницы красивым оно будет или нет. Там ни что не диктуется красотой. Видно парень не из числа мыслителей, но свои фантазии любит распространять.
не согласен про красоту. если твоое-математика,ты будешь в ней видеть красоту. и матан к кодингу каешн имеет отношение в разных плоскостях. а так,красота может заключатся в простоте доказательства. это называется еще -элегантностью. но болтать каешн можно бесконечно насколько у тя богатый внутренний мир,ток толку от болтовни ноль
@@MrChelovek68 красоту можно видеть, везде, не только в математике. И в ремонте домов строителями. Это же не означает что кто пришел в кодинг со стороны строительство тот ищет в нем красоту ... Элегантности изобретеной в математике нет, математику не изобретают а открывают, она вся есть без учённых, просто неизведанная ещё. Я же сказал в ней есть красота, но цель математика не красота. И ты прав, болтать можно о чем угодно, исправь же себя на основании понятого тобой. Не будь как этот пустослов в видео.
@@kaihusravnajmiddinov5413 И почему же математику не изобретают, а открывают? А может, математические теории это вид искусства? Искусство не изобретают и не открывают.
@@spirridd нет -не искусство. Математические теоремы и законы - это законы логики/истины. Когда их узнают и доказывают их открывают. Все доказанные математические формулы были верными до своего доказательство, то есть другими словами работали и были в естестве. Пример: Пифагор доказал что в прямоугольном треугольнике, квадрат гипотенузы равен сумме квадратов катетов. Эти суммы были равны и до доказательства Пифагора и до его рождения и до рождения Иисуса. Пифагор просто открыл этот закон. Вс математика - так. Люди просто могут придумывать названия этим формулам, а они существовали с начало сотворения этого мира. Искусство - это вообще другое и не точно определенное понятие, и конечно его (искусство) изобретают как раз таки. Ну например картина Репина..
@@kaihusravnajmiddinov5413 Пифагор не просто открыл этот закон. До Пифагора такого закона не было. Вообще, никаким образом не существовало. Как и самого прямоугольного треугольника не существовало. Это математический объект, придуманный человеком.
С развивается не быстро потому что это надо делать очень осторожно, одно не верное движение и у тебя уже с++.
@@hmixa вон си3 уже вышел, а вы до сих пор на си сидите....
@@iamdozerq спасибо, почитаем. Я вообще-то на С#, но с это Родина. Я после макроассемблера от PDP11 в 89 году С выучил, где-то минут за 40.
@@hmixa вопрос один, что можно писать на сишке по мимо микроконтроллеров и низкоуровневого софта для железок по типу драйверов и тд? Посмотрел подкаст, решил побаловался (сам фронтентер, пишу на js и php), опыт в строготипизированных яп есть но что конкретно на сишке писать не пойму, по мимо консольных штук))
@@awenn2015 ядро операционной системы)
@@awenn2015 мне кажется что С вполне может подойти для каких-то утилит командной строки. И эти утилиты могут быть и простеньким и такими как тот же git. Получил параметры, распарсил их, понял что хотят, сделать что-то нужное, написал о'кей или сообщение об ошибке и ушёл.
Ну я пишу на Си, послушал, и судя по интервью у Си пока только одни плюсы. Поэтому и дальше буду писать на Си.
Я с 80х си знаю. Но за десятилетия перешел на плюсы, потом на си шарп. По-другому же сервер нынче не запрограммируешь? Но я люблю микроконтроллеры как хобби и недавно имплементировал UI на маленькой ЖК матрице на си. Ужос нах. Я там нашел баги и исправил на гитхабе. И все равно работает не стабильно. Классы в UI ничем не заменишь! Си без плюсов тут дохлый номер.
@@nchurly Лечитесь.
@@astralfoxy1787 Боюсь, это не излечимо. Да и незачем лечиться, нас тут больных програмеров в Америке раза в полтора лучше чем других пациентов кормят :)))
Я пишу на многих языках, но в основном на Си. Причина проста - контроль над подсистемой памяти, без которого писать высокопроизводительные системы невозможно. Но я занимаюсь системным программированием.
P.S.: Си это совсем непростой язык.
Я один вижу ухоженного Гилфойла?
Ахахахааха реально
Так никто и не сказал, что ваш любимый postgres написан на С...
Как и Oracle, кстати.
Даже небо, даже Аллах . Перечислять устанешь
В описании добавили как один из проектов
@@dencasio6141 даун?
@@qandak могут себе назад добавить
Когда сделали новую железку достаточно сделать кодогенератор к С компилятору. Что есть значительно проще написания компилятора.
Не ожидал увидеть Игоря в реках, ностальгия прям по лекциям в ИТМО. Было интересно узнать, когда работаешь все время на C99, что полезного появилось в C11. А по поводу того, что останутся только gcc и llvm для C, для массовых архитектур типа x86_64 и ARM* да, но есть еще например архитектуры с VLIW системами команд типа Эльбрусов или DSP-ядер, где используются свои компиляторы со своими оптимизациями, поддержкой интринсиков и векторных регистров.
Ну как раз под такие редкие архитектуры LLVM-подобные компиляторы и разрастаются нынче. Что IR, что политика лицензирования у LLVM удобны, чтобы под интересующую железку быстро сварганить бэкенд.
Что тебе нравится больше, чем очищать память, выделенную в куче, и понимать, что ты ее уже очистил ?
Вспоминаем искусство древних,например,аллокатор на основе областей ака arena based allocators или на базе стека.и забываем всю эту смузихрень. Чем ьальше,тем больше люблю си,он даже шарпы уверенно теснит ибо это свобода,кк и паскаль.
@@MrChelovek68 арены наше все
@@MrChelovek68на смузи может не хватить
Ещё больше люблю слушать фанатов раста которые ни в один вопрос глубоко не погружались и свято верят в маркетинговый булщит
@@morglod это отдельная тема, ибо прямо классика,новый очередной язык, и ему нужна ниша.
Для консольных утилит в Linux, или даже в Windows, C хорошо подходит, для решения той или иной одной задачи, в концепции Unix.
Отличный выпуск, спасибо огромное вам и гостю
Рассказчик не сишник 100%. Максимум usermode плюсовик. У сишников нет таких проблем, что он озвучивает. Нет проблем с неймспейсами, нет проблем с объектной моделью, потому что она не нужна. Ты просто пишешь код, который работает и не придумываешь ничего лишнего.
Вроде бы лекции читает и выступает на публике, а слушать было его очень тяжело. Вот это растянутое э-э-э… За подкаст спасибо ❤
Нынче си - это такой универсальный ассемблер. Сишный компилятор есть нынче для всего подряд, поэтому можно нагенерить сишного кода и накомпилять его под целевые платформы. Иными словами, ветка для деплоя вашего софта просто стала чуточку длиннее.
А так, что в си, что в плюсах, комьюнити просто ужасное, перед собеседованием что на сишника, что на плюсовика зажмите нос, не забудьте после такого собеса помыть руки. Общая болезнь у всей около-си тусовки - люди не знают как и куда им ещё высраться. И вместо того, чтобы сосредоточиться на продукте и его функционале, сишники и плюсовики очень любят друг друга пиздить за какие-то мелочи, которые в другой тусовке даже бы не заметили.
А, и да, вот вы потратили свое время на изучение всех брачных танцев. И получили за это зарплату, сравнимую с вкатунами на каком-нибудь другом языке. Особенно это заметно в среде эмбеддеров. А знаете как это произошло? Все очень просто, зарлата есть там, где есть откуда ее платить, а не там, где сложнее брачные танцы.
Ребята, си и плюсы - это чан с говном, а не шоколадная фабрика. Просто посмотрите внимательно на то, какие классные вещи и как легко можно сделать на других языках. Да, без Си и плюсов не было бы той же Явы, петухона, игровых движков и прочих благ цивилизации. Но вы уверены что хотите пребывать в позе атланта, держащего землю?
В общем, вы предупреждены, дальше делайте выводы сами.
Забавно. Познавательно.
А если просто нравится Си? Да, странное хобби но почему бы и нет?)
@@Turqure_rombus так дело не в языке. Комьюнити отвратительное. Ну и хотят из него выдать нечто большее, чем то, для чего он в принципе был придуман. Вот к примеру, посмотри на GTK, там же пиздец. Вот не было в си классов, а очень хотелось, и понеслась вся эта шляпа с GObject. Не, оно конечно работает, хорошо работает, но штука очень болезненная, особенно в условиях когда каждый второй занимался тем же самым и имеет свое единственно правильное понимание как должен выглядеть эрзац-класс на си.
Этот комент мнение, которое имеет смысл делить на 10.. то есть 0.1 правды
Это ты как бывший программист Си говоришь?
Прямая работа с памятью в C - это привелегия и ответственность, а не проблема. В мире где на производительность влияет насколько ты cache friendly, такой язык нужен и будет нужен. На C прям видно как примерно ассемблерный код будет выглядеть.
Да, Rust снижает риски "выстрела в ногу", но его синтаксис меня бесит - он какой-то нелогичный :)
Skill issue
У раста то?
Согласен на все 100%. Закончил проект на чистом С, ни одной баги с утечкой памяти. А потому что использую статическую глобальную память для всего постоянного, и стэк для всего остального. Если функции что-то нужно, она даёт память со своего стэка и передаёт ниже, но никогда ничего не возвращает указатель на память выделенную хз где. Ни байта с кучи. И все, никакой проблемы.
господи там миллион функций. я пытаюсь в него вникнуть но хз. все гигантски развутся...
Гилфойл рассказывает про С.. круто.
В gcc функции не просто могут быть вложенными, а могут иметь замыкания и при этом использоваться как обычные функции - магия, одним словом
+, ток функция родитель должна быть на стеке или чот такое. Обрезанные замыкания, в общем. Но удобно
Наконец годное интервью по си! 👍👍👍🔥
увидел исходники постгреса в рекомендуемых к чтению проектах, а что насчёт исходников питона? стоит ли ориентироваться на этот код с точки зрения Си разработки?
Недавно вышел Box2d 3.0 , переписан с C++ на C , улучшилась точность симуляции а производительность выросла вдвое .
Новая версия SDL(используется в cs2 , dota2 , left4dead ) осталась на C .
Что такое SDL?
Я заметил чтотна стадии выхода кс2 хуже шла, чем сейчас. Заметно что они поменяли процесс рендера, ранее был зернистый, а теперь ка кна стром OpenGL
@@StartuePotoya Это графическая библиотека на которой создан Source .(движок игр Valve).
Си на данный момент единственный реально кроссплатформенный язык когда написал код и с минимальными издержками компилируешь и запускаешь его на любой балалайке. У всех остальных(в том числе у котлина и java) кроссплатформенность сплошная профанация.
Разве у Java c мульииплатформенностью всё так плохо? Мне казалось, если JVM (Java Virtual Machine) портирована на устройство, то оно без проблем схавает твой код. Конечно же, это не идёт в сравнение с написанным специально под устройство кодом, но всё же.
НЕ ПОПЫТКА РАЗВОДИТЬ СРАЧИ, просто начинающий джавист интересуется технологиями.
Golang в помощь
@@johnnymnemonic8923 Для этого кто-то должен портировать JVM на устройство, что не всегда возможно, а если и возможно то окажется каким-то урезанным. Пример андройда показательный - вроде обычное приложение на ява, а работает только в эмуляторе
@@user-kv3rc9jk9u в эмуляторе или в изолированной среде? Если второе, то это, как я слышал, сделано для безопасности устройства, чтобы, мол, ПО не могло навредить всей системе, а запускалось себе в песочнице и получало доступы к ресурсам по мере необходимости и со строгим контролем от операционки.
Крутой выпуск! Хотелось бы услышать сравнение с rust. За 2 часа потемнело, соведущий слился, но гость любит C)
Отличный выпуск! Кстати, про Аду уже был выпуск, говоря о "классических" языках?
Неа, но где-то на дне бэклога есть!
Язык Ада! Звучит!!!
о господе сегмент фолт. у меня аж сердечко закололо.
Rust и Redox - для хобби, C++ 26 для учёбы и работы. PHP+nginx - чтобы не сойти с ума 😊 + девчёнка-фротендер для красоты и на будущее ❤
По итогу во всех трёх не выше джуна, так как объём необходимых знаний просто космический
@@Александр-ф9в4ю просто, нужно обучаться через самописный искусственный интеллект, который в процессе твоего обучения будет обучаться с подкреплением :-) Не, Ну, естественно, это всё на FreeBSD будет крутиться, а не на редуксе. Редукс - для хобби! :-) и как объект приложения своих результатов обучения :)
Ксюша из Перми
Мощный выпуск. Лайк!
"5я лаба" была топчик!)
Когда сказали что в C# тоже есть указатели, я думал речь пойдёт о директиве unsafe. Про ручное управление памятью в C# которое редко используется. А тут говорилось о указателях которые привязаны к типам - это есть в большинстве современных языков где используются сборщики мусора.
Много полезного узнал на старости лет, спасибо. Напр. типы с _t - уже нарывался ;)
А будет выпуск про ассемблер? Ведь под капотом С и С++ только ассемблер. Было бы неплохо послушать экспертов. ❤❤❤
сейчас появилась в embedded новая хрень. все файлы идут с расширением .cpp. компелируются как с++. но код пишут в С. но при этом можно использовать stl библиотеки.... очень удобный mix
Жертвы Arduino
Мне нравится кодить в си, этот язык заставляет по другому мыслить!
Все должны знать С и никто не должен на нем писать
15:06 ну так не путайте мягкое с теплым. Просто легко.
Посмотрел. У вас предвзятое отношение к C. Что за выражение "обмазаться структурами/макросами"? Типа как обмазаться говном?
Почему вы другие языки называете "нормальные языки"? После такого нет доверия вашему утверждению, что на C не стоит начинать новый проект.
Как же ядро Linux смогли написать, что аптайм у серверов получается огромный и всё работает без крашей?
Может это потому, что надо писать правильно и всё будет работать быстро и надёжно?
Все другие языки (с защитами от дураков) нужны из-за того, что в программисты идут всякие раздолбаи, которые не парятся, когда пишут код. Надо просто проверять на адекватность, прежде чем нанимать на работу.
Как раз хотел написать!
1.296 миллиона коммитов, 15.5 тысяч контрибьюторов. А вы уверены, что ваш проект на Си сможет так же?
@@yTuHa9I_LLIe9I а какое отношение к вопросу имеет ваш коммент? и почему некоторые любят цифры?не просветите?
поясняю, вам написали о сложном и большом проекте. вы же вывернули в совсем другую плоскость. цифры-аще,скоро буду считать маркером идиотов
больше того,все эти пискли о небезопасности,даже не знаюют о том,что существуют практики программирония на си со своими шаблонами.
@@MrChelovek68 "Маркером идиотов". Понял вас. Правильно ли я понимаю, что вы хотите сказать, мол качество кода никак не зависит от числа квалифицированных разработчиков? Или что стабильность системы не зависит от длительности её эксплуатации и широты распространения? Ну тогда мне вам сказать нечего - вы, судя по всему, в своём познании преисполнились
6:11 на питоне можно лютую тарабарщину на эльфийском написать, её потом без поллитры и пары вечеров не раскуришь.
На си весь эмбеддед. И ядро линукса на сях.
Посоветуйте лучшую книгу для изучения C.
Стивен Прата - Язык программирования Си
поддерживаю
@@russian_pizza спасибо
@@The-il13 спасибо
Любая книжка по Аде. После этого даже на Си можно программировать без самострела.
Главная причина почему Си даёт фору всякими растам и зигам заключается в его богом проклятом тулинге. Ни единого стандарта сборщика, ни пакетного менеджера, что тут говорить, когда самая популярная тулза под Си (cmake) это кросс-плтаформенный компилятор сборщиков. А самостоятельное управление памятью это безусловный плюс, если мы конечно говорим про системное программирование. В целом на Си более-менее комфортно писать, если не суёшь нос дальше линукса.
Zig можно использовать как кросс компилятор
Есть еще платфррмы на которых только асм и си
Специализированные сигнальные процессоры(DSP)
Там как раз и char 16бит бывает и все эти дела, ради которых неопределенное поведение введено в стандарт.
Даже не знаю через сколько десятилетий на эти архитектуры придет раст и зиг….
Так что Си жив и будет жить!
си такой язык, в котором нужно знать другой язык, чтобы собрать проект с библиотеками на этом языке)))
@@comachineсейчас все компиляторы заставляют знать второй яп для сборки первого. Смотри как эту проблему решили nob тсодинга и jai джона блоу. Никто ничего подобного в индустрии не имеет, всем нужны девопсы и программисты на системе сборки.
"На С возможно всё, даже наломать дров" - Брайан Керниган. 😂
C прекрасно используется и много где. От ембедед до системного программирования. Rust хорошо как более сложных проектов.
Есть такая небольшая, уловка, ты очищаешь память free(p); p = NULL; в результате этого, даже если ты вызовешь ещё раз free(p); функция отработает корректно.
Корректно?!
@@iex32 в C вселенной, вместо вываливания в ошибку, функция free(p); где p = NULL; завершается успешно, лично я не знал, до некоторого времени, о такой особенности free().
Удобное
Все думаю выучить какой нибуть rust или java, да только не могу придумать проект который на них писать. Помоему для Pc уже все программы написаны.
Железячники, хэй! ))
Салам 👋
Зато любой чайник и скороварку запустить можно!😂
Hello,DGT67!
Тут
Ого, это что, адекватный сишник, да ещё и мытый. Где вы такого нашли-то?
Сравнение с Rust что-то вообще не раскрыли, в таймкодах про это вообще ничего.
Собственно за этим и пришел, тоже не нашел. Обычно Zig/Rust рядом идут в сравнениях
может потому что он не интересен? в каждом топике по коду-why not rust. бекоз итс юзлесс
@@MrChelovek68 да, не интересен, поэтому про него и на обложке и в заголовке.
@@safort7806 кликбейт, разве не слышали?
@@MrChelovek68 так а как работает кликбэйт? Чтобы заманить тех, кто интересуется.
Потому что С не позволяет заниматься кодовым извращением, показухой и "элегантными решениями", когда слона переопределяют в муравья и показывают как это весело и красиво. А когда на крестах нужно найти код, который собственно попадает в обьект и исполняется при всем безумии наследования и полиморфизма, то доходит до тго что проще выкинуть весь код чем починить. И да, не выделяйте память на куче. Ну или где-то в начале алгоритма, и всегда освобождайте в том же файле. Не используйте кучу для данных известного размера. И не бойтесь глобальной и статической памяти, оно вас не сьест.
Вопрос к 24:45 :на чём оптимально писать софт для Linux?
Выпуск классный)
Каждый мув в раст это компия данных если только llvm не сможет оптимизировать, а так же каждый возврат значения. Есть бокс и прочие обертки, но много копий оберток это много копий оберток :) RVO в расте нет.
А где про Rust говорят? Какой тайминг?
он скипнул его, хотя в вопросе было
Rust упомянут для кликбейта
На С++ тяжелее run-time? proof, please.
В плюсы перекочевал define и на мой любительский взгляд это самое убогое корявство в плюсах. Если для си это нормальная конструкция, то в плюсах когда видишь это слово, хочется надавать по рукам и щам за такое. Фуфу. Остальное всё люблю в плюсах.
Ну если не заморачиваться оптимизацией исполняемого кода, то define это фуфу, но если все же думать о низкоуровневых вещах, то define это путь сделать сложный код более читаемым.
Короче, Си - простой язык. На самом деле. На Си просто писать программы. ООП и веб-разработка, - это не про Си, хотя Си можно и там использовать.
помоему си .сильна в том где надо правильно распределять ресурсы. например у тебя 3 мегабайта оперативы. хуже если у тебя 8кб. вот и укладывайся в них. на других языках будет сложнее. если вообще невозможно.тут конечно дело не в языке. а в компиляторе но суть не меняется
походу единственный плюс раста, это посмотрите я не такой как все, я особенный, модный.
1:12:44 - классная рифма: "си - легаси"
Дорогая редакция, помимо Coq, не планируете пригласить гостей пообщаться про Isabelle/HOL, F*, Lean4 ? А хакеры любят лисп, как ни странно
Я думал он подъезде сидит оказывается это диван
Крутой чел, незнаю почему его хейтят)
железные люди те кто полностью посмотрел
Группа программистов из Мозиллы (бывших сишников), решила и написала умный С - Rust.
Там нет ничего умного. Ты можешь написать Memory Safe программу на C которую невозможно будет реализовать на Rust - из-за ограничений компилятор. Это помимо того что компилятор Rust по уровню помойки которая в нем творится можно сравнивать только с Huskel. Даже если в компиляторе есть бекдоры от NSA - мы их никогда не найдем, потому что проанализировать что там творится - займет слишком много времени. И на самом деле на Rust невозможно реализовать очень большое количество вещей связанных с параллелизмом и многопроцессорностью.
@@d1namis тогда линукс в опасносте.... раст в ядро линукса затащили
@@d1namis С не предназначен для memory safe. Наоборот, он делает упор на unsafe в критически ограниченных объемах. Микроконтроллеры тому пример. Rust писался с целью - быстро и безболезненно закрывать критические участки программ. Компилятор раста продуман очень скрупулёзно. Есть конечно пооблемы в виде циклических ссылок. Но в остальном, он умён и оптимален. Умная многопоточка, умные указатели, умные оптимизации. Это лучший компилятор без GC, из тех, что я встречал за годы работы.
@@СерёгаСокольский Зачем вы мне это объясняете? Это ведь даже не ваше мнение, просто общее впечатление о Rust. На СИ можно написать программу которая будет 100% Memory Safe, но на Rust такую же программу реализовать будет невозможно - это утверждение не требует никаких особых умственных усилий для восприятия. И Сейчас и в будущем без Unsafe - реальные интересные программы и алгоритмы - на Rust просто нельзя реализовать, но то что они Memory Safe - доказано математически. И тут появляется проблема - Rust превращает простые программы в Сложные, а сложные и интересные - реализовать на Rust без unsafe невозможно. Rust это не более чем эксперимент уровня TypeScript
@@СерёгаСокольский продуман скрупулезно и Циклические ссылки? вы серьезно?это разные вселенные так то.интересно на чем его написали,что ide не показала циклические ссылки
Любите си.
Скажите пожалуйста, стоит ли учить раст не зная языка Си?
да, после хаскеля будет совсем просто :)
@@User-ux1tm нет никакого учить, есть только писать программы. Если раст под задачи подходит - пиши на нем. А си, бреинфак или Хороший Учебный Язык - это дело, мягко скажем, десятое...
@@iamdozerq нет не десятое. потому чт язык и практика написания на нем приложений-это разные вещи. совсем.
А как вы будете использовать уже существующие библиотеки написанные на С и С++ в Rust проекте учитывая что эти библиотеки не имеют полной документации и вообще их иногда надо патчить ?
стоит, но не учить а сразу попытаться сделать на нем какой нибудь проект :)
Для мк пишут на си , иногда на asm
Почему не нужно писать на Си, не понял?
Странно, ни слова про golang
Хватит хейтить Паскаль😂 Нормальный язык.
с классическим синтаксисом,это вообще как классическая машина-красота
Для обучения программированию лучше так и не придумали
Проснись дед, в 21 веке все на Питоне пишут.
@@kosiak10851 далеко не все. И когда ты умеешь программировать тебе без разницы особо язык. Питон просто удобно продавать. Два месяца курсов и готовый формошлеп и скрипткиди для галер - это не программист.
Kosiak а по фактам скажешь что?
Рофлю с комментов)
1:43:00 вам не нужен goto для выхода из циклов, если ваши циклы реализованы как хвостовые рекурсии.
Ох уж эти проблемы императивщиков с циклами и мутабельностью
1:26:25 есть же запятые для этого, или я не понял о чем гость
"Хорошая книга по современному С"
Книга 2008 года издания :)
практики кода на си аще 95 года. но кто их читает...)))
@@MrChelovek68
У меня ощущение, что даже 1С более популярно и распространено, чем си 😀
По C17 я видел, наверно на русском нет новых?
@@andrewbondaryuk пока, кстати, возможно. но популярно-не значит,что лучше или больше возможностей. порог входа ниже и все. и все dsl языки это именно dsl. что жаба,что ц-решетка,что жабаскрип, это просто надстройки. а когда ты,занимаясь dsl понимаешь какую свободу дает си, то dsl языки для тя блекнут раз и навсегда. и раст становится маркетинговым мусороом. а вот стандарты могут ток ухудшить положение,если будут следовать смузибреду
@@MrChelovek68
zig?
наконец-то)
Вообще я на С пишу софт для микроконтроллера.
Учить Си бесполезно, как и программирование в целом, потому что ИИ и нейросети скоро заменят программистов, отправив их бомжевать или на завод, а в худшем случае в окоп...
Спасибо - понял, что мне не надо в С)
Ни слова про Objective-C 😂😂😂
Respect C/C++ 👍👌
С выделяет ещё и отсутствие 1:15:24 манглирования, может по ому не ввели нэймспейсы
Lunux на ruste это невозможно. Сам Торвальдс осторожно говорит на эту тему. Pascal просто вызывае отторжение и неприязнь к программированию. Не знаю почему. В школе не любил Pascal.
забавно,мне паскаль понравился. ег синтаксис классический. и си я люблю и си шарп.
Бля, нихера про раст, походу он в него не умеет
Аргументы за Си какие-то детские. Тот, кто выжил -- совершает ошибку выжившего. Тот, кто выжил -- не самый лучший. Это самый худший.
Да хуули бред этого евря слушать. Он сам плавает и старается и скрыть это.
Удивляет меня, как могут 3 мужика перед камерой обсуждать херню
А я пишу на Си и пох чё у вас башке, даже слушать эту лажу не стал.
Правильно делаешь! Всё как твой дед который с коболя на С отказывался переходить. По итогу ты бомж, бывает. Дай вселенная твоим детям такую же судьбу 😂
@@Александр-ф9в4ю си на 24 год в топе 3 по популярности, так что не скули
@@Александр-ф9в4юэто очень обидно 😅
а какой смысл оценивать то, о чем ты не имеешь представления. Не смотрел ролик - не комметриуй
...
@@Александр-ф9в4ючувствуется большая обида на язык, Си не всем удается освоить. 😂
Так-то еврейчик ничего нового не сказал, но из-за своих ааа эээ растянул на полтора часа.
uint8_t и т.п. используют в программировании STM32 и других АРМ-контроллеров...
Не только. Еще, например, при оптимизации структур данных при разработке высоконагруженных приложений
игры пишут пишут даже на lua
не пишут игры на луа. это язык для всяких модов и внутриигровой логики максимум. и то, если бы его не было, всем было бы лучше
Это не язык, а южноамериканское непотребство.
Да-да. А ML на питоне пишут. Кекв 🗿
@@doodocina скажи это библиотеки love2d где есть несколько хороших игр на нем и corona sdk и куче других движков и библиотек
@@tailogs5825 мне плевать где и что есть. игровые движки - мусор, большинство библиотек - мусор
после "как выбрать между С *или* С++" смотреть не стал
Ещё не смотрел, но в чём абсурд фразы? Это не подразделы какого-то одного языка, а разные ЯП. Соответственно да, выбирать надо.
@@kosiak10851 русский язык вышел из чата. между ... ИЛИ ...
Поч
@@alurma не хочется слушать настолько неграмотных людей, вряд ли что-то умное скажут
Из всего сказанного понятно что С эволюционировал от системного языка в непонятно что и для чего.
последний стандарт странный. с11 - норм
Почему в Си нет ссылок, или уже завезли?
Потому что нет объектов. Ну и есть указатели
зачем такая абстракция в Си ?
Пока нет. Идея их добавить звучит недурно, но и с указателями тоже справляемся.
потому что тогда С превратится в Go
@@chaquesecondeв цпп тоже есть указатели. ссылки с наличием или отсутствием обьектов никак не связаны, это просто менее декларативный и более абстрагированный способ передачи аргументов
C is important, always will be. I'd learn it in any century. The only truly cross platform portable language. Everything else is just plain bull-sh!!!!ttt!
Блять... Юнион не так работает. Он по сути перезаписывает кучу значений в 1 ячейку.
Тот подхож про который он говорит, это безопасное использование, в сути своей ты можешь прочитать не последний записанный тип в юнион, не это не безопасно
Вот после такого слушать даже не хочется когда он простейший тип не смог объяснить корректно
Да он как вообще преподом работал? Бездарь без буквы выучить Си и не вы2чит Эр
@@StartuePotoya Стеб это или на полном серьезе....
Просто сейчас в преподы не идут и по сути пойти может любой, меня больше удивило то, что после всего того что он наговорил они выложить это не постеснялись
С и С++ это самый неудобный и недружелюбный язык, что я видел
Самый муторный, самый непонятный, самый злобный
Программисты становятся злобными и высокомерными, например, они извращаются, чтобы непременно уместить весь код в одной строке.
Ухищряются, выпрыгивают из штанов и довольны собой.
И код становится совершенно нечитаемый. Но им то это надо. Надо зашифровать, чтобы потом никто ничего не понял.
Язык ради языка.
Его среда - VS, это самая тупая среда что я видел.
В частности я говорю о VS для UE4. (а для чего еще нужен C++?)
компилируется по полчаса(2024 год!) , все время пишет ложные ошибки, подсказки не работают, русский язык в самых важных местах, а именно в логе ошибок, превращается в непонятный непереводимый набор символов.
VS не в состоянии даже найти инклюды, хотя, я уверен что ей для этого нужна 1 секунда.
И нет нормального хоткея для компиляции
Это просто чудовищно. Это ужас.
Работал с кучей языков, с ними ты думаешь о программе, о логике.
С С++ ты думаешь о C++ и о VS. Они делают все, чтобы не выполнить то, что ты от них хочешь.
Ты постоянно должен думать об оптимизации, чтобы этот долбанный компилятор быстрее работал - инклюды размещать только в каких то эзотерических местах, например. В нужном порядке. Создавать какие то секретные непонятные файлы конфигураций.
Если ты захочешь переименовать файл, то ты этого сделать не сможешь. Иначе все сломается.
Это самый ужасный язык. И у него самый ужасный и тупой компилятор.
С добротой вспоминаю C#. Вот это язык для людей. Как и Паскаль и его разновидности.
Честно говоря, уже думаю, не перейти ли снова на Unity. И что то творить, а не биться постоянно головой о стену.
Не воспринимайте мои слова слишком серьезно. Это просто мое личное мнение и мое возмущение.
Вообще, у меня пожалуй больше претензий к VS. По моему, она бойкотирует С++.
Use QtCreator, man
"Си самый неудобный и недружелюбный язык" 😅 Спасибо, поржал 😂
@@bolatulyerdos ты привык к тупым стереотипам. За это я тебя не осуждаю.
Но читать ты не научился, это нехорошо. Но это твои проблемы.
@@bolatulyerdos уточнение - С++ для движка UE, в среде VS
Впрочем, думаю и сам по себе это неудобный язык.
Заумный и высокомерный. Недружелюбный и злобный. С кучей настроечных файлов.
Это как вместо машины тебя навалили кучу гаек, хочешь поехать куда то - сиди и собирай двигатель.
Но для Анрила он вообще никуда не годится. До 10 минут компиляция! Это нонсенс.
Вообще, ты сначала прочти что я написал. А потом делай что хочешь.
@@farkasvilkas5839 Просто иди начинай учить язык C, потом C++.
Не пойму этого прикола со сложностью указателей, в js все не скалярные данные передаются по ссылке, в php вроде нет но там они тоже есть в виде & это знака, тут истина то простая по сути, если создавая переменную мы взяли другую по указателю то ссылаться они будут на одно место в памяти и все, ничего сложного
Ровно как и нет никакой проблемы в том чтобы освободить память после использования, но мемори лики и нуллпоинтеры почему то плодятся😅
@@bernish Скорее-всего, тут не смогу сказать, дело привычки скорее всего
*Какие языки могут заменить си? (Rust, Zig, Carbon, C++)*
*Carbon - ...*
*Zig - ...*
*C++ - ...*
*Rust - 404*
Круто! Теперь точно не буду учить С!
его и не надо учить, им нужно брать и пользоваться. он настолько простой
Про брать и пользоваться-это просто топ
Си - простой язык. Хочешь себя обворовать, не учи Си! Не слушай то, что в видео говорят.
Бла, бла, бла! Пробовал я Ruct, идея прекрасная но симантика гавно. Короче мне не понравилось. Если я лезу функцией в переферию то всё что дальше юзает эту функцию будет небезопасным. Короче одно мозгоёбство!
Rust настолько же лучше C, насколько его Woke LGBTQ+ комьюнити лучше сишных олдстеров.
То есть на 5000%?
@@Александр-ф9в4ю - зависит от точки зрения. Имхо, Rust комьюнити/управленцы найдут способ зафакапить будущее языка, как они уже пытались год назад (попытка введения нелепой политики в отношении символики Rust), или, например, недавний скандал с уходом Linux мэнтейнера Rust. Как бы ни был хорош сам язык (кстати, так ли уж он хорош, раз требует таких титанических усилий по изучению и по написанию кода?) , безумная комьюнити снежинок найдет способ все испортить. Не следует иметь дело с безумцами.
Почти 3 часа воды ...
На мой вкус очень содержательно, но я студент
Содержательно. Я много нового узнал
@@ulysses.apokin именно про C тут минут 10-30 , остальное вода около Computer Science .
@@igorolikov1997ради этого мы и здесь
Несуществует "мягкого реального времени" реальное время или есть или его нет.
Невозможно слушать парня в красной рубашке постоянно ААА...АААА....ААА
Скучно, ограничено, предвзято. Оно и понятно. Ребята, следующие выпуски давайте про путешествия, еду, ну или фокусы показывайте.
Эээ... аааа... мммм.. да блин, невозможно слушать, два с половиной часа такой пытки!
Как вообще этот Жирков преподавал, или преподает где-то ? Лучше бы тихо сидел и книжки в углу писал, а не над людьми издевался, тем более детьми, мать его(((
Каждый преподаватель, для полной профпригодности, должен пройти полное обследование, или лечение у логопеда, с соответствующей сертификацией - точка!
Я думал мне одному он кажется профнепригодным. Спасибо, теперь убедился что я как минимум не 1 такой
Три танцора говорят о программирование. Один олух ещё и в математику полез 😅 говорит "математики любят красоту" 😅 😅😅. Математика конечно красивая наука, но совсем не о красоте и не любов к красоте в ней залог успеха. Математика о решение задач, любых. Математическое мышление нацелено на решение задач и без разницы красивым оно будет или нет. Там ни что не диктуется красотой.
Видно парень не из числа мыслителей, но свои фантазии любит распространять.
не согласен про красоту. если твоое-математика,ты будешь в ней видеть красоту. и матан к кодингу каешн имеет отношение в разных плоскостях. а так,красота может заключатся в простоте доказательства. это называется еще -элегантностью. но болтать каешн можно бесконечно насколько у тя богатый внутренний мир,ток толку от болтовни ноль
@@MrChelovek68 красоту можно видеть, везде, не только в математике. И в ремонте домов строителями. Это же не означает что кто пришел в кодинг со стороны строительство тот ищет в нем красоту ...
Элегантности изобретеной в математике нет, математику не изобретают а открывают, она вся есть без учённых, просто неизведанная ещё. Я же сказал в ней есть красота, но цель математика не красота.
И ты прав, болтать можно о чем угодно, исправь же себя на основании понятого тобой. Не будь как этот пустослов в видео.
@@kaihusravnajmiddinov5413 И почему же математику не изобретают, а открывают? А может, математические теории это вид искусства? Искусство не изобретают и не открывают.
@@spirridd нет -не искусство. Математические теоремы и законы - это законы логики/истины. Когда их узнают и доказывают их открывают.
Все доказанные математические формулы были верными до своего доказательство, то есть другими словами работали и были в естестве.
Пример: Пифагор доказал что в прямоугольном треугольнике, квадрат гипотенузы равен сумме квадратов катетов.
Эти суммы были равны и до доказательства Пифагора и до его рождения и до рождения Иисуса. Пифагор просто открыл этот закон.
Вс математика - так. Люди просто могут придумывать названия этим формулам, а они существовали с начало сотворения этого мира.
Искусство - это вообще другое и не точно определенное понятие, и конечно его (искусство) изобретают как раз таки. Ну например картина Репина..
@@kaihusravnajmiddinov5413 Пифагор не просто открыл этот закон. До Пифагора такого закона не было. Вообще, никаким образом не существовало. Как и самого прямоугольного треугольника не существовало. Это математический объект, придуманный человеком.