Надежда это полезно:
public static TValue ParseEnum<TValue>(string value, TValue defaultValue)
where TValue : struct // enum
{
try
{
if (String.IsNullOrEmpty(value))
return defaultValue;
return (TValue)Enum.Parse(typeof (TValue), value);
}
catch(Exception ex)
{
return defaultValue;
}
}
Ни то, ни другое. Все зависит от ваших личных предпочтений и от того, что вам удобно. Вы справитесь со своей работой с обоими.
РЕДАКТИРОВАТЬ
Чтобы более конкретно решить проблему с инструментами, которую вы поднимаете после редактирования, вы можете довольно напрямую сравнивать такие вещи:
+--------------------+------------+-----------+
| Tool \ Environment | .NET | Java |
+--------------------+------------+-----------+
| Web framework | .NET MVC | Struts |
| ORM Mapper | NHibernate | Hibernate |
| Unit testing | NUnit | JUnit |
+--------------------+------------+-----------+
... и как вопрос Фактически, многие инструменты (NHibernate и NUnit являются примерами) возникли в мире Java до того, как были перенесены и использованы в мире .NET.
Это зависит ... в каком из них вы лучше всего разбираетесь? Это тот.
это зависит от того, на какой платформе вы размещаете хостинг. Лично я предпочитаю .NET, но если бы у меня была другая среда, я бы использовал java (если бы другие, такие как PHP / Ruby, не были доступны)
Мне нравится Java. Я люблю eclipse.
Однако вы всегда найдете, что .NET-хостинг намного дешевле, чем Java-сервер.
Я много использовал и то, и другое, и в настоящее время мне сложно рекомендовать одно перед другим (конечно, при условии, что такие соображения, как платформа, стоимость лицензирования и существующие командные навыки, не принимаются во внимание
Я бы сказал, что экосистема Java больше и разнообразнее, чем экосистема .Net (хотя разрыв быстро сокращается). Это, а также тенденция многих пользователей .Net отдавать предпочтение продуктам и фреймворкам, поставляемым непосредственно Microsoft, по-видимому, ведет к большей «стандартизации» в мире .Net.
Я присоединился к проектам Java, где мне потребовалось 2-3 недели, чтобы начать продуктивно. В одном случае система сборки (Maven), IDE (NetBeans), веб-фреймворк (Tapestry), слой O \ R (чего я не могу вспомнить и с тех пор никогда не использовал) были для меня новыми. От чего я Мы видели, что у вас гораздо меньше шансов увидеть это в магазине .Net.
Все варианты в мире Java могут очень сбивать с толку, и это может затруднить освоение новичками вашей команды. Сказав это, как только (разумные !!) решения приняты и стандарты установлены, нет причин для того, чтобы разработка на Java была более или менее продуктивной, чем .Net
Я думаю, что обе системы имеют свои сильные стороны.
Вы можете легко связать веб-приложение Java и развернуть его на многочисленных серверах приложений (Tomcat, Glassfish и т. Д.). У Java есть очень богатое зрелое сообщество, в котором есть множество отличных сред разработки и многофункциональных IDE (NetBeans и Eclipse). Технология портативна, поэтому вам никогда не придется выбирать ОС. И что самое приятное, большая часть этого бесплатна. Большинство фреймворков в Java также спроектированы таким образом, чтобы «хорошо сочетаться» друг с другом, поэтому вы можете фактически подключать и воспроизводить различные функции по своему желанию (ORM, AOP, контейнер IOP и т. Д.). Это не совсем верно для .NET, существует не так много бесплатных библиотек / фреймворков для использования с этой технологией (и определенно не так много с уровнями принятия фреймворков Java).
В качестве предпочтения, Я предпочитаю .NET, потому что считаю, что среда разработки немного проще, а документация довольно последовательна (я чувствую себя более продуктивным). Это не значит, что у Java нет хорошей документации, просто она имеет тенденцию к ошибкам в зависимости от проекта. На мой взгляд, Visual Studio - лучшая среда разработки; он отвлекает от изучения того, что составляет довольно сложную структуру веб-сайта. К сожалению, это стоит немалых денег, а технология в значительной степени сводится к лучшим шаблонам и методам, которые, по мнению Microsoft, вы должны взять на себя (хотя они, как правило, щедро заимствуют у Java, так что обычно это срабатывает)
. Я уверен, что многим есть что сказать по этому поводу. Надеюсь, вы задаете этот вопрос и в контексте написания некоторых бизнес-приложений.
Я бы посмотрел на Groovy и веб-фреймворк, построенный на его основе: Grails. Он прост в использовании, прост и все же позволяет вам использовать полный стек Java, если вам нужно.
Я не знаю о .NET, но я бы не стал использовать решение только для Java , то есть любое из 100+ существующих веб-фреймворков ... Слишком много шаблонного кода, слишком много абстракций. Если у вас возникнут проблемы, и вы действительно должны знать, что происходит под капотом, у вас могут быть проблемы ...
Самый важный вопрос, который вам нужно задать своей компании: будем ли мы использовать Windows только в качестве нашей будущей платформы развертывания?
Если нет, то о .NET не может быть и речи :)
Если да, то мы можем продолжить - я считаю, что .NET имеет преимущество перед Java с точки зрения инструментов.
Если вы используете Windows и настроены на использование одной из этих двух сред, нет причин , а не использовать .Net.