Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 5
×

Переход от С++ к .Net

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Всем доброго времени суток.
являюсь подуставшим от суровой жизни с++ разработчиком, хочу попробовать поработать .net разработчиком )
впринципе языками(c#, f#) владею в определенной мере.

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

вобщем чем живут сейчас .net разработчики?

п.с. не asp и прочий web

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Для хорошего программиста всегда найдется хорошая вакансия. Чем плохи, например, вот эти company.yandex.com/jobs/index.xml Или можно попробовать себя в геймдеве.

являюсь подуставшим от суровой жизни с++ разработчиком, хочу попробовать поработать .net разработчиком )

А что там легче? Я так понимаю, у каждого языка своя область и свои геморры

лично мне тяжело найти какуюто интересную с++ работу

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

это вопрос к рынку труда, 90% рассмотреных за последный месяц вакансий примерно «у нас есть продукт который написан на __древняя_технология__ в 95м году и нам нужны разработчики для его поддержки и развития»

Созидательной работы, если Вы меня понимаете )

Я то вас понимаю, но поймите и вы меня, у каждого свои критерии созидательной работы.
Можете привести примеры созидательной работы в отрыве от языка?

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

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

Тогда больше всего созидательной работы в самых свежих языках)

воплощение, реализация какойто идеи — созидательная работа
рефакторинг, адаптация, существующей реализации — тоже
эм. попробуйте представить себе как это выглядит вообще — достаточно богатая продуктовая контора , постоянно в режиме борьбы (за место под солнцем), long term.
у меня получается в основном это будет веб либо отдельные подразделения «толстых» контор — гугль, ms, амазон
т.е. если трактор не заводить, мне пришлось уходить в веб (и даже в пшп, гг) , но зато это полностью соответствует вашему определению «созидательной работы»

не веба в дот нете в реальности хрен да нихрена.
все знакомые с++ не хотевшие веб переползли в разный мобайл или осели в геймдеве.

не веба в дот нете в реальности хрен да нихрена.
что это значит? (реально не понял)

Ну это он так «раз, два и обчелся» перефразировал

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

Я слышал, что сишники переходят под Objective-C.

пробовал, делал пару проэктов, но это слишком б-гомерзко, да простят меня адепты, но язык и фреймворк примитивные, и слабовыразительные )
с удовольствием вернулся на с++ )

Спасибо, интересно было услышать мнение реально попробовавшего сделать такой переход!

на дотнете сложно но можно найти нормальную работу, где можно писать десктоп.
Но с практически 100% вероятностью это все равно клиент-серверная архитектура и энтерпрайз.
Так что наверное это WPF, WCF, WWF + MSSQL(ADO.NET/EF/NHibernate) .

я тяготею к каким-либо интересным проэктам,

Это как? В NASA не пробовал посылать CV?
А помоему разумению, всяк интерес заканчивается недельки через две -три, а посля начинаются серые будни с разбором того

«говна мамонта»
, который ты наваял за эти недели

Наваять мамонта за 2-3 недели? Да вы, батенька, гигант мысли!

В NASA не пробовал посылать CV?
В NASA, SpaceX и подобные конторы берут только US citizens

Ну тогда только в Рашу, подымать проекты по покорению Марса

Смысл выражения «говно мамонта» — очень древний код, который неизвестно кто написал фиг знает с каким точно ТЗ. Нередко это ещё и говнокод в прямом смысле слова. Иногда попадаются такие копролиты, что диву даёшься. Мне случалось переписывать целые модули с коэффициентом сжатия кода ДВА ПОРЯДКА! (то есть тыща строк превращалась в десяток) При этом ещё и рос функционал и уходили баги (табунами) И такое сплошь и рядом в крупных продуктах, за которые просят сотни (иногда и тысячи) дохлых президентов.

Мое мнение — в этом глубокого смысла нет вообще. Разве что Вы тяготеете к геймдеву и Юнити. Хорошее знание плюсов позволяет легкий «дауншифтинг» на кучу более простых языков и шарп среди них никак не самый выгодный. Ладно еще ява — на нее и спрос пока бешеный и мобильный дев в ближайшие годы никуда не денется.
А монстроидальные и извратные МС технологии находятся в состоянии перманентной войны со всеми остальными стандартами и медленно но верно сливают позиции.

А монстроидальные и извратные МС технологии находятся в состоянии перманентной войны со всеми остальными стандартами и медленно но верно сливают позиции.

это же о каких стандартах и технологиях речь ?

Один XML-RPC чего стоит. Из того что навскидку вспомнил.

Можете навскиду вспомнить что-то кроме технологии 15 летней давности? Которая уже давно в стеке MS интеграции вытеснена другими стандартами.

SOAP-ом? Еще лучше...

А SOAP чем то хоть не угодил?

Как минимум представлениями МС о том, что все на свете устройства подключены к сети темной оптикой и пару лишних мегабайт для них это нефиг делать. Скайп и Линк для мобильных устройств наглядно показывают что в итоге выходит на практике.

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

Я в основном с такими архитектурами и сталкивался.
Но однако ж это не помешало им запихнуть этих монстров (или их вариации) в мобильных клиентов.

ну это просто неудачный пример использования)
Я он тут недавно видел сайтик который с помощью всяких аджаксов подгружал кучу контента и этот самый контент в штмл виде (ну это шоб еще потом время на всякие биндинги-рендеринги не тратить) кешировал
Ну от прямо в лоб так и сделано:
Сделали в жаваскрипте дикшионари
и в этот дикшионари по урлу (который был там ключом) запихивали куски готового штмл
И все долго удивлялись почему это на всяких андроидах тупит неимоверно)
Но это ж не значит что штмл плох
просто его не правильно приготовили.

Клева!
А можно было еще на яваскрипте вебсерверок налабать и базейку и сгрузить все туда при входе на сайт! )))

Простите, но если человек подтирается наждачкой — это не проблема её производителя. Все современные майкрософтовские веб-сервисы поддерживают РЕСТ.

а что лучше SOAP, что на Джаве юзают вместо SOAP? давайте, расскажите нам.

На Джаве юзают тот же СОАП. Но часто адекватной заменой является РЕСТ.

Вопрос риторический был.
Там где нужен SOAP, REST — не альтернатива.
Это все равно, что пытаться реляционку заменить nosql базой без схемы данных.

Универсализация, которую дает соап, мне лично кажется совершенно излишней в реальной жизни.
Да — можем теоретически пинать любой эндпоинт с любыми аргументами етц. Но ведь реально их же будет в приложении конечное количество и нам все равно нужно четко их знать чтобы дергать со стороны клиента. Зачем тогда этот «тюнинг в зоопарке», который по сравнению с тем же джейсоном навесит на мелких функциях нам 300% сетевого оверхида?

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

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

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

В порядке наброса: JSON, Protobuf (последнее в случае если счастье наступило и ничего не будет меняться)

SOAP это протокола для обмена данными, в первую очередь. REST тоже работает с xml . В чем наброс и как это к мс относится?

Хорошее знание плюсов позволяет легкий «дауншифтинг» на кучу более простых языков и шарп среди них никак не самый выгодный
Позвольте полюбопытствовать, какие языки, по вашему мнению, тогда «самые выгодные» ?

Ну так я ж написал — ява сейчас рулит (собственно и по вакансиям видно).
Может еще рельсы, но это чисто предположение.
Ну а ObjC так вообще праздник для души с точки зрения простоты работы, но явно менее выгоден чем ява, если только не фрилансить под IOS.

Ява это да , не спорю.
А вот тот же рубби — это число скриптовый язык и ставить в один ряд с Жавой и Шарпом я н стал бы.
А вот на счет ObjC... я вот не уверен на счет его портируемости, но по моему дальше MacOS он нигде не используется ...

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

десктопа сейчас мало
в основном таки придется нырять в веб (даже ихний впф это очень похожее на веб)

(даже ихний впф это очень похожее на веб)
Каким местом?

Десктоп:
WPF, Caliburn/MVVM Light Toolkit/Prism

БД:
EF/NHibernate.

IOC/DI:
Spring.NET

OC/DI:
Spring.NET
чего вдруг Джава технология помеж набора от Ms?

Потому как лучший IoC/DI для .NET.

Те же что и у обычного IoC/DI движка — но и плюшки которые есть в Spring — управление транзакциями, интеграция с NHibernate, «seamless» интеграция c серверами сообщений MSMQ/Apache/etc, классный движок валидации, хорошие примочки для Web. И много чего еще.

Может он вам просто удобен, что можно через нугет поставить и никакого кода не надо писать кроме маппинга типов для ваших проектов? Если не всё, то большинство из перечисленного уже имеет готовые шаблоны в Unity, Autofac, Ninject и т.д. Стоит за этими фичами функциональность Life Time managers, dependency scope — она так же доступна у решений от МС, причем для веба это тесная интеграция с IIS модулями, чем я предполагаю Spring.NET врядли может похвастаться, к тому же раз уж речь про дот нет, то это явно будет интересней чем интеграция с Apache + я не слежу за тем что происходит в спринге, но если там до сих пор нету out of box флюента маппинга, то он точно не может быть самым удобным.

Вы имеете в виду, что не имеет смысл использовать отдельный громоздкий IoC framework вроде Spring.NET?

я имею в виду — очень сомнительно, что Spring.net

Потому как лучший IoC/DI для .NET

А, это понятно! Я просто хотел попросить поделиться, что вы используете.

Ninject
мне известен,
Autofac
не использовал. Может что-то еще почерпну для себя.

Я думал Юнити это только геймдев

Unity это родной DI контейнер от MS. Речь не о игровом движке само собой.

Семен-семеныч! Спасибо :)

С Нинжектом надо быть поакуратнее, там хитрый баг с синглтонами. А в остальном — согласен. При наличии Автофака и Юнити в Спринге нет особой необходимости.

class A {...}

class B { public B(A a){...} ... }

calss C { public C(A a, B b) {...} ... }

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

Spring.NET

We are pleased to announce that the M2 (Milestone 2) release of Spring .NET 2.0.0 is now available.

[2012-12-11]

Milestone 2

Вроде в .NET пользуются другими, не сдохшими, IoC фреймворками

И что? Остальные «живые» никакие. Какими другими пользуетесь?

Я не .NET девелопер. Но да, тут упомянули

Unity, Autofac, Ninject

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

И .NET, как мне известно, даже требует перекомпиляции на новые версии фреймворка
Насколько мне известно, не требует

Не понял! А это что? jira.springsource.org/...orversion/12344

Description
2.0 Final Release
Due:15/Feb/13

Ну покурить asp придется в любом случае, так как без ее понимания получится большой пробел в знании платформы
А так WPF (раскурить саму модель MVVM). После ВинФорм может показаться чем-то печальным и скорей всего так оно и будет, но без него никуда.
Проштудировать всякие Entity, NGibernate. Без LINQ и PLINQ сейчас никуда. Ассинхронность будет хорошим плюсом. Если не хотите совсем веб, то в бэкэнде нужно покурить вебсервисы и все, что с ними связанно
В тренде сейчас Unity и Xamarine. Это уже не совсем .NET. Первое — совсем отдельная платформа, свои геморои, свои странности. Второе — отпочкование от Mono, похоже на .NET, но это очень обманчивая похожесть. Трудно учить, так там эпичная бесплатная/триальная лицензия не позволяет собрать большую часть примеров. Без опыта туда берут только матерых asp-шников обычно, так как похожий слоистый стиль построения приложений.

Говорят, плюсовикам трудно привыкнуть к стилю писанины на шарпике — low/UpperCammel и постоянные обертки над обертками. Раскурить типичные паттерны — все сейчас прутся по DI, уже третий проект закапываюсь в обилие сервисов и фабрик сервисов, мапингах и тд

А так WPF (раскурить саму модель MVVM). После ВинФорм может показаться чем-то печальным и скорей всего так оно и будет, но без него никуда.

Ничего не перепутано? По моему это винформ убогая пичалька.

NGibernate
NHibernate
Говорят, плюсовикам трудно привыкнуть к стилю писанины на шарпике — low/UpperCammel и постоянные обертки над обертками.
К лютой писанине сиплюсплюсика тоже трудно привыкнуть — аж глаза лопаются.
Программируйте нормально и не будет обёрток.
По моему это винформ убогая пичалька.
Ну может это я так и не смог перейти на WPF, но мне и задачи, собственно, не стояло никогда. Разве что контрол простенький когда-то пришлось наклепать.
Программируйте нормально и не будет обёрток.
Это нужно архитектору говорить, который прочитал все книги Мартинов и считает, что познал Дзен.
Это нужно архитектору говорить, который прочитал все книги Мартинов и считает, что познал Дзен.

Сочувствую :)

В свое время задался таким же вопросом, как и топикстартер: куда переходить в .NET или Java.
Выбрал Java. Пока не могу сказать, правильный ли был выбор. Областей, где используется Java больше и проектов/вакансий больше, но и порог входа высокий (надо знать много технологий) и конкуренция высокая со стороны желающих программировать на Java.

Довольно много сейчас предлагают вакансий по C/C++. Как я понимаю, в десктопной разработке, а особенно в том, что связано с работой с оборудованием, до сих пор самый распространенный язык — это C/C++. Стоило ли уходить от C/C++ - пока не знаю, время покажет.

При всей кажущейся простоте программирования на Java, есть у нее и недостатки:
— огромное количество фреймворков, которые наворачиваются один на другой (если что-то пойдет не так, то придется долго разбираться, где возникла проблема);
— вследствие этого, много времени нужно потратить на изучение всех этих фреймворков;
— вследствие этого, общая тормознутость Java, из-за которой она, ИМХО, в общем, подходит только для энтерпрайза, где требования к железу несущественны.

Интересно было сравнить Java и .NET.

Интересно было сравнить Java и .NET.
Это ведь сарказм был, правда?
Интересно было сравнить Java и .NET.
А шо тут сравнивать?!
Рейтинг TIOBE, применимость во всем мире, опрос зарплат на DOU уже ясно показали, что Java круче.

Популярней, хех. А вот на счет «лучше» — это слишком скользкая шутка.
Хотя бы потому, что не видел еще ни одной .NET программы, которая бы требовала нескольких попыток запуска чтобы запустить вполне рабочую систему (Minecraft, например). Просто потому, что Java-платформа слишком разрослась сейчас, а .NET мелкомягкие пытаются держать в узде.

Ну а по качеству языка, думаю давно принято, что C# намного опережает Java

Ну а по качеству языка, думаю давно принято, что C# намного опережает Java
Это чем? Наличием действующего оператора goto, про использование которого мне хвастались знакомые дот-нетчики или замыкания? Офигенный код можно писать с использованием goto — неподдерживаемый и глючный.
Хотя бы потому, что не видел еще ни одной .NET программы, которая бы требовала нескольких попыток запуска чтобы запустить вполне рабочую систему (Minecraft, например).
Вы путаете изделие и язык. Возьмите IDEA, написанную на Java и UI на Swing и посмотрите на нее.
Любая компьютерная игра, писанная на Visual C++ требует туеву кучу .NET-ов и переустанавливает существующие, запускающиеся не с первого раза, а иногда отказывающие запускаться совсем.

Ну и конечно обратная совместимость, которая хромает.

Может я плохо знаком с джавой, но подскажите, как в джаве перегрузить оператор?

Никак.
А в Java еще нельзя напрямую общаться с памятью и записывать значения в регистры процессора, тоже «ОГРОМНЫЕ» недостатки.

кстати, а getters-setters там уже добавили? вроде в последнюю должны были

Как это нельзя? Если я не ошибаюсь есть либы, с помощью которых вполне себе можно побаловаться с памятью :)

А вот отсутствие перегрузки операторов, параметров по умолчанию, делегатов и тд — реальный минус к гибкости языка.

Так что таки да — как язык C# мне нравится больше.

Как это нельзя? Если я не ошибаюсь есть либы, с помощью которых вполне себе можно побаловаться с памятью :)
Ну раз вы сами начали...то в Java есть всего 1 jar-ник, позволяющие применять замыкания, параметризированные конструкторы, динамической типизирование, перегрузку операторов в любых количествах и многое, много другое — Groovy.

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

Ну и конечно же кросс-платформенность, которая если и делается, то через адские хаки и костыли.

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

что пытались сделать, что приходилось наизнанку выворачиваться?

Думал помочь своему стажеру, который учиться в универе, написать на лабораторную штуку чуть сложнее helloworld-а на Visual C++ 2010 под .NET и собрать в DLL-ку, на C# тоже не получилось. Через 3 часа мучений забил на это дело.

Ну вы хоть как сами-то понимаете, что аргументация с goto и неудавшимися студентскими лабами, как контрааргумент в пользу платформы это еще круче, чем SOAP — отстой потому, как мессенджеры лагают на телефонном модеме?

Я вот тоже попробовал написать на джаве, но не сложнее хеллоуворлда, а именно его. И вы знаете, у меня не получилось. Я забил на это дело и правильно. Ведь если даже хелло ворлд не получилось, то понятное дело, что язык Java — полное говно.
%)

И с чем вам в .net приходилось выкручиваться на изнанку? (правда интересно).

P.S. для джавы ещё есть Rhino, который позволяет вообще на js писать код, но ведь к языку «java» это не имеет ни малейшего отношения, правда?

P.P.S мы сейчас кстати языки или платформы сравниваем?

Ну и конечно же кросс-платформенность
Фух, я уж думал никто и не вспомнит про главный козырь. А то всё какие-то лямбды, замыкания, да кому оно надо? А вот кросс-платформенность — это да. Как скажешь, так все дотнетчики сразу разбегаются.

Saying that Java is nice because it works on every OS is like saying that anal sex is nice because it works on every gender. ©

Это ж [:||||||||||:]
А вас не смущает, что 80% production-environment-ов для маленьких и больших веб-систем и Ынтерпрайзов работают на Unix/Linux ?

А вас не смущает, что в Украине ланосов больше чем лексусов? Не значит ли это что ланос лучше? :)

Я вам не скажу за всю Украину, но в Киеве гораздо больше лексусов и автомобилей их класса и подороже.

А таксисты тоже на лексусах в Киеве? :) autoportal.ua/...rating/all.html

вот кстати данные по ОС на серваках:
Linux занимает от 58 до 78 %
en.wikipedia.org/...erating_systems (серверный раздел)

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

Учить надо лучше. Ничего не приходится выворачиваться.

переходите на Скала, код на обе платформы генерится

В .NET уже не сильно поддерживается

value-types на стеке, нормальные generics, замыкания, CLR поддерживает tail recursion,
это то что лично для меня дает .NET > Java
насколько это нужно — другой вопрос )

1) Если вы не видите отличий между объектами и примитивными типами, то язык тут не причем.
2) Generics в JDK 5.0 уже и так нормальные
3) замыкания введут в 8-ке, хотя я такие вещи запросто пишу на Groovy и не парюсь.
4) хвостовая рекурсия — редкоиспользуемая штука, ее нет смысла включать ее поддержку на уровне языка, можно просто заюзать уже готовую реализацию.

1) кагбэ если объявить в .NET стуктуру, то это тоже будет value-type. На сколько я помню, в джавах такого тоже нет

Ну и всякие LINQ и прочие делегаты, которые встречаются ну очень часто и повсеместно

1. все пользовательские типы в жаве выделяются в куче, в .нет нет, Вы не совсем в материале.
2. насколько я помню до JDK 5 generics вообще не было ) в джаве женерики реализованы грубо говоря путем type-erasure + casts. т.е. являются таксказать артефактом компиляции и синтактическим сахаром. в .нет они реализованы более глубоко
3. ну да
4. хвостовая рекурсия — основа всех функциональных языков, если вы пробовали clojure например, то там из-за «дефекта» jvm есть специальная конструкция recur

1. все пользовательские типы в жаве выделяются в куче
Что это за вольная трактовка?
Если объявил int a = 3; в методе, то это какой тип? Пользовательский или нет?
Примитивы в Java хранятся в стеке, если вы не в курсе.
в .нет они реализованы более глубоко
«Глубоко-неглубоко» какое-то невнятное сравнение.
хвостовая рекурсия — основа всех функциональных языков,
Тогда для вас будет новостью что Java-императивный, а не фунциональный язык?

И кто из нас

Вы не совсем в материале.
?

Вы не в материале, инт — базовый тип.

пользовательский тип — в джава — class
в c# есть еще struct, который всегда лежит в стеке, так же может содержать методы и т.д.
зачем это нужно?
ну представте что у вас есть какаято библиотека векторной алгебры, и вам нужно быстро быстро посчитать тонну произведений или еще чего то с векторами и матрицами, в jvm у вас будет очень много мелких выделений в куче которые нужно будет обрабатывать gc, в c# если вы все правильно делаете куча вообще не будет тронута.

про дженерики — более глубоко — информация о generic типе сохраняется в рантайме, в java — оно живет только на этапе компиляции. погуглите c# vs java generics

хвостовую рекурсию я упомянул в отношении не языка java, а платформы jvm, на которой вертятся много различных языков, в том числе и с функциональными примесями. както scala, clojure

п.с. будьте добрее и внимательнее

ну представте что у вас есть какаято библиотека векторной алгебры, и вам нужно быстро быстро посчитать тонну произведений или еще чего то с векторами и матрицами, в jvm у вас будет очень много мелких выделений в куче которые нужно будет обрабатывать gc, в c# если вы все правильно делаете куча вообще не будет тронута.
В Java будет тоже самое, если использовать статические методы с локальными переменными для таких векторно-матричных библиотек.

И в чем преимущества .NET платформы базируясь на всем вышесказанном? В рантаймовых generic-ах и хвостовой рекурсии?

в целом в том же в чем блондинок над брюнетками и наоборот

Съехали по-петросянски.
Это слив.

мда, как 1 технология или платформа или язык может быть лучше другой в сферическом вакууме? они все позволяют делать 1 и то же в целом. У каждого свои + и -.
Если для Вас так нужна кросплатформенность, и Вы часто переезжаете своим сервер сайдом по разным ОС — то да, .НЕТ тут не нужен.

как язык и платформа лично мне более интересен .NET ( хотя scala вот интересная штука!), так как он более динамично развивается и C# более гибок именно как язык, вот в c# 5 добавили async/await, есть чтото подобное в java? конечно функционально это ничего нового, как и linq, но удобство использования на высоте.

Друзья, у вас спор очень бессодержательный. С одной стороны фанат платформы с парочкой хороших фич, я атомным handycap в виде Windows, недоразвитой культурой опенсорса. С другой стороны фанат другой платформы, что если что-то в его платформе сделано ВОТ ТАК, то значит это классно, так и надо, идеал, нужно причмокивать. А недостатки есть, вот они. SO WHAT?

Кстати, у меня есть много друзей, хотят в Google, Facebook, Twitter, Apple, Foursquare, etc. Сейчас по чуть-чуть спрыгивают с .NET, на разные другие вещи, потому что с ним только в MS, Stackoverflow и украинский аутсорс. Основное конечно не язык, а алгоритмы, архитектура, но не хочется быть белой вороной на собесах. Вот такая правда жизни, маркетинг... А вы спорьте дальше о TCO

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

А причем здесь опрос зарплат? Завтра, какая-нибудь мощная корпорация создаст новый модный язык и станут резко нужны спецы по этому языку и тогда их зарплаты могут вдруг резко превысить зарплаты Java-программистов. Зарплаты определяются рынком, а не крутизной технологии.
Кстати, Головач в одном из своих видео высказывает мысль, что зарплаты Senior Java Develoer в среднем выше .NET-чиков процентов на 20%, потому что программисту на Java нужно знать в 3-4 раза больше технологий/фреймворков, чем .NET-чику.

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

Эти 2 предложения в вашем комменте противоречат друг другу, кого вы пытаетесь обмануть?
1)

Кстати, Головач в одном из своих видео высказывает мысль, что зарплаты Senior Java Develoer в среднем выше .NET-чиков процентов на 20%, потому что программисту на Java нужно знать в 3-4 раза больше технологий/фреймворков, чем .NET-чику.
2)
Зарплаты определяются рынком, а не крутизной технологии.
DOU уже ясно показали, что Java круче

По мне так этот опрос только показывает что возвращаться в бодишопы/лидеры рынка нельзя. Жадные.

Лучше на C под роутеры. Или Linux системы. Вот это серьезно.
Промелькнул один проект где 90% кода на С#, а остальное на плюсах. Чисто десктоп, Windows и все дела. В глобал лоджик было такое. И то, там продукт и команда не сильно большая. Я не знаю как сейчас с этим. Это чисто мимо меня промелькнула. А так вроде бы везде этот вонючий веб.

Также C# для Unity. Но там вроде что-то свое. Я не знаю. Но в геймдеве я разочаровался.

C под роутеры это в основном кастомизация и багфикс, редко небольшие фичи/компоненты (по собственному опыту в одном из лидеров рынка). Насчет веба подняли настроение.

А что не так с классикой?
Может отпуск изменит отношение?)

без асп и прочего веба смысла в переходе на дотнет не вижу
Оно конечно можно попробывать, но искать работу будет трудно
ибо 90 процентов того что у нас делается на дотнете это веб
на джаве точно также

Підписатись на коментарі