glob используется с определенной целью - не дублировать списки файлов с кодом для двух таргетов (приложение и тесты). Если вы знаете как сделать лучше, то было бы здорово услышать.
Составить список исходников вручную. Т.е. set( SOURCE_LIST main.cpp component1.cpp component2.cpp) И потом использовать этот список так же, как сейчас. Это убирает один магический момент и решает проблему необходимости перезапуска cmake вручную для обнаружения новых файлов при их добавлении.
И потом создаётся executable? Если это инструкция для новичка, то пускай она хотя-бы будет консистентной. Я уж не говорю о том, что советовать копипастить какие-то магические заклинания без их понимания - моветон
Я вот уже лет 10 читаю как ПК умирают и уже в агонии, что десктоп приложения мертвы и что будуЮщее за веб-прогрессив-скейлебл-реактив-баззворд. Вот только iPhone сначала выходит без нативных приложений, а потом их добавляет. Браузеры и ОС на reactive.buzzword.js всё ещё никто не пишет
Открыть вики и посмотреть а так ли всё на самом деле я смогу только лет ещё через 20
По поводу культа карго: Не сказал бы, что корректно сравнивать туземцев с их самолётами и наши шампанское, тамаду и прочую нечисть. Мы не ожидаем(ну, по крайней мере, некоторые из нас), что если выпить шампанское прямо в 00:00(кстати по какому часовому поясу это нужно считать), то все желания магически сбудутся, а несчастья обойдут стороной.
Это бы хорошо работало до тех пор, пока не попытаешься использовать библиотеки, писавшиеся под старые стандарты с компилятором в режиме нового. Т.е. любой хедер бы ломал компиляцию.
Когда модули будут повсеместными и можно будет парсить модули в отдельном режиме, возможно будет менять язык менее осторожно
Давно и прочно пишу на C++, но реально нравится явное использование ссылок на стороне вызывающего кода в rust. Иначе иногда непонятно может ли что-то поменяться или нет. А const не воспользоваться т.к с ним move-семантика не уживается
Перешёл на pipewire недавно. Да, с ним проблем поменьше, но всё ещё встречаются. USB звук(всё что слышал) слишком плох, чтобы всерьез рассматривать его как замену
Ubuntu. Платформа intel, конкретную материнку не помню. Видео nvidia 30xx( до этого были 10 и 20 серии - проблемы те же), звук старая creative titanium pcie и встройка
Если размер бандла, скорость рендеринга и потребление памяти удовлетворительные, т.е. не вызывает проблем у пользователя, то эти цифры не имеют значения.
Да, особенно это хорошо видно, когда страница комментариев у хабра загружается минуту. Ведь у разработчиков такой проблемы не было, а значит её нет
Разрешили запрещать
Нет. Не происходит. Если сгенерировать проект, а потом добавить новый файл, то make в директории билда новые файлы не обнаружит и собирать их не будет
"а теперь мы разобьём ваш
main()
на 24 функции по 10 строк, т.к. пуристы решили, что так идеоматически правильнее"О, а вот про такое не слышал. Видимо одно из недавних дополнений
Составить список исходников вручную. Т.е.
set( SOURCE_LIST
main.cpp
component1.cpp
component2.cpp)
И потом использовать этот список так же, как сейчас. Это убирает один магический момент и решает проблему необходимости перезапуска cmake вручную для обнаружения новых файлов при их добавлении.
Рассказывать про кроссплатформенность и ломать её на пятой строчке приложенного CMakeLists.txt - это сильно.
Нормальным способом было бы вот такое
Или такое
file(GLOB...) использовать не рекоммендуется https://cmake.org/cmake/help/latest/command/file.html#filesystem
И потом создаётся executable? Если это инструкция для новичка, то пускай она хотя-бы будет консистентной. Я уж не говорю о том, что советовать копипастить какие-то магические заклинания без их понимания - моветон
Этот термин пора вводить ещё со времён "просто не держите его так"
Вы ещё конституцию попытайтесь процитировать. Даже федеральные законы - почти экстремизм
Я вот уже лет 10 читаю как ПК умирают и уже в агонии, что десктоп приложения мертвы и что будуЮщее за веб-прогрессив-скейлебл-реактив-баззворд. Вот только iPhone сначала выходит без нативных приложений, а потом их добавляет. Браузеры и ОС на reactive.buzzword.js всё ещё никто не пишет
Открыть вики и посмотреть а так ли всё на самом деле я смогу только лет ещё через 20
По поводу культа карго:
Не сказал бы, что корректно сравнивать туземцев с их самолётами и наши шампанское, тамаду и прочую нечисть. Мы не ожидаем(ну, по крайней мере, некоторые из нас), что если выпить шампанское прямо в 00:00(кстати по какому часовому поясу это нужно считать), то все желания магически сбудутся, а несчастья обойдут стороной.
Да что там скромничать. Руссинович учился у него. Недолго правда - не потянул салага
Буст. Хотите вы того или нет, но если вы его используете, то компилируете под стандарт новее, чем тот, под который он писался
Это бы хорошо работало до тех пор, пока не попытаешься использовать библиотеки, писавшиеся под старые стандарты с компилятором в режиме нового. Т.е. любой хедер бы ломал компиляцию.
Когда модули будут повсеместными и можно будет парсить модули в отдельном режиме, возможно будет менять язык менее осторожно
Переболел легко ещё осенью, когда ничего не было известно про все возможные сайд-эффекты.
Теперь сижу - думаю, стал ли я тупее и не замечаю этого или же пронесло
Давно и прочно пишу на C++, но реально нравится явное использование ссылок на стороне вызывающего кода в rust. Иначе иногда непонятно может ли что-то поменяться или нет. А const не воспользоваться т.к с ним move-семантика не уживается
Меняю Creative Titanium. Не лучшая, но сложно сравнивать со встроенной
От Nvidia, из-за cuda
Перешёл на pipewire недавно. Да, с ним проблем поменьше, но всё ещё встречаются. USB звук(всё что слышал) слишком плох, чтобы всерьез рассматривать его как замену
Ubuntu. Платформа intel, конкретную материнку не помню. Видео nvidia 30xx( до этого были 10 и 20 серии - проблемы те же), звук старая creative titanium pcie и встройка
Да, особенно это хорошо видно, когда страница комментариев у хабра загружается минуту. Ведь у разработчиков такой проблемы не было, а значит её нет