2008-11-01 6 views
22

Какая лучшая ОС для разработки Java? Люди из Sun подталкивают Solaris, да Solaris имеет некоторые дополнительные функции, включенные в себя, такие как (dTrace, возможность настройки производительности JVM и т. Д.). Некоторые мои друзья, приложили свои приложения к соляриусу, и они сказали мне, что выступления были блестящими. Я не доволен переключением своей ОС и вместо этого использую Solaris.Лучшая ОС для разработки java?

Каковы были ваши впечатления?

ответ

38

Из трех, которые я использовал (Mac OS X, Linux, Windows), я считаю Linux лучшим местом для разработки Java.

Моя основная персональная машина - это Mac, и я сделал там довольно много Java-разработок и был доволен ею. К сожалению, Apple отстает от официальных релизов JDK, и вы в значительной степени ограничены несколькими версиями, которые они предпочитают предоставлять.

Моя машина, поставляемая работодателем, представляет собой старый ящик P4 от HP, который я использую в основном для поддержания своих ног. Реальная работа происходит «Oberon», на четырехъядерном процессоре с тактовой частотой 2,6 ГГц Ubuntu 8.04 в 32-битном режиме [1]. Два преимущества, которые я вижу каждый день по сравнению с Windows:

  1. Мощная командная строка, которая помогает мне автоматизировать скучные мелочи.
  2. Far превосходный файловая система возможности. (В настоящее время я использую EXT3, потому что в моем старости я становлюсь консервативным. Раньше я использовал ReiserFS, что было еще быстрее для тех видов операций, которые обычно выполняются на больших рабочих пространствах, извлеченных из подрывной деятельности.)

Вы можете получить эти преимущества из Mac тоже, но Linux предлагает еще один приятный бонус:

  • Удаленная X11: До моего $ РАБОТОДАТЕЛЬ предоставляется по электронной почте и календарю через Интернет, я должен был быть в окне Windows, чтобы прочитать мою почту и посмотреть мои встречи, поэтому я использовал X11 Cygwin. Это позволило мне запустить материал в Linux, но отобразить его на рабочем столе Windows.

[1] Я использовал для запуска Ubuntu в 64-битном режиме, но не имел никакого конца неприятностей. (Смешивание 64-битного и 32-битного - это то, что Mac OS X делает намного лучше.) 7.04 работал отлично работает 32-разрядные приложения на 64-битном ядре. 7.10 нарушил сценарий linux32 и возможность установки новых 32-битных приложений, хотя старые продолжали (в основном) работать. 8.04 убил 32-битную java, сделав невозможным подключение к сети с 32-разрядной JVM (больше нет обновлений для Eclipse). Запуск 64-битной Eclipse не работал надежно. Текущая версия oXygen будет работать (неохотно) под IBM 64-разрядной VM, которая будет работать около 10 минут, пока не перестанет получать события клавиатуры. Я, наконец, разочаровался и использовал свой Mac в течение нескольких месяцев, пока у меня не хватило времени на выполнение 32-разрядной установки 8.04 в ящике Linux. Теперь все работает снова, и я вполне доволен.

0

У меня был успех, прежде чем делать разработку Java в Windows с Eclipse. Похоже, вы также спрашиваете о развертывании/хостинге. Независимо от того, какая ОС лучше всего запускать ваше приложение, не следует предикатировать, какую ОС вы используете для разработки приложения.

+0

Речь идет не о развертывании/хостинге, может быть, контекст не соответствует тому, что я имел в виду, но мой друг переносит приложение на Solaris только для тестирования. – vaske 2008-11-01 22:10:24

+0

Что такое программное обеспечение? Дайте еще немного контекста. Перенос приложения на конкретную ОС для тестирования кажется странным, поскольку большинство инструментов независимы от платформы. – Egwor 2008-11-01 22:13:15

+0

как работает приложение Swing на Solaris – vaske 2008-11-01 22:15:59

1

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

Зачем вам нужно настраивать JVM? Это очень необычная вещь, которую хочется делать. Лучше ли вы писать на более низком уровне, например, на C++?

Dtrace доступен для OS X, есть порт linux. Solaris исторически имела репутацию медленного (отсюда прозвище Slowaris). Я не уверен, что это все еще так.

+1

Sparc - это то, что сделало Solaris медленнее по сравнению с более быстрыми процессорами Pentium +. Теперь, когда Solaris работает так же хорошо на процессорах Intel, Solaris работает так же быстро и медленно, как и любая другая ОС. YMMV. – anjanb 2008-11-03 07:34:17

7

"development"?

Я считаю, что вам следует придерживаться той ОС, с которой вы наиболее комфортно, или которая наиболее доступна для большой группы (разработчиков), например, для набора компьютеров в Windows.

Редко необходимо выполнить углубленную настройку на разработка платформа.

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

И тогда вы можете настроить специальную JVM (например, IBM JRockit вместо Sun JRE), чтобы провести некоторый анализ на вашей платформе интеграции, где все ваши системы могут быть протестированы спереди назад, со стрессом и безрегрессионным тестом

И, наконец, сделайте все тесты UAT (User Acceptance Tests) на подготовительной платформе (которая может быть дорогой F15K или SunFire880 или V490 или ...) с целевой JRE, используемой там.

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

+0

ЕСЛИ вы пишете графический интерфейс, и в этом случае вы хотите быть в ОС, которую используют ваши пользователи. – Egwor 2008-11-01 22:12:11

+0

Правда, но в контексте этого вопроса ... Solaris? Если у вас есть сотни пользователей, я сомневаюсь, что у всех их будет поле Solaris ;-) – VonC 2008-11-01 22:25:56

6

Разработайте то, что вам нравится, и проверьте, на что вы развернулись.

Я получаю разработку Java на своем Mac и развертывание на Solaris и Linux. Истина заключается в том, что для большинства задач Java может быть разработан независимо от ОС. Это особенно актуально для разработки на стороне сервера.

Мне нравится разрабатывать на Unix вообще по Windows, но это я.

0

Окна и затмение хорошо работают, как предлагал премьер. Я также могу рекомендовать OS X с Eclipse или IntelliJ IDEA (последний также работает и в Windows).

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

11

Развивайте все, что вам нравится. Как программист на Java, вы можете избежать Mac OS X, прежде всего потому, что новые функции, похоже, были значительно задержаны, а также потому, что вы можете найти, что у вас больше нет машины, поддерживающей новые версии Java. Сказав, что я предполагаю, что разработка на Mac OS X должна быть очень приятной (интерфейс командной строки, dtrace, хорошая ОС).

Я разрабатываю на окнах с IntelliJ 7. Это нормально, но вам нужно какое-то здоровенное оборудование. Затем я развертываю на solaris/linux. Если вы не пишете графический интерфейс или не интегрируетесь с кодом на C++, вы должны быть в порядке, что бы вы ни выбрали.

0

Одна вещь, которую вы должны принять во внимание, заключается в том, будете ли вы разрабатывать приложение, которое можно запустить на Mac. Мне нравится OS X, но хороший старый steve удостоверился, что у нас всегда много версий JDK. Мы едва получили Java 6. Разработка на Mac может по крайней мере гарантировать, что вы работаете с минимально возможной версией JDK.

6

Я бы сказал, что Mac OS X.

Разработка Java встраивается. Все UNIX инструменты командной строки, которые вы хотите. Из коробки. Муравей и maven есть. Не последние версии, но это достаточно легко обновить.

Да, у вас может не быть самой последней версии JDK, но на самом деле, если вам не нужно разрабатывать новейший и самый большой JDK, это не будет проблемой.

2

Ответ прост, чем вы думаете: используйте свою любимую ОС. Для Java это лучший ответ. Не сама разработка, но ваш комфорт поможет вашему успеху, просмотру документов и т. Д. В вашей любимой среде.

0

Я использовал Linux, Windows и OS X. Мой большой аргумент в пользу OS X заключается в том, что это удобная для пользователя операционная система (т. Е. Я могу запускать iTunes, большинство современных браузеров и не нужно выделять 50% моего времени поддерживаю его на ноутбуке, таком как linux) с основанием unix. Поскольку большинство моих разработок для систем unix, это делает жизнь чрезвычайно продуктивной. Кроме того, здесь есть все более активное сообщество разработчиков. Эта причина также работает в обратном направлении для Windows - в то время как cygwin закрывает некоторые из моих требований для использования инструментов unix - это не похоже на наличие реальной системы unix.

0

Ваша среда разработки ДОЛЖНА БЫТЬ ОЧЕНЬ ПРОИЗВОДСТВЕННОЙ.

Нет «лучшей среды разработки», которая не идентична вашей производственной среде. Запустите то, что вы запускаете в процессе производства, в разработке.

Это не означает, что вы не можете запускать вашу среду IDE, например, на другой ОС, если вы все еще работаете с разработкой в ​​той же системе, что и на производстве (на другом компьютере или в VM) ,

0

Windows просто отлично.

Solaris - замечательная среда разработки Java (мне нравится это лучше, чем Windows, но по субъективным причинам), но если вы не развертываете на ней, возможно, не стоит переходить на нее.

Linux немного неуклюжий для разработки на Java, но выполнимый.

Единственное, что я не могу порекомендовать, это Mac, потому что они всегда так отстают от версии Java, доступной (не предоставляется Sun, Apple делает свои собственные).

0

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

Если вы настроите таргетинг на все платформы, то вы, возможно, захотите разработать на Mac, потому что вы получите самые неприятные сюрпризы на Mac. Что касается Java, то в Windows и Unix «это просто работает», но не так много на Mac.Sun разрабатывает среду выполнения Java (JRE) для всех операционных систем, кроме Mac. Apple разрабатывает собственную JRE.

Если вы разрабатываете Mac, вы, скорее всего, развиваетесь против наименьшего общего знаменателя, поэтому то, что работает на Mac, должно работать на других. Это был мой опыт.

Запрет на то, что я всегда рекомендую вам выбрать операционную систему в зависимости от того, запускает ли она ваше программное обеспечение. Выберите ОС, которая запускает вашу среду IDE и другие инструменты, которые вы используете для разработки и тестирования. Если более чем одна ОС запускает нужные вам инструменты, выберите тот, который работает с ними лучше всего.

 Смежные вопросы

  • Нет связанных вопросов^_^