Какой выбор языка подходит для разработчика С#, который хочет развиваться на платформе Linux?

Есть ли хорошие языки ООП, которые вы можете использовать в Linux? Очевидно, что Java приходит на ум, даже запуская С# под моно.

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

Помимо Mono С# и Java что-нибудь еще приходит на ум?

Ответ 1

Python кажется очевидным выбором. Там есть много отличных веб-фреймворков, сильная поддержка разработки настольных приложений GTK и многих других. Ruby также следует упомянуть, хотя он обычно не используется для настольных приложений.

Не забывайте, что и другие языки, работающие поверх JVM, - в основном Scala, Clojure и Groovy.

Ответ 2

Vala и D являются новыми и интересными языками с некоторыми качественными инструментами. Вала в первую очередь была разработана для бесперебойной работы в среде GNOME.

Ответ 3

Все они. Независимо от того, что вы хотите использовать в Linux, вы можете.

Ответ 4

Развитие Linux - это много всего. Для программирования приложений GUI вы, скорее всего, захотите запрограммировать одну из двух больших настольных сред, GNOME и KDE или непосредственно на библиотеки виджета, на которых они встроены, GTK + и Qt.

GTK + имеет в своем корне библиотеку C с ориентацией объектов, реализуемой как набор условностей, очень просто объясняется. Тем не менее, многие из них теперь используют GTK + и GNOME, используя настоящие языки OOP, такие как С++, С#, используя Mono (некоторые очень популярные и стандартные приложения GNOME построены на Mono).

Еще один очень интересный язык для GTK +/GNOME - это Vala, который сделан для того, чтобы выглядеть и вести себя как С#, но который компилируется на идиоматическом GTK-с использованием C, поэтому все соглашения GTK + OOP поднимаются, чтобы быть частью языка Vala.

KDE и Qt являются в основном библиотеками С++, но также имеют привязки к другим языкам.

Обе среды имеют хорошие привязки Python.

Ответ 5

Вы все еще можете использовать С# с проектом Mono.

Ответ 6

Python и Ruby, вероятно, являются наиболее логичным выбором для всестороннего развития. PHP также отлично подходит для веб-разработки.

Интересно, как только Java исключается как ответ, который мы идем прямо на динамические языки.

Я бы по-прежнему предлагал использовать Java, поскольку многие ваши знания в С# будут применяться с незначительными различиями в соглашении.

Ответ 7

Для скомпилированного типа приложения, как Freepascal.
Я бы подумал, что многоплатформенный и довольно простой в использовании для разработчика С#/Java. Можете делать веб-сайт, рабочий стол, клиент-сервер и т.д. И бесплатно (как следует из названия!). Кроме того, он основан на Pascal (очевидно), поэтому он хорошо пробовал и тестировал, а не один из "языков du jour": -)

Ответ 8

Попробуйте Free Pascal и Lazarus IDE.

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

Взгляните на screenshots

СОВЕТ. При использовании Lazarus попробуйте последний ежедневный снимок вместо стабильного выпуска. Снимки гораздо более свежие с исправлениями/функциями.

Ответ 9

Рассмотрим С++ с Boost.org. Boost всегда выпускает новые версии и все это с открытым исходным кодом. Linux и С++ имеют очень долгую историю, и существует множество стабильных инструментов. Как только вы знаете С++, многие новые миры, похоже, открываются. Есть несколько хороших IDE. Мне нравится code:: blocks.