Сохранен 511
https://2ch.hk/pr/res/3332445.html
Прошлые домены не функционирует! Используйте адрес ARHIVACH.VC.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

C# .net 9 release дотнета тред #58 /csharp/

 Аноним 30/11/24 Суб 17:21:15 #1 №3332445 
image.png
image.png
Запоздалый перекат треда о лучшем языка на планете.

.net core 9 уже релиз!

1. Ресурсы:
https://dotnet.microsoft.com/learn
https://ru.stackoverflow.com/a/416585/422180
https://metanit.com
https://professorweb.ru

2. С# для веб
https://docs.microsoft.com/ru-ru/aspnet/core

3. C# для десктопа
https://docs.microsoft.com/ru-ru/dotnet/desktop

4. С# для игр
https://ru.stackoverflow.com/a/609901/422180

5. С# для мобильной разработки
https://docs.microsoft.com/ru-ru/dotnet/maui

6. Годные ютуб-каналы
https://www.youtube.com/c/CODEBLOG
https://www.youtube.com/c/AndreyShyrokoriadov
https://www.youtube.com/c/DevJungles
https://www.youtube.com/user/Shmachilin

Шапка: https://pastebin.com/HT7Hi6FD
Прошлый тред: >>3218883 (OP)
Аноним 30/11/24 Суб 17:23:02 #2 №3332448 
Фрирен - шлюха.
Аноним 30/11/24 Суб 18:02:40 #3 №3332469 
Главный вопрос треда, нужен ли AutoMapper?
Аноним 30/11/24 Суб 19:02:44 #4 №3332499 
>>3332469
да. ведь выбирающие его заслуживают страдать по определению.
Аноним 30/11/24 Суб 20:36:29 #5 №3332537 
17070544210930.mp4
>>3332498 →
Да мужик (или тяночка), компоуз не виноват, что вышел из-под гугла. Тут проблема в том, что XML никуда не делся, а компоуз слишком быстро зашел на рынок как основной фреймворк. Это же не джаву на котлин менять (кстати, вроде Square написали Retrofit поверх okHttp, но на джаве, что достаточно интересно в плане "нахера?").
На выразительность тоже уже плевать, да и это более "тонкая" тема т.к. для меня джава всегда была более понятнее, чем котлин.

Глянул на C#, на его кол-во живых библиотек, на его качество кода (в плане читаемости) и прям кончил можно сказать. Мне постоянно ссали в уши менторы с ютуба, что котлин это будущее, джава скоро сдохнет. Ну я как идиот 3 года учил котлин и андройд, вместо спринга или того же asp + c#. МДАААААААААААААААААААААААААА
Аноним 30/11/24 Суб 20:42:33 #6 №3332542 
>>3332537
>Тут проблема в том, что XML никуда не делся
ну это проблема динозавров любящих (цензура) с этим подходом (привет списки)
>компоуз слишком быстро зашел на рынок как основной фреймворк
и это шикарно. шикарный фреймворк шикарный подход
>что вышел из-под гугла
енто да. они умеют все портит. вон навигацию испортили. M2 не доделали, но поддерживают. Какие то странные ребята

>для меня джава всегда была более понятнее, чем котлин.
выразительность это не про понятность. Это "мы городим огород (читай костыли) потому что иначе никак, а в другом языке это есть искаропки и работает само".

недостаток котлина это его жава рантайм (ну и сложные корутины). в остальном же на нем приятнее писать код. Зато в шарпе структуры и много чего под них заточено, а в котлине такого нет....но ведь это не котлин виноват.
Аноним 30/11/24 Суб 20:47:07 #7 №3332544 
>>3332542
Я надеюсь, что когда-нибудь напишут какой-нибудь рантайм чисто для котлина и будут ребята уровня xiph или типо того, чтобы писали код для компоста и всего, что с ним связано.
В данный момент для меня котлин это чисто андройд, который на уровне говна собаки (андройд, конечно же).

А я в бекенд хочу, а не искать проблемы с производительностью UI, навигацией и делать анимашки конченных даунов-дизайнеров через littie, а потом выслушивать .что я неправильно запихал их анимашку.
Аноним 30/11/24 Суб 20:51:39 #8 №3332545 
>>3332544
>который на уровне говна собаки (андройд, конечно же)
если честно хз. он там вполне норм. да и котлин актуальный последний. Просто меня не волнуют анимашки и "в этой версии андроида нужно делать так, а в этой анально огородили и вот тебе 3 стула и все с говном и на них нужно не сидеть, а проглотить".
я ссу кипятком с компоуза в плане удобства. Собственно из-за него котлин и выучил ибо этот хамл в замарине ...замарил
но на десктопе беру шарп и WPF, потому что гуи на порядок сложнее надо (про шрифты помолчу)
Аноним 30/11/24 Суб 21:57:57 #9 №3332570 
>>3332469
Ненависть к автомапперу - признак шизика. Видимо чел в него пытался кучу конвертаций запихивать которые чуть ли не бизнес логикой являются. Ну и при этом на все тесты хуй ложил, да.
Аноним 30/11/24 Суб 22:08:34 #10 №3332575 
Захотел дайвануть в пучины C#, а clr via C# уже устарело в говно.

Сейчас начал читать Pro .NET Memory Management, уже начинаю понимать как на практике работает GC и всякие умные указатели. Вместо тупых абстрактных концепций в голове которые на самом деле не дают нормального представления.

В своё время так же заебался с ответом про async методы - "ну это стейтмашины", который толком нихуя не объясняет, это просто элементарный паттерн лол, а топик асинхронности огромный.

Вот канал челика, который кстати рассказывает что-то интересное, а не просто тупорылые хэлло ворлды пишет
https://www.youtube.com/watch?v=okXbHqRQ6Mo

Если что-то похожее есть - кидайте.
Аноним 30/11/24 Суб 22:22:07 #11 №3332581 
>>3332570
>Ненависть к автомапперу - признак шизика
Ненависть к инструменту который добавляет неявность, ломает навигацию в ide, да еще не везде применим - так ли он нужен то
Аноним 01/12/24 Вск 00:45:59 #12 №3332625 
>>3332544
>Я надеюсь, что когда-нибудь напишут какой-нибудь рантайм чисто для котлина

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

Эти ребята писали компилятор в байткод лет 5, о каком уровне вирт машины можно говорить. Писали много лет писаали фронт под llvm, потом что-то переписывали (я про нейтив), в общем ппц.
А анальный вендерлок на тулинг просто убивает возможность развитие котлина самостоятельно. Сначала они вроде пытались пилить плагины для других редакторов, но потом даже не набрав массы положили болт.

Гредл это отдельный ужас жаба мира. Тырпрайзный-индустриальные технологии очень плохо ложатся на модный и молодежный новый язык.

В котлине есть некоторые интересные синтаксические решения, которые они просто потаскали у груви (но есть тотальные безграмотное wtf) В общем, как говорил анон, технология без души, которая еще утопила скалу и сам груви (да и жаба без мобилок это уже кобол).
Аноним 01/12/24 Вск 00:52:09 #13 №3332628 
>>3332469
Кода с автомаппером получается больше, чем без него. Поэтому вывод очевиден: не нужен. ЗЫ: однако, кодомакаки именно за это его и любят: можно настрочить тонны конфигов маппинга, и вроде как не бездельничал.

Сейчас основная тенденция в дотнете - AOT. Посему AutoMappet, работающий на рефлексии, в пролёте.
Аноним 01/12/24 Вск 06:54:19 #14 №3332670 
>>3332469

Чел, это другой подход.

Сейчас набирает популярность Automapper.FullTuring, который позволяет вообще без классов писать, потому что это ненужный мусор.

Плюс, если подключить Automapper.Router, то можно выкинуть контроллеры и сделать всё автоматически.

Тут вопрос в другом. Нужно ли вообще дедовское ООП, если автомаппер+nosql делает всё автоматически.
Аноним 01/12/24 Вск 06:59:17 #15 №3332672 
>>3332670
Ты из епама?
Аноним 01/12/24 Вск 07:03:53 #16 №3332674 
>>3332672

Нет, а что в епаме тоже используют автомаппер?
Аноним 01/12/24 Вск 07:06:25 #17 №3332675 
>>3332498 →
>ну шарп не такой выразительный как котлин

Что за категория такая, "выразительность"?

Почему её используют только в контексте котлина? Это точно не слово из маркетингового буклетика, которое не означает ничего?
Аноним 01/12/24 Вск 08:17:20 #18 №3332680 
>>3332675
По-моему это слово обозначает (в контексте ЯП) понимание того, что ты пишешь и как ты пишешь буквально с первых секунд, а не в попытках понять синтаксис.
Условно
val myValue = intArrayOf(1,2,3,4,5)
Более понятно, чем в джаве
int[] myValue = new int[5] {1,2,3,4,5};
Аноним 01/12/24 Вск 08:25:38 #19 №3332684 
>>3332680

int[] myValue = new int[] {1,2,3,4,5};

Вот эта строка явно выразительнее. Котлин хуйня, короче
Аноним 01/12/24 Вск 09:10:28 #20 №3332697 
Котлин хорош! Он великолепен тем, что разделил комюнити Жавы на две части. Теперь и создатели вынуждены поддерживать Коклин, и его пользователи вынуждены учить и его, и саму Жабу. Собственно, сами виноваты. Могли бы писать на божественном Шарпе и не страдать хернёй.
Аноним 01/12/24 Вск 09:23:44 #21 №3332701 
>>3332697
Думаю переползать на Котлин с дотнета. Котлин судя по всему очень выразительный язык.

Есть пара вопросов. В Котлине есть автомаппер?
Аноним 01/12/24 Вск 09:46:01 #22 №3332704 
>>3332701
https://mapstruct.org/
Аноним 01/12/24 Вск 10:18:22 #23 №3332711 
>>3332701
>переползать
То что придется ползать, это очень тонко подмечено.
Аноним 01/12/24 Вск 10:54:40 #24 №3332715 
>>3332704
Ебать, уродливая невыразительная хуйня, это ещё более тесный гроб, чем автомаппер.

Автомаппер хорош тем, что можно писать асинхронные маппинги. Если например, надо в БД сгонять, или HTTP запрос сделать во время маппинга.
Аноним 01/12/24 Вск 11:27:36 #25 №3332742 
image.png
Пацаны, я наконец решил главную проблему шарпов для себя!
Поздравьте меня!
Аноним 01/12/24 Вск 11:46:02 #26 №3332750 
>>3332742
Главная проблема шарпов для тебя это использовать переменные?
Аноним 01/12/24 Вск 11:47:44 #27 №3332751 
>>3332673 →
>Что за категория такая, "выразительность"?
Да хуй его знает. Носятся с ней как с важной хуйней какой-то, а когда просишь конкртено пояснить, что это - обычное "пук-срень, ну вот в язык_нейм можно сделать вот так, а в шарпе нельзя" (и в 90% случаев окажется, что либо можно, либо нахуй не нужно). Часть под "выразительностью" имеет в виду просто какой-нибудь местечковый сахарок, который им нравится исключительно из-за синдрома утенка. И что, кстати, не мешает им поливать шарп за засилье сахара, хотя свой жрут ложками.
Аноним 01/12/24 Вск 11:54:46 #28 №3332755 
>>3332750
Ну да... Типа для меня - переменная это что-то важное, у чего аж имя есть которое я сидел, придумывал, чтобы не x,y, a,b,c было, и оно доступно во всем скопе где объявлена. Как-то пояснить, что оно нужно просто чтобы передать значение - в шарпе нельзя. Даже в ЖС сделали const-перменные, пусть они и всратые и можно уже внутреннее состояние изменить, но какая-то семантика все же есть.

А если их не использовать и заворачивать вызовы - это становится нечитаемо. Потому что будет:
Console.WriteLine(string.Join(" ", ("HelloWorld!".Split(" ").Reverse())));

Тут разобраться что там за чем вызывается - надо посидеть, подумать. А это простейший пример же.
Аноним 01/12/24 Вск 11:54:57 #29 №3332756 
>>3332680
>Условно
>val myValue = intArrayOf(1,2,3,4,5)
>Более понятно, чем в джаве
>int[] myValue = new int[5] {1,2,3,4,5};
Во, как я и говорил. Типичный пример "в язык_нейм хуй сахар вкуснее, чем в язык_нейм_2"
Аноним 01/12/24 Вск 13:08:11 #30 №3332798 
>>3332675
ее использую в контексте котлина Я потому что пишу и на шарпе и на котлине
И нет - это не просто слово. И нет это не НЕ читабельность. Это способность удобнЕЕ выразить мысль в коде
уже не раз приводил примеры, повторяться влом
повторю только малую часть

backing field. в котлине он просто есть. А в шарпе что? Что то там в дотнет 9...ну ну
примари конструкторы в шарпе притащили позже и они примитив по сравнению с котлиновскими (хотя лучше чем ничего)
енумы в шарпе...без мата нечего сказать
нельзя нормально расширить статический класс
нет инлайн методов настоящих
нет делегации свойств
нет топ левел функций
нет типа unit и поэтому есть Task и Task<T> вместо одного Task<T>/Task<Unit> (кто кодогенил оба варианта потому что просто необходимо их оба - тот поймет)
где бл... lateinit. вместо него null! что другое
ну и так далее...

>>3332751
> виду просто какой-нибудь местечковый сахарок
этот "местечковый" сахарок делает, например, принципиально невозможным портировать подход jetpack compose потому что язык просто не может. Максимум что могут выдать это comet по типу swiftui combine, да и тот будет засран вездесущими new

щас будет "да и не надо", да ))))
Аноним 01/12/24 Вск 13:55:52 #31 №3332829 
>>3332798
>щас будет "да и не надо", да
Я не пишу под андроид/айфон, на котлин/джаве и в душе не ебу за всякие jetpack compos-ы и т.д. Поэтому да - не надо. =)
Ну и опять же. Когда говорят про "выразительность", то это идет в контексте базы языка, а не всяких его фреймворков и тулкитов. Т.к. их можно наворотить сколько угодно и какого угодно вида.
Аноним 01/12/24 Вск 14:00:43 #32 №3332831 
>>3332755
Удачи дебажить это добро без негатива
Аноним 01/12/24 Вск 14:02:27 #33 №3332832 
>>3332829
а я и не говорил про фреймворки и тулкиты. И андроид тут вообще не причем. Кстати на замарине под андроид те же проблемы у шарпа ибо...ну мы же про шарп говорим.

я говорил за сам язык
и НЕВОЗМОЖНОСТЬ сделать подобное на шарпе. Когда что-то получается кривокосо (последствия компромиссов) - значит у языка не хватает выразительности.
А значит на шарпе мне приходится жить с другими подходами БЕЗ ВАРИАНТОВ

потому что НЕТ - НЕЛЬЗЯ НАВОРОТИТЬ, ограниченность языка позволяет наворотить только то, что можно наворотить как бы это в итоге не получилось, а не РЕАЛЬНО УДОБНО.

Просто средний шарпист, как и...допустим, похапэшник - НЕ ВИДИТ проблем выразительности ибо он и не видел что можно как то по другому. Тот вариант, что предлагает язык, является для него единственным, а значит и верным. Как и похапэшник не видит проблем похапэ, пока не пощупает питон.
Аноним 01/12/24 Вск 17:19:44 #34 №3332960 
image.png
>>3332742
А эта хуетень сразу вызывается, или лениво?
Стектрейс выглядит как говно?
Как отлаживать? Никак?
Брейкпойнты не ставятся примерно никуда?
Внутри там уебанский обобщённый фреймворк?

Смотри пример, какое мутное говно есть у меня в коде. Это героически переизобретают каждые два года, а потом с ним одни мучения
Аноним 01/12/24 Вск 17:24:38 #35 №3332964 
>>3332798

На мой взгляд, котлин очень невыразительный язык, я бы даже сказал обоссаный
Аноним 01/12/24 Вск 17:25:25 #36 №3332965 
>>3332829
Под выразительностью 10 лет назад преподносили в противовес джава коду, мол геттеров и сеттеров не писать и вообще дата классы, лямбда-хелл этот и прочее.

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

Прокси языки зло. Ты либо с нуля бери и дела, либо размазывай говно по полу.
Аноним 01/12/24 Вск 17:29:53 #37 №3332968 
>>3332832

Да успокойся уже, не рвись.
Аноним 01/12/24 Вск 17:34:35 #38 №3332971 
>>3332964
>я бы даже сказал обоссаный
>>3332968
>Да успокойся уже, не рвись.

еще будут профессиАнальные аргументы?
Аноним 01/12/24 Вск 17:54:51 #39 №3332985 
>>3332965
>Прокси языки зло
это так
>Под выразительностью 10 лет назад преподносили в противовес джава коду, мол геттеров и сеттеров не писать и вообще дата классы, лямбда-хелл этот и прочее.
в шарпе типа не та же ситуация, ога. и всякие рекорды появились не поэтому, а потому что гладиолус?
>Еще в те же времена стало ясно, что если апи не на дсл котлина, то пишешь ты на той же джаве
а это можно просто не тащить легаси. ведь можно же
в шарпе же увы легаси вбит навечно. И никогда Ilist не станет наследоваться от IReadOnlyList, и даже Lock из 9го дотнета не заставит похудеть хидеры объектов. И много чего этакого что "никогда"
Аноним 01/12/24 Вск 18:06:42 #40 №3332998 
>>3332960
Так охуенно выглядит же. Чего ты?
Надо просто взять концепт и довести до ума. Ну и майков заебывать, чтобы наконец довели до ума дебагер. Вон, недавно наконец - при return стал показывать что там реутрнится. Думаю если сильно попросить и примеры что это и при дебаге линку будет полезно - они таки возьмут в работу.
Аноним 01/12/24 Вск 18:10:51 #41 №3332999 
>>3332670
Там Automapper.AI в пререлизе, как выпустят код писать вообще не придётся.
Аноним 01/12/24 Вск 18:11:29 #42 №3333001 
>>3332998
>чтобы наконец довели до ума дебагер
они это не умеют. у них лапки
взяли бы oz-code. да запихали в дебаггер, но нет - лапки кривые же
Аноним 01/12/24 Вск 18:15:21 #43 №3333006 
>>3332998
вот что было с теми же LINQ
https://www.youtube.com/watch?v=h4VgoWt91LM

а что в итоге - вы и так знаете
Аноним 01/12/24 Вск 20:16:09 #44 №3333063 
>>3332985
>Увы легаси вбит навечно. И никогда Ilist не станет наследоваться от IReadOnlyList,

Нахуя? Он же рид-онли, а лист не рид-онли.

>... и даже Lock из 9го дотнета не заставит похудеть хидеры объектов. И много чего этакого что "никогда"

В 12 дотнете запланирован полный переход.
Аноним 01/12/24 Вск 20:19:25 #45 №3333064 
>>3333006
Чел, вот эту мутную ебалу-билдер-через-точечку оставь на новый год, хорошо?
Аноним 01/12/24 Вск 20:31:17 #46 №3333074 
>>3333063
>Он же рид-онли, а лист не рид-онли.
А типа List (не интерфейс) ридонли.Но между тем реализует IReadOnlyList, а еще и IEnumerable, которое риоднли по самые помидоры

Как можно передать Ilist в метод принимающий IEnumerable, так и тут та же логика, но
в шарпе нет Ilist : IReadOnlyList потому что изначально тупо спроектировали. А теперь уже поздно - ломается бинарная совместимость.

>В 12 дотнете запланирован полный переход.
брякоченджесы на уровне бинарной совместимости? ну ну.

>>3333064
это кстати шикарная ебала. просто померла со студией 2019, а для 2022 выкатили недоделку и забросили.
Спрашивается - почему в студии такой убогий дебаггер в плане гуи. Просто говно говнистого говна. Ответ - потому что рукожопы.
И новый год ничего не изменит в их жопошных руках. Лол, даже ретурн валую они сделали хорошо в этом тысячелетии, прямо удивился
Аноним 01/12/24 Вск 20:43:32 #47 №3333078 
>>3332832
Нормальный шарпист знает о Nemerle - языке для .NET, который имеет гигиенические макросы, что позволяет вводить новые синтаксические конструкции. В нём легко можно ввести все те фичи, о которых ты говоришь.
К сожалению, Nemerle умер... Но Microsoft постепенно движется к реализации его возможностей в C#.
Аноним 01/12/24 Вск 20:54:41 #48 №3333083 
>>3333078
>К сожалению, Nemerle умер
тогда ЗАЧЕМ ты его вспоминаешь??????? риторический вопрос

однако
>В нём легко можно ввести все те фичи
может мне еще свой язык написать? а че нет?
с меня хватает и необходимости создавать и поддерживать либу в которой есть то, чего ожидаешь в дотнете, но будет там через 1000000 лет.
вообще я не один такой с такой либой. Даже вон есть dotnext проект
Аноним 01/12/24 Вск 21:12:21 #49 №3333085 
>>3333074
>IEnumerable, которое риоднли по самые помидоры

Перечисление только перечисляет, ему ничего не известно о словах, которые ты произносишь
Аноним 01/12/24 Вск 21:15:29 #50 №3333086 
>>3333078
>В нём легко можно ввести все те фичи, о которых ты говоришь.

В принципе нахуй не нужно, можно просто автомаппер использовать
Аноним 01/12/24 Вск 21:15:42 #51 №3333087 
>>3333085
>Перечисление только перечисляет
как и IReadOnlyList только читает и его ничуть не волнует ридонли ли список или нет. Он всего лишь говорит "я буду только читать"

>ему ничего не известно о словах, которые ты произносишь
tomatoes.Select(t=>t)
а теперь?
Аноним 01/12/24 Вск 21:21:19 #52 №3333088 
>>3333074
>бинарная совместимость
Я даже не будут спрашивать какую шизофрению ты в это понятие закладываешь.

Надо будет - прибьют гвоздями как Enumerator для foreach прибит. Просто это никому не нужно. Это не решает вообще никакую проблему.
Аноним 01/12/24 Вск 21:29:47 #53 №3333089 
>>3333088
>Надо будет - прибьют гвоздями
вообще то изначально было надо. но не вышло. даже статьи на эту тему писали почему НЕЛЬЗЯ это сделать - именно проблема бинарной совместимости. Так что никто никогда гвоздики не тронет

>Я даже не будут спрашивать какую шизофрению ты в это понятие закладываешь.
а я отвечу
они ввели Lock польза от которой какая? новый апи? никто не побежит переделывать текущие локи
возможность убрать секцию для лока из хидера объекта - тогда все старые либы которые просто "мы тут версию дотнета поменяли" просто выпадут в осадок.
Тогда что они планируют в дотнет 12? из за подобных проблем никто не стал делать IList : IReadOnlyList ни щас, ниКОГДА
Аноним 01/12/24 Вск 21:51:03 #54 №3333095 
>>3332701
>В Котлине есть автомаппер?
Чувак, автомаппер - это всего лишь библиотека! Их тысячи.
Если тебе нужен маппер, но нет подходящего с нужными фичами - напиши свой. Это делается на коленке.
Аноним 01/12/24 Вск 21:53:42 #55 №3333098 
>>3333083
А зачем ты полудохлый Коклин вспоминаешь в теме про .NET?
Аноним 01/12/24 Вск 21:55:13 #56 №3333099 
>>3333086
автомаппер нахуй не нужен
к тому же он не решает ни одну из упомянутых котлинистом фич
Аноним 01/12/24 Вск 22:16:27 #57 №3333102 
>>3333098
критикую шарп, нельзя что ли? в шарпе хватает говна и ему радоваться или что?
Аноним 02/12/24 Пнд 01:43:05 #58 №3333154 
>>3333102
Да, нельзя.
Нет, не хватает.
Аноним 02/12/24 Пнд 03:51:49 #59 №3333167 
>>3333154
>Да, нельзя.
я не говноед. я критикую и требуют навести порядок. жаль что меня не очень слушают, поэтому получаем фичи в недоделанном виде, а то и годами ждем.
>Нет, не хватает.
так ты не переживай. мелкие еще наделают. они в этом мастера. они найдут где сделать так что "ну семён семеныч"

свойства без backingfield, ConfigureAwait, рекорды, is var, полусырые примари конструторы (хотя как я понимаю это всё) и т.д. - что то доделывают через годы (когда уже поздновато), но в основном хер
Ну хоть расширения на доработку отправили, но они постараются и там сделать жопно
Аноним 02/12/24 Пнд 06:00:59 #60 №3333177 
m57jjzqjj4db1.png
>>3332445 (OP)
Всем ку мужики, скатываюсь в шарписты, подскажите где можно найти задачи/проекты которые будут похожи на реальные рабочие кейсы? Я имею ввиду не хуйню с литкода или кодварса, а что-то реальное и прикладное. Хочу потренироваться и занять себя.>>3333088
Аноним 02/12/24 Пнд 06:19:19 #61 №3333179 
>>3332985
>Ilist не станет наследоваться от IReadOnlyList
ФэПэшное фантазии умерли уже лет 10 назад. Программирование не может не иметь сайд эффектов. Лист по задумке это динамическая структура и иметь иммутабельную структуру данных в хипе, а не в стеке - это абсурд и результат того, что некомпетентные люди попадают в разработку языков.

>в шарпе типа не та же ситуация
Нет, даже 5 лет назад шарп был на голову выше жабы. Продать его шарпистам было сложно, ради пару модных сахаринок.
То что в шарп тянут модные свестелки и перделки - в чем проблема? Это больше гемморой для команды разработчиков, чем для потребителя. Нормальная практика взять проверенное другими фичу и засунуть себе (так же и джава делает, что там от котлина еще осталось?).

>а это можно просто не тащить легаси. ведь можно же
Нельзя, потому что у котлина не было ничего своего, перевкатуны даже об гредл разбивались. Представь тебе только что рассказали про модный и молодежный язык, чуть ли не правильный питон у тебя в руках и ты такой на радостях бежишь потыкать в него и тут тебя встречают сразу кровавый тырпрайз с его аномальными оверхед-решениями, которые непонятны даже местным (блин, даже гугля про веб на джаве в 2016 году ты попадал на страницы про EE). Фраза "котлин пахнет джавой", это фраза того времени, то что они полезли в котлин жс, котлин нейтив, а не стали пилить дефолт инструменты для jvm на их выразительном, это фатальная ошибка руководства тех лет. котлин js вообще смешно, они правда думали что смогут конкурировать с node.js и ts, написав кривую обертку над HTML DOM? Ты представь уровень некомпетентности в управление котлина в те года
Аноним 02/12/24 Пнд 06:27:01 #62 №3333181 
>>3333177
Если вебдресня - то по традиции люди с двача пишут движок двача.

Я бы попробовал какую-нибудь низкополигональную (low poly) игрушку написать на юнити, не ради результата, а ради каких-то механик которые можно написать на шарпах (например, сложный расчет поведения врагов за счет динамически меняющегося окружения. Или процедурная генерация местности или мобов как в no man sky). В общем что-то, что визуально можно позапускать потыкать, это интереснее бэкенда с перекладыванием json'ов (хотя есть вот эти браузерные сетевые миниигрушки на вебассембли).
Аноним 02/12/24 Пнд 06:29:52 #63 №3333182 
>>3332445 (OP)
https://career.habr.com/80levelelf

типичный любитель сидиеза, кста
Аноним 02/12/24 Пнд 07:08:54 #64 №3333189 
>>3333102
>критикую шарп, нельзя что ли? в шарпе хватает говна и ему радоваться или что?
Шарп мультикомбайн в прикладной разработке, как наверное и современный js. И там и там людями срать на какие-то огрехи языка которым овер 20 лет, все реально понимают почему так или иначе исторически сложилось, все внимание пользователей этих языков не в том с какой стороны тип записать или список объявить, там у людей уже фокус смешается на уровень - какой взять инструмент и какие технологии помогут в том или ином решении. в свое время я попал в шарпы не потому что нравился синтаксис, а потому что он был в моем решение - юнити, был бы там хоть js - мне было срать, я бы писал на js

Так что всем срать что твой юношеский максимализм фрустрирует с синдромом утенка и тебе что-то где-то не нравится. Хочешь уровень реальной разработки? Возьми и напиши свой "свифт/котлин/ts" для дотнета (и пойми потом почему это не нужно), а мериться тем как одно и тоже делается в разных языках, но чуточку по разному - это удел глупеньких.

Смотреть на котлин надо смотреть через призму андроида. А не потому что там глисты другие. Так что если нравится котлин? Напиши уже какую-то теху или флагман на нем, это ему больше поможет. Сейчас главное проблема котлина и то что его убивает - это вендерлок на IDE, так что спаси свой кокотлин, вытащи его хотя бы в vscode.
Аноним 02/12/24 Пнд 07:17:05 #65 №3333190 
>>3333087
>tomatoes.Select(t=>t)
>а теперь?
И что "теперь"? Select это метод расширения статический, это не метод самого IEnumerable, так что он все так же ничего не знает.
Аноним 02/12/24 Пнд 07:27:32 #66 №3333192 
>>3333167
>годами ждем.
Кто ждет? Зачем? Иди попиши на го, потом даже в джаву вернутся будет счастьем.

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

Так что спасибо что не го и не раст.
Аноним 02/12/24 Пнд 07:49:17 #67 №3333205 
>>3333192
>Недавно узнал что раст планировался изначально с гринтредами и гц как го, но в нормальном дизайне и тулингом не из 70х годов

Отсутствие GC это единственное, что отличает раст от других технологий.
Аноним 02/12/24 Пнд 07:59:33 #68 №3333215 
⚡⚡⚡Dotnet 10 будет включать новый сборщик мусора, основанный на технологиях AI (машинного обучения).

Технология будет включаться при наличии тензорных ядер, либо в облачных сервисах Microsoft, при наличии платной подписки Azure.AI.
Аноним 02/12/24 Пнд 10:51:12 #69 №3333270 
>>3333215
>Технология будет включаться при наличии тензорных ядер, либо в облачных сервисах Microsoft, при наличии платной подписки Azure.AI.
лол
Аноним 02/12/24 Пнд 11:15:31 #70 №3333286 
>>3333205
Отсутствие поддержки внутренний мутабельности объектов, практически навязывает использование Arc<Mutex<T>>
Что является счетчиком ссылок с проверкой владения во время исполнение. Это не так критично, но это уже не совсем системный уровень.

Отсутствие ГЦ нужно только паяльникам, в прикладной разработке банально нет столько ресурсов, чтобы еще с указателями трахаться. То есть, это настолько узкая и ниша, что старого с++ там было достаточно, на котором и так тонна либ, которые переписывать никто не собирается.
А вот наличие в бэкенде удобного конкурентного языка - это до сих пор явная потребность.
Аноним 02/12/24 Пнд 11:18:11 #71 №3333289 
>>3333215
Все юродствуешь.
Аноним 02/12/24 Пнд 12:18:49 #72 №3333316 
>>3333179
>Лист по задумке это динамическая структура
сам понял что сказал? лично я нет. причем тут вообще фп. причем тут вообще стек. есть КОНТРАКТ.
IList реализует IEnumerable, потому что IList имеет часть контракта "читать" и поэтому IList можно передавать БЕЗ ДОПОЛНИТЕЛЬНЫХ приседаний в методы, которые принимают IEnumerable
с IReadOnlyList та же история просто ЕГО ЗАБЫЛИ когда изначально дизайнили контракт списков (кстати жопой дизайнили). А когда люди наконец пояснили что "надо бы", то оказалось что уже поздно впихивать как надо.

>даже 5 лет назад шарп был на голову выше жабы.
причем тут жаба. в шарп тянут свистелки по той же причине - народу надо.
>взять проверенное другими фичу и засунуть себе (так же и джава делает
ога, через десятилетия. при этом все эти 10 лет утверждая "эта фича никому не нужна", а потом с бахвальством "смотрите мы сделяль". поэтому жава говнистое говно и всё лучше жавы, даже говно бомжа лучше жавы.

>потому что у котлина не было ничего своего
это просто динозавры привыкли. Я вот не изучал легаси и сразу жетпак и котлин и всрались мне всякие там ретрофиты. И никаких "эта хрень не работает с корутинами". Но да, то я - у меня не было старых проектов которые нужно было бы переводить.
Аноним 02/12/24 Пнд 12:31:17 #73 №3333321 
>>3333189
>И там и там людями срать на какие-то огрехи языка которым овер 20 лет
это личное дело каждого говноеда.
не всем срать на огрехи что можно исправить
бэкингфилды тому пример, если всем срать то зачем их исправляют?
и так многие вещи просят. Просто не всех слушают.

>твой юношеский максимализм
я начал писать на шарпе с его рождения еще с версии 1 и это мой основной язык. Так что про синдром утенка он как бы более у тебя. У меня же здравая критика "не нужно бояться признавать ошибки, но и не нужно избегать их исправлять, просто можно не через десятилетия, а? мы ж не жава"

>Смотреть на котлин надо смотреть через призму андроида
мне на него смотреть не надо. Я шарпист и спотыкаясь о проблемы дизайна шарпа, иду и пишу мелким, что "тут херня, а другой херни вообще нет", а не хвалю котлин "вот там есть". С котлином мне просто ЗАМЕТНЕЕ разница. Но это не значит что я и без котлина не матерился каждый раз создавая бэкингфилд или кодируя ConfigureAwait(false) или кастуя к IReadOnlyList (ну там ладно я хоть понимаю что они исправить не могут) или не имея очевидных методов LINQ или того же словаря - котлин тут вообще не причем.

>>3333190
>Select это метод расширения статический
зато возвращает IEnumerable помидорков. так что...

>>3333192
>Кто ждет? Зачем?
внезапно шарписты. потому что нужно. смотри список proposal и прозревай. и это ведь про новые фичи.
>Иди попиши на го
иди поешь говна чтобы познать что тебе не так уж плохо или а в африке вообще негры голодают
это аргументы уровня /b
Аноним 02/12/24 Пнд 13:10:19 #74 №3333360 
>>3333321
>я начал писать на шарпе с его рождения еще с версии 1 и это мой основной язык.
Тогда бы ты обплювался от котлина, который везде наговнил классическому дефолт джава-стилю (чтобы быть нетакусиком). Если для го это быть может норм, это новый яп и он может делать что хочет, то для приемника джавы, переворачивать базу семантики, это идиотизм.

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

>причем тут вообще фп.
А в том что листы по природе были созданы в противовес массивов как мутабельная динамическая структура данных. Представь ты создаешь машину которая должна ездить, а потом создаешь машину которая ездить не должна, ибо опасно когда она ездит, Ванюша может пораниться в коде.
Аноним 02/12/24 Пнд 13:23:14 #75 №3333375 
>>3333360
>Тогда бы ты обплювался от котлина
у меня претензий к нему тоже хватает, но тут не котлин тред чтобы я им возмущался
>наговнил классическому дефолт джава-стилю
котлин не преемник жавы. это шарп преемник ибо начался как "мы сделаем свою жаву".

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

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

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

А если брать дизайн списков то сделано было ЧЕРЕЗ ЖОПУ
нужно было сразу разделить мутабельные, иммутабельные, ридонли на уровне языка. И назвать нормально
Аноним 02/12/24 Пнд 13:37:16 #76 №3333389 
>>3333375
>нельзя? кто сказал нельзя? что за дикий бред
Реальность, без декомпозиции мозг не способен воспринимать сложные системы полностью, там физическое ограничение на 4-7 элементов. В остальном восприятие происходит через обобщение, но так что ты его даже не чувствуешь - поэтому и получается что ты как вкатун бегаешь с листами, а кто-то решает реальные проблемы реального софта. Вот мне думаешь важны какие там листы, когда я не могу локализовать плавающую ошибку в коде?

Так что учи шарп молча. Еще бы к шрифтам в вскоде докапался бы.
Аноним 02/12/24 Пнд 14:54:47 #77 №3333446 
>>3333389
>там физическое ограничение на 4-7 элементов
ты какой то шизнутый. какое отношение имеет, например, НЕОБХОДИМОСТЬ писать бэкингфилд руками к ограничению твоего мозга?
и остальное тоже туда же.

похоже у тебя шизофазия какая то, раз ты вообще не понимаешь что я пишу
Аноним 02/12/24 Пнд 15:07:59 #78 №3333457 
>>3333375
>бэкингфилдами
Чел, а ты можешь объяснить как тупому, зачем они нужны?
А то я вот почитал и чет не понимаю, что в них такого уникального, что нельзя было бы заменить обычными свойствами с модификаторами на get/set ?

А то ты так их расписываешь, будто это прям килер фича какая-то, вот и хотелось бы понять.
Аноним 02/12/24 Пнд 15:37:50 #79 №3333472 
>>3333457
Нахуя тогда свойства нужны, и чем они отличаются от публичных полей?
Аноним 02/12/24 Пнд 15:48:13 #80 №3333475 
image.png
>>3333446
>Я не ограниченный биоробот, который мыслит субъективно, слышишь! Я высшие существо способное думать умно! Если я вижу что листы неправильные, значит так оно и есть! Это самая главная проблема сейчас в шарпах! Это очень сюрьезна, ты понял?!
Аноним 02/12/24 Пнд 15:53:21 #81 №3333478 
>>3333457
Очередная околомагия, помню еще в кокотлине можно было как-то просрать контекст this как в js, лол.
Аноним 02/12/24 Пнд 17:22:41 #82 №3333531 
>>3333457
ты просто не понимаешь что это такое
их нельзя заменить обычными свойствами ибо они и есть ЧАСТЬ свойств

вместо

private int _foo;
public int Foo {
get=>_foo;
set{
_foo=value;
...другой код
}

ты можешь не заводить private int _foo; которая может нахер никому не нужна, а заведена лишь потому что нечему присвоить =value

поэтому в норм языках если ты хочешь добавить код в сеттер, и тебе нахрен не нужно это приватное поле в классе, то ты можешь сделать так
get=>field
set{
field=value;
...другой код
}
где этот field за тебя скомпилирует компилятор. вот в дотнет9 это и собирались сделать...или сделали но там экспериментально...или сделали. вот перейду на дотнет 9 и посмотрю
Аноним 02/12/24 Пнд 17:27:00 #83 №3333533 
>>3333475
это одна из проблем в шарпах. и ты можешь сколько угодно трололо, но это не изменит ущербности списков в шарпе
так что мимо, иду учись аргументировать нормально дитятко

В чем ущербность? в том что нет нормального искаропочного разграничения между мутабульными, иммутабельными, риоднли, фрозен и прочее. Ну и на уровне контрактов та же херня. Я не могу передать byte[] как ридонли и не потерять в перфомансе. Когда ввели IReadOnlyList, то он оказался неудобным и большинство так и продолжило передавать везде IList (какой такой там чистый код вы что) не замораиваясь с какими то там "контрактами" вида "если метод будет лишь читать список, то пусть прямо обозначает это в сигнатуре"
Аноним 02/12/24 Пнд 18:08:48 #84 №3333556 
>>3333533
https://www.youtube.com/watch?v=m3KtgKVFOYk
Аноним 02/12/24 Пнд 19:08:38 #85 №3333602 
>>3333531
С-с-ука-а. Ну это же ебучий сахар. Ты весь тред сотрасаешься насколько важны - эти бэкингфилды, а по сути - нихуя особенного. Просто, блять, приватное поле под капот спрятал. Я понимаю, если бы это было, что-нибудь вроде init или with, которые в 9-м шарпе появились. Вот это да офигеть как избавляло от кучи ебли. А тут...

Алсо, я честно говоря вообще не вспомню, чтобы за последние 3 года хоть какую-то логику в get/set-ах писал.
Аноним 02/12/24 Пнд 19:15:35 #86 №3333609 
>>3333556
только бездарям, которые себя погромистами называют
а нормальным программистам - нет.

>>3333602
как и get/set тоже сахар. может его тоже не надо было делать, а как в жаве методами? ты ж вот не пишешь в свойствах ничего из логки. зачем тогда вообще свойства? или что ты хотел сказать?

это пример того что этот сахар со свойствами изначально не был нормально сделан. И такое в шарпе много где.
Я не сотрясаюсь о их важности. я сотрясаюсь о том что ФИЧИ ДЕЛАЮТ ЖОПОЙ и они получаются сырыми.
и это просто пример одной из фич, которая показательна тем, что через десятки лет они таки решили этот вопрос допилить (что прямо нереальная редкость). иди напиши им что "не надо этого делать, никому не нужно, а что там в proposal champions, так то жависты накручивают"

>чтобы за последние 3 года хоть какую-то логику в get/set-ах писал.
ну да, ты ж один у нас на свете шарпист )
Аноним 02/12/24 Пнд 20:04:01 #87 №3333648 
>>3333533
>В чем ущербность?

Так в чём ущербность-то?
Аноним 02/12/24 Пнд 20:10:09 #88 №3333649 
wr-960.webp
>>3333531
>поэтому в норм языках если ты хочешь добавить код в сеттер, и тебе нахрен не нужно это приватное поле в классе, то ты можешь сделать так

Больше, больше сахара!
Аноним 02/12/24 Пнд 20:12:28 #89 №3333652 
>>3333472
Тем что свойства - это методы, а поля - это всего лишь значения.
Аноним 02/12/24 Пнд 20:35:25 #90 №3333660 
⚡⚡⚡Платформа Asp.Net Core 10 будет включать в себя новую библиотеку System.Object.Autoassigner.

"Многие просили нас включить в ASP.NET Core решение для автоматического маппинга свойств в объектах. Поэтому вместе с Visual Studio 2024 будет поставляться совершенно новое решение на базе многолетнего изучения опыта разработчиков.

Мы разработали для нового пакета специальный, укороченный синтаксис. Благодаря ускоренной в dotnet 10 обработке деревьев выражений, а так же обновлённому API динамических прокси, System.Object.Autoassigner работает на 12% быстрее альтернативных библиотек."
- Раджеш Папаржеканасра, главный архитектор Blazor
Аноним 02/12/24 Пнд 20:38:59 #91 №3333662 
>>3333652
А нахуя тебе такие методы, которые все используют просто как публичные поля?

Никогда не понимал этой хуйни. Я бы вообще не парился и геттеры руками писал
Аноним 02/12/24 Пнд 20:50:06 #92 №3333670 
>>3333648
>Так в чём ущербность-то?
я ж говорю. чужие методы без проблем принимают IList просто потому что "а что еще ж", и хрен поймешь меняют ли они твой массив внутри или нет. С выходом IReadOnlyList ...ничего не изменилось. Особенно забавно если у тебя уже IReadOnlyList и методу нахер не нужно писать в твой список, но он же принимает IList

фрозен коллекции появились ТОЛЬКО ВОТ. иммутабельные тоже не сразу.
ну а на уровне обычного массива вообще нет защиты компилятора на запись без каста к интерфейсу со всеми вытекающими.

>>3333649
>Больше, больше сахара!
вообще то это не новый сахар, а он должен был быть таким с самого начала. просто как обычно сделали все руками из жопы
И да - этот сахар нужен. Не веришь - иди убеди что зря мелкие доделывают фичу
но лично ты после выхода фичи можешь не использовать. тебе ж не нужно.
Аноним 02/12/24 Пнд 20:53:11 #93 №3333672 
>>3333670
Пиздец, ты развёл нытья на весь день вокруг несущественной мелочи.
Аноним 02/12/24 Пнд 20:55:26 #94 №3333673 
>>3333670
>должен был быть таким с самого начала

Кому должен?
Аноним 02/12/24 Пнд 20:57:23 #95 №3333676 
>>3333672
дурачок что ли
это ОДИН ИЗ МНОЖЕСТВА примеров
просто нагляднее ибо его таки обещают притащить

интересно. а вы сахаром пользуетесь в шарпе или тупо лицемерите?
отвечать не надо. ответ знают все

>>3333673
понятию "нормальный дизайн языка позволяющий писать чистый и стройный код без костылей и приседания, и лишних компромиссов"
но ВАМ такое понятие неведомо, поэтому можешь даже не пытаться понять.
Аноним 02/12/24 Пнд 21:08:17 #96 №3333683 
>>3333676
>чистый и стройный код
За разговоры про чистый код в 2к24 в приличном обществе руки не подают, а через пару лет, так вообще пиздить начнут.
Аноним 02/12/24 Пнд 21:45:15 #97 №3333701 
>>3333683
пожалуй, постою подальше от вашего "приличного" общества
а то еще заражусь проказой.
Аноним 02/12/24 Пнд 22:02:09 #98 №3333708 
>>3333683
>За разговоры про чистый код в 2к24 в приличном обществе руки не подают, а через пару лет, так вообще пиздить начнут.

Есть что-то лучше? Чистый код классная книжка. Особенно классно там поводили хуем по губам любителям писать комментарии
Аноним 02/12/24 Пнд 22:05:03 #99 №3333710 
>>3333676
>это ОДИН ИЗ МНОЖЕСТВА примеров

Возмутительно!
Аноним 03/12/24 Втр 00:57:30 #100 №3333761 
>>3333710
таков мир дотнета
вон решарпер последний имеет баг где при переименовании студия просто виснет. фикс будет в следующем билде. а когда он? полмесяца прошло
Аноним 03/12/24 Втр 03:45:52 #101 №3333776 
ну вот дотнет 9 наглядный пример

они наконец додумались бэкингфилды
они наконец додумались до метода Index
они наконец додумались что hex строка нужно то в разном регистре.
они наконец додумались что если в LINQ проходит ICollection то можно не создавать итератор (это сколько то тредов назад сюда заходил жавишник и выиграл в перфомансе именно по этой причине)
они наконец додумались добавить еще методов в LINQ (но все равно мало)
они наконец додумались что таки нужен и дженерик вариант SortedDictionary
они наконец додумались сделать оптимизации для Task.WhenAll (в 8 версии тоже делали, но кто ж делает всё очевидное сразу то, ведь можно отложить на год....двадцать...вечность)
и другое...

возникает вопрос - а раньше никак нельзя было догадаться да?
Аноним 03/12/24 Втр 05:41:44 #102 №3333788 
>>3333776
>а раньше никак нельзя было догадаться да?
Догадаться то можно было, а ты пойди и сделай сразу. И можешь не утруждать себя фразами "а вот в язык_нейм сделали" - копнув поглубже в любом языке можно дофига другого говна найти из разряда "а чо сразу не сделали". Вон, куда ни ткни, все современные языкописатели сначала усираются чем-нибудь в духе "дженерики нинужны", а потом, когда им комьюнити панамку хуев напихают, начинают все это прикручивать на готовый костяк, пытаясь к херам все не сломать.

Ты вот к примеру если умный такой, чего битками в 2007-м не обзавелся? Ведь мог бы догадаться, а?
Аноним 03/12/24 Втр 05:45:21 #103 №3333789 
>>3333776
возникает вопрос - а раньше никак нельзя было догадаться да?

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

Умник ёбаный
Аноним 03/12/24 Втр 06:27:18 #104 №3333799 
Даю бесплатный совет

Чтобы максимально заебать окружающих, нужно завалить код комментариями, составленными из цепочек слов в родительном падеже:

/// Форма отправки данных платежа клиента службы доставки
...

/// Метод отправки формы данных платежа клиента службы доставки
...

/// Сервис вызова метода отправки формы данных платежа клиента службы доставки
...

/// Конструктор сервиса вызова метода отправки формы данных платежа клиента службы доставки
...

/// Интерфейс сервиса вызова метода отправки формы данных платежа клиента службы доставки
...

/// Регистрация DI контейнера интерфейса сервиса вызова метода отправки формы данных платежа клиента службы доставки
...
Аноним 03/12/24 Втр 06:51:30 #105 №3333806 
>>3333799
>/// Форма отправки данных платежа клиента службы доставки
Это норм, потому, что вротебал разбираться в тысяче ДТО-шек по их названиям какая из них за что отвечает.

>>3333799
>/// Метод отправки формы данных платежа клиента службы доставки
>/// Конструктор сервиса вызова метода отправки формы данных платежа клиента службы доставки
>/// Регистрация DI контейнера интерфейса сервиса вызова метода отправки формы данных платежа клиента службы доставки
>/// Сервис вызова метода отправки формы данных платежа клиента службы доставки

Это да, очевидная хуйня - засоряет.


>>3333799
>/// Интерфейс сервиса вызова метода отправки формы данных платежа клиента службы доставки
То что, это интерфейс итак очевидно и не нежно, но подписать, что за контракт он реализует, тоже иногда бывает полезно, если это не какая-нибудь очевидная хуйня вроде репозитория или клиента.
Аноним 03/12/24 Втр 06:52:26 #106 №3333808 
>>3333806
>и не нежно
и не нужно
Аноним 03/12/24 Втр 07:23:22 #107 №3333817 
Допустим я ебанулся и делаю монолит модульный но мой мозг загажен микросервисами.
Собственно, я не хочу делать общую сборку в которую вынесу события для эвентбаса. Я хочу чтобы каждый модуль мог сам определить события, и потом если имя И СИГНАТУРА объекта совпадает - какой-то модуль обрабатывал.

Тут и вопрос. Есть ли более хороший путь, кроме как заворачивать при публикации в жсон и динамически пробовать развернуть в объект уже из другой сборки?
Я как-то делал типа утиную реализацию, типа если все поля есть - то можем спапить. НО, это во первых был оч обскурный код, там надо было ебаться с генерацией типов в рантайме, да и вообще, не настолько я хорошо знаю шарпы. Больше так не хочу.

Чтобы было понятно:
public record UserAuthEvent(int Id, string Name, string Email) : IEvent // MyProj.ModuleA
public record UserAuthEvent(int Id, string Name, string Email) : IEvent // MyProj.ModuleB

Почему я так хочу? Потому что я не хочу пересобирать модули, которые не менялись. А если я буду менять какую-то базовую сборку с событиями - все модули что ее используют(считай все) будут должны пересобраться, а иногда это критично.
Аноним 03/12/24 Втр 07:39:58 #108 №3333820 
>>3333806
Это ирония была. Комментарии запрещены у нас, как и на всех нормальных проектах после того как один дебик вот такой хуйнёй начал заниматься.
Аноним 03/12/24 Втр 07:42:45 #109 №3333822 
>>3333817
сделай дискриминатор и по нему разбирай тип сообщения
Аноним 03/12/24 Втр 07:43:50 #110 №3333823 
>>3333817
>Почему я так хочу? Потому что я не хочу пересобирать модули, которые не менялись.
Ты дрочила просто, экономишь на хуйне
Аноним 03/12/24 Втр 08:31:14 #111 №3333834 
>>3333817
>спапить

Смамить
Аноним 03/12/24 Втр 10:32:54 #112 №3333890 
>>3333531
Если тебе приходится часто писать приватное поле под гет/сет - то ты неправильно используешь свойства.
Аноним 03/12/24 Втр 10:46:24 #113 №3333899 
>>3333817
>события для эвентбаса
Нахуя? Хореография вообще нахуй не нужна.
Аноним 03/12/24 Втр 13:05:21 #114 №3334013 
>>3333899
Правильно, нахуй не нужна, лучше использовать автомаппер
Аноним 03/12/24 Втр 13:12:54 #115 №3334018 
>>3333788
>а ты пойди и сделай сразу
а я иду и делаю сразу. серьезно. в моей либе ака MiscUtils есть много чего и даже больше и уже десять лет минимум.
потому что нет ничего сложного сделать сразу.

>чего битками в 2007-м не обзавелся?
потому что я не оракул разбираться в чем то новом неизвестном
а SortedDictionary существует со времен динозавров и дженерики тоже. Что тут неизвестного то
А LINQ наверное инопланетные технологии будущего да?
ну а hex это ж...никто никогда не пользуется hex строками.

>>3333789
>Зна́ние за́дним число́м — когнитивное искажение,
ты разраб дотнета?
взять тот же hex
они делают методы в классе Convert не помню в какой версии дотнета И делают метод для генерации хеша в нижнем регистре НО ДЕЛАЮ! ЕГО! ИНТЕРНАЛ!!!!!!
то есть они всё таки понимают нужность этого, потому что он был реализован сразу...просто ИНТЕРНАЛ

>>3333890
>то ты неправильно используешь свойства.
вернее как раз правильно. геттеры и сеттеры как раз и придуманы чтобы можно было логику добавить, а не только степень видимости установить.
Другой вопрос КАКУЮ логику я там пишу - но этот вопрос за рамками.
Аноним 03/12/24 Втр 14:30:27 #116 №3334076 
>>3334018
>НО ДЕЛАЮ! ЕГО! ИНТЕРНАЛ!!!!!!

И ЧЕ!!!!!!?????
Аноним 03/12/24 Втр 14:34:24 #117 №3334080 
>>3334076
да ничего
когда тебе в чай с сахаром не положат, собственно, чай - ну может ты поймешь в чем беда
хотя нет, не поймешь. Тебе в голову мозг не доложили )
Аноним 03/12/24 Втр 14:56:50 #118 №3334102 
Накидайте вопросов с однозначным ответом, по которым джуна можно сразу отсеять.

Типо чем "throw отличается от throw ex". Хотя может джуны уже и это знают.
Аноним 03/12/24 Втр 15:00:30 #119 №3334107 
>>3334102
что за методы типа UnsafeRegister
например, в CancellationToken
Аноним 03/12/24 Втр 15:01:51 #120 №3334108 
>>3334018
>они делают методы в классе Convert не помню в какой версии дотнета И делают метод для генерации хеша в нижнем регистре НО ДЕЛАЮ! ЕГО! ИНТЕРНАЛ!!!!!!
Напиши им в issue. Ну то есть это нормальная претензия, буквально создай им этот вопрос в гитхабе, я видел что они вполне себе выносили какие-то методы в паблик на основе реквестов, после обсуждения естественно.

Шо ты так гонишь на дотнетчиков, подумаешь обосрались в мелочи. В листе кстати есть AsReadOnly, которая даже аллокаций не делает, кроме аллокации себя естественно. Чем тебе это не нравится? Решили же твою проблему.
Аноним 03/12/24 Втр 15:07:16 #121 №3334114 
>>3334108
>Напиши им в issue. Ну то есть это нормальная претензия, буквально создай им этот вопрос в гитхабе,
ну я так и делаю же. Я ж не говноед, который "жричодали". Вот только толку мало - issue висят годами, вот в чем проблема.

>подумаешь обосрались в мелочи
практически в КАЖДОЙ мелочи.

>которая даже аллокаций не делает
но меняет объект на другой. Да и костыль это.
>Решили же твою проблему
нет не решили. Сам для себя я сразу написал метод типа дапперовоского AsList
но это никак не решает проблему что другие используют IList потому что "ну всегда использовали, а IReadOnlyList неудобна"
Аноним 03/12/24 Втр 15:53:07 #122 №3334140 
>>3334107
Я на такое сам не отвечу, это уже совсем обскурщина. Про отмену асинхронного метода через токен сорс ещё куда не шло.
Аноним 03/12/24 Втр 16:51:33 #123 №3334182 
>>3334140
ну тогда пусть расскажет про ExcutionContext, на который и завязано существование UnsafeRegister
и в таймерах та же беда.
Аноним 03/12/24 Втр 18:30:41 #124 №3334230 
>>333410
Как автомаппер оптимизирует запросы в БД?
Ты из епама?
Кто у твоей мамочки сладкий любимчик?
Почему Котлин такой выразительный?
Аноним 03/12/24 Втр 18:51:51 #125 №3334247 
>>3334230
>Почему Котлин такой выразительный?
потому что его не делали "они не приняли наш j# поэтому мы запилим СИшарп" - в итоге получился сиподобный язык с сахаром. что тоже хорошо, но все же сахар не был самоцелью
а сразу делали упор на DSL-способность языка.
рантайм конечно выбрали говно. ну и подход с корутиноскоупами хорош для своих задач, но мозг сломаешь
то ли дело простые и понятные тасочки (но это уже другая крайность)
Аноним 03/12/24 Втр 19:26:38 #126 №3334289 
>>3334102

Как автомаппер оптимизирует запросы в БД?
Вы из епама?
Кто у твоей мамочки сладкий любимчик?
Почему Котлин такой выразительный?
Почему List не наследуется от IReadOnlyCollection
Аноним 03/12/24 Втр 19:28:38 #127 №3334290 
>>3334289
>Почему List не наследуется от IReadOnlyCollection
сегодня не пятница, а ты уже пьешь
Аноним 03/12/24 Втр 19:49:05 #128 №3334306 
>>3334289
Толсто.
Аноним 03/12/24 Втр 20:00:21 #129 №3334314 
Кто нибудь может объяснить за frozen коллекции? Ощущение что им полтора применения в принципе.
Аноним 03/12/24 Втр 20:08:20 #130 №3334317 
>>3334314
ну так скорость работы и потребление памяти. там нет запаса на "нам расти надо" и вообще "нас могут менять" и потому можно оптимизировать чтение. Не нужны никакие локи и тому подобное.
редко создавать и часто читать - вот их место.
Аноним 03/12/24 Втр 20:28:40 #131 №3334329 
>>3334317
Я понимаю, но прирост для поиска не очень значительный, при больших затратах на саму оптимизацию. Выходит что имеет смысл использовать только для очень долго живущих сервисов? Сначала я вообще подумал это это просто readonly обёртка, типа заморозил коллекцию и будь уверен что никто не не поменяет, в то время как IReadOnly таких гарантий не даёт, ибо бог знает у кого под каким интерфейсом ещё лежит твоя коллекция. Оказалось совсем не про это.
Аноним 03/12/24 Втр 20:33:29 #132 №3334332 
>>3334329
но все же прирост есть. а если создается один раз то еще больше.
а там еще jit поработает

это как то работает. вот у меня WPF проект с таблицами и после дотнет 9 прямо заметно шустрее стал. Почему? хз видимо jit что то постарался.

IReadOnly не гарантии что тебя не будут менять. IReadOnly это заявление, что тебя собираются там только читать и поэтому ты можешь впихнуть хоть фрозен. Но это не запрещает тебе ничего менять.
Аноним 03/12/24 Втр 20:43:01 #133 №3334335 
>>3334332
С readonly - было бы удобно иметь условный immutable dictionary, но на хеш таблице. Как раз с целью хранить его и знать что даже если он пришел снаружи - никто поменять его не может. Поэтому первая мысль была - вот оно.
Аноним 03/12/24 Втр 20:44:15 #134 №3334336 
>>3334335
immutable коллекции были ранее.
Аноним 03/12/24 Втр 20:55:38 #135 №3334339 
>>3334336
Да, только под капотом там дерево.
Аноним 03/12/24 Втр 21:00:42 #136 №3334342 
>>3334339
там еще хуже на самом деле.
тот же список полностью копируется
Аноним 03/12/24 Втр 21:05:15 #137 №3334345 
>>3334342
Самое смешное что инфа про это совсем не на поверхности. И уж точно когда ты видишь название ImmutableList ты не ожидаешь логарифмической сложности доступа.
Аноним 03/12/24 Втр 23:05:23 #138 №3334415 
>>3334345
а вот это ты зря. одной моей горящей жопы по этим поводам хватит на освещение всей солнечной системы.
так что ты присоединяйся к тем, кому норм.
Аноним 04/12/24 Срд 00:25:00 #139 №3334455 
fart.jpg
Практически весь текущий.
Аноним 04/12/24 Срд 17:35:10 #140 №3334858 
image.png
До чего всё таки убог wpf Да, статья от 2011 года, но поверьте, ничего не изменилось с тех времен.
https://jeremiahmorrill.wordpress.com/2011/02/14/a-critical-deep-dive-into-the-wpf-rendering-system/
> I’m currently working on a touch UI for an embedded medical device, and the requirement is basically to provide an iPad app-like UX. The machine has probably 2-3x the raw horsepower of an iPad, but no matter what, the UI just won’t feel as smooth or responsive as a slick iOS app.
> For another example, create an animated Expander with a large amount of content in it, or basically, slide anything with a large amount of content in it. This is a common iOS thing. It’s animation will be stuttery, even on a Core i7.
> Then I will see some cool HTML5 canvas example posted on Reddit, check the CPU loading it causes, and think there’s no way I could do that in WPF without 2x the loading. Even jquery widgets seem to behave more responsively than my WPF app.
Аноним 04/12/24 Срд 18:16:07 #141 №3334892 
>>3333776
> (это сколько то тредов назад сюда заходил жавишник и выиграл в перфомансе именно по этой причине)
Проиграл с этого демедж контрола. Петушарп сосёт БЕСПРОСВЕТНО у джавы в перформансе. Петушарп это говно уровня питухона, т.е. игрушечный язык для долбоёбов что ни разу в жизни не запустали бенчмарк, когда джава это язык отстающий на ~2%-~3% от максимально возможного перформанса в принципе (ассемблера и с++).
Аноним 04/12/24 Срд 18:20:50 #142 №3334896 
>>3334892
чушь говноеда.
я признаю что в том тесте шарп проиграл в 1.5 раза из за вот этого
1.5 раза в частном случае это не проигрыш

>джава это язык отстающий на ~2%-~3% от максимально возможного перформанса в принципе
ох уж эти ФАНТАЗЕРЫ

а уж жрет жава памяти как НИКТО ДРУГОЙ.
Аноним 04/12/24 Срд 18:23:44 #143 №3334900 
>>3334858
да срать на анимации. за них деньги не платят.
Зато возможность создать контрол не пердолясь в ручное рисование - это вещь
а хамл - не вещь, запарил уже. но альтернатив толковых нет.
Аноним 04/12/24 Срд 18:24:10 #144 №3334901 
>>3334892
Напоминаю, что в тесте с погодными станциями жаба соснула у шарпа раза в два.
Аноним 04/12/24 Срд 19:03:53 #145 №3334928 
2024.12.0421-02.png
>>3334896
>>3334901
Шарпододики с правды порвались. Терпите, карлики.
Аноним 04/12/24 Срд 19:08:29 #146 №3334930 
изображение.png
>>3334928
сразу видно что ты дурачок
если ты сравниваешь с ассемблером то сравнивай в числодробилках, а не либы !!!!с разным функционалом.!!! (потому как даже в рамках одного языка та же жсон сериализация имеет кучу реализаций с разным перфомансом) - сравнение такого рода сразу выдает человека не совсем здорового.

с ассемблером ладно. давай с растом хотя бы (пик)
2-3% ога ))))
ну чего еще от дурачков ожидать.
Аноним 04/12/24 Срд 19:11:46 #147 №3334933 
>>3334930
Ага, понятно, жсоны сериализовать можно очень по разному, можно парсить, а можно читать, и на весь огромный петушарп не нашлось либы, что сериализует жсон таким же методом, чтобы также быстро как и на джаве получилось!

Позоришься, клоун)
Аноним 04/12/24 Срд 19:15:47 #148 №3334934 
>>3334933
каким методом, дурачок?
на твоем скрине ВЕБФРЕЙМВОРКИ сравниваются, а не чисто жсон сериализация даже. (то есть в принципе разный функционал у них)

Господи, ты когда жавистов создавал, вообще мозг им давал или отложил "выдам когда реализуют гет/сет на уровне языка"?
Аноним 04/12/24 Срд 19:17:14 #149 №3334935 
>>3334934
>JSON SERIALIZATION
Этот тред как зоопарк.
Аноним 04/12/24 Срд 19:18:38 #150 №3334938 
>>3334935
да. сюда больные жависты забегают и позорятся.
а я вот никогда не против накормить их говном.
Аноним 04/12/24 Срд 19:19:05 #151 №3334939 
>>3334938
Что-то по делу будет, животное?
Аноним 04/12/24 Срд 19:19:31 #152 №3334940 
>>3334900
> да срать на анимации. за них деньги не платят.
Мне платят
Аноним 04/12/24 Срд 19:23:28 #153 №3334943 
>>3334939
ты чего с зеркалом то разговариваешь, жавопсих. да еще так орешь, что всем тебе слышно.
ты (или не ты) ляпнул про 2-3%, а сейчас чего то замолчал по этому поводу

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

>>3334940
ну плохо быть тобой. я хз что можно писать на WPF чтобы прямо требовали анимации.
Аноним 04/12/24 Срд 19:25:13 #154 №3334944 
>>3334943
То есть не будет? Слив, клоун. Иди дальше перформанс тюнить, а то 1к рпс сервер ложат.
Аноним 04/12/24 Срд 19:27:18 #155 №3334945 
>>3334944
конечно не будет. я не психиатр, справочку выписать не могу
могу только посоветовать к нему обратиться
но это я как бы сделал...правда не слишком явно
Аноним 04/12/24 Срд 19:41:08 #156 №3334957 
IMG20241118121336804.jpg
>>3334945
>>3334944
>>3334938
>>3334930
>>3334928
Доложите статус ваших мамок
Аноним 04/12/24 Срд 19:45:46 #157 №3334963 
>>3334957
они тоже не психиатры, увы.
так что сходи в пнд сам. Там тебя со старта примут только заикнись что ты на жаве пишешь.
Аноним 04/12/24 Срд 20:07:13 #158 №3334974 
>>3334963
Пишу только на джаве, мне нравиться
Аноним 04/12/24 Срд 20:26:11 #159 №3334982 
>>3334974
нам то какое дело до чужой копрофилии. иди собратьям это говори, а тут тред не засоряй.
Аноним 04/12/24 Срд 20:48:40 #160 №3335000 
>>3334945
Кривлянием тормознутого писаки на тормознутом языке удовлетворён.
Аноним 04/12/24 Срд 20:51:36 #161 №3335003 
>>3335000
отвечаю только из за трипла.
тупость говноеда жависта меня утомила. все всё увидели что не стоит на жаву смотреть, а то такими же дебилами станут

можешь уползать в свой сральник.
я больше учить тебя уму разуму не буду даже за триплы
Аноним 04/12/24 Срд 20:54:07 #162 №3335006 
>>3335003
— ррааззддааллссяя ппррооннзз[сборка мусора]ииттееллььнн[сборка мусора]ыыйй ввооззгглл[краш]
Аноним 04/12/24 Срд 22:06:25 #163 №3335064 
>>3335003
Java лучше чем C#. JVM производительные чем CLR.
Аноним 04/12/24 Срд 22:23:47 #164 №3335074 
Пришел к выводу, что все связанные с какой-то хуйней вещи должны лежать в одной папке. Иногда даже - в одном файле. Но хотя бы папка - достаточно.
Потому что ебись оно в сраку. Какой еблан придумал - константы положить в отдельную папочку. Модельки которые их используют - в другую. В третью - енамы. А потом тебе этот код из проекта в другой проект надо перенести - и ты как ебанат бегаешь и ищешь все говно.
Да даже если не переносить - ты подключаешь какую-то хуйню, и тебе хуяк - 100500 неймспейсов навалилось, и начинается....

Короче - структура должна быть такой:
- Папка1
--Модель1.цс
--Модель2.цс
--Константы.цс
--ЯСервис.цс
--Сервис.цс
--МодульТестыСервис.цс
--События.цс

Ну короче, вы поняли.
Аноним 04/12/24 Срд 23:03:57 #165 №3335089 
>>3335074
> Какой еблан придумал
Джависты. Придумывают 100500 пакетов на каждый пук. Потом не могут вспомнить, где что лежит, а автоимпортом импортируют нужное только с третьей попытки. Додумываются называть классы как можно уникальней, чтобы при импорте был только один вариант, и пох, что в имени класса теперь 50 символов, половина из которых совпадает с именем пакета. Хуй знает ваще, зачем это тащат в шарп.
Аноним 05/12/24 Чтв 00:35:25 #166 №3335136 
>>3335074
именно так. feature based деление на папки рулит.
Аноним 05/12/24 Чтв 00:48:41 #167 №3335139 
>>3335074
Открой для себя Vertical Slice Architecture
Аноним 05/12/24 Чтв 00:52:36 #168 №3335141 
>>3334974
-тся!
Аноним 05/12/24 Чтв 00:55:41 #169 №3335144 
>>3335074
>--МодульТестыСервис.цс
Ты еблан? Нахуя тесты пихать в сборку? Нахуя они будут присутствовать в скомпилированном коде, который поставляется клиенту или разворачивается на сервере? Ух, сука, как подгорает!
Аноним 05/12/24 Чтв 01:48:05 #170 №3335157 
>>3335144
> <Compile Remove="МодульТесты*.цс" />
И никакие тесты в сборку не попадут.
Аноним 05/12/24 Чтв 04:13:21 #171 №3335167 
>>3335074
>Потому что ебись оно в сраку. Какой еблан придумал - константы положить в отдельную папочку. Модельки которые их используют - в другую. В третью - енамы.

Тоже никогда не понимал, зачем так делать. Я руководствуюсь следующим правилом из Библии:

Не клади руку в карман если у той меньше пяти пальцев. Это и не рука вовсе. Если пальцы кривые и выглядят как узелки на верёвочке, то, эта рука больна. Отрежь её. Но не жди, что на том месте вырастет другая, по виду здоровая и которую можно подать и бедному и богатому.
Аноним 05/12/24 Чтв 05:20:27 #172 №3335170 
>>3335074
Я группирую по сервисам. В одном файле лежит сервис, интерфейс к нему, все используемые енумы и дтошки. Нахуя плодить 100500 файлов по 10 строк в каждом, а потом лазить по 100500 вкладкам - непонятно, это что-то из области психиатрии.
Аноним 05/12/24 Чтв 05:45:29 #173 №3335171 
>>3335170
Охуенно наверное потом в двадцатером коммитить в один файл. Если про папки утверждение имело смысл, то тут - бред шизофреника.
Аноним 05/12/24 Чтв 06:10:21 #174 №3335173 
⚡⚡⚡ глава корпорации Майкрософт Сатья Наделла заявил об отказе от С# и платформы дотнет, а так же переводе внутренних сервисов компании на более выразительный язык программирования
Аноним 05/12/24 Чтв 06:33:01 #175 №3335175 
>>3335173
На котлин что ли?
Аноним 05/12/24 Чтв 07:24:11 #176 №3335181 
>>3335170
>В одном файле лежит сервис, интерфейс к нему, все используемые енумы и дтошки. Нахуя плодить 100500 файлов по 10 строк в каждом, а потом лазить по 100500 вкладкам
Конечно, лучше как ебанутый метаться по одному файлу туда-сюда без возможности посмотреть некоторые места одновременно.

Ну и хранение интерфейса вместе с реализацией, тоже классика. Нахуй он тебе тогда вообще нужен? Ты множественные реализации тоже в один файл с ним будешь засовывать?
Аноним 05/12/24 Чтв 08:22:16 #177 №3335200 
>>3335171
В вашей шараге бардак вместо процессов. У нормальных людей таски разделяются между разработчиками и никто в один файл толпой не комитит. Ваш лид пидорас и хуесос.
Аноним 05/12/24 Чтв 08:24:28 #178 №3335202 
>>3335181
>Нахуй он тебе тогда вообще нужен?
Погугли, что такое DI и зачем он нужен.
Аноним 05/12/24 Чтв 09:55:42 #179 №3335210 
>>3335202
чтобы на каждый класс заводить по интерфейсу
зачем же еще
Аноним 05/12/24 Чтв 13:35:39 #180 №3335387 
>>3335202
А он на нахуй ненужон, диай ваш
Аноним 05/12/24 Чтв 13:45:58 #181 №3335393 
>>3335200
Прекрати, салфетки кончаются сало с монитора вытирать.
Аноним 05/12/24 Чтв 13:54:48 #182 №3335397 
>>3335393
хватить жрать за компом. комп для работы
а та то тот чел дело говорит.
Аноним 05/12/24 Чтв 15:15:57 #183 №3335464 
>>3335397
Да не трястись ты, смотри сколько опечаток
Аноним 05/12/24 Чтв 15:23:38 #184 №3335471 
>>3335170
Ебать ты долбаеб братишка
Аноним 05/12/24 Чтв 15:47:59 #185 №3335483 
>>3335464
как помоч несчастным.jpg
Аноним 05/12/24 Чтв 18:32:54 #186 №3335595 
А скажите кто что нашел полезного в c#13 окромя params?
Аноним 06/12/24 Птн 05:26:34 #187 №3335809 
>>3335595
Нефига, в шарпах не было varargs.
Хотя че мне ваши праздники жизни я в юнити.
Аноним 06/12/24 Птн 11:33:05 #188 №3335952 
>>3335595
Новый Lock полезен.

А так основные нововведения в .NET9, а не в языке.
Аноним 06/12/24 Птн 13:31:17 #189 №3336109 
>>3335809
>в шарпах не было varargs.
что значит не было? params много лет
просто он либо принимал массив, либо сам создавал - что приводило к лишним аллокациям только для вызова такого метода
Аноним 06/12/24 Птн 15:11:35 #190 №3336202 
В Шарпе отродясь был __arglist.
А также __makeref, __reftype, __refvalue.
Аноним 06/12/24 Птн 16:52:33 #191 №3336283 
>>3335595
>params
Невероятно полезная фича уровня dynamic, перепишу теперь весь код нахуй. Паджиты совсем сдулись, уже не знают как выполнить план по нововведениям.
Аноним 06/12/24 Птн 17:05:42 #192 №3336291 
>>3336283
>Невероятно полезная фича уровня dynamic
фича как фича. использовал много раз
> план по нововведениям.
оптимзировать ее нужно было давно. с самого начала, а лучше за 100 лет до рождения c#
но раз уж дотнет9 упор на оптимизацию...

а вот фича с индексом с конца - хз кому она вообще нужна
Аноним 06/12/24 Птн 17:12:16 #193 №3336295 
>>3336291
Зачем оптимизировать то, что никому нахуй не надо? Эти params используются только в string.Format, форматирование давно все делают через доллар.
Аноним 06/12/24 Птн 17:14:18 #194 №3336296 
>>3336295
>Эти params используются только в string.Format,
мде. что ты пишешь? калькуляторы?
это используется там, где это удобно.
если ты не использовал нигде - ну это твой частный случай.
Аноним 07/12/24 Суб 00:26:25 #195 №3336514 
>>3333609
Откуда эта тряска чел? У тебя блять нет решарпера в конце 2к24? У меня приватное поле создаётся АВТОМАТИЧЕСКИ когда я требую создать тела для сеттера и геттера.

Пиздец ты шизофреник.
Аноним 07/12/24 Суб 00:32:53 #196 №3336517 
>>3336514
у меня есть решарпер
я тот чел что жалуется что текущий решарпер вешает студию и это известный баг который типа будет пофикшен после нового билда
но билда нет уже полмесяца

а теперь по твоей аргументации
>У меня приватное поле создаётся АВТОМАТИЧЕСКИ
и оно НЕ НУЖНО НИГДЕ!!!!!!!!!!!!!!!!! кроме этого свойства, то есть банальный семантический мусор
и ты после этого нормальный? значит не пользуйся филдами когда они выйдут окончательно. ты же нормальный типа )))))))))))
А если воспользуешься (пусть и решарпер тебе перепишет) значит ты пидорасом станешь
Аноним 07/12/24 Суб 08:00:33 #197 №3336576 
Кто переходил с MVS на VS code + linux? Насколько болезненно было привыкание? Я пока только перенес проект на .net8 в vscode и охренел от древнего и неудобного интерфейса. Настроил запуск в режиме отладки, публикацию. - работать можно, но все желание работать в vs code пропало.
Аноним 07/12/24 Суб 08:10:40 #198 №3336580 
>>3336576
Vscode кривое тормозящее говно. У меня после какого-то из недавних апдейтов пропадают букмарки, в списке они есть, а в окне с кодом нет. Паджиты, хуле.
Хуитку из трех файлов вскоде еще потянет, но в продуктовом солюшене однозначно нет пути.
Аноним 07/12/24 Суб 08:12:51 #199 №3336582 
>>3336296
Я пишу продукт. Ты пишешь задачки на литкоде. Мы на разных уровнях.
Аноним 07/12/24 Суб 08:48:33 #200 №3336587 
>>3336576
Нахуя ты на линукс перешёл?

Линукс это ОС для серверов чтобы экономить на лицензии и то при наличии денег лучше ставить винду.
Он просто напросто непригоден для работы, ты будешь больше ебаться с проблемами кривых пакетов и почему у тебя отвалилось "хуйня_нейм"
Аноним 07/12/24 Суб 10:08:01 #201 №3336602 
Недавно занимался добавлением авторизации через keycloak и через наш стандартный вариант текущий.
Хочу высказать моё почтение, разрабы .NET сделали реально заебись. В плане Keycloak достаточно просто добавить конфигурацию и прибиндить и оно работает, просто работает, сразу и без каких-то проблем. В целом с любым OAuth2 будет также.

Что не заебись это поведение при AllowAnonymous. В таком случае .NET все равно пытается проверить токен, но только при наличии схемы по умолчанию. Проблема заключается в том, что даже так дотНЕТ проверит только эту самую по умолчанию и дальше ничего не сделает. Политиками по умолчанию это не решается, надо указать именно схему.
В целом это не влияет никак на бизнес логику потому что ей, очевидно, не нужна информация о пользователе. Проблема в логах, там теперь нельзя понять кто же сделал анонимный запрос.
Аноним 07/12/24 Суб 10:08:39 #202 №3336604 
Я пол года назад понял, что не могу найти нормальную программу для отправки запросов HTTP.

Postmat - отвратителен, он ебёт мозги письмами, отжирает полтора гигабайта памяти, ебёт мозги покупкой лицензии, в общем не вариант.

Insomnia - вариант, но он для меня просто неудобен. Там окружения очень неудобно переключать.

Пробовал Yaak - мне понравился, но его тут же сделали платным.

В идеешке запросы отсылать люблю, но не люблю, хотелось бы именно годную программу. Чтобы на линуксе тоже работало.

В итоге получается, что абсолютно одинаковых графических обёрток над курлом дохуя, но все они говнище

Порекомендуйте что-нибудь, на чём можно остановиться?
Аноним 07/12/24 Суб 10:26:46 #203 №3336607 
>>3336604
Посмотри Bruno.
Аноним 07/12/24 Суб 12:14:25 #204 №3336654 
>>3336582
ахахаххахахах. вот это маневр.
ты просто пишешь калькуляторы. я понял
Аноним 07/12/24 Суб 13:50:12 #205 №3336730 
Раст обоссал петушарп, джава обоссала, говно обоссало, питон обоссал, жопаскрипт обоссал, плюсы обоссали, даже ёбаный кложур обоссал! Как после такой зрады жить-то можно вообще?!
Аноним 07/12/24 Суб 13:55:43 #206 №3336737 
>>3336730
> обоссала говно

прикольное занятие, если честно,
Аноним 07/12/24 Суб 14:23:20 #207 №3336755 
>>3336587
>Нахуя ты на линукс перешёл?
Импортозамещение на гос галере. Ещё и астру-линукс ставят. Я пока подготавливаю рабочее место.
Может проще перейти на джаву+эклипс, чем ебстись с дотнетами на вскоде?
Аноним 07/12/24 Суб 17:45:19 #208 №3336910 
>>3336755
>Импортозамещение на гос галере.
А где вы сборку .Net берете? Качайте у Майков или есть импортозамещенные сборки .Net с саппортом и ГОСТ 28147-89?
Аноним 07/12/24 Суб 17:53:30 #209 №3336917 
>>3336755
>Может проще перейти на джаву+эклипс, чем ебстись с дотнетами на вскоде?
Проще писать коды на своем компе, а кабану скидывать уже готовое через дыру в его анальном огораживании. Тогда и не придется ни на что переходить.
Аноним 07/12/24 Суб 17:55:47 #210 №3336918 
>>3336604
VSCode + HTTP Client
Аноним 07/12/24 Суб 17:59:17 #211 №3336919 
>>3336910
>ГОСТ 28147-89
В .Net-е по моему никогда и не было гостовских алгоритмов. Их всегда приходилось колхозить через всякие криптопро, сигнатуры и т.д.
Аноним 07/12/24 Суб 20:11:07 #212 №3336979 
>>3336919
На nuget.org есть пакеты с гостовским шифрованием.
Аноним 07/12/24 Суб 20:15:40 #213 №3336980 
>>3336604
>В идеешке запросы отсылать люблю
Имеешь в виду .http files в VS? Да, удобно. Но тогда ты должен знать, что оно вдохновлено VS Code REST Client extension. А VS Code работает и на лялихе.
Аноним 07/12/24 Суб 20:27:07 #214 №3336983 
>>3336979
А пакеты с сертификацией ФСТЭК там тоже есть?
Аноним 07/12/24 Суб 22:19:26 #215 №3337016 
>>3336980
> что оно вдохновлено VS Code REST Client extension

не, оно ещё в саблайм тексте 10 лет назад было.

Ну не запускать же VS CODE, который отжирает гигабайт памяти только за факт своего запуска? Тем более Visual Studio.

Вообще обидно. HTTP протокол простой как палка, для него нужна программа простая буквально как блокнот. А мы имеем комбайны с ЭЙ АЙ КЛАУД ОППОРТУНИТИС чтобы курл дёрнуть.
Аноним 07/12/24 Суб 23:23:56 #216 №3337037 
>>3337016
> нужна программа простая буквально как блокнот
Раз она такая простая, тебе не составит труда написать её самому.
Простых программ дохуя, ими весь гитхаб завален, но они же все не на слуху, страшно использовать.
Аноним 07/12/24 Суб 23:44:51 #217 №3337043 
>>3337037

Да в том и вся проблема. Либо постман, который уёбищен во всех смыслах, либо кустарное говно, которое при первых признаках популярности начинает просить всего по пачке жевачки в месяц (10 долларов, разумеется, а где эти доллары брать, я хуй знает, в руках их держал 1 раз в жизни).

Какой-то заколдованный круг в итоге.

Для себя я уже начал накидывать прототип на авалонии. Думаю уложиться в 800-140 мегабайт оперативки. Но чтобы довести до вменяемого уровня, надо усилия прилагать, тратить время, вылизывать и делать внимание к деталям.
Аноним 07/12/24 Суб 23:47:09 #218 №3337044 
>>3337043
80 мегабайт. Вроде старт авалонии минимум 60 занимает.

Но лучше 80мб и минимальный функционал, чем 800 и облачный эйай у постмана.

Постман отвратителен, небогоугоден и неаыразителен
Аноним 08/12/24 Вск 01:43:15 #219 №3337069 
>>3332575
Х.з. даже, в ежегодных Performance Improvements in .NET X что-нибудь проскакивает.
Иногда в блоге что-то интересное - https://devblogs.microsoft.com/dotnet/
Deep .NET - https://www.youtube.com/playlist?list=PLdo4fOcmZ0oX8eqDkSw4hH9cSehrGgdr1
В доках рантайма, но зачастую при их чтении не хватает контекста и доп. пояснений/информации - https://github.com/dotnet/runtime/tree/main/docs

https://www.youtube.com/@MaoniStephens/videos
https://devblogs.microsoft.com/dotnet/author/maoni/

Редко/очень редко что-то интересное:
https://andrewlock.net/
.NET Conf - https://www.youtube.com/playlist?list=PLdo4fOcmZ0oXeSG8BgCVru3zQtw_K4ANY - но они все поверностные, хотя что-то интересное может попасться, как например: https://www.youtube.com/watch?v=1bsTnaLchi4&list=PLdo4fOcmZ0oXeSG8BgCVru3zQtw_K4ANY&index=94
https://www.youtube.com/@DotNextConf
https://www.youtube.com/@DotNetRu

Есть ещё не самые свежие, но я читал на досуге:
https://mattwarren.org/
https://devblogs.microsoft.com/premier-developer/managed-object-internals-part-1-layout/ - и другие части
https://yizhang82.dev/blog/dotnet
https://migeel.sk/

Это всё если либо более глубокая "инфа" по разным темам или просто внутренности рантайма и т.д. Но я думаю всё это есть в той книге, в той или иной степени (я просто х.з., всё руки не доходят до неё).

Я был бы не против если бы кто-нибудь ещё что-то подобное кинул.
Аноним 08/12/24 Вск 05:04:35 #220 №3337077 
>>3337069
Вот ещё чё вспомнил:
https://minidump.net/ <-- Kevin Gosse - один из авторов той книги
https://xoofx.github.io/blog/
https://lukasatkinson.de/2018/interface-dispatch/
https://habr.com/ru/articles/307088/
Аноним 08/12/24 Вск 05:29:37 #221 №3337080 
Я просто в браузере открываю консоль и пишу fetch
Аноним 08/12/24 Вск 05:55:15 #222 №3337083 
Как в uno вставить нативную джава активити для андроида?
Аноним 08/12/24 Вск 06:52:40 #223 №3337084 
>>3337083
Ахахахахах
Аноним 08/12/24 Вск 11:01:57 #224 №3337143 
Почему студия не имеет рефактроинга - ПЕРЕНЕСТИ В ДРУГОЙ ПРОЕКТ?
Понимаю, что вопрос про софт, но типа.
Вот допустим, начал я что-то писать. Допустим, обертку над ребитом. Определил там сразу Event, ну, типа шина, вся хуйня.
Прошел год. Все пользовались, но закралось подорзение, что не гуд, что каждая блядская либа из класса *.Domain - знает не только про события, но и зачем-то интерфейс шины.
Возникает охуенная идея - а вынесу я Event - в отдельный проект, в духе Company.Project.Primitives.
И все. Пизда пошла. Теперь я как еблан бегаю в 100 местах ставлю ссылку на новый проект, удаляю ссылку на проект с абстракциями для шины.

А как было бы удобненько, если бы вот как с неймспейсом, но для проекта было бы. Клацаешь: Перенести в проект. Оно в корень перелетело, ссылки проставились где надо. Да. Ссылка на абстракции шины осталась, но там можно было бы другую хуйню еще: Удалить ссылки на неиспользуемые зависимости. И хуяк - у всех проектов осталось только то что используется.

Вот что в этом такого пиздец сложного?
Аноним 08/12/24 Вск 11:14:33 #225 №3337145 
>>3337143
Не знаю что у тебя блять сложно перенести в другой проект, а потом сказать студии импортировать новые ссылки в нужные проекты.
Аноним 08/12/24 Вск 12:00:10 #226 №3337164 
>>3337145
То что это делается не автоматически.
При переносе класса в другой неймспейс - студия сама все импортирует.
Когда я переношу руками в другой проект, на который нет ссылки, начинается - 9000 ошибок, не знаю что за класс. И я как дебил полдня трачу, чтобы все импорты проставить.
Аноним 08/12/24 Вск 12:36:59 #227 №3337190 
Из-за фрирен на оппике я начинаю дрочить шарпы
Аноним 08/12/24 Вск 13:29:34 #228 №3337236 
>>3337164
Сколько у тебя там проектов в солюшене, что ты по пол дня тратишь на то, чтобы в них ссылки проставить? Просто если для тебя это постоянно боль, то вангую что с архитектурой что-то не то. Скорее всего десктопные приложения пилишь, да?

У меня, за все время работы на последнем месте, необходимость вынести что-то прям в отдельный проект появлялась раз 5 от силы, и то это обычно было в репозитории с платформенными либами, когда либу на Abstractions и Implementation пакеты разбивал, чтобы не тянуть лишние пакеты-зависимости туда, куда не следует.
В самих же (микро-)сервисах, при создании проекта у нас автоматом из шаблона создаются проекты под слои приложения (Domain, Application, Infrastructure, Hosting) и CrossCutting-проект для всяких хелперов и методов-расширений, которые могут в любых других проектах использоваться. И обычно достаточно просто перекинуть код между проектами (к примеру из Domain в Infrastracture, как в твоём примере с шиной), а потом просто попросить IDE автоматически выправить пространства имён и using'и по всему решению.
Аноним 08/12/24 Вск 13:40:49 #229 №3337250 
>>3337236
>Скорее всего десктопные приложения пилишь, да?
а десктопные приложения уже не приложения?
Аноним 08/12/24 Вск 14:03:46 #230 №3337266 
>>3337250
Приложения. Но в них я чаще говноархитектуру встречал.
В ASP.Net Core сама структура фреймворка и сопутствующих либ диктует, как приложения на слои разбить. Есть контроллеры, есть EF-Core для доступа к данным и т.д. Во всех местах, где работал, структура сервисов была +/- похожая. Везде на слои били.
А в десктопных обычно все лепят кто во что горазд. Плюс не одного устоявшегося стандартного фреймворка. Где-то Prism юзают, где-то что-то своё на основе MVVM Community toolkit пилят, а где-то реактивщиной с ReactiveUI упарываются. Ну и просто по объему кода десктопные приложения обычно заметно жирнее, так что там проблемы с архитектурой острее стоят.
Аноним 08/12/24 Вск 14:19:12 #231 №3337272 
>>3337266
>Во всех местах, где работал, структура сервисов была +/- похожая. Везде на слои били.

Я работал с долблёбами, которые повторяли в день слова clean architecture по 10 раз, кичились ДДД, у них была разбивка по 5-7 слоям, но в итоге всё сваливали в кучу в проект Core.Domain, к которому подключались все нугеты.

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

А к чему это я. Правильно: тот проект был о разработке твоей мамки
Аноним 08/12/24 Вск 14:29:52 #232 №3337285 
>>3337266
>как приложения на слои разбить. Есть контроллеры,
а кто сказал что это хорошо. Поклонники feature-based деления скажут что вы шизанутые части одной фичи по 100500 мест размазывать
Аноним 08/12/24 Вск 14:34:28 #233 №3337295 
>>3337272
> ДДД
Для меня это уже редфлаг. Если мне на собесе скажут, что у них все по DDD, то я скорее всего дропну вакансию. Только один раз видел, когда его нормально реализовали. В остальных местах был просто какой-то лютый дроч без особого выхлопа.
Аноним 08/12/24 Вск 14:36:20 #234 №3337297 
>>3337272
У нас крч интерфейсы лежать в слое Domain их реализации и регистрации в Api и используют их в Application слое.

На мои логичные вопросы а почему бы вам не переложить реализации в Application, а ещё лучше в слое Domain пошли какие-то ебанутые рассказы про чистую архетуктуру. На это я прям на встрече сказал "ну окей давайте я сейчас добавлю новый слой PizdaApi или удалю Api. Ой блять приложение больше не запускается." Причём их даже это не убедило, что у них ебаный слой Api предоставляет Application реализации бизнес логики, а значит Application транзитивно от него зависит. Аргумент был заебись "ну ссылки до идут от Domain <- Application <- Api" ссылок на проект нет значит и зависимости нет.
Аноним 08/12/24 Вск 14:47:31 #235 №3337324 
>>3337236
> Сколько у тебя там проектов в солюшене
120 примерно. С ходу не вспомню.

> Просто если для тебя это постоянно боль, то вангую что с архитектурой что-то не то
Ну. Как. Обычная микросервисная. Штук 15 сервисов, каждому из них создай домен, инфраструктуру, DAL-уровень, какую-то либу для своих ютилити штук.
Плюс - десяток либ для внутреннего использования или вот как раз с теми примитивами, которые всем нужны. Ну или всякие общие мидлвары и все такое.

>>3337266
Как раз и разбивали. И это еще большая боль в заднице. Вот у тебя домен. Домен должен по хорошему ничего о шине не знать, только объявить свои события. Вот у тебя приложение - оно уже про шину знает, но не знает с какой конкретно работать будет, ей нужны абстракции шины. Вот у тебя инфра - она уже знает, что с кафкой работать надо. Вот у тебя еще запускатор, который может быть с веб-апи, а может без, в зависимости от сервиса.

И вот тебе надо из проекта EventBus.Core - вынести Events в проект Primitives. Все. Пошла пизда. Всем доменам - добавь ссылку на это, удалить ссылку EventBus.Core. Теперь всем приложениям - уже надо добавить ссылку на EventBus.Core, ведь теперь они не могут из домена это получить. Ну и т.д.

Это самый простой пример.
А когда начинается хуйня с контрактами. Ебись оно в сраку если честно.
Одни пишут - харам общую сборку для контрактов, вы же завтра решите на питон переписать, так что сразу делайте что сервис сам контракты объявляет.
Другие - не страдайте хуйней, вынесите контракты в одну сборку и пусть все подключают.
Третьи - нет, разбейте по доменам, и общие доменные события в одну сборку, нехуй сервису знать про события, которые в других сборках.

Короче. Залупистика.
А вынести иногда надо. Потому что когда у тебя библиотека какая-то должна на сторону пойти - выглядит кринжово, что с ней рядом лежит dll в которой половина кишок валяется.
Аноним 08/12/24 Вск 14:55:26 #236 №3337332 
>>3337324
Ну а я это к чему пишу-то.
Вот типа когда я пишу два класса в одном файле - студия предлагает рефакторинг - о, можно вынести в отдельный файл.
Или когда я хочу - я навожусь на неймспейс - и она такая, а давай перенесем куда тебе надо, хоть новый создадим. И если кто-то использует класс - везде оно поменяет.

Вот нужна такая же фича для переноса между проектами. Было бы просто замечательно. Да.
Аноним 08/12/24 Вск 15:04:27 #237 №3337337 
>>3337324
Вот за это и не люблю монорепы (даже для одного приложения). Еще и студия/райдер тормозят от такого кол-ва проектов.
Как по мне, лучше уж каждый микросервис в отдельном репозитории держать, а какие-то общие штуки в nuget-пакеты выносить. Так меньше соблазна сослаться на то, на что вообщето не следует. И вообще более вдумчиво все начинают подходить к тому, какие штуки должны быть общими.
А проблему контрактов мы у себя с помощью protobuf-ов и GRPC решили. У нас просто есть консольная утилита, которая берет ссылки на протники из репозиториев других сервисов из yaml-файла, который в репозитории сервиса лежит, и подтягивает их в проект. При билде для них C# контракты генерируются. Общие для всех сервисов протники просто в отдельном репозитории лежат и так же подтягиваются из него утилитой. Плюс недавно джобу для билд-пайплайна запилили, которое проверяет, нет ли в мр-е tracking changes в протниках.
Аноним 08/12/24 Вск 15:06:17 #238 №3337339 
>>3337337
braking changes
Сраная гугл-клавиатура на смарте
Аноним 08/12/24 Вск 16:36:00 #239 №3337376 
>>3336919
Про ГОСТ это была шутка, вопрос про сборку .Net. У Java есть Axiom JDK которая собирается российской компанией, находится в Реестре Российского ПО, сертифицирована ФСТЭК.
Соответвенно мой вопрос, есть ли что-то подобное для .Net?
Аноним 08/12/24 Вск 16:57:52 #240 №3337385 
>>3337376
Какой пиздец это оказался не троллинг. И сколько денег освоили эти парни из Axiom, какой олигарх или министр крышует? Я блеванул с главной страницы их сайта.
Сборки дотнета нет потому что дотнет лежит на гитхабе. Вообще сборки в программировании это какая-то специфика джава мира.
Аноним 08/12/24 Вск 17:06:35 #241 №3337387 
>>3337385
>Сборки дотнета нет потому что дотнет лежит на гитхабе.
Ты реально такой тупой?
Аноним 08/12/24 Вск 17:10:57 #242 №3337389 
>>3337387
Что не так, пиггер? Иди билди дотнет и продавай кабанычам.
Аноним 08/12/24 Вск 18:54:43 #243 №3337431 
>>3337084
Не смешно. Мне надо по требованиям использовать нативную сёрд пати лайбрари, которая доступна в виде jar-ника. Во флаттере я могу захерачить активити и общаться с ней из нормального кроссплатформенного кода. Как мне в уно сделать что-то подобное?
Аноним 08/12/24 Вск 19:13:19 #244 №3337437 
>>3337337
>При билде для них C# контракты генерируются.

Не перемудрили? Мы такие раньше просто скриптами по необходимости дёргали
Аноним 08/12/24 Вск 19:37:34 #245 №3337444 
>>3337297
>пошли какие-то ебанутые рассказы про чистую архетуктуру.
Но по чистой архитектуре должен быть проект Infrastructure с реализациями, если они зависят от базы или третьих сервисов. Если это какие-то типо Domain сервисы - их реализация может быть и в Application.

В Api ничего быть не может, что не относится именно к api.

>слой Api предоставляет Application реализации бизнес логики, а значит Application транзитивно от него зависит
Смотря что за реализации, но так это и должно работать.
Аноним 08/12/24 Вск 19:43:58 #246 №3337446 
>>3337437
Не, удобно на самом деле. Это стандартный флоу для GRPC. Все эти контракты автоматом генерируются стандартным гуглувским пакетом (Grpc.Tools который). А вместе с контрактами сразу генерируется абстрактный класс для реализации объявленного GRPC-сервиса (там остаётся только заовверайдить методы и их реализовать) и реализация клиента для него.
Аноним 08/12/24 Вск 22:06:21 #247 №3337509 
>>3337444
>Смотря что за реализации, но так это и должно работать
В смысле смотря что. Там лежит реализация интерфейса из Domain при этом используется этот интерфейс в Application.
Это не должно так быть и так делать нельзя потому что ты связываешь два разных слоя причем. Ты не можешь отделить АПИ от твоей системы и наоборот заменить то что лежит ниже этого АПИ.
Аноним 08/12/24 Вск 22:12:44 #248 №3337512 
Оцените код по 10 бальной системе.
var result = responseData
.Select(item =>
{
try
{
var json = JsonConvert.DeserializeObject(item.ResponseBody);
return $"URL: {item.Url}\nResponse Body: {JsonConvert.SerializeObject(json, Formatting.Indented)}";
}
catch (Exception ex)
{
return $"URL: {item.Url}\nFailed to parse response body: {ex.Message}";
}
})
.ToList();


return string.Join("\n\n", result);
Аноним 08/12/24 Вск 22:37:26 #249 №3337524 
>>3337512
1000000000 конечно же.
но мы тебе не перезвоним.
Аноним 08/12/24 Вск 23:01:17 #250 №3337529 
>>3337512
Та больной что ли?
sage[mailto:sage] Аноним 08/12/24 Вск 23:32:59 #251 №3337534 
>>3337512
0
Аноним 08/12/24 Вск 23:50:34 #252 №3337538 
>>3337509
>Это не должно так быть и так делать нельзя потому что ты связываешь два разных слоя
Ты просто создаёшь в домене некие абстрактные интерфейсы которые реализуешь потом.

Если написано хорошо и удачно - ты сможешь заменить апи на десктоп, а SQL базу на NoSql буквально без единого изменения в домене. Потому что он зависит от интерфейса, а не от апи напрямую. Цель - сформировать самодостаточный уровень домена, который бы не зависел от реализации. Но в отрыве от базы данных и прочего не очень понятно что должен делать код уровня "SaveUser" или "SendMessage", поэтому эти вещи существуют в домене как интерфейс без реализации.
Аноним 09/12/24 Пнд 00:13:37 #253 №3337539 
Челы, а в каких сферах вообще шарпы щас применяют на рынке РФ?
Аноним 09/12/24 Пнд 01:38:33 #254 №3337557 
>>3337539
Да всё в те же, в каких и топ 10 других языков.
Аноним 09/12/24 Пнд 03:42:35 #255 №3337571 
Забирайте своих клоунов из джаватреда. Уже лоб от фейспалмов болит.
Аноним 09/12/24 Пнд 04:28:58 #256 №3337574 
>>3337571
Зачем? Вы же своих клоунов отсюда не забираете.
Аноним 09/12/24 Пнд 04:32:04 #257 №3337575 
>>3337574
По моему сюда пишут только тогда, когда шарподебилы начинают активно у нас срать. А вообще общеизвестный факт, что священный вояка это безработный пидорас и ненавидим обеими сторонами.
Аноним 09/12/24 Пнд 05:46:22 #258 №3337586 
>>3337538
>Если написано хорошо и удачно - ты сможешь заменить апи на десктоп, а SQL базу на NoSql буквально без единого изменения в домене.
Караван охуительных историй. Нет, не можешь.
Аноним 09/12/24 Пнд 05:49:00 #259 №3337587 
>>3337512
Говнокод уровня голанг. В дотнете так не пишут.
Аноним 09/12/24 Пнд 06:30:42 #260 №3337591 
>>3337297
> На мои логичные вопросы а почему бы вам не переложить реализации в Application...

АДИК - субъективная и неоднозначная архитектура, которую каждый волен трактовать по своему.

Более того, она в принципе не реализуема, потому что всегда есть входная точка приложения, при упоминании которой принято стыдливо отводить глаза в сторону и переводить тему.
Аноним 09/12/24 Пнд 06:32:40 #261 №3337592 
>>3337332
>Вот нужна такая же фича для переноса между проектами. Было бы просто замечательно. Да.

Просто в два этапа делай, сначала неймспейс поменяй на целевой, а потом файл перекинь.
Аноним 09/12/24 Пнд 06:39:29 #262 №3337593 
>>3337539
Вот буквально все. Даже написание мобильных приложений через ксамарин. Даже десктоп.
Аноним 09/12/24 Пнд 06:43:25 #263 №3337594 
>>3337538
>Если написано хорошо и удачно - ты сможешь заменить апи на десктоп, а SQL базу на NoSql буквально без единого изменения в домене

При условии, что ты готовил проект к этому годами и надрачивал на мысль о том, что тебе надо перенести проект на no-sql.

Ну и при условии, что твоё приложение - Weather Forecast.
Аноним 09/12/24 Пнд 06:50:28 #264 №3337596 
>>3337512

Какой выразительный код! Это Котлин?
Аноним 09/12/24 Пнд 11:14:01 #265 №3337721 
>>3337586
Ты просто не видел как это по-нормальному пишется.

И это нормально. Потому что хорошая чистая архитектура действительно почти нигде не нужна. Нужно какой-то рандомный шаблон чтобы раскидать всякие классы, для этого что угодно подойдёт как основа.
Аноним 09/12/24 Пнд 11:29:09 #266 №3337736 
>>3337721

И я не видел. Наверное потому, что реляционную бд в принципе нахуй не надо менять на моего ебаное ввиду того что это списочек джейсонов?
Аноним 09/12/24 Пнд 12:45:56 #267 №3337837 
>>3337736
Монга - это секта поехавших, с ними бесполезно говорить. Если в проекте упоминается монга - там дичайший кал говна, от которого охуеют даже паджиты.
Аноним 09/12/24 Пнд 13:43:21 #268 №3337891 
>>3337596
>>3337587
>>3337534
>>3337529
>>3337524
Это чатЖпт такой сгенерил)
Аноним 09/12/24 Пнд 14:25:36 #269 №3337917 
>>3337721
>для этого что угодно подойдёт как основа.

Мамка твоя пойдет как основа
Аноним 09/12/24 Пнд 15:49:00 #270 №3337998 
>>3337389
>Что не так,
Это твоем хеловорду похуй на чём и как запускаться. А в крупных компаниях сидят на старых версиях и надо чтобы кто-то бэкпортил критичные багфиксы. Чтобы можно было засабмитить баг и его пофиксали. Вот для этого и нужен суппорт.

>>3337389
>Иди билди дотнет и продавай кабанычам.
Куча компаний зарабатывает на том что билдит ядро линукса, посторесс и т.п. с гитхаба.
Аноним 09/12/24 Пнд 19:01:52 #271 №3338152 
>>3337998
>Куча компаний зарабатывает на том что билдит ядро линукса, посторесс и т.п. с гитхаба.

Наверняка на компьютере
Аноним 09/12/24 Пнд 23:47:44 #272 №3338330 
>>3338152
Троллинг тупостью вышел на новый уровень.
Аноним 10/12/24 Втр 07:09:37 #273 №3338425 
IMG20241210070656843.jpg
Друзья, я вчера программировал на сишарпе, всё было отлично
Аноним 10/12/24 Втр 14:52:54 #274 №3338762 
Надо замутить rest api сервер под виндой работающий в виде сервиса. Как лучше сделать, на asp.net или может какой нибудь хороший nuget пакет есть для этих целей? К asp.net душа не лежит. :С
Аноним 10/12/24 Втр 15:13:33 #275 №3338787 
>>3338762
А чего не лежит? Ты разделяешь асп-нет от асп-нет-кор?

Может, минимал-апис подойдёт?
Аноним 10/12/24 Втр 15:27:05 #276 №3338791 
>>3338787
>А чего не лежит?
хз, сложилась ассоциация что это интструмент для вебсайтиков. Ну и он монструозный, мне надо компактный для лёгкого сервиса.
Аноним 10/12/24 Втр 15:27:52 #277 №3338792 
>>3338787
>Может, минимал-апис подойдёт?
Это?
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis?view=aspnetcore-9.0
Аноним 10/12/24 Втр 15:40:43 #278 №3338796 
>>3338792
Это. А вообще, аспнеткор сейчас не назовёшь монструозным.
Аноним 10/12/24 Втр 15:44:27 #279 №3338797 
>>3338796
Понял, спасибо. Пойду курить мануалы по асп кору.
Аноним 10/12/24 Втр 16:42:48 #280 №3338834 
>>3338796
ну памяти он ест приличнее чем тот же HttpListener голый с обработчиками запросов
Аноним 10/12/24 Втр 18:55:26 #281 №3338926 
После двух недель мучений с Unity хочу спросить:
- Как жить без указателей?
- Как жить без #define?
- Как жить без typedef?
- Как жить без человеческих enum'ов?
Хули тут всё так неудобно?
Аноним 10/12/24 Втр 19:12:35 #282 №3338943 
>>3338926
зачем тогда пришел оттуда где было тебе хорошо? возвращайся
Аноним 10/12/24 Втр 19:13:39 #283 №3338944 
>>3338926
>Неудобно

Дело привычки. Через пол года будешь смотреть на кресты как на гроб.
Аноним 10/12/24 Втр 19:19:22 #284 №3338954 
>>3338944
На энумы не будет. Они реально убогие. Еще и работают почему то медленнее
Аноним 10/12/24 Втр 19:25:03 #285 №3338959 
>>3338943
Писать свой движок, конечно, интересно и приятно, но нереалистично, если хочется писать игру, а не движок.
Юнити тот ещё кактус, но увы, это всё ещё лучший вариант для одиночки, если хочешь в приёмлимые сроки написать законченный продукт, а не разрабатывать тулзы до старости.
>>3338944
Сомневаюсь. Неуютное чувство, что тебя держат в песочнице и смотрят как на идиота никуда не денется.
Аноним 10/12/24 Втр 19:29:06 #286 №3338961 
1580076389701.png
А с чего вообще вкатываться? Меня направили из Unity/C# в дотнет из-за невозможности найти работы. ВО нету, с БД не работал, в вебе и серверах не шарю. С чего начинать вообще и за что браться? На каких проектах отрабатывать? Если в ГД просто берёшь и делаешь игру или прототип с механикой, то тут везде разные требования и фреймворки.
Аноним 10/12/24 Втр 19:36:21 #287 №3338965 
>>3338961
ВО?
Аноним 10/12/24 Втр 19:41:59 #288 №3338967 
>>3338965
Высшее образование
Аноним 10/12/24 Втр 19:44:35 #289 №3338968 
>>3338967
а зачем оно нужно?
даже 9 классов не нужны если ты умеешь писать код.
диплом разве что хреновая подставка под кружку в айти
Аноним 10/12/24 Втр 20:16:52 #290 №3338984 
>>3338961
БД?
ГД?
Аноним 10/12/24 Втр 21:02:05 #291 №3339009 
>>3338984
ну тут и так понятно
база данных и геймдев
Аноним 10/12/24 Втр 21:15:38 #292 №3339012 
>>3338791
>Ну и он монструозный
Пиздец. Ты из 2004 что ли?
Аноним 10/12/24 Втр 21:18:33 #293 №3339015 
>>3338926
>- Как жить без указателей?
Они там есть. Ну вернее в шарпе есть. В юнити я не знаю чем тебя барин кормит.
>Как жить без #define?
>Как жить без typedef?
Это всё есть.

>Как жить без человеческих enum'ов?
Лол.
Аноним 10/12/24 Втр 22:04:14 #294 №3339029 
>>3338959
> Сомневаюсь. Неуютное чувство, что тебя держат в песочнице и смотрят как на идиота никуда не денется.

Охуенное чувство однозначной, предсказуемой модели памяти, которая просто работает и не бухтит.

Это как созерцать Windows XP после ебли с Windows 11.
Это как созерцать Windows XP после ебли с Windows 98.
Аноним 10/12/24 Втр 22:11:54 #295 №3339035 
>>3339015
>>Как жить без человеческих enum'ов?
>Лол.

А я не понял, чего им там с энамами так хорошо живётся?
Аноним 10/12/24 Втр 22:23:05 #296 №3339041 
>>3339035
Я не понял проблемы енамов. Нужны конкретные примеры. Ну т что в шарпе они медленные - это верю. А ещё то что.
Аноним 10/12/24 Втр 22:33:18 #297 №3339045 
>>3339041
проблема в том, что этот франкеншейн просто этакий не пойми что вокруг типа и ничего более
ты не можешь хранить разные значения в нем (да ты можешь это делать с помощью классов, но зачем тогда енум)

также ты можешь присвоить значение которого нет в енаме и никто и слова против не скажет.

Получается по факту что это строковое обозначение каких то значений базового типа (например инт) причем не бесплатно в плане выполнения (банально медленнее чем тот же инт) и при этом позволяет присвоить чего угодно. Этакий враппер над базовым типом с недовозможностями.
Аноним 10/12/24 Втр 22:46:48 #298 №3339053 
Ух, пиздец как енумы тормозят. Пока выполняется одна операция с енумом, БД успевает обработать 100 SQL-запросов.
Аноним 11/12/24 Срд 03:14:44 #299 №3339105 
>>3339053
У тебя целые числа тормозят?
Аноним 11/12/24 Срд 06:04:18 #300 №3339118 
>>3339045
>зачем тогда енум

Чтобы типы страховых полисов не путать с типами страховок полюсов.
Аноним 11/12/24 Срд 06:10:58 #301 №3339120 
>>3339045
>недовозможностями

А каких возможностей ты хотел? Бесплатный полиморфизм через энамы?
Аноним 11/12/24 Срд 12:27:38 #302 №3339299 
изображение.png
>>3339118
то есть базовый убогий механизм, причем кривой, ведь можно присвоить енаму значение, которого нет там вообще. И нужно ручками самому проверять лол.
>>3339120
шарп не один язык имеющий энамы.
посмотри на котлин
посмотри на rust (пик) - в языке в принципе нет полиморфизма
Аноним 11/12/24 Срд 20:40:56 #303 №3339615 
>>3339299
Нахуя в коде писать такие комментарии?
Аноним 11/12/24 Срд 20:47:01 #304 №3339620 
>>3339615
потому что это скрин из учебника по расту.
Аноним 11/12/24 Срд 20:47:42 #305 №3339621 
>>3339299
>посмотри на котлин

Он такой выразительный!

>посмотри на rust (пик) - в языке в принципе нет полиморфизма

Раст, к сожалению, не закрепился
Аноним 11/12/24 Срд 20:52:36 #306 №3339623 
>>3339621
какая разница. я просто показал что это не "нельзя сделать такие енумы ибо полиморфизмы и другие умные слова мешают", а просто шарп сделал убогие енумы
Аноним 11/12/24 Срд 20:52:40 #307 №3339624 
>>3339299
>посмотри на котлин

В Котлине энам это по сути объект с виртуальной таблицей методов, который требует выделения в куче.
Аноним 11/12/24 Срд 20:58:41 #308 №3339631 
>>3339623
>нельзя сделать такие енумы

Ёбнись об стену. Энум это в шарпах число.

А в расте энум не число, а универсальная структура данных размером с максимально допустимый в ней объект + дискриминатор.

ты сравниваешь не относящиеся друг к другу категории, по ошибке названные одним словом

А речь шла про энамы из крестов вообще, там Антон выше на них надрачивал
Аноним 11/12/24 Срд 21:39:31 #309 №3339650 
>>3339631
вообще то это обертка над числом на уровне IL, поэтому работает коряво и медленнее.

Ну так то да, в остальном бумс. Но кому от моего бумс легче стало?
Аноним 11/12/24 Срд 22:25:01 #310 №3339662 
Понял, что xunit объективно лучше чем nunit и микросовтовский движок. Со всеми тремя работал не менее чем по два года

Попробуйте оспорить, что-ли
Аноним 11/12/24 Срд 22:36:26 #311 №3339670 
>>3339650
>вообще то это обертка над числом
Это и есть число, там никаких обёрток нет

>на уровне IL
Для красного словца что-ли решил приплести IL?
Аноним 11/12/24 Срд 22:39:21 #312 №3339672 
>>3339650
>поэтому работает коряво и медленнее.

Схуяли? Не улавливаю твой ход мысли. Примерно хоть объясни, откуда ты это взял?
Аноним 11/12/24 Срд 23:09:26 #313 №3339684 
>>3339053
Ты наговнокодил где-то, такого не может быть даже если ты 100 запросов параллельно пустишь.
Аноним 11/12/24 Срд 23:10:20 #314 №3339685 
>>3339650
>вообще то это обертка над числом на уровне IL, поэтому работает коряво и медленнее.
А, ты шизофреник просто. Так бы сразу и написал, а то выдумывал что у шарпа какие-то проблемы есть лол.
Аноним 12/12/24 Чтв 08:54:07 #315 №3339789 
>>3339650
Ахаэахахахахахп
Аноним 12/12/24 Чтв 10:02:51 #316 №3339813 
>>3339624
котлин - тупопёздный кал для ебаньков. Говно без задач.
Аноним 12/12/24 Чтв 11:10:18 #317 №3339857 
>>3339662
Cорта говна, в обоих нет андроид тестов.
Аноним 12/12/24 Чтв 14:06:46 #318 №3339984 
изображение.png
>>3339670
>>3339685
>>3339672
это не число (пик пруф)
коряво, потому что всякий десериализатор впихнет туда любое число и не поперхнется. Ну ладно это природа енума ради перфоманса....
но перфоманс их оставляет желать лучшего. О скорости методов енума легенды ходят.
ну ладно, там линейная сложность + рукожопство разрабов шарпа

так что возьму простое - я как то в микробенчах заменил енумы на числа и получил х4 в скорости. То есть это нихрена не zero cost
Аноним 12/12/24 Чтв 14:43:52 #319 №3340009 
>>3339984
Просто ты долбоёб и даже микробенч не смог написать что бы не наглотаться погрешностей измерения времени.

По дизассемблеру, чего тебе дебило не нравится? Потерей никаких нет, все ровно целое число и занимает.

>рукожопство разрабов шарпа

Угу, липперт и хейлсберк сидели в мс за зарплатой 5 лямов в год потому что рукожопы, а какое-то анонимное ебанько вершина достижений которого срать на сосаке, нерукожоп. Я бы на твоем месте задумался над самооценкой.
Аноним 12/12/24 Чтв 14:48:24 #320 №3340014 
>>3339984
Ебать дебил. Как из того факта что енум в IL имеет самостоятельный тип следует что в рантайме будут накладные расходы? Что тебя ждёт когда узнаешь что генерик в дот нете тоже имеет прямое представление в IL а не макрос времени компиляции как на плюсах?
Аноним 12/12/24 Чтв 15:16:54 #321 №3340046 
>>3340009
>Угу, липперт и хейлсберк сидели в мс за зарплатой 5 лямов в год
так вот в чем причина, что очевидные оптимизации делаются через годы, а то и десятиления. Я тут выше писал про дотнет9 как пример.

Интересно, а почему эти супер кодеры не сделали Enum.GetValues (и другие методы) быстрым сразу, а потом? Почему в LINQ оптимизации "а вдруг у нас тут список, так зачем создавать итератор если можно пройти по индексу" завозят только к 9й версии дотнета? это все риторические вопросы
чтобы подольше зарплату получать видимо. Ясно понятно.

зато они забыли сделать IReadOnlyList на старте (хотя может не они) и спроектировали дебильную систему коллекций. (но это уже оффтоп)
Аноним 12/12/24 Чтв 15:22:27 #322 №3340052 
>>3340009
>Я бы на твоем месте задумался над самооценкой.
у меня с ней все нормальн. это мс меня за дебила держит. поэтому и сделал ConfigureAwait(true) (боже, ну и синтаксис) по дефолту. Все в угоду формошлепам, чтобы им меньше этой пурги писать (а то дедлоки хуже чем "к контролу нельзя обращаться в другом потоке"...)

И когда остальные попросили "а можно нам на уровне сборки указать чтобы можно было чтобы он был (false)" - то результат все знают.
Нет никакого результата. Даже в асп.нет коре пишут что там нет контекста синхронизации, но оверхед не сильно высокий от ConfigureAwait(true) по дефолту. То есть на полном серьезе - оверхед, да есть, но он же небольшой, чего вы жалуетесь, мы тут по 5 лямов зарабатываем.
Аноним 12/12/24 Чтв 15:41:46 #323 №3340069 
>>3340052
>>3340046
С енумом напукал в лужу, теперь по таскам решил насрать, генератор ты шизофазии нахватвашийся баззвордов? Иди учебники читай а не сри в треде. Всё там правильно сделно, тебе дебилу на низкой должности не понять. Читай бложек Липперта, он там популярно объясняет как принимаются те или иные решения по языку, по каким критериям и что берётся в расчёт.
Аноним 12/12/24 Чтв 18:52:45 #324 №3340174 
>>3340069
по таскам и по всему остальному я срал всегда.
а пояснения вместо функционала и скорости - лично мне они не нужны.
Он может пояснить почему методы в LINQ что добавили в дотнет 9 не были добавлены раньше?
не нужны были? тогда зачем добавили? нужны были? тогда почему только щас?

аргумент "потому что так в мануале написано" оставь говноедам.

Насчет енамов признаю только частично. Ведь от этого они не стали ничем более как именованными интами без защиты от записи чего угодно. И когда у тебя в енуме 3 значения 1,2,3, а тебе может в рантайме спокойно прийти 10 и твой метод ожидающий что может быть только 3 варианта...
Аноним 12/12/24 Чтв 19:21:35 #325 №3340183 
>>3340174
>твой метод ожидающий что может быть только 3 варианта
Падает на строке default throw new NotImplementedException()
Точнее, это написано в бузинес логике на всякий случай. Так-то ты мальчик взрослый и конечно же проверил юзер инпут еще в контроллере ручки, хитрый юзер получит ошибка 500 или чето там.
Аноним 12/12/24 Чтв 19:49:35 #326 №3340192 
>>3340183
ты проверяешь всю ту портянку что возвращает любой рест апи?
ну ты молодец, ну или ты этого просто не делаешь )
Аноним 12/12/24 Чтв 20:31:24 #327 №3340210 
>>3340174
>Он может пояснить почему методы в LINQ что добавили в дотнет 9 не были добавлены раньше? не нужны были?

про какие методы ты говоришь? если я о них не знаю, может они и не сильно нужны?
Аноним 12/12/24 Чтв 20:43:11 #328 №3340221 
>>3340174
Самый главный вопрос, почему List не реализует IReadOnlyCollection? Что за безобразие!
Аноним 12/12/24 Чтв 21:09:13 #329 №3340238 
>>3340046
>забыли сделать IReadOnlyList на старте (хотя может не они)
Ты снова на связь выходишь?
Аноним 12/12/24 Чтв 22:55:46 #330 №3340278 
>>3340210
Ты о них не знаешь ибо их не было)
Как и многих других. Morelinq тому пруФ

>>3340238
Ты из мс?
Аноним 13/12/24 Птн 01:29:01 #331 №3340310 
>>3340046
>зато они забыли сделать IReadOnlyList на старте (хотя может не они) и спроектировали дебильную систему коллекций.
Они пиздили её из другого языка, где тоже не было ридонли коллекций. Как и lock (object) спизжено.
inb4: сегодня то, уже очевидно, что надо было делать по другому. Но тогда всё было не так очевидно.
Аноним 13/12/24 Птн 09:26:01 #332 №3340381 
>>3340174
>а пояснения вместо функционала и скорости - лично мне они не нужны.
Так ты на пиздел про скорость.

>Он может пояснить почему методы в LINQ что добавили в дотнет 9 не были добавлены раньше?

Ответы дадены в моём сообщении, перечитывай до просветелния. А ещё задайся вопросом почему Сталин людям ХДТВ не давал смотреть.

>Ведь от этого они не стали ничем более как именованными интами без защиты от записи чего угодно
У тебя совсем что ли вместо мозга насрано? Это их киллер фича и повсеместно используется. Без неё они не нужны т.к. будут дублировать обычный классы с кастом логикой.
Аноним 13/12/24 Птн 09:52:16 #333 №3340396 
>>3340381
>Так ты на пиздел про скорость.
я это признал, дальше что? а ничего.

>Ответы дадены в моём сообщении, перечитывай до просветелния.
ответы вида "ну так в документации написано" это не аргументы

>Без неё они не нужны т.к. будут дублировать обычный классы с кастом логикой.
каво шта?
Аноним 13/12/24 Птн 16:57:32 #334 №3340664 
>>3340278
>Morelinq

Первый раз слышу. Не нужно нахуй
Аноним 13/12/24 Птн 19:38:03 #335 №3340773 
>>3340664
Есть многое на свете, друг Горацио,
Что и не снилось нашим мудрецам.
Аноним 13/12/24 Птн 19:52:26 #336 №3340777 
>>3340773
Я посмотрел, там какое-то неебически огромное количество методов расширения.

Тащить всю эту библиотеку не вижу смысла. Хотя и не противник такого
Аноним 13/12/24 Птн 20:36:01 #337 №3340801 
>>3340777
Был проект netfx вроде где можно было затащить отдельный метод
Но умер из-за ограничений студии
Аноним 13/12/24 Птн 23:31:43 #338 №3340864 
Аноны, стоит ли идти на позицию +1/3 дохода, если там может быть довольно уныло (много хранимых процедур, мало собственно разработки на .Net). Или поискать столько же выгодной вариант, но более интересный?
Аноним 13/12/24 Птн 23:57:19 #339 №3340871 
>>3340864
>много хранимых процедур
Их наличие в целом красный флаг.
Аноним 14/12/24 Суб 00:36:47 #340 №3340880 
>>3340864
Да
Аноним 14/12/24 Суб 00:53:21 #341 №3340884 
>>3340871
>Их наличие в целом красный флаг.
У меня сейчас проект, где много бизнес-логики написано на хранимых процедурах. Это такая мучительная блевотина, что я засомневался соглашаться на новый офер, если получу его на наступающей неделе. Даже прямо за очень хорошую прибавку.
Аноним 14/12/24 Суб 06:44:55 #342 №3340918 
>>3340871
>красный флаг

Ты пороху не нюхал
Аноним 14/12/24 Суб 06:48:45 #343 №3340919 
>>3340871
Красный флаг - это слово фулстек в вакансии. Вот от такого говна надо держаться максимально далеко.
Аноним 14/12/24 Суб 07:23:16 #344 №3340920 
>>3340919
>>Красный флаг

Какой унылый жаргон.
Аноним 14/12/24 Суб 07:59:34 #345 №3340926 
>>3340918
Нахуя мне нюхать говно?
Аноним 14/12/24 Суб 09:26:53 #346 №3340972 
>>3340926

Ты клюпый просто. Хранимки означают, что на проекте бд инженеры есть.

Я бы на твоём месте просто всю бизнес-логику свалил на них, а сам попивал бы фраппе в 11 утра и дёргал даппером вьюшки.
Аноним 14/12/24 Суб 09:43:13 #347 №3340981 
>>3340972
>Хранимки означают, что на проекте бд инженеры есть.
Нет это означает что тебе придётся заниматься адовой ракоеблей на проде в попытке отловить баги через RDP говна под тремя слоями анальной модерации, а любая правка бизнес логики будет требовать десятка часов чтения говнокода.

Я белый человек с зп 320к который работает в банке бэкендором онли. Мои знания БД и как там это сделано заканчивается на миграциях в EF. CI/CD пишет и поддерживает девопс, фронт пишет фронтендер, за базой следит тоже девопс. Моё дело переложить JSON с фронта в базу в с помощью автомаппера
Аноним 14/12/24 Суб 09:57:24 #348 №3340985 
>>3340981
>Я белый человек с зп 320к
>Мои знания БД и как там это сделано заканчивается на миграциях в EF.

За что тебе деньги платят?
Аноним 14/12/24 Суб 10:01:33 #349 №3340987 
>>3340981
>Моё дело переложить JSON с фронта в базу в с помощью автомаппера

долбоёб, блядь
Аноним 14/12/24 Суб 12:04:04 #350 №3341053 
17341487294890.jpg
Друзья, я всю неделю программировал на сишарпе. Всё хорошо
Аноним 14/12/24 Суб 15:19:27 #351 №3341170 
yo-high-five-dude.jpg
>>3341053
Плюсую, по кайфу вообще
Аноним 14/12/24 Суб 18:58:06 #352 №3341293 
>>3340919
Я на пяти работах из семи работал фуллстеком, и это ничем не хуже тех двух мест, где я работал бэкендером. Даже лучше, не надо с фронтами договариваться о контрактах, а то у них вечно какие-то ебанутые просьбы, то вместо массива объект прислать, то ещё какая хуйня.
С собой гораздо проще договориться.
Аноним 14/12/24 Суб 20:57:26 #353 №3341362 
бля сишарп такой охуенный. это как питон, только на нем можно хоть что то полезное написать
Аноним 14/12/24 Суб 22:45:49 #354 №3341412 
>>3341362
Или наоборот
Аноним 14/12/24 Суб 23:24:56 #355 №3341420 
>>3341362
>это как питон

неподдерживаемое ровно.
Аноним 14/12/24 Суб 23:27:29 #356 №3341421 
>>3341420
Извините, случайно написал, что питон это ровно.

Я хотел сказать, что питон это говно
Аноним 15/12/24 Вск 09:46:23 #357 №3341523 
Какими биндингами для работы с directx 11 вы пользуетесь?
Аноним 15/12/24 Вск 12:13:04 #358 №3341577 
2024-12-1511-54-49.png
2024-12-1512-03-20.png
>>3341362
Какая же хуета этот ваш питон. Вынужден был с ним связаться, и более уебищного языка я еще не видел (а я с бейсика пришел). Иногда нужно окунуться в говно, чтобы полюбить си шарп с еще большей силой.

Никто код не комментирует, везде каст к object или any, и вызывают методы из обджекта по наитию. Никаких подсказок intellisence, а если и есть, то что-то уровня пикрилейтед 1, где вываливают в кучу описание метода, описание параметров, и все без подсветки синтаксиса.

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

Хуже только джава скрипт.
Аноним 15/12/24 Вск 12:42:02 #359 №3341583 
>>3341577
>Никаких подсказок intellisence, а если и есть, то что-то уровня пикрилейтед 1
так ты прыгай обратно в машину времени и возвращается
а то забросило тебя далеко в прошлое.
Аноним 15/12/24 Вск 12:55:10 #360 №3341589 
>>3341583
Так я работал в последней вижуал студии с установленными средствами для питона. Что еще надо?
Аноним 15/12/24 Вск 12:59:08 #361 №3341591 
>>3341589
Использовать type hints
И pylance
Конечно есть имбецилы что против этого типа "не по питонски это", но причем тут язык
Аноним 15/12/24 Вск 13:37:06 #362 №3341616 
2024-12-1513-28-59.png
>>3341591
>type hints
Первым делом начал юзать, но что делать с чужим кодом? Ты посмотри на пикрилейтед. Функция принимает any параметры, нииии одного комментария. Как с этим работать вообще?

>pylance
Это вообще для вс кода.
Аноним 15/12/24 Вск 14:12:26 #363 №3341636 
>>3341577
>Никто код не комментирует

Код комментируют только долбоёбы
Аноним 15/12/24 Вск 14:13:51 #364 №3341637 
>>3341616
документацию ищи. camelCase намекает на то, что это порт чего то.
да и на шарпе можно такое писать.

>>3341636
он про тайпхинтинг, это совсем другое
ты же в шарпе пишешь типы везде, но долбоебом себя не называешь поэтому.
Аноним 15/12/24 Вск 14:14:52 #365 №3341639 
>>3341616
>нииии одного комментария

Код комментируют только долбоёбы
Аноним 15/12/24 Вск 14:23:52 #366 №3341650 
>>3341637
>тайпхинтинг

Я вот как работаю с комментариями.

1. Не трогаю их вообще никогда.
2. Даже если удаляю код вокруг, то то комментарии, если они были, оставляю на месте.
3. Если надо добавить метод, в класс с комментариями - просто вписываю его под уже существующий комментарий, если он хоть примерно пару подходящих слов содержит.
Аноним 15/12/24 Вск 14:24:10 #367 №3341652 
>>3341636
>>3341639
Питоноблядь порвалась. Да у вас и приватные поля и методы создают только долбоебы. Указание типов параметров и переменных — это тоже для долбоебов. Высрали нечитабельное говно и рады.
Аноним 15/12/24 Вск 14:25:35 #368 №3341655 
>>3341652
Иди на хуй, я пишу на сишарпе самодокументируемый код по учебниками боба Мартина.
Аноним 15/12/24 Вск 14:29:44 #369 №3341658 
>>3341652
>Да у вас и приватные поля и методы создают только долбоебы. Указание типов параметров и переменных — это тоже для долбоебов. Высрали нечитабельное говно и рады.

Зачем этой хуйнёй заниматься, если можно просто через автомаппер писать? Ему не важна видимость и типы, а в случае, если типы не сходятся, он сам всё выведет
Аноним 15/12/24 Вск 14:31:05 #370 №3341659 
>>3341655
>самодокументируемый код
Ты раковая опухоль.
Аноним 15/12/24 Вск 14:31:19 #371 №3341660 
>>3341650
в контексте питона тут другое.
в питоне 3 есть тайпхинтинг на уровне синтаксиса, а вот в питоне 2 только в докстринг можно что то указать. упоротые орали про "питонвей, питон это динамика". А нормальные делали, а с приходом тайпхинтинга нормальных стало сильно больше, но если либа старая, то с ней реально проблема. Вот есть либа pewee - ее автор долбоеб, который специально не делает хинты ибо упорот. Но я вот попробовал ее захинтить и это реально жопа делать постфактум, то есть ниасилил я покрыть всю ту магию, что она в динамике выдает, хинтами.

>>3341652
шарпоблядь рвет жопу, а зачем?
я тоже шарпист, но если собрат шарпист несет хуйню, то я с радостью потыкаю его мордой в "иди изучи вопрос, а потом рот открывай".
Аноним 15/12/24 Вск 14:36:21 #372 №3341664 
>>3341660
>я тоже шарпист
Здравому человеку в голову не придет высрать пикрилейтед >>3341616
Ты просто горишь из-за того, что питон оскорбили. Никто в здравом уме не будет на шарпе писать только публичные поля и методы, возвращать и принимать данные object типа, не документировать свойства, классы и методы.

Нет таких людей. Нет.
Аноним 15/12/24 Вск 14:50:17 #373 №3341676 
>>3341664
а тыкаю я мордой в говно тех, кто в вопросе не разбирается, но мнит себя дохера экспертом.

>Никто в здравом уме не будет на шарпе писать только публичные поля и методы, возвращать и принимать данные object типа, не документировать свойства, классы и методы.
ну так шарп и задуман как статически типизированный язык, а питон задуман ровно обратным. Природа у языка такая - быть динамическим где всё создается в РАНТАЙМЕ.


>Здравому человеку в голову не придет высрать пикрилейтед
еще как придет. причины есть
1 это порт или враппер аля QT. а значит есть офф дока по всем этим параметрам. зачем её еще раз писать
2 когда в языке нет поддержки хинтов, то писать как бы нечем. А в пи2 такого не было ибо динамическая природа языка. И очень много кода с тех времен, которые тупо перегнали конвертером под пи3. А многие до сих пор поддерживают обе версии зачем то. Да и сейчас чтобы писать с хинтами - это нужно писать игнорируя динамическую природу (основную силу питона), а будто на шарпе каком пишешь. Сначала выбираешь динамику, а потом пишешь как будто статика. Зачем тогда питон вообще выбрал?

Каждому языку своя задача. Иначе почему твой супер любимый красивый и мощный шарп не заместил питон. риторический вопрос.
Аноним 15/12/24 Вск 15:29:19 #374 №3341707 
>>3341676
>а тыкаю я мордой в говно тех, кто в вопросе не разбирается
А ты разбираешься? Каждый второй дурак умеет тыкать других мордой в говно — для этого много ума не надо. Самоуверенность — не признак правоты.

>Природа у языка такая - быть динамическим
Не надо оправдывать глупости. Все мои претензии спокойно реализуются либо уже реализованы, но игнорируются пользователями.
Что мешает динамическому языку иметь приватное поле? VBA чет не помешало их иметь.

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

>Иначе почему твой супер любимый красивый и мощный шарп не заместил питон. риторический вопрос.
Вопрос форса языка инфоцыганами среди долбоебов (которых подавляющее большинство). Во многих сферах я встречал абсолютно ублюдочное приложение, которое по видом "справится и дурак" захватывало огромную аудиторию. Это даже не новость.
Аноним 15/12/24 Вск 15:34:53 #375 №3341712 
>>3341664
>не документировать свойства, классы и методы.

За комментарии в коде в ебало ссать надо
Аноним 15/12/24 Вск 15:40:07 #376 №3341717 
>>3341712
еще один выблядок питона или джаваскрипта
Аноним 15/12/24 Вск 15:42:26 #377 №3341719 
>>3341717
Это один и тот же. Чем больше раз напишешь ебанутое утверждение, тем убедительнее оно кажется.
Аноним 15/12/24 Вск 15:45:31 #378 №3341721 
>>3341712
Ссать надо за их отсутствие. В нормальных проектах у каждого поля, свойства и метода есть комментарий.
Аноним 15/12/24 Вск 15:47:33 #379 №3341723 
>>3341707
>А ты разбираешься?
да. пишу на многих языках, но не лезу со своим уставом в чужой монастырь.
а раз я пишу, то я ЗНАЮ как что где устроено
Впрочем, это неважно
потому что только долбоеб высрет фразу "Да у вас и приватные поля и методы создают только долбоебы" - смысл которой понять может не только лишь каждый, а понять может только долбоеб.

>Что мешает динамическому языку иметь приватное поле?
ничего не мешает. просто это ДИНАМИЧЕСКИЙ язык где "всё есть словарь". И классы построены поверх этой концепции. как в том же раннем жс поверх прототипов было.
и сокрытие там есть - просто на уровне конвенции без лишних слов
одинарное подчеркивание - протектед
двойное - приватное и ни один нормальный редактор тебе его не подскажет снаружи, да и в рантайме чтобы добраться до этого приватного тебе нужно построить правильное имя. Ну так и в шарпе можно добраться до приватного поля - получается шарп не имеет средств для задания видимости?

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

>Вопрос форса языка инфоцыганами среди долбоебов
может тебе реально пописать на обоих языках чтобы понять что ты несешь херню?
риторический вопрос. у тебя синдром утенка.
я вот использую языки и знаю достоинства и недостатки. и поэтому прекрасно понимаю силу и слабость питона и шарп. и только утята пытаются запихать шарп везде, но реальность такова, что так не работает
Аноним 15/12/24 Вск 15:57:18 #380 №3341731 
>>3341723
>да. пишу на многих языках
Специалист во всем и ни в чем не мастер. И прям щас лезешь в чужой монастырь, предлагая ебанутые идеи, вроде не документировать и не комментировать в коде шарпа. На столько тебе горит, что написал это трижды.

>ничего не мешает
А хули тогда споришь, кретин?

>и сокрытие там есть - просто на уровне конвенции без лишних слов
Вот пока вы так делаете, все так и происходит. Потом часами спорите с какой стороны ставить коснтанту.

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

И заметь, когда мне что-то не нравится, я просто в это не лезу. Ты начинаешь распространять вредные идеи и "тыкать мордой в говно" тех, кто посмел возмутиться.
Аноним 15/12/24 Вск 16:00:30 #381 №3341736 
>>3341676
>Сначала выбираешь динамику, а потом пишешь как будто статика.
Так-то помимо динамической/статической типизации есть еще сильная/слабая. И писать на пайтоне, как на каком-нибудь сраном js, такое себе.
Аноним 15/12/24 Вск 16:01:56 #382 №3341739 
>>3341723
>да. пишу на многих языках,
>а раз я пишу, то я ЗНАЮ как что где устроено
Ну или наоборот - нахватался по верхам и считаешь, что преисполнился.
Аноним 15/12/24 Вск 16:05:01 #383 №3341744 
>>3341723
>Ну так и в шарпе можно добраться до приватного поля - получается шарп не имеет средств для задания видимости?
Только в шарпе для этого недостаточно просто "построить правильное имя", а произвести некоторый комплекс действий, применение которого само по себе уже говорит "шатал я ваше ООП и области видимости в текущий момент"
Аноним 15/12/24 Вск 16:12:19 #384 №3341750 
>>3341731
>предлагая ебанутые идеи, вроде не документировать и не комментировать в коде шарпа
долбоеб? риторический вопрос. я лишь пояснил ньюфакам почему отсутствие хинтов не является дичью, как бы это не раздражало (в том числе и меня). остальное ты придумал сам.

>А хули тогда споришь, кретин?
кретин тот, кто заявляет что там нет приватных вещей. Угадай кто из нас это заявил.

>Вот пока вы так делаете, все так и происходит
никто не спорит. это как раз дао питона (ну изначальный) - "есть только один путь сделать это". Поэтому там и отступы для блоков.
Это как раз в других языках спор "а как именовать приватные, нужна ли буковка m" или "открывающую скобочку на этой строке или переносить".

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

>>3341736
я НЕ про динамическую типизацию. А про динамическую ПРИРОДУ. при которой, например, класс (да и вообще всё) создается В РАНТАЙМЕ. То есть итоговые поля, методы и прочее создаются в рантайме и никакими хинтами на уровне IDE ты их не опишешь. Декораторы могут породить что угодно ибо динамика.

>>3341739
по себе судишь. ну учитывая твои аргументы - ты даже по верхам не смотрел. ты вообще не знаешь о чем говоришь, и просто позоришься.

>>3341744
> а произвести некоторый комплекс действий
а в чем разница? а ни в чем. просто ты снова "слышал звон, да не знаешь где он"
Аноним 15/12/24 Вск 16:33:17 #385 №3341763 
Любителям комментариев ссал на ебальник.
Аноним 15/12/24 Вск 16:54:01 #386 №3341778 
>>3341750
>кретин тот, кто заявляет что там нет приватных вещей. Угадай кто из нас это заявил
Ну ты и клоун. Т.е. нет приватных модификаторов и ничего не мешает питону их заиметь, при этом их нет. Вместо этого дурачки закрывают глаза и представляют, что нет кучи говна в списке IntelliSence. При этом я в чем-то не прав, назвая это дебилизмом и вынужден читать ебанутый аргумент про то, что язык динамический, что не мешает языку заиметь приватные модификаторы, при этом их нет.

Чуешь чем пахнет? Получается замкнутый круг, когда хочешь добиться ответа от дурачка. Он приводтит аргументы, которые никоим образом не оправдывают то, что должны оправдывать. Зачем тогда он их приводит — не понятно.
Аноним 15/12/24 Вск 17:00:03 #387 №3341783 
>>3341778
>Т.е. нет приватных модификаторов
а должны быть средства управления областью видимости или именно какие то ключевые слова чтобы лишь бы были потому что гладиолус?
средство есть - двойное подчеркивание. Зачем требовать необходимость особого слова?

>что нет кучи говна в списке IntelliSence
ее нет. Нормальная IDE знает, что __foo это приватное и не покажет его. И даже _foo не покажет.
нет никакой разницы между тем как IDE воспринимает private.
У тебя синдром утенка что приватное что то обязательно должно иметь слово private?
private class в шарпе давно писал?

да чую. дураком пахнет. дураком у нас выставляешь себя ты.
Аноним 15/12/24 Вск 17:17:46 #388 №3341798 
>>3341763
Автомаппер сам их пишет.
Аноним 15/12/24 Вск 18:45:19 #389 №3341841 
>>3341783
>Нормальная IDE знает, что __foo это приватное и не покажет его. И даже _foo не покажет.
А причем тут ИДЕ? Почему питон выполняет скрипт где идёт обращение до приватного поля.
Вообще private делает чуть больше чем просто скрывает поле в ИДЕ, но откуда пеутонщику это знать.
Аноним 15/12/24 Вск 19:04:29 #390 №3341853 
>>3341841
>Почему питон выполняет скрипт где идёт обращение до приватного поля
а ты проверял или фантазируешь?
я написал тебе
"а и в рантайме чтобы добраться до этого приватного тебе нужно построить правильное имя"

что уже должно намекать на то, что если в классе есть поле __foo, то обращение print(obj.__foo) работать НЕ БУДЕТ для вызова извне класса. Чтобы до него добраться извне нужно обращаться как
_<classname>__<fieldname>, что как бы нельзя случайно обратиться, а нужно реально захотеть добраться до этого поля - это раз.

Ну а второе - зачем сверхсильно защищать приваты. даже в шарпе они защищены НЕ БОЛЕЕ - кому надо, тот доберется. А в питоне вообще то динамика НОРМА. Так что "нужно приседать дополнительно" вполне нормально. СЛУЧАЙНО ТАК НЕ ПРИСЯДЕШЬ.
Смекаешь? там НЕТ такого что "я задумал свойство приватным, а читатели снаружи этого не знают". ЗНАЮТ, ЕЩЕ КАК ЗНАЮТ - и вынуждены читать по особому ибо просто так не прочтешь.

но откуда фантазеру, который щупал предмет спора, это знать
Аноним 15/12/24 Вск 19:09:15 #391 №3341860 
>>3341841
фикс
>который щупал предмет спора
который НЕ щупал предмет спора
ибо чудик, который со мной спорит и аргументирует "а там так", даже не пробовал проверить не несет ли он херню.
Аноним 15/12/24 Вск 19:11:37 #392 №3341861 
>>3341783
> Нормальная IDE знает, что __foo это приватное и не покажет его

А если оно публичное? Может я кайфую называть публичные методы с двух плинтусов.
Аноним 15/12/24 Вск 19:13:55 #393 №3341864 
>>3341841
>Почему питон выполняет скрипт где идёт обращение до приватного поля.

Очевидно потому что надо было комментарий оставить., что это поле приватное.
Аноним 15/12/24 Вск 19:14:33 #394 №3341866 
>>3341861
>Может я кайфую называть публичные методы с двух плинтусов.
ну значит ты долбоеб, который пришел в чужой монастырь...
и питон защищается от таких долбоебов который "а я люблю вот так"
потому что "нужно код писать, а не выражаться затейливо"
Аноним 15/12/24 Вск 19:17:59 #395 №3341870 
>>3341866

А на сишарпе таких вопросов вообще не возникает. Улавливаешь?
Аноним 15/12/24 Вск 19:23:38 #396 №3341877 
>>3341866
>который пришел в чужой монастырь

Вот, в том то и проблема. У пейфона очень высокий порог вхождения и иллюзия простоты. В шарпах нет никиких монастыре, они просто однозначны
Аноним 15/12/24 Вск 19:25:10 #397 №3341878 
>>3341870
так и к питону ты их ПРИДУМЫВАЕШЬ
улавливаешь?
ты просто решил опозориться публично.

>>3341877
>В шарпах нет никиких монастыре, они просто однозначны.
за сим можно закрывать спор. утенок шарпист, который ДАЖЕ НЕ ВИДЕЛ В ГЛАЗА ПИТОНА, пытается рассуждать о чем то и придумывает на ходу полную херню лишь бы что то ляпнуть.
Аноним 15/12/24 Вск 19:40:47 #398 №3341891 
>>3341878
Погоди, ты реально сейчас сравниваешь дотнет с пейфоном?
Аноним 15/12/24 Вск 20:15:20 #399 №3341925 
>>3341891
я уже говорил - каждой задаче свой инструмент.
посмотри на количество всего написанного для питона и спроси "а че не для шарпа, ведь он же лучше".
ну и попробуй одно с другим и ты сильно удивишься.
для прототипов, для вещей для которых нужны всякие биндинги - там питон рулит и педалит.
насколько просто работать с OpenCV на питоне и как запаришься плясать с бубном в шарпах.
Такая же ситуация со многим.

питон универсален, если не против заплатить за его недостатки, а вот шарп хорош, но не для всего.
Аноним 15/12/24 Вск 20:25:24 #400 №3341928 
>>3341925
>для прототипов

Ни одного технического преимущества, одни мантры про то, как на нём ОХУЕННО писать прототипы.

На практике там немножко по другому получается, но если не сравнивать с нормальными технологиями, то дебилам заходит.
Аноним 15/12/24 Вск 20:25:39 #401 №3341929 
image
Анончик, отрекламирую мне C#.
Я говнюкодю на Пиструне. Мне он нравится тем, что в нем я могу буквально всё. То есть, все костыли для работы уже давно придуманы красноглазиками, а я просто беру и пользуюсь. Очень универсальная штука, хотя он и жутко медленный, но jit обязательно доведут до ума.
Хочу в телеграм ботов, хочу в парсинг, бэк, невросети и так далее.
Что может предложить C# без костылей? Интересуюсь без негатива, мне действительно любопытно ваше мнение.
Аноним 15/12/24 Вск 20:26:54 #402 №3341930 
>>3341925
>я уже говорил - каждой задаче свой инструмент

Для любой задачи всегда находится более уместный инструмент, чем пейфон. Без обид, но пейфон не нужен
Аноним 15/12/24 Вск 20:41:49 #403 №3341939 
>>3341928
>>3341930
на практике посмотри рейтинг языков
и УЧТИ, что питон не жс который "ну в вебе он дефолтный, а веб как бы везде", то есть его заслуга честная (в отличие от того же жс)

это на практике. А то, что ты несешь - это фантазии того, кто питона даже не знает даже поверхностно (это ты 1000000 раз уже доказал обосравшись)

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

>>3341929
шарп лучше в многопотоке, статическая типизация, довольно богатый синтаксис (но менее выразителен - когда появилась enumerate в питоне? а когда в шарпе Index? (ответ - в последнем 9м через пару десятилетий от момента когда это стало нужно)), но если тебе нужна динамика или всякие там биндинги, то у тебя может быть большая большая большая большая ЖОПА с ним.

я помню делал на шарпах проект для работы с видео, проект для работы с имаджами с экономией памяти (vip), ну и opencv
в первом случае пришлось самому кодить обвязыку, во втором у меня текла память под линуксами, в третьем вообще не завел под линуксами
в итоге плюнул и на питоне все это сделал и быстрее и оно просто работает.
Аноним 15/12/24 Вск 20:58:47 #404 №3341957 
>>3341939
>то есть его заслуга честная (в отличие от того же жс)
>
Скорее это заслука хайпа на нейросетях и "вкате в айти"
Аноним 15/12/24 Вск 21:01:58 #405 №3341961 
>>3341939
>его заслуга

Да мусор это
Аноним 15/12/24 Вск 21:03:56 #406 №3341963 
>>3341929
>Хочу в телеграм ботов, хочу в парсинг, бэк, невросети и так далее.

Увы, ничего из вышеперечисленного в дотнете нет. Искать не надо, пользуйся пейфоном
Аноним 15/12/24 Вск 21:15:53 #407 №3341971 
>>3341939
Заебал мне этот мусор впаривать.
Аноним 15/12/24 Вск 21:27:04 #408 №3341975 
>>3341971
Никто не впаривает
Просто потыкали тебя мордой в твою брехню
Обычные развлечения на выходные
Аноним 15/12/24 Вск 21:30:28 #409 №3341978 
>>3341929
Какой jit?
Аноним 15/12/24 Вск 21:43:11 #410 №3341990 
>>3341978
В альфа-выпуске языка программирования Python 3.13.0a6 включена экспериментальная реализация JIT-компилятора. Он компилирует код Python в машинный код «на лету», во время выполнения программы, что позволяет языку работать значительно быстрее.
Аноним 15/12/24 Вск 22:21:01 #411 №3342006 
>>3341783
>Зачем требовать необходимость особого слова?
Приватное на то и приватное, что его не видно снаружи. И не надо ебать мозги какими-то договоренностями, чет подчеркивать там.

>средство есть - двойное подчеркивание
Хуй там, это костыль, который не во всех случаях работает. Настолько не во всех, что его рекомендуют избегать.

Вишенка на торте, когда я пытался сделать статическое свойство, обращающееся к приватному полю. В этот момент питон жидко пернув обмяк.
Аноним 15/12/24 Вск 23:07:41 #412 №3342029 
>>3342006
> что его не видно снаружи.
так его и не видно. и не потому что кто то не смотрит, а потому что __ эквивалент кейворду private, что в IDE, что в рантайме.

>Настолько не во всех, что его рекомендуют избегать.
пруфы будут? а то придумывать ты мастер

>В этот момент питон жидко пернув обмяк.
скорее ты обмяк со своим уставом в монастыре. нужно понимать что ооп в питоне прикручен сбоку да, потому что это вам не класс, как ты его привык видеть, а динамическая структура - да, да, само определение класса собирается в рантайме и в этот процесс не только можно вмешаться, а он является базой. Там все в питоне так устроено - "всё есть словарь". В жс с их прототипами что то похожее, только менее удобно ибо нет спец средств для магии.
понимая базу можно спокойно делать статические поля и работать с ними. Ну да, статическое проперти не выйдет, будет только статический метод.

ключевое слово "ПОНИМАЯ". Смекаешь?
Аноним 15/12/24 Вск 23:32:50 #413 №3342044 
2024-12-1523-11-12.png
>>3342029
>так его и не видно. и не потому что кто то не смотрит, а потому что __ эквивалент кейворду private
Охуительные истории. На пикрилейтед класс Debug находится в другом пространстве имен (если это можно так называть). Почему я вижу зоопарк говна, которое я не должен видеть?

>пруфы будут?
https://youtu.be/0hrEaA3N3lk?t=703

>скорее ты обмяк со своим уставом в монастыре. нужно понимать что ооп в питоне прикручен сбоку да
Так а зачем ты тратил время на доказательство обратного? Я же изначально написал, что такой подход мне не нравится. Я сразу написал, что выглядит питон как говно, и работает как говно, но зато это ОСОБЕННОЕ говно, это говно со своей ФИЛОСОФИЕЙ. Мне поебать сколько человек его использует. Я считаю, что питон — говно. Какой толк от его особоенностей, если ты как слепой котенок буквально во всем? Какой-то садизм: то что надо не видно (any), а то что не надо — видно (приватные поля).

Даже указание типов в третьей версии намекает, что так живется проще. И джит прикрутить собираются. Даже в джава скрипте сначала нахуевертили ШВАБОДЫ, а потом поняли, что обосрались, и добавили let. Вы должны понять, что как бы языки не вертели жопой (простите за каламбур), но С-подобный принцип — это база, к которой придут все, потому что это удобно.
Аноним 15/12/24 Вск 23:54:20 #414 №3342054 
>>3342044
>https://youtu.be/0hrEaA3N3lk?t=703[РАСКРЫТЬ]
Блин, какое же говно.
Меня еще поражает, что если ты сделал, что-то не так, то ты даже ворнинга не получишь, ни в компайл тайме, ни в рантайме. Пока построчно отладкой не пройдешь, хуй ты узнаешь, что что-то где-то не срабатывает. Хуже наверное только в js, который в довесок еще какую-нибудь явную хуйню начинает воротить.
Аноним 16/12/24 Пнд 00:44:26 #415 №3342070 
>>3342044
>Почему я вижу зоопарк говна, которое я не должен видеть?
потому что ты не отличаешь приватные методы от магических.
магические методы не являются приватными. Так что нормально что они подсказываются, но внизу списка.

какая то тупая хуета на видео
_foo - протектед (поле, метод)
__foo - приватный (поле, метод)
__foo__ - магический метод. это особая хреновина

Да, в IDE есть проблемы с подсказкой когда она вываливает лишнее или не в том порядке. Только это проблема самой IDE и обычно имеет issue на эту тему. То, что ее могут не чинить годами или ломать с новым билдом - ну что поделать, разрабы пишут на жава и они рукожопы (это я про пишарм)

>что такой подход мне не нравится
это лично твои проблемы. если ты НЕ ЗНАЕШЬ в чем сила динамики и не знаешь как ее применить - ну значит тебе оно и надо.

>Даже указание типов в третьей версии намекает, что так живется проще
опять ты про типы. я этого не отрицаю
Я вот вовсю использую тайпхинты чтобы не терять помощь редактора даже если пишу не либу, а просто рабочий код. Но если мне надо, то я просто ухожу в динамику, я думаю о задаче, а не о коде.

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

А если у тебя проблемы - значит ты не умеешь использовать силу языка, то есть плохо его знаешь. Что нормально, потому что писать в разных парадигмах это нужно сначала отформатировать мозг.
Везде своя парадигма. я вон под анрюшу на котлине пишу в реактив стиле, а в шарпе принципиально такое не перевариваю. Как то чужеродно.

>>3342054
хз что ты там не узнаешь в рантайме.
Аноним 16/12/24 Пнд 07:44:09 #416 №3342166 
>>3341990
Охуеть, ахахахахахах
Аноним 16/12/24 Пнд 07:56:46 #417 №3342170 
>>3342070
>магические методы
>философия
>в чем сила динамики

Вы там на своём пейфоне в очко долбитесь?
Аноним 16/12/24 Пнд 09:00:44 #418 №3342184 
>>3342070
>это лично твои проблемы
А с чего ты взял, что это проблема? Я не считаю это проблемой.
Единственная проблема, это насильный форс питона — его запихнули буквально во все приложения в качестве языка скриптинга. А потом радостно показывают статистики популярности питона. Но так было и с VBA одно время.
Аноним 16/12/24 Пнд 09:02:00 #419 №3342185 
>>3342070
>А если у тебя проблемы - значит ты не умеешь использовать силу языка, то есть плохо его знаешь. Что нормально, потому что писать в разных парадигмах это нужно сначала отформатировать мозг.
Ебать как ты себя любишь.
Аноним 16/12/24 Пнд 09:56:08 #420 №3342221 
>>3340985
За пиздёж на сосаче.
Аноним 16/12/24 Пнд 10:26:33 #421 №3342236 
>>3342184
>форс питона — его запихнули буквально во все приложения в качестве языка скриптинг
Согласен. Хуже в этом плане только ебучий yaml
Аноним 16/12/24 Пнд 12:37:47 #422 №3342363 
>>3342070
Все приложения, написанные на питоне, которые я встречал, были жутко забагованными с возмутительными ошибками.

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

Однажды, в настройках, при установке размера стола печати принтера, я ввел "220,5" вместо "220.5" — написал на автомате, с учетом региона моего шиндовс. Знаете что произошло? ВСЕ текущие параметры печати нахуй слетели, а их там сотни. А теперь вспоминаем про сохранение параметров при закрытии приложения и охуеваем от нулевой безопасности этого говна. И это философия питона — медвежья услуга, вот эта вот нетребовательность, предлагаемая на старте, чтобы в ближе к финалу придти в тупик и не знать что делать дальше.
Мне пришлось запускать новый экземпляр приложения, а этот убивать — так я сохранил параметры, а ведь мог случайно закрыть приложение и потерять сотни параметров навсегда.

2. ComfyUI - оболочка для Stable Diffusion. Этому говну так же поебать на регион, поэтому с русской раскладкой Ctrl+V вставляет данные из буфера дважды. Косяк на косяке. Например, там есть возможность связку нод преобразовать в компонент, это аналог функции в Unreal Engine или ассета в Houdini. Сохраняешь компонент (сохраняется в джейсон) и это дерьмо берет и все константы внутри компонента нахуй сбрасывает. А там прикол в том, что условная нода math содержит словарь операторов, и если я установил деление, которое НЕ является первым в списке словаря, то оно сбрасывается на суммирование, которое является первым в списке, и вся логика компонента летит в пизду. Ты смотришь джейсон, там все параметры сохранены, все так, как должно быть, но при чтении они сбрасываются до дефолтных значений. Ну подумаешь баг, с кем не бывает? Но там, сука, каждый этап сохранения компонента сделан через жопу. Например, не может адекватно установить путь до компонента. Весь комфи забагованный и работает через жопу. Все нестабильно.

Кстати, код, который я показывал, он как раз оттуда. И когда мне пишут оправдания по поводу подобного, мол, это враппер или порт, то я не верю. Я не верю потому, что приложение, написанное в такой манере, прекрасно сочетается с говеным забагованным результатом. Когда ты работаешь с приложением, созданным на питоне, ты как будто ходишь по минному полю. И цена ошибки порой очень серьезная.
Аноним 16/12/24 Пнд 15:22:37 #423 №3342524 
>>3342363
Тем не менее на питоне есть эти приложения, а на шарпе нихуя полезного не пишут
Аноним 16/12/24 Пнд 16:04:06 #424 №3342549 
>>3340396
>ответы вида "ну так в документации написано" это не аргументы
Так у тебя не техническая претензия, а почему не сделали или почему поздно. Один из главных критериев той или иной фичи экономический и востребованность. Руководство могло посчитать что на раннем этапе та или иная фича была мало кому нужна. Ну ида, какое нибудь частное решение может быть кривым в силу эксцесса исполнителя, большие дяди с зп в 5 лямов только контурно определяют решение, на низах там могут говнокодить тупые пёзды вроде широко обсуждаемой здесь в своё время ленки-хуесоски с какой-то хохляцкой галеры которая пересосав километры задротских хуев дорвалась до какой-то должности в команде по F#.

>каво шта?
Что бы сделать как ты писал нужно писать отдельный класс, поддержки со стороны языка не требуется, голый enum в С# по дизайну полный аналог сишного.
Аноним 16/12/24 Пнд 16:09:19 #425 №3342553 
python loh.mp4
Аноним 16/12/24 Пнд 18:08:10 #426 №3342625 
>>3342553
а хули там js делает? Это такое же говно как и пейфон
Аноним 16/12/24 Пнд 19:00:07 #427 №3342655 
Есть у нас на работе, как и в любой КРУПНОЙ компании, свой нахуй никому не нужный фреймворк говна. И есть в нем шедевральные строки.

IsAllowedOrigin(o=>true)

З.А.Е.Б.И.С.Ь.
Аноним 16/12/24 Пнд 19:19:36 #428 №3342676 
>>3342655
Когда в сишарп только добавили эти экспрешены, такого говна было много. Потом народ наигрался в мамкиных метапрограммистов и шиза прошла. Ты наблюдаешь копролит тех времен.
Аноним 16/12/24 Пнд 19:50:56 #429 №3342699 
>>3342184
>во все приложения в качестве языка скриптинга.
потому что он для этого подходит. он по своей природе буквально "клей" между разными вещами.

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

>>3342363
>которые я встречал, были жутко забагованными с возмутительными ошибками
так а питон тут причем? я так же насрать могу и на шарпе.
Аноним 16/12/24 Пнд 19:57:21 #430 №3342709 
>>3342549
>а почему не сделали или почему поздно
именно так. некоторые вещи просто ОЧЕВИДНЫ и делаются легко
но делаются через жопу.
взять тот же Index метод у LINQ. Пипец дохера сложный да?
Или задание регистра в методах конвертации в hex, где они таки это сделали, но оно интернал
и тому подобное

Я понимаю их оптимизацию LINQ когда появилось allow ref struct
но блин другое то делается на 2 щелчка
Аноним 16/12/24 Пнд 22:42:25 #431 №3342800 
>>3342676
Эту хуйню написали в 2020 и это не копролит тех времен, а отключение политик CORS на проекте в 0.
Аноним 16/12/24 Пнд 22:52:30 #432 №3342803 
>>3342800
Никакой инфы, что за проект и для чего там политики CORS, конечно же, не будет. Может, эти политики там нахуй не всрались.
Аноним 16/12/24 Пнд 23:56:21 #433 №3342829 
>>3342803
>Может, эти политики там нахуй не всрались.
Правильно нахуй нам проверять что запросы идут с доверенных доменов. Принимаем все от всех и без проверок.
Неважно какой у тебя проект. Если это не публичный АПИ то ты должен проверять кто прислал запросы, даже если это GET. Тем более если ты разработчик в банке.

Ты вообще писал что-то сложнее калькулятора?
Аноним 17/12/24 Втр 01:23:09 #434 №3342842 
>>3332445 (OP)
Как вы выдерживаете это скучное занятие дрочите алгоритмы и задачки с литкода? Да вы же ебанутые.
Аноним 17/12/24 Втр 02:06:13 #435 №3342848 
>>3342842
Ни разу в жизни литкод не открывал. Лутать сотыги это не мешает.
Аноним 17/12/24 Втр 09:23:46 #436 №3342925 
>>3342842
Ты кто такой по жизни? А что не скучно, быть эскортницей как твоя мамаша?
Аноним 18/12/24 Срд 01:56:51 #437 №3343587 
В Dotnet реально запустить динамически dll без ебаного reflection? AppDomain сдохли в дотнете, выходит альтернатив не осталось?

P.S Пилю свою десктоп-приложуху которая со всеми оптимизациями сборки весит 40 Мб (при оригинальных 250 Мб без всяких NativeAOT и прочих) но эти оптимизации похерят любой reflection так что ищу варик без него
Аноним 18/12/24 Срд 02:01:21 #438 №3343588 
>>3343587
AssemblyLoadContext???
Аноним 18/12/24 Срд 08:08:39 #439 №3343672 
>> Сейчас основная тенденция в дотнете - AOT. Посему AutoMappet, работающий на рефлексии, в пролёте.

Как и DI? Откат на фабрики\СервисЛокаторы получается?)
Аноним 18/12/24 Срд 08:34:44 #440 №3343691 
>>3343672
https://github.com/amis92/csharp-source-generators

там штуки три контейнера годных, на сорс-генераторах написанных.
Аноним 18/12/24 Срд 09:08:42 #441 №3343706 
У вас опять цепной клоун сбежал и обосрал весь программач.
Аноним 18/12/24 Срд 09:19:02 #442 №3343716 
>>3343672
>СервисЛокаторы
А что если я тебе скажу что можно импортировать нужные сервисы напрямую.
Не используй эту хуйню никогда.
Аноним 18/12/24 Срд 10:26:11 #443 №3343765 
>>3343672
>Как и DI
При чем тут DI и рефлексия. Максимум у тебя отвалятся некоторые методы добавления в контейнер сервисов. Вроде AddFromAssembly или по якорям.
Пикасо хренов Аноним 18/12/24 Срд 14:09:21 #444 №3343993 
AniButton.gif
AniButton.png
Вопрос к местным эстетам. В принципе разобрался с WPF, читал Петцольда, Мак-Дональда, но беда пришла откуда не ждали. Если пытаюсь с нуля сделать свою программу мечты, то внешний вид виджетов получается настолько всратым, что Айвазовский крутится в гробу. Либо во время веб-сёрфинга случайно натыкаюсь на какой-нибудь сайт с пиздатым дизайном, и пытаюсь скопировать. Тогда норм выглядит.
Есть ли готовые таблицы цветов, или эмпирические правила, чтобы красиво выглядело?
Аноним 18/12/24 Срд 14:18:30 #445 №3343997 
>>3343993
у каждого свое понятие красивости
как раз дефолтное и выглядит норм
а всякие типа https://github.com/Kinnara/ModernWpf https://wpfui.lepo.co/
выглядят бррр
Аноним 18/12/24 Срд 15:01:03 #446 №3344020 
>>3343993
Твоя ошибка в выборе впф, которому давно пора на свалку. Он кривой, тормозной, рендерить на нем что-то приличное из-за использования directx9 и airspace issue сложно. Лучше переходи на авалонию.
Ну и да, чтобы получилось красиво, нужно сначало отрисовать это красиво в фигме или хотя бы lunacy (написана на авалонии), чтобы можно было видеть как интерфейс выглядит в целом.
Аноним 18/12/24 Срд 15:05:58 #447 №3344025 
>>3344020
>Лучше переходи на авалонию
нет не лучше. единственное достоинство - кросс
а на винде выглядит ужасно
да вообще всё что на skia выглядит жопно.
что авалония, что та же проблема у котлин мультиплатформ

WPF же позволяет делать более менее.
Аноним 18/12/24 Срд 15:22:12 #448 №3344042 
>>3344020
авалония это безперспективный кал, щас из таких фреймворков уно рулит, который еще последние ФП фичи активно использует и развивает
Аноним 18/12/24 Срд 15:24:14 #449 №3344044 
>>3344025
>жопно
это уже зависит от того не поленился ли кто создать ассеты и стили, тоже касается и wpf
Аноним 18/12/24 Срд 15:27:02 #450 №3344045 
Сап аноны, нужна ваша помощь
вот есть домашка по информатике, у меня с#
нам дали задание написать прогу которая выводит таблицу с бегунами у которых есть своё имя группа и время, нужно выделить лучших и тех кто прошёл норматив
Вопрос как задать этим бегунам имена и группы?
время я реализовал через функцию рандом, через форич смог отсортировать лучших и тех кто прошёл норматив. А как задать имя обьекту я не знаю.
Код могу скинуть если нужен
Аноним 18/12/24 Срд 15:28:45 #451 №3344047 
>>3344044
нет. просто жопно
десктоп он как бы не планшет чтобы в нем делать метроподобное флюент говно, да еще без мультиокон
Аноним 18/12/24 Срд 15:48:39 #452 №3344059 
>>3344042
Вот как раз уно кал, который на винде представляет собой абстракцию над winui3, со всем из этого вытекающим.
>>3344025
> нет не лучше. единственное достоинство - кросс
У авалонии полно достоинств. Она гораздо производительнее wpf, имеет куда лучшую систему стилей, позволяет легко встраивать рендеринг directx/opengl/vulkan, активно разрабатывается и поддерживается, ну и плюс ко всему она кроссплатформенна, да.
Единственные плюсы впф это лучшая документация и наличие большого количества сторонних библиотек контролов. На этом всё.
> а на винде выглядит ужасно
Нормально выглядит.
Аноним 18/12/24 Срд 15:48:40 #453 №3344060 
831b92e79a965217c66f8727dfec214c.jpg
9181a7974826e0b1ce5248aacd70bca0.jpg
097b1480e005e6f171bd9a6e26b43a61.png
>>3343993
UI\UX дизайн это отдельная профессия

>Есть ли готовые таблицы цветов
1. Есть цветовой круг, например https://colorscheme.ru/
Берешь базовый цвет, выбираешь схему, и тебе предлагают сочетающиеся цвета. Самая базовая схема, это триада.

2. Есть правило 60-30-10 (пикрил 3). Оно определяет в каких пропорциях цвета триады использовать на твоем макете. 60% цветовой гаммы твоего окна должно быть заполнено доминирующим цветом, 30% - второстепенным цветом и 10% - акцентным цветом. Что такое доминирующий, второстепенный и акцентный, можно узнать в гугле.

3. На основе этого создается цветовая система приложения (гугли color system). Сперва рисуется UI раскладка в какой нибудь векторной программе, типа иллюстратора или фигмы, делается таблица цветов с ключами уровня Control.Secondary.Background, ты видел подобное в стилях WPF, но без точек, но не суть — можно юзать и так и сяк. Это уже стандарт, посмотри туторы по фигме, там суть та же.

Вот, к примеру описание цветовой системы шиндовс 11
https://learn.microsoft.com/en-us/windows/apps/design/signature-experiences/color#color-principles
https://learn.microsoft.com/en-us/windows/apps/design/signature-experiences/color

У телерик есть тема винды 11 для WPF, устанавливать не надо (она вроде платная), но интересно посмотреть таблицу ключей и цветов. Типичная цветовая система:
https://docs.telerik.com/devtools/wpf/styling-and-appearance/themes-suite/windows11

Но это так, вершки. Можно просто гуглить цветовые системы, какие-то дизайны UI например на https://www.behance.net/ и пиздить оттуда. Обычно там представляется выкладка всех элементов интерфейса и их взаимное сочетание, типа как на пикрил 1 и 2.

Через пару лет глаз приучится и начнешь создавать самостоятельно. Либо продолжай пиздить, ничего зазорного в этом нет, если ты не дизайнер с пятилетним стажем. Все художники и дизайнеры начинали с пиздинга, по другому никак, твои нейроны должны обучаться на базе данных, и чем эта база больше, тем лучше результат.
Аноним 18/12/24 Срд 15:50:05 #454 №3344062 
>>3344059
>Нормально выглядит.
для тебя может да. но не все любят мылошрифты.
Аноним 18/12/24 Срд 15:51:41 #455 №3344064 
>>3344062
Там нет мыла, просто отсутствует cleartype (как и во всех современных гуи фреймворках от майков начиная с uwp к слову)
Аноним 18/12/24 Срд 15:54:13 #456 №3344066 
>>3344064
>Там нет мыла
можешь назвать его гладиолусом, суть не изменится
>просто отсутствует cleartype
а вот хрен тебе. он там есть. просто результат все равно не такой какой можно получить в WPF
Аноним 18/12/24 Срд 16:48:39 #457 №3344129 
>>3343993
Просто пизди чужой дизайн и не заморачивайся. С кодом же у тебя такой проблемы нет.
Аноним 18/12/24 Срд 16:49:55 #458 №3344132 
image.png
>>3344066
Перепутал cleartype с фирменным хинтингом от майков, который пидорасит шрифты, но делает их четче, да. Но это не особо актуально на современных дисплеях. Ну и отсутствие жестокого хинтинга не делает шрифт мыльным.
Аноним 18/12/24 Срд 16:57:48 #459 №3344138 
>>3344045
Создай класс "бегун" у которого будут свойства "имя", "группа" и "время"
И создавая новый объект присваивай ему все его свойства
Аноним 18/12/24 Срд 16:59:49 #460 №3344141 
>>3343588
Так он возвращает Assembly из system.reflection если я верно понимаю что написано в https://learn.microsoft.com/ru-ru/dotnet/api/system.runtime.loader.assemblyloadcontext.loadfromstream?view=net-8.0.
Я хз как с этим без reflection работать
Аноним 18/12/24 Срд 17:09:56 #461 №3344151 
>>3344059
>Вот как раз уно кал, который на винде представляет собой абстракцию над winui3, со всем из этого вытекающим.

Во-первых это абстракция, а значит лазить внутрь в прикладном коде долбоебизм, во-вторых вин уи 3 это круто.

>имеет куда лучшую систему стилей

Ничем не лучше.

>ну и плюс ко всему она кроссплатформенна, да.

Ты понятия не имеешь о чем говоришь. Имплементации у неё разные под разные платформы, как и у уно.

>>3344047
Жопно выглядят кривые стили из коробки, впф голый идет, за денюжку сторонние производители делают конфетку. Тоже самое касается всех фреймворков, обычно только простенькие контролы вылижут для рекламы, а что-то чуть нестандартное нужно делать с нуля, проблема только в этом. В целом все основанные на разметке фреймворки более менее одинаковые, удобство только в том насколько конкретный фреймворк облегчит тебе создание законченного приложения, с этом плане уно всех обскакал и быстро развивается, авалония уже свое отжила, оттуда народ разбегается, ничего нового не выпускают.
Аноним 18/12/24 Срд 17:11:36 #462 №3344153 
>>3344132
>Но это не особо актуально на современных дисплеях
субъективное мнение так то
"с каждой версией приложения по новому монитору...каждому".
зопесал

>жестокого хинтинга не делает шрифт мыльным
он МЕНЕЕ четкий чем весь остальной шрифт в системе.
И что ты хотел сказать своим пиком хз - ты посмотри на дефолтный размер шрифта что предлагает авалония и на размер шрифта в системе.
Конечно километровый шрифт проще сделать четким.

>>3344151
>впф голый идет, за денюжку сторонние производители делают конфетку
голый да, но "конветку" - слишком спорно. слово "модерн" в модернуи не значит конфетка, а значит "модняво"
А что такое "модняво" можно посмотреть на любом показе моды.
Аноним 18/12/24 Срд 17:42:06 #463 №3344175 
>>3344151
> Во-первых это абстракция, а значит лазить внутрь в прикладном коде долбоебизм, во-вторых вин уи 3 это круто.
А лазить не надо, достаточно знать, что уно всего-лишь подмножество и без того крайне бедного функционально winui. При том, что винюай это кривая залупа, с кучей багов, недоработок, и в целом почти не развивающаяся. К тому же он медленный из-за того, что написан на плюсах, и много времени уходит на вызов плюсового кода из шарпов. Фиксится aot, но с ним не работают templatebinding (в голос с этого). Поэтому тот же винстор написан на uwp, и никто его не спешит переносит на winui. Ну и winui, как и uwp до этого имеет крайне кастрированный xaml. Мультибиндингов нет, findparent нет, onewaytosource нет, x:static нет и тд и тп.
> Ничем не лучше.
Ну это сектанство форменное. Стили в авалонии лучше во всем, куда более гибкие и удобные. В впф, чтобы банально поменять цвет одного элемента нужно переопределять весь шаблон, в авалонии достаточно выцепить нужный элемент селектором. Не говоря уже о том, что в авалонии можно комбинировать стили.
Аноним 18/12/24 Срд 18:08:36 #464 №3344215 
>>3344138
Понял, а как сделать тогда человеческие имена бегунам? Или они так и будут в виде рандомных символов?
Аноним 18/12/24 Срд 18:09:53 #465 №3344217 
>>3344215
тебе сложно имена придумать что ли
Аноним 18/12/24 Срд 18:17:23 #466 №3344227 
>>3344175
>А лазить не надо, достаточно знать
Так ты не знаешь нихуя. Уно по фичам перекрывает твою древнюю авалонию которая была актуална только во времена первых версий замарина, только она не развивается и осталась там где стартанула.
Кросс платформа по дефолту медленнная, как и любой навороченный MVVM фреймворк где по определению на каждом углу оверхед из-за паттернов и кросс платформенности, так что это пук в лужу. Главное что производительности хватает для целевых приложух (ты же не собрался игры на нем писать).

> Поэтому тот же винстор написан на uwp
Это ты сочиняешь, просто сто лет назад написали во времена вин 8, так и остался пока, нет мотивации на переписывание.

На С++ наоборот быстрее работает чем на управляемом коде.

>но всего-лишь подмножество и без того крайне бедного функционально winui

Не пизди, всё там есть. Ты понятия не имеешь что представляет собой уно, или по какой-то древней версии судишь. Там если что мощный сдвиг в функциональщину, даже основной паттерн другой, не MVVM а MVUX.
Аноним 18/12/24 Срд 18:20:15 #467 №3344230 
>>3344227
я мимокрок

>Уно по фичам
да ну. серьезно? можно создать свой кастомный контрол без пердолинга?

>На С++ наоборот быстрее работает чем на управляемом коде.
но тут ты ошибаешься winui медленнее чем тот же впф из-за вызовов к сишному коду.
Аноним 18/12/24 Срд 18:26:42 #468 №3344236 
>>3344217
Задать вручную понял
Аноним 18/12/24 Срд 18:28:30 #469 №3344238 
>>3344236
ну можешь для понта написать генератор
задать ему 3 списка - имена, фамилии, отчества аля "кто ты сегодня" и собирать комбинации убирая дубликаты.
Аноним 18/12/24 Срд 18:49:30 #470 №3344264 
>>3344227
> Так ты не знаешь нихуя. Уно по фичам перекрывает твою древнюю авалонию которая была актуална только во времена первых версий замарина, только она не развивается и осталась там где стартанула.
Какие фичи есть у уно, которых нет в авалонии? Ну, кроме x:Bind, который годнота, не отрицаю (хотя порой криво работает, к тому же плохо совмещается с чистым mvvm). Ну а говоря, что авалония не развивается, ты лишь доказываешь, что ничего о ней не знаешь. Если взять ту же 11 версию, то там обновили рендеринг, добавили Composition Api со всем функционалом вроде expressionanimation, какой был в UWP.
> Кросс платформа по дефолту медленнная, как и любой навороченный MVVM фреймворк где по определению на каждом углу оверхед из-за паттернов и кросс платформенности, так что это пук в лужу.
Ни на чем не основанное утверждение. Производительность кросс платформы зависит от реализации для каждой конкретной платформы, не более. Авалония в частности быстрее wpf, winui, а следовательно и uno. К чем твой пук о mvvm вообще не ясно, 99% функционала этих фреймворков сводится к реализации inpc, все остальное, если сравнивать со временем рендеринга, вообще почти ничего не потребляет.
> Это ты сочиняешь, просто сто лет назад написали во времена вин 8, так и остался пока, нет мотивации на переписывание.
Во времена win 8 uwp не было так то. А не переписывают именно потому, что winui кривой и тормозной.
> На С++ наоборот быстрее работает чем на управляемом коде.
Анон, я уже заметил, что ты туповат, но хоть бы подумал о том, что вызов неуправляемого кода из управляемого не бесплатен.
> Не пизди, всё там есть. Ты понятия не имеешь что представляет собой уно, или по какой-то древней версии судишь. Там если что мощный сдвиг в функциональщину, даже основной паттерн другой, не MVVM а MVUX.
При чем функциональщина и паттерны, к функциональности фреймворка они не имеют отношения. Не говоря о том, что mvux какая-то очередная игрушка, mvvm как рулил так и будет рулить.
Аноним 18/12/24 Срд 18:57:26 #471 №3344272 
>>3344264
хватит вам спорить. все уи фреймворки в шарпе суть говно
увы.
Аноним 18/12/24 Срд 19:04:07 #472 №3344282 
>>3344272
Кроме авалонии, авалония годнота. А вообще десктоп мёртв, не будь я ленивым хуйлом уже давно перекатился бы в фулстэка, грузил джейсоны и дрочил реакт. А вместо этого дрочу авалонию и opengl за копейки по меркам даже самых обоссаных джунов на asp.net
Аноним 18/12/24 Срд 19:07:44 #473 №3344291 
>>3344282
язык, основанный на хамл, не может быть годнотой по определению
километровые портянки xml, куча файлов, исключительная декларативность

бррр, дрянь какая.
Аноним 18/12/24 Срд 19:13:57 #474 №3344306 
>>3344291
> язык, основанный на хамл, не может быть годнотой по определению
Ну а какие альтернативы? Так то да, от многословности горит жопа, когда у тебя условно такая конструкция:
xmlns:libNameControls=””
<libNameControl:AnotherUselessControl>
<libNameControl:AnotherUselessControl.CustomizeableProperty>
</libNameControl:AnotherUselessControl.CustomizeableProperty>
</libNameControl:AnotherUselessControl>
Но что поделать
Аноним 18/12/24 Срд 19:18:12 #475 №3344313 
>>3344306
на шарпе никаких. на других языках MVU подходы, которые в шарпе никто нормально не сделает никогда.
тот же Comet (https://github.com/dotnet/Comet)...ну да, он приносит типа MVU, но по факту "ну просто вместо хмл описывает кодом...но не более, чем мог бы описать тот же хмл...просто кодом" Описание кодом лучше чем хмл в плане компиляции, но это все равно так уныло - ну и это чисто концепт.
Аноним 19/12/24 Чтв 04:33:44 #476 №3344498 
Есть большой метод с кучей вычислений, который принимает 28 аргументов. Я вот думаю, стоит ли создать несколько структур, которые сократят количество аргументов до 5-6, или получится слишком большой оверхед? Метод вызывается очень часто.
Аноним 19/12/24 Чтв 05:13:36 #477 №3344504 
>>3344498
Зачем?
Аноним 19/12/24 Чтв 06:29:00 #478 №3344515 
>>3344498
У структур почти нету оверхеда. А почему у тебя у метода 28 аргументов?
Аноним 19/12/24 Чтв 11:18:21 #479 №3344697 
>>3343997

Ну ладно. Буду дальше мучить жопу. Спасибо
Аноним 19/12/24 Чтв 11:36:39 #480 №3344740 
>>3344060

Щикарно. Два мешка нихуя этому господину.
Аноним 19/12/24 Чтв 20:13:06 #481 №3345199 
>>3344059

> У авалонии полно достоинств
Хотел было спросить наехать за нумерацию строк в гриде, но они всё-таки смогли:
https://github.com/AvaloniaUI/Avalonia/commit/7413434e8791b69ef71cd3605de07683c7810a9c
Аноним 20/12/24 Птн 01:28:31 #482 №3345310 
изображение.png
В Dotnet реально запустить динамически dll без reflection? AppDomain сдохли в дотнете, выходит альтернатив не осталось? AssemblyLoadContext возвращает Assembly с которым возможна работа только с System.Reflection. Неужели нет альтернатив? ( publish trimming и ебучий reflection плохо совмещаются, не хочу гигабинари плодить)
Аноним 20/12/24 Птн 02:54:56 #483 №3345323 
>>3345310
Два раза повторять не надо! Два раза повторять не надо!
Аноним 20/12/24 Птн 10:23:12 #484 №3345517 
Мужики, что делать?
Написал на net 8 gRPC клиент на http узел без шифрования, всё работает.
Тоже самое только в проекте на framework 4.8 при подключении опускает хттп 2 до 1.1: Bad gRPC response. Response protocol downgraded to HTTP/1.1
Как это исправить? Нагуглил только совет установить флажки:
AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2Support", true);
AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);
но не помогло.
Аноним 20/12/24 Птн 10:23:51 #485 №3345519 
>>3345310
А как ты себе имаджинируешь это без рефлексии? Скажи спасибо что вообще чисто технически возможно подключить dll в рантайме.
Аноним 20/12/24 Птн 16:29:35 #486 №3345923 
Программирую весь день на сишарпе, всё охуенно
Аноним 20/12/24 Птн 16:34:13 #487 №3345925 
carbon (2).png
Проектирую архитектуру библиотеки, которая поддерживает несколько реализаций. Планирую всю основную архитектуру построить на интерфейсах и добавить метод QueryObject, и в каждой конкретной реализации при помощи этого метода получать класс этой реализации. Соответственно если пользователь попытается смешать две реализации, буду кидать исключение. Какие подводные?
Аноним 20/12/24 Птн 16:35:00 #488 №3345926 
>>3343993
ЁБ ТВОЮ МАААААААААААААТЬЬ!!!!!!!!!!!!!!!! НАУЧИТЕСЬ УЖЕ БЛЯДЬ СУКА В КОИ ТО ВЕКИ БЛЯДЬ ТРЮКАМ РАСШИРЕНИЯ ЦВЕТОВОГО ПРОСТРАНСТВА, ЭТО ЖЕ ПИЗДЕЦ, КАК ЖЕ Я НЕНАВИЖУ БЛЯДЬ ЭТИ БИТОВЫЕ ПОЛОСКИ БЛЯДЬ!!!!!
Аноним 20/12/24 Птн 16:50:07 #489 №3345939 
>>3345925

Приведение типа это красный флаг в любом коде. Я бы выкинул нахуй твой говнокод и послал тебя на пейфоне программировать.

Ты пишешь какое-то невнятное абстрактное говно. Какую проблему решает твоя "библиотека"?

Почему ты просто не взял автомаппер?
Аноним 20/12/24 Птн 17:15:18 #490 №3345964 
>>3345517
bump
Аноним 20/12/24 Птн 17:20:44 #491 №3345974 
>>3345964
Да хуй знает, деталей мало. давай больше деталей, может быть в процессе сам найдёшь, в чём проблема
Аноним 20/12/24 Птн 19:37:09 #492 №3346146 
>>3345310
Х.з., ModuleInitializer? (сам никогда не пробовал)
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-9.0/module-initializers
Аноним 21/12/24 Суб 01:23:13 #493 №3346346 
>>3342553
Всю историю питон был на дне, в нулевые они стебались над классами пхп 4 когда во 2 питоне был вообще адок во всем. Пхп 5 все быстро пофиксиле и ООП потенциала и сахара там стало больше чем во всех языках вместе взятых (даже чем в шарпах, ну ибо это интерпретируемый язык). Но питухи продолжали стебаться сидя на своей 2 версии со всем говном. Это буквально было как слон и моська в те времена.

Потом эта говнина раскрутилась с новой техой (ИИ), хотя веб до сих пор в отсосе, но они просто на каком-то уже генетическом уровне продолжают противопоставлять себя над пхп.
Аноним 21/12/24 Суб 04:00:53 #494 №3346366 
>>3346346
кек от фантазий анона ))
пхп взлетел из за того что низкий порог входа и каждый школьник мог написать свой супер пупер скрипт, кинуть на шаред хостинг и оно работает (про то "как работает" я промолчу))))
и ТОЛЬКО ТАМ была сфера применения похапэ (да там и осталась)

именно эта уникальная способность "кинул скриптик в папочку и оно заработало" и сыграло на руку пхп
но это не значит что питон был где то на дне )))

ну а "ооп потанцевал" это вообще лол. банальная калька с жавы - да похапэ этого и не скрывает.
Аноним 21/12/24 Суб 13:23:15 #495 №3346477 
>>3346366
Ну одно дело, тебе на ютубе рассказали что было когда ты родился, а другое дело, когда я варился в этом в те года. До машинного обучения питон был экзотической помойкой с проблемой перехода между 2/3 версией и ужасной производительностью.

Самое смешное когда они на конференциях упоминали веб языки, цинично не упоминали пхп, хотя тот на то время занимал 90% рынка.

Причем тут выстрелил не выстрелил, пхп в свой рассвет конкурировал с перлом вообще
Аноним 21/12/24 Суб 16:03:10 #496 №3346584 
Почему в интернетах так мало артов с тянками-шарпистами? Наводит на определённые мысли.
Аноним 21/12/24 Суб 18:04:05 #497 №3346654 
>>3346477
>До машинного обучения питон был экзотической помойкой
когда по твоему выстрелило это ML что ты такой вывод делаешь?
может ты про 2007 год когда по версии тиобе (да, да я знаю это попугайный индекс, но других нет) он стал лидером рейтинга (экзотическая помойка занимает первое место????)

>с проблемой перехода между 2/3 версией
....а питон3 появился только в 2008?

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

и да - с пхп я познакомился еще во времена пхп 3, так что прекрасно знаю как он рос по фичам и почему выстрелил. Слава богу, удалось свалить с этого "чудесного" языка на чудесный питон (3 конечно). Но не до конца еще (((
Аноним 21/12/24 Суб 21:24:18 #498 №3346856 
image.png
>>3346584
Потому что с шарпом работают нормальные гетеросексуальные мужики и бабы нам тут не нужны.
Аноним 21/12/24 Суб 23:36:49 #499 №3346894 
Сап, аноны

Нужен совет

Брать ли macbook для .net бэкенда?

Сейчас на проекте core, но в будущем могут на framework перекинуть

В основном работаю на своем пк, но иногда нужно по rdp заходить

Нормально ли работает rdp macos - windows server?

М какие подводные?
Аноним 21/12/24 Суб 23:47:48 #500 №3346896 
>>3346894
Не нужен тебе макбук.
Аноним 21/12/24 Суб 23:59:06 #501 №3346902 
>>3346896
А что брать?

Хочется чтоб работал без лагов и экран хороший
Аноним 22/12/24 Вск 02:26:50 #502 №3346937 
>>3346902
калькулятор Электроника МК-61
и не говори что говно.
Аноним 22/12/24 Вск 09:59:29 #503 №3347027 
>>3346894
>Брать ли macbook
Очевидно нет. Зачем тебе это говнобук? Не надо только про 10/15/120ч мобильности.
1) он максимум часов 6 выдержит райдер
2) ты сам себе не ври ты работаешь из дома рядом с розеткой.
Аноним 22/12/24 Вск 12:33:58 #504 №3347150 
>>3346894

Упаси госпаде. Для разработки бека нужно минимум 32 гигабайта оперативки.

Цена на такой макбук будет 350 000+.

Альтернатива не от эппл будет стоить около 200 000.

Память на макбуках всегда распаянная и объединённая (минус 4 гигабайта на полупрозрачные окошки).

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

Докер на маке работает как говно.
Аноним 22/12/24 Вск 12:36:42 #505 №3347153 
>>3346902
> Хочется чтоб работал без лагов и экран хороший

Я весной купил huawei matebook x pro. Весит меньше килограмма, 32 гига памяти. Кайфую
Аноним 22/12/24 Вск 14:57:07 #506 №3347238 
>>3346902
> Хочется чтоб работал без лагов и экран хороший
> макбук

ты ёбнутый?
Аноним 22/12/24 Вск 15:23:31 #507 №3347256 
>>3346894
>Брать ли macbook для .net бэкенда?
Если райдером пользуешься, тогда можешь попробовать.

>>3346894
>Сейчас на проекте core, но в будущем могут на framework перекинуть
Тогда тебе не о маке надо думать, а как съебать с этой работы побыстрее.

>>3346894
>Нормально ли работает rdp macos - windows server?
Это зависит не от платформы как таковой (т.к. стандартное подключение везде работает нормально), а от анальных заслонов которые работодатель накрутит поверх твоей удаленки. У тебя там может какой-нибудь хитровыебанная модификация цитрикса оказаться или еще что-нибудь и ты соснешь. Поэтому выясняй заранее у самого работодателя можно ли к нему подключаться с мака.

>>3346894
>М какие подводные?
Ну только что геем станешь с маком.
ПЕРЕКАТ  Аноним 22/12/24 Вск 18:03:34 #508 №3347353 
ПЕРЕКАТ
https://2ch.hk/pr/res/3347352.html
https://2ch.hk/pr/res/3347352.html
https://2ch.hk/pr/res/3347352.html
Аноним 23/12/24 Пнд 10:10:28 #509 №3347768 
>>3346894
На огрызке работают только петушары.
Аноним 24/12/24 Втр 14:36:02 #510 №3348973 
>>3345926

Не, я только анус умею расширять. Что это за трюки такие?
Аноним 31/12/24 Втр 11:29:32 #511 №3353326 
>>3341655
Что за учебник?
comments powered by Disqus

Отзывы и предложения