Перспективы Java и C#


30 0

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

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

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

Мне кажется, что Java останется популярной ещё очень долго благодаря Google и платформе Андроид. Этот же язык будет очень много использоваться на мейнфреймах благодаря IBM и большому количеству банковских систем, которые уже написаны на этой платформе. Не думаю, что кто-то решиться переводить все это на другой язык, просто это все слишком крупные решения. 

Но если говорить о новых разработках, то тут все больше компаний для крупных проектов мне кажется выбирает все же платформу Microsoft. И тут все просто, Java потерял свободу, когда ушел под крыло Oracle. До этого перехода Sun тратил огромные ресурсы на этот язык и много делалось ради свободы, открытого кода и просто Java. С переходом под крыло Oracle язык все же потерял, стал развиваться медленнее. Та же участь постигла и MySQL. 

Из-за судебных проблем с Oracle есть вероятность, что Google начнёт серьезно переводить все на другой язык, например, на Go. Если что-то такое начнется, то перспективы Java достаточно плохие, популярность этого языка пойдет серьезно вниз. 

В случае с .NET, Microsoft делает на много больше усилий. Язык развивается все ещё достаточно серьёзно, компания выпустила бесплатный редактор кода под все платформы, и как раз начинает вкладываться в открытость, делает все, что касается .NET свободным. 

Трудно сейчас сказать, что будет с Windows в будущем, но пока что все же эта платформа останется самой популярной. А тут C# набирает популярность. Майкрософт продолжает вкладываться и в свою мобильную платформу и если у них эти действия принесут плоды, то C# может ещё более серьёзно выстрелить. 

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

У популярности .NET все еще впереди. Сейчас эту платформу сделали дружественной к Arduino и благодаря открытому исходному коду я вижу возможные перспективы, где этот язык может выстрелить - встраиваемые системы и мобильная платформа. Произойдёт это или нет, я сказать не могу, но я просто вижу возможную перспективу тут. 


Понравилось? Кликни Лайк, чтобы я знал, какой контент более интересен читателям. Заметку пока еще никто не лайкал и ты можешь быть первым


Комментарии

Dmitry Romanenko

14 Февраля 2016

Spring Boot всё ещё слишком популярен и продолжает развиваться, так что слабо верится что с него резко начнут слезать.


ivan

14 Февраля 2016

Нравятся такие заметки. Именно свой опыт и свой взгляд ценен.
А если рассматривать выбор между java и c# в свете следующих потребностей: десктопные приложения под windows, мобильные под android и и веб-сервисы?

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

Microsoft Azure? Node.js? Xamarin? Cordova?


xFaq

14 Февраля 2016

Михаил, лучше добавить ещё swift для сравнения.)


Overdrive

14 Февраля 2016

В 8 java появились лямда и др. и вот на подходе 9. Все бесплатно. Eclipse или Netbeans бесплатны и кросплатформены, есть IDEA. Jenkins для CI gradle maven spring akka play gwt бесплатны. Работает на винде маке и луноходе. О смерте java говорят лет так 10 уже но на tiobe после выпуска 8 версии рост и сейчас на 1 месте. Есть андроид и большая инфраструктура, чего не скажешь о windows phone и его популярности.
В свою очередь C# это платная VS платные windows сервера, привязка ко всему MS.
В интерпрайзе red hat это стандарт. Поэтому говорить о смерте java как-то рановато, она тоже не стоит на месте и развивается.
У go другая ориентированность. Java более многословна и занимает свою нишу.


Михаил Фленов

14 Февраля 2016

1. Здесь стояла конкретная цель сравнить только два языка C# и Java, поэтому Swift будет немного лишним. Но его можно сравнить с чем-то отдельно.

2. Я не говорю о смерти Java прямо сейчас, я говорю о будущем, какие могут быть перспективы далее.


Шкрыль Андрей

15 Февраля 2016

Я считаю, что нужно изучать Ассебмлер и C++, Ассебмлер, потому что зная его как происходит работа программы на физическом уровне,как помещается информация в ячейку памяти. С++, потому что PHP,JAVA,C# прямые потомки от C++,у них синтаксис и основнные конструкции от си.


С. Наделла

15 Февраля 2016

Есть бесплатная VS 2013 ~ 2015 Community Edition , которая эквивалентна редакции Professional.


Александр

15 Февраля 2016

А что скажете о WPF? Есть ли смысл его изучать, и переходить с Windows Forms? Windows Form использует gdi, где все лагает, особенно при выводе большого кол-ва информации. Или есть другие альтернативы?


Михаил Фленов

15 Февраля 2016

WPF мне лично нравится, я об этом много раз писал. Но вот в перспективы не сильно верю. Silverlight под в
Web уже убили, а на мобилке сильно пропагандируют web технологии. Так что не знаю, будут ли эту технологию поддерживать в будущем. Но лично мне она очень нравится


SharpDevelop

16 Февраля 2016

Overdrive, а SharpDevelop тоже платная, а VS Express? Не надо про привязку. На них вполне можно работать, хоть и не так удобно.


xFaq

16 Февраля 2016

под мобильники WinRT))


Overdrive

16 Февраля 2016

2С. Наделла для интерпрайза комьюнити версии недостаточно.
https://www.visualstudio.com/ru-ru/products/compare-visual-studio-2015-products-vs.aspx
Поэтому придется покупать. Как и windows сервера и др.


Я думаю по поводу их

18 Февраля 2016

2Overdrive, интерпрайз сможет это себе позволить, не так ли? То не есть проблема.

Правило просто как двери, зарабатываешь солидно на студии, изволь купить, ибо на деньги прилетит проверка.

А если ты шлепаешь пет-прожекты , то пожалуйста, пиши себе бесплатно, сидя с чашечкой дешевого кофе , почитывая Адама Фримена....

А то как послушаешь, так у всех порталы с миллионами посетителей в он-лайне и триллионами запросов к базе данных )))


Я думаю по поводу их

18 Февраля 2016

12. Корпоративными считаются организации с >250 ПК или годовым доходом >1 млн долларов США.


Ololo

18 Февраля 2016

Чем же комьюнити недостаточно? Работаю на ней с первого дня как её выпустили и всего хватает. Да, нет некоторых фич, но совсем не критично, всё равно их не юзаю. Самое заметное чего нет это подсказки сверху методов которые в 2013 студии появились.
Оффтоп: Михаил, убери автокомплит на коде подтверждения, подсказка перекрывает картинку каждый раз.


Overdrive

19 Февраля 2016

2Я думаю по поводу их
1) Visual Studio Community - для коммерции запрещена, только в учебных целях opensource и т.д. Поэтому на любом предприятии, будь то даже ИП, выложи деньги, а расценки не маленькие =). Да есть бесплатные аналоги, но где их реально используют? Везде где я работал была VS.
2) Значит хостинг дороже и windows сервер, если ты что-то для себя делал. И все упирается в windows, и среда разработки и среда исполнения. Под Mac и Linux все это полноценно не работает, хотя разговоры идут уже много лет, а на деле все печально. Потому, что вся инфраструктура MS выстроена вокруг своих продуктов, и это логично.


Михаил Фленов

19 Февраля 2016

Возможности Visual Studio Community может быть и хорошие, но по лицензионным соглашениям она может быть запрещена к использованию в коммерческих проектах. Express Edition тоже была запрещена.


Ololo

20 Февраля 2016

https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx
Any individual developer can use Visual Studio Community to create their own free or paid apps
An unlimited number of users within an organization can use Visual Studio Community for the following scenarios: in a classroom learning environment, for academic research, or for contributing to open source projects.

For all other usage scenarios:
In non-enterprise organizations, up to five users can use Visual Studio Community. In enterprise organizations (meaning those with >250 PCs or >$1 Million US Dollars in annual revenue), no use is permitted beyond the open source, academic research, and classroom learning environment scenarios described above.

То есть для себя можно писать без ограничений платный и бесплатный софт, что отлично для фрилансеров, а для серьёзных фирм думаю можно и купить хоть каждый год, с учётом зарплат программистов цена студии это копейки, по крайней мере Professional редакции (499$), которой с головой хватит для любых приложений.


Михаил Фленов

20 Февраля 2016

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


Барсуков Сергей

19 Марта 2016

Михаил, добрый вечер!!!
Давно что-то к вам не заходил да не читал ваши блоги.
Вопросы такие:
1. можете ли привести сравнение JavaFX и WPF?
Что лучше работает в плане стабильности, производительности, качества.
2. Какого мнения о бесплатной ide  C# Shell developer? (чем она уступает платному MS Visual Studio)
3. Читал, что Java теперь принадлежит Oracle, это значит что компилятор Java теперь платный, включая Java FX или также свободная?




Барсуков Сергей из А

19 Марта 2016

4. И еще вопрос в Вики написано, Shell developer не поддерживает COM - компоненты, это что ж означает, что на shell developer я откомпилировать библиотеку (*.dll) не смогу для вызова ее в другой программе (конкретно 1С предприятие 8) или
наоборот shell developer не понимает внешние библиотеки, откомпилированные в других системах?


Барсуков Сергей из А

19 Марта 2016

пардон Sharp Develop вместо shell develop


Михаил Фленов

20 Марта 2016

1. Чтобы провести такое сравнение, нужно знать JavaFX, а я его не знаю

2. Ну долгое время писал код в Notepad++ даже на C# и сейчас часто это делаю, так что мне особо не нужны супер фишки среды разработки.

3. Я не слежу за Java. Да, она принадлежит Oracle, но платной они ее кажется не делали. Просто там есть некоторые пункты лицензии, которые всегда нарушались, а сейчас Oracle стала следить за этим.

4. Ничего не могу сказать, потому что не знаю


Alexey Fadeev

27 Марта 2016

По использованию Visual Studio Community.
Несколько дней назад я был на конференции CodeFest 2016 в Новосибирске. Подошёл к стенду Microsoft и задал этот вопрос. Так вот, в компаниях с годовым доходом менее 1млн $ в год и количеством ПК менее 250 коммерческое использование Visual Studio Community РАЗРЕШЕНО, и даже приветствуется (не более 5 рабочих мест). Если надо например 7, можно использовать 5 Community и 2 Express, или купить две Professional, итд.


Михаил Фленов

28 Марта 2016

Это ты у юриста из MS спрашивал? Я не буду спорить в отношении лицензий, но я бы лучше с юристом посоветовался, а не просто с сотрудниками MS.


Alexey Fadeev

30 Марта 2016

> Это ты у юриста из MS спрашивал?
Спрашивал у самого продвинутого консультанта MS на конференции. Конечно, для уверенности консультация юриста не повредит. Но раз сотрудники MS делают такие заявления, скорее всего ответ юриста будет положительный.

> Visual Studio Community - для коммерции запрещена, только в учебных целях opensource и т.д. Поэтому на любом предприятии, будь то даже ИП, выложи деньги
Вот тут товарищ Overdrive явно не обращался к юристу, в этом я убеждён


Илья

26 Сентября 2016

> Ну долгое время писал код в Notepad++ даже на C# и сейчас часто это делаю, так что мне особо не нужны супер фишки среды разработки.

Я сомневаюсь в Вашей компетенции.


Void

29 Сентября 2016

Оставлю свои 2 копейки по поводу JavaFX. Весьма годный GUI фреймворк, качественные API, да и в java 8 - это gui по-умолчанию, что говорит само за себя. Сам использую около 1.5 лет и очень доволен по сравнению с Swing'ом, который, к слову, приходится использовать в старых проектах. Шарпами заинтересовался на фоне движения .net в сторону open-source и выходом VS Community Edition в которой есть Xamarin. Одной из причин также является следующий факт. Сам я maven user, и потратил времени на его изучение много, а теперь получается, что нужно изучать gradle, а с ним groovy только потому что разрабы из google выбрали эту систему сборки для android и не поддерживают maven. Как-то это не демократично на мой взгляд. А в VS если не ошибаюсь данный процесс вообще прозрачен, на выходе всегда одна и та же сборка. Если ошибаюсь, поправьте


Вячеслав

01 Ноября 2016

> Это ты у юриста из MS спрашивал?

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


Сергей

22 Aпреля 2017

Spring Boot и микросервисы со мной навсегда. :)


Добавить Комментарий

Еще что-нибудь

Хотите найти еще что-то интересное почитать? Можно попробовать отфильтровать заметки на блоге по категориям.

О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

Без проблем вступаю в неразборчивые разговоры по e-mail. Стараюсь отвечать на письма всех читателей вне зависимости от страны проживания, вероисповедания, на русском или английском языке.

Пишите мне