Кажется
дождь собирается С++ возвращается.
docs.microsoft.com/ru-ru/cpp/cpp/welcome-back-to-cpp-modern-cpp?view=msvc-160
Случайно обнаружил на сайте Microsoft эту статью.
Вот это номер.
Сначала всех загнали на С# и VB, а теперь — «что же нам с ними делать, с яблоками на снегу»© ?
можете ли подробнее ответить.
Где и как используется. Для каких приложений.
Как со временем разработки проектов обстановка склыдывается.
Вообще как впечатление от работы с С++ штрих.
Я тоже около десяти лет программировал на С++, но очень давно.
Последнее приложение на С++ написал в VS2003 в 2004 году.
А потом перешел на С#. И с тех пор меня всегда преследовала ностальгия по C++. Так что мне эта тема интересна.
Теперь есть повод туда вернуться.
Я не знаю что такое Rust. Спасибо, с удовольствием посмотрю что это.
Но
Я рассматриваю тему с С++ лишь потому, что с переходом на разные там С шарпы, огромное кол-во уже написанного на С++ кода осталось за бортом.
А теперь мы опять можем использовать ранее написанный код или отдельные куски, но уже на более высоком уровне самого языка и с использованием более совершенных инструментальных средств разработки.
А новые языки я вообще не рассматриваю, потому что, люди которые долгое время программировали на С++, как правило, не смотрят на альтернативы, потому что на С++ можно сделать все что угодно и сделать очень хорошо.
потому что С++ это огромная экосистема, великая эпоха, которая оказалась на грани полного забвения.
А нет, все истинные ценности всегда остаются вместе с нами, хотя иногда отходят на второй план.
Причины, их есть у меня.
1. Любовь к жанру.
2. Постепенная миграция на Linux. Там нужен какой-то язык программирования. На Linux альтернативы всего две Java и C++.
С++ я знаю, вернее знал старый С++ без умных указателей. Поэтому выбор очевиден.
В результате должна получиться гремучая смесь С++, Python, javascript,Typescript для Node.js
Нормальный такой full stack
И никаких Asp.Net Core — боже упаси, какое убожество.
Спасибо, буду знать, на всякий случай, что С# есть в Linux.
Это уже что-то.
Но я с детства не люблю Диезные тональности (#).
Словосочетание WEB development и продукты Microsoft на эту тему всегда вызывали у меня лишь улыбку.
Один «маленький да удаленький» Node.js оставил весь Microsoft далеко позади.
В контексте Web-a у Microsoft можно отметить лишь разработку Typescript. Даже Google использует его в Angular.
А в остальном увы и ах.
Поэтому выбираем стратегическое направление для развития:
Linux,
C++, Python, Node.js — и все, что с ним связано -> MEAN stack называется.
Eще есть Nest.js с Typesript-ом. Красота.
Имхо, лучше получать удовольствие от окружения, решая сложные задачи, чем плеваться и материться, решая простые задачи сложными путями :)
еще в заслуги Microsoft можно отнести OWIN.
У меня на Owin-e некоторые службы рабатают.
Но я все ждал когда они наконец засунут в Owin MVC как Middleware.
Но «напросно старушка ждала сына домой».
Вышла Asp.Net Core 3.1, а там по-прежнему в OWIN-е нет МVС.
Web Api есть, а MVC нет. Пожалте бриться.
Не шмогли они MVC из System.Web выпилить.
Я раньше в OWIN-e вместо MVC использовал Nancy framework.
А с новой версией Asp.Net Core 3.1 Nancy с OWIN уже не работает — не совместим и MVC от Microsoft нет.
Поэтому Web от Microsоft «Дафай До свидания».
лямбды в плюсах со стандарта 11 года. С того времени в языке еще много чего появилось
MSVC развивается, их сишный компилятор тоже не отстаёт от новых стандартов. Плюс есть Qt с его возможностями писать кроссплатформенный код. Под Android можно писать на плюсах. Под ARM можно писать на плюсах.
qt это ад и боль поддержки.
+ там лицензия драконовская.
коммерческая лицензия драконовская.
некоммерческая это для поиграться.
qt это худший выбор.
даже хуже 1с.
вендорлок.
Но если надо какой-нибудь бэкэнд написать, тут Qt может быть не лучшим выбором в каких-то моментах.
«который просто работает и без проблем поддерживается программистами средней квалификации.»
вот!!!
а должен работать и поддерживаться сисадминами (аникейщиками) как все остальное десктопное ПО.
а qt поделки поддерживается РАЗРАБОТЧИКАМИ да еще миддлами. а не джунами.
это собственно и проблема!.
«затраты труда и квалификации на поддержку поделок qt которые, по идее, должны просто работать сильно выше ожиданий.»
В Вашей консерватории всё очень сильно поломано… ИМХО.
Поддерживать софт должны сисадмины и аникееи.
А разработчики должны разработкой заниматься.
То что qt требует такой квалификации ДОРОГОЙ чтобы просто работать.
ему жирный минус.
Для меня это «правка ошибок, добавление функционала». А для Вас?
а не поддержка.
Вопросы с установкой нашего софта может решить любой, кто в состоянии запустить инсталлятор. А научится работать с ним сможет тот, кто прочтёт руководство оператора. Qt в этих моментах вообще никак не участвует. И наша служба эксплуатации, которая занимается всем этим у заказчиков, как раз «эникейщики».
Значит, линукс-подобные системы и си++ будут востребованы больше, чем сейчас.
Просто появились новые направления — Web, скриптовые языки, мобильные устройства, оттянувшие многих программистов на себя.
Современный С++ стал удобнее, но в тоже время сложнее. В нем сложные абстракции можно сделать предельно сложным образом, чтобы уж точно никто не разобрался. Но это не значит, что нужно так писать код. Я вот пишу на С++11 по большей части + Qt. Qt очень упрощает жизнь, а также позволяет писать кросплатформенные приложения, где один и тот же код можно собрать под Windows, Mac и Linux.
Вы в Visual Studio работаете или есть что-то поинтереснее в качестве инструментальных средств для разработки на С++.
Можете озвучить джентельментский набор необходимых инструментальных средств для разработки на С++ в настоящее время.
+ там лицензия драконовская.
Почему боль поддержки я не понимаю. Можете объяснить подробнее?
www.opennet.ru/opennews/art.shtml?num=52259
Дорого 5500 usd на каждого разработчика в год!
лицензия драконовская.
После окончания лицензии Распространять даже старое уже рабочее по нельзя.
нельзя его просто ставить на новый компьютер в замен старого.
лицензия не позволяет.
Для vs C++.C# позволяет разрабатывать
Собрали продукт на любой opensource версии, например самой последней, добавили Qt DLL, все. Ничего не нужно покупать. Исходники открывать не нужно.
Есть некоторые вещи под коммерческой лицензией, например Qt Charts, ну и фиг с ними, используйте Qwt бесплатный.
www.qt.io/download-open-source?hsCtaTracking=9f6a2170-a938-42df-a8e2-a9f0b1d6cdce%7C6cb0de4f-9bb5-4778-ab02-bfb62735f3e5
Я понимаю что все можно нарушить.
Но любой Ваш пользователь получивший от вас копию ЛЮБЫМ ПУТЕМ может потребовать весь ваш код.
Даже если этот пользователь просто наемный рабочий который работает по найму.
И не ваш контагент.
Любой оператор работающий по найму с вашей программой.
Тут от задач зависит.
Для системного программирования останется си и все прочее.