На самом деле любой разработчик, который поработал на плюсах с большими проектами, может тебе много не лестного сказать по поводу этого языка. Если не скажет, то он не достаточно глубоко его изучил, и не решал большие задачи. Мало кто возвращается к плюсам после того, как изучит литературу по другим упомянутым языкам.
Шутка похоже не зашла.
Но суть не в том, что язык лучше, а в том, что его комьюнити смотрит на остальных свысока. Чисто эльфы.
А так да, кресты - это типичный постсоветский балкон, с одной лыжныой палкаой, старым телевизором, закатками лета 1994 и прочим добром. На вопрос "какие парадигмы программирования мы будем внедрять?", комитет ответил "Да!".
На вопрос "как всё это уживется вместе и кто теперь сможет полностью реализовать стандарт?", комитет ответил "Не наши проблемы?".
Надеюсь когда-нибудь у нас появится !популярный! высокоуровневый язык, на котором можно писать низкоуровневый код. С бесплатными или почти бесплатными абстракциями. А пока учим Rust.
С++ компилится и запускается на всем. На винде, андроиде, ай ос, мак ос, линуксе, компилится в джава скрипт или веб ассембли и запускается в браузере.
Какой еще язык, кроме С так может? Да с llvm стало проще, но все же? Запустиш джаву на ай ос? Или может С# в браузере? Для юнити это стоило титанических усилий, чтобы запустить С# в браузере.
CUDA использует диалект С++, и работает с хостовым С++
Леко интероперирует с С, и по сути обратно совеместим с ним, это значит, что можно юзать напрямую без всяких оберток 99% всех базовых библеотек, таких как libpng, zlib, libjpeg, lcurl, lz4, libogg, libvorbis, все видео аудио кодеки, + еще очень длинный список
Интероперируемость с нативными либами в джаве или С# это БОЛЬ, БОЛЬ и БОЛЬ
А еще это нативное АПИ DirectX и Vulkan. Да и большинство ОС имеют С АПИ, которое можно напрямую юзать из С++.
Очень часто, С++ это безальтернативный вариант. Можно долго ругать С++, но твое "Мало кто возвращается к плюсам" как раз не применимо к доброй половине серьезных больших проектов.
джаву на айос - да. после джейла. с технической стороны проблем нет, есть анальное огораживание.
c# в браузере - тоже да. blazor
с C не интегрировался только ленивый
"Интероперируемость с нативными либами в джаве или С#"
а на хуя оно надо? понт managed кода в его безопасности. выкинь на помойку гарантии и ебись назад с указателями! спасибо, не надо.
Это не "да", это жирное "нет", ибо в апстор ты это не выкатишь.
>> с C не интегрировался только ленивый
Я про нормальныю интероперируемость, а не как С# или джаве. И я знаю про SWIG, это все равно не панацея. Попробуй вызвать С# функцию из unmanaged С++
нафига мне это делать? на жабе и шарпе больше годных либ с человеческими объектными api
только древнее говно из 80х типа осей всё еще тащит за собой это наследие засилья сишки
в следующей винде, вроде как, всё это старьё выкинут в отдельную виртуалку - вот тогда заживём с блэкджеком и uwp
>> на жабе и шарпе больше годных либ с человеческими объектными api
только древнее говно из 80х типа осей всё еще тащит за собой это наследие засилья сишки
Нихуя. Полно специализированных либ, которые есть только на С или С++.
Причем, это не только про старье:
NVidia Optix - C++/CUDA API
webp - C
Vulkan - C
Direct X - C++
Нужно работать :
- CUDA
- OpenGL
- OpenVR
- LibOVR
Платформа - основная винда, но нужно еще саппортить мак ос и линукс.
При этом, нужно ументь читать писать в hd5 (hdflib), DCMTK, TIFF и кучу других форматов для которых все либы написаны или на С или на С++, и зачастую не имеют биндингов на другие языки.
Я не много поработал с с++ и java, но могу сказать, что скорость и качество продукта определяется архитектурой и следованием определленным паттернам/стандартам, а не тем, что с++ офигенно быстрый. Да, делая это на плюсах, может и получишь пару процентов перформанса (да и то не факт), но на шарпе и джаве это делать в сто раз проще.
Но суть не в том, что язык лучше, а в том, что его комьюнити смотрит на остальных свысока. Чисто эльфы.
А так да, кресты - это типичный постсоветский балкон, с одной лыжныой палкаой, старым телевизором, закатками лета 1994 и прочим добром. На вопрос "какие парадигмы программирования мы будем внедрять?", комитет ответил "Да!".
На вопрос "как всё это уживется вместе и кто теперь сможет полностью реализовать стандарт?", комитет ответил "Не наши проблемы?".
Надеюсь когда-нибудь у нас появится !популярный! высокоуровневый язык, на котором можно писать низкоуровневый код. С бесплатными или почти бесплатными абстракциями. А пока учим Rust.
Какой еще язык, кроме С так может? Да с llvm стало проще, но все же? Запустиш джаву на ай ос? Или может С# в браузере? Для юнити это стоило титанических усилий, чтобы запустить С# в браузере.
CUDA использует диалект С++, и работает с хостовым С++
Леко интероперирует с С, и по сути обратно совеместим с ним, это значит, что можно юзать напрямую без всяких оберток 99% всех базовых библеотек, таких как libpng, zlib, libjpeg, lcurl, lz4, libogg, libvorbis, все видео аудио кодеки, + еще очень длинный список
Интероперируемость с нативными либами в джаве или С# это БОЛЬ, БОЛЬ и БОЛЬ
А еще это нативное АПИ DirectX и Vulkan. Да и большинство ОС имеют С АПИ, которое можно напрямую юзать из С++.
Очень часто, С++ это безальтернативный вариант. Можно долго ругать С++, но твое "Мало кто возвращается к плюсам" как раз не применимо к доброй половине серьезных больших проектов.
Я могу и ошибаться, но тоже самое умеет GO.
c# в браузере - тоже да. blazor
с C не интегрировался только ленивый
"Интероперируемость с нативными либами в джаве или С#"
а на хуя оно надо? понт managed кода в его безопасности. выкинь на помойку гарантии и ебись назад с указателями! спасибо, не надо.
Это не "да", это жирное "нет", ибо в апстор ты это не выкатишь.
>> с C не интегрировался только ленивый
Я про нормальныю интероперируемость, а не как С# или джаве. И я знаю про SWIG, это все равно не панацея. Попробуй вызвать С# функцию из unmanaged С++
Про blazor спасибо, не знал.
"Попробуй вызвать С# функцию из unmanaged С++"
нафига мне это делать? на жабе и шарпе больше годных либ с человеческими объектными api
только древнее говно из 80х типа осей всё еще тащит за собой это наследие засилья сишки
в следующей винде, вроде как, всё это старьё выкинут в отдельную виртуалку - вот тогда заживём с блэкджеком и uwp
только древнее говно из 80х типа осей всё еще тащит за собой это наследие засилья сишки
Нихуя. Полно специализированных либ, которые есть только на С или С++.
Причем, это не только про старье:
NVidia Optix - C++/CUDA API
webp - C
Vulkan - C
Direct X - C++
Вот тебе банальный пример из жизни.
Нужно работать :
- CUDA
- OpenGL
- OpenVR
- LibOVR
Платформа - основная винда, но нужно еще саппортить мак ос и линукс.
При этом, нужно ументь читать писать в hd5 (hdflib), DCMTK, TIFF и кучу других форматов для которых все либы написаны или на С или на С++, и зачастую не имеют биндингов на другие языки.
Какой основной язык разработки сюда подходит?
BLAZOR
и внезапно узнаем что он полностью заменяет жабаскрипт