ИИ для программиста?
щас как раз на 8 все проекты
обёртка это самописные классы, которые ни от чего не зависят
они абстрагируют всякие вещи типа хранения введённых данных (числа, строки и т.п.), событий, принадлежности к форме (т.е. есть родитель-контейнер), гуевые коллеции (списки, деревья, таблицы) и т.п.
писаться они начали не так давно, так что сильно много там не было написано, сейчас ещё дальше дописываем
"Мой биокод натуральный, экологически чистый, не ИИмодифицированный".
Щас прикинул. Взять те же обёртки для ADO.NET. Там тыщи строк кода. Раньше они генерились без ошибок скриптами и шаблонами. А теперь будут ИИшкой, и с вероятными ошибками. Двойная польза: 1) можно писать, что 90% кода генерит ИИ (раньше это генерили скрипты), 2) нужно больше разработчиков, чтобы проверять 90% кода и покрывать его тестами, который раньше генерился без ошибок и не требовал покрытия тестами. Все при деле, новомодные ИИ-показатели лезут в гору, пузыри надуваются, СЕО покупают острова в океане... экономика в пи...де.
А, ну и ещё тут подсказали новый анекдот:
- Наш код на 90% написан ИИ!
- А на сколько процентов многократно переписан, прежде, чем был доведён до чего-то вменяемого?
На каждую такую фабрику приходится стопицот китайско-индийских подвальчиков, где вручную ваяют больше половины всего того ширпотреба, что вы заказываете себе на онлайн-маркетплейсах. И это даже сейчас. А когда производства переносили, этих роботизированных линий было ещё меньше.
Это первое.
Второе. Видео - из китайско-тайваньских владений. Причём тут первый мир? А если даже первая картинка из первого мира, то смотри пункт первый.
На каждую такую фабрику приходится стопицот китайско-индийских подвальчиков, где вручную ваяют больше половины всего того ширпотреба, что вы заказываете себе на онлайн-маркетплейсах. И это даже сейчас. А когда производства переносили, этих роботизированных линий было ещё меньше
Робототизировать дорого, поэтому ширпотреб как делали, так и делают в подвальчиках с дешевым трудом.
На роботах имеет смысл делать качественную продукцию. Поэтому все переводимое в первый мир производство - робототизировано. Т.к. нет большой разницы между тем, где работают роботы в Китае или в США, а зависимость от Китая меньше.
Видео - из китайско-тайваньских владений. Причём тут первый мир?
Тайвань - вполне себе первый мир. Они весь мир снабжают чипами.
А если даже первая картинка из первого мира
Это Япония, завод Тойоты. Тоже первый мир.
Почему не через ИИ? Спросил у чатика-гопоты про новый шарп - вот что он ответил
Без фанатизма Microsoft-евангелизма.
Это версия, которая, мягко говоря, вызывает ощущение усталости языка — не революции, а косметического ремонта старого дома. Разберёмся по сути.
💀 1. «Extension everything» — это шаг в сторону хаоса
C# 14 добавил extension-члены: теперь можно добавлять не только методы, но и свойства, индексаторы, даже статические члены.
На бумаге красиво. На деле — кошмар для читаемости и сопровождения.
- Ты смотришь на
user.Name, но понятия не имеешь, откуда это свойство — из класса? из extension? из какого namespace? - Поиск по коду превращается в ад: IDE ещё как-то справляется, а вот при ревью — без шансов.
- Расширения начинают использовать как «мини-наследование», нарушая инкапсуляцию.
C# всегда славился тем, что был читаемым и предсказуемым языком. Эти «расширения всего» превращают его в динамически-ведущийся мусорный контейнер, где члены могут прилететь откуда угодно.
🧩 2. «field» в свойствах — синтаксический костыль, не улучшение
Microsoft решила добавить новое «удобство»: ключевое слово field внутри get/set.
Типа чтобы писать меньше шаблонного кода. Проблема:
- Это ломает простоту модели свойств, где всегда было очевидно, где backing-field.
- Ключевое слово
field— зарезервированное слово, которое может конфликтовать с существующими именами. - Теперь у нас три способа записать одно и то же свойство. Ещё больше разнообразия ради разнообразия.
Это не улучшение, это введение новой неоднозначности в синтаксис ради мнимой экономии трёх строк.
🧠 3. Новые синтаксические трюки — косметика вместо содержания
Null-conditional assignment (obj?.Prop = val;) и nameof(List<>) — всё это мелкие, приятные, но абсолютно второстепенные фишки, которые решают микропроблемы, а не реальные боли разработчиков.
Пока язык тонет в куче сахарных добавок, серьёзные пропуски всё ещё остаются:
- Нет нормальных union-типов.
- Нет pattern-matching на уровне типов, как в Rust или Swift.
- Нет адекватных records с неизменяемостью по умолчанию.
- Нет поддержки value-based inheritance.
C# всё ещё живёт в 2010-х, пока Kotlin, Swift, Zig и Rust бегут дальше.
⚙️ 4. Compound-assignment операторы — привет, магия и неопределённость
Теперь можно переопределять +=, -=, *=, и т.д.
Идея вроде хорошая, но на практике — это минное поле для логики.
- Поведение
x += yтеперь может вообще не соответствоватьx = x + y. - Код становится непредсказуемым и теряет декларативность.
- Отладка усложняется — откуда берётся новое значение, теперь непонятно без заглядывания в перегрузку.
То есть мы ради «эффективности» пожертвовали очевидностью.
Типичная ошибка C# последних лет — путать выразительность с магией.
🕳️ 5. Microsoft всё ещё не решилась упростить сам язык
C# 14 — это очередная надстройка над надстройкой.
Каждая новая версия добавляет ещё один слой синтаксического мусора, не убирая ничего старого.
- У нас уже три способа объявить метод, три способа задать свойство, три способа объявить лямбду.
- Вместо консолидации идей — постоянное добавление исключений и sugar’а.
- Новый разработчик, глядя на современный C#, просто офигевает:
«А почему тут можно, а тут нельзя?»,
«А почему это работает только в expression-bodied функции?»
Это уже не язык, а музей решений из разных эпох .NET.
📉 6. Отсутствие смелости и инноваций
.NET-команда идёт по пути минимального риска.
Вместо того чтобы сказать: «C# нуждается в перезагрузке» — они выпускают мелкие правки.
C# 14 ощущается не как новая версия, а как сервис-пак с косметикой.
И это особенно разочаровывает на фоне конкурентов:
- Kotlin уже давно имеет sealed-иерархии, data-классы, flow и inline-типы.
- Rust предлагает паттерн-матчинг, ownership и zero-cost abstractions.
- Swift движется к DSL и value semantics.
А C# всё ещё живёт на костылях ref struct, readonly, scoped и прочем синтаксическом Frankenstein’е.
☠️ Итог: язык перегружен, уставший и теряющий фокус
C# 14 — это не развитие, а удержание статуса кво.
Он всё больше напоминает Java времён 2015 года — громоздкий, противоречивый, медленно эволюционирующий язык, который боится сам себя упростить.
Проблема не в том, что новые фичи плохие — проблема в том, что они ничего не меняют.
Вместо решительных архитектурных шагов — косметическая правка синтаксиса.
На каждую такую фабрику приходится стопицот китайско-индийских подвальчиков, где вручную ваяют больше половины всего того ширпотреба, что вы заказываете себе на онлайн-маркетплейсах. И это даже сейчас. А когда производства переносили, этих роботизированных линий было ещё меньшеРобототизировать дорого, поэтому ширпотреб как делали, так и делают в подвальчиках с дешевым трудом.
На роботах имеет смысл делать качественную продукцию. Поэтому все переводимое в первый мир производство - робототизировано. Т.к. нет большой разницы между тем, где работают роботы в Китае или в США, а зависимость от Китая меньше.
Мой посыл в том, что не будь дешёвых работников из стран 3 мира, то повсеместную роботизацию вводили бы ещё лет 30-40 назад. И ничего бы не пришлось сейчас переносить и страдать от "ответных санкций". А вот толстосумы бы не получили сверхприбылей - это да. А тогда все думали, что сейчас как массово пойдут роботы на производствах, и фантастика в книгах и фильмах была про это. Ещё боялись, что роботы мир захватят. А всё ограничилось местечковым применением и несколькими заводами для показухи. Оказалось, что в недоразвитых странах полурабский труд эффективнее. "Два взвода из стройбата заменяют экскаватор".
Вы реально смотрите длинные видосы,
7 минут -- это длинно?
вместо того, чтобы почитать выдержку на пару минут?
Это не выдержка - это продолжение каких-то (дипломатично не будет уточнять каких именно) мыслей пользователя
вот что вначале нужно читать ![]()
https://learn.microsoft.com/ru-ru/dotnet/csharp/whats-new/...
Но в первый год использования всё это меня совсем не интересует, со временем просто выберется полезное. Как было со всеми предыдущими версиями.
Но в первый год использования всё это меня совсем не интересует
Первый год? - Пфф. У нас восьмая версия дотнета, и до десятой непонятно, когда дойдём. Будут тянуть до последнего, пока официальная поддержка не кончится.
Для меня единственное, что прямо сейчас бы взял - обращение field к полю автосвойств. Реально куча случаев была, когда свойства в одну строку писал, но захотелось добавить логики в скажем сеттер - и пришлось расписывать всю канву с полем.
Или вот, но это не про этот релиз, раньше писал кучу классов- или структур-пустышек для хранения собственно структур данных. А сейчас их все рекордами (records) заменяю с определением в одну строку прямо в том классе, где использую.
Это не выдержка - это продолжение каких-то (дипломатично не будет уточнять каких именно) мыслей пользователя
Я просто спросил у вашего любимого ИИ.




список