|
6195 / 2896 / 1043
Регистрация: 01.06.2021
Сообщений: 10,627
|
|
Почему язык D не стал таким популярным как С++?26.07.2024, 23:06. Показов 2127. Ответов 13
Метки нет (Все метки)
Почему язык D не стал таким популярным как С++?
Он такой же быстрый как С++, и в тоже время лишен многих недостатков, которые есть в С++. Язык поддерживает сборку мусора, но также оставляет доступным ручное управление память. В нем много сахара. И тем не менее, это не какой-то там C#, а очень хороший язык, который по производительности ничем не хуже языков С++/С. В его разработке участвовал "царь С++ ООП" Андрей Александреску. Уже данный факт говорит о том, что этот язык не очередное поделие. А теперь посмотрите, с какой частотой появляются темы в разделе D. Такое чувство, что никто на нем не пишет.
0
|
|
| 26.07.2024, 23:06 | |
|
Ответы с готовыми решениями:
13
Язык программирования С вновь стал самым популярным Почему Лисп не стал популярным языком программирования? Firefox 3.5 стал самым популярным в мире |
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
|
|
| 26.07.2024, 23:26 | |
|
Royal_X, если кратко, то существующая уже инфраструктура и решения для С\С++ имеют громный импульс. Какой бы ни был хороший язык, в первую очередь его применимость определяется не в вакууме, а в контексте уже существующих технологий. Поэтому ни D, ни Rust просто так не смогут, только на основании, что они такие хорошие, вытеснить С++. Нужны очень большие денежные вливания в создание ничем не уступающих аналогов существующих технических средств во всех сферах, где применяется C++, чтобы полностью его вытеснить. А также потребуется время на обучение достаточного числа программистов, чтобы создать новые условия на рынке.
Microsoft с их C# потребовалось около 10 лет и огромный бюджет, чтобы вытянуть нишу десктопа из под С++, и это при условии фактической монополии на всю десктопную платформу для x86. У создателей D и близко нет подобных ресурсов.
2
|
|
|
6195 / 2896 / 1043
Регистрация: 01.06.2021
Сообщений: 10,627
|
|
| 26.07.2024, 23:33 [ТС] | |
|
DrOffset, Google вместе с JetBrains тоже активно пропагандируют свой Kotlin.
0
|
|
|
Модератор
|
||
| 27.07.2024, 00:00 | ||
|
На маке основные языки Objective-C и Swift. Там С++ и прочие похожие языки тоже не особо популярны, как минимум потому что доступ к системным апи (аналог winapi) есть только из указанных двух языков. Теперь они пытаются вытеснить Objective-C новым Swift, но вытесняемый язык живее всех живых. Swift очень похож на Kotlin и вышел позже, но для меня куда приятнее чем Kotlin. Сейчас кстати Swift тоже продвигается на все платформы и язык с открытым исходным кодом. По сути тоже некая замена С++ и прочему похожему. Он тоже компилируемый, у него статическая (неявная и строгая типизация), есть рефлесия, нету сборщика мусора (как и ручного управления памятью, вместо него arc). Язык сделан максимально безопасным, поэтому писать низкоуровневый код не выйдет, но зато хорошо совместим с чистым Си и последнее время появилась и развивается прямая совместимость с С++. Пример совместимости с Си, можно расширять типы (структуры) из Си (объявленные в Си коде), добавляя в них методы. Активность в Rust на нашем форуме тоже никакая. Хотя у него развитие все же поболее, например своя IDE от Jetbrains, а не плагин к идее как у D. Про такой же быстрый и лишен недостатков можно сказать и про другие языки. Еще думаю имеет место что в универах преподают С/С++. Добавлено через 2 минуты Мне как пользователю важно наличие библиотек/фреймворков для языка, наличие хорошего комьюнити, где помогут решить вопросы. А так же наличие в достаточном объеме актуального и понятного обучающего материала. Добавлено через 4 минуты Кстати, рефлексия довольно полезная вещь. Иногда в С++ ее так не хватает. В Swift она есть, ее можно отключить (аж 3 варианта флагов для компилятора) и куда безопаснее чем в той же Java, так как не позволяет ничего изменять, а только смотреть. Но и от такого наличия много пользы. Первое что приходит в голову, получение строки из имени перечисления, недавно была такая тема в Qt разделе. В D есть рефлексия?
2
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|
| 27.07.2024, 09:18 | |
|
0
|
|
|
4575 / 2774 / 491
Регистрация: 28.04.2012
Сообщений: 8,779
|
|
| 30.07.2024, 14:37 | |
|
2
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 30.07.2024, 20:21 | ||
|
Это даже не рефлексия для статически типизированных ЯП. Добавлено через 1 минуту korvin_, и подымаются руки для такого троллинга, я в шоке.
0
|
||
|
4575 / 2774 / 491
Регистрация: 28.04.2012
Сообщений: 8,779
|
||||||
| 30.07.2024, 20:32 | ||||||
|
Добавлено через 4 минуты SmallEvil, документация D тоже троллит?
Или документация Scala троллит?
Добавлено через 1 минуту Или GCC троллит? https://gcc.gnu.org/projects/cxx-reflection/
1
|
||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 30.07.2024, 22:15 | ||
|
Это вы не понимаете что такое рефлексия и чем она ценна.
Цитируйте хот бога. Компиле тайм рефлексией никого не удивишь. А то что это пшик, ну так это знающим понятно. А вы просто пересказываете очевидные никому не нужные вещи.
0
|
||
|
4575 / 2774 / 491
Регистрация: 28.04.2012
Сообщений: 8,779
|
|||||||
| 30.07.2024, 23:07 | |||||||
|
0
|
|||||||
|
фрилансер
6455 / 5657 / 1129
Регистрация: 11.10.2019
Сообщений: 15,060
|
|
| 31.07.2024, 08:10 | |
|
SmallEvil, в C++, например, рефлексия только в компайлтайме и нужна. Её потихоньку завозят, но очень потихоньку
В рантайме то она нафиг сдалась?
0
|
|
|
Модератор
|
|
| 31.07.2024, 11:02 | |
|
Алексей1153, соглашусь
SmallEvil, Тем более что изменение объектов в рантайме крайне небезопасная вещь. Например в Swift сознательно не стали делать такое небезопасное поведение рефлексии.
0
|
|
|
4575 / 2774 / 491
Регистрация: 28.04.2012
Сообщений: 8,779
|
|
| 31.07.2024, 12:31 | |
|
0
|
|
| 31.07.2024, 12:31 | |
|
Помогаю со студенческими работами здесь
14
Английский язык. Почему название группы иногда пишется таким образом: Beatles, The? Ноут стал таким как я его купила Изменить первый список, чтобы он стал таким, как второй
в время установки я выбрал русский язык, но после установки он стал английская...Как поправить эту? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|