Комментарии 72
var man1 = new("Mike", 32);
Наконец-то!
Про private virtual инфы нет?
Можно еще сократить, убрав new, а потом и var. И так понято будет, type inference поможет.
Убрать var и new как раз таки можно, оставив только название класса. Смысла в этих словах все равно нет.
Тут я развил идею
https://www.codeproject.com/Articles/5353397/QW-Quick-Write-The-Most-Succinct-Programming-Lang
Ура, круто!
и в чем интересно польза? сократили 1 слово взамен на явность типа при чтении?
Вообще private virtual вполне себе полезный кейс. Несколько раз натыкался когда он очень подходил, если бы был.
Это бывает нужно в классе в котором наследник объявляен как nested class и метод не хочется открывать на публику, но при этом надо в этом наследнике переопределить.
Воркэраунд - private protected virtual, но с тем же успехом можно сказать - зачем private, делай все internal.
i**
эквивалентно i = i * 1apr
очень актуально, отлично!!
Я прошу прощения, это первоапрельский пост? В поисковике не нашел ничего о "Главном Мурманском Институте Генетики", да и "имени Трофима Лысенко" сильно озадачило.
Тэги к посту говорят, что всё серьезно. Уже переписываю пэт проекты.
Были добавлены аналоги инкремента для деления и умножения.
i++
эквивалентноi = i + 1
i//
эквивалентноi = i / 1
i**
эквивалентноi = i * 1
Как будто бы на этом моменте всё должно стать понятно
Как будто бы на этом моменте всё должно стать понятно
Я досюда не дочитал, прифигел уже на первом абзаце :)
Я в начале думал все, приехали...
Потом вспомнил, про первое апреля и отпустило....
ну часть звучит как будто то что реально могут добавить
Я насторожился ещё на институте имени Трофима Денисовича Лысенко.
Я дочитал до интерполяции строк...
Не удивлюсь, если первый пункт мы взаправду скоро увидим. А так да, хорошая шутка.
это первоапрельский пост?… «имени Трофима Лысенко» сильно озадачилоВ каждой шутке есть доля шутки ? — habr.com/ru/post/725468 ?
/confused
Нет, сегодня же 32.03.2023.
Спасибо, развлекли! Perosn только стоит поправить.
Никто не обратил внимание на замену символов начала однострочного комментария??? :D
C первым апреля!!!
Фу, отлегло
А мне понравилось.Только надо б сократить до \/\
Кажется раньше у VS было что-то похожее в логотипе
Спасибо, добрый человек! А то читаю статью 13-ого и чуть удар не хватил от var - new ))))
Супер, понравились новые фишки C#, пожалуй, даже брошу свой петон ради них. Но больше всего зашла шутка про гражданство, на этом моменте я ещё думал что это просто совпадение)
Ёмае, а я ведь поверил и дочитал с фэйспалмом...
i//
эквивалентноi = i / 1
i**
эквивалентноi = i * 1
Вау, это гениально!
i00 эквивалентно i = i + 0; очень не хватает) добавьте ровно через год
Это лучший пост в честь 1 апреля!
Надеюсь, через год добавят наконец возможность писать
if ( 1 <= x < 4 ) ...
// и/или даже
if ( x in [1, 4) ) ...
а то надоели уже эти лишние символы
if ( 1 <= x && x < 4 )
:)
.NET 10 будет последней версией и останется с нами навсегда
Если честно - эта пять! ? Как водится, проскользил взглядом вступление (бла-бла, давайте к телу), на серьезных шах кивнул на "У нас так принято". На первом же 'нововведении' с классами решил что опечатка, полез в комменты, ну и немного подпортил себе сюрприз... ?
var man1 = new("Mike", 32);
вот тут не пойму: а как там понимается, что это именно тот самый объект, не какой-то другой?! что это, к примеру, Person, а не Car? ну а вообще, очень даже классно, сильно ускоряет работу
Забыл что сегодня первое апреля, по 5 раз перечитывал новый синтаксис, думал всё, доработался к вечеру…
Спасибо, это было забавно)
Отличный пост на 1 апреля. Я сначала даже поверил
Кстати, про создание экземпляров абстрактных классов в .NET 5 и .NET Core 3.1 это не шутка, через reflection их можно было создать.
Блин. Вот каждый раз даю себе слово, что на первое апреля не разведут, и на тебе. На полном серьёзе пытался осознать, как вот это var man1 = new("Mike", 32); может работать на уровне компилятора.
В F# работает...
Допустим в лоб - перебрать все классы, которые не скрыты namespace'ом. Правда это будет работать только для уникальных наборов аргуменов и фиг знает сколько времени надо
Тогда надо добавить тут forgiving operator ' ! ' который позволит заткнуть компилятор и делать что ему сказано. А лучше ' !!! ' чтобы не путалось с существующими похожими операторами.
Спасибо, купился)
Дошло только на знаке €
Ждём .NET 30, или, как его начнут называть...
Только на экранировании комментариев вспомнила, какой вчера был день.
Я гражданин Ирана, Израиля и Народной Республики Майя и у меня вопрос: почему в новой версии .NET XI не разрешили делить объект на 0? Например, на COBOL мы так всегда делаем.
В расте это всё есть давным-давно.
Просто топовый пост, до евро еще верил, но копил вопросы для комментов(= Очень жаль, что сюда зашли и порадовались только шарперы, может заголовок бы более общий(=
Автор - ай, молодец!
Спасибо что заставил шестерёнки, мои головные, поскрипеть.
Дополнительные унарные операторы и инстациирование от абстрактных классов это твёрдая пятёрка!
Я начал что-то подозревать на:
Теперь операнд ! можно применить к операндам сравнения.
Сначала подумал что это опечатка.
[1 апреля] Все новые возможности C# 13 | Что нового в .NET 10, почему нет .NET 9