C# vs Java
От: Cicero www.ya.ru
Дата: 04.09.19 17:57
Оценка:
Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?
И для определенности 5 пунктов Вашего обоснования.

P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.
Спасибо.
O tempora! O mores!
Re: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 18:13
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?


Кем конкретно работать?

C>И для определенности 5 пунктов Вашего обоснования.


Если список из двух пунктов — C#/Java, то совершенно все равно какой. Java как бы более серверный и энтерпрайзный по применению, C# как бы более десктопный, но это все очень условно вплоть до наоборот.
Re: C# vs Java
От: Sharov Россия  
Дата: 04.09.19 18:13
Оценка: +5
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

5 пунктов не наберу да и лень, если честно.

Как язык C# уделывает яву, кмк. Больше всяческих идиом встроено или планируется встроить -- функциональшина в виде linq, асинхронность в виде async\await, с динамикой можно поиграться через dynamic.
Т.е. изучая язык, человек получит некий кругозор о различных направлениях в языках, а не только ООП -- фп, динамическая типизация и т.д. И все в пределах одного языка.
Вроде можно уже под линупс писать. В целом, язык отличный, если не лучший.

Но. Если устраиваться на работу, и с нуля, то конечно ява. Больше предложений, ява вообще везде и всюду, начиная от облаков и кончая разработкой под мобильники, ведро.
Вроде даже пытается C# догонять по фичам. Кроссплатформенность из каропки.
Кодом людям нужно помогать!
Re[2]: C# vs Java
От: Cicero www.ya.ru
Дата: 04.09.19 18:17
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Кем конкретно работать?

Программистом
O tempora! O mores!
Re: C# vs Java
От: Shmj Ниоткуда  
Дата: 04.09.19 18:17
Оценка: +2 -4
Здравствуйте, Cicero, Вы писали:

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

Java "скурвилась" после того, как попала в руки алчного Эллисона. Там большие непонятки с лицензированием, появились форки и т.д. В общем — стало все плохо

.Net же наоборот — стал более либеральным, т.к. MS перешла на светлую сторону и добавила поддержку Linux на официальном уровне. Пока только для сайтов, но на самом деле большего и не нужно — вряд ли в 2020-х годах будете делать нейтивную прогу для десктопа.

Т.е. исходя из текущих реалий — однозначно C# и .Net.
Re: C# vs Java
От: Mystic Artifact  
Дата: 04.09.19 18:21
Оценка: +1 -1
Здравствуйте, Cicero, Вы писали:

Посоветовал бы больше времени уделить фундаментальнымм работам, структурам данных, алгоритмам и вообще уверенно понимать код на C. Просто понимать код на Python, C# и Java. Изучить протокол. HTTP/1.1 и JavaScript, а так же HTML с CSS (обзорно).
Re[3]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 18:23
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Здравствуйте, Michael7, Вы писали:


M>>Кем конкретно работать?

C>Программистом

Слишком общее. Веб-программистом. СУБД. Матмоделирование и ИИ. Геймдев. Embedded. Системный.
Так навскидку существенно разные вариации. Впрочем на выбор из всего двух пунктов Java/C# это практически не повлияет. Ну разве что нюансами, потому что если СУБД — это MS SQL, то логично C# изучать, а если Oracle — то Java. Если что-то другое — то наверное тоже Java.
Re[4]: C# vs Java
От: Cicero www.ya.ru
Дата: 04.09.19 18:30
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Слишком общее. Веб-программистом. СУБД. Матмоделирование и ИИ. Геймдев. Embedded. Системный.

M>Так навскидку существенно разные вариации. Впрочем на выбор из всего двух пунктов Java/C# это практически не повлияет. Ну разве что нюансами, потому что если СУБД — это MS SQL, то логично C# изучать, а если Oracle — то Java. Если что-то другое — то наверное тоже Java.

Понятно что слишком обще.
А как иначе?
Старт с нуля!
Чел только хочет начать изучать язык, еще даже не выбрал.
Как на данном этапе определить куда его занесет?

Он собирается изучить(может быть пройти курсы я ХЗ), а потом пойти искать работу.
Куда его занесет, где его согласятся взять ХЗ.

Единственное что определенно известно: вакансий в его городе на C# в два раза больше чем Java.
O tempora! O mores!
Re[5]: C# vs Java
От: Mystic Artifact  
Дата: 04.09.19 18:43
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Единственное что определенно известно: вакансий в его городе на C# в два раза больше чем Java.

Еще бы понять корреляцию зарплат. Но в целом выбор очевиден.
Re[5]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 18:46
Оценка: +1
Здравствуйте, Cicero, Вы писали:

C>Единственное что определенно известно: вакансий в его городе на C# в два раза больше чем Java.


Тогда довольно однозначно, что C#, хотя как подсказывают еще важно какие при этом зарплаты, впрочем для юниора, не думаю, что существенная разница. Однако с точки зрения количества вакансий, наверное, еще лучше 1С изучать — практически гарантировано можно найти работы даже далеко не в центральных местах.
Re[6]: C# vs Java
От: Cicero www.ya.ru
Дата: 04.09.19 18:49
Оценка:
Здравствуйте, Mystic Artifact, Вы писали:

C>>Единственное что определенно известно: вакансий в его городе на C# в два раза больше чем Java.

MA> Еще бы понять корреляцию зарплат. Но в целом выбор очевиден.

Мне кажется что он готов работать за еду, если его возьмут без опыта.
O tempora! O mores!
Re[7]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 18:52
Оценка:
Здравствуйте, Cicero, Вы писали:


C>Мне кажется что он готов работать за еду, если его возьмут без опыта.


Тогда наверное с C# шансов больше. Java она как-то слегка более элитарная, впрочем это очень субъективно.
Re[6]: C# vs Java
От: Mystic Artifact  
Дата: 04.09.19 18:52
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Тогда довольно однозначно, что C#, хотя как подсказывают еще важно какие при этом зарплаты, впрочем для юниора, не думаю, что существенная разница. Однако с точки зрения количества вакансий, наверное, еще лучше 1С изучать — практически гарантировано можно найти работы даже далеко не в центральных местах.


Нишевая область и условно только в СНГ. Лучше уж C# или Java. Глядишь и поедет потом куда. (Имхо)
Re: C# vs Java
От: Sheridan Россия  
Дата: 04.09.19 19:11
Оценка: +1
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?


Как ни странно при таком выборе предпочту шарп.

C>И для определенности 5 пунктов Вашего обоснования.

Мне достаточно одного: Приложения на ём не тормозят и не ждут память терабайтами на пустом месте.
Matrix has you...
Re[7]: C# vs Java
От: Mystic Artifact  
Дата: 04.09.19 19:21
Оценка: +1
Здравствуйте, Cicero, Вы писали:

C>>>Единственное что определенно известно: вакансий в его городе на C# в два раза больше чем Java.

MA>> Еще бы понять корреляцию зарплат. Но в целом выбор очевиден.
C>Мне кажется что он готов работать за еду, если его возьмут без опыта.

Мне понятно, только, что нужно будет хорошо поработать над собой, и это займет какое-то значительное время. Почти наверняка надо будет не просто пройти курс, а ещё и что-то сделать эдакое для себя, что бы самому бы нравилось. Я не знаю на каких курсах могут научить программировать, я уже более 20 лет учусь, и пока что, что я действительно точно понял — это то, что я нихера не умею.
Re[2]: C# vs Java
От: wl. Россия  
Дата: 04.09.19 19:37
Оценка:
Здравствуйте, Sheridan, Вы писали:

C>>И для определенности 5 пунктов Вашего обоснования.

S>Мне достаточно одного: Приложения на ём не тормозят и не ждут память терабайтами на пустом месте.

я, в принципе, тоже за шарп, но и жаба не плоха. в АНБ на нем пишут, вон, недавно выкатили декомпилятор, очень неплохой: https://github.com/NationalSecurityAgency/ghidra
Re: C# vs Java
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 04.09.19 19:43
Оценка: +1 :))
Здравствуйте, Cicero, Вы писали:

Java-программисты.

Re[6]: C# vs Java
От: Ops Россия  
Дата: 04.09.19 19:47
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Однако с точки зрения количества вакансий, наверное, еще лучше 1С изучать — практически гарантировано можно найти работы даже далеко не в центральных местах.


На 1С еще желание программить нужно, а там и сам язык не фонтан, и унылая предметная область. Лично я бы только от совсем плохой жизни согласился.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re: C# vs Java
От: Anton Batenev Россия https://github.com/abbat
Дата: 04.09.19 19:47
Оценка: +4 -5
Здравствуйте, Cicero, Вы писали:

C> Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?


Конечно Java — это веб, enterprise, мобильные, всякие биг-дата типа hadoop. Сегодня он готов работать за еду, а завтра у него появится семья, дети. Зачем сразу ограничивать потолок своей зарплаты формоклепством и vendor-lock?
github.com/abbat
Re: C# vs Java
От: scf  
Дата: 04.09.19 19:50
Оценка: +2 -1
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

Java.
— популярнее
— выше спрос и выше зарплаты сеньорных программистов, т.к. джава — основной язык автоматизации крупного бизнеса, а также один из любимых языков для стартапов
— культура опнсорса, несколько альтернативных библиотек на каждую задачу и чудовищный объем высококачественного опнсорс кода
— мультиплатформенность — фактическая, многолетняя
— платформа JVM и альтернативные интересные языки на этой платформе

Почему вообще имеет смысл смотреть на шарп:
— ниже порог входа, есть куча компаний, которые осознанно окучивают студентов на шарпе, легко найти работу без опыта.
— современный язык с современными фичами
— очень качественная и простая в освоении экосистема — IDE, фреймворки, СУБД, тулинг, документация.
— оптимальный язык для написания гуев под винду. Веб-интерфейсы набирают популярность, но десктопные приложения до сих пор нужны и важны.
Re[7]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 20:00
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>На 1С еще желание программить нужно, а там и сам язык не фонтан, и унылая предметная область. Лично я бы только от совсем плохой жизни согласился.


Я тоде так думаю, просто если человеку заработок нужен, хоть как-то связанный с программированием, то наверное самое распространенное.
Re[2]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 20:04
Оценка: :)
Здравствуйте, scf, Вы писали:

scf>- оптимальный язык для написания гуев под винду.


Как-то очень спорно по-моему. Гуй под винду — это скорее C# + WPF, чем Java + Swing
Re[3]: C# vs Java
От: Mystic Artifact  
Дата: 04.09.19 20:26
Оценка:
Здравствуйте, Michael7, Вы писали:

scf>>- оптимальный язык для написания гуев под винду.

M>Как-то очень спорно по-моему. Гуй под винду — это скорее C# + WPF, чем Java + Swing
Это было в секции "Почему вообще имеет смысл смотреть на шарп:"
Re: C# vs Java
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 04.09.19 20:32
Оценка: +2
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.
Вообще без разницы. Реально.

Обоснование
— Джуниоры на жабе и C# получают примерно одинаково
— Для дальнейшего роста одного языка будет мало
— За полгода-год можно оба языка изучить на уровне джуниора, а заодно javascript и подтянуть базы данных
Re[2]: C# vs Java
От: a.v.v Россия  
Дата: 04.09.19 21:56
Оценка:
Здравствуйте, gandjustas, Вы писали:


G>- Для дальнейшего роста одного языка будет мало


только вот второй должен быть или pyhon или javascript либо  С++
но никак второй из списка
Re[2]: C# vs Java
От: · Великобритания  
Дата: 04.09.19 22:13
Оценка:
Здравствуйте, Shmj, Вы писали:

C>>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>>Спасибо.

S>Java "скурвилась" после того, как попала в руки алчного Эллисона. Там большие непонятки с лицензированием, появились форки и т.д. В общем — стало все плохо

Бред.

S>.Net же наоборот — стал более либеральным, т.к. MS перешла на светлую сторону и добавила поддержку Linux на официальном уровне.

Мде. Наконец то начали делать то, что в Яве было с рождения — и уже радость.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[4]: C# vs Java
От: Michael7 Россия  
Дата: 04.09.19 22:26
Оценка:
Здравствуйте, Mystic Artifact, Вы писали:

M>>Как-то очень спорно по-моему. Гуй под винду — это скорее C# + WPF, чем Java + Swing

MA> Это было в секции "Почему вообще имеет смысл смотреть на шарп:"

Вот жеж бывает как, когда уже подустал вечером.
Re[3]: C# vs Java
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 04.09.19 22:52
Оценка: +1
Здравствуйте, a.v.v, Вы писали:

AVV>Здравствуйте, gandjustas, Вы писали:



G>>- Для дальнейшего роста одного языка будет мало


AVV>только вот второй должен быть или pyhon или javascript либо  С++


Поиск по hh:
1) (Java OR C#) AND javascript — 1 089 вакансий
2) (Java OR C#) AND C++ — 496 вакансий
3) (Java OR C#) AND python — 768 вакансий

Точно JavaScript, про C++ вообще плохая шутка.

AVV>но никак второй из списка

Зная C# хотя бы на уровне джуниора легко выучить Java на уровне джуниора. Проще работу искать будет.
Re[3]: C# vs Java
От: Shmj Ниоткуда  
Дата: 05.09.19 01:25
Оценка: 1 (1) -5
Здравствуйте, ·, Вы писали:

S>>Java "скурвилась" после того, как попала в руки алчного Эллисона. Там большие непонятки с лицензированием, появились форки и т.д. В общем — стало все плохо

·>Бред.

Введи в Goolge 2 слова и все поймешь:

Re: C# vs Java
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 05.09.19 04:40
Оценка:
C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

JavaScript. Если надо что-то серверное — пожалуйста, консольные приложения на Node.js.
Если надо десктопное — пожалуйста, Electron.
Если надо Web, ну Вы поняли...

Ещё 2 причины осталось:
— выучить JavaScript придётся по-любому, без него всё равно никуда никак.
— JavaScript можно встраивать как скриптовый движок в разные приложения.

Если Вы будете делать программу для любой коммерческой компании, там сразу возникнет требование — предоставить возможность работы как внутренним сотрудникам в локалке, так и сотрудникам работающим из интернета. А это значит что? Это значит Web-интерфейс. Куда тут без JavaScript?
Re: C# vs Java
От: Михаил Романов Удмуртия https://mihailromanov.wordpress.com/
Дата: 05.09.19 05:52
Оценка: +1
Здравствуйте, Cicero, Вы писали:

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

Я бы попробовал плясать от предложений на рынке.
Например, в Ижевске я могу с ходу назвать 5-6 относительно крупных компаний, которые имеют постоянные вакансии по .Net и только 2 с Java.
Но если речь о Москве/Питере, то это, наверное, не очень удобный способ.

Второй вариант, поискать конторы, конкретно предлагающие стажировку (чаще всего они же предлагают и бесплатное обучение, нередко без каких-либо обязательств типа "отработки N лет"). Такое делают, например в EPAM, СКБ Контур, наверняка и в других крупных компаниях это есть.

В общем, я предлагаю выбирать исходя из принципа "то, где надежнее перспективы трудоустройства".
Re: C# vs Java
От: HrorH  
Дата: 05.09.19 06:27
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?


Надо выбрать тот язык, который больше нравится.
Если пытаться изучать язык, который не нравится, ничего хорошего не выйдет.
Ну и да, важно сможет ли найти на нем работу.
Если C#, то там вакансии скорее всего в основном веб.
И тогда если человек хочет быть веб разработчиком, тогда надо еще HTML, Javascript, CSS, Typescript, React, Redux и т.д.
Либо если на стороне сервера, то тогда надо какие-то диалекты SQL.

C# vs Java
1) C# более лаконичен, а лаконичность (если ее использовать разумно) улучшает читаемость и повышает качество кода
2) В Java на сколько я знаю какая-то беда с generics (из-за стирания типов)
3) C# вроде как быстрее развивается, но правда некоторые нововведения довольно спорные (типа того же Default implementaion of interface methods , взятого вроде из Java)
4) C Java будет проще перейти на Scala или на Kotlin.
А Scala 3 будет очень интересная и мощная штука, основанная на DOT calculus.
Re[2]: C# vs Java
От: QrystaL Украина  
Дата: 05.09.19 06:34
Оценка:
Здравствуйте, HrorH, Вы писали:
HH>Если C#, то там вакансии скорее всего в основном веб.
Xamarin еще из популярного. Много подобных вакансий https://spb.hh.ru/vacancy/32605642
Re[2]: C# vs Java
От: Farsight СССР  
Дата: 05.09.19 11:55
Оценка: +5 -1 :)
Здравствуйте, Anton Batenev, Вы писали:

AB>Конечно Java — это веб, enterprise, мобильные, всякие биг-дата типа hadoop. Сегодня он готов работать за еду, а завтра у него появится семья, дети. Зачем сразу ограничивать потолок своей зарплаты формоклепством и vendor-lock?


А шарп не веб, enterprise, мобильные и всякие биг-дата? Почему только формоклепство? И сейчас, когда .net core есть, как может вендор-лок помешать?
</farsight>
Re[3]: C# vs Java
От: Anton Batenev Россия https://github.com/abbat
Дата: 05.09.19 15:07
Оценка:
Здравствуйте, Farsight, Вы писали:

F> А шарп не веб, enterprise, мобильные и всякие биг-дата?


Нет, конечно И .net core это такой же vendor-lock, только под другой вывеской.
Re[4]: C# vs Java
От: Mystic Artifact  
Дата: 05.09.19 18:08
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Нет, конечно И .net core это такой же vendor-lock, только под другой вывеской.


Почему?
Re[4]: C# vs Java
От: Farsight СССР  
Дата: 05.09.19 18:17
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Нет, конечно И .net core это такой же vendor-lock, только под другой вывеской.


Я так понимаю аргументации ждать нет смысла.
</farsight>
Отредактировано 05.09.2019 18:18 Farsight . Предыдущая версия .
Re[2]: C# vs Java
От: AleksandrN Россия  
Дата: 05.09.19 19:57
Оценка:
Здравствуйте, HrorH, Вы писали:

HH>Надо выбрать тот язык, который больше нравится.

HH>Если пытаться изучать язык, который не нравится, ничего хорошего не выйдет.

Но что бы понять, нравится ли язык, его нужно выучить. Не обязательно выучить полностью, но продвинуться в изучении значительно дальше Hello World.
Re[5]: C# vs Java
От: Anton Batenev Россия https://github.com/abbat
Дата: 05.09.19 20:59
Оценка: +1 -3
Здравствуйте, Mystic Artifact, Вы писали:

MA> AB>Нет, конечно И .net core это такой же vendor-lock, только под другой вывеской.

MA> Почему?

Почему C# — это не веб? Потому что современный веб — это php / node / python / java / golang / c++ (в упоротом хайлоаде) с редкими вкраплениями экзотики. Почему это не мобильные, где бал правит android и java/kotlin? Почему это не бигдата, где hadoop / hbase / spark / etc на java (или с++ типа ClickHouse)? Почему это не ынтырпрайз, где слова "java" и "кровавый" давно уже ассоциативны?
github.com/abbat
Re[6]: C# vs Java
От: Mystic Artifact  
Дата: 06.09.19 00:26
Оценка: +3
Здравствуйте, Anton Batenev, Вы писали:

AB>Почему C# — это не веб? Потому что современный веб — это php / node / python / java / golang / c++ (в упоротом хайлоаде) с редкими вкраплениями экзотики. Почему это не мобильные, где бал правит android и java/kotlin? Почему это не бигдата, где hadoop / hbase / spark / etc на java (или с++ типа ClickHouse)? Почему это не ынтырпрайз, где слова "java" и "кровавый" давно уже ассоциативны?

Да нет же, почему это вдруг vendor-lock под другой вывеской.
Про остальное — это эмоции, с довольно спорными выводами.
Re: C# vs Java
От: alex_public  
Дата: 06.09.19 00:59
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

Java.

Обоснование: у C# заметно лучше чем у Java сам язык. Всё остальное лучше у Java.

P.S. Моё мнение тут наверное одно из наиболее объективных, просто потому, что я сам не использую ни тот, ни другой язык. Хотя не плохо знаком с обоими.

P.P.S. А вообще список очень сомнительный — такое ещё нормально было услышать в 2000-ые, но не сейчас. Ну да ладно, что спросили, на то и ответили. )
Re[4]: C# vs Java
От: serb Россия  
Дата: 06.09.19 03:27
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, ·, Вы писали:


S>>>Java "скурвилась" после того, как попала в руки алчного Эллисона. Там большие непонятки с лицензированием, появились форки и т.д. В общем — стало все плохо

S>·>Бред.

S>Введи в Goolge 2 слова и все поймешь:


Иногда лучше молчать
Re: C# vs Java
От: varenikAA  
Дата: 06.09.19 04:28
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

Clojure конечно. Ибо C# и java — это ООП, ОРМ и прочие черные ящики и ящики пандоры.

Вот пример из кложы:
(get [1 2 3] 1)
;;=> 2

(get [1 2 3] 5)
;;=> nil

(get [1 2 3] 5 100)
;;=> 100

(get {:a 1 :b 2} :b)
;;=> 2

(get {:a 1 :b 2} :z "missing")
;;=> "missing"
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[2]: C# vs Java
От: Cyberax Марс  
Дата: 06.09.19 05:20
Оценка: +1 -1 :))
Здравствуйте, varenikAA, Вы писали:

AA>Clojure конечно. Ибо C# и java — это ООП, ОРМ и прочие черные ящики и ящики пандоры.

AA>Вот пример из кложы:
Это из области любителей BDSM, да?
Sapienti sat!
Re[6]: C# vs Java
От: Farsight СССР  
Дата: 06.09.19 05:37
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Почему C# — это не веб? Потому что современный веб — это php / node / python / java / golang / c++ (в упоротом хайлоаде) с редкими вкраплениями экзотики. Почему это не мобильные, где бал правит android и java/kotlin? Почему это не бигдата, где hadoop / hbase / spark / etc на java (или с++ типа ClickHouse)? Почему это не ынтырпрайз, где слова "java" и "кровавый" давно уже ассоциативны?


Сорян, я не сразу понял что ты просто потроллить решил.
</farsight>
Re[3]: C# vs Java
От: varenikAA  
Дата: 06.09.19 06:04
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, varenikAA, Вы писали:


AA>>Clojure конечно. Ибо C# и java — это ООП, ОРМ и прочие черные ящики и ящики пандоры.

AA>>Вот пример из кложы:
C>Это из области любителей BDSM, да?

Если полиморфные функции(они же мультиметоды) — это извращение, то что такое копипаста в C# и java — богоугодные дела?
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[4]: C# vs Java
От: Cyberax Марс  
Дата: 06.09.19 07:41
Оценка:
Здравствуйте, varenikAA, Вы писали:

C>>Это из области любителей BDSM, да?

AA>Если полиморфные функции(они же мультиметоды) — это извращение, то что такое копипаста в C# и java — богоугодные дела?
Мультиметоды не нужны, как и вообще большая часть всего ООП.
Sapienti sat!
Re: C# vs Java
От: student__  
Дата: 06.09.19 07:56
Оценка:
Здравствуйте, Cicero, Вы писали:

C>молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

А самого этого молодого человека забанили в Интернет, что он не может задать этот вопрос самостоятельно? И по какой специальности учится? M.б. ему эти Java / C# как собаке пятая нога. Иначе (если все уже давно выбрано), нет предмета для обсуждения — просто ищется по ключевым словам на сайтах вакансий типа hh.ru , для какого языка вакансий больше, такой и выбирается для изучения. No brainer для человека, претендующего на получение в/o.
Re[4]: C# vs Java
От: vorona  
Дата: 06.09.19 07:56
Оценка:
Здравствуйте, varenikAA, Вы писали:

Мультиметоды есть в c#
Re: C# vs Java
От: MasterZiv СССР  
Дата: 06.09.19 08:38
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java)


Python
Re[2]: C# vs Java
От: AlexGin Беларусь  
Дата: 06.09.19 10:52
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Но. Если устраиваться на работу, и с нуля, то конечно ява. Больше предложений, ява вообще везде и всюду, начиная от облаков и кончая разработкой под мобильники, ведро.

S>Вроде даже пытается C# догонять по фичам. Кроссплатформенность из каропки.

Там выше указывалось, что в регионе, где проживает ТС — программирование на C# более популярно и вакансий больше именно на C#

P.S. ИМХО понимая C# изучить Java проще, нежели наоборот.
Re: C# vs Java
От: Calc Россия  
Дата: 06.09.19 16:11
Оценка: 1 (1) +1
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.

C>Спасибо.

C# это сразу привязка к платформе, кроссплатформы пока мало, доков мало. Т.е. есть вариант завязнуть на Windows и стать снобом как половина этого сайта.
А так язык интересный.

java — овердофига документации, статей, сфер применений с примерами. Простая как пробка (дженерики с первого раза никто не осваивает)
java7 даст базу. java8+ даст понимание кложуров и других штук, можно сразу в одном инструменте сравнить что и как.
после java очень легко уехать на kotlin (для надо всего 2-3 дня попрограмировать и всё)

всё что пишут про jvm вполне правда, но на старте это не проблемы программиста, не будет таких систем и таких запросов.
java очень хорошо структурирована, изучение java collections практически заменяет книгу Вирта по структурам данных.
java очень хорошо лечит перфекционизм — основная проблема современных разработчиков.
на java можно погрузиться сразу в разные направления
1) консоль
2) gui
3) сети (библиотек много очень хороших, netty, akka)
4) попробовать себя в мобильной разработке (android)
5) попробовать пощупать windows и linux без особых проблем
6) купить сервер за 100 рублей и запустить там код тоже реально
7) с тем же iis/apache CGI можно поиграть
8) IDE для java часто написаны на java. Нет пока лучше IDE чем IDE от JetBrains (Intellij IDEA). На первых этапах это очень хорошая помощь именно от IDE (есть еще atom, eclipse, но после idea другие не нужны)
т.е. с java есть проблемы, но свободы больше чем с C#

C# тоже всё это умеет, но как писали это привязка к Microsoft, т.е. к её политике и другим направлениям. За последние 10-15 лет много направлений умерло без рождения приемников, т.е. полученные знания оказались ненужными.
У больших компаний есть политика воспитывания разработчиков под себя. Часто дают те технологии, которые интересны маркетингу, а не it сообществу. (те же WinAPI, MFC и другие штуки сдохли, другие платформы так быстро не отказываются от своих технологий)
С кросплатформой и опенсорсом такое бывает реже. Прочитал ты про сигналы в unix системах, взял любую POSIX, и оно работает.

с java на C# всегда можно переехать, а вот с C# на java... (почитайте сами что тут понаписали адепты C#)
но быстрее будет переезд на kotlin.
Тот же Rx уже есть на java, можно пощупать Акторы (используются erlang). Причем это одинаково будет запускаться на любой ОС.

Кто то скажет, что C# и мобилки тоже совместимы, но рынок кросплатформенных мобилок то растет, то падает. Если года 4 назад был вал на кросплатформу, то сейчас идет обратная ситуация, старые приложения переводят на "натив".
Для создания MVP кросплатформа хорошо, но проще сделать прототип в вебе. Сейчас IOS и Android закручивают гайки, кроссплатформа часто не успевает за этими изменениями, плюс редко один человек может знать
различия IOS и Android и тонкости их использования.

Тут еще предлагали Python, но это как второй язык можно изучать, больше пользы будет, если его изучить вторым (или как второй язык).

PS. Для адептов C# повторяю, я не говорю что C# плохой, я говорю что C# хуже java из-за ограничений, накладываемых большой корпорацией и упоротостью некоторых личностей.
Re[2]: C# vs Java
От: Mystic Artifact  
Дата: 06.09.19 16:24
Оценка: +2
Здравствуйте, Calc, Вы писали:

Хорошо пишешь. Но интересно куда и када это WinAPI здохли?
Re: C# vs Java
От: Masterspline  
Дата: 08.09.19 00:02
Оценка:
C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?

Kotlin.
  1. Он проще, чем Java.
  2. Код на нем короче. Возможностей у языка больше (корутины, например, которые радикально упрощают асинхронный код, например, когда нужно расчеты или загрузку по сети делать в одном потоке, а результаты использовать в другом, например, отрисовку загруженного контента).
  3. Есть как в варианте JRE (основная платформа), так и Native.
  4. Разработка под Android уже целиком перешла на Kotlin. Новые приложения практически только на Kotlin, Java только для уже существующих приложений, да и то, пока их постепенно на Kotlin не перепишут (в телеграм канале, где нанимают мобильных разработчиков за последние 2 недели при упоминании Android пока только сбербанк написал про Java, остальные либо Kotlin/Java, либо только Kotlin). Бэкенд пока больше под Java, но и там Kotlin используется, потому что код на нем проще, короче и подключить его к Java проекту очень просто.
  5. Очень похож на Swift, поэтому переход на него (для разработки под iOS) будет довольно прост.
Таким образом, начав с Kotlin (Android) довольно просто будет перейти (при желании или необходимости) к разработке бакендов или под iOS (как на Swift, так и на Kotlin Native под iOS). Java сейчас нужна в режиме ReadOnly, остальное пишется на Kotlin. Хотя, разумеется Java из энтерпрайза быстро не уйдет. И даже в небольших приложениях, где, большая часть кода использует какой нибудь специфичный для Java фреймворк, заменить этот код целиком быстро нет смысла, так что Java еще поживет какое-то время.
Re: Популярность не приемущество
От: igor-booch Россия  
Дата: 08.09.19 17:47
Оценка:
Тут пишут что Java более популярна и надо выбирать её. Но популярность может обернуться недостатком. Например одно время была популярны профессия юриста и экономиста. И что? Идут экономисты с высшем образованием работать менеджерами по продажам, юристы консультантами колл-ценстров. Java-программистов становится всё больше и вместе с ними становится всё больше и больше некачественного и legacy кода, потому-что идут в Java все кому не лень. Рынок перегревается. Скоро маятник качнётся в другую сторону.
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания
http://rsdn.ru/Info/rules.xml
Отредактировано 09.09.2019 9:50 igor-booch . Предыдущая версия .
Re[2]: C# vs Java
От: Mr.Delphist  
Дата: 11.09.19 16:13
Оценка: +2
Здравствуйте, Calc, Вы писали:

C>те же WinAPI, MFC и другие штуки сдохли, другие платформы так быстро не отказываются от своих технологий


Скажите это Андроид-разработчикам. Который там уже уровень API сегодня? Вроде их десятка три всего лишь


Торжество backward compatibility от Гугла:

https://developer.android.com/about/versions/pie/android-9.0-migration

However, there's another aspect to testing: Android 9 introduces changes to the Android platform that can affect your app's behavior or break the app altogether, even if you do not change your targetSdkVersion. For this reason, it is important that you review the key changes in table 1, and test any fixes that you implement to accommodate the changes.


А, ну это самый свежий андроид, там можно. Давайте посмотрим на торжество стабильности в предыдущих версиях:

https://developer.android.com/about/versions/oreo/android-8.0-changes

Along with new features and capabilities, Android 8.0 (API level 26) includes a variety of system and API behavior changes. This document highlights some of the key changes that you should understand and account for in your apps.
Most of these changes affect all apps, regardless of what version of Android they target. However, several changes only affect apps targeting Android 8.0. To maximize clarity, this page is divided into two sections: Changes for all apps and Changes for apps targeting Android 8.0.


Хмм, что-то опять не то. Видимо, раньше точно было лучше?

https://developer.android.com/about/versions/nougat/android-7.0-changes

When an app is running on Android 7.0, but targets a lower API level, and the user changes display size, the app process is killed. The app must be able to gracefully handle this scenario. Otherwise, it crashes when the user restores it from Recents.
You should test your app to ensure that this behavior does not occur. You can do so by causing an identical crash when killing the app manually via DDMS.
Apps targeting Android 7.0 (API level 24) and above are not automatically killed on density changes; however, they may still respond poorly to configuration changes.
...
Due to a bug in previous versions of Android, the system did not flag writing to a TCP socket on the main thread as a strict-mode violation. Android 7.0 fixes this bug. Apps that exhibit this behavior now throw an android.os.NetworkOnMainThreadException.
...
Many platform APIs have now started checking for large payloads being sent across Binder transactions, and the system now rethrows TransactionTooLargeExceptions as RuntimeExceptions, instead of silently logging or suppressing them.


Да что же это такое. И ты, Брут?

https://developer.android.com/about/versions/marshmallow/android-6.0-changes

Along with new features and capabilities, Android 6.0 (API level 23) includes a variety of system changes and API behavior changes. This document highlights some of the key changes that you should understand and account for in your apps.
If you have previously published an app for Android, be aware that these changes in the platform affect your app.


  Скрытый текст
Re: C# vs Java
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 11.09.19 17:24
Оценка:
Здравствуйте, Cicero, Вы писали:

C>Какой бы язык из ограниченного списка(C#/Java) Вы посоветовали бы выбрать для освоения молодому человеку(студент) который собирается профессионально заняться программированием и в ближайшие время(от полугода до года) начать устраиваться работать?


TypeScript/HTML5/CSS/React/Node/Express/Mongo/Redis/AWS
Re: C# vs Java
От: Vladek Россия Github
Дата: 12.09.19 12:02
Оценка:
Здравствуйте, Cicero, Вы писали:

C>И для определенности 5 пунктов Вашего обоснования.

C>P.S. Понятно что вопрос вкуса. Но давайте немного абстагируемся от своих вкусов и ответим на вопрос обоснованно.
C>Спасибо.

Оба, если возможно. Лично я выбрал C# и нужда пока не заставила меня от него отказаться, а просто так Java изучать лень.
Re[4]: C# vs Java
От: Pyromancer  
Дата: 12.09.19 14:08
Оценка:
Здравствуйте, varenikAA, Вы писали:

C>>Это из области любителей BDSM, да?


AA>Если полиморфные функции(они же мультиметоды) — это извращение, то что такое копипаста в C# и java — богоугодные дела?


Не, настоящие извращения это загнать весь собственно исполняемый код куда-нибудь в сгенерированый из аннотаций, спринговских иксэмелей и всего прочего. В Java этим изрядно злоупотребляют
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.