Действительно ли D является вероятной альтернативой Java и C++? [закрытый]

161
задан nbro 12 January 2017 в 01:38
поделиться

10 ответов

Что определяет успех, и популярность языка программирования для реальной разработки программного обеспечения только частично связана с качеством самого языка. Как чистый язык, D возможно имеет много преимуществ перед C++ и Java. По крайней мере это - вероятная альтернатива как чистый язык при прочих равных условиях.

Однако другие вещи имеют значение для разработки программного обеспечения - почти больше, чем сам язык: мобильность (сколько платформ делает это, работают), поддержка для отладочных средств, поддержка IDE, стандартное качество библиотеки, динамическая поддержка библиотеки, привязка для общих API, документации, сообщества разработчиков, импульса и коммерческой поддержки, только для именования некоторых. В каждых из тех отношений D находится безнадежно позади Java, C++ и C#. На самом деле я утверждал бы, что это находится даже позади так называемых языков "сценариев" как Python, Perl, PHP, Ruby, и даже JavaScript в этих отношениях.

Грубо говоря, Вы просто не можете создать крупномасштабное, межплатформенное приложение с помощью D. С незрелой стандартной библиотекой никакая поддержка в любых современных IDE (существуют плагины и для Visual Studio и для Xamarin Studio / MonoDevelop), ограниченная динамическая/общая поддержка библиотеки, и небольшое количество привязки к другим языкам, D является просто не опцией сегодня.

, Если Вам нравится то, что Вы видите D, любой ценой, изучите его - это не должно занимать много времени, если Вы уже знаете Java и C++. Я не думаю, что евангелизм был бы полезен - в этой точке, если D собирается успешно выполниться, в чем это действительно нуждается, больше людей, бесшумно использующих его и обращающихся к его главным недостаткам как стандартная библиотека и поддержка IDE.

Наконец, что касается C++, в то время как большинство соглашается, язык слишком сложен, тысячи компаний успешно используют C++ в качестве части здорового соединения языков путем разрешения только меньшего, четко определенного подмножества языка. Все еще трудно разбить C++, когда и необработанная производительность и маленькое использование памяти требуются.

129
ответ дан LMS 23 November 2019 в 21:25
поделиться

Как язык, я всегда чувствовал, что D ближе к C#, чем C++. Не в функциях и библиотеках, а в "чувстве". Это намного более чисто, более хорошо... забава (чем C++). По моему скромному мнению, самое большое препятствие в становлении вероятной альтернативой является инструментами, IDE и отладчиком. Если D преодолеет некоторые препятствия широко распространенного использования/принятия, больше инструментов и библиотек проявят. (Я сам возвращусь к D, если будет применимый IDE и отладчик.)

4
ответ дан fedvasu 23 November 2019 в 21:25
поделиться

D является хорошим языком и прилично популярный , но как все языки, это - просто другой инструмент. Какой инструмент использовать зависит от вида человека, который Вы, как Вы думаете, среда, в которой Вы работаете, какие ограничения языков вводят программу, и самое главное, сама программа. Если бы у Вас есть время, я определенно рекомендовал бы изучить D. Худший вариант развития событий, Вы никогда не будете использовать его. Более вероятно Вы изучите, какие аспекты его Вам нравится большинство, и при каких условиях это сияет самое яркое, и используйте в своих интересах это для при создании новых программ.

я рекомендовал бы смотреть сравнительная таблица D для наблюдения то, что функции для языка и видят, звучит ли это правильным для Вас.

15
ответ дан Spodi 23 November 2019 в 21:25
поделиться

Мне нравится этот D, работа гения, прежде всего, один ум - Walter Bright, компилятор Zortech которого был фантастическим в его день.

В контрастном C++ слишком много дизайна комитета, даже если Bjarne является влиянием. Слишком много дополнительных функций и странного нового синтаксиса. Это различие отражается в простоте изучения и простоте повседневного использования, меньшего количества ошибок.

более когерентный вывод языков к лучшей производительности и радости программиста - но это субъективно и спорно! (я предполагаю, что должен провалить свой собственный ответ)

20
ответ дан Ferruccio 23 November 2019 в 21:25
поделиться

Я соглашаюсь, что C++ становится тупиковым языком - и он причиняет боль мне, чтобы сказать что, используя его в течение прошлых 17 лет.

я думаю, что D является законным преемником C++. С точки зрения языка это "делает все правильные вещи" (даже если я не соглашаюсь с каждым мелким решением). Я думаю с C и C++ на снижении нет никакого другого системного языка уровня, который может действительно сделать то, что они делают при поддержании себя в мире современных языков - кроме D! Мало того, что D исполняет эту роль - это выделяется в нем! Взгляда на D1.x должно быть достаточно, чтобы убедить Вас в том, что - но когда Вы смотрите на D2.0, это сдувает Вас. Именно мое мнение, что нет никакого другого языка вокруг сегодня работ, а также D2.0 в образовании моста парадигм императивного и функционального программирования - который только собирается стать более значительным в ближайшие годы.

Отсутствие основного принятия - или даже видимость - а также крупный масштаб, зрелый, библиотеки - препятствие, конечно. Однако я не думаю, что можно списать его из-за этого. Я убежден, что D будет расти для становления одним из самых важных языков вокруг в течение следующих нескольких лет - и те, которые относятся к нему, серьезно теперь будут хорошо помещенными для взятия на себя инициативу, когда то время настает.

я думаю, что различие собирается появиться должное, в значительной степени, к участию Andrei Alexandrescu. Это не должно дискредитировать Walter Bright всегда, который выполнил в важном задании, приносят D к миру. Но Alexandrescu является важным, и принуждение, число в, конечно, сообществе C++ - и существует то, куда большая часть потенциала D переключатели собирается прибыть из. И он также сделал значительный и существенный вклад в D2.0 в его поддержке функционального программирования.

может все еще оказаться, что D обречен быть Betamax системных языков уровня - но мои деньги находятся на нем оборачивающийся в течение следующих двух лет.

59
ответ дан kfmfe04 23 November 2019 в 21:25
поделиться

Только добавить мои собственные события в соединение:

приблизительно год назад я работал над мелкомасштабным игровым проектом (3 кодера) длительность 3 месяцев, где мы использовали D в качестве нашего основного языка. Мы выбрали его частично в качестве эксперимента, частично потому что это уже имело привязку для SDL и некоторых других инструментов, которые мы использовали, и главным образом для преимуществ появляется для имения по C++.

Мы любили использовать его. Это было быстро для изучения и легкий записать. Многие из него - функции, доказанные неоценимый, и я пропускаю их вернувшийся к C++.

Однако следующие моменты сделали наши жизни более трудными:

  1. не было никакого хорошего IDE, в то время, когда который была главная проблема. Мы закончили тем, что делали наше собственное путем настройки Scite. Это работало хорошо, но не было идеально.
  2. в то время не было никакого отладчика. Нам удалось заставить WINDBG работать на случайной основе, но это было ненадежно. Отладка кода без отладчика делала жизнь адской время от времени.
  3. было 2 стандартных библиотеки для выбора из в то время (Tango и Phobos). Мы запустили с одного, переключенного на другой, и действительно нуждались в смеси функций от обоих (Tangobos!). Это вызвало головные боли и некоторую перезапись кода.
  4. Привязка к другим инструментам, не доступным. В конце мы должны были переключиться на DirectX (по причинам, в которые я не войду). Не было никакой привязки для DirectX, доступного, таким образом, мы должны были записать наше собственное в C++, создать его как .dll и связать с этим. Это было довольно противной работой и заняло время.

В целом, мы любили писать D. Это заставило на самом деле запись кодировать легкий и было быстро для изучения. Проблемы, которые я упомянул, повторяют ответ, который был принят для этого вопроса - это - "дополнительные" биты, которым нужно обращение в D, ядро его твердо.

106
ответ дан Ajay 23 November 2019 в 21:25
поделиться

Это действительно зависит от того, что Ваши потребности - крупномасштабное коммерческое применение, записанное в D , делает , существуют на стороне сервера, и для этого, D (обычно использующий Танго/Манго) является идеальным соответствием, и Вы, вероятно, будете в состоянии служить большему количеству запросов, чем с любым другим языком/платформой.

Для большего количества специализированных решений с точки зрения протоколов и интерактивности (который многие) у Вас будет больше проблем при нахождении необходимых библиотек, и отсутствие инструментов, вероятно, будет влиять на Вас больше.

7
ответ дан mcandre 23 November 2019 в 21:25
поделиться

Это похоже на очень хорошо разработанный язык; намного лучше, чем C - C++ - Objective C. Я могу жить без IDE или отладчика некоторое время, но не без хорошей, зарегистрированной библиотеки для D 2.0.

я перепроверю через 6 месяцев...

2
ответ дан Bill the Lizard 23 November 2019 в 21:25
поделиться

Один подход должен искать задания в Вашей области. Найдите работы, которые требуется делать и видеть, какие навыки они просят. Если они просят C++ или Ruby или Oracle или D, то это - навык, который должен главным образом помочь Вам получить задание, которое Вы хотите.

3
ответ дан Peter Lawrey 23 November 2019 в 21:25
поделиться

Работает отлично для моих собственных любимых проектов. Я использовал бы его для проектов работодателей, но для того, чтобы не знать, как трудно это будет для них, чтобы найти, что кто-то принимает источник после того, как я буду идти дальше. Нет никаких технических причин для предотвращения его, по крайней мере, на поддерживаемых платформах. (удар по древесине)

3
ответ дан DarenW 23 November 2019 в 21:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: