Какие языки программирования используются для создания программ среднего размера?

Извините, глупость моего вопроса.

Такие вещи, как Adobe After Effects, Apple Final Cut, Pro инструменты, фотошоп.. также, такие вещи, как Windows Media Player, реальный игрок

Какие языки программирования используются для их создания?

Мне очень интересно знать, спасибо

Ответ 1

Если вы посмотрите на многие крупные приложения в Википедии, они будут иметь бокс-бокс, предоставляющий информацию, включая язык разработки (где известно).

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

В Windows С++, скорее всего, будет использоваться чаще, чем C для крупных коммерческих приложений, отчасти из-за того, что с выпуском Visual С++ и MFC в начале 1990-х годов Microsoft сделала его предпочтительным языком разработки для Windows, Однако с выпуском .NET framework предпочтительный язык разработки является проблемой, и могут использоваться С#, VB.NET, С++/CLI и другие языки .NET, но несколько основных потребительских приложений, о которых я знаю еще используйте .NET(и если вы сравните производительность, например, отличную, но медленную Paint.NET с PhotoShop Elements, например, вы, вероятно, сможете понять, почему!), она широко используется, однако, в разработке приложений на заказ (например, в банковском секторе, где производительность клиентского интерфейса не является проблемой).

C по-прежнему широко используется в приложениях Linux. Сам Linux написан на C, а его основной API - это интерфейс C. Однако существует множество интерфейсов и библиотек на С++, особенно для интерфейсов графического интерфейса, таких как KDE, WxWidgets и Qt.

Приложения OSX и iOS обычно записываются в Objective-C, поскольку это предпочтительный язык разработки Apple и OS API.

Приложения для Android обычно пишутся на Java, потому что Google Android API является библиотекой Java. Но это не типично "действительно большие программные средства" [sic]

Ответ 2

Те, которые вы указали, в основном написаны на C и С++ (с некоторыми использованием Objective-C на стороне Mac.) Другие программы могут быть написаны на других языках.;)

Ответ 3

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

Ответ 4

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

Языки, не предназначенные для высокопроизводительных (реальных или близких к реальному времени) программных задач из-за включения абстракций доступа к машинным ресурсам, включают Java, С# и Visual Basic.

Ответ 5

Это не очень "большие" приложения, корпоративные приложения иногда являются мамонтами (я предпочитаю строить их в JAVA:)). Например, приложение для анализа трафика, используемое вашим оператором связи. В любом случае, я знаю, что VLC является довольно "большим программным обеспечением", и он был создан с использованием С++ и qt.

Ответ 6

Взгляните на статью Джоэля http://www.joelonsoftware.com/articles/FiveWorlds.html В этих разных мирах есть разные предпочтения, когда речь идет о языках программирования.

Как заявили другие, программное обеспечение Shrinkwrap в основном написано на С++ или C в настоящее время, то же самое верно для (коммерческих) игр. Я подозреваю, что вы не будете рассматривать броузерное программное обеспечение как действительно большое, и, возможно, то же самое относится к встроенному программному обеспечению (но не стоит недооценивать размер базы исходного кода современная навигационная система).

Внутренние программные системы могут быть иногда намного большими. Существуют различные предпочтительные языки программирования, например, существуют действительно крупномасштабные системы в финансовом бизнес-секторе, написанные в COBOL. Другие бизнес-сектора предпочитают либо среду Java, либо мир программирования Microsoft (VB6, VBA, VB.NET, С#). И высокоскоростные численные вычисления по-прежнему выполняются (иногда крупномасштабными) программами Fortran.

Джоэл упомянул также программы веб-приложений. Такие программные системы часто создаются с использованием разных языков программирования для разных уровней системы. Например, Java Script или Flash/Actionscript в браузере, языки сценариев, такие как Ruby, Perl, Python или PHP на сервере веб-приложений, и некоторые другие языки, упомянутые во внутренней категории для бэкэнд-программ.

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