LINUX.ORG.RU

C# или Java в 2025 году?

 ,


0

5

Всем привет! Учусь в колледже на 4 курсе. Подходит время писать диплом, встал вопрос о выборе инструмента (языка) для написания бэкенд-приложения с фронтендом на Vue. С фронтендом преподаватель согласен, что это JS и Vue, а с бэкендом мы никак не можем договориться.

Поначалу он говорил, чтобы я писал на Python. Я сказал, что не буду этого делать, он мне лично неприятен и какой-то надоедливый — он везде, из каждого утюга, о нем. Потом он, наверное, сжалился и разрешил писать на C#. К тому времени я втихаря начал учить от него Spring.

И когда он спросил, определился ли я с языком, и я сказал, что буду писать на Java, так как хочу на нем работать, в ответ он меня наругал. Сказал, что я ничего не понимаю и что лучше писать на шарпах. Это у меня вызвало странное чувство и непонимание.

Может, я правда что-то не понимаю? Или я глуп для всего этого? Почему лучше шарпы, а не джава? Причем он не старый дед с сединой, а молодой, типа до 35. Помогите, пожалуйста, я уже не понимаю, что делать. Нужно уже готовить тему диплома, а я даже ничего из фреймворков еще не смотрел.



Последнее исправление: pixelwx (всего исправлений: 1)
Ответ на: комментарий от Wapieth

стильно-модно-молодёжно всякие go и rust

А имеет ли смысл смешивать? Типа низкоуровневое на Rust а потом через интеграцию использовать из go ?

LLM: «экспортировать C-совместимые функции из Rust (#[no_mangle], extern «C») и вызывать через cgo.»

Saakx
()
Последнее исправление: Saakx (всего исправлений: 1)

Я бы писал на Яве. Она мне больше по душе, чем решето.

Объективно:
Ява заведëтся хоть где, и хоть на чëм: будь-то WinXP на OpenJRE, либо MacOS с Oracle JRE.
У шарпов: либо Mono, либо .NET. Насколько я знаю, они не взаимозаменяемы.

С точки зрения религии:
C# – порождение идолища поганого по имени Макрософак, которое создано, чтобы устранить конкуренцию на рынке ЯПов.
Java – разработка простого рабочего из Sun Micro Systems. В линукс-сообществе конечно с большей охотой будут ужавать второе. К тому же, есть OpenJDK под «православной» GNU GPL.

Яву, Яву взял я на халяву…

PunkPerson
()
Последнее исправление: PunkPerson (всего исправлений: 1)
Ответ на: комментарий от Wapieth

Ну и javascript само собой, ибо в браузере он.

Можно и в С++ без использования WWW.
Вот WASM интересен (не для браузеров), но пока не в приоритете насущных задач.

anonymous
()
Ответ на: комментарий от PunkPerson

Интересно: что будет с ними, когда хайп пропадëт?

Всё как обычно.
Те кто использовал, продолжат использовать, а те кто «пальцы веером распускает» новый хайп будут хвалить.

Rust конечно интересен и «тема не закрыта».

anonymous
()
Ответ на: комментарий от PunkPerson

Интересно: что будет с ними, когда хайп пропадëт?

Вброшу,

Другое интересно - «Сколько лет ещё ЯП будут востребованы».
«Дым уже валит, но огня пока нет».

anonymous
()

время писать диплом

вопрос о выборе инструмента (языка) для написания бэкенд-приложения с фронтендом на Vue

С фронтендом преподаватель согласен, что это JS и Vue

А не препод ли должен стек подсказать?

Поначалу он говорил, чтобы я писал на Python. Я сказал, что не буду этого делать, он мне лично неприятен и какой-то надоедливый — он везде, из каждого утюга, о нем.

Ну и зря. Увеличиваешь себе шансы на проблемы, причем с таким подходом не только при дипломе.

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

Обосновал хоть?

Это у меня вызвало странное чувство и непонимание.

Преподы зачастую погрязли в домыслах и полном отсутствии опыта, неся чушь в массы, основанную на каких-то своих подкроватных потугах. За редким исключением, когда препод в прошлом работал в нужной сфере и имеет опыт… Но я сомневаюсь, что такой человек пойдёт в преподы.

Может, я правда что-то не понимаю?

Да, и это нормально в студенчсестве. Понимание процессов и умение на них реагировать придёт годам к 30, когда поработаешь с десяток лет. Пока что, сталкиваясь с таким, ты будешь удивляться, негодовать и желать пойти против потока.

Только на надо: самое правильное в данном случае сделать так, как хочет преподаватель. Диплом тебе нужен один раз в жизни → чтобы его сдать и положить на полку. Ну максиум потом еще под чашку поставишь. А нервы тратить на всю эту срачельню… Да зачем?

Почему лучше шарпы, а не джава?

Ну смотри. С++ лучше Раста. Пишите люди не крестах, на расте пишут идиоты!

Причем он не старый дед с сединой, а молодой, типа до 35.

А ещё возраст не показатель образованности :)

Zhbert ★★★★★
()
Ответ на: комментарий от anonymous

А кто-нибудь с нуля пишет кроссплатформенные поекты на шарпе? Кроме Мигелюшки в своё время, который в итоге раскрыл свою ссущность. Я думал, .net core - это удел тех, кто напейсал венда-онли серверный софт, насоушавшись баллмеровских маркетологов, и потерял часть рынка.

Wapieth
()
Ответ на: комментарий от Zhbert

Но я сомневаюсь, что такой человек пойдёт в преподы.

Где-то от кого-то слышал, что в преподователи по программированию идут те, кто не состоялся как программисты. И пока видел лишь подтверждение этим словам)

daniyal
()

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

daniyal
()
Ответ на: комментарий от Zhbert

За редким исключением, когда препод в прошлом работал в нужной сфере и имеет опыт… Но я сомневаюсь, что такой человек пойдёт в преподы.

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

snake266 ★★★
()
Последнее исправление: snake266 (всего исправлений: 1)

Жесть какая. Делай на Java. Препод потом сам спасибо скажет, когда увидит рабочий проект на Spring Boot 3 + Vue 3 + Docker. Это выглядит в дипломе в 2025 году гораздо современнее, чем ASP.NET Core + Blazor или что он там хотел. Удачи с дипломом, ты всё делаешь правильно!

anthonyleeb
()
Ответ на: комментарий от anthonyleeb

Vue 3 + Docker

Это выглядит в дипломе в 2025 году гораздо современнее

современнее

Ну у тебя и вещества:

ASP.Net Core 10 11 ноябрь 2025

Spring boot 3 20 ноябрь 2025

Аж на 9 дней современнее.

Ну и vue3 + Docker – аж полдиплома к собственно жабе не имеет никакого отношения и никто кроме религии не запрещает использовать с последним аспнетом в докере.

anonymous
()

Пиши на Java, он кроссплатформенный и поможет потом писать код под андроид, а C# это виндовая вещь.

Погуглил, ИИ выдаёт что C# стал тоже кроссплатформенным. В любом случае Java это родной язык для андроид, а сдаётся мне что в будущем весь софт будет ориентирован на мобильные устройства, так как телефон есть даже у тех, кто не пользуется компом.

На habr интересно почитать.

AZJIO
()
Последнее исправление: AZJIO (всего исправлений: 3)

язык кроссплатформенный и код кроссплатформенный разные вещи

ИИ Да, это разные вещи: «язык кроссплатформенный» относится к самому языку программирования, который может быть использован для создания программ, работающих на разных платформах, тогда как «код кроссплатформенный» означает, что конкретный программный код написан таким образом, чтобы он мог работать без изменений или с минимальными изменениями на разных операционных системах или аппаратных архитектурах

И вот поэтому я пишу на PureBasic, у него код кроссплатформенный, хотя иногда требует небольшой доработки, но благо там есть условие

CompilerIf #PB_Compiler_OS = #PB_OS_Linux
    ; какой-то специфичный для Linux
CompilerEndIf

которое позволяет прямо на участке кода сделать развилку и в зависимости от ОС вставить нужную часть кода для конкретной ОС

AZJIO
()
Ответ на: комментарий от AZJIO

C# это виндовая вещь.

Погуглил

ИИ выдаёт что C# стал тоже кроссплатформенным

Осторожно. Ты так еще узнаешь, что Деда Мороза нет, а дядюшка Ларри из Оракла так и вообще акула капитализма и тихонько вносит изменения в лицухи всего что выпало из трупа Sun Microsystems. И нет, он никогда не нажрётся.

В любом случае Java это родной язык для андроид

А это просто уже маняврирование и приплетание не по теме к уже гугловому вендорлоку.

slackwarrior ★★★★★
()
Ответ на: комментарий от AZJIO

язык кроссплатформенный и код кроссплатформенный разные вещи

ИИ Да, это разные вещи: «язык кроссплатформенный»

ИИ

И потом тебя забанят за оверквотинг ИИшенкиных галлюцинаций и кэпа.

slackwarrior ★★★★★
()
Ответ на: комментарий от AZJIO

в будущем весь софт будет ориентирован на мобильные устройства

«Ничего не будет. Ни кино, ни театра, ни книг, ни газет – одно сплошное телевиденье» (с) и не менее трех секс-роботов. Каждому. «Но есть нюанс» (с)

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

Осторожно. Ты так еще узнаешь, что Деда Мороза

Так доказательств что ты всезнайка нет, кроме твоего вброса обвинений. Откуда мне знать что ты не только что узнал из моего гуглинга?

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

AZJIO
()
Последнее исправление: AZJIO (всего исправлений: 1)
Ответ на: комментарий от AZJIO

ИИ врёт. Ну да, если тебе нужна консолька или вебчик (при том почти не ограниченный в сравнении с виндовым), то да. А на практике GUI нет (авалония есть конечно, но у неё и багов много и болячки не вылечены детские). Часть либ оффтопик онли и даже часть вебни тоже на оффтопик жестко завязаны. Ах да, ещё и с локализацией будет попоболь, если разрабатывать не из под Windows (потому как вместо геттекста там студия классы налету генерит, хотя есть варианты другими способами локализацию делать, но мужики могут не понять).

anonymous
()
Ответ на: комментарий от AZJIO

Откуда мне знать что ты не только что узнал из моего гуглинга?

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

Потом ты полирнул свой фейл галюнами нейронки. Этот паттерн поведения вообще характерен для не очень разбирающихся в примерно любом вопросе – мало того, ленящихся разобраться.

Каждый вчера родившийся уже эксперт во всём.

Nick: AZJIO ID: 187647

Дата регистрации: 07.05.21 14:14:09 GMT+04:00

Расскажи еще про вчера родившихся. Главное ИИшенку хлебушком заедай.

anonymous
()
Ответ на: комментарий от anonymous

ИИшенку

А чего у тебя на ИИ истерика? Сколько раз из 10 он дает неправильный результат? Ноль! Да он не человек, сложный вопрос он обрабатывает не лучше гугла. А те люди на хабре что я дал ссылку, которую ты проигнорил для тебя боты?

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

AZJIO
()
Ответ на: комментарий от anonymous

А на практике GUI нет (авалония есть конечно

Продолжаем делить на ноль. Авалония есть. И все там нормально. Переехали софт с WPF на линукс. Брат жив.

но у неё и багов много и болячки не вылечены детские

Не больше чем у любого опенсорца с разметкой и биндингами.

Часть либ оффтопик онли и даже часть вебни тоже на оффтопик жестко завязаны

Ну перестаньте уже. Для dotnet достаточно всего. Особенно если не путать древний NetFramework застывший навечно на горизонте событий и Net, который бывшее Core.

Ах да, ещё и с локализацией будет попоболь, если разрабатывать не из под Windows (потому как вместо геттекста там студия классы налету генерит, хотя есть варианты другими способами локализацию делать

Опять взаимоисключающие параграфы. Нет никакой там попоболи – потому что есть System.Globalization и CultureInfo, и переводные ресурсы подставляются из коробки как например Resources.ru.resx или Resources.fr.resx. Хотя даже в консоль с настроенной локалью все выводится как надо ;) А те «непонятливые мужики», которые хардкодят текст, предназначенный для вывода юзеру и хардкоженные строки на экран выводят «как есть», должны страдать.

, но мужики могут не понять

Эти «мужики» все делом заняты – превозмогают на ровном месте. А могли без попоболи доки уже прочитать.

anonymous
()
Ответ на: комментарий от AZJIO

Сколько раз из 10 он дает неправильный результат? Ноль!

Кто «он»? ИИшенка не то чем тебе кажется. Удачи в жизни с таким подходом, когда 10 раз для тебя статистика – или ты не способен проверить пургу которую она тебе подсовывает в качестве «фактов» :)

А те люди на хабре что я дал ссылку, которую ты проигнорил для тебя боты?

Хабр тут вообще не в почете. Не вчера б ты тут родился, знал бы. А ты и по ссылке своей не ходил. Это заметно. Там люди тезис «некросплатформенности» фактически опровергли. И да, дотнет используется в эмбеде. Ровно в тех же местах что и жаба ;)

полаять на ответивших всегда пожалуйста

Не отвечай фигню про то в чем не разбираешься. И не мажься ИИшенкой, когда так и не разобрался.

anonymous
()

Так js и для бэка пригоден. Только сам js напрямую использовать не надо, надо сразу брать typescript. Если же выбор только между шарпом и джавой, то на шарпе писать поприятнее будет. Как язык шарп оставил джаву далеко позади, а asp.net core сейчас ничем не хуже чем spring.

amm ★★
()
Ответ на: комментарий от anonymous

Кто «он»? ИИшенка не то чем тебе кажется.

Да я на аппаратуру даже «он» говорю и проблем с этим нет, нет, только идиоты будут придираться, а моя любимая фраза, когда винда пишет что не может отключить флешку, выдергиваю приговаривая «а говорил не можешь».

Хабр тут вообще не в почете

Да понятно, только ты в почёте

тезис «некросплатформенности» фактически опровергли.

Для когото стакан полупустой, для когото полуполный

AZJIO
()