У меня есть маленькое знание Java, и C#.NET (предпочтите C#).
Что я должен использовать для создавания небольших приложений, которые будут работать хорошо в Windows, Mac и Linux? Скорость, вероятно, не будет основным беспокойством (небольшие приложения; использование Сокетов и т.д.).
Java
, потому что
Eclipse
- отличный инструмент для разработки на Java. (ПРИМЕЧАНИЕ: вы будете скучать по Visual Studio, но не так сильно) mono
настолько зрел и хорош, как .NET
. Java - ваш лучший выбор. C# и .NET не будут работать на Mac и Linux без большого количества прыжков через обручи и головной боли. Другим вариантом для небольших программ является что-то вроде Python.
Если вы создаете серверное приложение, я, скорее всего, выбрал бы Java, но вы также можете взглянуть на Mono для кросс-платформы.
Для настольного приложения я бы попробовал Mono, так как я в основном парень .Net. А настольные приложения, созданные на Java, не так привлекательны с точки зрения графики. Или попробуйте использовать SilverLight, но он также не поддерживается в Linux (MoonLight).
Оба варианта являются жизнеспособными.
Java официально поддерживается на всех трех платформах.
C # можно использовать в Linux и Mac, если вы готовы использовать подмножество .Net, поддерживаемое Mono .
Что больше подходит, зависит от того, с чем вам удобнее, и от точных требований приложений, которые вы будете разрабатывать.
Если вы действительно хотите использовать C #, попробуйте Mono: http://www.mono-project.com