Программирование

Ответить в тред Ответить в тред
Check this out!
C#/Сишарп/.NET Тред #34 /csharp/ Аноним 25/12/21 Суб 06:32:56 22473571
16345765468970.png 101Кб, 941x1025
941x1025
Прошлый тред: >>2205513 (OP)

Литература вторым постом

1. Ресурсы:
https://dotnet.microsoft.com/learn
https://docs.microsoft.com/ru-ru/dotnet/csharp/
https://metanit.com/

2. Онлайн-компиляторы:
https://ideone.com/
https://dotnetfiddle.net/

3. WinForms или WPF?
Зависит от задачи. Для небольших проектов, скорее всего, будет достаточно винформочек. В случае, если разрабатываемое приложение достаточно серьёзное, то возможно его стоит писать с использованием WPF. WPF очень хорошо работает с паттерном MVVM ( https://ru.wikipedia.org/wiki/Model-View-ViewModel ), и позволяет пилить очень кастомизированные интерфейсы с помощью XAML, что в случае с WinForms делать намного сложнее.

4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?
Неправда. C# активно развивается, недавно вышел .NET 5 и С# 9.0. Дотнет стал полностью опенсорсным и кроссплатформенным. В том же энтерпрайзе он очень даже востребован.

5. Какую IDE выбрать?
Для Windows самым очевидным вариантом будет Visual Studio ( https://visualstudio.microsoft.com/ru/downloads/ ). Бесплатной Community-версии более, чем достаточно для большинства задач. Также есть версия для macOS.
Кроссплатформенный полуредактор/полуIDE VS Code ( https://code.visualstudio.com/ ).
Кроссплатформенный IDE Rider ( https://www.jetbrains.com/rider/ ).
Также существуют C#-плагины для Atom и Sublime Text, но функциональность там достаточно сильно урезана.

6. С# для мобильной разработки
https://dotnet.microsoft.com/apps/xamarin

Новые возможности C# 9.0: https://devblogs.microsoft.com/dotnet/c-9-0-on-the-record/

Текст шапки: https://pastebin.com/pbK8CGqw
Аноним 25/12/21 Суб 06:34:57 22473582
1640403295795.png 16Кб, 463x430
463x430
1640403295796.jpg 84Кб, 677x787
677x787
7. Что почитать?
The C# Player's Guide, третье издание (RB Whitaker) — отличная книга для ньюфагов, всё расписывается довольно подробно, очень много примеров кода.
C# 9 and .NET 5 – Modern Cross-Platform Development (Mark Price) — подойдёт для ознакомления с платформой. Затрагивает все технологии, имеющиеся в .NET (веб, мобильная разработка, машинное обучение), ни во что не углубляясь.
C# 8.0 in a Nutshell (Joseph Albahari и Eric Johannsen) — огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином.
C# 8.0 Pocket Reference (Joseph Albahari и Ben Albahari) — просто выжимка из книги сверху, можно всегда держать рукой.
Pro C# 8 with .NET Core 3 (Andrew Troelsen) — 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.

8. Более хардкорный материал
CLR via C# (Jeffrey Richter) — это классика, это знать надо.
C# in Depth (Jon Skeet) — написана в виде истории версий C#, начиная с C#1.0. Описываются возможности, которые были добавлены в определенной версии и далее достаточно хардкорно и подробно эти возможности расписываются.
Writing High Performance .NET Code (Ben Watson) — отличная книга. Фокусируется на методах оптимизации приложений, профилировании. Крутейшая и достаточно детальная глава по GC. Рассматриваются достаточно известные проблемы вроде "for vs foreach", "класс vs структура", кастинг, боксинг, перфоманс регулярок, коллекций, исключений. Короче всё, что нужно, чтобы вам перезвонили.

9. Литература по WPF
— Pro WPF 4.5 in C# (Matthew MacDonald)
— Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

10. Литература по ASP.NET
— Pro ASP.NET Core 3 (Adam Freeman)
— Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)

11. Литература по асинхронности и параллелизму
— Concurrency in C# Cookbook (Stephen Cleary) — книга, написанная в формате "проблема - решение". Кроме базовых вещей, вроде асинков и параллелизма рассматриваются TPL Dataflows, Rx (реактивные расширения), тестирование всего этого асинхронного добра, ну и работа этого всего на более низких уровнях абстракции.
— Multithreading with C# Cookbook (Eugene Agafonov) — в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная.
— Pro Asynchronous Programming with .NET (Richard Blewett, Andrew Clymer) — опять же, интересного немного, но неплохие главы про асинхронность + UI и анализ дампов памяти в windbg.

12. Литература по мобильной разработке
— Creating Mobile Apps with Xamarin.Forms (Charles Petzold)
— Xamarin.Forms Projects (Johan Karlsson, Daniel Hindrikes)
— Mastering Xamarin.Forms (Ed Snider)

13. Литература по машинному обучению
— Introduction to Neural Networks for C# (Jeff Heaton) — изучение нейронных сетей с примерами кода на шарпе. Под конец пишем программу для распознавания символов и нейроботов.
— Machine Learning Using C# Succinctly (James D. McCaffrey) — довольная коротенькая книга на тему машинного обучения с примерами кода на C#. Ничего особого: k-средние, классификация, наивный байес, но с кодом, который всегда можно поразбирать, если что неясно.

14. Разработка игр
Unity-тред в /gd/

15. Но я не знаю английский, как я буду это все читать?
На некоторые из перечисленных книг есть переводы, которые можно найти на том же рутрекере, однако зачастую эти переводы неактуальны и/или содержат неточности. Кроме того, переводы обычно пилятся только для нескольких самых популярных книг, более-менее серьёзный материал не переводят. Всегда можно сесть со словарем и понемногу читать, переводя непонятные фрагменты. Это очень полезно, так как в любом случае в программировании без знания английского делать нечего. Если очень хочется, то гуглить по запросам: "C# 7.0. Справочник. Полное описание языка", "C# для профессионалов. Тонкости программирования", "Программирование на платформе Microsoft .NET Framework 4.5 на языке C#".
Спиженные книги: https://mega.nz/folder/zdoCBLqY#Q6eS_76VECpQZmPmw9vLew

16. Что еще нужно знать, чтобы взяли работать за еду?
— Базы данных — подойдет любая книга по MSSQL/MySQL/PostgreSQL. DDL, DML. Джойны, индексы, нормализация. В контексте шарпа еще ORM: Entity Framework, Dapper.
— Системы контроля версий — обычно гита достаточно: add/commit/push, merge, rebase, checkout, remote, diff, разрешение конфликтов.
— GitHub — issues, пулл-реквесты, теги, релизы, Actions.
— Алгоритмы — сортировка, поиск, оценка сложности алгоритмов, рекурсия, алгоритмы на строках.
— Структуры данных — связанные списки, деревья (бинарные, красно-чёрные, b-деревья), хеш-таблицы, графы.
— Если идти в веб — HTML, CSS, JavaScript, веб-сокеты, REST, JS-фреймворки (Angular, React, Vue).
— Паттерны проектирования, стиль кода, архитектура приложения, внедрение зависимостей, MVVM (если хочется в WPF), SOLID.

17. Я не умею читать, что посмотреть?
— C# Fundamentals: Development for Absolute Beginners — https://goo.gl/meyyxO
— Набор курсов по C# от O'Reilly Media (28 часов, на английском) — http://rutracker.org/forum/viewtopic.php?t=5082978
— Канал по C# IAmTimCorey (на английском) — https://www.youtube.com/user/IAmTimCorey

Аноним 25/12/21 Суб 07:05:51 22473613
никому не нужный тред ненужного языка
Аноним 25/12/21 Суб 08:03:15 22473634
>>2247358
О, нихуя, получается, можно изменять интернированные строки
Аноним 25/12/21 Суб 08:21:19 22473645
Aespacsharp.jpg 1366Кб, 2000x2664
2000x2664
zGxD3c2zCXs.jpg 460Кб, 1280x854
1280x854
Надо было девочек в шапку!
Аноним 25/12/21 Суб 14:14:03 22475126
jatnik.png 169Кб, 421x468
421x468
>>2247361
>пук жабакала
C# летит туземун в трендах у разработчиков, а в этом году уже появились первые стартапы на нем.
Аноним 25/12/21 Суб 14:19:01 22475177
Поясните вот за шо.
Правильно ли я понимаю.
Вот есть петухон, стильный модный молодежный. Пилят к примеру проект на Django. Ясное дело что он будет медленнее чем жава или шарп. Но тогда почему выбирают именно петухон?
Разработчик дешевле да и планку оперативы легче вставить чем нанимать жависта или шарписта?
Аноним 25/12/21 Суб 14:23:29 22475208
>>2247517
>Разработчик дешевле да и планку оперативы легче вставить чем нанимать жависта или шарписта?
Да.
Аноним 25/12/21 Суб 14:36:33 22475309
>>2247517
>Django
В вебе, во-первых, нет жестких требований по производительности: юзер не заметит разницу отрисовалась его страничка за 300 или за 400 ms. Во-вторых, все оптимизации производительности работы кода приложения почти незаметны по сравнению с временем затрачиваемым на запросы в базу, кеш, другие сервисы. Ты скорее упрешься в Ethernet, чем в скорость работы кода.
Аноним 25/12/21 Суб 14:47:05 224753810
Здарова, реквестирую способы автоматического обхода капчи необязательно даже на решетке В принципе знаю тукапчу, но может знаете еще чего получше и подешевле
Аноним 25/12/21 Суб 14:47:54 224753911
>>2247538
сри хандред бакс и решение у тебя в кармане
Аноним 25/12/21 Суб 14:56:32 224754212
>>2247444 →
Думаю это от него скорее и ожидали. Я с unsafe, байтиками и игрищами с указателями я, скорее всего, пошел не в ту сторону.
А тут - нет вероятности перезатереть что-то полезное и вообще, выглядит оно не так страшно и вообще, более ООПшно.

Хотя, задание для стажера, какое-то странное на самом деле.
Аноним 25/12/21 Суб 14:59:18 224754613
>>2247517
>Но тогда почему выбирают именно петухон?
Потому что изначально пайтон создавался с прицелом на академеков и близких к ним. Чтобы пр ивозникновении какой-нибудь обсчитываемой концепции они могли по быстрому накидать прототип и проверить ее, не будучи задротами от мира IT. Ну а потом уже если концепция подтвердится, то либо так и оставить, либо переписать на чем-нибудь побыстрее. Вследствие этого, в пайтоне очень хорошо срабатывает метод "хуяк-хуяк и в продакшен". Особенно когда нужно по быстрому сваять проект и показать инвесторам, а вот когда они подкинут бабла, тогда уже можно нанять бородача, который узкие места оптимизирует на сях, либо на джависта/шарписта который все перепишет. Ну или оставить все как есть, потому что похуй, бабки получены, проект хоть как-то работает и ладно.
Аноним 25/12/21 Суб 15:14:24 224755914
>>2247357 (OP)
>недавно вышел .NET 5 и С# 9.0.
Разве не .NET 6 и С# 10.0.?
Аноним 25/12/21 Суб 15:14:27 224756015
>>2247539
Подробнее? Нужно за три сотки купить какой-нибудь курс по нейросеткам и запилить все самому?
Аноним 25/12/21 Суб 15:23:36 224756616
Аноним 25/12/21 Суб 15:33:45 224757617
>>2247560
>нейросеткам и запилить все самому?
А потом потратить тыши даларов на обучение.
Уже все придумано и обучено.
zennolab.com/ru/products/capmonster/
xevil.net/ru/
Аноним 25/12/21 Суб 15:33:48 224757718
>>2247364
Два чаю. Девочек нужно было.
Аноним 25/12/21 Суб 15:46:04 224759819
>>2247512
мантры решеткобляди)
Аноним 25/12/21 Суб 15:50:35 224760920
image.png 53Кб, 300x300
300x300
>>2247512
>в этом году уже появились первые стартапы на нем

Спустя 21 год после релиза?
Аноним 25/12/21 Суб 16:02:02 224762321
>>2247609
По факту спустя год после релиза. До NET5 были проблемы с подключением бд не от майков и скоростью на линукс серверах. Это еще учитывая, что первая открытая версия дотнета вышла в 2016.
Аноним 25/12/21 Суб 16:05:37 224763022
Как внедрять зависимости?
Аноним 25/12/21 Суб 16:09:46 224764123
>>2247623
>предыдущие 20 лет релизов, оказывается, больше не релизы

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

Аноним 25/12/21 Суб 16:10:25 224764324
>>2247630
Нормального DI в шарпе до сих пор нет, увы. Если так сильно нужен DI, то лучше смотри в сторону жабы и спринга.
Аноним 25/12/21 Суб 16:10:32 224764425
Как пишут код в серьёзных фирмах? Наверняка пишут веб-приложение для развертывания в линуксе, но ведь в самом линуксе нет вижлы.
Аноним 25/12/21 Суб 16:14:47 224765026
>>2247644
Серьезные фирмы с шарпом до сих пор IIS используют, который только под винду идет. Ну и вообще во многих местах еще очень много всего завязано на инфраструктуре майкрософта.

А так, можно райдер использовать, имхо в разы лучше чем VS.
Аноним 25/12/21 Суб 16:30:34 224766427
>>2247644
неткору похую на какой оси работать. Я девелопил и дебажил свое говно под виндой, и деплоил в прод в никсовый кокер контейнер
Аноним 25/12/21 Суб 16:38:49 224767228
Смотрите. У меня на заводе в одном приложении была такого рода фигня: канал связи+протокол. Ну, т.е. канал связи - это какой-нибудь TCP, Com-порт, USB, PLC и т.д. Протокол - какие байтики слать.
Так вот. Это было десктопное приложение. Сейчас - переносится в облака. Менеджеры - хотят чтобы вот эта вот фигня была и в облаке. Я - не совсем понимаю, можно ли это вообще реализовать в контексте облаков так как было раньеше. Да, TCP и протоколы - без проблем. Но в видении архитектора нашего - должны и USB, и COM и все остальное поддерживаться. Ну, он видит это как ряд микросервисов каналов связи. И тут возникает вопрос: А как эти микросервисы будут про протоколы узнавать? Опять же, в видении нашего архитектора - должен быть отдельный микросервис для протоколов и, примерно следующее взаимодействие: клиент шлет запрос микросервису канала связи, указав протокол, уже микросервис - обращается к сервису протоколов - и получает нужный протокол, затем начинается взаимодействие. Только вот как, блджад это-то реализовывать? Как мы можем-то по HTTP - передать протокол взаимодействия, не костыляя протокол для сериализации этого протокола? Я - не понимаю. Тем более, что разные протоколы дают возможность разного взаимодействия: тут - мы можем только посмотреть аптайм устройства и серийный номер, а там, если устройство протокол поддерживает - по хардкору - включать-выключать датчики, читать логи работы, замыкать-размыкать релешечки.
Я вижу возможным решением только: у нас есть DLL с протоколами, все каналы связи - эту DLL получают, затем достают протокол оттудова, генерируют клиенту JSON с ViewModel того что можно по протоколу делать, ну а дальше - работаем. А вот этот вот микросервис протоколов - выглядит, по моему, странно. Но может быть вы шарите лучше и поясните мне, как оно может работать.
Аноним 25/12/21 Суб 16:54:07 224769829
>>2247630
Через конструкторы.
Аноним 25/12/21 Суб 16:54:25 224769930
Ahu--xGKIA.jpg 149Кб, 1120x356
1120x356
Эту херню вообще возможно сделать? Фактор сортировки это типа якорь для быстрой сортировки? Просто подскажите куда двигаться. Ещё и как отсортировать не полностью, чтобы итератор выдавал отсортированное начало, и не тратил время на конец
Аноним 25/12/21 Суб 16:56:10 224770131
>>2247650
>райдер
Он платный. Ещё летом можно было продлевать лицензию через удаление пары файлов в конфиге, а теперь они прикрутили авторизацию на их сайте.
Аноним 25/12/21 Суб 17:05:29 224771232
>>2247701
Так и студия платная.
Аноним 25/12/21 Суб 17:10:19 224771533
>>2247712
И что делать? Писать в блокноте и компилировать в командной строке?
Аноним 25/12/21 Суб 17:13:49 224771634
Аноним 25/12/21 Суб 17:18:31 224772135
>>2247664
С таким подходом бывают очень неприятные баги, когда в винде - все отлично работает, но разворачиваешь на сервере - хуяк, все по пизде пошло и ошибки всплывают там, где ты их вообще не ожидаешь.
Аноним 25/12/21 Суб 17:30:10 224773136
>>2247664
Как ты запускал ехе-файлы в линуксе?
Аноним 25/12/21 Суб 17:32:42 224773337
image.png 72Кб, 698x498
698x498
Аноним 25/12/21 Суб 17:35:03 224773438
Аноним 25/12/21 Суб 18:05:00 224774639
>>2247733
Ни одного дельного аргумента кроме отсутствия VS для прыщей
Аноним 25/12/21 Суб 18:10:41 224774840
Аноним 25/12/21 Суб 18:11:42 224774941
Аноним 25/12/21 Суб 18:27:12 224776642
А кто-то еще спрашивал, почему так долго не перекатывали предыдущий тред.
Аноним 25/12/21 Суб 18:39:33 224778843
.png 46Кб, 643x655
643x655
>>2247699
Я бы вот так сделал. В душе не ебу что хотят эти вот составители задания. По времени - не оптимально(если элемент не граничный - мы должны пройтись до того, который больше него и вставить). По памяти - не оптимально(создаем буффер для сортировки элементов). Зато просто и быстро реализуется.
Аноним 25/12/21 Суб 18:48:51 224780144
>>2247733
>в чем он не прав?
Перетолстил. Сработает разве что для тех кто программирование только в мемах видел.
Аноним 25/12/21 Суб 20:07:11 224786945
После двух лет чистого бэка либо десктопа на .NET, тупо не могу делать ничего на фронте. Начинает тошнить от npm, css/html, обрубков JS/TS, если тут кто сейм? Я ведь вообще начинал фулл-стеком на разоре в энтерпрайз конторе, неужели фронт для меня таки закрыт и пути туда без боли нет? А ведь на .NET много модных молодежных вакансии - это таки фулл-стеки.
Аноним 25/12/21 Суб 20:50:12 224790446
Есть аспнет кор сайтец, на нем есть авторизация на основе политик (+Idenity +Cookie). Я могу как-то в политике реплейснуть юзера (ClaimsPrincipal)? Мне иногда надо удостоверится, что у пользователя не отозваны/выданы права, для чего надо слазить в базу. Я знаю, что можно в событиях кук, но тогда будет лезть в базу при каждом запросе, мне такое не надо. Если я просто рефрешу SignIn, то разумеется, это работает только на следующий запрос. Есть способы это разрулить?
Аноним 25/12/21 Суб 20:56:20 224791147
>>2247869
Ну, тошнить-то тошнит. Но я стараюсь и в этом говне находить плюсы. Верстку правда я делаю на похуй, но кроме сеошников и мамкиных фронтов - никто не жалуется, потому что со стороны клиента-то оно одинаково выглядит, а эта вся семантическая хуйня - ну, идите нахуй, я бекендер, а мы вообще-то делаем тырпрайз хуйню, которая будет внутри корпаративной сети работать, какая еще нахуй сео-оптимизация, болезненные?
Аноним 25/12/21 Суб 22:44:34 224798948
>>2247749
Правда глаза колет..
Аноним 26/12/21 Вск 00:20:40 224806349
>>2247869
удваиваю, вот сейчас ищу работку без этой поебени бо с прошлой уже желчь идёт горлом
Аноним 26/12/21 Вск 01:00:54 224807650
>>2247788
Какое-то ебанутое задание. Спасибо, хоть за такое решение, а то отправил бы ничего
Аноним 26/12/21 Вск 02:00:10 224810551
>>2247672
>не костыляя протокол для сериализации этого протокола
А это разве не проще?
Аноним 26/12/21 Вск 02:06:23 224810852
Как там дела с ботами обстоят, стоит ли писать, или лучше на питон посмотреть?
Аноним 26/12/21 Вск 08:51:07 224817253
>>2248108
С какими ботами? На чем умеешь на том и пиши.
Аноним 26/12/21 Вск 11:08:29 224822554
>>2247699
Что это и как тебя угораздило?
Аноним 26/12/21 Вск 12:07:32 224825855
На макоси сисярп с неткором нормально работает? Какие камни в этом?
Аноним 26/12/21 Вск 13:02:49 224828556
>>2248258
Половина обучающих видео по . Net-у в ютубе на маках записано. Есть знакомые .net помидоры которые только на маках работают. Я не спрашивал, но сужя по всему они довольнфв. Даже сами майки на последних презентациях с собой эпловскую технику таскают. Так что думаю работает норм.
Аноним 26/12/21 Вск 13:07:28 224829757
>>2248285
>Какие камни в этом?
Самодовольство будет зашкаливать и свои пердежные газы нюхать начнешь.
Аноним 26/12/21 Вск 18:27:51 224860658
Везде пишут что когда начинает работу сборщик мусора работа приложения полностью приостанавливается. Но как это возможно, если этого не видно? Приложение не начинает резко не работать несколько секунд
Аноним 26/12/21 Вск 19:32:29 224869959
>>2248606
Потому что сборка мусора обычно не занимает несколько секунд.
Но если тебе не верится в то что в доках написано вот пример. https://ideone.com/OVf7ew запусти сначала так, а потом раскомментирую явный вызов сборки мусора, разница в скорости работы будет заметна.
Аноним 26/12/21 Вск 20:38:36 224876360
>>2247699
>Фактор сортировки это типа якорь для быстрой сортировки?
>Ещё и как отсортировать не полностью, чтобы итератор выдавал отсортированное начало, и не тратил время на конец
Фактор сортировки - это как раз чтобы ты мог определить, где конец и какие данные можно считать отсортированными. А так - нормальное задание на джуна.
Аноним 26/12/21 Вск 20:46:39 224877461
Я тут вот о чем подумал.
В шапку, как по мне, следует добавить гитхабы опенсорсных хороших проектов, типа Nancy, NetCoreServer, mono и собственно самого .Net и ASP.Net(предложите еще свои варианты)
Мотивация. Как по мне - многие нюфаги - не умают читать чужой код(да и где им учиться-то?). Плюс, они не умеют отличать хороший код от плохого. Изучение хороших репок - помогает в этом. Ты, как минимум - не будешь впадать в состояние первобытного страха, увидев проект на 200мб исходников и мыслью: Я лучше перепишу сам, чем буду в этом разбираться.
Да, скажите, что кто хочет - сам посмотрит. Но как по мне - на этапе: я уже что-то знаю и могу писать какие-то вещи, хочу посмотреть - человек еще не имеет насмотренности в плане кода, чтобы отличить хороший код от плохого и понимать, почему те или иные решения приняты. И в отличии от того же обучения в вузе - нет возможности смотреть как другие делают, спрашивать мудного препода, который пояснит что-то.
В общем. Что думаете насчет?
Аноним 26/12/21 Вск 21:01:04 224879262
>>2248763
Ну, я вот мидл. Я понял зачем нужен фактор сортировки, но мне настолько лень разбираться и городить что-то, что ИРЛ я бы сдела что-то в духе:
return inputStream.OrderBy(x=>x);
И на собесе бы я бы попросил показать, где в их проектах они вот такие вот велосипеды городят. Если не городят - то хули вы мне мозги делаете. А если таки да, то я бы сам сказал: Вы мне не подходите.
Аноним 27/12/21 Пнд 07:01:24 224903063
Почему в c# все дружно обновляются до последней версии, а на яве сидят на 8 лол?
Аноним 27/12/21 Пнд 07:18:46 224903364
Нужно быть душевнобольным хуесосом без малейшей симпатии к программированию, чтобы в 2022 писать на c#.
Просто сравните джаву с .NET (https://jdk.java.net/18/release-notes), который создавался превратился в прекрасного лебедя
Аноним 27/12/21 Пнд 08:53:08 224905165
>>2249030
Винда сама обновляет дотнет. А если у тебя винда не поддерживает актуальную версию, то надо обновлять винду. Кто сидит на старых вёндах, у того вообще ничего не работает.
Каков план действий? Аноним 27/12/21 Пнд 09:51:11 224906566
Вводные: РАБотаю прогером в SAP болоте, разрабатываю на Х++ (похож на шарф но не он). Есть пара проектов на шарфе на гитхабе (простенькие расширения для VS, для РАБоты надо было). Сейчас решил систематизировать знания по шарфу, так что начал по сути с нуля и читаю The C# Player's Guide в оригинале (просто на русском не нашел). Сейчас на разделе с ООП.

Цель: хочу укатить в гейдев прогером на той же юнити хотя бы.

Вопрос: хули мне делать дальше? Уже начинать пилить свое инди говнище для ПОРТФОЛИО, или пока рано? Что после той книги изучать? Я сам хотел литру по алгосам или по написанию не говнокода. Все правильно? Помогите мне!
Аноним 27/12/21 Пнд 09:56:48 224907067
>>2249033
Ну ты то в шарпотред припёрся срать - только бы на джаве не писать.
Аноним 27/12/21 Пнд 11:16:08 224912568
>>2249065
Наш тред ничего общего с геймдевом не имеет. Пройди в /gd/.
Аноним 27/12/21 Пнд 11:26:10 224912969
>>2249030
Почему продолжают выпускать новые версии джавы если все до сих пор сидят на 8-й?
Аноним 27/12/21 Пнд 11:29:00 224913270
>>2249065
>Что после той книги изучать? Я сам хотел литру по алгосам или по написанию не говнокода.
1) Шаблоны игрового программирования. Роберт Найстром.
2) Иди в /gd
Аноним 27/12/21 Пнд 11:53:35 224915171
Есть проект с List<Shit> ListOfShits, и я хочу попробовать сделать для него ГУИ на ВПФ, в котором будет листбокс, выводящий объекты ListOfShits, но если просто на него забиндиться, то изменений в листбоксе не будет.

Вместо List<T> лучше подходит ObservableCollection<T>, но... И даже если я заменю, то потеряю в функциональности - например у ObservableCollection<T> нет Sort().

new ObservableCollection<Shit>(ListOfShits)? Но это же только скопирует ссылки, а изменений всё равно не будет.

У List<T> ещё и событий нет.
Аноним 27/12/21 Пнд 12:38:57 224920472
>>2249125
>>2249132
Ну с шарфом то связан мой вопрос... А на гд меня дружно проигнорили. Спасибо за помощь!
Аноним 27/12/21 Пнд 13:18:26 224924973
>>2249204
Для юнити полно курсов и готовых минипроектов. Только не обучайся по видео с ютуба.
Знание шарпа тоже поможет, только внимательно чекай разные фичи и сахар. Многое в юнити не работает, да и версия языка запаздывает.
Аноним 27/12/21 Пнд 13:28:37 224926074
>>2249249
Падажжи а как тогда обучаться? Вообще я планировал просто свой аналог галаги сделать с одной механикой, спиздив бесплатных ассетов
Аноним 27/12/21 Пнд 13:36:48 224927775
>>2249030
Вообще все не так однозначно, проектов на .NET 5, а тем более 6 довольно мало. Как мне кажется, во многих местах до сих пор сидят на коре с кусками фреймворка.

На яве 8 версия просто потому, что переезжать на новые версии смысла особого нет. Вот уже начиная с 17 версии смысл есть, так как спринг 6 будет поддерживать жабы начиная с 17 версии. А там может годика через 2 лум и вальхаллу подвезут, вот тогда начнется массовая миграция на новые версии.
Аноним 27/12/21 Пнд 13:42:34 224928376
>>2249260
>Падажжи а как тогда обучаться?
https://learn.unity.com/ например. Книги по юнити тоже есть, курсов полно. Официальная документация тоже подойдёт.
Просто юнити прощает и поощряет невероятно припизднутые вещи. Поэтому существует множество инфоцыган, которые берут какую-нибудь типовую задачу, делают по принципу "ну работает же", записывают видос с умными комментариями и оставляют ссылку на патреон.
Аноним 27/12/21 Пнд 14:26:43 224933577
>>2249277
Массовая миграция с жабы на новые версии дотнета, пофиксил. Видел бенчмарки, жабий спринг во всем проигрывает asp net core. Это если помнить, что в жабью виртуальную машину десятки корпораций вкладывались ресурсами, а на выходе такой жидкий пук получается спустя 25+ лет, пока майки считай в соло дотнетом занимались
Аноним 27/12/21 Пнд 14:37:52 224935478
>>2249033
Это что, сайт из девяностых?
Аноним 27/12/21 Пнд 14:40:59 224935979
>>2249283
Аааа... в этом смысле. Этот сайт знаю, 30% их курса прошел, сейчас особо времени нет. Но спасибо!
Аноним 27/12/21 Пнд 14:45:04 224937780
>>2249033
Кекус, перефорс поста из джава тред
Аноним 27/12/21 Пнд 14:48:45 224938781
Аноним 27/12/21 Пнд 15:01:56 224940182
>>2249335
Переписать код со спринга на asp.net будет тяжеловато, имхо.
А жабий спринг медленный потому что там под капотом буквально все завязано на рефлексии и прочей магии, которая обеспечивает работу DI. Да и к тому же сам томкат сервер не шибко быстрый сам по себе.
Аноним 27/12/21 Пнд 15:14:50 224941383
>>2249151
Ты всегда можешь написать свою коллекцию, реализующую NotifyCollectionChanged. Внутри можешь использовать тот же лист. Но вообще тебе стоит погуглить, как это делается в впф. Что-то я смутно припоминаю, для листвью и прочих контролов есть вариант сортировки на стороне вью.
Аноним 27/12/21 Пнд 15:19:45 224942184
>>2249151
>>2249413
Во, вспомнил есть ListCollectionView, которое и сортировку может и INotifyCollectionChanged с INotifyPropertyChanged реализует.
Аноним 27/12/21 Пнд 16:51:25 224951185
Как средствами EntiityFramework получить значение встроенной функции?
Вот, допустим, у меня есть какая то таблица, в ней есть ID, я хочу получить максимальный ID этой таблицы.
Средствами sql все просто - SELECT MAX(ID) FROM Table_Name, а с энтити всё геморройно.
Да, можно прямым способом,
int id = context.Table.ToList().OrderByDescending(t => t.ID).First().ID - но это ппц какой удар по производительности, если строк много.
Есть вариант создать некую промежуточную сущность
class MaxID {public int Id{get; set;}
и написать код типа этого
int id = context.MaxID.FromSqlRaw("SELECT MAX(Id) as Id FROM Table_Name").FirstOrDefault().Id;
Это работает, но тогда создаётся в бд лишняя таблица нахуй там не нужная. А если на класс повесить атрибут [NotMapped], то таблица не создаётся, но и код без таблицы не работает.
Есть варианты, что можно сделать?
Аноним 27/12/21 Пнд 17:23:28 224954386
изображение.png 1201Кб, 665x987
665x987
Не спрашивайте, при чём тут сишарп, просто тут толковых людей много, хочу именно у вас спросить.
А вы как-нибудь документируете ваши баги и архитектурные косяки? Какой софт для этого используете, если используете? Какие вопросы себе задаёте, когда описываете допущенный именно вами баг? Возвращаетесь ли к чтению этих описаний, или исправили, описали и забыли?
Моя идея в том, что если задавать себе, помимо вопросов о том, в чём именно баг и как его надо исправить, ещё и вопрос "почему же я затупил", и "как не тупить подобным образом в будущем", то можно навести чуть больше порядка в своей голове и в итоге пореже ходить по граблям. Вот только не совсем уверен, что это сработает.
Аноним 27/12/21 Пнд 17:32:39 224955687
>>2249543
Нет, у меня 99% багов - не тот символ поставил, не с той переменной сравнил и т. д. От невнимательности короче. Что тут документировать? Архитектурные просчёты - тут тоже бывает скорее из за незнания каких то нюансов, допуск подобных сам проходит, когда разберёшься.
Аноним 27/12/21 Пнд 17:39:47 224956388
>>2249543
95% багов которые у меня были, сдетекченные на этапе тестирования - из-за моей невнимательности и отсутствия четкого ТЗ с тем что нужно.
Допустим. Сказано: держать соединение с клиентом, но при этом, если клиент не выходит на связь при пинге, считать соединение потерянным. Окей. Я делаю: отдельный тред, который по таймеру проверяет время, когда был последний сеанс связи, если истек таймаут - пингую, если в течении заданного в настройках интервала не пришел ответ - считаю что связь утеряна. НО оказывается-то, на заводе производителе - забыли это во многие железки заложить, потому - вот эта вот модель устройств - не отвечает на пинги и сама наоборот шлет пинги мне, я должен отвечать. Мне это кидают в багтрекер, только, блядь, ни в ТЗ, ни в тех доках устройства про это нет, просто вот тестировщики - знают про эту особенность ряда устройств, а я - нет, не знаю, вынужден это узнавать из баг-трекера.
Так вот. Моменты с невнимательностью - не фиксирую никак. Это обычно 1 строчка исправлений, потому похуй.
Моменты с отсутствием информации - фиксирую в текстовом файлике в проекте в папочке DOC для проекта и комментаторами в коде в духе:
// Едрить его в корень, оказывается надо вот так, потому что вот так вот
Относительно архитектуры - нигде не фиксирую, разве что в коде - говеные решения помечаю TODO для рефакторинга.
Аноним 27/12/21 Пнд 18:12:05 224961689
>>2249556
Но ведь этих багов тоже можно было бы избежать. Какие-нибудь там линтеры или статические анализаторы кода могли бы помочь, например. Или сразу написанные тесты.
>>2249563
Ясно.
Я в общем-то примерно так же действую, но у меня иногда бывают баги не просто по невнимательности, а из-за неверных предположений, которые я сразу мог бы опровергнуть, если бы логически докопался бы до истины.
Ну вот например, очень тупой баг. Фиксирую изменения в неком каталоге. Если файлы в нём исчезают - добавляю их имена в список удалённых. Если изменяются или появляются новые - добавляю их в список новых. Суть в том, что создать что-то вроде инкрементального бэкапа. Вот только почему-то я предполагаю, что этих списков достаточно. А по факту файл может быть сначала удалён, а потом может снова появиться. В итоге дважды фиксируя изменения получаю хрен знает что. Логически можно было бы подумать, что изменение может быть либо туда, либо обратно. Либо файл удаляем, либо обновляем. Но не то и другое одновременно. Стало быть, если он всё-таки появлялся и удалялся, то из первой фиксации изменений данные об удалении или добавлении надо выкинуть. Но я почему-то об этом сразу не подумал. Подумал чуть позже, и в итоге обнаружил, что бэкап-то уже кривой, пришлось руками чинить.
Невнимательность - да. Чёткое ТЗ отсутствует - да. Может быть, проблема в том, что я начал пилить решение раньше, чем полностью продумал его. Но заранее полностью построить решение в голове как будто бы трудно. Не знаю, это нормальное явление, или мне лучше в таксисты пойти?
Аноним 27/12/21 Пнд 18:34:54 224964490
>>2249616
> это нормальное явление
Нормальное. Нужно максимально уточнять что от тебя хотят, долбя разными сценариями взаимодействия с твоей системой. Да, когда будешь совсем-совсем старым сеньером и все эти сценарии уже миллион раз делал - какие-то общие вещи можно не уточнять, но, я так понимаю, ты не древний сеньер-помидор, а задача для тебя новая, а потому что-то не понимать или не учитывать - норма. Для того и существуют разные этапы разработки. И да, сейчас проблема в том, что программисту говорят в общих чертах, что от него хотят, в итоге ты - идешь с завязанными глазами, доверяясь интуиции, и всегда оказываешься крайним из-за того что что-то не предсказал. Просто запомни это, в следующий раз - будешь знать что вот в таком сценарии нужно еще и это учесть.
Аноним 27/12/21 Пнд 18:39:25 224965291
Аноним 27/12/21 Пнд 20:09:06 224975792
Аноним 27/12/21 Пнд 20:28:04 224977793
>>2249652
Ну, в целом да, спасибо, работает. Показал как сделать это средствами Еф. Правда тестирование показало что выполнение через встроенную функцию раз в 15 быстрее, но тут уже никуда не денешься..
Аноним 27/12/21 Пнд 21:42:34 224983994
>>2249777
Чивооо? Это транслируется ровно в тот же sql запрос, что ты приводил. Посмотри в логах. Но а если ты сравниваешь скорость выполнения зароса в базе со скоростью выполнения запроса + маппинг да всё это с включенным чейнж треккером, то чтож, земля пухом.
Аноним 27/12/21 Пнд 22:51:58 224990195
>>2249151
> у ObservableCollection<T> нет Sort().
Как так вышло?
Аноним 28/12/21 Втр 00:22:02 224996196
Стажёр в крупной компании=Джун в обычной?
Аноним 28/12/21 Втр 02:11:19 225001197
>>2249961
Нет, наоборот. В большой компании ты можешь будучи стажером и даже джуном, первые месяцы нихуя не делать, почитывая мануальчики на онбординге. А потом еще полгода будут подтирать сопли.
А в обычной конторе джуном тебе максимум неделю дадут на то, чтобы въехать, а потом ебашить начнешь. А стажеров туда обычно не берут, а если и берут то таких, на которых сразу пахать можно.
Аноним 28/12/21 Втр 08:28:49 225006698
>>2249901
>Как так вышло?
А зачем оно там?
Аноним 28/12/21 Втр 08:39:33 225006899
>>2249839
Ну я про это и говорю, что EF по умолчанию будет много всякого тормозящего но иногда полезного делать. Наверно, кстати, это поведение можно и переопределить, но не уверен что мне настолько хочется лезть в эти дебри.
Аноним 28/12/21 Втр 10:31:04 2250130100
>>2250068
Пока что выглядит всё так, что ты вообще не понимаешь, о чем говоришь. Если EF делает что-то лишнее на твой взгляд, то тебе в этой задаче EF не нужен. Поскорее бы тред утонул снова.

другой анон
Аноним 28/12/21 Втр 10:47:14 2250151101
>>2250130
Начнём с того, что EF по сути - это синтаксический сахар. Нет ни одного случая, когда нельзя обойтись без EF и не сделать всё силами чистого sql. Цель EF - писать более лаконичный код. Ну и позволять более умным людям заботится о тех вещах, о которых ты мог забыть или не знать.
И делать что то лишнее - он вполне может. Вот как пример. Недавно пришлось работать с sql, которая была подключена как linked server к серверу, к которому у меня был доступ. И не секрет, что EF обёртывает все изменения в бд - в транзакцию. И вот при такой работе как с linked server - для работы транзакций нужно для каждой сессии добавлять set xact_abort on, иначе вылетает эксепшн. В целом то это реализуемо, но если транзакция по смыслу не требуется, то EF добавляет лишнее усложнее (Ну и ещё надо учитывать моё время и нервы, пока я в этом разобрался).
Аноним 28/12/21 Втр 11:08:57 2250173102
>>2250151
> EF по сути - это синтаксический сахар
Ты не знаешь, что такое синтаксический сахар, потому что это не синтаксический сахар даже если очень много скидок тебе дать.

> Цель EF - писать более лаконичный код
EF -- довольно стандартный ORM. Цель его -- быть ORM, то есть быть адаптером между РСУБД и ООП-языком.

> но если транзакция по смыслу не требуется, то EF добавляет лишнее усложнее
Когда я только начал изучать аспнет, весь интернет кричал на меня, что EF реализует паттерн UoW и все оборачивается в транзакцию. Это тяжело не заметить.

Также хочу обратить твоё внимание, что всё сказанное выше справедливо для всех полноценных и зрелых ORM. То есть это не особенности EF, это особенности целого класса инструментов. Ты просто не понимаешь, зачем этот инструмент нужен и сравниваешь хуй с пальцем. Повторюсь, поскорее бы тред снова утонул.
Аноним 28/12/21 Втр 11:24:19 2250186103
>>2250173
>ы просто не понимаешь, зачем этот инструмент нужен
Если бы инструмент был нужен только для одной цели - там был бы один метод - Выполнить. А так как там туева хуча разных настроек, опций, возможностей и т.д. - то целей его применения может быть дохерища. И да, вполне возможно что то из его базовой реализации мне не нужно.
Аноним 28/12/21 Втр 12:00:58 2250231104
>>2250186
> Если бы инструмент был нужен только для одной цели - там был бы один метод - Выполнить.
Ты не понимаешь сложностей склеивания ужа с ежом, то есть реляционного мирка с объектным. ORM решают довольно сложную задачу, поэтому там много нюансов и сценариев, в которых хочется всё вручную решить. По-другому никак, они сделаны из компромиссов. Я не хочу тебе это объяснять, потому что это уже лет двадцать в интернетах со всех сторон обсасывается и все трудоустроенные аноны из этого треда должны бы понимать, зачем ORM нужны и какие проблемы решают.
Аноним 28/12/21 Втр 12:04:32 2250234105
Я когда писал на РНР, то всё делал через прямые запросы MySQL типа "select * from table_name where column_name = 'something'". Так что все эти надстройки для торопыжек, кому лень написать sql-запрос.
Аноним 28/12/21 Втр 12:22:32 2250248106
Аноним 28/12/21 Втр 13:20:59 2250304107
Как понять, какие должны быть интерфейсы у объекта, чтобы его можно было биндить в ВПФ?
Например, чтобы забиндить ListBox к коллекции с отражением изменений, нужны:
- System.Collections.Specialized.INotifyCollectionChanged
- System.ComponentModel.INotifyPropertyChanged
Но это я смог понять, изучая ObservableCollection<T>. А "нормально" как?

>>2249421
ListCollectionView это, как я понимаю, класс не для хранения данных, а для вывода в ГУИ.

>>2249901
>Как так вышло?
Это ж BCL, откуда мне знать.
Аноним 28/12/21 Втр 13:33:54 2250325108
>>2250304
>какие должны быть интерфейсы у объекта, чтобы его можно было биндить в ВПФ
Виндится всё.
>смог понять, изучая ObservableCollection<T>. А "нормально" как?
Зайти на мсдн и прочитать как работает система биндинга
https://docs.microsoft.com/en-us/dotnet/desktop/wpf/data/?view=netdesktop-6.0
Аноним 28/12/21 Втр 13:41:35 2250332109
>>2250173
> Ты не знаешь, что такое синтаксический сахар, потому что это не синтаксический сахар даже если очень много скидок тебе дать.
Да никто не знает, везде пихают этот дебильный термин, всё что угодно им называют. Откуда эта мода пошла?
Аноним 28/12/21 Втр 13:43:45 2250334110
>>2250332
>Да никто не знает
И книг по впф нет, верно?
Аноним 28/12/21 Втр 14:19:33 2250363111
Аноним 28/12/21 Втр 14:40:24 2250386112
>>2250363
Опять ты свое говно на 300 постов разводить собрался?
Аноним 28/12/21 Втр 15:07:30 2250413113
>>2250332
Нет такой моды. По крайней мере, в моём окружении. Это только на двачах то и дело встречаются шизики, которые не хотят ни в чем разбираться и додумывают значения устоявшихся терминов по своим ощущениям.
Аноним 28/12/21 Втр 15:42:37 2250436114
А команда, генерирующая команду поменьше - это уже совсем?
Аноним 28/12/21 Втр 15:51:48 2250440115
Аноним 28/12/21 Втр 16:02:23 2250450116
>>2250413
Ладно, я согласен, что синтаксический сахар здесь может быть неправильно использовать, поскольку этот термин должен применяться к элементам языка, а EF - это фреймворк.
Но всё таки, EF - фреймворк, который не делает (не должен делать по своему прямому предназначению) никакой полезной работы, кроме как позволяет не писать sql код, а работать с бд как с объектами.
Поэтому если сделать допущение, что синтаксическим сахаром можно назвать фреймоврки - то EF - первый кандидат.
Аноним 28/12/21 Втр 16:10:52 2250466117
>>2250450
> Поэтому если сделать допущение, что синтаксическим сахаром можно назвать фреймоврки
На этом месте врач делает пометку в медкарте, закрывает её и просит увести тебя в палату.
Аноним 28/12/21 Втр 18:06:42 2250620118
>>2250450
>Поэтому если сделать допущение, что синтаксическим сахаром можно назвать фреймоврки
Так можно додопускаться, что любой ЯП является синтаксическим сахаром по отношению к байткоду. Только вот зачем?
Аноним 28/12/21 Втр 18:43:18 2250663119
>>2250386
Нет, просто спрашиваю хорошую на твой. Я находил только совсем старьё сомнительного качества и что-то вроде бы неплохое, но в каком-то глазоебательном виде.
Аноним 28/12/21 Втр 20:01:29 2250730120
>>2250663
У меня была какого макдональдса, не скажу что очень полезно, но какие-то моменты там вычитывал. Но МСДН лучше.
Аноним 28/12/21 Втр 21:31:59 2250851121
Осознал, что не могу ничего юзать кроме дотнета, хотел запилить имиджборду, сделал всё красиво на бэке, а фронт так и не смог осилить. Грустно, хотел фул-стеком в одно ебло потом продукт какой-нибудь сделать.
Аноним 28/12/21 Втр 21:36:52 2250858122
Аноним 28/12/21 Втр 21:54:06 2250869123
>>2250851
Сделай нативный клиент
Аноним 28/12/21 Втр 22:11:30 2250877124
>>2250858
Не помогло, я делал React/TS, меня вся экосистема фронтовская выбешивает.

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

Похоже прийдеться терпеть.
Аноним 28/12/21 Втр 22:29:57 2250882125
Аноним 28/12/21 Втр 22:32:49 2250885126
>>2250882
Есть книги по нему?
Аноним 28/12/21 Втр 22:39:17 2250887127
>>2250882
Наебнут опять. Они поиграются и выбросят. Кароче пойду дальше редукс ковырять.
Аноним 28/12/21 Втр 22:41:17 2250888128
>>2250877
>Не помогло, я делал React/TS, меня вся экосистема фронтовская выбешивает.
Меня по началу от реакта тоже тошнило прям. Но потом поработал и немного пообвыкся. Правда только на той версии что на классах. Та что на хуках, до сих пор омерзение вызывает.
Аноним 29/12/21 Срд 00:18:43 2250916129
Пчелс, с какой книги начать? вкатывальщик с небольшим опытом пет-проектов в джаве (spring), но она заебала (ибо пидоры какие-то там спринг и всю хуйню писали)
Троэлсен норм вариант? Или может курсы от хохлов из itvdn?
Аноним 29/12/21 Срд 06:52:20 2251004130
>>2250877
> кому нахуй нужен сегодня нативный UI.
Как бы любым адекватным людям? Для телефона это норма, а на компьютере их не хватает, все делают кривые уродские лагающие сайты. А у тебя будет няшка на Maui
Аноним 29/12/21 Срд 08:28:56 2251029131
>>2250916
По шарфу нет хороших книг. Совсем.
Это тебе не как в джаве с её великолепными шедеврами вроде двухтомника Хорстмана или философией Эккеля. А Блох?
Эх, хоть сами пиши книги...
Аноним 29/12/21 Срд 08:33:08 2251031132
>>2250916
Троелсен норм, из того что есть
Аноним 29/12/21 Срд 09:03:50 2251039133
Легко далось изучение асинхронности, многопоточности, делегатов и событий и всего всего, но ебаный yield return никак не дается. Есть какой-то источник, разжевывающий эту конструкцию для совсем идиотов?
Аноним 29/12/21 Срд 09:15:33 2251044134
>>2251039
Если что то по основам шарпа с примерами хорош этот ресурс
https://metanit.com/sharp/tutorial/4.12.php
В глубину он не часто лезет, но и побольше большинства чисто справочных
Аноним 29/12/21 Срд 09:20:33 2251047135
>>2251039
Напиши простой код:
yield return 2;
yield return 3;
и посмотри каким нибудь ILSpy'ем во что это превращается, и вся магия пропадет
>Легко далось изучение асинхронности
async/await? Довольно странно, там компилятор изъебывается намного сильнее и извращеннее. чем при yield
Аноним 29/12/21 Срд 09:25:14 2251050136
>>2251047
>async/await
Хотя бы понимаешь, для чего это нужно и когда применяется. С yield что-то затупил, а тут еще iAsyncEnumerable какой-то появился.
Аноним 29/12/21 Срд 09:29:53 2251054137
>>2251050
>для чего это нужно и когда применяется
если на пальцах
async/await - чтобы не пердолить руками продолжение задач
yield - чтобы не пердолить руками enumerator'ы
Аноним 29/12/21 Срд 10:24:58 2251091138
>>2251004
Но тогда на старте iOS/Android отпадут. Уже не говоря про windows only.
Аноним 29/12/21 Срд 10:36:24 2251101139
На меня вышли через знакомых с предложением написать проект. Вычисление стоимости строительных конструкций, справочники, возможно система аутентификации, графический интерфейс, а так же мобильная версия приложения. Попросили сказать, во сколько это обойдется.
Как блять вычислить цену? В своей конторе я получаю 8-10 долларов в час. Наверное легче всего оценить время разработки и подсчитать по тому же тарифу, что получаю на работе?
Так получается где-то 7-8 к долларов
Аноним 29/12/21 Срд 10:44:08 2251109140
>>2251101
Ну учитывая, что ты будешь один за всех на этом проекте, то надо повышать ставку. И тут вопрос. а ты можешь адекватно оценить время на проект? Я бы вот не смог.
Аноним 29/12/21 Срд 10:47:13 2251112141
Аноним 29/12/21 Срд 10:49:34 2251118142
>>2251109
Нас будет двое. Повышать ставку нужно бы еще за то, что я нихуя не шарю в мобильной разработке, планирую написать WEB API на core, потом подключить к мобилке с помощью флаттера или реакта. Думаем закончить за 3-4 месяца минимум.
Аноним 29/12/21 Срд 10:53:12 2251125143
>>2251101
>Как блять вычислить цену?
Отошли ТЗ в различные конторы и фрилансерам и посмотри сколько времени они запросят, и сколько денег.
Аноним 29/12/21 Срд 10:54:24 2251127144
>>2251112
Не начинать про что? Про что UI на шарпе виндовс онли, если делать без веба? Давай притащи ещё свою проститутки авалонию.
Аноним 29/12/21 Срд 11:01:32 2251131145
>>2251125
ТЗ еще написать нужно самому. Фрилансеров дотнетчиков в наших краях сложно найти, одни php-нишки кругом, а они и за шаурму работать готовы
Аноним 29/12/21 Срд 11:12:19 2251139146
Аноним 29/12/21 Срд 12:26:21 2251212147
>>2251101
Тут счёт на миллионы идет и полгода разработки очень слаженной командой из трёх-четырёх человек, не считая аналитика.
Аноним 29/12/21 Срд 12:29:38 2251214148
>>2251139
Ну вот на самом деле - хуй знает.
Я в вузе когда учился - как раз на метанит часто заходил. И вот например с событиями - было нихуя не понятно.
Вот цитата оттуда:
> События сигнализируют системе о том, что произошло определенное действие. И если нам надо отследить эти действия, то как раз мы можем применять события.

Вот какой, блядь системе? Как они сигнализируют и вообще что это должно значить-то, блядь?

Понимать как оно работает, я стал исключительно после того, как в вузе на плюсах, в ходе написания курсача - сам изобрел издатель-подписчики. Потом таки дошли руки и прочитал про паттерны. А вот на метаните - было нихуя непонятно. Просто пиздец.
Аноним 29/12/21 Срд 13:18:53 2251248149
>>2251212
Вот они, современные менеджеры.
Я б сделал в соло за месяц работы и месяц опытной эксплуатации. Деньги - 200к в месяц, итого 400к (если б у меня работы не было).
Ну если нужен прям красивый интерфейс - то плюс работа художника.
Аноним 29/12/21 Срд 13:22:09 2251251150
>>2251214
Метанит - это всё таки глубокий туториал, а не прям справочник.
Из плюсов - вполне по примерам оттуда можно писать рабочие программы.
А создание высоконагруженных и многопоточных систем - это да, в другом месте копать надо.
Аноним 29/12/21 Срд 13:26:22 2251255151
Оказалось выпилили компиляцию "в один файл" в 7 винде. Интересно специально, ибо на Net 5 работало или же правда какая-то техническая сложности погнать всех обновлять ос :)
Аноним 29/12/21 Срд 13:28:39 2251260152
>>2251251
глубокий туториал
Поверхностный ткториал а-ля квикстарт.
>писать рабочие программы.
Doubt. Разве что хэлоуворды. А так шаг в сторону и всё - сел в лужу.
>в другом месте копать надо
Да в общем-то нет такого места где есть всё, придется много где рыть.
Аноним 29/12/21 Срд 13:33:59 2251269153
>>2251255
Даже если и есть техническая возможность сделать это на 7 (хотя наверняка заюзали что-то, что есть только в 7+), то нет смысла поддерживать то, что уже не поддерживается. Это же все равно будут затраты человекочасов.
Аноним 29/12/21 Срд 13:35:03 2251273154
>>2251248
Я хотел отдельно для доёбщиков написать, что это можно в соло за месяц-два-три сделать, если сам разработчик и хорошо владеешь предметной областью, имеешь в ней опыт, а ещё тебе это интересно, но тут явно ситуация не такая. Кабанелло хочет йобу для бизнеса, которую вряд ли сформулировал на уровне, пригодном для разработки. Кабанелло ищет разработчиков по знакомым, так как не понимает нихуя в разработке как отрасли и действует так, как если бы искал разнорабочих подешевле.

Кабанелло проебёт деньги и в лучшем случае получит криво работающий MVP, который на самом деле никакую конкретно полезную функцию не выполняет.
Аноним 29/12/21 Срд 13:41:27 2251296155
>>2251269
Ппц ты недалекий уровня офисного планктона. А вообще, твое мнение не несет никакой полезной информации, так как ты не в курсе проблемы. Это как ответы на мэйл ру.
Аноним 29/12/21 Срд 13:47:41 2251310156
Аноним 29/12/21 Срд 13:56:05 2251331157
>>2251273
Ну вот это да. Ко мне тоже неоднократно выходили с предложением написать ёбу для своего бизнеса.
Когда я пытался с ними сесть и детально обговорить техзадание - почти все резко ливали на первых шагах.
В итоге все хотят себе раба, который будет пилить все их хотелки за копейки.
>>2251260
Программа - понятие растяжимое. Вот что то работающее для такой вот строительной программы - очень даже.
Конечно профессиональный продающийся инструмент - нет.
Аноним 29/12/21 Срд 14:07:43 2251339158
>>2251248
Таких пидарасов раньше называли штрейкбрехерами и ноги ломали после работы
Аноним 29/12/21 Срд 14:11:08 2251344159
>>2251339
А таких как ты - называют Путинворами
29/12/21 Срд 14:27:22 2251365160
IMG202112291425[...].jpg 91Кб, 1440x377
1440x377
Аноним 29/12/21 Срд 14:30:50 2251369161
>>2251365
Еще бы, картинку с текстом в жпг сохраняет!
Рассказывай подробнее. Мы тут любим грязные сплетни.
Аноним 29/12/21 Срд 14:30:59 2251370162
>>2251331
>Когда я пытался с ними сесть и детально обговорить техзадание
Потому что они не знают чего хотят.
Типо сделайте мне красиво и шобы работало и шобы деньги приносило.
По этому надо сразу брать предоплату за составления тех задания, что бы заказчик был на крючке.
Ты не возьмешь ну значит другие возьмут.
Аноним 29/12/21 Срд 14:39:54 2251387163
>>2251369
Это сяоми, нигде нельзя поставить png. Что тут рассказывать, уже второй месяц пошёл
Аноним 29/12/21 Срд 14:43:55 2251396164
>>2251369
Двачую.

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

>>2251248
А когда кабанелло не может и не хочет сам думать, он покупает целую команду и она ему реализует проект, который будет работать и который даже принесёт многоденег, если кабанелло угадал с фичей и если команда правильно её проанализировала и реализовала. Причем, прибыль может быть не прямая. То есть задумка кабанеллы может не приносить прибыль напрямую, но окажется хорошим конкурентным преимуществом, которое привлечёт много новых клиентов в бизнесу. За это и платятся миллионы, в реальности так всё и делается. А два месяца и 400к в одни руки -- это фантазии.
Аноним 29/12/21 Срд 14:45:58 2251400165
>>2251387
>Что тут рассказывать
Как ты обосрался конечно же.
Аноним 29/12/21 Срд 14:48:23 2251405166
>>2251370
Ну, я в целом не против, что б этот геморрой
>В итоге все хотят себе раба, который будет пилить все их хотелки за копейки.
взял кто то другой.
Ну а то что либо тот кто возьмёт имеет либо скилл разруливать такие ситуации, либо имеет в штате чувака что разруливает такие ситуации - ну что ж..
Гей шлюхи тоже дорого берут, но это не значит что я бросаю всё и иду в гейшлюхи.
Аноним 29/12/21 Срд 14:52:18 2251414167
>>2251405
>Гей шлюхи тоже дорого берут, но это не значит что я бросаю всё и иду в гейшлюхи.
Профессии отличаются только записью в трудовой.
Аноним 29/12/21 Срд 14:56:06 2251421168
>>2251396
Хорошо, если у тебя есть варики с такими кабанелло, который может заплатить несколько лямов.
А если не может?
Вот мне встречалась хозяйка небольной ветеринарки с зооаптекой. Лично знаю её, миллионы не таскала, так как не дс, но на жизнь хватало.
Приходила с предложением сделать ей экосистему. Что б были модули учёта и ведения клиентов, работы персонала, расходования материалов и товаров, а также онлайн запись клиентов.
Примерно то что хочет этот кабанчик, только без мобильного приложения.
В целом мы в цене всё таки не сошлись, она хотела за копейки, а у меня времени нет. Но если б раза в два подняла предложение, я б сделал. А с подходом как у этого еврея - даже близко было бы без шансов.
Аноним 29/12/21 Срд 15:02:00 2251439169
>>2251421
Малому бизнесу нужна готовая CRM и местный интегратор, который занидорага всё настроет и будет обслуживать.

> Что б были модули учёта и ведения клиентов
CRM.

> работы персонала
CRM.

> расходования материалов и товаров
ERP очень типовая конфигурация 1С, один хуй вся бухгалтерия через него у неё проводится.

> а также онлайн запись клиентов
CRM.

В этой истории встретились Биба и Боба. Биба думала, что для её очень стандартного бизнеса нет готовых инструментов. Боба всерьез готов был делать свой велосипед.
Аноним 29/12/21 Срд 15:07:15 2251445170
>>2251439
Варианты с CRM были и ей предлагали, только управляемые как раз вот такими евреями. И стоило это дороже того варианта, который я был бы готов сделать. И без некоторых фич.
Собственно с этого и началось, что она пришла с буклетом, сделать примерно также, но без красивостей.
Аноним 29/12/21 Срд 15:12:59 2251460171
>>2251405
>взял кто то другой
Другой взял но уже не за копейки.
Это как в автосервисах, клиент объездит 10 сервисов +- цена у всех одинаковая, и за копейки ни кто не работает. Клиента получит тот кто с него первый возьмет предоплату.
Аноним 29/12/21 Срд 15:16:41 2251466172
>>2251460
А потом окажется что этот клиент за свои бабки тебя и выебет.
Конечно если ты и не против читай - умение разруливать такое - то поздравляю.
Я предпочту работать с лояльными клиентами.
Аноним 29/12/21 Срд 15:45:02 2251488173
>>2251466
Бля пытался найти статью но не нашел.
Корочи смысл был таков.
У чела было $50к, и идея. Сервис в котором люди могут взять обзор на машину которую хотят купить.
Например видят что тачка продается в другом городе, заказывают на нее обзор, специально обученный человек идет и проверяет тачку, ну там не бита не крашена. Вся инфа сохраняется и потом выдается другим людям. Сайт +моб приложение.
Обратился он в компанию.
2 года разработки, ни денег ни приложения.
Пошел в суд, суд отказал ему в компенсации.
Чел просто не знал что хотел. Вот у него была эта идея а как дальше хуй знает. Наверняка по 5 раз на дню придумывал что то новое что тормозило разработку.

Имхо нужно сразу брать предоплату хотя бы $100 за составление тз. После того как ТЗ составили уже договаривается о цене. Как только договорились о цене то изменение тз влечет и увеличения стоимости разработки. А там уже поебать, пусть в конвульсиях хоть бьется, деньги то он платит частями, заплатил работаем дальше, не заплатил то пусть идет нахуй. И если клиент платит 3 копейки то и получает сервис за 3 копейки.

Лет так 7 назад на пьянке как то чел попросил смогу ли я ему запилить сайт. Ну я сказал хули там конечно смогу. Он попросил типо интернет магазин автозапчастей. Ну я накинул что во первых надо ИП, хостинг, домен. Так как дело в рб происходило в то время хостинг и домен уже влетали в 50$. Подключение сервисов оплаты. Заполнение каталога. Разработка дизайна. И это просто что бы был. А на рекламу еще тыши даларов. Ну вот после этого всего он ответил "Понятно, значит не можешь.".
Просто у него в голове созрел план а как реализовать его он хуй знает.
Аноним 29/12/21 Срд 15:52:56 2251494174
>>2251488
Я не спорю, что такой подход норм. Но это как отдельный скилл - умение и желание общаться с людьми, разжёвывать, составлять сметы, настаивать на своей позиции при оплате и т.д. С этим навыком - можно вообще программировать не уметь. У меня вон пол организации аналитиков таких.
У меня нет ни умения таким заниматься, ни желания. И без этого программированием на хлеб с маслом заработаю.
Аноним 29/12/21 Срд 16:58:25 2251577175
>>2251405
>гейшлюхи
В 30 лет есть шансы вкатиться?
Аноним 29/12/21 Срд 18:19:42 2251688176
Почему один и тот же json newtonsoft может преобразовать в структуру, а стандартный нет? Просто выдает пустой объект, без ошибок
Аноним 29/12/21 Срд 18:54:31 2251731177
>>2251688
Потому что никакого стандартного не было. Майки его просто не добавляли, везде был свой зоопарк для работы с Джейсоном, пока не появился Newtonsoft.Json, который стал де-факто стандартной либой.

С очередной версией фреймфорка корпорация опомнилась и заставила разрабов делать свой Ньютонсофт, что было ошибкой. Через пару лет они уберут опять системную ассембли для работы с json, поняв, что лучше уже не сделают. Не помню, недавно что-то майки ещё убирали со словами юзайте gRPC)) wcf?.
Аноним 29/12/21 Срд 21:28:25 2251820178
>>2250877
Так ректал с тайпскриптом это интерпрайз мира фронтеда. 100500 зависимостей, вебпаки, гранты, хуянты, транскомпиляторы. Конечно с наскока такую порцию говна не получился съесть. Нужно было vue-няшу брать и на ванильном жс делать.
Аноним 29/12/21 Срд 22:25:16 2251848179
>>2250885
Вот такая есть
https://docs.microsoft.com/ru-ru/dotnet/architecture/blazor-for-web-forms-developers/
Так же хороший плейлист с уроками
https://www.youtube.com/watch?v=xLv31QztIGE&list=PLrTvxXQSRKAMAotVG4HV5jwNScrhYepKc&ab_channel=MasterProgger

Так же вот это ахуенное видео
https://www.youtube.com/watch?v=09GKW8ajGWk&ab_channel=CodeFestRussia
Показывает простоту блейзора.

И почему вы думаете что технология умрет?
Как по мне сейчас все языки идут к упрощению. Блейзор как раз таки и упрощает разработку. Зная просто синтаксис C# разобраться в ней не очень сложно. А вот если посмотреть на веб формс то это просто пиздец какой то. Имхо мне там нихуя вообще не понятно.
И вообще я думаю майки стремятся все упросить. Поставил VS и прогай. не надо ставить апачи хуячи ножс сервера и прочию хуйню. Так сказать программирование для тупых.
Ну а если блейзор медленный то и похуй. 16g ram 10$ стоят.
Вообще сейчас оптимизация стоит на последнем месте. Главное быстрее выкатить продукт.
Аноним 29/12/21 Срд 22:52:44 2251857180
image.png 33Кб, 314x541
314x541
>>2251054
>async/await - чтобы не пердолить руками продолжение задач
А если не использовать async/await, то пердолить что то вроде пикрилейтеда и постоянно вызывать Perform(), или выпердоливать коллбекового монстра?
Аноним 29/12/21 Срд 23:52:53 2251896181
>>2251400
Да что тут рассказывать, какое-то ебанутое интервью по тестовым заданиям. Ну я попутал в некоторых местах, они вдвоем даже не знают толком что им нужно, как мне на это ответить
Аноним 30/12/21 Чтв 02:39:46 2251943182
Проекты для портфолио выкладывать под mit лицензией? Всё равно эксперты лучше сделают с нуля. на всякий случай, я знаю что всем похуй
Аноним 30/12/21 Чтв 10:31:33 2252029183
>>2251848
Потому что во фронтенде React, Angular и Vue. Остального в дикой природе не существует. Кто возьмёт Blazor себе на проект, тот сядет на хуй, с которого нельзя будет быстро и безболезненно слезть. И тяжело потом будет новых разработчиков под эту хуйню находить. Буквально весь энтерпрайз понимает, что Blazor -- это игрушка, которую разве что в петпроджектах потыкать можно для разнообразия.
Аноним 30/12/21 Чтв 10:49:46 2252034184
Аноним 30/12/21 Чтв 11:16:54 2252060185
>>2249065
>Цель: хочу укатить в гейдев прогером на той же юнити хотя бы.
Там зряплаты говно, нахуй это надо.
Аноним 30/12/21 Чтв 11:26:49 2252077186
>>2250011
Двачую. Все так и было. Был самостоятельным мидлом, которому техлид давал ебанутое задание и отправлял исполнять на месяц, ушел в корпорацию где ит отдел 2к рыл. Тут работаю по скраму. Так я тут только деградирую. Двигаю кнопки, изменяю сценарии в winform, пиздец короче.
Аноним 30/12/21 Чтв 11:58:50 2252129187
>>2249961
В крупные конторы стажеров нанимают преимущественно среди студентов вузов, которые неплохо умеют решать задачи на литкоде, но при этом во всяких кишках фреймворков не сильно разбираются, как и толком не умеют ничего делать полезного.
У обычных контор нет денег обучать стажера, который умеет только в алгоритмы, поэтому стараются взять джуна, который уже умеет писать какие-нибудь круды на asp.net/spring/node.js/go, но при этом пусть и не умеет в алгоритмические задачки. Как-то так, на мой взгляд.
Аноним 30/12/21 Чтв 14:06:14 2252198188
Аноним 30/12/21 Чтв 17:57:33 2252389189
16400586762600.png 53Кб, 512x512
512x512
Здравствуйте, извините за заранее возможно глупый реквест. Говнокожу в рога и копыта приложения на wpf'e, уже есть относительно готовый продукт. Кабан захотел перевести этот продукт в веб. Начал пилить на асп.нет коре, опыта в вебе практически нету. Пока накидал фронт на бутстрапе, где-то половину или больше логики нужно будет переписать на js. Читаю мануалы по js'у - 80-90% похож синтаксис шарпа, все понятно, просто пробегаюсь глазами по нюансам.
Вопрос следующий - где можно почитать для максимально быстрого вката информацию про взаимодействие логики клиента (js) с асп сервером? К примеру мне нужно на нажатие кнопки обновлять картинки на странице (без обновления самой страницы), но я также не хочу их выставлять в виде заранее готовых урлов, я хочу чтобы к примеру js отправлял на сервер условный id, сервер записывал в бд действие клиента и отправлял сырую пикчу клиенту.
Аноним 30/12/21 Чтв 18:19:38 2252412190
>>2252389
Тебе нужно прежде всего перейти во-первых на TypeScript, во вторых взять фреймфорк из большой тройки: Angular, Vue, React.

Но Реакт всё таки для буйных, поэтому Ангуляр либо Вью остаются.

Писать фронт на чистом JS - это сегодня можно, но зачем, особенно если ты не из фронтовой разработке с опытом.

Есть ещё блейзор - но ты не верь что здесь пишут, мол будущее веба, это очередной UI высер от майкрософта, который умрёт через пару лет и прийдеться вилкой чистить упоминание этого шедевра в твоем резюме, как чистят веб-формс.
Аноним 30/12/21 Чтв 18:24:53 2252415191
>>2252412
Молодец, собрал весь тредовский щитпостинг от людей без опыта в один пост.
Аноним 30/12/21 Чтв 18:27:02 2252416192
Вообще зачем майкрософт влошилась в blazor? Очевидно ведь, что очередная замена вебформам и сильверлайту (ровно как умершие jsp и апплеты в джаве), хоть и компилируется в webasm (кстати как? хочу почитать как оно там реализовано, неужели своего рода микро-clr встроена туда), вряд ли когда-либо взлетит.
Аноним 30/12/21 Чтв 18:28:57 2252418193
>>2252416
Говорят, что джава-аплеты возродят на вебассембли
Аноним 30/12/21 Чтв 18:33:37 2252422194
>>2252418
Джава апплеты мертвы уже наверное лет как 15, да и из самой jdk их полностью выпилили давно. Никто их возрождать уже никогда не станет, так как нет никакой необходимости крутить жаба код в браузере, когда есть js. Собственно, все эти апплеты, Flash, Silverlight сдохли давным-давно, потому что пришла эпоха джаваскрипта.
А webasm нужен для того, чтобы сложную графику отрисовывать, да и то, его почти никто не использует.
Аноним 30/12/21 Чтв 18:39:01 2252436195
>>2252415
Олежка, привет, ты ещё жив?) Ты до сих пор здесь сидишь, вот уж не ожидал.

А по факту, давай по пунктам, что я не так сказал про фронтовую разработку, что поциенты мастдая сбежались.
Аноним 30/12/21 Чтв 20:46:16 2252558196
>>2252389
> 80-90% похож синтаксис шарпа, все понятно, просто пробегаюсь глазами по нюансам
Схожесть синтаксиса -- это ни о чем. На фронте и на бэке практически противоположные подходы к управлению состоянием (на бэке оно живет короткое время между получением запроса и отдачей ответа, а на фронте оно живет долго, пока пользователю не надоест взаимодействовать).

> Вопрос следующий - где можно почитать для максимально быстрого вката информацию про взаимодействие логики клиента (js) с асп сервером?
Во-первых, тебя интересует не JS, а TypeScript.

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

В-третьих, если нет и не предвидится отдельных сильных фронтовых ребят, лучше взять Angular. Тоже фреймворк (а не библиотека), тоже есть DI, тоже есть ощущение энтерпрайзного спермяка во рту. Только как можно раньше освой RxJS и не пиши бизнес-логику в компонентах. Говорю по своему опыту и коллег опыту. У нас был проект, где нам сделали опытные чуваки фронт на Vue, который мы заебались поддерживать и который переписали на Angular.
Аноним 30/12/21 Чтв 22:28:16 2252650197
>>2252389
> но я также не хочу их выставлять в виде заранее готовых урлов, я хочу чтобы к примеру js отправлял на сервер условный id, сервер записывал в бд действие клиента и отправлял сырую пикчу клиенту.

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

это все делается через асинхронный джаваскрипт и технологию AJAX. Технология древняя как говно мамонта, недавно ее заменили на Fetch API (ну естессно индусы напилили кучу разных npm модулей поверх нее, к примеру AXIOS).
В общем для понимания того как это работает из под коробки, тебе нужно изучить как JS работает с DOM (ну это считай самые основы работы в браузере, т.е. буквально тебе нужно узнать как JS работает с ХТМЛ элементами на странице, как выбирает их и как изменяет их, как повесить на тот или иной элемент обработчик того или иного события), изучить как работает асинхронный JS (через промисы или асинк/авейты, что в общем тоже самое что и промисы только другой взгляд), а так же собсно изучить непосредственно сам Fetch API (ну или аксиос).
Грубо говоря, если не брать фреймворки всякие, при нажатии на кнопку срабатывает обработчик события, в этом обработчике посылается асинхронный запрос на сервер, там уже делается какая-то хуйня независимая от клиентской стороны, и тут же JS ловит ответ. Это может быть как и удачный ответ, так и ошибка, он может обработать оба в разных вариантах. И тут же ты ищешь элемент на странице, который хочешь изменить в соответствии с полученной информацией и тут же его и меняешь, никакого обновления страницы при этом не происходит.
Там все довольно просто и изучить при желании это можно за пару дней.


Тут говнари тебе зачем-то тайпскрипта насоветовали, но тайпскрипт здесь не при чем. Это все равно что посоветовать вижуал бейсик в вопросе про технологию .NET. Типа, ну да, может где-то и удобнее он, но это блядь просто блядь другой вариант описания, лол. Ну или в спринге вместо джавы посоветовать использовать котлин, типа, ну да, так красивее, но ответа на вопрос "как сделать это" не дает.
Аноним 30/12/21 Чтв 22:53:05 2252682198
>>2252389
>>2252650
Алсо, ответ в большинстве случаев ловят JSом (ну и соответственно отправляют бэкэндом) не в виде TEXT/HTML, а в виде JSON (что-то типа XML, только проще). Т.е. на стороне ASP тебе нужно будет сделать обработчик запроса (get/post/и так далее, в зависимости от того что отправил JS) (даже не ебу как там в ASP все это делается пока, наверное какой-нибудь контроллер с экшонами, ну или как-то так) который в свою очередь что-нибудь сделает там в базе данных ну и направит ответ не в виде View (как в MVC), а JSON'чик. Это частично называется REST технологией, хотя REST это не только джейсончики и обработка запросов.

Собственно именно поэтому фронтэнд называют вешателями обработчиков на формочки, а бэкэнд - складывателями инфы в джейсончики
Аноним 30/12/21 Чтв 22:58:46 2252693199
>>2252558
Ангуляр выглядит реально монструозным комбайном и работает с такой же скоростью, не говоря о том сколько времени нужно запрягать хелоу ворлд.
Если видел админки гугловских сервисов типа адмоба или консоли гуглплей, они построены на ангуляре, и это типо один тяжеленный дашборд на сотни тыщ строк тормозного жс говна.
Для spa, которые юзаются как приложения это норм тема, но это подойдёт далеко не каждому сайту. Как и реакт, и вью, и тс. Только огромное преимущество вью, что не нужно тащить всю нодовскую экосистему чтобы юзать человеческие двусторонние байндинги. Просто подключенишь его через cdn как в старые времена без говняка и всё. имхо
Аноним 31/12/21 Птн 07:27:59 2252813200
Аноним 31/12/21 Птн 08:37:57 2252818201
Хули Ява так похоже, одни и те же слова
Аноним 31/12/21 Птн 09:10:12 2252821202
>>2252818
Это не ява на шарпы похожа, а шарпы на яву так как создавались с оглядкой на него.
Тащемта все языки похожи друг на друга.
Аноним 31/12/21 Птн 10:12:49 2252837203
Аноним 31/12/21 Птн 12:04:28 2252905204
Поясните за gRPC. В чем профиты по сравнению с православным json'ом ?
Стоит вкатуну его учить или можно просто ознакомится?
так с первого взгляда чет сложным все это кажется. Есть ли какая приблуда которая может конвертить обычные объекты в grpc ?
Аноним 31/12/21 Птн 14:33:43 2253052205
>>2252818
Тебе надо было поменять местами типы и раздраконить конструктор? Шарп вдохновился джавой и плюсами. хера джава так похожа на плюсы, лол, пориджы
Аноним 31/12/21 Птн 14:41:29 2253058206
>>2253052
>хера джава так похожа на плюсы
Ну джава действительно похожа на говно мамонта
Аноним 31/12/21 Птн 15:54:53 2253117207
Проверьте мои знания по многопоточности.
Не имеет смысла создавать больше Thread чем ядер у процессора. х2 если есть Hyper-Threading
Не имеет смысла создавать больше потоков чем ядер у процессора для операций требующих один поток, например запись файла. Имеется в виду что инфа которую пишем в файл уже есть и ждать ее не надо.
Лучше юзать Task чем Thread. Если точно знаешь зачем и почему тебе нужен Thread то тогда юзать его.
Таски надо юзать когда есть время ожидания ответа. Например HTTP запросы.

Хуй знает что еще сказать. Напишите что еще можно добавить.
Ну типо я еще знаю что таска запущенная потоком не обязательно закончит выполнения в этом потоке. Но я больше про так сказать общие вещи.

И правильно ли я понимаю, к примеру имеется 2 ядра на процессоре2 потока. Задача записать 10к файлов. Быстрее будет в цикле создавать по 2 таски и писать по 2 файла, чем просто создать 10к тасок и записать все файлы?
Аноним 31/12/21 Птн 16:05:41 2253121208
>>2253117
Данные на жесткий диск пишутся последовательно, параллелить это не имеет смысла, только замедлишь.
Вот если запись на ссд там другая история.
Аноним 31/12/21 Птн 16:14:45 2253124209
>>2253121
>Вот если запись на ссд там другая история.
А что за история? Разве не будет делить скорость запись на количество одновременно записываемых файлов?
Аноним 31/12/21 Птн 19:08:04 2253199210
Аноним 31/12/21 Птн 19:17:02 2253204211
А вообще, в VS Code на C# нормально всё или есть херня? Просто VSS, ИМХО, жырная слишком, насчёт эклипсов и прочих не знаю, а жыдбрайнсы... Жыдбрайнсы, да.
Аноним 31/12/21 Птн 21:09:39 2253259212
h0asq1tnl5hz.png 130Кб, 512x768
512x768
Запилите противоположный мем, кому не трудно
Аноним 31/12/21 Птн 21:46:39 2253283213
image.png 135Кб, 1708x445
1708x445
>>2253259
Зачем, я почти уверен, если бы у них был честный сборщик мусора, то спринг бы удалялся сразу после запуска.
Аноним 31/12/21 Птн 22:12:40 2253299214
>>2253283
Вот смотрю я на это и так и хочется запилить свой MVC'шный фреймворк на плюсах, просто чтоб все пососали. Но, к сожалению, понимаю, что в соло буду долго слишком делать. Был бы студентотой - таки запилил бы.
Аноним 31/12/21 Птн 22:20:22 2253304215
>>2253283
>>2253259
Чел пришёл за боевой картиночкой против шарпошиза, а его в шарпотреде встретил шарпошиз... Топ 10 сюжетных аниме поворотов.
Аноним 31/12/21 Птн 22:24:57 2253309216
>>2253204
А щито поделать.
Для разработки машина должна быть достаточно мощной. Настолько, чтобы тебя вопрос размеров средств разработки не волновал от слова совсем.
Аноним 31/12/21 Птн 22:53:40 2253324217
>>2253299
> Вот смотрю я на это и так и хочется запилить свой MVC'шный фреймворк на плюсах, просто чтоб все пососали
Пососал бы скорее ты, и делал это говно до старости или с кучей багов. Язык говно
Аноним 31/12/21 Птн 23:15:27 2253345218
>>2253324
Тащемта "запилить" и "допилить до продукшен реди" — ахуеть какие разные вещи. И запилить в соло изи можно за пару-тройку недель.
Аноним 31/12/21 Птн 23:20:04 2253348219
>>2253304
На картинке ГЦ удаляет жабу при запуске, чел просит наоборот. Но растодебилу не хватило даже на это мозгов, иди пиши свою утилиту cat.
Аноним 31/12/21 Птн 23:35:54 2253359220
>>2253348
> картинке ГЦ удаляет жабу при запуске, чел просит наоборот.
Да я имел ввиду для c# тоже самое, а не наоборот, не так написал
Аноним 31/12/21 Птн 23:37:20 2253361221
16399974954570.png 484Кб, 750x548
750x548
>>2253348
Спок, шарпошиз.

>иди пиши свою утилиту cat.
Мне-то зачем? Это у тебя на сперме её нет.
Аноним 31/12/21 Птн 23:44:53 2253365222
>>2253361
Безработного раст-борщехлёба порвало))
Все уже зависимости в mod.rs ручками прописал? Все ошибки через хрезульт вверх пробросил? Нет? А ну бегом дописывать, а то останешься без стектрейса, средневековые долбики.
Аноним 31/12/21 Птн 23:48:48 2253368223
>>2253361
Самое смешное, чтобы собрать раст на винде им нужно поставить билдер С++ из Visual Studio (или саму IDE).
Вот так челики победили С++.
Аноним 31/12/21 Птн 23:49:33 2253369224
Аноним 31/12/21 Птн 23:52:10 2253370225
Artboard.png 210Кб, 507x512
507x512
Аноним 01/01/22 Суб 00:13:55 2253377226
image.png 45Кб, 200x150
200x150
>>2253370
Пьяный борщехлёб даже промахнулся и прожал пустой пост))
Аноним 01/01/22 Суб 00:16:32 2253380227
>>2253377
>выёбистый шизоджун пытается в перефорс
Спок, макаба просто не поддерживает webp.
Аноним 01/01/22 Суб 00:35:24 2253386228
Шарпаны. В общем, вот и наступил 2022 год.
Желаю тем кто вкатывается - вкатиться в наш любимый .net. А тем, кто уже вкатился - офферов пожирнее и адекватных кабанчиков, которые будут ценить вас и понимать, что если фичу надо делать две недели, то ее нужно делать 2 недели!
В общем, успехов всем.
Аноним 01/01/22 Суб 00:52:41 2253398229
>>2253380
Тогда зачем ты процитировал пустой пост, пьяный ты хаскелист.
Аноним 01/01/22 Суб 01:04:17 2253403230
>>2253398
Потому что я могу, как и полагается чэду. А ты можешь сидеть и выцеливать конкретные посты, чмоня.
Аноним 01/01/22 Суб 01:04:42 2253404231
200c779b5340e28[...].jpg 8Кб, 160x160
160x160
Аноним 01/01/22 Суб 01:13:43 2253409232
haskell.jpg 246Кб, 1024x768
1024x768
>>2253403
Ахах, чэд!
Да ты перепил, ща в драку полезет, борщепьянь
Аноним 01/01/22 Суб 01:20:58 2253413233
ac665e35cbe686b[...].jpg 23Кб, 480x360
480x360
>>2253409
>эти проекции борщехлёба
Спок, маня. Вкатится не сложно, у тебя всё получится.
Аноним 01/01/22 Суб 01:35:01 2253421234
Аноним 01/01/22 Суб 01:35:31 2253422235
Аноним 01/01/22 Суб 01:42:08 2253425236
image.png 37Кб, 1671x166
1671x166
image.png 28Кб, 727x358
727x358
Аноним 01/01/22 Суб 01:49:21 2253427237
>>2253425
жесть, убийца плюсов юзает для сборки что-то от плюсов, так ещё и от МС вс
Аноним 01/01/22 Суб 02:04:49 2253437238
>>2253421
>>2253427
Кланга на шинде нет (официально), заводится только с кучей ебли.

А ещё на шинде ни LLD (линкера), ни LLDB (дебаггера), ни отладочных сибволов для рантайма и стдлиба и наверняка ещё вороха тулз, которые гугы и эплы не хотят пилить под винду, и для сборки нативных бинарников юзаются нативные средства, но шиза почему-то от этого рвёт.

>>2253425
> так ещё и от МС вс
Не то чтобы был выбор. Можно конечно поебаться и собрать какой нибудь кланговский/гнушный тулчейн — но даже для их сборки придётся тащить MSVC ибо иначе ты с системными либами хуй чего слинкуешь, закрытая система как есть. Напоминаю: вендорлок — выдуманная хуйня.
Аноним 01/01/22 Суб 02:06:43 2253438239
>>2253427
Ко-ко-ко мы убивцы С++
@
100500 страниц холиваров на всех форумов мира.
@
Прошло почти 7 лет с релиза.
@
Поставьте пожалуйста средства разработки С++, иначе мы не соберёмся у вас.
Аноним 01/01/22 Суб 02:08:46 2253439240
00be7861d215393[...].jpg 83Кб, 750x477
750x477
>>2253438
@
ЕБАНЫЕ ТРАНСЫ ДАЖЕ ВЕНДОРЛОК НЕ МОГУТ АБАЙТИ!1
Аноним 01/01/22 Суб 09:58:09 2253485241
>>2249065
Прорешай ulearn.me, толку больше будет чем от книжки
Аноним 01/01/22 Суб 11:36:41 2253517242
>>2251139
Хули недооцененная то? Основной сайт вкатунов и не только
Аноним 01/01/22 Суб 11:44:37 2253521243
>>2251139
Там всего пару разделов написаны до конца и обновляются. Большая часть - это 4-5 глав с инфой за 2015 год.
Аноним 01/01/22 Суб 11:52:25 2253528244
>>2253437
Коварный МС не открывает нам коды линкера, чтобы мы могли стырить форкнуть код, который 7 лет написать сами не можем. Чет проиграл с этих угнетателей С++.
Аноним 01/01/22 Суб 12:13:07 2253551245
>>2253528
>написать сами не можем
>написать уже написанный тулчейн для платформы
Давай трезвей и заканчивай подливить уже.
Аноним 01/01/22 Суб 12:29:32 2253573246
Вопрос по структуре папок.
Вот я, на данный момент, придерживаюсь правила: Неймспейс отражает структуру папок, а папки вложены друг в друга.
Ну, т.е. как-то так:
Папки Data->Migrations->Sqlite
Неймспейс получается Data.Migrations.Sqlite

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

Так вот. В ходе изучения репок я видел что некоторые делают так:
Data
Data.Migrations
Data.Migrations.Sqlite

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

В общем. Как вы организуете все это дело? Может быть есть какой-то третий путь, который не имеет недостатков этих вот?
Аноним 01/01/22 Суб 12:38:36 2253585247
>>2253551
>гугы и эплы не хотят пилить под винду
Твои же слова, пьянь шизоидная.
Уже идет 7 год, а у вас экосистема намертво завязана на плюсы, которые вы там победили. В какой-то степени получилось, что всрали кроссплатформенность, потому что никто за бесплатно не хочет написать линкер на венде.
Вероятно, играться с синтаксимом и ломать его каждые 2 года куда интереснее, чем действительно сидеть работать.

Завязка на тулкит visual studio (6гигов) это фиаско, братан.
Аноним 01/01/22 Суб 12:41:19 2253589248
>>2253573
Организуй все по папкам, используй хоткеи чтобы найти нужный класс/файл, вместо серфинга по структуре.
Аноним 01/01/22 Суб 12:59:43 2253606249
16410243201720.jpg 64Кб, 640x480
640x480
>>2253585
Конечно ломать синтаксис каждые 2 года (чего не было уже 2 или 3 года) куда интереснее чем заниматься медвежьим трудом.

>Завязка на тулкит visual studio (6гигов) это фиаско, братан.
Фиаско винды, ты хотел сказать?
Аноним 01/01/22 Суб 13:10:23 2253611250
>>2253606
Ну да, а редакции 2015, 2018 и 2021 года, так от балды.
Я помню еще был момент между реакциями что-то ломали, но уже не пруфану.
Аноним 01/01/22 Суб 13:12:05 2253617251
>>2253606
>Фиаско винды, ты хотел сказать?
Где винда, а где твой SJW-программный код с пет проектами.
Аноним 01/01/22 Суб 13:12:40 2253618252
>>2253611
>реакциями
редакциями*
Аноним 01/01/22 Суб 13:17:19 2253622253
16409425556720.jpg 95Кб, 800x764
800x764
>>2253611
>Ну да, а редакции 2015, 2018 и 2021 года, так от балды.
А новые фичи по твоему ломают синтаксис?

>Я помню еще был момент между реакциями что-то ломали, но уже не пруфану.
Последний ломающий релиз был в 2018, за тебя пруфану
https://doc.rust-lang.org/edition-guide/rust-2018/index.html

>>2253617
>пук сночала добейся среньк
Аноним 01/01/22 Суб 13:24:13 2253629254
Не кормите шизика, он ноулайфер нигилист, который отрицает любое мнение (во всех тредах) лишь бы пофлудить. Причем виляет жопой даже когда его откровенно тычут носом в факт.
Аноним 01/01/22 Суб 14:32:51 2253666255
Я тупой.
Поясните за DI в текущем виде в asp.

Ну, вот допустим, у меня есть класс. Я зарегал его как Scoped. Допустим в этом классе в конструкторе я прошу дать мне еще несколько классов. При этом все классы просют DbContext какой-то. Правильно ли я понимаю, что все классы получат один и тот же инстанс и если я в одном из классов руками закрою или задиспозю контекст - в остальных - он тоже будет задиспозин?
Просто у меня создалось впечатление что да.
Аноним 01/01/22 Суб 16:34:59 2253731256
>>2253666
Тебе не ответят, слишком плохие цифры выпали. Попробуй сходить на исповедь в java тред.
Аноним 01/01/22 Суб 18:05:34 2253790257
Как работать со всякими библиотеками dll и so? Хочу с ффмпег поиграться. Может так больше контроля будет, чем через cli wrap и пайплайны
Аноним 01/01/22 Суб 20:09:04 2253853258
>>2253666
>Просто у меня создалось впечатление что да.
А почему бы тебе не взять и не проверить ручками, как оно на самом деле?
Аноним 02/01/22 Вск 10:14:33 2254085259
Мне кажется микрософты ни когда не выпустят вижлу на линупс и не будет кроссплатформенных десктопных приложений. Всё это обман. Они купили Моно, чтобы его удушить, а не развивать.
Аноним 02/01/22 Вск 10:44:23 2254088260
>>2254085
Пчел, VS нет нигде кроме винды и никогда не будет, потому что она написана на WPF. На маке там просто обрубок.
Аноним 02/01/22 Вск 10:55:27 2254092261
>>2254085
>Они купили Моно, чтобы его удушить, а не развивать.
Моно они купили за полгода перед выпуском .NET Core, подумай зачем.

>не будет кроссплатформенных десктопных приложений
Не нужно. А как ты себе это представляешь? Все кросс-платформенные ГУИ - это дикий ужас, не говоря уже о том, что на выходе получается говно. Разве что джабаскрипт в вшитом браузере гонять.

Если мы даже говорим про шиндоус, то WinForms - едиственный вменяемый, не убитый, ГУИ фреймворк ноудискас, а ты кросс-платформенный ГУИ просишь.
Аноним 02/01/22 Вск 11:18:16 2254096262
>>2253666
>все классы получат один и тот же инстанс
Если ДбКонтекст зареган как скоупт, то получат один и тот же.
>он тоже будет задиспозин?
Если это будет один и тот же объект, то очевидно, что да. Но не ты создавал объект, не тебе и диспозить. Плюс контекст обычно регают через специальный метод расширения, поэтому лучше посмотри для чего нужны и чем отличаются AddDbContext/AddDbContextPool AddDbContextFactory/AddPooledDbContextFactory.
Аноним 02/01/22 Вск 11:22:38 2254099263
>>2254088
>На маке там просто обрубок.
На маке не обрубок, а другая иде, бывшая xamarian studio.
>>2254085
>вижлу на линупс и не будет кроссплатформенных десктопных приложений
Шизик, плиз. Во-первых, они уже есть, во вторых под пинус есть райдер.
Аноним 02/01/22 Вск 11:27:03 2254100264
bebe.png 7Кб, 648x290
648x290
Ковыряясь в либах асп коре, я вижу, что там много всего обвешано логгерами. Но почему оно не выводится даже при установленном логлевеле в трейс? Я могу как-то увидеть эти логи?
Аноним 02/01/22 Вск 11:43:27 2254115265
>>2254100
Вроде настроил. Переместив конфигурацию логинга из appsettings.Development.json в appsettings.json. Хотя установлен "ASPNETCORE_ENVIRONMENT": "Development" и вроде как у appsettings.Development должен быть приоритет. Буду копать дальше
Аноним 02/01/22 Вск 11:50:09 2254119266
>>2254115
Ладно, я всё понял. Пить надо меньше.
Аноним 02/01/22 Вск 11:53:40 2254122267
>>2254099
>На маке не обрубок, а другая иде, бывшая xamarian studio.
"Другая иде" называется Visual Studio, очевидно что анон ожидает увидеть не полумёртвую кусок говна с 1/5 функционала студии и апдейтами раз в 3 года.

>Шизик, плиз. Во-первых, они уже есть, во вторых под пинус есть райдер.
1) Чел говорит про майкрософт;
2) У КРОССПЛАТОРМЕННОГО дотнета единственная нормальная кроссплатформенная иде написана на жабе, которую он убивает. Ару.
Аноним 02/01/22 Вск 12:04:51 2254131268
>>2254092
>Не нужно.
От мантры какого-то кодера конечно весь бизнес одумается и пойдёт хуярить нативный софт под каждую платформу. Нет, будем жрать говно на электроне.

>>2254085
Вижлы точно не будет.
А в плане гуя, вроде есть какие-то потуги в плане нового тулкита:
https://devblogs.microsoft.com/dotnet/introducing-net-multi-platform-app-ui/
https://github.com/dotnet/maui
что-то Flutter/SwiftUI подобное (т.е. react inspired, со всей жопаболью стейтменеджмента и лагами которую он вызывает).
Аноним 02/01/22 Вск 12:16:40 2254140269
>>2254131
Шизик, что переписывтаь? Методичку обнови.

Те кто, кто писали windows-only b2b - им и так норм и никто ничего переписывать не будет.

Маленькие кампании уже давно делают под веб, поэтому тут тоже никто ничего переписывать не будет.

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

Итог: никому по факту кросс-платформенный новый декстопный фреймфорк от майкрософта уже и не нужен.
Аноним 02/01/22 Вск 12:28:00 2254142270
>>2254122
>иде написана на жабе
Все что жабе остается - обслуживать дотнет инфрастуктуру.
Аноним 02/01/22 Вск 12:55:54 2254152271
>>2254140
>Шизик, что переписывтаь?
Ну ты идёшь и цитируешь где там было что-то про переписывание, дислексик ёбаный.

>нет и нинужна(9
Вот это аналитика рынка от энтерпрайз макаки.
Аноним 02/01/22 Вск 12:57:29 2254153272
>>2254142
>дотнет инфрастуктуру
Которая настолько кросплатформенная, что через 20 лет на ней не написан даже тулкит для работы с ней. Ну прямо-таки новые жопаскриптеры, которых весь мир обслуживает, хех.
Аноним 02/01/22 Вск 13:03:32 2254157273
WindowsForms.jpg 38Кб, 667x230
667x230
20 лет разработки. Итоги.
Аноним 02/01/22 Вск 13:40:26 2254171274
>>2254131
Как оно работать будет, если даже сейчас компилируются разные файлы в разных ОС? Надо будет отдельно для каждой ОС собирать свою сборку. В чём кроссплатформенность заключается и нафига тогда нужны виртуальные машины, если всё равно не совместимо?
Аноним 02/01/22 Вск 13:57:37 2254183275
>>2254157
>20 лет разработки. Итоги.
В итоге даже не научился сборки подключать? Печально.
Аноним 02/01/22 Вск 14:00:47 2254185276
>>2254183
Раньше она сама подключалась
Аноним 02/01/22 Вск 14:01:46 2254186277
>>2254185
В консольном-то проекте? Ну-ну.
Аноним 02/01/22 Вск 14:07:31 2254189278
ReleaseBuild.jpg 30Кб, 615x142
615x142
Допустим, я написал свою прогу. Откомпилировал в релиз версии. И что мне вот все эти файлы надо передавать на другой комп, чтобы работало? Или можно выкинуть всё кроме ехешника?
Аноним 02/01/22 Вск 14:18:42 2254193279
>>2254152
>цитируешь где там было что-то про переписывание

>конечно весь бизнес одумается и пойдёт хуярить нативный софт под каждую платформу
>одумается и пойдёт хуярить нативный софт

Имелось в виду, что никто никуда не пойдет ничего писать под нативный софт, потому что кому надо, уже давно это делают, а днище-конторы не нужны. Но психичка придирается к словам, ок.
Аноним 02/01/22 Вск 14:20:59 2254195280
>>2254189
Только exe нужен, просто output папка одна у тебя, там и exe и файлы, которые нужны были для сборки.
Аноним 02/01/22 Вск 14:33:16 2254211281
ReleaseBuild2.jpg 20Кб, 617x110
617x110
>>2254195
Не работает просто ехе. Методом научного тыка выяснил, что нужны 3 файла для запуска. Если хоть одного нет, то ничего не работает.
Аноним 02/01/22 Вск 14:38:32 2254215282
Аноним 02/01/22 Вск 14:40:07 2254216283
>>2253199
Ясно, спасибо. Теперь гораздо понятнее как оно работает. Только что точно можно оттуда почерпнуть так это то, что await генерирует таск даже, если ждать не пришлось вообще.
Но что тогда лучше делать, если скорее всего результат вернётся сразу?
Тянуть до самого верха async/await в логике, которая чаще всего выполняется синхронно?
Сесть и подумать как ты слепил говнину, в которой столкнулся с такой проблемой? Или это распространённый случай?
Аноним 02/01/22 Вск 15:24:15 2254245284
>>2254215
А вот в Джаве можно собрать один jar-файл и он спокойно запустится без перекомпиляции на 7 миллиардов устройств.
Аноним 02/01/22 Вск 15:54:33 2254293285
>>2254245
Почему тогда все приложения сложнее хелоуворда имееют отдельные дистрибутивы по каждую ос (dbeaver/smartgit/miecraft) даже если брать только бинарики без инсталлеров? Неудобно получается.
Аноним 02/01/22 Вск 16:32:54 2254326286
>>2254193
Мало того что читать не умеешь, так ещё и писать? Хуёво быть тобой.
Ну раз уже тебе нинужна, то наверно оно так и есть.

>>2254171
Да за тебя там скриптики напишут которы бандлы для систем будет раскладывать, проблем-то. Тащемта, вся кроссплатформа именно так и работает, а запустить где угодно скомпилировав 1 раз можно разве что консольную жава утилиту, кек.
Аноним 02/01/22 Вск 16:54:23 2254375287
>>2254189
-Либо нужно рантайм .NET на компе,
-Либо собираешь все dll в одну папку
-Либо вообще все в один файл (не работает с Net 6 для 7 винды).
Но тогда твой хеллоу ворд в exe будет весит мегов 60, за то один exe.

Если хочешь распространять софт и пишешь под последний .NET, то нужен уже упаковывать в какой-то инсталлер, который будет предлагать ставить нужный тебе .NET (либо по аналогии боли С++, собирай в такой древний рантайм, который был бы у многих).
Аноним 02/01/22 Вск 16:54:52 2254376288
>>2254189
-Либо нужно рантайм .NET на компе,
-Либо собираешь все dll в одну папку
-Либо вообще все в один файл (не работает с Net 6 для 7 винды).
Но тогда твой хеллоу ворд в exe будет весит мегов 60, за то один exe.

Если хочешь распространять софт и пишешь под последний .NET, то нужен уже упаковывать в какой-то инсталлер, который будет предлагать ставить нужный тебе .NET (либо по аналогии боли С++, собирай в такой древний рантайм, который был бы у многих).
Аноним 02/01/22 Вск 16:58:01 2254382289
>>2254245
А вот если бы джава развивалась, то запускалась бы так же через экзешник.
Аноним 02/01/22 Вск 17:00:34 2254394290
>>2254375
>либо по аналогии боли С++
Не понятно что за боли, но вместе с C++ но выглядит очень кеково.
Аноним 02/01/22 Вск 17:09:32 2254412291
>>2254394
Где ты слово вместе С++ увидел? Речь про то, что последние рантаймы шарфа (и С++), не всегда у всех стоят, поэтому приходится собираться под древний рантайм.
Аноним 02/01/22 Вск 17:09:52 2254413292
>>2254382
В жабе сейчас есть jlink и jpackage, и судя по постам выше это мало чем отличается от дистрибьюции .net высеров
мимо
Аноним 02/01/22 Вск 17:11:10 2254416293
>>2254099
>райдер
Как его ломануть?
Аноним 02/01/22 Вск 17:26:42 2254444294
Снимок экрана 2[...].png 1075Кб, 1028x990
1028x990
>>2254099
>На маке не обрубок, а другая иде, бывшая xamarian studio.
Ахацхахфафхаахах умираю нахуй

Дотнет. 20 лет. Итоги.
Аноним 02/01/22 Вск 17:31:53 2254447295
14870561.jpg 263Кб, 900x900
900x900
>>2254412
Я увидел
>боли С++
дислексик, пиздуй в библиотеку а не на сосаче сиди.

>Речь про то, что последние рантаймы шарфа (и С++)
Вот с этого опять крикнул. В плюсах рантайм 10-15 мб весит и линкуется к бинарнику одним флагом, что и кому там приходится?
Аноним 02/01/22 Вск 17:34:56 2254452296
>>2254413
После инцидента с log4j, люди начнут в тройне осторожнее относиться к ноунейм высерам на жабе.
Без официальной поддержки, такое страшно юзать.
Аноним 02/01/22 Вск 17:37:54 2254462297
>>2254452
А что сделать сборку для дотнета, её надо подписывать ЭЦП. А цены на ЭЦП ты видел? Одно Крипто-Про - цена половины проекта будет.
Аноним 02/01/22 Вск 17:37:57 2254463298
>>2254447
То-то закачки "Visual C++ Redistributable Packages 201х" стали мемом
Аноним 02/01/22 Вск 17:39:30 2254465299
>>2254462
Десктопщики должны страдать
Аноним 02/01/22 Вск 17:48:01 2254479300
Аноним 02/01/22 Вск 17:50:45 2254481301
>>2254452
> Без официальной поддержки
Йобу дал? Это официальный упаковщик, оракл это говно и ещё пару штук для дистрибьюции почти 10 лет пердолили. Но оказалось никому не нужно, потому что клиенской практически не существует.
Аноним 02/01/22 Вск 17:51:25 2254483302
14870561.jpg 263Кб, 900x900
900x900
>>2254444
>2015: майкрософт покупает замарин, ЖАВА НИНУЖНА, ТЕПЕРЬ КРОССПЛАТФОРМА ПОД ДОТНЕТОМ!1
>2022: пук срень установите пожалуйсто моно иначе визуал студио фор мак низапуститца(9
Аноним 02/01/22 Вск 18:03:28 2254503303
image.png 45Кб, 200x150
200x150
>>2254483
2020 год, жабисты все еще путают кроссплатформу дотнета
c IDE (которая даже не оригинальная visual studio).
Конечно Visual Studio и дотнет это же одно и тоже.
Аноним 02/01/22 Вск 18:12:47 2254507304
>>2254444
Моно всё ещё на фреймворке работает? Они его не планируют на Core переводить?
Аноним 02/01/22 Вск 20:48:30 2254644305
А вы смотрите Сергея Берегового?
Аноним 02/01/22 Вск 20:54:00 2254649306
Аноним 02/01/22 Вск 22:44:44 2254741307
>>2254644
>>2254649
>Кто умеет, тот делает; кто не умеет, тот учит других.
Ни разу не видел чтобы кто-то что-то полезное выложил, везде рассказывают про базовые конструкции, ифы, типы, или же абстрактно болтают об высоком (абстрактном).

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

Ничего нет посмотреть по программированию. Либо новичковая параша, или бестолковые и скучные подкасты, от которых засыпаешь.
Аноним 02/01/22 Вск 23:17:06 2254756308
mCHKwdj8QdILYh8[...].gif 2011Кб, 540x540
540x540
>>2254503
>нинужна!1
Ох уж эти манявры. Столько пиздежа, и по итогу единственная кроссплатформенная иде на дотнете — перекрашенный опенсорс проект на попенсорсной версии дотнета...
Аноним 02/01/22 Вск 23:17:59 2254757309
>>2254507
Не ебу что они планируют, но что (моно/визуал/ксамарин) студия на моно работает — факт.
Аноним 02/01/22 Вск 23:48:58 2254782310
>>2254756
>VS никогда не была кроссплатформенным.
>Джава баран пытается троллит тем, что VS не кроссплатформенный.
Либо додик перепил или пориджы совсем отупели.
Аноним 02/01/22 Вск 23:50:17 2254784311
>>2254757
MAUI они пытаются сделать.
Аноним 02/01/22 Вск 23:55:06 2254788312
>>2254741
>Ничего нет посмотреть по программированию. Либо новичковая параша, или бестолковые и скучные подкасты, от которых засыпаешь.
А ты попробуй читать. Есть такая штука - книги называется.
Аноним 03/01/22 Пнд 00:24:36 2254807313
>>2254788
Мне нужен информационный материал по программированию, поридж предлагает учебный. изучай синтаксис до посинения
Аноним 03/01/22 Пнд 00:28:45 2254810314
Признайтесь честно - линукс парню здесь делать нечего. Его знания не пригодятся. Все пропитано корпоративным духом винды. В каждой вакансии плюсом iis, sharepoint, и т.д. В хелловорлде интеграция с азурой. Нельзя как нормальных стеках начать с табула раза и по пути выбирать что тебе по душе, по карману и по карме.

https://www.youtube.com/watch?v=fn1R-5p_j5c
Аноним 03/01/22 Пнд 00:40:26 2254815315
>>2254810
@
40% новый пользователей в дотнете это следствие появления .Net Core.
@
Мягкие настолько вдохновляются, что делают core по умолчанию и объединяют все под линейками Net 5, Net 6.
@
Дотнетчики Net Framework ощутимо в офигивают.
@
Даже xamarin и mono пытаются привести к общему виду, максимально унифицировать интерфейс.
@
ASP.NET под линуксом показывает очень хорошие результаты на уровне неуправляемых языков - С++ и Раста. Спринг просто сосёт.
@
Но специалист из /зк, изучив объективные данные своего мухосраня, решил признаться честно за всю индустрию тупая макака из жабы пытается в троллинг, но очень глупа и поэтому получается только пук и среньк
Аноним 03/01/22 Пнд 00:42:42 2254817316
>>2254810
>линукс парню здесь делать нечего
Зато ему есть что делать там, где надо в жопу ебаться
Аноним 03/01/22 Пнд 00:53:03 2254820317
>>2254807
Пиздуй в тик-ток, поридж. Я уверен, что для вас даунят там уже есть какие-нибудь видосы "по программированию".
Аноним 03/01/22 Пнд 00:56:03 2254821318
>>2254815
Ради интереса спрашиваю, есть ли нормальные примеры проектов на asp.net core? Например что-то по типу https://github.com/spring-projects/spring-petclinic
Пока выходные хочу потрогать asp, может на него со спринга когда-нибудь перекачусь
Аноним 03/01/22 Пнд 00:58:42 2254824319
>>2254815
Я не джавист. Я хочу в серьезный стек свичнуться. Но сейчас объективно нельзя начать на net 6. Нужно знание кучи легаси и мухосрань тут не причем, все умеют пользоваться хх. Может лет через 5...
Аноним 03/01/22 Пнд 01:17:50 2254832320
>>2254784
Очевидная хуита для мобилок.
Аноним 03/01/22 Пнд 01:23:32 2254834321
>>2254815
>Даже xamarin и mono пытаются привести к общему виду, максимально унифицировать интерфейс.
Ага, седьмой год приводят и всё никак. А хайпа-то было когда замарин покупали.

> 40% новый пользователей в дотнете это следствие появления .Net Core.
По каким данным? От тех же маркетолухов, которые студию на всех платформах обещали?
Аноним 03/01/22 Пнд 01:26:09 2254836322
>>2254815
>Но специалист из /зк, изучив объективные данные своего мухосраня, решил признаться честно за всю индустрию
Ну анон выше пояснил за ненужность кроссплатформенного гуя, а этот пояснил за ненужность дотнета. Зк — это площадка свободомыслия для шизов, спок, фанбой.
Аноним 03/01/22 Пнд 01:27:41 2254837323
>>2254821
Был бы программистам, знал бы что есть поиск в гитхламе и что по наймспейсу или классам или зависимости можно найти туеву кучу того что тебе нужно

>>2254824
Через 5 лет будет .NET 11 и ты будешь тут ныть, что нельзя писать ничего на NET 11, и вообще надо опять ждать.

>>2254820
А если бы промолчал и не показал свою некомпетентность, не порвался бы так при людях.

>>2254832
И снова пук и среньк
Аноним 03/01/22 Пнд 01:33:02 2254839324
Чем студия 2022 отличается от студии 2013 какой-то?
Аноним 03/01/22 Пнд 01:34:12 2254841325
>>2254839
Большим количеством кода на шарпе и меньшик количеством кода на плюсах. И вытекающими лагами.
Аноним 03/01/22 Пнд 01:34:26 2254842326
image.png 46Кб, 1540x190
1540x190
>>2254834
Не знаю имеют ли смысл пруфать что-то троллю.

Ты же знаешь, что в скандинавской-айтишной мифологии, будучи троллем, если ты получаешь пруф, ты теряешь одну извилину и так пока не превратишься в камень.
Аноним 03/01/22 Пнд 01:40:11 2254844327
>>2254842
Гладкий моск фанбоя размером с фисташку как обычно продолжает неиронично принимать информацию от топ кабанчиков. И клеймить всех критически настроенных к подобному пиздежу троллями. Классика.
Аноним 03/01/22 Пнд 01:42:28 2254845328
Увидел, что в райдере оказывается можно одним кликом смотреть исходники классов стандартной библиотеки, типа Dictionary, Math и т.п.
А в студии так можно?
Пробовал нажимать F12, но вместо кода она показывает какую-то парашу (throw null вместо тела любого метода).
Аноним 03/01/22 Пнд 01:50:10 2254850329
>>2254844
Если перестать принимать информацию, можно превратиться в камень. Будь осторожен.
Аноним 03/01/22 Пнд 01:51:24 2254851330
>>2254845
Ты не должен воспринимать, что дотнет это сразу VS. Юзай что удобнее или практичнее.
Аноним 03/01/22 Пнд 01:54:59 2254857331
>>2254850
>пук
Я хуею с наивности анальников конечно. Ты наверно ещё предвыборным обещаниям веришь, да, поридж?
Аноним 03/01/22 Пнд 09:09:44 2254891332
>>2254845
Да даже если бы райдер сам код писал, то это не отменяет того факта, что он платный.
Аноним 03/01/22 Пнд 09:47:20 2254910333
Получается, что все вакансии на сишарп - это фуллстек, немного бэкенда, а основная нагрузка - это фронтенд? Получается помимо сишарпа надо учить ещё жабаскрипт/тайпскрипт и фреймворк типа ангуляра/реакта?
Аноним 03/01/22 Пнд 13:00:51 2255021334
>>2254910
Да, а что ты хотел? Какой-то ультрахайлоад на шарпе не пишут, большой бекенд тоже редко. Остаются только небольшие галеры, где важнее нахуярить нормально фронт, а бекенд оставить как прослойку между фронтом и БД.
Аноним 03/01/22 Пнд 13:01:51 2255022335
Аноним 03/01/22 Пнд 13:06:01 2255027336
>>2255021
Обиженный тролль из раст треда (скорее всего просто качающий между тредами шизик) пытается манипулировать фактами, создавая неудобные наводящие вопросы.

Аноним 03/01/22 Пнд 13:08:32 2255030337
>>2255027
Ты тот самый фанбой шарпа? Тебе же лет 13-15, верно? Ну ничего страшного, в твоем возрасте я тоже любил троллить двач и засирать треды. Только лучше делай это в /b, а не в тематике.
Аноним 03/01/22 Пнд 13:10:01 2255032338
>>2255027
>создавая неудобные наводящие вопросы
>неудобные вопросы
проиграл
Аноним 03/01/22 Пнд 13:15:03 2255035339
>>2254810
>Признайтесь честно - линукс парню здесь делать нечего
Более того, линукс парню вообще делать нечего!
Сколько шизов грезило кроссплатформой, а на деле под линукс в десктопе толком ничего и не пишут. Одни только формочки-мордочки поверх каких-то консольных команд/файлов. Про геймдев я вообще молчу.

Линукс это 1-2% пользователей, которых еще тщательно отъедает макось. Получается, что кроме сетевых серверных технологий на линуксе заняться больше нечем.
О чем ты вообще?

Аноним 03/01/22 Пнд 13:20:27 2255039340
>>2255035
Чел, ты раздел перепутал. Это не /vg Каких пользователей?
Аноним 03/01/22 Пнд 13:27:53 2255044341
>>2254851
Ты не должен воспринимать, что еда это сразу хлеб. Если хлеб чем-то не устраивает, юзай пирожные.
Аноним 03/01/22 Пнд 13:32:45 2255049342
>>2255035
Сейчас бюджетные конторы переходят на отечественную ось (линупсы) и им нужны аналоги десктопных программ из венды. Это золотая жила! Но из-за нерасторопности микрософтов шарф оказывается в пролёте.
Аноним 03/01/22 Пнд 13:46:59 2255058343
>>2255049
Есть avalonia.

>Сейчас бюджетные конторы переходят на отечественную ось
На моей памяти они переходят уже 15 лет.
Аноним 03/01/22 Пнд 13:51:45 2255060344
>>2254845
ctrl+клик разве не работает? Для крестов вроде бы работало
Аноним 03/01/22 Пнд 13:52:01 2255061345
>>2255058
Не получается, нет замены ПО, а работу надо выполнять каждый день. Невозможно закрыть учреждение и вывесить табличку: услуги не оказываем, ждём когда погроммисты напишут новые программы.
Аноним 03/01/22 Пнд 14:03:11 2255064346
>>2255060
Только сигнатуры методов. В райдере насколько я понимаю встроенный dotPeek. Но честно как-то похуй, с детства пользуюсь ILSpy.
Аноним 03/01/22 Пнд 14:04:56 2255065347
>>2255049
1С из браузера работает.
На OpenOffice кабаны уже шильдик повесили в реестр внесли.
А ещё то чего не хватает? Потребности на 95% покрыты.
Остальные потребности специфические, местечковые и малочисленны, и там ловить нечего.
Аноним 03/01/22 Пнд 14:24:29 2255081348
"Я не умею читать, что посмотреть?" на английском по WPF на ютабе?
Аноним 03/01/22 Пнд 14:39:02 2255097349
>>2255081
Буд-то кто-то знает что тебе надо. Если просто поаутировать и обмануть себя типа ты обучаешься, то вот чел
https://www.youtube.com/user/xamltv
Аноним 03/01/22 Пнд 16:06:27 2255161350
>>2255044
Терпеть не могу хлеб, ем все без него.
Аноним 03/01/22 Пнд 16:08:22 2255164351
Сука какая же боль изучать ef по древней книге 17ого года, где часть примеров просто нахуй не работает
Аноним 03/01/22 Пнд 16:12:11 2255167352
>>2254910
>Получается, что все вакансии на сишарп - это фуллстек, немного бэкенда, а основная нагрузка - это фронтенд?
Нет, не все.

>Получается помимо сишарпа надо учить ещё жабаскрипт/тайпскрипт и фреймворк типа ангуляра/реакта?
Сейчас реалии таковы, что js нужно учить практически всем кто хоть немного связан с вебом. Увы.
Аноним 03/01/22 Пнд 16:18:36 2255173353
>>2255164
Есть же "Entity Framework Core in action" Джона Смита 2021-го года.
Аноним 03/01/22 Пнд 16:21:35 2255177354
>>2255173
Ну там чисто по всему EF. Потом накачу
Мне бы просто ознакомиться, а модуль у Троелсена пиздец устаревший.
Аноним 03/01/22 Пнд 17:09:49 2255205355
>>2255173
Это всё на английском только. На русский такие книги не переводят.
Аноним 03/01/22 Пнд 17:12:58 2255209356
Я только вкатываютсь, поэтому такой вопрос

Есть ли принципиальная разница в кодовой базе и архитектурах между аналогичными технологиями .Net и Core? Вот к примеру, как сильно отличаются ASP.NET на технологиях винды от нового оупенсорсного брата? Нужно ли мне изучать два фреймворка будет потом, или достаточно изучить Core, как самый новый, и при этом я смогу писать под старый (естесно с небольшими правками за счет версионности?
Аноним 03/01/22 Пнд 17:42:32 2255218357
>>2255205
Ужас какой. Но ведь для того чтобы быть нормальным программистом английский знать необязательно, правда ведь?
Аноним 03/01/22 Пнд 17:43:26 2255219358
>>2255209
Учи новый. А если предложат писать на старом - беги.
Аноним 03/01/22 Пнд 18:24:56 2255241359
>>2255219
Почти все вакансии в моей мухосране на старом .Net
Аноним 03/01/22 Пнд 18:32:44 2255252360
>>2255241
Но ведь работать программистом можно удаленно из любой точки мира
Аноним 03/01/22 Пнд 18:35:12 2255254361
>>2255218
Если бы мне нравилось заниматься переводами с английского, то я бы пошёл в переводчики и зарабатывал бы больше, чем какой-нибудь программист, которые уже не нужны, с ними уже борются.
Аноним 03/01/22 Пнд 18:41:55 2255257362
>>2255241
Ну если так стоит вопрос и ты уверен что вот прямо пойдешь туда работать, то учи старый. В принципе там не особо большая разница (хотя, честно говоря, я х.з. как это с точки зрения новичка). Но я бы на твоем месте поискал нормальную удаленку с современным стеком.
Опять же смотри. Старый стек подразумевает, что у тебя типа есть какой-то опыт. А новичок в 2022-м году изучающий его, а не Core, вызывает подозрения.
Аноним 03/01/22 Пнд 18:48:06 2255264363
>>2255254
>мне нравилось заниматься переводами с английского
При чем тут нравится или нет. Умеешь в английский - берешь и просто читаешь. Без превозмоганий и мучений. Не умеешь - ну тогда не жалуйся, что на твоем языке только просроченная инфа имеется.
Аноним 03/01/22 Пнд 20:06:53 2255302364
В чем отличие CookieAuthenticationOptions.ExpireTimeSpan от CookieAuthenticationOptions.Cookie.MaxAge? Я так понимаю maxage это для браузера, а ExpireTimeSpan для серверной валидации. И если это так должен ли MaxAge быт больше, чем ExpireTimeSpan?
Аноним 03/01/22 Пнд 20:54:45 2255317365
Аноны. Вопрос тупого новичка.
Есть OData контроллер который через GET запрос вытаскивает разные данные из БД и отдает их в виде IActionResult на фронт. Мне нужно сделать так, чтобы данные типа double отдавались на фронт в виде string'а. Я понимаю что это можно сделать через фильтр, но что в нем делать с ответом?
Аноним 03/01/22 Пнд 21:48:32 2255345366
Аноним 03/01/22 Пнд 21:52:58 2255348367
>>2255302
Оба это аттрибуты куки для браузера. Разница в формате, в max age это секунды, в expires это конкретная дата.
Если заданы оба то у max age приоритет
Аноним 03/01/22 Пнд 22:26:10 2255377368
>>2255348
А ты не путаешь CookieAuthenticationOptions.ExpireTimeSpan и CookieAuthenticationOptions.Cookie.Expiration? Первый это часть тикета, который храниться внутри куки в зашифрованном виде.
Аноним 03/01/22 Пнд 23:06:29 2255402369
>>2255377
Да, не заметил что в одном случае к тикету относится а не к кукам.
Тогда да, все верно.
>>2255302
>И если это так должен ли MaxAge быт больше, чем ExpireTimeSpan?
Зависит, если есть смысл в том, чтобы браузер слал куку которая на деле уже Expired - то, если смысла в этом нет - то нет, ставь равными значениями или MaxAge меньшим
Аноним 03/01/22 Пнд 23:07:02 2255403370
>>2255402
>которая на деле уже Expired - то
то да
Аноним 04/01/22 Втр 15:24:18 2255780371
Здравствуйте, извините за очень неофитовый вопрос - можно ли как-то в asp.net core хранить и использовать данные в контексте текущей сессии на стороне сервера. У меня проект - обычные тесты какая ты фея винкс, вопросы хранятся в базе - при загрузке вопроса идет js fetch на урл апи контроллера который возвращает данные вопросов/ответов. Было бы очень удобно не ебаться с перекидкой кучи айдишников по типу какой конкретно вопрос нужно достать, айдишники на отправку запроса для следующего вопроса и т.д., а просто делать fetch без всех этих параметров и на стороне контроллера сразу хранить всю нужную инфу в сессии на стороне сервера. На всех страницах у меня стоит [Authorize].
Аноним 04/01/22 Втр 16:46:50 2255869372
Иногда студия генерит код с аттрибутом DisallowNullAttribute. Вот пример такого кода:
public int GetHashCode([DisallowNull] string obj)
{ throw new NotImplementedException(); }

Студия добавляет этот атрибут, даже не смотря на то, что во всём проекте используется <Nullable>enable</Nullable>. Имеет ли это какой-то смысл?
Аноним 04/01/22 Втр 17:57:23 2255926373
Мне нужно имплементировать IEqualityComparer<string>. Строки он должен сравнивать как обычный чувствительный к регистру строковый компарер. Но есть следующие отличия:
1. все пробельные символы слева и справа должны игнорироваться. Внутренние несколько пробельных символов должны считаться одним пробелом.
2. есть наборы символов синонимов, которые должны интерпретироваться как одинаковый символ. Например, разные символы умножения (*, x (eng), х (ru), ×, ·) или же цифры (3, ³).

Как реализовать bool Equals(string? x, string? y) ???
Мне видится два подхода:
1. сделать x.Trim(), x.Replace(...), то же для y. Возможно самому заменятель, чтобы он один раз пробегался по всем символам и была бы только одна дополнительная аллокация нового стринга. Тут проблема в том, что доп. аллокация будет и в Equals, и в GetHashCode.
2. Написать свой компарер, который не будет ни разу ничего аллоцировать, а будет работать только пробегаясь по исходным стрингам. Но это что-то сложно кажется. Даже не знаю, как подступиться по нормальному.

Что посоветуете? Может есть готовый компарер с наборами символов-синонимов?
04/01/22 Втр 19:55:44 2256046374
Двач помоги. Как на C# можно объявить переменную с именем по значению другой переменной... На Пыхе это просто:
$a = 'myvar';
$$a='myvalue';
echo $myvar;
---------------
myvalue
Аноним 04/01/22 Втр 20:04:50 2256061375
>>2256046
Тебе еще может eval дать? Меняй подход, это статический ЯП.
Аноним 04/01/22 Втр 20:27:32 2256083376
Скрываю нахуй этот тред.

Твари джависты, давно уже здесь обосновались.

В этот раз молодцы, снимаю шляпу, очень тонко скатили тред, не доебешься.
мимо миддл
Аноним 04/01/22 Втр 20:33:10 2256089377
04/01/22 Втр 20:37:10 2256096378
12.gif 63Кб, 1443x905
1443x905
>>2256061
А как тогда не городить китайский код (копипастинг одного и тогог же) в таком коде?
Аноним 04/01/22 Втр 20:46:14 2256108379
>>2256096
Остановись пока не поздно.
Аноним 04/01/22 Втр 20:57:15 2256119380
>>2256096
var dick = new Dictionary<string, Dictionary<string, string>>();
foreach (var field in fields) {
dick.Add(field, stmt.getDic(field))
}
Аноним 04/01/22 Втр 21:02:18 2256125381
>>2256119
Dictionary<string, Dictionary<int, string>>
Аноним 04/01/22 Втр 21:04:05 2256126382
>>2256096
>>2256119
> new Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary>>>>>
У вас есть классы, интерфейсы, наследование, агрегация и прочие радости, но нет не хочу делать типы, которые будут описывать сущности в коде, хочу ебланить и пердолить изуверские конструкции.
04/01/22 Втр 21:04:12 2256127383
>>2256125
Смысл понял, большое спасибо!
Аноним 04/01/22 Втр 21:09:14 2256132384
>>2256126
Для сущностей есть классы/структуры. Сбрызни чудо растер.
Аноним 04/01/22 Втр 21:52:39 2256148385
>>2256132
Есть. Но ты зачем-то лепишь франкенштейнов.
Аноним 04/01/22 Втр 22:04:00 2256152386
>>2256126
> new Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary<string, Dictionary>>>>>
Сразу раст вспомнил, лол.
Аноним 04/01/22 Втр 22:09:00 2256157387
>>2256148
Будущий шарфо-мэн попросил объяснить как представить из динамико-дресни в статику-дресню концепцию динамического связанного списка, я ему и показал. А то что он там словарь прикручивает, так это его желание. Сбрызни, ржавый
Аноним 04/01/22 Втр 23:10:06 2256196388
>>2256157
Ты ему показал как блевотину заменить дриснёй. А он теперь по-незнанию так и сделает и это будет на твоей совести.
Аноним 05/01/22 Срд 14:25:38 2256533389
1. Почему кто-то еще работает на внутреннем рынке, когда такое большое количество вакансий для удаленки? И не везде требуется английский. Мидлам предлагают 3к+ зеленых, неужели мидлы в России получают больше?
2. Сколько приблизительно времени требуется для подготовки к собеседованию на тему структуры данных и алгоритмы?
Аноним 05/01/22 Срд 14:25:58 2256536390
1. Почему кто-то еще работает на внутреннем рынке, когда такое большое количество вакансий для удаленки? И не везде требуется английский. Мидлам предлагают 3к+ зеленых, неужели мидлы в России получают больше?
2. Сколько приблизительно времени требуется для подготовки к собеседованию на тему структуры данных и алгоритмы?
Аноним 05/01/22 Срд 14:46:31 2256557391
>>2256536
>Сколько приблизительно времени требуется для подготовки к собеседованию на тему структуры данных и алгоритмы

Смотря в какое место. Тот же тинькофф требует, чтобы ты умел решать задачи на динамическое программирование уровня "хард" на литкоде. А есть места, где тебя максимум попросят односвязный список развернуть.
Аноним 05/01/22 Срд 15:49:47 2256596392
>>2256536
>Почему кто-то еще работает на внутреннем рынке, когда такое большое количество вакансий для удаленки?
Потому что у людей семьи, ипотеки, люди хотят стабильную и понятную работу, уверенность в завтрашнем дне. Люди хотят спокойно просыпаться по утрам и пусть лучше каждый день будет днём сурка, чем новым приключением.

>структуры данных и алгоритмы?
Это спрашивают не потому, что это нужно в деле, а просто потому что это маркер, который легко проверить и легко отсеять лишних. Соизволь подготовиться.
Времени займёт как универский курс на данную тему. 30 часов лекций + 30 часов практических семинаров + 50 часов самостоятельного решения задач + 30 часов самостоятельного изучения теории. Примерно также. Но самому будет дольше, так что лучше - на платные курсы.
Аноним 05/01/22 Срд 16:57:44 2256631393
В начале года выбирал яп и технологию веб-разработки для смены работы. Выбирал между .Net, Java, Python и Go, ориентировался по сложности входа, количеству вакансий и средней зп. Остановился на .Net, изучил и нашёл работу. И тут в последнее время из каждого тапка доносится «Зарплаты разработчиков в IT в 2021 начали расти с каждым месяцем», «Java разработчики снова на коне» и прочее. В нашей компании половина команды Java разработчиков из стороннего проекта за последние пол года ушли на место получше. Легенды в рабочих чатах гласят, что нашего сеньора из Java команды забрал всем известный жёлтый банк за 500к деревянных. Компания начала подымать зп Джавистам, чтоб попадать в рынок. Но данное чудо не произошло с нашей .Net командой, как были те же ребята с той же вилкой, так и остались. Общался со своим куратором и спросил, почему он так же не ушел в место получше. Отнекивался тем, что только у Java сейчас растут зп. Начал смотреть вакансии от HH до групп в телеграме, сравнивать с разными яп и периодом, когда только выбирал язык в начале года. И действительно Джависты повысили свой уровень очень заметно, в то время как .Net сильно то и не изменился, кроме количества самих вакансий, которое увеличилось. У остальных ЯП по вэкэнд разработке (PHP, Python и прочее) зп дошли до уровня .Net, а то и выше, по сравнению с началом года. Про Golang вообще молчу, синьору со знанием английского предлагают совсем неприличный ценник в у.е. Почему Java разрабы так сильно выросли по зп по сравнению с .Net, хоть они и делят общий рынок enterprise разработки и крутятся в той же предметной области? И по какой причине остальные бэк яп начали догонять и обгонять .Net по зп? Не говорит ли это о низкой востребованности .Net разработчиков и отсутствии новых проектах на .Net?
Аноним 05/01/22 Срд 17:11:53 2256638394
>>2256631
Дефицит квалифицированных рабочих, приводит к росту цен. Я уверен кобол программисты получают больше.

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

Дотнет же более унифицированный и не имеет зоопарка в стеке технологий, от чего работа, даже с легаси, значительно легче. Джава же засохла где-то в нулевых и вокруг неё, словно грибок, выросло тонна разного рода решений одних и тех же задач. Поэтому специалист по джаве дороже, но и в башке там каши держать надо больше.

Важно не только много получать, куда важнее комфортно работать.
Аноним 05/01/22 Срд 17:25:31 2256648395
>>2256638
>Поэтому специалист по джаве дороже, но и в башке там каши держать надо больше.
>Важно не только много получать, куда важнее комфортно работать.

Ну это все понятно, но почему на том же голанге или расте платят ощутимо больше? Если про джаву понятно - банки, легаси, кровавый энтерпрайз, дремучее легаси, то почему за хипстерские технологии платят больше?
Аноним 05/01/22 Срд 17:26:17 2256650396
Окей, вот мои 5 центов:

1) я пытался использовать C# для WP платформы, но они умерли (7,5, 8, 10)

2) я пытался использовать C# для UWP, но они превратились в ходячих мертвецов

3) C# использовал для Desktop-приложений, но потом Microsoft, сообразив на двоих Google, фактически убил запуск неподписанного кода для домохозяек. Сорян, платить 250 баксов в год за воздух, точнее сертификат, которым Мейлру подписывает свой Мейлру бар, я не вижу смысла. А, и еще разрешает подписывать (разрешал, окей) им любой код "партнёров". Но у Мейлру это безопасно (потому что подписано), а у меня нет.

Так, я полностью ушёл с платформы (т.е. дропнул Windows, MS SQL Server, VS, C#). Теперь винда нужна только для запуска игрушек, которые не заводятся в Valve Proton/WINE.

мимо бывший MCSA, владелец аккаунта-разработчика для WP/UWP
Аноним 05/01/22 Срд 18:56:52 2256699397
>>2256648
>Ну это все понятно, но почему на том же голанге или расте платят ощутимо больше?
Нехватка спецов. Именно сеньеров-помидоров, который вытащил бы на себе все говно.

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

Проблема в том, что в новом стеке надо рогом самому все бурить, там реально скилл уже нужен, знаю тонну случаев, когда хипстота в 2010годы разводила кабанчиков на молодежные технологии и потом там же буксовала просерая все полимеры (одно дело поиграться, другое дело бизнес
).
Аноним 05/01/22 Срд 18:58:49 2256701398
>>2256648
>Ну это все понятно, но почему на том же голанге или расте платят ощутимо больше?
Нехватка спецов. Именно сеньеров-помидоров, который вытащил бы на себе все говно.

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

Проблема в том, что в новом стеке надо рогом самому все бурить, там реально скилл уже нужен, знаю тонну случаев, когда хипстота в 2010годы разводила кабанчиков на молодежные технологии и потом там же буксовала просерая все полимеры (одно дело поиграться, другое дело бизнес
).
Аноним 05/01/22 Срд 19:01:18 2256702399
>>2256650
>но потом Microsoft, сообразив на двоих Google, фактически убил запуск неподписанного кода для домохозяек.
А по подробнее?
мимо пишу морды только для своих нужд
Аноним 05/01/22 Срд 19:23:11 2256715400
>>2256702
Он видимо про то, что UWP приложения вымерли полностью, а для классических десктопных приложух нужна специальная подпись, иначе SmartScreen будет уведомления постоянно присылать, что мол небезопасное приложение запускается.
Аноним 05/01/22 Срд 19:32:53 2256722401
>>2256715
А причем тут шарп? Это справедливо для всех десктопных приложений винды и мака?
Аноним 05/01/22 Срд 19:33:27 2256725402
>>2256699
Тем не менее на голанг уже прилично вакансий у нас в РФ несколько лет как, тот же озон, авито и вайлберис уже перешли на него, в яндексе клауд начинают на го писать, в тинькоффе тоже.
Да и хипстерские технологии предыдущих лет так и не умерли - руби все еще жив, не говоря уже о ноде или питоне.
Аноним 05/01/22 Срд 19:44:57 2256731403
>>2256725
Всегда нравилось вот эта ассоциация с компания. Ты знаешь вообще какой объем кода и какое число разработчиков пишет? Зачем вы их постоянно в пример приводите? Ты знал что некоторые компания пытаются пропиариться среди свежих языков, чтобы их лейбл получил лояльность, среди тесного сообщества. Или чтобы такие как ты разносили рекламу о них.

Сейчас раст, до этого го, еще раньше руби и нода. Ты программист, будь технически грамотнее, а не как блондинка вестись на каждый пшик в индустрии моды.
Аноним 05/01/22 Срд 19:50:45 2256735404
>>2256631
Попробуй выстави свое резюме (можешь даже анонимно, если боишься) и посмотри на предложения которые тебе придут. И вот потом уже делай выводы.
Примечание: январь если что не показатель, а вот в феврале уже можешь так делать.
Аноним 05/01/22 Срд 20:01:47 2256740405
Почему мое приложение с формочками не требует от меня никаких подписей? Когда и как начинает это работать?
Аноним 05/01/22 Срд 20:06:10 2256742406
>>2256740
Когда ты попробуешь запустить его на другом компьютере. Сразу SmartScreen заблокирует.
Аноним 05/01/22 Срд 20:08:53 2256743407
>>2256742
Как он определяет это?
Аноним 05/01/22 Срд 20:16:08 2256746408
>>2256742
Запустил на другой машине, ничего не произошло (windows form). Что я делаю не так?
Аноним 05/01/22 Срд 21:34:40 2256808409
1641407683645.jpg 173Кб, 1280x1230
1280x1230
>>2247357 (OP)
Нужно сделать приложение под андроид, в каком IDE это можно сделать максимально быстро и просто?
Аноним 05/01/22 Срд 21:50:44 2256819410
>>2256746
Залей в инторнет, скачай из инторнета
Аноним 05/01/22 Срд 22:17:32 2256839411
Аноним 05/01/22 Срд 23:00:54 2256879412
>>2256839
Поставил, не нахожу сишарпа
Аноним 05/01/22 Срд 23:36:14 2256901413

>>2256879
Нинужно, ява тоже самое
Аноним 05/01/22 Срд 23:56:27 2256906414
>>2256819
Я на второй комп по сети качал. Но у меня и там и там сдк, может поэтому??
Аноним 05/01/22 Срд 23:57:52 2256907415
Аноним 05/01/22 Срд 23:59:08 2256908416
>>2256839
>>2256901
Это старинное говно мамонта так и не умеет в кроссплатформенную разработку.
Аноним 06/01/22 Чтв 00:02:58 2256910417
>>2256908
Так чел же хочет
>сделать приложение под андроид
>максимально быстро и просто
и проще чем на котлине и в нативной среде вариантов нет.
Кроссплатформы без ебли не бывает.
Аноним 06/01/22 Чтв 00:04:26 2256911418
Аноним 06/01/22 Чтв 00:25:40 2256920419
>>2256907
А какую редакцию покупать?
Аноним 06/01/22 Чтв 01:07:40 2256950420
изображение.png 4Кб, 450x88
450x88
Вопрос скорее всего тупой до предела, но как правильно вызвать такой пикрелейтед метод в дочернем к интерфейсу классе?
Аноним 06/01/22 Чтв 01:17:28 2256959421
>>2256920
Попробуй триал профессионала. Я хз можно ли с комьюнити писать под мобилки, но можешь и бесплатную комьюнити потестить.
Аноним 06/01/22 Чтв 01:19:58 2256960422
>>2256910
>Кроссплатформы без ебли не бывает.
Бред, писать под каждую платформу - затратнее.
Аноним 06/01/22 Чтв 01:28:23 2256968423
Аноним 06/01/22 Чтв 01:32:05 2256969424
>>2256968
Да, я уже понял почему я долбоёб, дико извиняюсь
Аноним 06/01/22 Чтв 01:38:45 2256971425
>>2256960
>писать под каждую платформу - затратнее.
>сделать приложение под андроид
>максимально быстро и просто
Ты стекломоя объелся?
Аноним 06/01/22 Чтв 02:24:59 2257007426
image.png 118Кб, 1888x646
1888x646
>>2256971
Лол, шизик
>Кроссплатформы без ебли не бывает.
>писать под каждую платформу - затратнее.

Хватит вилять попой, аки проститка, на лучше прочитай про свой ржавый язык
http://rustmustdie.com/

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

Вы только посмотрите на картинке, как две строчки компиляться в 2700 строк ассебмлера!!!
https://goo.su/adnl
Аноним 06/01/22 Чтв 03:13:15 2257021427
>>2257007
К чему ты это вообще высрал, сумашедший? Сначала съехал на «каждую платформу пилить долга» на вопрос про приложение конкретно для андроида, а теперь выдавил какую-то несвязанную хуйню про раст.
Иди отнеси это в раст тред, если у тебя к ним предъявы.
Аноним 06/01/22 Чтв 03:25:47 2257027428
>>2257007
>на лучше прочитай

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

>как две строчки компиляться в 2700 строк

Тоже, как он не осилил ключи компиляции и ебащишь отладочные сборки вкачестве пруфов? Малаца.
Аноним 06/01/22 Чтв 03:44:00 2257033429
>>2257027
>Тоже, как он не осилил ключи компиляции и ебащишь отладочные сборки вкачестве пруфов?
Отладочные сборки в онлайн редакторы? Ну собери в релиз, опровергни, зачем пуки в воздух?

>Ссылаешь на студента
Какая разница если он говорит правильную инфу? Раст по сути использует ГЦ, более того, без него написать ничего нельзя. Зачем вообще весь этот сюр с владением и прочем, если все свелось к подсчету ссылок у смарт-указателя?

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

Аноним 06/01/22 Чтв 03:56:50 2257036430
Если нужно сделать простое приложение, альтернатив WinForms до сих пор нет? Почему так нахуй? Может какой-нибудь фреймворк завезли? Реально, ничего не нужно, главное как можно проще
Аноним 06/01/22 Чтв 04:05:51 2257042431
Аноним 06/01/22 Чтв 04:12:11 2257045432
>>2257042
Нет, не проще, а на таком же уровне, но современнее. Может кроссплатформа появится, но не обязательно
Аноним 06/01/22 Чтв 04:19:43 2257049433
image.png 40Кб, 1434x390
1434x390
Аноним 06/01/22 Чтв 09:30:31 2257093434
>>2256596
>Потому что у людей семьи, ипотеки, люди хотят стабильную и понятную работу, уверенность в завтрашнем дне.
Так я же не про фриланс говорю, а про полноценный аутстафф или аутсорс. Хорошие деньги + уникальный опыт, какие риски?
Аноним 06/01/22 Чтв 13:03:55 2257201435
Снимок экрана 2[...].png 107Кб, 1860x442
1860x442
>>2257007
>>2257033
>Ну собери в релиз, опровергни, зачем пуки в воздух?
Спок, шиз, заканчивай кидаться на анонов.

>Раст по сути использует ГЦ, более того, без него написать ничего нельзя.
Опять тупостью троллишь?
Аноним 06/01/22 Чтв 13:29:18 2257218436
image.png 106Кб, 1200x776
1200x776
Если я 2 часа потратил на такую реализацию сортировки вставкой, по кривому псевдокоду
Я даун?
студяга
Аноним 06/01/22 Чтв 13:38:09 2257222437
>>2257218
Ты молодец, мы всем двачем тобой очень гордимся. У тебя явно талант к программированию, продолжай в том же духе. Мало кто смог также. Даже у какого-нибудь кармака при таких же вводных это заняло бы никак не меньше 8-12 часов.
Аноним 06/01/22 Чтв 13:42:25 2257225438
>>2257222
Бля я ожидал чмореня по факту
Наверняка тут есть кринж код
Аноним 06/01/22 Чтв 13:54:36 2257236439
>>2257218
А если надо отсортировать не массив int, а массив double? Ещё раз такую функцию напишешь?
Аноним 06/01/22 Чтв 14:05:41 2257243440
>>2257236
Не знаю, но сенкс за идею вечером попробую
Аноним 06/01/22 Чтв 15:29:52 2257336441
>>2257201
>Ну собери в релиз, опровергни, зачем пуки в воздух?
>Спок, шиз, заканчивай кидаться на анонов.
Слив засчитан
Аноним 06/01/22 Чтв 15:35:38 2257341442
>>2257225
Шизик из го/раст/жаба треда еще не проснулся, а остальным пох (написал и написал, молодец).
Аноним 06/01/22 Чтв 15:36:09 2257342443
16414638346390.png 116Кб, 736x736
736x736
>>2257336
Шиз не увидел 50 строк ассемблера с флагом -O?
Аноним 06/01/22 Чтв 15:43:22 2257352444
>>2257342
Раз раст язык с ГЦ, может еще его прогреть надо?
Аноним 06/01/22 Чтв 15:46:31 2257360445
>>2257342
Даже с оптимизацией
-C opt-level=2.
Там высерается 50 строк на одну лямбду.

Зиро кост абстракшен - как есть.
06/01/22 Чтв 16:21:31 2257405446
code.gif 14Кб, 683x425
683x425
php.gif 101Кб, 450x335
450x335
>>2247357 (OP)
Подскажите студенту-заочнику, как получить из строки уникальные слова по пробелу.
Пффф.. в Пыхе одной командой делал...
Аноним 06/01/22 Чтв 16:21:33 2257407447
Снимок экрана 2[...].png 200Кб, 2706x580
2706x580
ac665e35cbe686b[...].jpg 23Кб, 480x360
480x360
>>2257360
Зирокост абстракции выглядят вот так.
Ох уж эти зумеры, один высрал хуйню с жырным троллингом, а второй тупень на серьёзных щах с ней по всей борде носится.
Аноним 06/01/22 Чтв 16:22:39 2257412448
14058904353382.jpeg 46Кб, 600x450
600x450
06/01/22 Чтв 16:25:36 2257417449
Аноним 06/01/22 Чтв 16:42:36 2257442450
Снимок экрана 2[...].png 193Кб, 2706x580
2706x580
00be7861d215393[...].jpg 83Кб, 750x477
750x477
Аноним 06/01/22 Чтв 16:53:55 2257449451
>>2257342
>>2257407
>>2257412
Кто открыл загон с говнорастом, что они забыли в языке с ГЦ? Плюсовики погнали их ссаными тряпками они теперь в управляемые языки приползли? Какой-то гребанный сюр.
Аноним 06/01/22 Чтв 17:02:03 2257453452
image.png 368Кб, 1345x487
1345x487
Тут оказалось, что фактически язык с ГЦ (кроме базового хелло-ворда), поэтому C# ему конкурент.
Не может управляемый язык с подсчетом ссылок конкурировать с С++ где смарт-указатели опциональны.
06/01/22 Чтв 17:09:48 2257456453
>>2257417
Как-то слишком коротко получилось и норм?

var items = index.ToLower().Replace(" "," ").Split(' ');
var unique_items = new HashSet<string>(items);
string st = "";
foreach (string s in unique_items) st = st + " " + s;
Аноним 06/01/22 Чтв 17:24:56 2257462454
>>2257456
А тебе количество кода важно?
Аноним 06/01/22 Чтв 17:25:33 2257464455
14870561.jpg 263Кб, 900x900
900x900
>>2257449
>>2257453
О, аргументы закончились, начал пукать.
Ты сам это говно начал, не плакай теперь.
06/01/22 Чтв 17:31:08 2257465456
>>2257462
Вообще нет, лишь бы быстро работало...
Ну меня последняя строка немного смущает, склеивание строки по букофкам... Как тут говорят - чиорт побери...выглядит немного всрато
Аноним 06/01/22 Чтв 17:33:57 2257466457
Аноним 06/01/22 Чтв 17:54:36 2257479458
Аноним 06/01/22 Чтв 19:55:33 2257527459
>>2257407
С C-строками (которые выводятся из литералов если не указывать вручную "string") на GCC 53 строки.
Аноним 06/01/22 Чтв 20:00:17 2257535460
>>2257527
А на кланге не смогло скомпилировать...
Аноним 06/01/22 Чтв 21:52:08 2257606461
>>2257479
А что лучше, String.Join или стрингбилдер?
Аноним 06/01/22 Чтв 23:03:20 2257653462
>>2257606
В твоем случае Join практичнее.
Открой исходники, внутри наверняка будет сбор через стрингбилдер.
Аноним 06/01/22 Чтв 23:08:56 2257656463
image 542Кб, 640x480
640x480
>>2257453
Да мы наблюдаем на дваче исторические разоблачение раста-самозванца.
Надо бежать, роняя кал, писать линупсу торвальдусу, чтобы он это говно из ядра линупса поскорее удолил взад.
Аноним 06/01/22 Чтв 23:12:00 2257658464
Аноним 06/01/22 Чтв 23:13:17 2257660465
>>2257656
Поздно, Линус уже зашкварен. Только в ядре гугла вовремя сообразили и выкинули сие говно.
Аноним 06/01/22 Чтв 23:36:46 2257675466
Снимок экрана 2[...].png 150Кб, 2058x580
2058x580
>>2257527
Если уж серьёзно к этому относится — то правильнее для такого сравнения в расте использовать полноценные строки, а не литералы, иначе это какой-то замер способности компилятора фолдить код с константами, а не сравнение реально генерируемого кода. И ещё в лямбде фильтра в плюсах ожидать string_view а не string, но результат не меняет, раст таки чуть лучше это фолдит.

Хотя как не крути, такое сравнение всё равно будет каким-то школьным бредом, чтобы манипулировать шизом и прочими, лол.
Аноним 07/01/22 Птн 00:10:25 2257694467
>>2257675
Как бы там не рисовались растеры, как бы не подгонялись тесты и как бы не ставили раст в противовес полноценного ООП языка, все равно на этом говне приходится кодить только через Rс и тому подобном.
Чуда не произошло, никаких супер технологий не завезли, маркетинг опять победил.
Аноним 07/01/22 Птн 05:18:28 2257780468
Avalonia годнота или нет? Туториалов по ней вообще нет, что за хуйня
Аноним 07/01/22 Птн 09:11:34 2257800469
>>2257780
У нее и доки говно, пилил небольшую граф приложуху, если в wpf шаришь, разберешься.
Аноним 07/01/22 Птн 09:23:19 2257804470
>>2257800
Не шарю, как вкатиться с нуля?
Аноним 07/01/22 Птн 15:42:12 2258210471
>>2257804
Никак, это говно без задач. Нужно только если ты уже знаешь WPF.
В остальных случаях — вкатывайся либо в WPF и пердоль легаси, либо сразу в MAUI.
Аноним 07/01/22 Птн 16:17:49 2258241472
У меня три года стажа, но впадаю в ступор на задачах из leetcode. Это лечится? Слышал дают задачи с этого сайта на собеседованиях, а я хочу сменить место работы.
Аноним 07/01/22 Птн 16:22:38 2258248473
>>2258241
Ну так начинай с самых простых, они же там размечены.
Просто ты вебмакака, это лечится, но не быстро.
Аноним 07/01/22 Птн 16:36:27 2258268474
>>2258248
Лечится так себе, на самом деле. Если ты задротил алгоритмы в школе, побеждал в олимпиадах и сейчас без проблем сможешь решить какую-нибудь задачу на два указателя. А если нет, то сможешь решить после того, как нарешал 3-4 подобных задачи. Но суть в том, что ты спустя пару месяцев забудешь напрочь как ты эту задачу решал. Ну вот из головы вылетит и все, и на собеседовании уже вряд ли сможешь повторить. Но тут еще такое дело, что если периодически повторять уже решенные задачи, то может и запомнишь решения и идеи основные и уже не так сильно облажаешься.
Аноним 07/01/22 Птн 17:10:58 2258315475
Аноним 08/01/22 Суб 00:39:28 2258860476
На сколько нормально будет сделать виртуальную машину с виндовсом, чтобы там программировать на сишарпе в студии?
Аноним 08/01/22 Суб 00:44:16 2258865477
Аноним 08/01/22 Суб 01:37:15 2258898478
В rust локальные переменные по умолчанию неизменяемые.
Чтобы получить изменяемую переменную, её надо отдельно поменить ключевым словом mut.
В C# все локальные переменные изменяемые. Почему нельзя сделать локальные переменные только для чтения, помечая их readonly?
Например, readonly int z = x + y;
Хотя бы для структур почему так не сделали?
С точки зрения компилятора, это совсем не сложно реализовать.
При этом было бы удобно, сразу видеть, какие переменные могут далее меняться, а какие вычислены на месте и окончательно.
Аноним 08/01/22 Суб 01:48:38 2258902479
Аноним 08/01/22 Суб 04:32:33 2258937480
>>2258315
Если честно написано плохо. Дёрганно, не структурированно, лишняя информация. Нашёл другой сайт, может здесь лучше будет https://wpf-tutorial.com/
Аноним 08/01/22 Суб 06:48:59 2258955481
>>2258898
>переменные
>неизменяемые
Это безумие уже не остановить.
Аноним 08/01/22 Суб 11:10:16 2259008482
>>2258955
В матеше и лямбда исчисл тоже переменные, но там явно не про изменяемое состояние
Аноним 08/01/22 Суб 11:34:02 2259016483
>>2258865
Диск не могу поменять, а студия лезет на системный хотя указываю другой))
Аноним 08/01/22 Суб 17:20:51 2259471484
Как работают фри триалы в шарповых либах? Если я использую их не для коммерции мне все равно придется платить? И каким образом?
Аноним 08/01/22 Суб 17:27:52 2259481485
>>2259471
По разному, предполагаю.
Где-то может быть специальный нюгет фид, который сдохнет после триала, зато ПОЛНОЦЕННУЮ ВЕРСИЮ дают потрогать, где-то обрубок функционала, а чтобы был не обрубок, введи код и прочее.
Если разрабы допускают использование их либы не для коммерции, то там явно должно быть это обговоренно (что считается "некоммерцией", как пользоваться либой в бесплатном режиме, etc), иначе по умолчанию должен купить либу.
Разбирайся конкретно с каждой либой, там везде свои способы навернуть говна.
Аноним 08/01/22 Суб 17:32:08 2259485486
Аноним 08/01/22 Суб 20:22:05 2259676487
Андройд тред мерт так что спрошу как обычно тута.
Как и чем отловить запросы мобильных приложений? Какой эмулятор юзать? Реально ли будет подделать запросы? Хочу сделать смсБомбер. Понятно что сначало буду сайты добавлять, но хотелось бы на будущие знать стоит ли заморачиватся с моб приложениями?
Аноним 08/01/22 Суб 20:22:32 2259677488
>>2259676
Доп вопрос.
Шифруются ли запросы?
Аноним 08/01/22 Суб 20:26:15 2259680489
>>2259676
Смотри программу proxycap, ей загоняешь запросы в дебаг проксю и готово. Хттпс можно, но надо будет добавить сертификат прокси.
Аноним 08/01/22 Суб 20:41:22 2259703490
>>2259676
Иди уроки учи, дебил. Какой нахуй бомбер, пиздец зумеры из тиктока ебанулись
Аноним 08/01/22 Суб 22:39:15 2259759491
>>2259703
Сам иди учи, хуеплет.
Аноним 09/01/22 Вск 00:03:51 2259808492
>>2258898
>Почему нельзя
Потому что для твоих околоматематических выебонов существуют функциональные языки. В CLR среде это F# и там все это есть.
Аноним 09/01/22 Вск 00:08:06 2259812493
Аноним 09/01/22 Вск 01:09:01 2259849494
>>2259808
Ридонли = математика? Клоун, зачем тогда в твоём любимом языке const/in?
Аноним 09/01/22 Вск 03:06:54 2259864495
>>2259849
>Ридонли = математика?
Ебало завали.
Тот реадонли который ты описал, кроме как в реализации каких-нибудь предметных алгоритмов (по сути решения матформул или численных методов) смысла нет использовать. В нормальном ООП-шном контексте такое либо нахуй не нужно, либо решается другими способами.
>>2259849
> зачем тогда в твоём любимом языке const/in
А ты сначала разберись как они работают, а потом вякай. const это просто способ заменять статические значения в компайл-тайме. А in нужен как один из механизмов обеспечения инкапсуляции.

Аноним 09/01/22 Вск 07:17:06 2259881496
Вопрос. В шарпе же нету модификаторов доступности которые бы давали только первым наследникам доступ к чему-то, но не давали наследникам наследников доступа к этому? или там можно как-то сделать такое переопределяя метод через new?
Аноним 09/01/22 Вск 09:06:50 2259898497
Аноним 09/01/22 Вск 09:52:58 2259908498
>>2259864
in - инкапсуляция? я про const& аргументы.
Конст для замены? А это нахуя? для прироста производительности? Ридонли локальные в нормальных яп дают прирост. Есть ещё ридонли нелокальные, забыл. И ридонли не как не связано с алгоритмами и/или ооп, это просто гарантии, они в любом виде полезны. Но можно конечно защищать дизайн языка, потому что кругозор этим языком и ограничился.
Аноним 09/01/22 Вск 10:41:30 2259929499
>>2259908
>это просто гарантии
Гарантии чего? Если тебе не нужно менять локальную переменную, так не меняй ее, в чем проблема?
Аноним 09/01/22 Вск 11:14:24 2259945500
>>2259898
чтобы спрятать посильней разумеется. но вообще мне недавно понадобилось расширить один абстрактный класс другим абстрактным классом и например часть методов у него из виртуальных стали абстрактными, а некоторые виртуальные методы и вовсе хотелось бы скрыть для наследуемых от второго класса так как нехуй туда лезть
Аноним 09/01/22 Вск 11:31:01 2259953501
>>2259929
1 Гарантии компилятору
2 Для защиты программиста от самого себя придумано дохуя вещей, особенно в с#. Примеры: гц, отсутствие множественного наследования (и ввод интерфейсов и абстрактных классов), типы, все внутри unsafe и т.д.
Аноним 09/01/22 Вск 11:32:58 2259954502
>>2259953
на самом деле отсутствие множественного наследования не является положительной чертой шарпа.
Аноним 09/01/22 Вск 12:44:49 2259993503
>>2258898
> Почему нельзя сделать локальные переменные только для чтения, помечая их readonly?
Ну а что тебе это должно дать?
Серьезно.
Вот допустим код:
readonly User user = new User();

Какое поведение ты ожидаешь в ООП?
То что теперь нельзя сделать user = new User("Zalupa", "Petrov")? Или нельзя user.UserName = "Zalupa"?
Допустим как в JS и эфшарпах - я не могу первое сделать. Что мне как программисту кодящему в парадигме ООП это дает-то? Я, обычно, использую локальные переменные для того чтобы 1. Обеспечить потокобезопасность, скопировав ссылку на нужную мне хуйню; 2. Улучшить читаемость, чтобы не писать user.Role.Privileges в коде, а просто писать privileges. А вся остальная хуета берется из полей класса в котором я все реализую, а эти поля как раз могут быть либо readonly, либо мутабельными, если это требуется. Так зачем мне для локальных переменных это вот? Я действительно не совсем понимаю. Тем более, что во всякой хитрой бизнес логике(а это основная логика, которую приходится на шарпе писать), у тебя в любом случае большая часть переменных будет мутабельной.
Аноним 09/01/22 Вск 12:49:50 2259996504
16417200638450.jpg 309Кб, 705x676
705x676
>>2259864
>Тот реадонли который ты описал, кроме как в реализации каких-нибудь предметных алгоритмов (по сути решения матформул или численных методов) смысла нет использовать.
Аноним 09/01/22 Вск 12:57:01 2260000505
200c779b5340e28[...].jpg 8Кб, 160x160
160x160
>>2259993
>Обеспечить потокобезопасность
>скопировав ссылку на нужную мне хуйню
Пиздуй уроки учи, кек
Аноним 09/01/22 Вск 13:30:54 2260041506
>>2260000
Няша. Окей.
Вот у тебя есть класс:
class A{
public SomeRefObject SomeRefProp;
}

У тебя есть два метода:

async Task Foo(A a){
if(a.SomeRefProp is null){
throw new Exception();
}
await SomeLongRunningTask();
a.SomeRefProp.SomeMethod();
}

void Bar(A a){
a.SomeRefProp = null;
}

Что произойдет, если пока SomeLongRunningTask выполнялся, я в другом потоке вызову Bar и передам тот же объект что и в Foo?

А теперь что будет в случае :

async Task Foo(A a){
var prop = a.SomeRefProp;
if(prop is null){
throw new Exception();
}
await SomeLongRuningTask();
prop.SomeMethod();
}

Ты, конечно, можешь не считать это элементом потокобезопасности, можешь хоть как это называть. Только вот открываешь код самого фреймворка и там это используется повсеместно и сами майки пишут //thread safeness. Я - человек простой, книг не читал, в вузе не учился, и вообще на работу попал по знакомству, но я доверяю тому, что пишут майкрософт в комментариях к своему же коду. Конечно, может быть они - врут и троллят, чтобы такие хуи как я, изучая исходники - попадали в ловушку, но хуй знает.
Аноним 09/01/22 Вск 13:41:10 2260055507
>>2259993
Для классов иммутабельность не работает. Потому что не возможно гарантировать, что вызов метода чего-нибудь не поменяет.
Поэтому даже нет классов readonly class, а readonly struct есть.
Можно было бы дать возможность помечать в классах методы как readonly, что даст возможность конпилятору делать проверки иммутабельности, но тогда придётся и всю стандартную либу переписать.
Для структур же это уже работает.
Аноним 09/01/22 Вск 15:21:31 2260175508
Есть ли какая-то возможность добавить в код C# возможность использовать для возведения в степень отдельный оператор, например, как в петухоне, две звёздочки. Может надстройка для студии какая?
Хочется писать нормальный код с формулами, легко читаемый людьми с физ-мат. подготовкой, а не макаками.
Аноним 09/01/22 Вск 15:52:19 2260189509
Аноним 09/01/22 Вск 16:07:42 2260208510
df6a82d8f778167[...].jpg 37Кб, 720x405
720x405
>>2260041
Пиздец, товарищи.

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

То, что ты высрал — это костыль by design. Сколько макак не учи — всё равно будут высирать шаренный стейт.

Короче, перестань срать терминами которых не понимаешь а лучше пиздуй делать домашку на зимние, завтра в школу.
Аноним 09/01/22 Вск 16:09:07 2260209511
Аноним 09/01/22 Вск 16:10:20 2260211512
16325884961860.png 783Кб, 1000x895
1000x895
>>2260175
>>2260209
А лучше сразу на хачкелб посмотри — там вообще всё для
>физ-мат. подготовкой, а не макаками.
Аноним 09/01/22 Вск 16:17:09 2260223513
>>2260175
Нету такой возможности.
Вообще, если честно, я бы вообще убрал нафиг все операторы которые к математике относятся. Даже булевые операторы. Потому что хуйня это все. Держать в голове порядок действий - это слишком сложно для программиста. С вызовом методов - все просто: ПОСЛЕДОВАТЕЛЬНО.
Да и читается легче:

int i = 5;
i = i+++++i;

против
int i = 5;
i = i.Add(i.PostIncrement(1), i.PreIncrement(1));
Аноним 09/01/22 Вск 16:24:14 2260241514
>>2260223
>Держать в голове порядок действий - это слишком сложно для программиста
Двачую, лишп рулит.
Аноним 09/01/22 Вск 16:48:39 2260269515
image 19Кб, 2048x420
2048x420
>>2260223
А потом набивка одной умеренной формулы превратиться в 300 строк нечитаемых помоев.
Аноним 09/01/22 Вск 16:54:23 2260277516
>>2260208
Дядя. Меня почему-то учили, что потокобезопасность - когда поведение кода программы не зависит от порядка вызова потоками. Все.
> Как твоя ссылка в стеке потока не даст пойти и сделать кашу из содержимого SomeRefProp — это, блять, загадка.
А эта ссылка и не для этого нужна. Она нужна как раз для того чтобы код выполнялся одинаково независимо от того изменит ли кто-то у A свойство или нет. Про превращение в кашу SomeRefProp нужно будет думать уже в контесте не того кода, а кода для класса SomeRefObject.
> То, что ты высрал — это костыль by design.
Майки пользуют. Чем я хуже?
> Короче, перестань срать терминами которых не понимаешь
Ну, я использую термин в том виде в котором он дан в той де википедии:
> Thread safety is a computer programming concept applicable to multi-threaded code. Thread-safe code only manipulates shared data structures in a manner that ensures that all threads behave properly and fulfill their design specifications without unintended interaction

А ты - как раз придумал себе в голове что-то и доебался до меня. Код в сценарии 1 - не потокобезопасен исходя из определения. Во втором - потокобезопасен. То что ты можешь сам объект SomeRefProp из третьего потока превратить в кашу - это уже дизайном класса будет обусловлено, но это уже к тем двум сценариям не относится.
Аноним 09/01/22 Вск 17:38:01 2260309517
>>2260269
тот кто такую хуйню нечитаемой пишет того надо хорошенько отпиздить. такое надо записывать в сотню строк большая часть из которых комменты.
09/01/22 Вск 18:00:47 2260329518
16417198451100.png 139Кб, 773x750
773x750
>>2260277
>Дядя. Меня почему-то учили, что потокобезопасность - когда поведение кода программы не зависит от порядка вызова потоками. Все.
Ого, а в чём выражается результат этого "поведения программы"? В данных на выходе. Поздравляю, ты сказал то же самое в 4 раза длиннее.

>Майки пользуют. Чем я хуже?
Да ничем, indus-driven-design самое то для таких овощей, как ты.

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

Пиздуй делать уроки, хватит читать что индусы высрали, на неокрепший моск слишком сильно давит.
Аноним 09/01/22 Вск 18:03:18 2260334519
В шарпе есть зеленые потоки как в Го? Или все выполняется на реальных системных потоках?
Аноним 09/01/22 Вск 18:20:24 2260346520
>>2260329
> мутабельный стейт в многопоточном окружении

async Task Foo(A a){
var prop = a.SomeRefProp;
if(prop is null){
throw new Exception();
}
await SomeLongRuningTask();
prop.SomeMethod();
}

Давай, покажи что тут может смутировать, если SomeRefProp - иммутабелен. Очень интересно посмотреть.
Аноним 09/01/22 Вск 18:22:51 2260349521
>>2260346
> если SomeRefProp - иммутабелен
Объект класса SomeRefObject - иммутабелен
фикс
Аноним 09/01/22 Вск 18:58:39 2260383522
Есть ли какой-то StringComparer, который будет считать равными символы, которые на экране выглядят одинаково? Например, русская и английская с, или х.
Аноним 09/01/22 Вск 19:48:07 2260437523
>>2260383
Какое безумие, в чем практичность сие?
Аноним 09/01/22 Вск 19:57:00 2260447524
>>2260437
Парсинг для рынка СНГ. Стоит в таблице градусы цельсия, С. И попробуй угадай, в какой раскладке её напечатали, в русской, украинской или латиницей.
Аноним 09/01/22 Вск 20:09:56 2260465525
>>2260447
Надо либо запрещать такое либо ввести правило и писать автозамену.
Так как тети сраки часто вместо "Си" пишут русскую "эС", было сделано предупреждение об этом (алгоритм прост, если в слове больше кириллицы и встречается латинская или другая буква - это вероятно ошибка, предупредить).

А вот на веб сайте вообще запрещаем в никах мешать ру с не ру.
Так же я предложил сделать предупреждение в словах, а то поисковики не поймут, но клиент оказался беден.
Аноним 09/01/22 Вск 20:22:58 2260496526
>>2260175
>>2260211
В Agda можно миксфиксные (1 арг, 2, 3, 4...) операторы с любыми названиями: 0#, _≤_, ∣_∣, if_then_else_ (и например ∃[ x ] P(x), но это не совсем оператор).
В Lean есть нотации и юникод, мб можно тоже такого добиться.
В Coq вроде нет юникода, но есть нотации.

>>2260223
>i+++++i
Чел...
Аноним 09/01/22 Вск 23:29:30 2260644527
>>2260465
Чел, айти - это не только веб-параша.
В моём случае например, приходится парсить готовые отчёты в ворде. Отчёт давно сдан, автор может уже на пенсии, некому запрещать, некого предупреждать.
Можно только пометить, что требуется помощь человека, что должно быть исключительным случаем, иначе за что нам деньги платить тогда?
Аноним 10/01/22 Пнд 02:58:12 2260715528
>>2260644
Какие же программисты пошли тупые.
В посте приводится два примера, второй явно оговариваться что из веб, подразумевая что первый пример из чего-то другого.
Аноним 10/01/22 Пнд 04:39:51 2260731529
Аноним 10/01/22 Пнд 09:07:33 2260768530
Мужики, а где 4-е издание C# player's guide достать? Неужели его никто не спиздил за столько времени?
Аноним 10/01/22 Пнд 13:27:51 2260967531
>>2260334
Наверное нет (хз как оно там в го), но у нас есть пул потоков.
Аноним 10/01/22 Пнд 15:53:44 2261100532
>>2260731
Это известный список TR-39. Но человеку который хочет сравнивать, а не обнаруживать подмену лучше об этом не говорить.

На самом деле в юникоде столько говна, что имеет смысл по диапазонам вычленять все это говно. Но вопрос в другом, что считать этим самым говном? Поэтому такой общей либы быть не может, а написать свой, скажем для русский и английских символов - дело 5 минут.
Аноним 10/01/22 Пнд 15:55:15 2261101533
>>2260334
Шарф основатель моды async await
Аноним 10/01/22 Пнд 16:34:51 2261135534
>>2261101
Зелёные потоки ≠ корутины; если верить стаковерфлов в шарп это пришло с f#, туда идеи с хаскеля
Аноним 10/01/22 Пнд 17:01:25 2261167535
>>2261135
Одно и тоже. Асинхронное программирование.Зеленные потоки - термин популяризированный ныне благодаря жаба конференций, которые гордятся тем, что когда они у них были
Аноним 10/01/22 Пнд 17:43:26 2261199536
>>2261167
Зеленые потоки - софтовые потоки, наверн именно реализованные в юзер моде.
Корутины - функции с паузами.
Аноним 10/01/22 Пнд 17:53:32 2261222537
>>2261199
Одно и тоже, потоки на уровне программы (не системные).

>Корутины - функции с паузами.
Какие паузы))
Аноним 10/01/22 Пнд 18:11:01 2261247538
Аноним 10/01/22 Пнд 21:05:22 2261445539
Позвали на интервью без тестового задания, это как? Может в этот раз ещё и нормальные вопросы придумают?
Аноним 10/01/22 Пнд 23:05:17 2261545540
Использовать полновесную БД для хранения настроек приложения норм или не оч идея? Просто с этим appsettings.json майки так бегают, что создается впечатление, будто это то как надо делать. А мне чет кажется, что удобнее было бы вынести настройки в БД, можно даже в том же жсоне хранить их, если так уж хочется. При этом можно еще и версинификацию настроек иметь, типа обновилось АПИ, добавились новые настройки, а у нас несколько версий одного сервиса запущены и удобно можно из одного места все получить.
Чи я не прав? Поясните, хуевая или не совсем хуевая практика?
Аноним 10/01/22 Пнд 23:20:18 2261559541
>>2261545
У меня так было, база на тестовой машине могла на неделю отличаться от прода, это было не очень удобно, я хотел переписать в файл, чтобы еще версионировалось.
Аноним 11/01/22 Втр 00:03:34 2261588542
>>2261559
И да, на тестовой машине другие немного настройки есть. Тоже каждый раз восстанавливать
Аноним 11/01/22 Втр 09:22:25 2261730543
Как мне развиваться как программисту, если в команде нет ни одного синьора? Если в книгах и курсах показывают простенькие примеры, которые далеки от реальных рабочих проектов?
Аноним 11/01/22 Втр 09:24:15 2261732544
>>2261445
> нормальные вопросы придумают
Есть два стула, на одном море говна, на второе полотенце брошено. Сколько лет ёжику?
Аноним 11/01/22 Втр 13:30:33 2261911545
>>2261167
Нет. Async await это просто удобный способ работы с promise/future и не более.

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

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

Они были во времена 90-х годов, потом от них отказались в пользу системных. Потом после бума гоуленга и ноды они решили-таки запилить Loom.
В дотнете тоже были попытки запилить зеленые потоки во времена .NET 1.x и .NET 2.x, но они тоже успехом не увенчались, вместо этого позже добавили удобный способ работать с future/promise.
Аноним 11/01/22 Втр 14:29:16 2261994546
>>2261911
Был бы я таким умным на дваче не сидел бы. шучусидел бы а ты не умный
Аноним 11/01/22 Втр 14:34:47 2262002547
Что быстрее проверка на налл ссылочного типа или сравнение на равенство интежеров? string1 == null vs myInt = 666
А для наллабл<Т> !nullable1.HasValue vs nullable1 == null vs myint == -13
Вопрос чисто теоретический.
Аноним 11/01/22 Втр 14:42:29 2262006548
16417548216301.png 203Кб, 300x283
300x283
>>2261911
>но они тоже успехом не увенчались
Заканчивай вилять жопой и говори прямо: не осилили.
Аноним 11/01/22 Втр 15:01:05 2262017549
А есть те кто вкатился в шарф с нуля и сам с какого нибудь алкозавода? А то смотрю на ютубе успешных успехов и там каждый первый вошедший в айти с нуля "ну я там в 12 лет на паскале писал, потом сайт пхп запили отучился на сисадмина и потом решил а не пойти ли мне в айти и за пол года научился пиздеть выучил ЯП и пошел работать" А есть ли истории от подпивасных петровичей? Или если с детства 10 лет не задротил айти шансов 0?
Аноним 11/01/22 Втр 15:10:12 2262029550
>>2262006
Нет, они их как раз осилили, что в джаве, что в дотнете, но очевидных преимуществ зеленых тредов перед системными тогда не видели, а задачи в основном предполагали не гружение джейсонов на бекенде, а cpu-bound вычисления на десктопе. Сейчас, конечно, всем достаточно одного потока и евент лупа, как в ноде, но это сейчас, в те времена люди еще использовали тяжелую многопоточку повсеместно.
Аноним 11/01/22 Втр 15:12:57 2262032551
>>2262029
>евент лупа
А евент пупа?
Аноним 11/01/22 Втр 17:39:02 2262163552
>>2261911
>термин популяризированный ныне благодаря жаба конференций
Так и знал что найдется баран, который начнет вспоминать историю, игнорируя поправку "популяризированный ныне". Вот настолько программисты тупые, что видят слово-триггер начинают печатать одну и туже пасту, снова и снова, как дрессированная макака.
Аноним 11/01/22 Втр 17:52:28 2262180553
>>2261911
>Нет. Async await это просто удобный способ работы с promise/future и не более.
Жопоскрипщик пожаловал. А promise/future это блин не асинхронное программирование, да?

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

Квази потоки (зеленные) софтины - это и есть асинхронное программирование, без разницы как там они сделаны. Отказались в свое время (в жабе тоже), ибо говно без задач в то время, а накладывает определенные условия на программиста.
Аноним 11/01/22 Втр 17:56:04 2262185554
>>2262029
>Сейчас, конечно, всем достаточно одного потока и евент лупа, как в ноде, но это сейчас,

кому всем? кто эти все?
Аноним 11/01/22 Втр 18:17:45 2262219555
>>2261730
читай код чужих проектов. особенно те которые low allocation. возьми хотя бы асп.нет коре и изучай код. и тому подобные Microsft.extensions.*
А также реализацию десериализаторов и асинк примитивов
Аноним 11/01/22 Втр 18:39:36 2262253556
>>2262180
Зеленые потоки могут быть реализованы с использованием корутин, но это не значит, что эти термины равнозначны.
Аноним 11/01/22 Втр 19:20:11 2262289557
>>2261730
Пили сам что-то в свободное время.

Ну и да. Термин сеньер - это игрушка дьявола. Во многих конторах его за выслугу лет просто навешивают. По факту, для рынка в вакууме - сеньер это РЕШАЛА, который может и роутер настроить, и архитектуру масштабируемую в соло построить, и код пишет как в мемах про хацкеров, и за ассемблеры разные пояснит(и даже напишет свой загрузчик, если придется), и нат пробьет, и CI/CD сделает, и нубов научит, и с клиентами попиздит. Но скажи средниму мидлу, что чтобы стать сеньером - ему нужно быть вот таким вот челом, начнется вонь, про то что с хуя, я ж [выбери область]-программист, делаю хуйню монотонную уже 5+ лет, дайте мне лычку и ЗП побольше. А вот. Сравни как раз дедов, которые на том самом: ИЗИ ВКАТИТСЯ БЫЛА, БРАЛИ ВСЕХ ПОДРЯД. Для примера с ютуба - Соер. Хуи, что знают все подряд и продолжают учиться, будучи дедами, а в свободное время для дополненной реальности проекты пилят, да ведут блоги, семинары и вообще. Ведь такие в массе - успели и сисадминами побыть, и с кучей фирм разного размера поработать, и сайтики делали, самописные фреймворки, библиотеки, паять умели, и принтер заправлять, ну ты понял короче.
Короче. Если тебе в конторе сеньером - ПРОЯВЛЯЙ ЛОЯЛЬНОСТЬ(не факт правда, что после смены пары менеджеров про твою лояльность не забудут и тебя не пошлют лесом). Если хочешь быть НАСТОЯЩИМ ТРЕЙД МАРК СЕНЬЕРОМ - изучай все до чего дотягиваются руки, пиши все свободное время, читай статьи, ездий на конференции и постоянно повышай планку. Только второй тип - это про тебя прет от работы или ты ясно видишь, что сможешь применять эти знания чтобы улучшить положение. Сейчас, к счастью, есть много наглядных примеров, которые показывают, что эти все знания хорошо стоят, даже какой-нибудь кобол, а потому попроще.
Аноним 11/01/22 Втр 20:40:55 2262331558
>>2260383
Такой и самому вроде несложно сделать
Аноним 12/01/22 Срд 01:13:50 2262487559
Такое дело. Нужно написать две аппы. Сервис крутящийся в бекграунде, и гуй для его настройки. Как можно обмениваться данными и ивентами между ними?
Аноним 12/01/22 Срд 01:19:34 2262490560
Аноним 12/01/22 Срд 01:37:11 2262496561
Читаю про синтаксис шарпа, имея бэграунд ООП хренова десятка лет, просто офигиваю как он продуманно сделан. Причем языку то немало лет.
Свойства - без какой либо сокрытой магии, какие и должны быть.
Явные виртуальные методы и явный оверрайд (и sealed)
Скрытие (перекрытие) свойств/методов.

Люди явно делали язык с душой. Вот гляжу сейчас на кокотлин, как они надругались над конструкторами и понимаю, что люди просто местами тяп-ляп налепили.
Аноним 12/01/22 Срд 01:42:02 2262498562
>>2262496
пишу на обоих языках, причем на шарпе с самого его рождения
И год на котлине. И именно лаконичный синтаксис котлина очень сильно накидал камней в огород моего любимого шарпа

Синтаксис - сильная сторона котлина (ну кроме некоторых WTF, но и в шарпе их хватает)
Аноним 12/01/22 Срд 01:59:51 2262505563
image.png 25Кб, 459x534
459x534
>>2262496
Про свойства - без магии. В котлине так наговнили с дизайном что нельзя сделать публичный геттер и приватный сеттер.

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

На конференциях же говорили (считая за дурочка) что таких кейсов не бывает и вам это не надо (а не то что не смогли).
Аноним 12/01/22 Срд 02:06:55 2262508564
>>2262498
Да, там есть более приятные визуальные решения, те же лямбды, но опять же они это слизали вдохновились с груви.

А вот добавив функции в язык, они даже не подумали, что придется импортить все через звездочку, а "звезда это пизд...", каждый джавист знает (и питухонщик).
ЯП без души как есть, просто навдохновлялись синтаксисом и все.

Те же прозрачные лямбды тоже создали ряд проблем, теперь часто видно лесенку этих лямб и чтобы понять что происходит, приходится читать все эти кишки, когда как раньше люди хотя бы прятали кишки в методы и называли как-то осмысленно, тем самым давая понять что там происходит и надо ли вообще тебе туда лезть.
Аноним 12/01/22 Срд 02:22:13 2262509565
>>2262498
>но и в шарпе их хватае
Например?
Аноним 12/01/22 Срд 05:01:55 2262533566
>>2262508
>придется импортить все через звездочку
никто насильно не заставляет же. И при этом удобно читать исходники без IDE.

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

>>2262509
если не сравнивая с котлином, а исклчюительно про синтаксис...навскидку
- необходимость писать new
- именованный конструктор
- ConfigureAwait(false)
- = null!
- шаблон Main в дотнет 6 просто ахтунг
- нет break level (зато есть goto хы хы)
- [^1] понятно, но уродливо же
- Func<,,,> сигнатура
- is var
- неймспейсы. только вот позволили не ставить {}
- МНОГОСЛОВНО ВСЕ пипец. Не так как в жава, но все равно
... я спать





Аноним 12/01/22 Срд 07:00:23 2262537567
>>2262487
Много как. Можешь запилить шину сообщений в которую гуй будет писать что-то, а серсис из этой шины - читать. Можешь в сервисе сокет открыть и реализовать дуплексную связь(удачи, кек, майки-то поленились сделать что-то нормальное, а тот велосипед что я делал - я не дам). Можешь по ресту как предложили, еще и сверху вебсокеты прикрутить, чтобы если сервис упал - в гуе сразу это было видно. Можешь с помощью файликов реализовать, если это на одной пеке работает или есть общая сетевая папка. Короче. Вариантов куча.
Аноним 12/01/22 Срд 08:52:44 2262556568
>>2262533
Единственное это неймспейсы, остальное притянуто за уши.
>именованный конструктор
Вообще говорит о тебе что ты пришел со скриптов.

>шаблон Main в дотнет 6 просто ахтунг
Это для обучение и фаст-консольного письма, это же опционально.
Аноним 12/01/22 Срд 08:56:20 2262558569
>>2262533
>никто насильно не заставляет же. И при этом удобно читать исходники без IDE.
Как раз без IDE импорты по звезде вообще не читаемы (видимо на это и расчет, как с корутинами вышло).
Аноним 12/01/22 Срд 09:58:26 2262592570
>>2262017
Зависит от конторы. Наши взяли оноклассника сына директора по блату, абсолютный ноль. Спустя два года научился писать простенькие круды, копипастом.
Аноним 12/01/22 Срд 10:14:23 2262599571
>>2262219
Можешь дать парочку конкретных примеров приложений, только попроще, чем исходники asp.net core - от них у меня депрессия начинается.
Аноним 12/01/22 Срд 11:02:25 2262652572
>>2262185
макаки-бекендеры видимо
Аноним 12/01/22 Срд 11:05:20 2262655573
>>2262163
Так зеленые потоки стали популярны не благодаря жабе ведь. Когда они решили пилить свой лум 4 года назад так до сих пор и допилили, лол, на лютом хайпе был модный молодежный гоуленг с его горутинами. Из гоуленга все и пошло тащем-то.
Аноним 12/01/22 Срд 11:15:38 2262662574
А почему связный список не поддерживает индексацию, как массив?
Аноним 12/01/22 Срд 12:08:48 2262695575
>>2262556
>Единственное это неймспейсы, остальное притянуто за уши.
Ну так все можно назвать вкусовщиной, ведь мы говорим всего лишь про синтаксис, а к нему можно привыкнуть. На жаве вон тоже же пишут. И даже на пхп - и не жалуются.

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

>Это для обучение и фаст-консольного письма, это же опционально
Да хер там плавал. Создается в новой студии по дефолту и приходится потом руками создавать старый вариант. Реально напрягает. И не меня одного - на гитхабе даже issue на этот идиотизм есть

>>2262558
>Как раз без IDE импорты по звезде вообще не читаем
верно, но импорты по звезде создаются вручную
Я вот пишу в Android Studio и он мне подсказывает иморт и звезды сам никогда не ставит





Аноним 12/01/22 Срд 12:09:40 2262697576
>>2262662
потому что там нет индексов же. Каждый элемент знает только о соседе. И никакого другого знания нет.
Аноним 12/01/22 Срд 12:16:21 2262703577
>>2262697
Енто понятно. Но почему бы не допилить индексы из коробки. Был бы идеальный вариант между Листом и обычным массивом.
Аноним 12/01/22 Срд 12:24:59 2262712578
>>2262703
А зачем там индексы? Получение элемента по индексу самому легко написать, просто эта операция будет требовать O(N) по времени, в то время как в массивах O(1) всего лишь.
Аноним 12/01/22 Срд 13:33:35 2262788579
>>2262712
> O(1)
Чтобы вот этого добиться. В обычном списке, чтобы дойти до нужного элемента, нужно пройти через все ссылки перед ним, то есть O(n).
Аноним 12/01/22 Срд 13:42:01 2262802580
>>2262788
Связанный список это базовая структура. Индексы ведь тоже где то хранить нужно. А это потеря памяти на ровном месте. А если не хранить отдельно индексы, а хранить элементы связанного списка тупо в массиве, то получим все неудобства массива - необходимость хранить все вместе, изменение размера...

Никто не запрещает делать гибридную структуру где есть доступ обоих видов

Аноним 12/01/22 Срд 14:40:56 2262854581
>>2262788
>В обычном списке
Обычный список это List<T>? Тогда нет там O(n), внутри у него обычный массив и доступ по индексу идет за O(1).
Аноним 12/01/22 Срд 14:42:24 2262856582
>>2262289
>с хуя, я ж [выбери область]-программист
Всё так и есть. Смотрю сеньйорские вакансии 5+ лет и охуеваю - в среднем дают по зарплате всего лишь больше примерно на 50-70% от моей, но знать требуют в несколько раз больше.

Тут уже думать надо, может лучше свой SaaS маленький делать, а в конторе миддлом сидеть.
Аноним 12/01/22 Срд 16:48:11 2262987583
Аноним 12/01/22 Срд 18:19:17 2263252584
>>2262695
> Создается в новой студии по дефолту
Если у тебя так горит - сделал бы давно шаблон свой. Делается оно за 2 минуты.
Ну и да. ИРЛ ты не создаешь по 10 проектов в день. Обычно ты над одним пердишь год-два, а потому то что по дефолту там создалось - до пизды.
Аноним 12/01/22 Срд 18:19:23 2263253585
>>2262695
> ведь мы говорим всего лишь про синтаксис
Речь была про WTF. А не вкусовщину или синдром утенка.
Вот в котлине очень много WTF, там в целом как-будто половину смогли, а половину как-будто наспех сделали.
Хотя решения с груви и скалы там удобные есть. Отказ от точки запятой удобен, но местами очень сомнителен. Двоеточие для типа, тоже такое себе. Тупость с иммутабельностью let вообще смешно, когда 99% работаем с объектами, на которых это не работает распростроняется.

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

>Создается в новой студии по дефолту
Создал бы пустой, тоже пришлось руками создавать классы. Смешно, но дефолтный класс и раньше всегда приходилось руками править. В общем, сложна жизнь программиста.
На самом деле очень удобно стало создавать из консоли подобие скриптов, так как не хотелось бы csproj ручками каждый раз писать.
dotnet new console
dotnet run

>верно, но импорты по звезде создаются вручную
Насколько помню, последний раз как раз идея пыталась портянку из списка импортов свести к звезде и надо было отключать в настройках это. Хотя могу наврать, не помню уже, но помню что нередко на звезду в гитхабе натыкался.
Аноним 12/01/22 Срд 18:44:46 2263290586
>>2263252
создаю. папка тест просто засрана проектами для "а ну попробую эту штуку как она работает". И код там посложнее хелловорлд на порядок, но это все равно прототип какой то мелочи.

>>2263253
>Речь была про WTF. А не вкусовщину или синдром утенка.
вкусовщина это где писать тип функции или def/fun/function/void...
А это просто неудачные решения, которые делают синтаксис более монструозным или семантически запутанным. или просто корявым
ConfigureAwait(false) например. Народ предпочитает его не писать полагасясь на "авось не будет контекста".
is var вообще без 0.5 не разберешься интуитивно

>Вот в котлине очень много WTF,
навалом.
тот же companion object вызывал "штааа" пока не понял почему так. но все же немного "шта" осталось.
но все же синтаксис сильно более лаконичен и это приятно.
>Двоеточие для типа, тоже такое себе.
наоборот удобно.
А вместо
Func<int, int, int, string> callback
симпотное
callback: (int,int,int)-> string

>Тупость с иммутабельностью let вообще смешно,
в шарпе не хватает как раз подобия let, also и тому подобного. В итоге на шарпе симпотные на котлине dsl выглядят монструозно.

>Я согласен что спец слово лучше, но это просто историческое решение.
ну то что оно историческое - не делает его нормальным.

>Я вижу ты не совсем часто кодишь, как бы это уже давно ипостась IDE
я не про рефакторинг. При прототипировании копипаст просто зашкаливает.

>как раз идея пыталась портянку из списка импортов свести к звезде
ну звезда это ручками. При автоимпорте IDE выдаст полный импорт и при оптимизации звезду тоже не нарисует.
Аноним 12/01/22 Срд 20:06:01 2263388587
>>2261545
>Использовать полновесную БД для хранения настроек приложения норм или не оч идея?
Зачем полновесную? скулайт прикрути, тебе для любых настроек хватит. А держать ее можешь хоть в памяти, хоть на диске.
Аноним 12/01/22 Срд 20:14:13 2263400588
>>2263388
Ну, я исходя из того, что полновесная и так нужна приложению, а так, в ней одна табличка с настройками добавилсь и при старте проинициализировали все дело.
Аноним 12/01/22 Срд 20:15:11 2263401589
>>2262788
Если тебе от связанного списка нужно O(1) на получение элемента, то ты жестко проебался еще на этапе проектирования. Возвращайся к началу и переделывай.
Аноним 12/01/22 Срд 20:25:48 2263410590
>>2263400
Ну это исходя из того зачем и как у тебя используется БД в приложении. Если чисто для технических нужд и внутренней логики, то в принципе еще одна табличка погоды не сделает. Если же у тебя там данные и логика бизнеса хранятся, то тут уже могут возникать проблемы. Начиная от того, что тебе постоянно придется учитывать эту таблицу, чтобы она не смешивалась с бизнесом (например экспорт/импорт, права доступа, хитрые индексации и т.д.). Плюс если потом будешь БД на другую менять можешь проблем огрести. А на скулайте по сути один раз сделать и забыть. И работать будет везде, независимо от среды.
Аноним 12/01/22 Срд 21:28:12 2263455591
Даже вот взять каст.
if (obj is User user)...
и просто котлинувскую версию, где есть тоже самое, но магией (автоматически) каститься все в переменную obj. Кажется настолько простая вещь в дизайне, но какое сильное решение.
Они могли бы тупо скопировать версию котлина и забить, но челики посидели и подумали и сделали явное действие, сведя на нет магию, где переменная не затеняется.
Видно что над фичами потеют и стараются все предвидеть.

Да, язык не молодой и много старых фич еще нулевых и девяностых, но в то же время все еще гибко и круто выглядит. А не тяп ляп, а на конференции мы потом посрем в уши (фанбои съели, нормальных ккодеров отталкнули).
Аноним 12/01/22 Срд 21:51:27 2263467592
>>2263401
>Если тебе от связанного списка нужно O(1) на получение элемента
В чем проблема?
Аноним 12/01/22 Срд 22:31:00 2263488593
>>2263455
Чел, если тебе так нрввится котлин - на здоровье же.
Я вот в свое время почитал про него, взялся проект писать мелкий для своих нужд. Плевался постоянно, потому что все эти охуительные вещи - оказались нихуя не удобны во многих сулчаях, еще и всюду торчит хуйня из старой жавы. Блядь, почему ебучие майки могут для одного дотнета нормально поддержку всех языков: хош паскаль, хош - f#, хош - VB, все шо хош делай, а котлин, который под патранажем гугла делается - выглядит как тайпскрипт над жаваскриптом ебучий, т.е. не полноценный язык, а хуйня какая-то.
Короче. Я не знаю, чего ты горишь. Если тебе не нравится шарп, но хочется дотнета - можешь запилить поддержку котлина, делается это не так уж сложно, за месяц - справишься. А если тебе и дотнет не нравится, то в чем смысл всей этой хуйни?
Аноним 12/01/22 Срд 23:02:54 2263514594
>>2263488
с чего ты взял что мне не нравится шарп?
шарп мой основной и любимый язык. Я его использую с его рождения и до сих пор причем на острие (благо работа позволяет)

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

На котлине код лаконичнее и выразительнее - просто факт.
Аноним 13/01/22 Чтв 01:20:28 2263565595
>>2263488
Ничего, что я про конструкцию из дотнета и за дотнет говорю?
Вы биороботы, вы даже не вникаете текст, а просто как роботы треггиритесь на раздражитель.
Аноним 13/01/22 Чтв 02:48:22 2263595596
Сука, какой же вижуалстудио кал. Мало того что это говно медленное, весит минимум 20гб, имеет отвратительный интерфейс и шлёт всю порнуху с твоего компа лично Гейцу, так оно еще рандомно ломается. Просто на ровном сука месте. За три месяца мне пришлось эту парашу 4 раза переустанавливать. То у нее подсветка синтаксиса сломается, то она стандартную библиотеку перестаёт видеть, то метаданные не видит, то просто нахуй отказывается что-либо компилировать. Сегодня сломался установщик плагинов. Ах да, установщик плагинов отдельной программой. И необходимость перезапускать всю иде чтобы установить\обновить плагины. Ебаные мелкомягкие индусы горите в аду нахуй!
Аноним 13/01/22 Чтв 02:55:07 2263596597
>>2263595
ничего лучше нету увы
Аноним 13/01/22 Чтв 08:22:28 2263636598
>>2263595
Может у тебя винт сыпется?
Аноним 13/01/22 Чтв 08:29:03 2263638599
>>2263514
>На котлине код лаконичнее и выразительнее - просто факт.
Звездеж конфиренц.попугая, та же сама жаба ничего выразительного. Может на мобилках там модно и молодежно, но на бэкенде та же жаба, да еще с всплывающими вечно нюансами "100%" совместимости.

companion object -
mutableListOf
Аноним 13/01/22 Чтв 08:34:54 2263639600
>>2263638
Очень выразительно
companion object
mutableListOf
hashMapOf("a" to "x", "b" to "y", "c" to "zz")

Ну и вишенка на торте это печать символа $
println("${'$'}")
Аноним 13/01/22 Чтв 11:45:10 2263778601
>>2263638
>та же сама жаба ничего выразительного
>Может на мобилках там модно и молодежно, но на бэкенде та же жаба
я не пишу бэкенды. с жавой дел не имею, ибо не люблю, да и не знаю ее.
Для бэкенда я шарп возьму

>companion object -
для меня это было WTF изначально. И я такой бегал и ржал как шарпист "смотрите как они дико статики обозвали". Но потом разобрался в семантике и устыдился

>mutableListOf
а такое наоборот лучше чем new List<string> {}
выразительнее

>>2263639
>hashMapOf("a" to "x", "b" to "y", "c" to "zz")
а вот это а to b ну да бред
один из WTF
>println("${'$'}")
простое экранирование через \ работает
Аноним 13/01/22 Чтв 12:45:59 2263830602
>>2263778
>семантике и устыдился
Даже глава проекта признал что наговнили и теперь это еще мешает.

>а такое наоборот лучше чем new List<string> {}
Не, куда лучше realEnterpriseMutableListBuilderOf()

>простое экранирование через \ работает
Хм, и правда пофиксили. Это очень забавно выглядело раньше, как-будто не учли этот момент и показали хак. То есть, в реале никто там в проде этот котлин толком и не тестил вообще
Аноним 13/01/22 Чтв 14:59:20 2264008603
>>2263596
Райдер +- неплох, но под виндой наверное лучше студию использовать.
Аноним 13/01/22 Чтв 19:45:28 2264365604
>>2263830
>Даже глава проекта признал что наговнили и теперь это еще мешает.
Где признался? что наговнили?
ну понятно что наговнили они во многом, но не тут.

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

я кстати не знал что можно так, но когда увидел как это делается в недрах jetpack так сразу одухотворился полезностью онного

>Не, куда лучше realEnterpriseMutableListBuilderOf()
не. лучше mutableListOf
не нужно утрировать.
Аноним 13/01/22 Чтв 20:38:09 2264401605
>>2247364
>>2247358
>>2247357 (OP)
Хах, спасибо насчет английского. Сейчас учу шарп по видео курсам Романа Труфанова, в данный момент учу web api asp. Net core 5. Немного касаюсь фронтенда. Надеюсь, стану прогером и полюблю кодинг
Аноним 14/01/22 Птн 03:43:15 2264609606
>>2264365
>и если хочется расширить статический класс, то хрен там.
Безумие не знает границ.
Поля/методы статического класса, это форма представление этого самого класса и больше никого. Наследование по статике это уже каша для предметной области ООП, хотя в динамик языках я такое безумие видел. В этом случае они правильно сделали, что не назвали это статикой.

>наговнили они во многом
Речь про компаньоны я еще за тебя за нитью разговора должен следить?

>не нужно утрировать.
Само по себе то, что для динамического (по размерам) списка, который мы берем вместо статического массива, есть вариант неизменяемости, вот это реально утрирование абсурда. То есть, сам по себе списки были созданы, как некая наполняемая структура неизвестного размера, в противовес прибитого гвоздями массива. Конечно есть удобные технические моменты когда удобно что список заморожен, но это скорее исключение, а не дефолтная задумка конструкции списка

Аноним 14/01/22 Птн 08:41:22 2264657607
сап шарпач
я начинающий трап

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

какие задачи на сишарпе решаете у себя на работе? какой выбор направлений есть, десктоп, бэкенд, etc?

нет, это не троллинг
Аноним 14/01/22 Птн 11:25:42 2264727608
>>2264657
Думаю тут лучше какой-нибудь питон подойдёт. Заодно коллеги своим питоном поделятся.
Аноним 14/01/22 Птн 11:37:37 2264730609
>>2264727
а кроме шаринга питонов между коллегами какие еще аргументы в пользу пайтон имеются?
Аноним 14/01/22 Птн 12:33:01 2264752610
Господа, вот я наконец освоил, так сказать, мечту, вкатился в it. Меня взяли в контору на постоянку на сорт оф фуллстак мидла (Шарп, sql, js, html). Начальство ценит, коллеги уважают. С задачами справляюсь, а с чем не справляюсь - гуглю. Но и вечно в этой конторе находится не буду, зп не космическая, перспективы туманные. Нужна что бы получить заветные год-два стажа.
Свободное время есть, хотелось бы и дальше развиваться, но что то я никак не решу, в какую сторону.
1. Глубже погружаться в шарп, паттерны, в алгоритмы, всякие деревья и т.д.
2. Сопутствующие технологии. JS фреймворки (vue, angular), сетевое администрирование, освоить линукс и т.д.
3. Начать писать свой пет проект для портфолио. До этого делал, но сейчас понимаю что он ужасен, надо с новыми знаниями.
4. Освоить второй язык. Варианты - Java для мобилок, Питон потому что модно, руби, потому что есть знакомый рубист, который рубит просто горы зелени.
5. Податься во фриланс параллельно, благо время есть. Правда я плохо представляю что можно делать на шарпе для фриланса.
6. Ваш вариант?
Что б вы выбрали?
Аноним 14/01/22 Птн 12:42:03 2264763611
Screenshot2022-[...].jpg 620Кб, 1440x3200
1440x3200
>55000
>От года работы
Ебало представили
Аноним 14/01/22 Птн 12:53:30 2264769612
Скриншот 14-01-[...].jpg 92Кб, 799x449
799x449
>>2264763
Не обязательно же на первый попавшийся вариант бросаться.
Аноним 14/01/22 Птн 15:09:27 2264847613
>>2264609
>Безумие не знает границ.
Не читал(использовал), но осуждаю (с)
>Поля/методы статического класса, это форма представление этого самого класса и больше никого
И что? Поля методы экземпляра тоже его, но вот существуют методы расширения в тот же шарпе, а потом еще и в интерфейсы даже напихали дефолтные реализации. Потому что это удобно не заводить дополнительные классы только потому что "не хватает метода который семантически нужен именно тут"
>Наследование по статике это уже каша для предметной области ООП
Бред. Ничем наследование по статике не грозит, кроме удобства. Расширение по статике несет столько же вреда, сколько методы расширения для экземпляров или методы в интерфейсах
Ты все равно не сможешь эту статику никуда передать вместо экземпляра. А не заводить новый класс ClassEx приятно

>Речь про компаньоны
и я о них. это просто немного другая семантика чем привычная статика в шарпе, и по факту более гибкая. Я видел пользу от этого. Пруфы вреда принес бы кто.

>Само по себе то, что для динамического (по размерам) списка, который мы берем вместо статического массива, есть вариант неизменяемости, вот это реально утрирование абсурда
Вообще не понял о чем ты, но использование по дефолту мутабельных объектов (авось пронесет) это зло. В котлине правильно сделано, что есть жесткое разделение на мутабельные и иммутабельные структуры, а не как у майков, где даже IReadOnlyList криво приколочен (причины я знаю, но это все равно криво) и отдельно уже потом придумали Immutable
также var/val концепция правильнее чем просто var

В шарпе вон даже контрактное программирование не взлетело
Какое то отношение "да все будет норм".
Аноним 14/01/22 Птн 15:11:25 2264851614
изображение.png 5Кб, 604x276
604x276
изображение.png 55Кб, 870x564
870x564
>>2247357 (OP)
Здравствуйте. Возникла, у меня, следующая проблема. Дело в том, что в Visual Studio у меня, почему то, при создания проекта нету возможности создания консольного приложения. Установил уже какие только можно компонентыпик 2, но возможность создания консольного приложения так и не появляется. Пытался решить проблему через гугл, но ничего не вышло. Как можно решить данную проблему?
Аноним 14/01/22 Птн 15:16:12 2264855615
>>2264851
Хорошая привычна - не ставить локализацию на студию, чтобы вот так не пришлось потом гадать что гуглить
Не нужно вбивать "консоль", посмотри там же выпадающий список что там за варианты и как они написаны
Аноним 14/01/22 Птн 15:50:33 2264868616
>>2264769
Я уже наизусть знаю, эти ебланы скорее мидла ищут, там же написано
502 Абу уебан азерский чмо
Аноним 14/01/22 Птн 18:23:36 2264979617
>>2264657
Я недавно видел трапа в документации к либе FastReport, еще думал мб в тред кинуть.
Аноним 14/01/22 Птн 20:26:07 2265071618
Снимок экрана 2[...].png 131Кб, 352x1656
352x1656
Снимок экрана 2[...].png 80Кб, 432x1342
432x1342
Снимок экрана 2[...].png 60Кб, 432x982
432x982
https://krausest.github.io/js-framework-benchmark/current.html
Выбирал на чём бы потеребонькать сделать морду для пет проекта, вспомнил что там майки выпустили, решил посмотреть... и хрюкнул кекнул в гiлос. Хуйперформанс вротенд технология насасываяе у жопаскрипта. Индусы там походу уже всех вытеснили.
Аноним 14/01/22 Птн 21:05:53 2265114619
>>2265071
Ох уж это сравниватели
1 wasm by design работает медленнее с DOM
2 нужно учитывать еще и работу программиста.
Одно дело когда задал шаблон а-ля WPF DataTemplate и забыл, а другое когда ручками кодишь изменение этого шаблона

но зачем такие тонкости, ведь дрочим на цифирь
(сам я блазор не использую, просто глянул код бенчей и кто там с кем соревнуется)
Аноним 14/01/22 Птн 21:38:32 2265148620
Снимок экрана 2[...].png 312Кб, 810x1620
810x1620
Снимок экрана 2[...].png 277Кб, 578x1684
578x1684
16417329912050.png 99Кб, 228x221
228x221
>>2265114
>1 wasm by design работает медленнее с DOM
Пик 1. Даже пидораст со сборкой мусора несмотря на все "проблемы" работает с домом на уровне ванильного жса.

>2 нужно учитывать еще и работу программиста.
Пик 2. Даже реакт-лайк залупа на нём же, написанная полутора трапами поверх попенсорсной хуиты от полутора энтузиастов, ебёт блейзор, в который ввалили бабла больше чем вся твоя семья заработала за твою жизнь. Это пиздец билли, индусы всё проебали.
Аноним 14/01/22 Птн 21:45:01 2265159621
Снимок экрана 2[...].png 321Кб, 830x1908
830x1908
Ладно бы только проёб в скорости работы с домом от 2 до 20 раз, так оно ещё весит в 15 раз больше и даже памяти жрёт больше.
Хуй знает на что я надеялся, опять жабу в бровзер принесли.
Аноним 14/01/22 Птн 22:53:38 2265202622
>>2264979
Ты их исходники видел? Не удивлюсь, если там все трапы.
Аноним 15/01/22 Суб 06:10:19 2265352623
>>2265148
>>2265159
Допилят, говорят еще МС в хром котрибутить стал, поэтому по-любому допилят. очевидно что молодые болячки, редко при запуске оптимизируют сразу, сначала важны фичи. В общем, как-то один анон ванговал про будущее и появление движков на вебассембле, вероятно blazor будет одним из первопроходцем. Собственное реакто-макакам уже припекает.
Аноним 15/01/22 Суб 13:00:02 2265524624
Сука, как я должен использовать вашу Авалонию если нормального XAML дизайнера нет на Linux, кроме платного ЖидБрейнс, который я вообще никогда не юзал? Получается мне легче UI на React/TS делать.
15/01/22 Суб 13:13:31 2265534625
>>2265524

WINDOWS MUSTDIE
@
ПОСТАВИЛ ПИНУС
@
ДЕСЯТЬ ТРЕДОВ НОЕШЬ ЧТО В ЛИНЕ НИХУЯ НЕ РАБОТАЕТ

типичный мамкин линуксоид
Аноним 15/01/22 Суб 13:20:23 2265540626
>>2265534
Чел, я на работе сижу с винды на VS и вообще бэк делаю только.

Хотел поковырять дома на пингвине кросс-платформенный .NET GUI - оказывается нормально делать можно только с блендером ваш XAML или платным райдером.
Аноним 15/01/22 Суб 14:22:44 2265591627
>>2265540
Забавно что VS тоже денег стоит (и райдер на винде тоже денег стоит!!!).
Что там с блендером не так?
Аноним 15/01/22 Суб 14:31:39 2265600628
>>2265540
Вот у него пердак порвется, когда все на MAUI переедут.
Ты походу какой-то фронтендщик, тебе тут с таким взглядом не выжить.
Аноним 15/01/22 Суб 14:35:57 2265603629
>>2265352
Вряд ли что-то к лучшему сильно изменится. Изначально webassembly предполагался не как замена js и его фреймворкам, а как способ запускать использовать компилируемые языки вроде C/C++/Rust в браузере для тяжелой графики. Это не про сайты и не про формочки, а про какие-нибудь raytracer'ы и физические движки, шобы можно было игры запускать. Тащить managed языки в вебасм смысла нет никакого. Даже тот же Go, который компилируется в бинарник и у которого довольно легковесный рантайм, считается медленным для вебасма и его там никто не использует, хотя такая возможность есть. Затянуть огромный и тяжелый дотнет в webasm, да еще и чтобы он быстро работал, это что-то на уровне фантастики.

В MS каким-то хуем решили, что на вебасме можно будет крутить сайты-однострачничники (ведь именно для этого создан blazor). Идея конечно полная хуйня, сайты-одностраничники на дотнете никто в принципе не делает, а большие проекты на блазоре точно делать никто в здравом уме не станет. В итоге получается этакая технология Silverlight v2, которая опять окажется никому не нужна и отомрет через несколько лет.
Аноним 15/01/22 Суб 14:36:47 2265604630
>>2265600
MAUI на пингвинах не будет официально поддерживаться.
Аноним 15/01/22 Суб 14:39:20 2265608631
>>2262163
>пук
Если хочешь написать что-то в тред, то пиши по делу, а не засоряй его своими тупыми высказываниями.
Аноним 15/01/22 Суб 14:49:14 2265619632
Аноним 15/01/22 Суб 14:57:42 2265629633
image.png 684Кб, 1024x638
1024x638
>>2265604
Написано же что через поддержку комьюнити. Он же линупсоид, вот пускай пишет.
Пинус-десктоп очень важная платформа, как не читаешь форум все кросс-пинус спрашивают, вот наверное за столько лет уже мильён окошек кроссплатформенных понаписали, да? Мудачье, даже для своей платформы не могут нормальные морды к настройкам сделать, за то в каждом треде на каждом форме с пеной у рта кричат про необходимость кроссплатформы для своих 2% пользователей
Аноним 15/01/22 Суб 15:12:03 2265642634
>>2265629
Жаль, что MS так и не выпустит нормальные UI для десктопа под линукс. Вообще, было бы неплохо, если MS сама запилила свое графическое окружение под линукс, и портировала хотя бы винформы туда. Был бы лютый вин, но на это нужно очень много денег, потому что десктопы на линухе сейчас в ужасном состоянии до сих пор пребывают.

А так в российских реалиях кроссплатформенный пинус десктоп был бы популярен. Всякие оборонные предприятия сейчас вынуждены неудобный Qt использовать по большей части.
Аноним 15/01/22 Суб 15:12:49 2265646635
>>2265603
Какая же каша в голове. То есть, спрос на реакты, ангуляры показывает, что есть огромный спрос на веб-приложения (которые по сути являются костылем на js). А полноценное нативное веб-приложения (на васме) у него не востребовано.

Ты понимаешь насколько это абсурд и какое у тебя туннельное виденье технологий?
Аноним 15/01/22 Суб 15:18:07 2265659636
>>2265642
Они сами себе не пишут, а тут в пустоту столько денег залить.
Аноним 15/01/22 Суб 15:32:24 2265680637
>>2265646
На реакте и ангуляре написано очень много всего. Буквально каждый фронтенд сегодня - это либо реакт, либо ангуляр/vue. И работает все с неплохой скоростью. Почему это костыль я не знаю, так наверняка думаешь только ты и другие фанбои MS. Пересаживаться с js на webasm никто не планирует, это две разные технологии под разные задачи.

>>2265646
>А полноценное нативное веб-приложения (на васме) у него не востребовано
Почему оно должно быть востребовано? Веб-приложения как правило включают в себя не только фронтенд, а еще и бекенд, где есть и БД, и интеграции с другими сервисами, и бизнес-логика и еще много всего.
Поместить это все один проект и заставить работать на клиенте у пользователя слабо представляется возможным, поэтому MS продвигает blazor как технологию для разработки простых одностраничных сайтов.
Другой вопрос, а нахуя нужен дотнет для этого, когда есть другие инструменты проверенные временем, которые к тому же показывают большую производительность, лол, хотя на нее в таких проектах похуй всем максимально.
И да, дотнет в васме не особо-то и нативный, в отличие от плюсов или раста.
С тем же успехом можно поинтересоваться, почему не взлетели и уже давно мертвы Silverlight/Adobe Flash/java апплеты. Почему webasm до сих пор очень мало кто использует, а фронтендеры на жопаскрипте нужны всем и каждому?
Аноним 15/01/22 Суб 15:43:40 2265700638
>>2265600
>когда все на MAUI переедут.
мауи это хамарин расширенный на декстоп. Со всеми его заморочками в виде трансляции гуи на каждую платформу - то есть урезанный функционал по сравнению с тем же WPF и необходимость наличия девайса с макосью. Да еще с комьюнити поддержкой на линуксах.

Проще авалонию юзать
Аноним 15/01/22 Суб 15:47:46 2265710639
>>2265680
Ты туп и ппц как графоманишь сотрясая воздух.

> Silverlight/Adobe Flash/java апплеты.
Флэш убили, он взлетел так, что 10 лет его убивали. Все остальное не зашло потому что требовались плагины (флеш же по дефолту шел, люди могли даже браузер поменять если флеша не было). Это настолько очевидно что просто даже писать лен.

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

Почему так медленно развивается - потому что нет прямой выгоды с написания движков. Только такие гиганты как МС могут себе позволить быть первопроходцами.
Шарп очень гибкий и у него большой потенциал в оптимизации, игры тому доказательство, а твои веб морды это совсем не рокет-сайнс.
Аноним 15/01/22 Суб 16:03:36 2265737640
>>2265710
у шарпа большой потенциал в оптимизации?
Аноним 15/01/22 Суб 16:07:39 2265742641
>>2265710
>HTML-документ херова пригоден под апплиухи, поэтому твой реакт и костыль

Почему плохо пригоден? Ты же понимаешь, что большая часть приложух - это вбил данные в форму и получил результат в виде текста или таблички.
HTML в этом плане вполне удобный инструмент. Тем более, что blazor без HTML не работает. Но даже если не HTML, то что? Все через canvas рисовать?

>>2265710
>Шарп очень гибкий и у него большой потенциал в оптимизации, игры тому доказательство, а твои веб морды это совсем не рокет-сайнс
А причем тут игры? Я конкретно про blazor говорю, который не для игр, а для веб-морд создан. Мне кажется, что это хуйня и не взлетит, потому что ничего нового ms не предлагает. Те же вебморды успешно пишутся на джаваскрипте. Пусть даже весь html и js - это сплошной костыль, но blazor от этого никуда не ушел по сути.
Аноним 15/01/22 Суб 16:12:41 2265751642
>>2265642
Даже жаба честно рисовала окошки (сколько было попыток). Красноглазые не оценили. Им просто нравится, что где-то что-то кросс, но трогать они это не собираются, так, чисто на форумах побросаться. Сейчас видел бобёжку на реддите, когда слово кросс, не включало пинус.

Аноним 15/01/22 Суб 16:18:08 2265762643
>>2265751
Жаба рисовала, но было слишком убого. Да и к тому же, зачем брать жабу, если есть Qt, который в нативный бинарник скомпилируется?
Собственно Qt поэтому и стал №1 UI фреймворком. На втором месте, конечно же, электрон.
Аноним 15/01/22 Суб 16:22:12 2265766644
>>2265751
>Красноглазые не оценили. Им просто нравится, что где-то что-то кросс, но трогать они это не собираются, так, чисто на форумах побросаться
Телеграм, дискорд, слак - кроссплатформенные. Ты думаешь, что ими никто не пользуется на пингвинах? А VS Code?
Лично у меня почти весь используемый сторонний софт написан либо на Qt, либо на электроне, либо на Swing/AWT привет, JetBrains. Все кроссплафторменное. Если бы этой кроссплатформенности не было, думаю, популярны были бы совсем другие инструменты.
Аноним 15/01/22 Суб 16:25:21 2265768645
>>2265762
Тогда зачем ты тот пост высрал, если шарп на вирт машине?
Аноним 15/01/22 Суб 16:30:46 2265774646
>>2265768
Я к тому, что Winforms и WPF получились годными инструментами, в отличие от того, что есть в жабе для ГУИ.
UI фреймворки в жабе получились слишком убогими, это факт. Поэтому проще взять нормальный Qt, который к тому же не будет требовать установки JRE на машину или постоянно таскания за собой этой самой JRE.
Если бы MS портировали их под линь, то получилась бы убергоднота, немотря на то, что шарп на CLR работает, но увы, этого никогда не произойдет.
Аноним 15/01/22 Суб 16:32:34 2265777647
image.png 218Кб, 1766x236
1766x236
>>2265766
>никто не пользуется на пингвинах?
Сейчас бы переживать про 2% говна.
Когда говорят кроссплатформа, я думаю в первую очередь считают макось
Аноним 15/01/22 Суб 16:36:43 2265781648
image.png 52Кб, 1452x507
1452x507
>>2265774
>WPF
Ну вот есть же avalonia. И что, все стали под линукс писать?
Там даже её джетбрейнс юзает как-то.
Аноним 15/01/22 Суб 16:43:10 2265788649
>>2265781
где есть? она написана 3.5 человеком
Только недавно вышла из статуса альфа (если вообще вышла - не слежу особо)
Под виндой выглядит не нативно, ну и шрифты мыло.
15/01/22 Суб 20:20:24 2265969650
>>2265766
> у меня почти весь используемый сторонний софт написан либо на Qt, либо на электроне, либо на Swing/AWT
Мои соболезнования.
Аноним 15/01/22 Суб 22:00:22 2266076651
16415829110350.png 208Кб, 1239x547
1239x547
16414638346390.png 116Кб, 736x736
736x736
>>2265352
>Собственное реакто-макакам уже припекает.
От лагов первопроходца, насасывающего даже поделиям 3,5 челов версии 0.0.3 и 0.2?
Ебало билли-фанбоя представили?
Аноним 15/01/22 Суб 22:21:33 2266109652
>>2265710
>и у него большой потенциал в оптимизации
Такой потанцевал что челам пилящим юнити пришлось делать свой компилятор и несовместимые расширения языка для этой самой оптимизации.

>игры тому доказательство
Магнум опус игр на шарпе — это геншин импакт с мобильной графикой, успокойся.

>а твои веб морды это совсем не рокет-сайнс.
Спок, фанбой.
Веб морды — это такая же задача для хайлэвэл языков вроде шарпа как и интерфейсы с крудами, и с ней он надеюсь, пока не справляется, посасывая как у "костыльных" решений, так и у каких-то фанатских поделок.

Тащемта, потому на жопаскрипт и есть спрос, потому что никто не в состоянии высрать замену. Гугл со своим дартом — обосрался и зачем-то этого ублюдка от жса и жабы потащил на мобилки, руиня крутой флаттер выбором языка, фейсбук высравший ризонмл — вообще забудем, майки — пока что самыек адекватные тут — начали с прикольного тайпскрипта типизация в котором по итогу не работает, а закончили каким-то сильверлайтом 2.0.
Аноним 15/01/22 Суб 23:22:51 2266200653
>>2265591
Дура, перечитай ещё раз, на работе я предпочитаю сидеть с VS и мастдая, дома мне это нахуй не нужно. VS Code достаточно и покупать IDE для XAML я не собираюсь.

>>2265600
Вкатыш, я пишу .NET бэк исключительно, ибо всё остальное не нужно. Во фронте вообще не ориентируюсь кроме пары компонентов в реакте на тайпскрипте в пет проекте. Хотел попробывать дома поковырять единственный дотнетовский кросс-платформенный ГУИ - авалонию. MAUI твой сдохнет как все остальные поделки корпорации в этом направлении.
Аноним 16/01/22 Вск 05:00:52 2266402654
>>2266076
Смеется над дотнетом и кидает боевую картинку где ASP всех рвет. Пориджи, что с вами не так.
Аноним 16/01/22 Вск 05:01:56 2266403655
>>2266109
>Такой потанцевал что челам пилящим юнити пришлось делать свой компилятор и несовместимые расширения языка для этой самой оптимизации.
Ну так чем не потанцевал? Попробуй иди на жабе свой компилятор сделай.
Аноним 16/01/22 Вск 05:03:41 2266404656
image.png 1534Кб, 1280x720
1280x720
>>2266109
>Магнум опус игр на шарпе — это геншин импакт с мобильной графикой
Нуда, нуда. раст написан не на расте, лол
Аноним 16/01/22 Вск 05:05:26 2266405657
>>2266200
Вот и спалился, сказочник.
Либо ультра джун, либо местный шизик сказочник.
Аноним 16/01/22 Вск 10:57:37 2266489658
>>2266405
А в чем сказочник? Что MAUI - это подстилка для псин, очередной фреймфорк кампании? Так это все знают.
Аноним 16/01/22 Вск 11:08:08 2266493659
>>2266489
В /b ты мог стать кем угодно - няшей стесняшей, успешным бизнесменном. Но нет, ты сидишь на зекаче и мимикрируешь под дотнетчика.
Сережка, ты вообще код пишешь или нет? Почему с го ушел?
Аноним 16/01/22 Вск 11:50:00 2266521660
>>2266493
Вкатун в мастдай, чини детектор, а то вчера я у тебя был фронтовиком, сегодня гошником
Аноним 16/01/22 Вск 12:09:10 2266535661
>>2266403
Причем тут жаба? Суть в том, что в юнити нет классической CLR, там стоит йоба-компилятор в С++, потому что производительности CLR для игр может быть недостаточно во многих случаях.
Это не потанцевал платформы, ты +- для любого языка можешь написать компилятор в С++. Вон, в VK изначально все было на пыхе написано, а потом они сделали kphp. Теперь нужно всем говорить, что у пыхи огромный потенцевал?
Аноним 16/01/22 Вск 14:16:13 2266689662
>>2266404
>параша с мобильной графикой требующая 10 гб оперативки
Ну геншин импакт куда лучший пример, чем эта лагающая хуита с пустырями, чел.
Аноним 16/01/22 Вск 14:18:22 2266692663
>>2266403
Да куча компиляторов есть, как для самой жабы так и для жвм языков. Только есть одно но — это в 9 из 10 случаев уже другие языки, просто на 90% с тем же синтаксисом, и потанцевал платформы они явно не показывают. Потому что отношения к ней не имеет.
Аноним 16/01/22 Вск 14:49:24 2266732664
>>2266535
> что в юнити нет классической CLR, там стоит йоба-компилятор в С++
Почему не засудили?

>Вон, в VK
Это внутренняя кухня, а тут продукт.
Аноним 16/01/22 Вск 14:50:19 2266733665
>>2266689
Что за переобувания налету?
Аноним 16/01/22 Вск 14:55:45 2266737666
>>2266733
А в чём переобувания-то? Если ты играл в гнешин импакт и раст — первый намного качественнее сделан, лол. Хотя, ты, навено арма-говноед который к такому привык.
Аноним 16/01/22 Вск 14:57:25 2266742667
>>2266733
А в чём переобувания-то? Если ты играл в гнешин импакт и раст — первый намного качественнее сделан, лол. Хотя, ты, навено арма-говноед который к такому привык.
Аноним 16/01/22 Вск 15:06:30 2266752668
image.png 193Кб, 400x409
400x409
image.png 373Кб, 600x450
600x450
>>2266737
Уже арму приплел, ржу тут.
Аноним 16/01/22 Вск 20:12:20 2267061669
>>2263595
Я студией непрерывно лет 6 уже пользуюсь. Не могу не нарадоваться. Пробовал другие IDE, в том числе и для других языков и просто блевал. Студия - это глыба, конечно.
Аноним 16/01/22 Вск 20:53:19 2267092670
>>2266732
А почему должны были засудить? Или нельзя написать свой компилятор для сишарпа?
В любом случае, наверняка у них там все схвачено.
Аноним 17/01/22 Пнд 11:38:31 2267554671
image.png 19Кб, 572x202
572x202
_editableCollection (ссылку на который извне получить нельзя) будет в CollectionChanged вечно хранить ссылки на каждый ReadOnlyObservableCollection, полученный методом GetReadOnlyObservableCollection() ?
Аноним 17/01/22 Пнд 20:51:47 2268213672
Шарпач, поясни.
Смотрю код коллеги сеньера.

Примерно следующий код:

class UserController: ContorllerBase{
publc UserController(AppDbCtx ctx) => _ctx = ctx;

...
public IActionResult GetUsers() => new UserRepo(_ctx).GetUsers();
}

Ну, думаю вы поняли.
Так вот. Я тупой и не шарю. Но если UserRepo - не IDisposable - вся эта фигня с управлением жизненным циклом работать будет разве? Ну, т.е. да, я понимаю, что, наверное, когда-нибудь туда придет сборщик мусора и убъет объект репки, но типа не правильнее было бы - просто в конструкторе передать зависимость, и зарегистрировать ее как Scoped?
Аноним 17/01/22 Пнд 22:56:02 2268347673
заебался я искать ТРУ инфу про mvvm, на каждом ру-ресурсе мало того что инфы нихуя особо нет, а там где есть то челы говорят что нихуя это не мввм и ваще нарушение паттерна. Короче подскажите где норм правильно описан mvvm с норм примерами кода желательно на русском, но можно и на англе...
Аноним 17/01/22 Пнд 22:57:46 2268349674
>>2268347
сука думаю ща прочитаю про mvvm и начну проектик которые хотел, и вот такой тупик, СПАСИТЕ...
Аноним 17/01/22 Пнд 23:02:02 2268354675
Аноним 17/01/22 Пнд 23:58:27 2268423676
Давайте будем объективны. C# — это так называемая "хуйня", если вы понимаете о чём я. Ведь все здесь согласятся с этим?
Аноним 18/01/22 Втр 00:18:42 2268433677
>>2268354
ох. майки таки поняли, что все мввм фреймворки обладают фатальным недостатком - и исправили это

>>2268347
вьюмодели держат в себе данные для отображения "что рисовать" и нихрена не знает про вид, знает только про модель
вид занимается "как рисовать" и все знает про вьюмодели
вот и вся тру

там еще сверху перпендикулярно MVVM
- навигация
- коммуникация
- DI
- Lifetime
но тут уже каждый понимает по своему в каждом фреймворке

Аноним 18/01/22 Втр 00:44:35 2268453678
Сап анончики. Такая ситуация неприятная, надо диплом писать. Шарага древняя, требования никакие, из языков - делфи. Несколько часов тратить на написание программы на этом языке нет никакого желания, гораздо полезнее будет на windows forms это сделать, хоть попрактикуюсь. Препода уговорил что бы я на C# писал диплом, решил файловый менеджер на listbox сделать. Но чёт выходит шляпа какая-то внешне неказистая и с кучей костылей.

Нахуя я рассказал такие подробности? Чтобы сразу было понятно что кроме перетаскивания кнопочек на формочку в делфи я ничем 2 года не занимался первые два курса мы вообще почти не программировали, так что их не считаю. С# несколько месяцев назад начал учить самостоятельно и знания весьма скромны.

Может подскажете что мне в качестве дипломной работы сделать? Я был бы очень признателен, если бы кто-то подсказал
Аноним 18/01/22 Втр 02:12:19 2268484679
>>2268453
Не надо пытаться сразу что-то сложное сделать, начни с простых приложений. Сделай блокнот, калькулятор и т.д.
Аноним 18/01/22 Втр 06:28:36 2268529680
>>2268213
Контекст задиспозится контейнером, репу сборщик соберет. Неясно нахера инжектить контекст в контроллер, а потом передавать в репозиторий, если норм поцоны инжектят контекст в репу, а репу уже куда требуется. Тут получается какая-то каша, вместо норм абстракции.
Аноним 18/01/22 Втр 08:59:01 2268558681
>>2268453
А чем тебе файловый менеджер не угодил то?
Ну и как вариант, лучше разберись в wpf и на нём можно какую-нибудь игру запилить, интересных вариантов миллион, куда лучше чем скучную околоофисную приблуду.
Аноним 18/01/22 Втр 10:00:08 2268583682
>>2268453
>диплом
>файловый менеджер на listbox
Это законно? Я думал там минимум надо машинлёрнинг, блокчлен и вот это все.
>>2268529
>Неясно нахера инжектить контекст в контроллер, а потом передавать в репозиторий
Если так делает сеньор, то это вау, это недосягаемый полет мысли. Если это сделает ждун, то это сычев, блять, переделавай все нахер.
Аноним 18/01/22 Втр 10:19:36 2268605683
>>2268583
Говорю же, у нас древние технологии. Мы сейчас изучаем Visual FoxPro…
Аноним 18/01/22 Втр 10:26:20 2268610684
>>2268605
Я не про новизну технологий, а про уровень диплома. Файловый менеджер, как мне кажется, едва на курсач тянет. Но, видимо, какая шарага, такие и дипломные и дипломы.
Аноним 18/01/22 Втр 10:34:13 2268627685
>>2268610
Ну да. Мы код почти не пишем :(

>>2268558
>А чем тебе файловый менеджер не угодил то?

Да я кучу функциональности делаю через костыли. И когда их много, как-то неприятно становится. Понимаю, что мои одногруппники вообще калькулятор роста напишут (введите ваш рост) и это покатит, но самому хочется что-нибудь менее кривое сделать. Менеджер я конечно допишу, но как диплом сдавать не уверен что стоит.

>>2268484
>>2268558

Спасибо, аноны
Аноним 18/01/22 Втр 11:26:53 2268699686
>>2268627
А чем вы там занимаетесь? Всё по старинке, куча математики?
Аноним 18/01/22 Втр 12:01:06 2268730687
изображение.png 18Кб, 720x259
720x259
>>2268433
вкратце: есть модель машины (Car), мы создаем в вьюмодели массив из машин, правильно ли это? пример из метанита.

допустим я понимаю, что во вью у нас разметка и биндинги к свойствам, а модель это по сути класс описывающий модель (например машину), но я не понимаю что должно быть во вьюмодели, где должны быть комманды, где списки/массивы объектов и т.д
Аноним 18/01/22 Втр 12:16:09 2268751688
image.png 33Кб, 810x439
810x439
Сложилось такое мнение, что мягким как-то все-равно на опенсорс, ну типа они увидели выгоду для облаков своих, или MAUI для андроида (оставив на обочине линукс). Ну, то есть, я думал изначально они хотят завоевать расположение коммьюните, но в реале им как-будто все равно.

Насколько я неправ? Просто, для себя считаю шарп наилучшим решением на сегодня, но не уверен насколько стоит инвестировать силы и время.
Аноним 18/01/22 Втр 13:14:58 2268810689
>>2268730
бамп вопросу, объясните что должно вообще находиться в ViewModel
Аноним 18/01/22 Втр 13:25:00 2268823690
>>2268751
Если им всё равно то зачем сделали открытую кроссплатформенную реализацию? Что за Чушь? Они активно развивают, для этого нужно время чтобы сделать хорошо
Аноним 18/01/22 Втр 13:31:43 2268833691
>>2268751
>Ну, то есть, я думал изначально они хотят завоевать расположение коммьюните, но в реале им как-будто все равно.
Офк майкрософт — коммерческая компания делающая $ и им похуй на всё, что не приносит денег прямо или косвенно.

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

Нравится шарп — вкатывайся.
Хочешь гуй на линуксе на современном языке — посмотри на Compose Multiplatform, жидбрейнс на линукс точно не забьют.
Аноним 18/01/22 Втр 13:44:29 2268849692
>>2268730
Ну вот этот ApplicationViewModel содержит данные которые вид будет рисовать. В этом и смысл.

А юзать ли Phone или делать PhoneViewModel...
1 ну если у тебя биндинг не Mode=OneTime, то без INPC будет утечка памяти. Иначе нормик
2 Если тебе нужно хранить еще что то, например IsSelected, то конечно ты не можешь это делать в Phone, ибо текущий выделенный пункт на экране это чисто UI-шное понятие и потому нужен будет PhoneViewModel

Делать ли PhoneViewModel как враппер или с такими же полями - фломастеры
Аноним 18/01/22 Втр 14:10:03 2268896693
>>2268823
На само сообщество я не надеюсь, есть ли у них какой-то у мягких roadmap? Как они планируют развиваться?

>Compose Multiplatform
Это вроде как котлин? Так, вроде, он до бэкенда нормально не добрался? у джавы не очень де-факто стандарт либы, мне не заходит, какой бы там синтаксис не был
Аноним 18/01/22 Втр 14:19:43 2268904694
Что напиздеть на интервью про собственные проекты? Ну я там писал конечно немного, но что-то прям показать годного не могу. Просто рассказать что делал приложения по работе с данными из интернета, по записи в базу данных, и т.д?
Аноним 18/01/22 Втр 14:29:20 2268912695
>>2268833
>Compose Multiplatform
Какая лютая фигня. Начиная с названия, я подумал это с мобильника вообще. Заканчивая попыткой захватит все и вся.

Пока мир пытается в вебассембли, а мягкие делают хотрелоад, чтобы удобно тыкать UI. Брейнсы, без флагманских фрейворков и даже нормальной стандартной либы, пытаются в лоб взять пьедестал js в веб. они даже не представляют, как далеко ушел фронтент и как эти примеры с получением DOM выглядят примитивно сейчас
Аноним 18/01/22 Втр 14:45:59 2268931696
>>2268912
>как эти примеры с получением DOM выглядят примитивно сейчас
какие примеры?
куда ушел фронтенд?
Все эти react/flutter/swiftui/compose - они как братья выглядят. Разница в возможностях конкретного языка для выражения.
Аноним 18/01/22 Втр 14:46:57 2268932697
>>2268912
>Начиная с названия, я подумал это с мобильника вообще
Ну оно изначально так и есть.

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

Энивей, если нужен кроссплатформенный гуй именно для пека — лучше ничего не будет, тупо нет компаний которые на этом зарабатыввают и сами же догфудят свои либы.
Аноним 18/01/22 Втр 14:48:25 2268935698
>>2268931
>react/flutter/swiftui/compose - они как братья выглядят
Последние 3 про дом вообще ничего не знают, мне кажется он явно не о том.
Аноним 18/01/22 Втр 14:59:55 2268957699
>>2268932
> которые на этом зарабатыввают
Они сами пишут что только какое-то там приложение JetBrains Toolbox App (на мильён пользователей) почему не 3 billion devices?. Вот когда эта штука с пруфами будет на их рабочей лошадке - IDE, тогда и посмотрим.

>история такая — начали пилить какую-то новую десктопную тулзу, на захотели тащить половину идеи ради гуя и кринжанули с авт/свинга
Так у них IDE же на подобие свинга? Как они кринжанули, если это их хлеб? Зачем вообще жабисты в Qt полезли.
В общем, это очень весело.
Аноним 18/01/22 Втр 15:12:33 2268976700
>>2268957
>Вот когда эта штука с пруфами будет на их рабочей лошадке - IDE, тогда и посмотрим.
На ней уже вроде как делают Fleet.
Энивей это дело времени.

>Так у них IDE же на подобие свинга?
Да, они на лэндосе сами пишут для чего эту хуетень делают
>Excellent AWT and Swing interoperability.

>Как они кринжанули, если это их хлеб?
Ну ты бы наверно тоже кринжанул, если бы тебе на MFC и каком нибудь C++/CLR пришлось новый проект начинать, нет? Или хлеб не пахнет?
От жавы же как-то тоже кринжевать начали. Ахуенная логика у тебя, конечно.

>Зачем вообще жабисты в Qt полезли.
Не захотели хуйлион строк легаси тащить, видимо.
Аноним 18/01/22 Втр 15:38:51 2269008701
>>2268976
>Энивей это дело времени.
Понял, опять нужно подождать. Помню еще обещали, что котлин станет мейнстримным языком, вот лет 5 уже ждем.

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

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

Kotlin - 341 repository results
Rust - 565 repository results

Даже раст обогнал по числу реп, хотя у него чуть меньше было 2 года назад (где-то в районе ~250 было)
https://github.com/search?l=Rust&q=stars%3A%3E1000&type=Repositories

Аноним 18/01/22 Втр 15:50:40 2269025702
>>2269008
>Помню еще обещали, что котлин станет мейнстримным языком, вот лет 5 уже ждем.
так жависты динозавры люто ненавидящие современные подходы к программированию.
Аноним 18/01/22 Втр 16:00:52 2269041703
>>2269025
Конечно, опять программисты не те, а политика развития верная всегда.

Смешно, но если бы кто-то изначально высрал бы подобие Kotlin -> LLVM (без JVM и тем более JS), то думаю, у такого продукта, шансов было бы куда больше.
Аноним 18/01/22 Втр 16:02:37 2269043704
>>2269008
>Понял, опять нужно подождать.
Как с MAUI и вообще всем, что начали пилить меньше 3-5 лет назад.

>котлин станет мейнстримным языком
На андроиде таки стал. А в интерпрайзе и на джаву после 8 не переезжают.

>Высрали десктоп, который в эту эпоху знатно так затухает.
Ну разрабы-то с десктопов никуда не слезут пока не станет возможным провод в мозг въебать, они просто пилят продукт для себя.
Те же майки, очевидно, не будут догфудить MAUI на десктопах (ибо нахуя), и first class поддержка будет только у мобилок и винды (хотя последнее тоже не факт).

Короче, тут вопрос в том, стоит ли у того анона которому я изначально отвечал на кроссплатформенный десктоп или нет. Судя по его посту — ещё как, лол.
Аноним 18/01/22 Втр 16:06:15 2269051705
>>2269041
>Kotlin -> LLVM
Дык он есть, пчел. Нужен всем примерно как AOT компиляция шарпа без юнити. Т.е. полутора землекопам.

Это же язык задизайненный под жвм, лол.
Аноним 18/01/22 Втр 16:28:04 2269090706
>>2269041
>Конечно, опять программисты не те
Да. программисты не те.
Это же жависты. Они пишут на многословном убогом языке. Им норм. И абсолютно не хотят ничего нового изучать.

>>2269043
>На андроиде таки стал
Не стал. Стал рекомендуемым дефолтным, но не основным.
Аноним 18/01/22 Втр 17:06:29 2269149707
>>2269051
>Kotlin -> LLVM
Ключевое слово "изначально", в реальности котлин появился как баг-фикс синтаксиса джавы, со всеми вытекающими. И только потом "это" начали портировать в native.
А мог бы стать хорошим полу/функциональным языком с вменяемым синтаксисом, без оглядки на жабу, с прикрученным подсчетом ссылок. На LLVM даже исключения есть, лол.
Аноним 18/01/22 Втр 17:13:41 2269158708
>>2269043
>Как с MAUI и вообще всем
Хрень без поддержки пинуса, на базе ксамарина с целью покорения мобилок. Так что цель была не супер десктоп, а больше чтобы потыкать в телефоны.

>На андроиде таки стал.
Так, что теперь на ведре надо изучать сразу два языка, жабу и котлин. "Даешь два языка, за ту же зарплату", красавцы.
Года два назад видел статистику, где жаба занимала более 50% кода на ведре
Аноним 18/01/22 Втр 17:19:21 2269160709
>>2269090
>Не стал. Стал рекомендуемым дефолтным, но не основным.
Ну если не брать в расчет совсем уж полное легаси, то на андроиде почти все переехали на котлин или переезжают.
Да и даже в бекенде уже можно его встретить, хотя вряд ли он там сильно взлетит, но тем не менее.

>>2269149
Тогда котлин не удалось бы затащить на мобилки. И вообще, что бы писали на котлине, не имея он совместимости с жабой? Сейчас ты можешь и на андроид бахать приложухи, и писать энтерпрайз на спринге.
Аноним 18/01/22 Втр 17:31:39 2269178710
image.png 395Кб, 1566x821
1566x821
>>2269043
>На андроиде таки стал
То что после 2010 года о жабе было что-то слышно, кроме далекого тырпрайза, было благодаря ведру. Котлин подвинул эту жабу и начал понемногу топить. Но проблема в том, что когда жаба тонет, она тянет все JVM языки, в том числе и котлин. И только андроид помогал держать на плаву это безумие, пока скала, груви и тд шли весело на дно. И все было хорошо, но появилась фуксия и точка невозврата произошла, когда самсунг объявил о переходе на фуксию.

Котлин мог покорить бэкенд, и запилить флагман в виде какого-нибудь ASP.Spring или хотя бы унифицировать частоиспользуемые библиотеки (и не трогать пока native и js), в общем могли запилить свои батарейки (хотя бы как в го), чтобы люди не чувствовали что до сих пор пишут на той же джаве. Могли сделать многое, Но нет, они сделали нейтив, js и вот десктоп.
Аноним 18/01/22 Втр 17:32:28 2269182711
>>2269090
>Не стал. Стал рекомендуемым дефолтным, но не основным.
По общему количеству кода — офк нет и не станет, по проектам — все либо уже переехали либо переезжают. Либо этот проект — телеграм под ведроид.

>>2269149
А дотнет, не лезь в залупу майки, мог бы быть главным бэкэнд и энтерпрайз языком. А ещё быть первым рекомендуемым на ведре, лол.
Есть как есть, заканчивай фантазировать.

>>2269158
>Так что цель была не супер десктоп, а больше чтобы потыкать в телефоны.
Я про это, блять, и пишу. Правда прибежали какие-то дикие шизы и начали рассказывать что котлин говно, при том что про язык я не писал.

>Года два назад видел статистику, где жаба занимала более 50% кода на ведре
Так в этом году официальному форсу котлина на ведре только 3-й год будет.
Аноним 18/01/22 Втр 17:35:45 2269189712
>>2269178
>И все было хорошо, но появилась фуксия и точка невозврата произошла, когда самсунг объявил о переходе на фуксию.
Ага, будет умирать как винда?
Аноним 18/01/22 Втр 17:38:37 2269194713
>>2269178
>Котлин мог покорить бэкенд
От жабы этих библиотек там как говна. Да и языков, тащут вообще всё. Другой вопрос, нахуя тебе гигансткая залупа в стиле спринга/асп, язык с вм и всё вот это чтобы пилить микросервисы.
Питухон/го делают брррррррр тебе за щеку.
Аноним 18/01/22 Втр 17:41:50 2269199714
>>2269182
Пишу прямым текстом - "думаю" (т.е. размышляю/фантазирую).
@
Анон упрекает, что я фантазирую.


У нынешнего зумерья память как у рыбки, контест трех постов так сложно в голове удержать.
Аноним 18/01/22 Втр 17:47:47 2269216715
C# — ХУЙНЯ
Аноним 18/01/22 Втр 19:27:57 2269348716
Аноним 18/01/22 Втр 19:44:15 2269359717
image.png 31Кб, 861x177
861x177
>>2269216
Будешь ругаться и тебя купят!
Аноним 18/01/22 Втр 23:40:18 2269680718
Где можно найти годные туториалы по работе с базами данных? На Ютубе выдает дударя. На метаните скомкано. Можно на английском
Аноним 19/01/22 Срд 08:16:59 2269935719
Шарфисты, нужна помощь с автоматизацией. Пришло 10к запросов о наличии задолженности на ГИС ЖКХ, нужно всем проставить "нет" в этой графе на сайте. Может уже кто автоматизировал процесс?
Эта хуета будет приходить и дальше, скорее всего в таком же объёме
Аноним 19/01/22 Срд 08:47:40 2269943720
>>2269935
Api там вроде открытый, но разобраться все ещё не могу
Аноним 19/01/22 Срд 09:48:56 2269971721
>>2269680
Что именно тебя интересует? Администрирование, sql, орм'ы или внутреннее устройства бвз (индексы, связи, планировщик), а может acid или нормализация? Когда определишься сможешь нормальный запрос гуглу дать, а так... ну википедию почитай.
Аноним 19/01/22 Срд 10:56:18 2270039722
>>2269971
Да самые основы, sql там
Аноним 19/01/22 Срд 11:08:43 2270050723
Аноним 19/01/22 Срд 11:40:35 2270086724
>>2270050
А, то есть знания для Mysql подойдут для Microsoft? Спасибо
Аноним 19/01/22 Срд 11:48:47 2270099725
image.png 42Кб, 639x627
639x627
По MVVM так "правильно"?
В модели не должно быть ивентов, если они не нужны для самой модели, а ViewModel должна быть посредником на каждое свойство модели И она же должна вызывать ивенты?
Аноним 19/01/22 Срд 13:32:50 2270173726
>>2270086
По большей части. Про мускул не скажу, но например, то что в mssql называется cross apply в postgresql называется lateral join, но суть одна, а в sqlite этого вообще нет.
Аноним 19/01/22 Срд 14:16:24 2270200727
image.png 151Кб, 1158x240
1158x240
Двач, меня унижает моя тюльпа, она говорит что ее член больше код лучше чем мой, как мне фиксить мой код двач?
Она говорила что-то про рефлекции но она всегда говорит на ельфийском и я ничего не понимаю.
Пожалуйста помоги те уже нет сил терпеть этот презрительный взгляд
Аноним 19/01/22 Срд 14:21:27 2270209728
>>2270099
модель - основная логика. ничего не знает про отображение, смотрят на нее или не смотрят. Ни про кого не знает.

вьюмодели - содержат визуальное состояние и данные для визуального отображения, чтобы дать виду ЧТО отображать
Конечно знает про модель и не знает про вид

вид отвечает за КАК отображать и знает про всех.

В остальном каждый поворачивает как ему удобно.

Лепить враппер вьюмодель для модели. Да - если она мутабельная. Но если рид онли то лень же
И даже если не рид онли то....
Например, в твоем классе Model (со скрина) не ожидается INPC (не вьюмодель же)...но все таки.

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

Нарушение ли это? Ну хз. Но если посмотреть на INPC, то там ничего "исключительно гуишного". По факту же это просто один из способов уведомления об изменениях. И лежит он в System.ComponentModel.

Да и враппер вокруг модели или же вьюмодель-клон модели - кому как удобно по ситуации.

вьюмодели - логическое место "где должен быть код относящийся к визуальному состоянию". Но не "какой это код". А потому в реализации вьюмоделей целый зоопарк - и прямые ссылки на рутовую вьюмодель во вложенных, и обычные события, и слабые события ака мессенджер, выставляют наружу Func<>, и контроллеры (которые призваны решить проблему "пипец вьюмодели тяжелые god-object, но опять же каждый понимает по своему) то есть MVVMC.
Например, лично мне не очень нравится подход "защищаемся от утечек памяти слабыми событиями, а если еще и Dispose нужно вызывать, то хер с ним" поэтому я использую подход с Lifetimes.

Так что.
это из разряда "как отображать или имеет ссылки на контролы (сборки визуальной части) и тому подобное?" - в вид
это из разряда "что отображается, содержит логику ЧТО отображать или состояние этого ЧТО отображать и не содержит ссылок на сборки из gui" - вьюмодели. Например, Visibility это просто флаг, но он ссылается на сборку из гуи, а потому во вьюмодели быть не должен. То есть правильная вьюмодель - если ты вынесешь их все в отдельную сборку, где не будет зависимость ни на какие System.Windows/PresentationFramework/Xaml и тому подобное и оно без проблем будет компилироваться.

остальное распихивается куда удобно
Аноним 19/01/22 Срд 14:50:47 2270237729
>>2270209
Тогда получается, что... эээ... Если я запилю INotifyPropertyChanged в модели, то логично будет написать ВьюМодель так, чтобы она просто давала ссылку на модель и всё, потому что если дублировать свойства, то придётся и подписываться на ивент модели и перевызывать ивент ВьюМодели, и при этом имена свойств должны быть идентичными...

С другой стороны, если вдруг в дальнейшем для уже существующей модели с INotifyPropertyChanged приспичит написать ещё один ГУИ на другом фреймворке, который - чисто гипотетически - ожидает другой интерфейс и другие типы событий, то, при условии неизменности модели, мне придётся запилить ВьюМодель, которая вынужденно будет дубировать модель, подписываться на её PropetyChanged и вызывать другой ивент, генерируя для него совершенно новый объект, потому что иначе хер там, а не изменения, верно?
Аноним 19/01/22 Срд 15:07:56 2270258730
>>2270237
>Если я запилю INotifyPropertyChanged в модели
>чтобы она просто давала ссылку на модель и всё
Смотря зачем делать в модели INPC. Если для "нахер мне вьюмодель с такими же полями, если INPC и так защитит меня от утечек памяти, да и сама уведомит", то это до первого подрыва на "контрол не может быть вызван из другого потока", ведь модель ничего не знает про UI контекст.

> мне придётся запилить ВьюМодель
это ж другой гуи, у него свои правила и ему нужно вьюмодель - пишем вьюмодель.
Аноним 19/01/22 Срд 15:20:10 2270271731
>>2270258
>Смотря зачем делать в модели INPC.
Я не знаю. Я просто потихоньку учусь. Чуть-чуть освоил шарп и почти сразу полез в ВПФ. Так что для меня
>контрол не может быть вызван из другого потока
>UI контекст
чёрная магия. Я пытаюсь научиться хотя бы минимально и, самое главное, осознанно что-то пилить.

>это ж другой гуи, у него свои правила и ему нужно вьюмодель - пишем вьюмодель.
Поэтому мне сейчас кажется, что вьюмодель должна таки дублировать модель и реализовывать ивенты, а модель не стоит захламлять ивентами для целей ГУИ.
Аноним 19/01/22 Срд 15:52:43 2270303732
>>2270271
>чёрная магия
да никакой магии. Обновив свойство в другом потоке дернется OnPropertyChanged, который вызовет обновление контрола не из UI потока, на что тот ругнется исключением.
Потому модель может реализовывать INPC как средство нотификации об изменении своих свойств, но если ее свойства будут изменяться из других потоков, то без Dispatcher не обойтись, а это уже не дело модели знать про это
Аноним 19/01/22 Срд 17:28:15 2270471733
Что лучше, котлин или сишарп работаёбов прошу не беспокоить
Аноним 19/01/22 Срд 18:08:16 2270519734
Аноним 19/01/22 Срд 18:20:30 2270538735
>>2269680
Если апи открытый и единообразный, просто берешь HttpClient, Json.Net и посылаешь нужные запросы. Возможно предварительно надо будет залогиниться, тогда шлеш запрос на логин и в зависимости от схемы(токен или кука) - крепишь к последующим запросам.
Вообще, для автоматизации, можешь вместо шарпов взять постман, почитай инструкцию. Он умеет в переменные и жс, так что если данные в обычном жсоне гоняются или xml - просто собери их, потом в обычном цикле - нужный ответ пошли. Опять же плюс постмана в этом плане - можешь посмотреть как данные гоняются наглядно и сразу видеть что тебе пришло, что ты отправил, что ответили.
Аноним 19/01/22 Срд 18:45:13 2270591736
>>2270519
Для разработки, очевидно.
Аноним 19/01/22 Срд 18:53:01 2270605737
>>2270591
для разработки чего?
вот я на питоне разное быстрое прототипное или вообще что нужно быстро написать, где потоки не нужны или очень нужны батарейки.
на шарпе пишу фундаментальное, то есть где уже должно работать хорошо и долго. Ну и десктоп тоже, если нужно - ибо "а на чем еще" (на текущий момент)
а под андроид пишу на котлине, потому что выразительность котлина + jetpack compose (ну и конечно нативность) для меня превышают "не хочу изучать новый язык, есть же хамарин", а на не-андроиды мне с большой колокольни.
Аноним 19/01/22 Срд 19:00:59 2270625738
>>2270605
90% Бэкенд (многолетний, по большой части монолитный).
10% разного рода консольные утилитки-хелперы (возможно некоторые не консольные, а с примитивным GUI'ем)
Аноним 19/01/22 Срд 19:17:01 2270666739
>>2270625
ну выбор очевиден. если ты не жавист и нет зависимости от жава либ, то шарп
Аноним 19/01/22 Срд 19:36:48 2270697740
>>2270666
Адовая рекомендация.
Аноним 19/01/22 Срд 19:42:13 2270708741
>>2270697
ок. если у тебя нет зависимости от дотнета (а ее нет), то выбирай котлин. Но потом пеняй на себя
Аноним 19/01/22 Срд 20:07:23 2270751742
Аноним 19/01/22 Срд 21:55:28 2270896743
есть один список List<int> list.

в ходе выполнения программы его длина должна быть равна 2 .
Console.WriteLine(list.Count) так и выводит 2.

но когда я собираюсь напечатать list[1] возникает ошибка 'Index was out of range. Must be non-negative and less than the size of the collection.

При этом Console.WriteLine(list[0]) и Console.WriteLine(list[-1]) срабатывают без ошибок

Перебор списка foreach тоже срабатывает без ошибок. Я не понимаю в чем дело, помогите
Аноним 19/01/22 Срд 21:56:49 2270898744
>>2270896
то есть не Console.WriteLine(list[-1]) , а Console.WriteLine(list[^1])
Аноним 19/01/22 Срд 22:08:29 2270917745
>>2270896
попробовал ещё кое-что. в итоге

Console.WriteLine(list[list.IndexOf(list[^1])]); // печатает что надо
Console.WriteLine(list[1]); // выдает ошибку,

причем list.IndexOf(list[^1]) возвращает 1 типа System.Int32
Аноним 20/01/22 Чтв 00:03:41 2271045746
>>2247357 (OP)
Сап ,аноны ,дайте совет зелени . Прочитал книжку по шарпу , хорошо освоил теорию , немного попрактиковался и меня взяли работать за еду. Работаю уже полтора месяца . Мне очень трудно , у меня все плохо получается . Бывает сижу очень долго с ерундовыми задачами ,который джун бы как орешки щелкал у меня позиция интерна. Понимаю ,что учиться надо было раньше ,но все же. Хожу на постоянном стрессе , меня постоянно троллит ментор и часто не понимает меня . Я не могу так больше работать . Один раз намекнул на вторую неделю работы ,чтобы я шел к директору увольняться ,но директор посмеялся и сказал остаться . Все через это проходят ? Сегодня просто был какой-то день ,что я почти выгорел . Стоит увольняться ,или это обычный путь всех начинающих ?
Аноним 20/01/22 Чтв 01:07:50 2271101747
>>2271045
Я за свои первые полтора месяца был самым счастливым человеком в офисе. Мне было глубоко параллельно, что о моем посредственном навыке думали окружающие, потому что писать код для меня это самое охуенное занятие какое только придумало человечество. А когда код работает и выполняет функции по тз, то этот момент круче, чем секс. Любой начальный стресс этого стоит.

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

А если на волне хайпа ты выбрал не ту профессию, от которой не получая отдачи, несёшь только психологические убытки, то - ну хрен его знает. Трудно давать такой совет. Бросить легко, а найти другой трамплин может и не получиться. С другой стороны, возможно, твоя работа мечты, вот прямо сейчас, ждет такого соискателя, как ты... Но это последнее звучит довольно сомнительно, как по мне.
Аноним 20/01/22 Чтв 02:00:52 2271117748
>>2271045
> Прочитал книжку по шарпу , хорошо освоил теорию , немного попрактиковался и меня взяли работать за еду
Пидорас, пошёл нахуй. Я вот ищу третий месяц и нихуя нет. То интервью ебанутые, то спрашивают как с мидла.
Аноним 20/01/22 Чтв 08:12:06 2271167749
Как взломать райдер? Раньше можно было продлевать 30-дневную лицензию, а сейчас они это прикрыли.
Аноним 20/01/22 Чтв 09:10:48 2271184750
Как в консольный проект .NET 6 подключить System.Windows.Forms? Есть инструкции для Framework, но они уже не работают.
Аноним 20/01/22 Чтв 10:06:12 2271211751
>>2270917
Очевидно, у тебя в листе только один элемент.
Аноним 20/01/22 Чтв 10:20:10 2271225752
6129084299.jpg 748Кб, 839x1200
839x1200
Там это, вышло 5-е издание Библии C#!!!
Аноним 20/01/22 Чтв 10:24:56 2271230753
>>2271184
Что там может не работать? Подключаешь dll -> юзаешь
Аноним 20/01/22 Чтв 10:27:30 2271231754
>>2271230
Как подключить dll в Visual Studio 2022?
Аноним 20/01/22 Чтв 10:30:54 2271235755
>>2271231
Чел... Напиши тоже самое в гугл. Также как и VS2019
Аноним 20/01/22 Чтв 11:08:04 2271269756
>>2271235
Ты понимаешь, что просто dll и dll из комплекта .NET 6 - это разные вещи и они по разному подключаются. Если не знаешь, то лучше вообще не советуй. В гугле тоже пишут такие советчики, даже не понимая что отвечают. В итоге весь топ гугла - говно-советы не к месту по данному вопросу.
Аноним 20/01/22 Чтв 11:17:04 2271275757
>>2271269
>просто dll и dll из комплекта .NET 6 - это разные вещи
В чем принципиальная разница, без учета IL/машинный код
>по разному подключаются
Ну если ты пытаясь подключить нетовскую либу ищешь как подключать COM, то сам дурак. Хотя оно тоже подключается в том же окне.
Аноним 20/01/22 Чтв 11:34:32 2271291758
>>2271117
Ну я тоже не в первый день нашёл. Есть фидбек? Какие именно мидловские вопросы задают?
Аноним 20/01/22 Чтв 12:06:25 2271315759
>>2270625
Да вообще похуй, бери любой яп на который пипирка стоит, это не те области, где язык принципиален.
Аноним 20/01/22 Чтв 12:21:29 2271329760
image.png 135Кб, 1158x240
1158x240
Двач, меня унижает моя тюльпа, она говорит что ее член больше код лучше чем мой, как мне фиксить мой код двач?
Она говорила что-то про рефлекции но она всегда говорит на ельфийском и я ничего не понимаю.
Пожалуйста помоги те уже нет сил терпеть этот презрительный взгляд
Аноним 20/01/22 Чтв 12:38:20 2271345761
>>2271329
Прочитай книжку Стив Макконнелла "Совершенный код"
Аноним 20/01/22 Чтв 13:15:09 2271383762
>>2271230
Так уже не работает. Теперь другой принцип

>2271184
добавь
<UseWindowsForms>true</UseWindowsForms> в *.csproj
Аноним 20/01/22 Чтв 13:46:00 2271407763
>>2271383
error : неопознанный элемент <UseWindowsForms> в элементе <Project>
Аноним 20/01/22 Чтв 13:50:22 2271411764
>>2271407
да почему в Project то
в PropertyGroup надо. Ниже указания фреймворка допиши
и то что используется <Project Sdk="Microsoft.NET.Sdk"> уже само собой разумеется.
Аноним 20/01/22 Чтв 14:01:02 2271417765
>>2271407
ну и до кучи
подключить WPF
<UseWPF>true</UseWPF>

Убрать генерацию локазированных dll. всякие папки ru, zh-Hans
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
Аноним 20/01/22 Чтв 14:56:49 2271463766
Аноним 20/01/22 Чтв 15:18:39 2271481767
>>2271463
По .NET 6 только Прайс выпустил книгу и то её ещё не перевели.
Аноним 20/01/22 Чтв 15:28:37 2271496768
Аноним 20/01/22 Чтв 15:35:13 2271502769
>>2271481
>не перевели
А зачем? Как вообще можно учить программирование на каком-то языке, если не знаешь хотя бы базового технического английского? Я вот тоже не особо могу в него, так я пользуюсь переводчиком на незнакомые или редкие слова, и этого хватает. Перевод мало того, что ждать дополнительно надо, так ещё и перевод может быть кривым.
Аноним 20/01/22 Чтв 15:36:17 2271506770
>>2271502
У Флёнова сразу на русском
Аноним 20/01/22 Чтв 15:39:19 2271513771
>>2271506
ага, спустя полтора года, да и к автору вопросы есть у обитателей интернета
Аноним 20/01/22 Чтв 16:57:07 2271567772
Почему не выпускают книг по Blazor?
Аноним 20/01/22 Чтв 18:38:15 2271684773
Поясните за XAML + MVVM шизоидов? Работаю в .NET уже больше трех лет, в основном веб + иногда ковыряю винФормс.

Вот эти все WPF, Xamarin, UWP, MAUI - это вообще что такое, типо эксперимент над разработчиками? Всегда, когда вижу обсуждения, вздыхаю с облегчением что не приходилось копаться в этом дерьме за исключением мелкого проекта на WPF.
Аноним 20/01/22 Чтв 18:41:43 2271691774
Зырьте чего придумал https://ideone.com/3hTIWV
А? Круто? Круто же? А? Или не круто? Что думаете в общем? И вообще, чего я не учел и почему оно - говно по вашему менению?
Аноним 20/01/22 Чтв 19:03:52 2271714775
>>2271691
Там правда при отписке немного напартачил из-за того что при удалении проверяю handlers. Тяжело в блокнотике код писать(((
Аноним 20/01/22 Чтв 19:27:11 2271745776
>>2271691
Ну, заодно я поясню нахуя я эту хуйню придумал.
Хочу понизить связность кода. Вооот. Ну, типа меня заебало что я логгер постоянно дергаю а потом оказывается что какие-то сообщения - не особо-то и нужны и приходится по всему коду искать, где ж я это сообщение пишу в логгер. А так у меня будет LogHandler который реализует логгирование всех нужных мне событий, я в одном месте буду править логи и не нужно как ебалдуй бегать. При этом никакой статики. Статика ж зашквар вроде как. А дальше, может быть у меня будут какие-то события прикладного уровня, ну, типа я захочу статистику вести - сделаю Statistic и он будет реализовывать интерфейсы событий, по которым надо статистику.
Но меня конечно немного смущает что EventDispatcher - нужно передавать везде где будет подписка-отписка и события кидаться. Я пока не придумал как это решить.
Аноним 20/01/22 Чтв 19:49:57 2271768777
>>2271684
Аналогично хвалю богов что мне не приходится иметь дело с фронтедом, браузерами и прочей херней, а есть нормальный нативный фреймворк для построения GUI, а не ебанизм в виде электронов и хтмл с жс
Аноним 20/01/22 Чтв 20:22:30 2271790778
>>2271567
Потому что он нахуй никому не нужен. А книги кому-то надо продавать.
F пока его не допилят до состояния, когда он будет реально иметь хоть какое-то приемущество перед жопаскриптом — он и не станет никому нужен.

Проблема почти всех новых технологий, короче.
Аноним 20/01/22 Чтв 20:37:51 2271800779
>>2271684
>WPF, Xamarin, UWP, MAUI - это вообще что такое, типо эксперимент над разработчиками
Это же майкрософт, у них так всегда — везде есть фатальный недостаток.

Если ты не знаком с этой историей — можешь ознакомится с знаменитой пастой, которую почему-то стали забывать:
История программных революций от Microsoft, вкратце: Сначала были Windows API и DLL Hell. Революцией №1 было DDE – помните, как ссылки позволили нам создавать статусные строки, отражающие текущую цену акций Microsoft? Примерно тогда же Microsoft создала ресурс VERSION INFO, исключающий DLL Hell. Но другая группа в Microsoft нашла в DDE фатальный недостаток – его писали не они! Для решения этой проблемы они создали OLE (похожее на DDE, но другое), и я наивно вспоминаю докладчика на Microsoft-овской конференции, говорящего, что скоро Windows API перепишут как OLE API, и каждый элемент на экране будет ОСХ-ом. В OLE появились интерфейсы, исключающие DLL Hell. Помните болезнь с названием «по месту», при которой мы мечтали встроить все свои приложения в один (возможно, очень большой) документ Word? Где-то в то же время Microsoft уверовала в религию С++, возникла MFC решившая все наши проблемы еще раз. Но OLE не собиралась сложа руки смотреть на это, поэтому оно заново родилось под именем COM, и мы внезапно поняли, что OLE (или это было DDE?) будет всегда – и даже включает тщательно разработанную систему версий компонентов, исключающую DLL Hell. В это время группа отступников внутри Microsoft обнаружила в MFC фатальный недостаток – его писали не они! Они немедленно исправили этот недочет, создав ATL, который как MFC, но другой, и попытались спрятать все замечательные вещи, которым так упорно старалась обучить нас группа COM. Это заставило группу COM (или это было OLE?) переименоваться в ActiveX и выпустить около тонны новых интерфейсов (включая интерфейсы контроля версий, исключающие DLL Hell), а заодно возможность сделать весь код загружаемым через броузеры, прямо вместе с определяемыми пользователем вирусами (назло этим гадам из ATL!). Группа операционных систем громким криком, как забытый средний ребенок, потребовала внимания, сказав, что нам следует готовиться к Cairo, некой таинственной хреновине, которую никогда не могли даже толком описать, не то, что выпустить. К их чести, следует сказать, что они таки представили концепцию «System File Protection», исключающую DLL Hell. Но тут некая группа в Microsoft нашла фатальный недостаток в Java - её писали не они! Это было исправлено созданием то ли J, то ли Jole, а может, и ActiveJ (если честно, я просто не помню), точно такого же как Java, но другого. Это было круто, но Sun засудило Microsoft по какому-то дряхлому закону. Это была явная попытка задушить право Microsoft выпускать такие же продукты, как у других, но другие. Помните менеджера по J/Jole/ActiveJ, стучащего по столу туфлей и говорящего, что Microsoft никогда не бросит этот продукт? Глупец! Все это означало только одно – недостаток внимания к группе ActiveX (или это был COM?). Эта невероятно жизнерадостная толпа вернулась с COM+ и MTS наперевес (может, это стоило назвать ActiveX+?). Непонятно почему к MTS не приставили «COM» или «Active» или «X» или «+» – они меня просто потрясли этим! Они также грозились добавить + ко всем модным тогда выражениям. Примерно тогда же кое-кто начал вопить про «Windows DNA» (почему не DINA) и «Windows Washboard», и вопил некоторое время, но все это почило раньше, чем все поняли, что это было. К этому моменту Microsoft уже несколько лет с нарастающей тревогой наблюдала за интернет. Недавно они пришли к пониманию, что у Интернет есть фатальный недостаток: ну, вы поняли. И это приводит нас к текущему моменту и технологии .NET (произносится как «doughnut (пончик по-нашему)», но по-другому), похожей на Интернет, но с большим количеством пресс-релизов. Главное, что нужно очень четко понимать - .NET исключает DLL Hell. В .NET входит новый язык, C#, (выясняется, что в Active++ Jspresso был фатальный недостаток, от которого он и помер). .NET включает виртуальную машину, которую будут использовать все языки (видимо, из-за фатальных недостатков в процессорах Интел). .NET включает единую систему защиты (есть все-таки фатальный недостаток в хранении паролей не на серверах Microsoft). Реально проще перечислить вещи, которых .NET не включает. .NET наверняка революционно изменит Windows-программирование... примерно на год.
Аноним 20/01/22 Чтв 20:56:19 2271819780
1. Как биндят команды/методы с разными айди скажем к кнопкам в датагриде (WPF), если проект не MVVM ?

2. Как через httpclient уже залогинившись допустим на сайте - получить с него куку session_id, хранить ее, и соотвественно далее нужные манипуляции проводить удерживая текущую сессию?
Аноним 20/01/22 Чтв 21:27:14 2271856781
>>2271800
Паста хоть и смешная, но явно писалась оч давно.
.NET - таки прочно закрепился. Как бы не крыли хуями, но формы все еще используются, просто обычно это локальное использование, для внутренних нужд, ну, а в вебе - там сейчас работы полно и на .net писать веб очень даж охуенно, разве что я не понял нахуя они сначала решили обучить людей женерик-хосту, который как-бы где хош используй, а потом выкатили для веба это вот говно с WebApplication. ИМХО - это апи - нахуй не упало если честно.
Аноним 20/01/22 Чтв 21:56:12 2271906782
>>2271800
Автор промахнулся, дотнет задержался не на год.
Вообще это нормальный этап эволюции, в рамках компании.

Не знаю какой сейчас фатальный недостаток у десктоп решений, но отказ от гуи линукса у MAUI, мне это напомнил про EEE. очень печально, я реально надеюсь, развитие дотнет кор, это не старая игра мягких
Аноним 20/01/22 Чтв 22:44:17 2271948783
>>2271856
Паста из 2001, офк в плане названий технологий устарела.
Но вот дух майков как компании передаёт и по сей день — только недавно было 2 дотнета, лол.

>>2271906
>Вообще это нормальный этап эволюции, в рамках компании.
Конкретно в компании майкрософт.
Раз уж начали про гуйню, то давай посмотрим как дела с ней в других огородах:
1) Эпл — на маке есть AppKit, на афйоне есть UIKit, недавно на обоих появился SwiftUI. Политика компании — высирать большой монолит и катить его до следующего просёра ещё 20 лет.
2) Гугл — на андроиде есть нативный UI (не знаю, есть ли вообще название) и недавно выкатили Compose. В перерывах выходит хуйлион мелких либ, (на которые/с которых) все бегут туда-сюда. Политика компании — высрать что-то фундаментальное, жидко пердеть 2-3 раза в год до следующей большой какахи через на 10 лет.
3) Майкрософт — хуярим MFC последний апдейт — 17 год, оно живое, WinForms, WPF, WinUI, UWP, MAUI, Xamarin (хоть и не сами писали), недавно видел что-то про Blazor Desktop, вот будет хохма-то... И это не только с гуем так — оно так во всём. Политика компании — срать каждый год как можно больше, 1 какаха из 10 точно взлетит.
Аноним 21/01/22 Птн 03:25:31 2272038784
>>2271291
На вакансии стажёра спрашивали реализацию собственного алгоритма сортировки который учитывал несколько условий, например чаще используются первые значения, а не весь список, про интернирование строки и замену её через unsafe (нахуя?)
Аноним 21/01/22 Птн 04:33:10 2272046785
>>2272038
>собственного алгоритма сортировки
обыденность
>интернирование строки
проверка на знание некоторых деталей внутреннего устройства дотнета
>и замену её через unsafe
проверка на углубленные знания или на интерес ко всяким глубококопаниям

Кто знает. Может они ищут людей, которые увлечены программированием, а может и тех, для кого это не более чем ремесло.
Аноним 21/01/22 Птн 09:55:52 2272098786
>>2271948
Ответ простой, эпл и гугл редко что делает для разработки. Гугл вообще выкатил на серьезных щах го и сказал жрите как хотите (и теперь у нас еще один узкоспецичный язык, но уже для микросервисов).

Так что мягкие, (вероятно, имея внутри конкурирующие группы), пилят наилучшие решения и получается как в опенсорс с 100500 решений в какой-то области.
Это лучше, чем тебе дадут свифт и скажут ешь! Неудачные решения должны затухать и исчезать.
Так что все нормально, загляни в какую-нить жабу, ты SQL фреймворков найдешь больше чем изучишь за жизнь (и все они не о чем).
Аноним 21/01/22 Птн 10:41:38 2272126787
>>2271906
>отказ от гуи линукса у MAUI
Получается нет смысла изучать шарп?
Аноним 21/01/22 Птн 11:24:06 2272148788
>>2271906
>гуи линукса у MAUI
Появится компания, которая запилит гуй, если будет востребовано майки их купят, а если нет, то зачем им лишний геморрой.
ХЗ, на самом деле кому нужен гуй на лине кроме 1,5 анонимов с двача. Десктоп и так полмертв, а на лине даже родиться не успел.
Аноним 21/01/22 Птн 11:28:49 2272152789
>>2271948
>1 какаха из 10 точно взлетит
ВЕНЧУРНЫЙ ИНВЕСТОР
Аноним 21/01/22 Птн 11:36:39 2272157790
>>2272126
>Получается нет смысла изучать шарп?
Если твоя цель писать гуи для пинуса, то ты где-то свернул не туда шарп, очевидно не твой друг.
Аноним 21/01/22 Птн 11:40:24 2272164791
>>2272126
Весь попенсорс отдан попенсорсу (тот же MAUI, или полудохлая авалония), но реальность попенсорса такова, что никто там за идею не работает (только GNUтнутые).

Это проблема не шарпа, а самих людей. То же самое наблюдается в расте, котлине, и даже в джаве, никто за бесплатно ничего толком не пилит (но языки очень любят, лол).
Скажем, можно открыть джаву и увидеть тонну решений для бэкенда, но в реале все кроме Спринга это мусор. И так же есть культовые решения, но опять же без доков (а ты попробуй на жабе сорцы почитай).

Для меня шарп сейчас самый лучший язык для бэкенда со статической типизацией и перформансу. Котлин убивает жабье наследие, на го что-то многолетние писать кромя микрокаках больно.
Аноним 21/01/22 Птн 11:41:41 2272166792
>>2272126
а зачем, там же консольки дрочат, а гуи для слабаков
Аноним 21/01/22 Птн 11:42:11 2272168793
>>2272148
Вот захочу я себе запилить дискорд++, чтобы юзеры могли юзать в телефоне, на винде, на маке и линуксе. И получится, что с MAUI я сосну тунца.
Аноним 21/01/22 Птн 12:11:03 2272191794
>>2272168
Ну соснешь и соснешь. Я же говорю майкам до полутора пилильщиком дискордов дела нет. Им линух только для облаков нужен.А если кто-то считает что на гуе под линь можно бабла срубить может запилить поддержку линя.
Аноним 21/01/22 Птн 14:33:57 2272303795
Всем привет,подскажите пожалуйста как через условный оператор обработать случай, когда массив имеет ссылку на null. Задача на codewars (If an empty value ( null, None, Nothing etc. ) is given instead of an array, or the given array is an empty list or a list with only 1 element, return 0.)
Аноним 21/01/22 Птн 15:08:29 2272329796
>>2272168
Нравится, когда двачеры от лица компании говорят, как-будто что-то понимают.
Игра в опенсорсе простая, либо ты играешь со всеми, либо катишься к тунцам.
ЕЕЕ тут не пройдет.
Аноним 21/01/22 Птн 17:16:46 2272473797
С MAUI они меня в ноябре расстроили, а сейчас прям добили(((
Аноним 21/01/22 Птн 17:23:34 2272483798
Сап #арпач, в разработке проекта встал конструктивный вопрос, можете сказать за какую сторону вы?

Есть приложение на винформс C#, которое обращается кроме всего и в БД

1. Оставить все обращения в базу в самом приложении (строки сикуэльные)

2. Вынести абсолютно все обращения на сторону базы, обращаться только через вызовы фанки

Может пойти по третьему пути и селекты оставить в приложении, а запросы которые изменяют данные (инсерты, селекты, дропы) вынести в фанки?
Аноним 21/01/22 Птн 19:14:04 2272628799
>>2272098
>Это лучше, чем тебе дадут свифт и скажут ешь! Неудачные решения должны затухать и исчезать.
Ну так если бы майки не поступили с шарпом как эпл со свифтом — он сейчас был бы никому не нужен, как и 5 конкурирующих языков, бывших бы в разработке в таком случае.

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

>Так что все нормально, загляни в какую-нить жабу, ты SQL фреймворков найдешь больше чем изучишь за жизнь (и все они не о чем).
Очередную ORM написать — даже в одиночку не проблема, хуй знает к чему ты это вообще приплёл, можно с таким же успехом на жс фреймворки пальцем показать.
Аноним 21/01/22 Птн 19:26:05 2272636800
Раз MAUI не будет, то стоит перекатываться в Java?
Аноним 21/01/22 Птн 19:31:40 2272637801
>>2272038
Ну вообще-то это не мидловские вопросы. Я тоже бывал на собесах ,где спрашивали вещи, которые я не помнил наизусть . Может у тебя просто плохо получилось себя продать
Аноним 21/01/22 Птн 20:49:11 2272704802
>>2272126
На кой хуй тебе гуй? Еще и на шарпе? Ну реально?
Ну а если так нужен гуй, то хули ты как норм челы не поступишь? Гуй на какой-нибудь нативной платформе либо средствами ЖС, а основное приложение - на шарпе/любом удобном тебе языке, и общаешься либо по средствам своего протокола, либо как норм челы - рестом/rpc. На кой хуй это вот бредовое желание с тем чтобы учить одну технологию, чтобы все писать? Так - тебе только в си/плюсы, но ты там просто утонешь и нихуя не сделаешь в принципе.
Ну и да, гуй не нужон на деле. Поживешь годик на линухе - поймешь, что 99% задач - тупо быстрее и проще сделать в консольке, а гуй только чтобы видяшки/картинки смотреть и нужон.
Аноним 21/01/22 Птн 20:53:26 2272711803
>>2272704
>Гуй на какой-нибудь нативной платформе либо средствами ЖС
выучил шарп - учи еще 1005000 языков. ну а хуле )

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

>с тем чтобы учить одну технологию, чтобы все писать?
ответ кроется в этом вопросе )
Аноним 21/01/22 Птн 20:59:59 2272720804
>>2271045
Не стесняйся спрашивать у тех кто рядом.
Только аутисты типа меня, которых мамка в детстве пиздила за 4 и единственный способ хотя бы как-то самоутвердиться у них был - научиться, способны в самостоятельное обучение. Ну и всякие гении и креативные личности с талантом, которым просто прет от всего подряд и сегодня они на скрипке играют, завтра компуктер изобретают, послезавтра ебут красоток.
Прими что ты не такой. Так вот. Тебе не стоит отчаиваться. Таких как ты - большинство. И ты должен понимать, что большинство челов вокруг - такие же, просто они уже прошли этап, получили навыки и могут спокойно справляться с рядом повседневных задач(обычно это семья и 2,5 профессии, т.е. когда ты освоишь кодинг, ты сможешь еще экономику/управление/что-то еще по выбору освоить и что-то третье-на средненьком уровне). А обучение обычных людей - всегда лучше происходит в группе. Ты смотришь на других, говоришь о своих проблемах, получаешь несколько решений, возможно появляется дискуссия о том как лучше и ты наблюдаешь, видишь аргументы тех кто шарит.
Короче. Я тебе про правило часа хотел пояснить. Делаешь таску. За час не понял как нормально сделать - гуглишь, выбираешь готовые решения которые как минимум выглядят компетентно, пытаешься их применить - не подходит - идешь к старшим и плачешься , какое ты чмо, что вот, я пытаюсь решить задачу, вроде как нашел 2-3-10 вариантов, но не знаю как лучше потому что: поясняешь хули ты не копипастнул первое из SO.
Аноним 21/01/22 Птн 21:11:47 2272728805
Сап, какие есть способы управления AD решеткой?
Аноним 21/01/22 Птн 21:17:32 2272732806
>>2272711
Ну, по факту-то, сделать прям охуеть какой фреймворк для гуев - пиздецки сложно. Чтоб все-все-все. Вот, есть опенапи, есть родное апи системы чтоб окно создать и за мышкой и прочими устройствам следить. Дерзай.
Ну а хули? По факту-то реально если хочется кросплатформенного гуя, ты либо так делаешь, либо берешь браузерный движок и на жс пишешь, либо кучу костылей с платформа-специфичным кодом костыляешь. А, ну да, можешь попробовать жаву и понять что на деле - что-то сложнее пары кнопок, текстбоксов, галок и выпадающих менюшек - там так же не сделаешь просто так. Это все специфика гуев и нихуя ты не денешься от этого.
Хочешь на линуксе писать гуй - бери либы специфичные для линукса, бери си/плюсы/твой язык и пиши.
> у нормальных челов можно просто взаимодействовать с гуи напрямую, а не плодить костыли. Чай не браузер, где другого варианта просто нет.
И покажи этих нормальных челов. А потом ответь, какого хуя даже в среде линукса эти нормальные челы не могут у себя порешать так, чтобы гуи от разных DE и наличия окружений - не падали и вели себя одинаково.
Аноним 21/01/22 Птн 21:31:51 2272746807
>>2271045
У тебя ментор - токсик, еще и самоутверждается за счет таких как ты челов, у которых завышенные требования к себе.
Мне вот, допустим, дали на первой настоящей работе задачу: сделай нам коммуникационный сервер, чтоб 10к rps на нашем протоколе поверх ТЦП, чтоб с веб-мордой, кроссплатформенно и микросервисной архитектурой. Ну, я еблан и сделал. В итоге - круглые глаза, когда я при этом выжатый как лимон - прошу уволить меня. Типа, бля, ты за 3 месяца сделал то что наши челы до тебя 4 года делали-делали и дропнули не осилив все требования. А я - еще и съебланил, написав заявление, но отдал его своему руководителю, а он его просто выбросил, кек, потом узнал только что нужно было сразу идти либо в отдел кадров, либо к директору. В итоег еще год сидел ждал, не понимая, хули мне не отдают трудавую и плотят ЗП. Только когда был оффер с другой конторы, в которой придложили в 4 раза больше чем тут и мой жлоб-руководитель не решился пытаться выбить мне ЗП чтоб перебить это - таки нормально уволился и на втором месте понял, что это вот все было не нормально.
Короче. Не парься. Все тупят. И тупят много. Просто кто-то воспринимает тупняки как должное, либо сравнивает себя с собой же, а кто-то зачем-то смотрит на других и сам себя дрочит. Не дрочи себя и все будет ок.
Аноним 21/01/22 Птн 21:34:22 2272750808
вот только и хтмл + жс не является кросс. оно перекладывает кросс на движок браузера.
И на выходе получается говно - памяти жрет много, умеет мало, выглядит как веб.

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

Лично я для кросс возьму авалонию если нужно будет.
правда там выглядит не нативно (как будто хтмл нативно выглядит) и беда со шрифтами (внезапно под винду), впрочем такая же беда и в хромодвижках (а значит электронах и прочем)
Аноним 21/01/22 Птн 21:38:27 2272755809
>>2272750
Сделать кросс в движке бровсера - проще. Няша. Ты думаешь, почему опенгл - не имеет своего механизма окошек и прочего и чтобы само окно отрисовать в которое ты уже передашь контекст, все еще нужны какие-то костыли в виде glut, sdl или еще чего-то? Потому что если мы хотим делать общее решение - мы должны абстрагироваться от конкретной платформы. И да, выглядеть будет не нативно. В контексте опенгла - не так страшно, потому что там обычно костылают свое все время и не нужны РОДНЫЕ компоненты.
Аноним 21/01/22 Птн 21:50:22 2272761810
>>2272755
>Сделать кросс в движке бровсера - проще
кому проще
вот я шарпист. для создания гуи в движке браузера я должен учить хтмл, стили и богомерзкий жс. Потом думать, как все это дело связать с моим приложением. А оно мне надо? Может мне сразу нужно было в жаваскриптеры идти, зачем мне шарп то,а

>мы должны абстрагироваться от конкретной платформы
>И да, выглядеть будет не нативно
то же самое делает авалония. в чем разница?
Аноним 21/01/22 Птн 22:22:57 2272779811
Сап двач, устроился 3 месяца назад на первую работу и у меня ощущение, что я там деградирую, а не расту. Как бы в теории я вижу больше, знаю больше, но из практики у меня только писание эндпоинтов и юнит тестов к ним. Проект вроде интересный, много чего можно выучить, но мне почему то так похуй на него.. и пропало любое желание учить что то связанное с кодингом в не рабочее время. До того как устроиться на работу я очень любил читать умные книжки рассказывающие внутреннее устройство языка, в первые дни работы начал читать CLR via C# и дропнул его потому что мне было ну максимально скучно, хотя зная себя мне такие вещи нравятся больше всего.. В общем вопрос у всех было вначале так или я один из тех долбаебов которые ошибся с професией
21 лвл доучиваюсь в универе еще
Аноним 21/01/22 Птн 22:25:01 2272782812
>>2272761
Вы все здесь забываете, что кросс-платформа - это 99% не про Линукс. Имеется в виду Windows/Mac + iOS/Android. На данный момент альтернатив вебу нету.

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

Поэтому все эти потуги в виде флатера, ксамарина, авалонии ни к чёму в итоге не приведут.

В любом случае, когда нужна кросс-платформа здесь и сразу - это значит кабан тупо хочет сэкономить. Правильно делать полноценный API + клиент к вебу, а потом нанимать разработчиков отдельно для нативных клиентов, если нужно. Кароче фулл-стек - это всегда игрушка кабана, не лезьте туда, и не выдумывайте якобы проблему отсутствия кросс-платформенного ГУИ, нахуй он нам не нужон этот ваш кросс-платформенный ГУИ.
Аноним 21/01/22 Птн 22:35:32 2272805813
>>2272782
>На данный момент альтернатив вебу нету.
скажите это телеграму.

>Всё попытки сделать GUI на все платформы выливаются в переизобретение браузеров
собственный рендер это совсем другое, чем "исполнение в контексте браузера"

>Поэтому все эти потуги в виде флатера, ксамарина, авалонии ни к чёму в итоге не приведут
проблема флаттера - дарт, что все равно привело к отличной популярности
У ксамарина проблема - внезапно шарп. Ну и долгий старт.
у авалонии проблема - его не поддерживает мс, то есть больше самопал. Хороший, но самопал.

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




Аноним 21/01/22 Птн 22:38:01 2272809814
>>2272782
> В любом случае, когда нужна кросс-платформа здесь и сразу - это значит кабан тупо хочет сэкономить
Неистово двачую.
Говорю это как бывший замарин разраб.
Аноним 21/01/22 Птн 22:38:06 2272810815
>>2272779
>CLR via C#
Такие книги невозможно просто взять и читать. Я например могу раз в неделю загореться и прочесть какую-нибудь главу. Можно взять некоторые главы в начале, где рассказывается про heap/stack, GC, типы, но читать в упор эту книгу - это плохая затея.

Ну я тоже после устройства перестал читать разные программисткие книги, типо SICP и других. Также перестал новые языки программирования учить, кроме F# и для фронта иногда. Изредка могу пет-проекты поделать, но тоже быстро перегораю.

Чтобы не выгорать на работе можно почитывать reddit, stack-overflow, ycombinator, например по темам Why Entity Framework sucks или OOP sucks - там будут разные дискуссии, которые заставят тебе смотреть взглядом других людей и ты сможешь так развиваться и анализировать свой код, потому что локально у тебя всегда ограниченный круг мнений о конкретно твоем проекте и о том что ты делаешь.
Аноним 21/01/22 Птн 22:45:01 2272814816
>>2272805
>скажите это телеграму
Не понял тебя, что сказать? Примитивное гугление показало, что они для каждой платформы пишут отдельный клиент. Да, есть Qt, но там целый зоопарк из языков и фреймворков.

Имелось в виду, что нет альтернативы вебу, если ты хочешь написать один клиент, который будет доступен со всех платформ из коробки без костыльных фреймворков, пусть и не как нативное приложение.
Аноним 21/01/22 Птн 22:50:07 2272816817
>>2272779
Не было. Но я аутист, которому самое то писать эндпоинты, а дома - пилить свой охуевший МВЦ фреймворк на всех языках, лол. На шарпе- написал, на жаве - написал, на плюсах - написал. Теперь нужно на каком-нибудь эзотерическом языке попробовать.

Бля. Я к чему. Профессия нужна чтоб бвбло зарабатывать. Когда у тебя будут скиллы - сможешь свалить на то что больше нравится. Если уж совсем-совсем не нравится и ты прям уверен что это не из-за того что ты что-то другое ожидал, думал что ты там будешь ежедневно сложные задачи решать, на которые годы положили лучшие умы и тут пришел такой ты и все порешал, то да, профессия таки во многом не такая, тут нужно делать много однотипной хуйни и стараться делать ее максимально качественно и быстро(соответственно и дорого). А пилить что-то интересное тебе или чем-то еще заниматься, можно и в свободное время.
Аноним 21/01/22 Птн 22:50:16 2272817818
>>2272805
Более того, те проблемы, которые ты говоришь, что проблемы
>флаттера - дарт
>ксамарина проблема - внезапно шарп
когда это совсем не проблемы для больших проектов.

Самая большая проблема - это когда тебе нужно решить сложную задачу, например оптимизацию с использование нейтивных фич для комплексного финансового приложения или отрисовку нетривиального компонента, и тут выясняется что твой
>React Native
>Flutter
>Xamarin
>Avalonia
идут хором нахуй и нанимается команда сеньйоров под каждую платформу, чтобы делать нормально.

>>2272814
Аноним 21/01/22 Птн 22:58:00 2272821819
Какой я дебил.
Блядь.
Придумал охуевшее решение с семафорами, из-за которого в одном конкретном запросе - просидает перформанс, вместо того чтобы просто кидать Task в очередь и ждать его там где мне надо. Пиздец я даун(((
Аноним 22/01/22 Суб 01:11:03 2272891820
image.png 53Кб, 923x244
923x244
Почему не работает? Как обратиться к последнему элементу?
Аноним 22/01/22 Суб 02:32:00 2272982821
>>2272817
да я уже вообще запутался за что ты топишь
лично я топлю против технологий "делаем все в браузере на богомерзком жс, да еще связываясь с ядром приложения будто это сервер какой то"
Аноним 22/01/22 Суб 09:12:01 2273037822
Как изучать ASP.NET? Уже третий раз берусь его освоить, но нифига не понимаю.
Аноним 22/01/22 Суб 09:19:51 2273038823
>>2272711
>выучил шарп - учи еще 1005000 языков
Кстати, заметил, что многие вакансии на шарп требуют ещё и знания фронтенда. В то время как вакансии джава - это чистый бекенд без фронта.
Аноним 22/01/22 Суб 10:05:18 2273050824
>>2273037
Ты пробовал выключить и включить?
Аноним 22/01/22 Суб 10:07:09 2273052825
>>2273037
Ну там, короче, ехала лямбда через лямбду, внедряла зависимость через зависимость
Аноним 22/01/22 Суб 10:08:45 2273053826
>>2273038
Жабий тырпрайз разросся до такой степени, что для крудинга нужен отдельный спец. В реале это еще связанно с тем, что надо знать 100500 либ, в шарпе же многое унифицировано. жабу тоже когда-то пытались, но возможностей не хватило
Аноним 22/01/22 Суб 11:33:32 2273075827
>>2272891
Потому что те кто делали JArray не имплементировали эту фичу(возможно из-за необходимости обратной совместимости со старым фреймворком, где еще не ввели слайсы). Используй стандартный подход с Count-1. Либо линку TakeLast(1)
Аноним 22/01/22 Суб 11:43:47 2273079828
image.png 60Кб, 880x527
880x527
Кстати к слову о зоопарке микрософт. Допустим, что мне НЕ надо кросплатформенность, просто гуи софт под винду написать(не спрашивайте, зачем). Что сейчас является каноном под вин 10+? Как я понял, последнее, что они высрали, это winui 3. Но как же я проиграл с названия видео и первого же коммента. Т.е. по факту очередной высер МС, который конкурирует с остальными высерами.
Аноним 22/01/22 Суб 12:32:33 2273110829
>>2273079
Раз не говоришь зачем, то формочки
Аноним 22/01/22 Суб 12:45:10 2273116830
>>2272728
Ап. Я, конечно, нашел майковскую библиотеку, но до конца еще не вникал, какие возможности по управлению АД она предоставляет
Аноним 22/01/22 Суб 12:51:04 2273122831
>>2273079
Лучшее решение что они придумали для гуи - винформы. Это просто лучший инструмент именно для программистов. Решения с WPF-UWP и прочим калом, это попытки выкатить говно, для средних и больших команд, где есть дизайнеры, которые условно не в состоянии нормально писать приложения, но при этом могли бы делать тот самый дизайн, темки и это вот все говно. Тебе как программисту, если ты собираешься писать софт в соло или небольшой команде - винформы будут охуеть как удобны. При этом винформы - самый логичный инструмент из всех, и самый экономичный в плане ресурсов. Лучше только голове винапи, но в таком случае тебе бы больше подошли плюсы.
Аноним 22/01/22 Суб 14:50:34 2273214832
Аноним 22/01/22 Суб 14:50:52 2273215833
Аноним 22/01/22 Суб 15:52:38 2273314834
>>2273122
>винформы будут охуеть как удобны
ровно до тех пор пока не захочешь свой вид контрола
и с этого момента понимаешь, что WPF круче
Аноним 22/01/22 Суб 16:17:25 2273369835
>>2273122
Есть книги по винформам? Раньше Петзольд писал, но там жуткое старьё и сейчас уже нигде не найдёшь книгу, а то, что выложено - кривой скан с пропуском страниц и не читабельный.
Аноним 22/01/22 Суб 16:55:14 2273412836
>>2272483
Бамп или никто с БД не работает?
Аноним 22/01/22 Суб 16:59:18 2273416837
>>2272483
1. This.
2. Выиграть 0.000001 сек на каждый запрос на парсинге и проебать в поддерживаемости и гибкости. 12/10.

>Может пойти по третьему пути и селекты оставить в приложении, а запросы которые изменяют данные (инсерты, селекты, дропы) вынести в фанки?
Успокойся и оставь базу данных базой данных.
Аноним 22/01/22 Суб 17:41:03 2273460838
Аноним 22/01/22 Суб 17:54:42 2273472839
Есть основной проект в solution и есть проект побочный. У побочного проекта есть своё окно с вьюхами. Можно ли как-то через datatemplate добавить окно побочного проекта на окно основного? Лично что-то пока не совсем понимаю, как это сделать
Аноним 22/01/22 Суб 17:56:52 2273475840
>>2273472
точно так же, как будто эти вьюхи лежат в твоем основном проекте, просто в другом неймспейсе. Никакой разницы нет.
Аноним 22/01/22 Суб 18:25:29 2273504841
>>2273416
Я сам за первый вариант, но как его обосновать?
Мне говорят что так всегда разрабатывались клиент серверные приложения, что это быстрее и безопаснее и что можно не перекомпилируя проект внести изменения на стороне базы.

Я пытаюсь рбъяснить что это все превратит дальнейшую разработку и поддержку в ад, но нужны пруфы несостоятельности второго подхода.
Аноним 22/01/22 Суб 19:19:28 2273566842
Собираюсь попробовать запилить extension для visual studio 2022. На чет там можно писать gui? Мне нужно будет всякие кастомные tool windows делать. winforms? wfp? Или что там сейчас вообще?
Аноним 22/01/22 Суб 19:46:51 2273612843
Аноним 22/01/22 Суб 20:06:42 2273647844
>>2273566
ну тулз винды на WPF можно
а вот то что в Options - там похоже только винформсы
Аноним 22/01/22 Суб 20:23:53 2273671845
>>2273612
Чел что канал ведет - не дотнетчик. Скорее всего плюсовик, который использует .net из-за удобства и простоты. Часто подсматривает SO.
Для нуба - там все равно много полезного, наверное. Если прям совсем ничего не знаешь. Рассказывает довольно просто и понятно. Но видно что ООП это не совсем его.
Короче. Я к чему. Если совсем нуб - то норм вполне. Просто-понятно и быстро.
Я бы советовал таки видосики с тем лысым хреном с ITVDN. Хотя для игродела будующего - там много кишочков дотнета, которые будут лишними в юнити.
Вообще. Да. Я тут подумал. Наверное именно симплкод для освоения основ и потом переходить к примерам которые сами юнити как обучающие дают - самое то для нуба. Хотя я бы конечно таки лысого хера с ITVDN советовал, он разжевывает так хорошо, и при этом много кишков, которые таки не в геймдеве - полезны оказываются.
Аноним 22/01/22 Суб 20:27:12 2273677846
>>2273671
Спасибо большое за ответ, обязательно чекну ITVDN.
Аноним 22/01/22 Суб 20:30:58 2273685847
>>2273677
На всякий случай таки уточню, что именно с лысым дядькой. Там есть несколько вариантов курса. Те что с лысым дядькой - годные.
Ну и да. Они есть на торрентах если что. И часть на ютубе.
Аноним 22/01/22 Суб 20:40:30 2273702848
>>2273504
>Я сам за первый вариант, но как его обосновать?
Вот так
>так всегда разрабатывались клиент серверные приложения, что это быстрее и безопаснее

>можно не перекомпилируя проект внести изменения на стороне базы.
Нельзя, чел. Ты просто сломаешь код в 9 из 10 случаев.

>но нужны пруфы несостоятельности второго подхода.
Если у вас прям есть DBA которые задрачивают выборки, как-то структуру бд меняют и тд — то может и будет какой-то профит, от использования их как контракта.

Иначе ты делаешь из базы данных часть приложения, лепя их в монолит. Что сломается в какой части при изменении какой-то хранимки — с ростом проекта будет расти и геморой, а если кому-то придёт идея побить проект по частям/сделать ещё один — этот геморой моментально лопнет нахуй, как и разобраться в хуйлиарде хранимок под каждый кейс, которые будут копится с каждой итерацией, на всякий пожарный или потому что какую-то часть решили оставить так.
Аноним 22/01/22 Суб 20:44:25 2273710849
>>2273671
>ITVDN
Скоро там весенний набор на дотнет-разработчика?
Аноним 22/01/22 Суб 21:53:51 2273823850
У меня серьезный вопрос.
Неужели я один такой, кому не норм что в у шарпа нет нормального фреймворка для разработки сетевых приложений? Типа да, я понимаю, что те кто вкатились - скорее всего по хэтэтэпе гоняют жсоны, а те кому таки нужно было в свое время - просто брали сокет в руки и скорее всего боятся что-то там допиливать, типа работает и хуй с ним.
Но блин. Меня эт напрягает. Я хочу чтоб у дотнета был нормальный, мать его фреймворк не привязанный к конкретному протоколу. При этом чтобы большая часть плюшек асп была валидной. Но сук. Я ж не смогу в соло это сделать в контексте долговременной поддержки.
Типа да, я таки могу сделать пруф оф концепт в соло, но как потом с этим быть? Я же не смогу его вечно поддерживать, а чтобы пользовались - нужно всякие кодеки будет писать, новые технологии впихивать и т.д.
Короче. У меня вопрос. Как привлечь внимание майков, если я таки сделаю свою хуйню, которую хочу подарить миру, чтобы каждый васян потом мог быстренько свой прикладной протокол придумать и на его основе уже свое клиент-серверное приложение делать.
Аноним 22/01/22 Суб 23:49:12 2273960851
>>2273702
Спасибо, попытаюсь донести.

А можешь что сказать про использование nhibernate (с orm не работал, но движение в его сторону мне кажется перспективным, nhibernate выбрал рандомно), если все перевести на него? Там же тогда не будет гемора с sql кодом? Правда не знаю что там и как со сложнымы запросами с подзапросами и кучей проверок, но такое буквально есть в нескольких местах.
Еще он же может работать без локального кеширования таблиц, если таблицы тяжелые?
Аноним 23/01/22 Вск 06:16:14 2274218852
>>2273823
Пишешь. Поддерживаешь. Создаешь вокруг продукта коммьюнити. Привлекаешь туда заинтересованных. Пишешь статьи. Публикуешь на профильных ресурсах. Выступаешь на конференциях с докладами. Общаешься с нужными людьми. Если у твоего продукта есть потанцевал, то вполне возможно, что тебя заметят и выкупят/инвестируют.
Аноним 23/01/22 Вск 08:37:04 2274233853
>>2273823
Чем тебе имеющиеся либы не нравятся? Или тебе надо чтобы о них рассказали сначала на конференции. Типа либа если не с конфы, то фи? В первой же найденной либе есть пример клиент-серверного кода и даже гифкой!
Аноним 23/01/22 Вск 12:52:59 2274335854
>>2274233
> Чем тебе имеющиеся либы не нравятся?
Тем что все что есть, по факту, это попытка netty портировать на .net, которая заброшена(оно вроде как работает, но некоторые баги так и не закрыты, да и не уверен я что оно Production Ready), есть NetCoreServer, который с точки зрения плюшек - чуть лучше сокетов и не ООПшный по сути, там просто есть клиент, есть сервер - дальше сам пили контексты, кодеки и следи за буффером и стейтом сессии. Есть еще WatsonTCP, но когда я его тестил - он тупо не был в состоянии обработать простой разрыв коннекта, в результате - одно из ядер - загружено на полную, пока у него не пройдет HeartBeat и он таки не дропнет соединение, плюс он Tcp-специфичный, а там как-бы QUIC таки вроде таки пытаются проталкивать как новый стандарт, пусть он уже и давно придуман.
>>2274218
Да я просто сколько не пытаюсь где-то про это вякнуть - создается впечатление, что никому оно не надо. Дедам -все хочется сокеты теребить, жависты - имеют нетти/мину, а нубы - не знают что в мире есть что-то кроме реста и http
Аноним 23/01/22 Вск 12:59:54 2274342855
>>2274335
А, ну да. Есть еще Project Bedrock. Он, судя по примерам того что хотели - покрыл бы большее из того что лично мне надо. Но его в .net6 вроде как обещали выкатить, но с тех пор как я интересовался - никаких новых новостей не слышал, а последине коммиты - хрен знает когда были. Есть мнение, что проект тупо закрыли или положили на полку, ну или взяли наработки себе и в открытую их не хотят выкатывать.
Аноним 23/01/22 Вск 14:16:49 2274439856
Аноним 23/01/22 Вск 15:18:31 2274486857
Вообще, что думаете насчет событийно-ориентированной модели в контексте монолита?
А то чет я гуглю и сейчас это исключительно про микросервисы будто стало. А мне вот хочется примерно следующего:
await ApplicationContext.DispatchEventAsync<DomainEvent>(new DomaunEvent());
И чтобы логгер - залоггировал это событие, а какой-нибудь обработчик - обработал и возможно создал новое событие, которое уже обработает другой обработчик.
Типа да, с одной стороны - я смотрю на это и сложность понимания когда что вызывается - должна повысится. Но с другой - понизится свзяность кода и можно будет проще с этим всем делом управляться, а главное - тестировать, т.к. не нужно будет всю цепочку проходить, а можно просто дергнуть хендлер, замокать диспечер и все чики-брики должно быть в плане тестов.
Что думаете-то?
Аноним 23/01/22 Вск 15:26:22 2274494858
Что лучше gradle с репой maven или nuget?
Аноним 23/01/22 Вск 15:53:56 2274531859
Сап. Мне тут студия предлагает
>Member 'Pisos' does not access instance data and can be marked as static
Есть ли какие-то преимущества, если использовать статику?
Аноним 23/01/22 Вск 16:39:33 2274579860
>>2274531
Есть.
Если у тебя метод статичный - не нужна проверка на то что объект создан. Таким образом - нет лишних проверок того что есть объект метод которого вызывается.
Аноним 23/01/22 Вск 17:45:25 2274642861
0000921620.png 49Кб, 1613x722
1613x722
0000931620.png 32Кб, 780x415
780x415
Такой вопрос. Не совсем про язык, скорее про статический анализатор.
Допустим у меня есть метод который принимает аргумент который должен быть в неком диапазоне значений. И у меня есть проверка которая бросает ексепшн если это не так. Однако анализатор не ругается когда я пытаюсь передать неподходящее значение. Возможно ли сделать так чтобы он помечал подобное как ошибку, подобно тому как это делается в питоне через тайпхинтинги (пик2)?
Аноним 23/01/22 Вск 17:58:50 2274666862
>>2274642
Возможно. В крайнем случае - сам можешь анализатор написать, который тебе подсветит ошибки, апи - есть.
Аноним 23/01/22 Вск 18:24:20 2274693863
>>2272816
Дело не в интерестности заданий. Просто я смотрю на своих коллег и не понимаю откуда у них столько знаний если они выполняют такую же однотипную ерунду как и я? Тратят свое личное время? если да, то я явно им не ровня ибо после конца рабочего дня я даже думать о кодинге отказываюсь
Аноним 23/01/22 Вск 18:36:59 2274707864
>>2274693
Ну почему обязательно личное время? Кто-то в рабочее, если все успевает - просто не спешит бежать за новой порцией задач и спокойненько что-то там читает. Ну и зачастую ты ж несколько лет занимаешься этой однотипной хуйней, много разных штук повидал. Она-та однотипной кажется на первый взгляд, а на деле - вот тут лучше так сделать, там - вот так. Ну и да, в свободное время полезно книжки вумные читать и это вот, просто это не с наскока делается за год взял и все выучил, а постепенно, пока работаешь.
Аноним 23/01/22 Вск 19:53:04 2274797865
>>2274642
Ты там енумы придумать пытаешься?
Аноним 23/01/22 Вск 22:05:27 2274993866
Чем можно профайлить приложение на шарпе? DotTracer платный, а из опенсорсных утилит нахожу только старье, которое уже лет 5 не обновляется
Аноним 23/01/22 Вск 23:09:16 2275051867
>>2274993
Встроенным в студию профиллировщиком. Он хоть и не такой крутой как доттрейс, но основные моменты - позволяет отследить и пофиксить.
Аноним 24/01/22 Пнд 08:23:16 2275252868
image.png 35Кб, 821x442
821x442
пикрил
Почему все джосн юзают?
Аноним 24/01/22 Пнд 08:42:16 2275254869
>>2275252
Тебе же прямо написали "удобно и human readable". Если эти качества перевешивают ускорение и оптимизацию, то поэтому и юзают.
Ну и если они изначально бинарные форматы через json-ы гоняля, то сами себе долбоебы. Охуеть достижение "мы для перегонки бинарников взяли формат подходящий для перегонки бинарников и стало быстрее, чем с форматом не годящимся для передачи бинарников". Ясен хуй, что так и будет.
Аноним 24/01/22 Пнд 08:56:12 2275263870
>>2275254
>Тебе же прямо написали
Дак неужели это перевешивает скорость ?
Ну если у вас высоконагруженное приложение, не логично ли будет сразу взять самое быстрое решение? Ну да мб разработка будет четка медленнее зато софт быстрее работает.
Аноним 24/01/22 Пнд 11:17:26 2275339871
>>2275254
>Ну и если они изначально бинарные форматы через json-ы гоняля, то сами себе долбоебы
Ты где там такую хуйню высмотрел, поехавший?
Аноним 24/01/22 Пнд 11:18:16 2275340872
>>2275263
Тогда у команды перформанса работы не будет.
Аноним 24/01/22 Пнд 11:53:09 2275371873
>>2275252
Ты, интереса ради, попробуй сам захуярить свой сервис с бинарным форматом для апи. Причём не какой нибудь протобаф (хотя и с ним куча гемора), а на messagepack, блять. А потом написать к этому сервису хотя бы 3 клиента. И что-то изменить в сервисе и посмотреть кого как распидорасит.
Отлаживать такое — ебанёшься просто.
Аноним 24/01/22 Пнд 12:00:25 2275375874
>>2275339
А ты где высмотрел, что он высмотрел такую хуйню? Вроде на программаче люди должны быть знакомы с конструкцией "если то".
Аноним 24/01/22 Пнд 12:12:39 2275383875
>>2275375
"Если что" вот это
>Ну и если они изначально бинарные форматы через json-ы гоняля, то сами себе долбоебы
несвязанный поток хуиты, смысл которой я пытаюсь понять.
Аноним 24/01/22 Пнд 13:04:00 2275431876
В общем, пока тролль нагнетал тут, я рили понял что на текущем дотнете (тот что из core) реально мало либ и мелкософту как-то на это класть.
Го ужасен в плане длительной разработки.
Судьба раста непонятна. Да и либ мало.
Котлин ужасен в длительной компиляции и вообще дизайне (вчера только упало двухлетнее приложение, почему-то стал цеплять экстеншен фукцию T.run() вместо компаньёнской. Офигенно открыть утилитку, которая перестала компилиться со временем.).
Жаба - топорна.

Куда вкатываться то, в жопоскрипт чтоли??
Аноним 24/01/22 Пнд 13:42:32 2275475877
Вопрос от неофита: как получить данные из HttpContext.Session в контроллере? Данные в сессию я складываю из вью моделей страниц, но в контроллере их нету. Я подозреваю что в контроллере создаётся другой контекст и сессия.
Аноним 24/01/22 Пнд 13:47:12 2275479878
>>2275431
>что на текущем дотнете (тот что из core) реально мало либ
ну так то оно поддерживает либы из старого дотнета, пока там нет зависимостей на то, что вырезали.
Аноним 24/01/22 Пнд 13:50:21 2275481879
>>2275431
>реально мало либ
Каких библиотек не хватает?
Аноним 24/01/22 Пнд 14:14:13 2275500880
>>2275431
А что тебе нужно? Какие задачи?
Все инструменты говно в той или иной степени.
Если нужно просто в бекенд вкатиться, то js/java/kotlin/go на сегодня вполне рабочие варианты.

Из всех вариантов думаю go самый нормальный вариант на сегодняшний день. Нет легаси и огромного нагромождения абстракций ради абстракций. Код читается просто, в отличие от раста, плюсов или джавы/шарпа, где происходит магия под капотом того же спринга или asp.
Аноним 24/01/22 Пнд 15:27:46 2275575881
>>2274642
Нет, то что ты хочешь - называется dependent type system. Нормальная реализация такого есть в Idris.

Можно указать компилятору, что функция принимает List<int>[n] и возвращает List<int>[n + 1], где n - это количество элементов в списке.

В питоне, как видно, просто юзается обёртка Literal. Такой костыльный анализатор ты тоже можешь написать для C#, но это всё будет неполноценно если этого нет на уровне компилятора.
Аноним 24/01/22 Пнд 16:41:40 2275641882
Аноним 24/01/22 Пнд 21:15:56 2275893883
Когда там уже .NET MAUI в релиз выйдет то?
Разговоров было то пиздец, а он до сих пор в превью.
Хочу немного научится гуи делатьхз нахуя, так для общего развития, вот жду его. Или нахуй тот гуи?
Аноним 25/01/22 Втр 00:07:58 2276015884
>>2257225
так тебя и зачморили лол
Аноним 25/01/22 Втр 10:07:04 2276135885
512.jpeg 57Кб, 512x504
512x504
Есть тут такие кто из чистого шарпа перекатился в фуллстэк? Как это вообще делается? Я на Рякте + Асп изи помогу написать несложное вэб приложение. Но что касается теории, я вообще не шарю за фронт. Включил тут интервью друна ряктиста, так вообще половину вопросов не понимаю и о чем речь.
Аноним 25/01/22 Втр 11:19:39 2276179886
>>2276135
>Я на Рякте + Асп изи помогу написать несложное вэб приложение.
Ну так для шарписта - это и есть фулстек. Компонент накидать сможешь, который пруф-оф-концепт изменений на бэке проверит и достаточно. А дальше пусть верстальщики трахаются.
Не вижу смысла переката во фронт. Бабок больше не заработаешь, а как только узнают, что ты и верстку можешь, так сразу начнут все дерьмовые таски вроде "марджин лефт 10 пикселей" скидывать.
Аноним 25/01/22 Втр 12:17:38 2276248887
>>2276179
т.е. обычно фуллстеки редко хуярят тз от ux дизайнеров с точностью до пикселя?
Аноним 25/01/22 Втр 14:51:46 2276422888
4 года всякого говна от библиотек и расширений до функций и серверлес поеботы в облаке

сейчас перешёл на галеру 5к+ тел, нанимался как бекер но у меня нихуя опыта в асп нету, сказали дадут 3 месяца испыталки

на время испыталки 150к, потом до 250к (перформ ревью будет)

как оцениваете такую поеботу? продешевил? мне дали предложение которого я не заслуживаю? какие сейчас рейты я вообще нихуя не секу — 4 года как страус засунув голову под землю сидел в своей говноконторе
Аноним 25/01/22 Втр 16:38:21 2276538889
>>2276422
>до 250к
В целом норм, главное чтоб не наебурили.

Ну как по мне это норм зп для мидла или пре-сеньора без знания английского.
Аноним 25/01/22 Втр 16:44:47 2276540890
>>2276248
Ну обычно да. По крайней мере в подавляющем большинстве мест, что я видел дела обстоят так.
Я например, если моя задача просачивается на фронт, максимум делаю какой-нибудь компонент, который реализует нужную логику. Модалочку там прикрутить, вьюху отдельную или маршрут прокинуть. Бывает какие-нибудь сложности, вроде хитрой фильтрации или odata запросов. А всякие проблемы типа вылезающего за границы текста или стилей спихиваются чистым фронтам. Понятно, что при дикой нужде я и это сделаю, но в норме у них это получится и лучше и быстрее.

А стремиться совсем к полному фулстеку, чтобы делать совсем все смысла нет.
Аноним 25/01/22 Втр 16:47:26 2276542891
>>2276422
Норм. Если не наебут с повышением.
Если наебут - всегда сможешь срулить, главное успей побольше прокачаться за это время.
Аноним 25/01/22 Втр 17:37:55 2276600892
1643121473794.jpg 21Кб, 300x440
300x440
Хорошему проверенному человеку нужна помощь в выполнении заданий по С#, а именно по Windows Presentation Foundation.

Тг для связи: t.me/iglerrr

Заранее спасибо
Аноним 25/01/22 Втр 17:49:49 2276625893
Существует ли быстро гайд для беженца с .нет фреймворка в асп нет кор - как совладать там с энтити фреймворк кор? Раньше я создавал контекст через using и делал все что нужно, сейчас так не сделаешь ибо нужно подключать сервис и из конструктора вью моделей доставать контекст. У меня есть "utility" класс который работает с конекстом (помимо еще самих вью моделей) который я туда передаю. Из-за этого я ловлю "instance of entity type 'anontable' cannot be tracked because another instance with same key value is being tracked.".
Можно было бы вынести utility класс в сам контекст, но тогда бы пришлось создавать на каждую таблицу по несколько методов типа Add/modify (т.е. вызывать их вью моделей, вместо дефолтных энтити методов) но это какая-то шляпа и я чего-то явно не знаю.
Аноним 25/01/22 Втр 17:52:19 2276629894
>>2276538
>>2276542

понял, спс

тогда два месяца буду вJOBобовать, на последнем подниму вопрос ревью и параллельно анкету свою активирую
Аноним 25/01/22 Втр 19:11:15 2276753895
Профессионал c# хотя бы на среднем уровне должен знать java? Запросто мог бы небольшие изменения додумать в проекте?
Аноним 25/01/22 Втр 19:18:59 2276766896
>>2276753
профессионал Go должен знать Python?

нет блядь, не должен, но если попросят должен сказать что надо разобраться, вот за столько времени я чонить скажу, если надо давайте
Аноним 25/01/22 Втр 20:49:54 2276848897
>>2276766
Очень смешно, эти два языка очень похожи, и очевидно копировались друг на друга.
Аноним 25/01/22 Втр 21:02:40 2276867898
>>2276753
А что подразумевается под знанием жавы?
Ну, допустим - я ее не учил. Но мне нужно было портировать одно приложение с жавы на шарпы из-за того что чел, который делал на жаве - уволился, а больше никто не знал как оно работает. Было смутное ТЗ за 2005й год и воспоминания стариков, что дескать такие вот были кейсы, но мы точно не помним, вроде клиент когда-то просил такую фичу, но хуй знает запилил ли тот чел ее или нет. История коммитов была в SVN и коммиты оформлялись в духе: Внес изменения... и дохуя файлов измененных, какие изменения внес - ну, иди смотри.
Ну, без особых проблем разобрался в жава-коде, зная только шарп. Плевался правда с него, типа, пиздец, как люди без свойств живут-то, куча GetHuinya(), SetHuinya(Huinya huinya). Хотя их енумы мне понравились, хотелось бы подобное в шарпе видеть. Ну и понравилось таки то что сахарка в том коде было меньше, в этом плане - чем ближе к си - тем удобнее понимать, т.к. синтаксис сахарка - нужен только тем, кто кодит постоянно на языке.
Короче. Я к чему. Если ты умеешь читать код и приблизительно понимаешь паттерны которые используют - понять код на ООПшном языке - не сложно. Всякие специфичные штуки, типа как там у них фреймворки устроены какие, где чел обосрался в контексте жавы, а где не - это да, тут просто так не поймешь, но надо ли оно шарповоду, которому нужно бизнес-логику было понять?
Аноним 25/01/22 Втр 22:56:40 2277028899
>>2276848
т.е. ты сейчас вот на голубом глазу хочешь подписаться на разработку говна на НЕПРОФИЛЬНОМ для тебя языке?

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

может у тебя в должностных обязанностях есть знание двух языков?
Аноним 26/01/22 Срд 02:10:15 2277198900
image.png 17Кб, 990x95
990x95
Ребят хелп. После выполнения кода test равняется null. sparkData точно не null. Чета я туплю.
Аноним 26/01/22 Срд 02:23:39 2277204901
Аноним 26/01/22 Срд 04:25:38 2277217902
>>2277028
Да нет, ничего такого, я для себя. Например мод для майнкрафта запилить, под андроид добавить фишку
>>2276867
Спасибо
Аноним 26/01/22 Срд 06:39:02 2277225903
Анончик, анончик. Что думаешь над популярным сейчас у геймдеверов ECS-подходе? Я в контексте: а можно ли это нормально использовать в той-же веб-разработке?
Ну, просто когда я пытаюсь придумать кейс из не геймдева, все выливается в то, что это будут просто маленькие интерфейсы, а СУЩНОСТИ - просто фасадами. Т.е. никакого отхода от ООП, по факту. Но вот в геймдеве - кричат что нифига и это какой-то новый подход и не ООП. Но ведь если убрать из "ECS" букву S, то это же, как уже сказал - обычный такой подход с фасадированием. А теперь вернув S - получаем, что вполне себе классический ООПшный подход, мы выделили "сущности", в них с помощью DI - протолкнули нужные нам "компоненты", ну а системы - некие наши сервисы, которым как раз "сущность" не важна, а важна работа с компонентами.
Может быть я что-то не так понимаю? Ну и может быть кто-то хотя бы в своих проектах пользовал в качестве эксперимента такой подход не в контексте геймдева. Как оно? Ложится или не?
Просто классическое ООП - надоело. Геймдев-няшки говорят что ECS - подход это якобы не ООП, хотя я смотрю и то же самое ООП классическое. Но просто я слышал про выражение, что если у тебя в руках молоток, то все вокруг кажется гвоздями, потому и думал спрасить у более прошаренных.
Аноним 26/01/22 Срд 12:19:20 2277375904
>>2277225
>Я в контексте: а можно ли это нормально использовать в той-же веб-разработке?
Можно конечно.
Но не нужно — у веба банально другие ориентиры всем похуй на перформанс, завалим железом, ради того, чтобы больше влезало в кэш проца никто не будет поворачивать голову, чтобы запихнуть в неё ECS, лол.

> все выливается в то, что это будут просто маленькие интерфейсы, а СУЩНОСТИ - просто фасадами. Т.е. никакого отхода от ООП
пофикшу:
> все выливается в то, что это будут просто маленькие тайпклассы, а СУЩНОСТИ - просто композиция функций/типов. Т.е. никакого отхода от ФП кроме мутабельного стейта
кек.

>если у тебя в руках молоток, то все вокруг кажется гвоздями
Тащемта, всё так. У тебя принципы SOLID-а в голове уже слились с ООП, хотя применить их можно к чему угодно.
От ООП отличает шаренность стейта, от ФП — его мутабельность.
В целом каких-то специфичных для ООП/ФП вещей в реализации не требуется, паттерн прекрасно реализуется хоть на Go.
Аноним 27/01/22 Чтв 08:43:35 2278344905
VS 2021 также нельзя полностью установить на отдельный диск, и она все равно немного засрет системный?
Аноним 27/01/22 Чтв 13:30:49 2278554906
Аноним 27/01/22 Чтв 15:01:24 2278675907
>>2278554
При чем тут ключи нахуй? Меня просто напрягает необходимость засирать системный том, который я по дурости сделал очень маленьким. Вон, жависты ставят свою IJ с JDK спокойно на нужный диск.
Аноним 27/01/22 Чтв 16:45:43 2278811908
>>2278675
Ну так сделай его побольше, в чём проблема. Что за неудобства на ровном месте
Аноним 27/01/22 Чтв 21:41:52 2279221909
.png 47Кб, 754x951
754x951
Сколько из десяти дадите этому коду?
Аноним 28/01/22 Птн 00:31:58 2279388910
Можно ли как то юзать десереализацию без создания класса?
К примеру как то так
string name = JsonSerializer.Deserialize(json).name;
Например я получаю json но мне там нужна всего ли одна строка, можно и регуляркой распарсить конечно. Но можно ли ее как то так получить?
Аноним 28/01/22 Птн 07:32:21 2279482911
>>2279221
Слишком маленькая концентрация await на строчку кода. Нужно намного больше. Не, ну серьезно, что запиздец?
Аноним 28/01/22 Птн 07:35:11 2279483912
>>2278675
>который я по дурости сделал очень маленьким
Ну так проблема в тебе.
Тем более, что все пакеты и сдк все равно потом будут на системный диск скачиваться (как и у джавистов, кстати), а они места побольше чем IDE займут.
Аноним 28/01/22 Птн 08:44:51 2279502913
Анон, такой вопрос по Visual Studio 2019

У меня есть интерфейс, который реализуется в куче классов.
Я хочу в этом интерфейсе изменить одно свойство, так чтобы оно изменилось и во всех имплементациях.
Если с именем проблем нет (Ctrl+R два раза и везде поменяется), то как быть с типом?
Как изменить тип свойства в интерфейсе, чтобы он так же изменился и во всех реализациях. Все облазил, но команды такой не нашел.
Аноним 28/01/22 Птн 12:21:10 2279689914
Что подразумевает под собой "уверенное знание .NET"? Вот есть C#, я его учу и могу понимать, какие темы я хорошо усвоил, какие штуки нужно ещё практиковать, и к каким ещё рано притрагиваться. Что же значит знание dotnet? Умение собрать своё приложение?
Аноним 28/01/22 Птн 15:14:08 2279841915
>>2279689
Чему будут равняться decimal.Round(2.5m,0) и decimal.Round(3.5m,0) ? И почему?
Аноним 28/01/22 Птн 16:00:57 2279912916
>>2279841
2 и 3
Потому что так реализовали. Ну серьезно, что за вопросы почему? Сто пудов какой-то говностандарт как с float, который по каким-то причина, ведомым составителям, так себя ведёт.
Аноним 28/01/22 Птн 16:40:34 2279966917
Аноним 28/01/22 Птн 17:54:51 2280073918
>>2279841
2,4, так как жидовская хуйня стремится в сторону ближайщего кратного 5.
Аноним 28/01/22 Птн 18:05:39 2280103919
>>2279689
как только перестанешь задавать такие тупорылые вопросы — подходишь

фраза чисто отсеять малохольных невротиков
Аноним 28/01/22 Птн 18:31:18 2280154920
>>2279966
Спасибо, но не стоит. С душнилами я работать не люблю.
Аноним 28/01/22 Птн 18:35:16 2280170921
>>2280103
Та вот лично по моему опыту, я бы на этом не останавливался. Потому что бывают всякие няши, которые вопросов не задают, накопипастят кода, не понимая, что он делает, лишь бы вроде как работало, даже не думая о том чтобы это минимально было читаемо. В итоге, когда вскрывается - тебе переписывать за долбоебом, который, как только запахло жаренным - съебался в закат.
Ко-ко-ко, кодревью. Какое нахуй кодревью, когда в команде 3 человека и у каждого по несколько проектов?
Аноним 28/01/22 Птн 20:17:02 2280279922
image.png 17Кб, 1000x157
1000x157
Я так понимаю, весь этот опенсорс, это снова стратегия EEE от мягких?
И что теперь? Кококотлин?
Аноним 28/01/22 Птн 20:26:43 2280294923
>>2280279
Речь про MAUI, который Xamarin.Forms и из которого выпилили линух.
Аноним 28/01/22 Птн 20:32:22 2280304924
>>2280103
Ну а с чего мне не быть малохольным невротиком, я вкатываюсь сам с нуля, без вузов и курсов. Я же не знаю как там у крутых дядек заведено. Спасибо за ответ, анон.
Аноним 28/01/22 Птн 21:05:52 2280337925
>>2279388
Можно, в Newtonsoft можно сделать чето типа такого(пишу по памяти, но знаю, что можно при десериализации не указывать конкретный тип): dynamic obj = JsonConvert.DeserializeObject(json). Затем obj.SmthProp
Аноним 28/01/22 Птн 21:13:27 2280341926
>>2279689
Когда знаешь тонкости каких-то моментов. Вообще познание внутреннего устройства шарпа очень поможет в осознании некоторых моментов, например - автосвойства, или например во что превращается async/await, чем отличается event от обычрого delegate. Уверенное знание С# это уверенное знание механизма и структуры языка. Это как вот твоя рука, она инкапсулирует метод "дрочить хуй", но как устроено внутри? Посылается сигнал мозу, сокращаются мышцы, вырабатываются гормоны, учищается сердцебиение... и вот это всё и есть уверенные знания конкретной области
Аноним 28/01/22 Птн 21:16:14 2280343927
Аноним 28/01/22 Птн 21:19:32 2280345928
>>2280341
Остается только вопрос: НАХУЯ? Вот серьезно. Ну я вот знаю во развернется хуйня с async/await, я лазил по исходникам рослина, я разбирал сборку и тыкал палкой. Ну, типа я это делал ради интереса. Только вот нахуя эти знания в повседневной работе, я если честно - не ебу. Вообще профитов не вижу. ИМХО - умение писать простой и понятный код - намного более важный скилл и именно за него нужно спрашивать. А как там эвенты работают - до пизды, потому что сегодня они работают так, завтра майки решат устранить очередной фатальный недостаток - и будут работать не так. Хули толку-то с этого знания?

заводчанин
Аноним 28/01/22 Птн 21:24:05 2280348929
>>2280345
Все так анончик, я тоже лазил из интереса, только толку от этого нет. Я тоже с завода, пока что, в планах перекатываться куда-то на стажировочку.
Аноним 28/01/22 Птн 21:35:09 2280357930
>>2280345
>нахуя

Чтобы таких тупорылых как ты осадить и вместо 5к бачинских выдать 200к деревянных. Больше незачем
Аноним 28/01/22 Птн 21:40:24 2280364931
>>2280357
Двачаю адеквату. Пидарундели не понимают, что IL код можно оптимизировать в некоторых ситуациях тем самым выигрывая в производительности, да и в целом полезно знать как всё работает на самом деле так как появляется полная картина мира без магии.
Аноним 28/01/22 Птн 21:45:33 2280370932
>>2280357
Пф. Учитывая что я на заводе 60к получаю, я за 200к - могу и на дуде сыграть.
Но вообще, как я уже сказал, я-то могу за все это пояснить. Проблема в том, что на работе есть еще плюсы, есть ассемблеры разные, есть всякая хуйня связанная с линуксами, свехру микросервисы еще и фронтенд на реакте, а под конец - дельфи и джава. И все это активно используется, в зависимости от проекта. И именно навык умения писать аккуратный и понятный код, лично мне как раз и начал после всего этого зоопарка казаться самым важным. Потому что хороший код, в случае необходимости - легко и непринужденно можно поправить. Когда у тебя звиздец с кучей зависимостей, когда у тебя хуй пойми что где и зачем, когда нет одного стиля - похуй на знания кишков, потому что ты потом дохуя времени будешь тратить, чтобы тупо разобраться, как это говно вообще работает.
Аноним 28/01/22 Птн 21:48:48 2280371933
>>2280279
А ты чего ожидал? Что они пойдут и начнут контрибьютить в попенсорс ради добра?
Аноним 28/01/22 Птн 21:53:39 2280378934
>>2280370
Ищи новую галеру, на заводе нет будущего
Аноним 28/01/22 Птн 21:55:04 2280381935
>>2280370
>на заводе 60к
>фронтенд на реакте
>дельфи и джава
>плюсы
>ассемблеры

И за всё это отвечаешь ТЫ и получаешь при этом 60к?

Чел, поздравляю, тебя в жопу ебут. Бери билет до москвы или, если есть инглиш, открывай ип/самозанятого - будешь на буржуев работать.

Тут не вопрос нахуя на собесах спрашивают про детали языка, вопрос в том почему ты своё говно терпишь. 3 года коронашизы бушуют, уже всю работу на дом перевели - можно на дядю из далласа работать из воркуты. А ты всё на своём заводе недовольный 60к сидишь.

Я бы понял ещё если ты патриот и надеешься промышленность россии поднять таким макаром. Но ты задаёшь вопросы "а хули меня на собесах режут"
Аноним 28/01/22 Птн 22:06:03 2280389936
>>2280381
> И за всё это отвечаешь ТЫ
В основном я таки на шарпах пишу. Это все - побочки работы на заводе, где каждый месяц 2-3 человека то в танки убегут, то в хуяндекс, а проекты - никуда не деваются. А я не бегу, потому что все что предлагали - с переездом, а у меня - батя болеет, нужно быть таки рядом, чтобы если что.
Аноним 28/01/22 Птн 22:19:35 2280399937
>>2280389
А на linkedin не пробовал к буржуям устроится на дистант? Попробуй.
Аноним 28/01/22 Птн 22:29:04 2280409938
>>2280399
Благодаря ковиду можно и в ебенях на зп в 4 раза выше изи присесть, даже язык учить не надо. Он либо вкатыш либо жирно троллит.
Аноним 28/01/22 Птн 22:34:15 2280418939
>>2280409
5 лет работаю на заводе программистом. Сразу как вуз закончил и прошел практику на этом же заводе. Не считаю себя вкатышем. Ну, и не троллю. Я бы вообще про ЗП не говорил, если бы про нее не вспомнили, потому что основной-то мой пост был про то что кишки это про интерес, но при приеме на работу нужно смотреть в первую очередь на код и главное на его простоту и понятность. Все.
Аноним 28/01/22 Птн 22:46:20 2280426940
>>2280371
Нет, но тут они выпилили поддержку, которая вроде как уже была.
Если так, то это же старое доброе EEE.
Аноним 28/01/22 Птн 22:49:17 2280430941
>>2280426
>Если так, то это же старое доброе EEE.
Ты явно что-то пропустил. На винде теперь есть WSL! Слышишь! ПИНУС ТОЛЬКА ДЛЯ СЕРВЕРА! НИНУЖНА! КУПИ ШИНДУ! СЛЫШЬ! КУПИ!1
Аноним 29/01/22 Суб 02:35:39 2280512942
>>2280418
Код, его красоту и понятность не сможешь продемонстрировать ни ты ни они. Все эти репозитории в гитхабе - фуфло, никто не будет их смотреть ДО интервью. Максимум на собесе вы откроете проект чтобы попиздеть.

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

Даже если ты привязан к дому - попробуй пройти собесы в любую контору. Даже ЕБАМ подойдёт на самом деле (тем более что они не против совместительства). Все этапы собесов идут удалённо. Документы можно высылать почтой/сканы. 60к за 5 лет опыта это ненормально, имей достоинство
Аноним 29/01/22 Суб 10:43:23 2280584943
>>2280512
>Все эти репозитории в гитхабе - фуфло, никто не будет их смотреть ДО интервью
Тыскозал? На superjob и hh часто просят в сопроводительном письме отправить ссылочку на гит
Аноним 29/01/22 Суб 18:39:00 2280900944
>>2280584
яскозал, если мне дают ссылку на репо кандидата я максимум что сделаю - зайду посмотрю чо там за проекты висят и на встрече попрошу рассказать о чём-то
Аноним 29/01/22 Суб 23:12:06 2281066945
Есть смысл тратить время и деньги на сертификат az900? Именно с точки зрения бекендера, я не хочу в девопсы перекатываться
Аноним 29/01/22 Суб 23:53:15 2281093946
Compose Multiplatform
Аноним 29/01/22 Суб 23:56:00 2281094947
>>2281066
хуярь сразу az200, и обязательно сдери с работодателя эти 80$
Аноним 30/01/22 Вск 04:28:21 2281232948
X63r31KuZrk.jpg 41Кб, 452x363
452x363
Здравствуйте, господа. Нужно начинать думать насчет дипломного проекта, а идей вообще нет. Из минимальных требований есть только базы данных ( ну и желательно подключить к проекту мобилки ). Хочу не очень сложное, но и не очень простое, НО интересное. Подскажите ?
Аноним 30/01/22 Вск 12:00:52 2281343949
>>2281232
Сделай движок для имиджборды, лол. С админкой и всем таким. Это довольно просто и если опыта нет - интересно.
Если кажется слишком изи - систему управления умным домом. Придется подзаебаться довольно сильно.
Это если у вас дипломы проктической направленности.
Если у вас теоретическая - колоночная субд и имплементация в ней древовидных структур. Сложно, заебистои, интересно. Все отличники - пытаются и обсираются, ограничиваясь связным списокм.
Аноним 30/01/22 Вск 13:43:06 2281450950
>>2281232
Нейронка для распознавание детей, подростков, взрослых
Аноним 30/01/22 Вск 17:11:58 2281636951
3.png 353Кб, 1250x1250
1250x1250
Аноним 30/01/22 Вск 19:05:30 2281744952
image.png 39Кб, 611x606
611x606
Весь вечер шелесчу интернеты, нихуя не помогает.
Мне нужно, чтобы после того, как ArrayQuestions отобразится два раза, код перестал выполняться, иначе возникает ошибка "индекс вышел за границы массива". Я пытался это сделать посредвством "если count пробовал и ArrayQuestions и timer вставлять больше 3, то return. Но код продолжает крутиться, ошибка возникает каждые две секунды если в 12 строчке указать другое значение, то каждое это значение, будто до части кода с if вообще не доходит.
Помоги, добрый анон, умоляю!
Аноним 30/01/22 Вск 19:42:56 2281790953
image.png 14Кб, 571x288
571x288
>>2281744
Сделал так, ошибка ушла, благодарю!
Аноним 30/01/22 Вск 19:45:53 2281794954
>>2281744
>>2281790
Блять ебаные ишаки, вы можете всем своим табром вкатышей в юнити начать не с юнити а с сишарпа?
Аноним 30/01/22 Вск 19:56:48 2281800955
>>2281794
Да ебать нахуй, это даже не мне надо было, а сестре дз по информатике сам в ахуе.
Аноним 30/01/22 Вск 21:10:38 2281854956
.png 56Кб, 524x842
524x842
Аноним 30/01/22 Вск 21:24:02 2281867957
>>2281343
> Сделай движок для имиджборды, лол. С админкой и всем таким. Это довольно просто и если опыта нет - интересно.
Ебать у тебя ориентиры ДОВОЛЬНО ПРОСТО
Аноним 30/01/22 Вск 21:45:48 2281889958
>>2281867
А что не так-то, няша? За полгода-год, которые пишешь диплом - движок борды написать в неторопливом темпе - не проблема. Конечно, если не будешь ебланить это время, играть в дотку, да пивчанский посасывать, а потом, за неделю до сдачи не вспомнишь, что тебе нужна практическая часть, а ты не начинал.
Аноним 30/01/22 Вск 22:08:56 2281914959
>>2281854
Пиздец. Ну и говнокод.
Аноним 31/01/22 Пнд 15:29:26 2282476960
>>2281889
За 2-3 месяца с ОПЫТОМ можно сделать в расслабленном режиме, только если без фронта. С нулевыми знаниями - ну это думать нужно сколько займет.
Аноним 31/01/22 Пнд 17:46:27 2282564961
Ребят поясните пожалуйста. Я вот вообще стал учить си шарп ради xamarin, но вот заскочил в раздел сетевое программирование на метаните. Почитал про протоколы, сокеты, посмотрел примеры создания клиент серверных простецких приложений. И вроде как оно понятно все. Но потом я увидел что есть asp.net для создания веб приложений и что то в моей голове сломалось и уничтожилось. В моём отдалённом мирке в голове казалось, что сетевое == веб. Ведь в этих разделах мы по сути и создавали сервера и клиентов. А какое тогда отличие веб приложения от сетевого? Какие задачи решает asp.net? Я понимаю что возможно спросил хуйню, но т.к я далёк от веба и прочего хотел расставить для себя все точки
Аноним 31/01/22 Пнд 18:48:44 2282618962
>>2282564
Сетевое - это нетворк аппликатион. Т.е. в общем вообще все что по сети можно передавать. Тот же IRC, например, если застал - это свой протокол, клиент и сервер для него - это сетевые приложения и сетевое программирование; торренты - про то же, ну а шире - modbus, dlms, всякие snmp, smtp, sntp т.д.
Веб - это конкретно про HTTP, т.е. подмножество сетевых приложений, повязанных на этом ебучем хипер текст трансфер протокол.
Ну по крайней мере я так это разделение вижу и судя по всему не только я.
> Какие задачи решает asp.net?
Ну, вот ты видел сокеты энти вот. Вот. Представь, что тебе каждый раз, когда нужно ебучую страничку отдать - нужно было бы свой сервер с сокетов начинать пилить, думать про то как ты будешь это говно парсить, роутить, как ты запилишь поддержку всех версий протоколов, еще и решать важную задачу: асинхронно, али ебануть каждому клиенту по потоку или вообще - по процессу. Допустим это ладно. Но ведь тебе нужно будет какую-то динамику реализовывать, отдавать странички, которые генерирует сервер, отдавать те же ебучие жсоны, xml и прочее. Короче, много говна. Так вот, ASP - в свое время решил эту проблему. Началось все с того, что в веб-страничку можно было впихнуть какое-нибудь говно, которое бы сервер мог обрабатьывать, ну и завертелось-закрутилось, сейчас, из-за SPA и огромного количества фронтоблядей - эта фишка уже не так нужна, но вот все остальное что там в контексте веб-сервера нагородили, с фильтрами, роутингом, мидлварями, контроллерами и прочим говном - очень даже удобно и ты свое веб-приложение можешь за 2,5 минуты сделать, просто подключил базу, сделал пару апишных контроллеров и сидишь дрочишь хуй чайки гоняешь, пока фронтобляди - пытаются красиво сделать и дергают за ручки.
Аноним 31/01/22 Пнд 19:03:34 2282627963
>>2282618
О, спасибо за развёрнутый ответ. Вроде картина проясняется.
То есть если бы я хотел допустим стать бэкендером, то я бы мог просто осваивать asp нет и не думать про сокеты всякие там?
Аноним 31/01/22 Пнд 19:09:28 2282632964
.png 22Кб, 1548x170
1548x170
>>2282627
Ну да. Простейшее приложение на asp сейчас вот так выглядит
Аноним 31/01/22 Пнд 19:18:08 2282642965
1.jpg 49Кб, 1080x729
1080x729
>>2282627
>допустим стать бэкендером

ну максимум понимать Stream, если нужно стримить.
Да и в обычном программировании опускаться на уровень сокетов нет причин
Аноним 31/01/22 Пнд 19:19:56 2282646966
>>2282627
Но только это. Про общее понимание сокетов и что происходит - некоторые галеры, где деды сидят - так спрашивают, потому знание - точно не лишним будет. Так что не думай, если изучил уже, что время зря проебал, если знаешь про наты, как там TCP выглядит и чем от UDP отличается, про то что пакеты могут недоходить на практике и прочее - это таки плюсик будет, как минимум покажешь, что интересуешься и все такое. Деды-то, иногда впадают в деменцию и хотят подрючить и показать на собесе, что они-то аксакалы и все такое, ну и если ты пойдешь в отрицалово, дескать, нахуй мне чтоб жсоны гонять - знать как там CRC рассчитывается - могут и попустить. Потому - если изучил нормально - можешь считать что как минимум для собеса полезно, на практике, если не на завод пойдешь, или свой веб-сервер писать не будешь - не пригатдиться.
Аноним 01/02/22 Втр 10:14:19 2283128967
Последние несколько лет фигачу на платформе Террасофта в парке компаний. Сейчас выбираю между внутренней разработкой (в финансовой компании, которую хорошо знаю), и разработкой у интегратора - но там технологические процессы интереснее и не только Террасофт.
Вот думаю, что лучше. Склоняюсь к интегратору, там можно прокачаться, и может быть интереснее.
Аноним 01/02/22 Втр 18:49:39 2283709968
image.png 27Кб, 688x385
688x385
>>2282632
Лол шарп погнался за модными и молодежными ембедед фреймворками? Зачем? Чтобы получит 100500 вариантов решения одной задачи, чтобы путать новичков?
Аноним 01/02/22 Втр 19:06:18 2283737969
Аноны, никогда до этого к шарпу не притрагивался, только Си в универе изучал. Но тут наткнулся на вот такую статью
https://codingvision.net/c-predict-random-number-generator-net
Попробовал запустить пример, у меня совпадающих значений совсем нету. Это я что-то делаю не так, или алгоритм формирования случайного числа мог измениться к нашему времени?
Аноним 01/02/22 Втр 21:17:59 2283848970
>>2283709
Ну, лично мне на самом деле не оч нравится на самом деле. Система с контроллерами и сервисным слоем, как по мне, наиболее логична в контексте микросервисов. Но видимо был запрос какой-то, а может быть просто чтобы выебываться, дескать: смотрите, у нас тоже в пару строк можно.
Аноним 01/02/22 Втр 23:54:30 2284060971
>>2283737
>to underline the predictability of the random… or better said pseudo-random number generator
Дальше не читал. Очередной вкатыш открывает людям истину, что псевдослучайные числа не случайны. А пацаны то и не знали.
Аноним 02/02/22 Срд 10:27:15 2284297972
>>2284060
Жаль, но если вкратце, там есть пример кода, где при наличии 55 рандомных чисел последовательности, можно предсказать следующие числа. Только у меня, например, это не работает, а в примере у него реально показывает следующие числа.
Вот я и подумал, мб статья устаревшая и сейчас уже гпсч по другому принципу работает?
Вот ещё такой же пример, но с целыми числами, и он тоже не работает, хотя все пишут что должен работать:
https://stackoverflow.com/questions/39093911/can-random-next-be-predicted-from-its-outputs?answertab=oldest
Аноним 02/02/22 Срд 18:22:24 2284800973
Аноним 02/02/22 Срд 19:52:22 2284910974
>>2284800
Исходники уже смотрел, написать что-то своё не хватает скилла. А готовые решения, которых всего 2 удалось найти, не работают.
Еслиб было понятно, какой тип гпсч используется, я бы мб и продвинулся дальше. Но в этом C# какое-то своё решение, в отличие от остальных языков. По сути, там всё должно быть по линейно конгруэнтному методу, но из исходников не понятно, что чему равно чтоб в формулу подставить.
Аноним 02/02/22 Срд 21:34:52 2285059975
>>2284910
в .net 6 они сменили алгоритм на xoshiro, раньше хз какой был, он менялся от версии к версии за исключением рандома с сидом, в котором используется для обратной совместимости самый хуёвый алгоритм 20 летней давности
https://www.youtube.com/watch?v=mnlnhA0s0Iw
Аноним 02/02/22 Срд 22:00:26 2285068976
изображение.png 452Кб, 612x863
612x863
изображение.png 101Кб, 272x322
272x322
поясните про эти книги, в каком порядке читать? Сначала Рихтер потом Скит или наоборот? Или вместе? Или только одну?
Аноним 02/02/22 Срд 22:03:54 2285071977
>>2285068
Ни в каком.
Рихтер - душный и читается исключительно когда ты уже вкатился, чтобы джунов попускать, при этом еще и устарел.
А Скит - говно без задач уровня метанита, растянутый на здоровенную книгу.
Аноним 03/02/22 Чтв 06:14:17 2285279978
Сколько весит хелоу ворлд на замарине под андроид?
Аноним 03/02/22 Чтв 11:02:06 2285363979
Какой асп.нет стоит учить для вката? Вижу вышла 6 версия, но перейдут на неё наверное все не скоро? А отличаются они с 5 не то, чтобы сильно но заметно
Аноним 03/02/22 Чтв 15:13:45 2285606980
У меня есть форма multipart/form-data, у которой помимо прочего есть прикрепленный файл. На сервере соответственно есть вьюмодель с IFormFile Attachment. Когда вьюмодель придет в контроллер фйал уже будет полностью загружен на сервер?
Аноним 03/02/22 Чтв 20:08:03 2285982981
>>2285363
1) Выучив 5-й будешь иметь больший выбор мест для вката. Плюс всегда сможешь доучить 6-й

2) Вкатыша не возьмут туда на новые проекты с новыми фреймворками. Туда предпочитают брать помидорок с опытом или хотя бы крепких середнячков. Поэтому учи 5-й спокойно и иди копать легаси.
Аноним 03/02/22 Чтв 22:27:54 2286102982
>>2285982
А через сколько лет теоретически будет доминировать шестой?
Аноним 03/02/22 Чтв 23:22:42 2286160983
>>2285279
3.2 метра вроде было когда я пробовал.

>>2285606
ну а как иначе
asp.net вынужден разобрать тело запроса чтобы создать все эти IFormFile для биндинга.
Вот он и разбирает создавая IFormFile-ы, которые представляют собой Stream-ы, в которые впихнуто тело файла из мультипарт секции формы и если оно до 30кб, то только в памяти, иначе - на диск пишет в темп файл.
(гм. это получается если грузить огроменные файл, то нельзя сделать как в похапэ move_uploaded_file, а именно придется копировать весь файл через CopyTo)
Аноним 04/02/22 Птн 07:34:46 2286309984
>>2286102
Года через 2.
Но к тому времени уже 8-й выйдет.
Но через 2 года тебя точно так же никто не подпустит к таким проектам. Максимум к тем которые будут переходить с 3.1 на 6 или позднее. Так что тебе все равно нужно будет старые знать.
Аноним 04/02/22 Птн 08:22:48 2286319985
>>2286160
> 3.2 метра вроде было когда я пробовал.
Как это, так мало? Там же нужно тащить виртуальную машину, она же мегабайт 60 весит?
Аноним 04/02/22 Птн 09:07:47 2286336986
сап двач
я начинающий трап

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

нет, это не троллинг
Аноним 04/02/22 Птн 09:46:58 2286354987
Аноним 04/02/22 Птн 10:33:54 2286384988
Почему метанит такой популярный? Настолько душное непонятное дерьмо же
Аноним 04/02/22 Птн 10:56:08 2286399989
>>2286384
Потому что когда ты уже все понял но чутка забыл метанит помогает вспомнить.
Это как справочник.
Аноним 04/02/22 Птн 10:56:29 2286401990
>>2286384
Потому что когда ты уже все понял но чутка забыл метанит помогает вспомнить.
Это как справочник.
Аноним 04/02/22 Птн 12:00:58 2286474991
>>2286384
Потому что когда ты уже все понял но чутка забыл метанит помогает вспомнить.
Это как справочник.
Аноним 04/02/22 Птн 12:50:44 2286520992
>>2286384

А где информация подаётся лучше?
На метаните есть все по си шарпу из основного и без воды.

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

Как итог учить си шарп и технологии либо по книгам всяких олдскульных
мужиков которые ещё более душные либо метанит
Аноним 04/02/22 Птн 13:59:49 2286578993
>>2286520
Без воды, как и без нормального объяснения принципа работы. Просто скопируй код, а почему именно такой, хуй знает
Аноним 04/02/22 Птн 14:02:46 2286582994
>>2286354
я же пишу, что это не троллинг
как ты предложишь добыть иначе информацию по моим вопросам?
Аноним 04/02/22 Птн 14:38:49 2286639995
Когда же я всё таки вкачусь? Пошёл третий месяц. Одни отказы
Аноним 04/02/22 Птн 15:19:28 2286700996
>>2286319
С чего ей столько весить. В том же блазоре она не 60. А после shrink столько и остается, хелло-ворлд же.
другое дело - старт этого всего на слабых девайсах.


Аноним 04/02/22 Птн 18:33:57 2286937997
>>2286336
В геймдев вкатывайся. Там таких половина. Ну и да, в РФ геймдев это 99% юнити.
Главное не приставай к коллегам и все будет норм.
На завод - сразу ебнут.
В тырпрайз, как только в чулочках начнешь ходить.
Геймдев - как раз рассадник таких вот.
Аноним 04/02/22 Птн 21:00:52 2287121998
image.png 2Кб, 261x97
261x97
Антоны, поясните, пожалуйста за различия между Web App и Web Api app.

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

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

А чем Web App отличается от него?
Аноним 04/02/22 Птн 21:22:02 2287152999
>>2287121
Это просто шаблончики проектов для asp.net (core).
По факту - у тебя есть класс Controller и ControllerBase. Тот что просто контроллер - типа задуман что ты будешь отдавать какие-нибудь разорпейджи и прочее бесполезное говно. Контроллер бейс - допилили до состояния, что ты можешь удобно и без лишних телодвижений срать жсонами. Ну и вместе - там механизм мидлварей и фильтров, который позволяют тебе не ебаться с придумыванием того как авторизацией заниматься, проверять всякую хуйню и т.д.

А относительно вопроса. Ничем кроме темплейта сатртового оно не отличается. Просто в случае WebApp у тебя будет структура проекта со всякими www, pages и прочей бесполезной нормальному бекендеру хуетой, при этом ты вполне дальше можешь забить хуй и пилить на чем хочешь проект, просто это будет то что тебе предложат изначально. С вебапи, если ты ебанат - ты так же без проблем это все прикрутить можешь, делается одной кнопкой, просто изначально у тебя будет только класс Program, Startup(в версиях с минимал апи - выпилили) и папка с контроллерами, дальше - сам что надо делай как тебе нужно.
Аноним 04/02/22 Птн 21:42:42 22871731000
>>2286474
Для этого подходит и офф документация, нахера идти на метаникт, который не обновлялся сто лет?
Аноним 04/02/22 Птн 21:44:26 22871771001
>>2286520
Для чтения офф документации тебе нужны довольно базовые знания инглиша, скачай себе расширение для перевода незнакомых слов, через месяц мучений на офф доке сможешь и без него большинство инфы понимать. И это тебе точно пригодится в будущем.
Аноним 04/02/22 Птн 22:20:38 22872001002
>>2287152
Т.е. нормальная практика срать жейсонами, а фронтэнд прикрутить позже отдельно, например используя реакт или допустим мобильный клиент?
Аноним 04/02/22 Птн 23:47:23 22872371003
Аноним 04/02/22 Птн 23:50:09 22872391004
>>2247869
на рейзоне начинал? он же появился только недавно
Аноним 05/02/22 Суб 00:10:53 22872531005
Аноним 05/02/22 Суб 02:55:51 22873051006
>>2287253
В спринге все так делают
Аноним 05/02/22 Суб 04:58:30 22873391007
>>2287305
они мазохисты, им нужно

Аноним 05/02/22 Суб 05:52:07 22873541008
qwenqwenq224.mp4 1329Кб, 1280x720, 00:00:19
1280x720
Когда уже гейтс ответит за эту хуйню? Почему простейшие действия в примитивнешем графическом редакторе так грузит проц? Если также двигать большой прямоугольник - там ваще под 80%
Аноним 05/02/22 Суб 06:29:13 22873631009
>>2287354
Ты ебанат, поставь 11 Винду
Аноним 05/02/22 Суб 06:34:54 22873651010
Аноним 05/02/22 Суб 10:08:43 22874101011
Аноним 05/02/22 Суб 10:17:14 22874171012
>>2247630
Делаешь класс ApplicationContextServiceProvider
Делаешь класс ApplicationContextServiceProviderBootstrapper
У класса ApplicationContextServiceProvider два метода Attach<T>(T service) и AttachFactory<T>(Func<ApplicationContext, T> serviceFactoty) и еще два метода GetService<T>() и GetServiceFactory<T>()

Ну а дальше. Всем твоим классам, которым нужна зависимость прокидываешься ApplicationContextServiceProvider как тебе удобно. И дергаешь. В бутстраппере - заполняешь нужными тебе зависимостями.
Тестировать - изи бризи. Реализовать - две минуты времени.
Аноним 05/02/22 Суб 13:41:27 22875531013
>>2287417
>Всем твоим классам, которым нужна зависимость прокидываешься ApplicationContextServiceProvider как тебе удобно

зачем этим классам зависимость от ApplicationContextServiceProvider? Им свои зависимости нужны
Аноним 05/02/22 Суб 14:17:35 22875991014
>>2287553
Ну, я простое решение предложить хотел.
Так-то можно конечно по хардкору:
делаем класс
ServiceDescriptor - класс который описывает зависимость, что за тип, какой интерфейс, время жизни
ServiceCollection - класс в котором эти вот дескрипторы хранятся(контейнер)
ServiceProvider - класс для получение нужной зависимости уже в виде конкретного инстанса метод Get<T>()
ServiceScope - скоуп для контейнера, на случай если мы хотим управлять временем жизни. Можно тут прикрутить пул и переиспользовать инстансы, если нам оно надо, так что можно сделать еще ServicePool
ServiceScopeFactory - фабрика для скоупов, как-то ж скоупы нужно создавать
ServiceBuilder - класс для того чтобы в рамках времени жизни - создавать нужные нам инстансы и прокидывать их в конструктор пользуясь рефлексией
ApplicationHost - наш хост который будет хранить в себе конфиг приложения, коллекцию зарегистрированных сервисов и имеет методы Start, Stop.
Таким образом - в ServiceBuilder - мы будем строить граф объектов которые нужно запровайдить, создавать инстансы и прокидывать туда, куда нужно. Всякие синглтоны - делаем ленивыми, чтобы экономить память. Что там дальше? А, ну да, в ApplicationHost - главный поток ищет то что мы будем считать главными приложениями, допустим мы выделим интерфейс IRunable с методом RunAsync, запускает все это дело и потом ждет, пока они все не завершатся. Как-то так.

Такое нормально запилить уже посложнее будет и лично для себя я бы пользовался ApplicationContextServiceProvider
Аноним 05/02/22 Суб 14:38:45 22876291015
>>2287599
Суть не в том насколько сложно организован тот, кто собирает зависимости - ему нечего делать в конечных классах подсовывая себя вместо нужных зависимостей. Исключение - фабрики.
Аноним 05/02/22 Суб 15:54:49 22876871016
Что можете сказать про написание софта на си шарп? Сейчас многие студии все ещё ищут людей со знанием wpf, иногда даже винформс можно найти, так же непонятно что происходит с uwp. А теперь с новой версии студии появляется ещё и maui который обещает быть супер кросплатформенным и вообще крутым и классным. Стоит ли в 2022 году идти по направлению написанию софта и если да то какую технологию смотреть? Или же си шарп это про веб и геймдев?
Аноним 05/02/22 Суб 15:58:57 22876961017
>>2287687
> maui который обещает быть супер кросплатформенным и вообще крутым и классным

где обещает? во-первых, это хамарин, который слабее чем WPF по фичам. Во-вторых, поддержка кросс так себе ибо "кому нужно сами пилите".
Аноним 05/02/22 Суб 16:10:55 22877111018
>>2287696

*обещает по словам самих же разрабов

Так выходит остаётся только wpf и тот под виндовс?
Либо катиться копать веб и геймдев
Аноним 05/02/22 Суб 16:21:08 22877311019
>>2287711
разрабы говорят, что не хотят поддерживать линукс, что противоречит "обещает быть супер кросплатформенным по словам разрабов". Ограниченно кросплатформенным разве что.
К тому же нужно иметь мак, чтобы кодить под мак

В шарпе нет нормального кроссплатформенного гуи. Либо мощно, но только винда (WPF), либо неполнокросс и слабенько по фичам (MAUI), либо кросс, но своеобразно и глючно (авалония), либо экзотика вида Uno, который вообще хз как работает (как мауи что ли?)
Аноним 05/02/22 Суб 16:34:19 22877551020
Подскажите пожалуйста как грамотно выполнить что я хочу, я мучаюсь уже больше недели, никак не получается.
Есть JSON документ, внутри много каких данных, но меня интересует массив словарей formats
И я хочу написать с помощью LINQ разные запросы которые находят данные по определённым параметрам, например я хочу получить элемент, у которого format_note равен 1080p и vcodec avc1.4d4015. Ещё бы понять как сделать без кучи if условие чтобы если не нашло 1080, возвращало 720 и т.д. Сколько я пытался накручивать разные команды по туториалам получал в ответ только новые непонятные ошибки.
Можно было бы сделать тоже самое с помощью циклов, но это быстро приведёт к путанице, а если ещё и нужно несколько параметров. Может стоит взять официальную json библиотеку?
Смысл программы в том, чтобы посчитать сколько потребуется места чтобы скачать множество видео, и показать разные варианты
Ссылка на потуги и json https://dropmefiles.com/mJ4pT
Аноним 05/02/22 Суб 17:23:49 22877971021
>>2287755
1. Вставляешь всой Json вот сюда (https://json2csharp.com/), конвертишь JSON to C#
2. Копируешь к себе в код, приводишь к C# code style (юзай атрибут [JsonProperty("name")]
3. Делаешь linq-запрос к свойству List<Format> formats:

formats.Where(x => ( x.format_note == "1080p" || x.format_note == "720p") && x.vcodec == "avc1.4d4015").ToArray()

Немного глянул жсон, в Where можно использовать x.format_note.Contains(1080") || x.format_note.Contains("720") т.к там есть форматы 1080p60.. значит есть и другие. Хотя тут сам смотри, LINQ позволяет дохуя чего делать
Аноним 05/02/22 Суб 17:27:54 22878031022
>>2287731
>К тому же нужно иметь мак, чтобы кодить под мак
Кодить под мак ты можешь на любой залупе. А вот, чтобы что-то собрать и выпустить под мак, да нужен мак. Но, сюрприз - так будет с любым языком, а не только с шарпом.

>>2287731
>В шарпе нет нормального кроссплатформенного гуи.
А где он есть?
Аноним 05/02/22 Суб 17:30:16 22878051023
Аноним 05/02/22 Суб 17:32:12 22878091024
>>2287803
> сюрприз - так будет с любым языком
авалония не требует наличия мака для билда под мак

>А где он есть?
QT и там где он поддерживается
Аноним 05/02/22 Суб 17:41:05 22878321025
>>2287629
Делаешь себе модельку с твоего жсона(класс с нужными тебе свойствами). Десериализуешь строку с жсоном в свою модельку.
Затем линку
var result = myData.Where(x=>x.format_note == "1080p" && x.vcodec == "avc1.4d4015" || x.format_note == "720p")
//остальная логика
Аноним 05/02/22 Суб 17:48:31 22878431026
>>2287797
>>2287832
Это у меня не получилось потому что пытался без модели сделать? В c# динамически совсем неудобно делается?
Аноним 05/02/22 Суб 17:52:03 22878541027
>>2287843
Сишарп типизированный язык.
Если тебе лень модель делать, можешь использовать десериализацию к словарю в виде Dictionary<string,string> и тогда ключем - будет имя свойства, значением - то что там лежит. Проблема такого подхода - с вложенными объектами, которые тебе так же придется десерилазовать и держать в голове, что вот эту хуету - нужно.
Аноним 05/02/22 Суб 18:01:28 22878661028
>>2287843
мог и динамически. Просто он сам не может вывести тип, но ты мог подсказать через Select или Cast
Аноним 05/02/22 Суб 18:35:31 22879151029
>>2287854
>>2287866
Можно пожалуйста пример, чтоб я имел представление о таком способе?
Аноним 05/02/22 Суб 19:43:45 22880051030
.png 18Кб, 1068x380
1068x380
Я тут в одном треде в б постил прикриплейд.
Что, блин, людям не понравилось-то в этом коде? Можете объяснить?
Аноним 06/02/22 Вск 10:08:41 22882961031
>>2288005
Реализуй Dispose pattern полностью, добавь финализатор класса и напиши GC.SuppressFinalize(this) чтобы GC не сожрал твой объет случайно так как ты сам хочешь управлять временем жизни.
Аноним 06/02/22 Вск 10:38:25 22883041032
image.png 17Кб, 175x174
175x174
FFFFFFF

Я прошел 3хчасовой бесплатный курс по Azure Fundamentals на ютабе. Я написал по этому курсу конспект на 46 страниц, запилил кучу скриншотов и попробовал это все на практике.

скачал тестовые вопросы и ответил НЕ ПРАВИЛЬНО 7/20 раз.

БЛЯТЬ! ВСЕ ЭТИ ВОПРОСЫ НЕ РАССМАТРИВАЛИСЬ В ТОМ КУРСЕ!!!

ПОЧЕМУ БЛЯТЬ?! Какого хуя? Как подготовиться и здать наконец без трахотни

- AZ-900 - чисто поорать, чтоб быть уверенным в своих силах
- AZ-204 - уже по делу - эта хуйня нужна для устройства на работу

АНТОН, ВЫРУЧАЙ
Аноним 06/02/22 Вск 10:40:31 22883051033
>>2288005
Я как только вижу в конструкторе что-либо кроме инициализации филдов сразу иду бить ебало.
Аноним 06/02/22 Вск 10:58:07 22883071034
Этот тред в бамплимите? о
Аноним 06/02/22 Вск 15:25:42 22886871035
Подскажите, каким образом написать про проекты в резюме? Ну не прям они там такие крутые, но я же не профессионал. Отдел кадров наверное особо не поймет что я там понаписал, а передаст главному, который уже и поржёт с этого. Написал приложение показывающее пустое окно на WPF.
Аноним 06/02/22 Вск 15:49:54 22887101036
>>2288687
Напиши следующее: "есть петпроекты: github.com/туттвойайди"
Аноним 06/02/22 Вск 15:50:59 22887111037
>>2288687
>показывающее пустое окно
Ты новый проект чтолиь создал?
Аноним 06/02/22 Вск 15:57:50 22887151038
>>2288710
Так и написал, но там какая-то мусорка, и никто не смотрит
>>2288711
Да, долго старался, лучшая моя работа
Аноним 06/02/22 Вск 15:59:51 22887171039
>>2288715
>Так и написал, но там какая-то мусорка, и никто не смотрит
Всё так. На hh всем пох, на superjob часто просят гитхаб/код
Аноним 06/02/22 Вск 16:02:54 22887201040
>>2288717
Всем пох, но я уже 2 месяц не могу вкатиться. Причём на интервью вроде нормально отвечаю. Нормальные вопросы по типу сколько поколений у gc ни разу не спрашивали, а всякую херню постоянно. Даже на стажёра за 30 тысяч отклонили, это я такой тупой или просто не везёт?
Аноним 06/02/22 Вск 16:33:56 22887461041
Аноним 06/02/22 Вск 17:34:34 22888181042
>>2288746
пасеб.

>задротить никому нахуй не нужные данные
За года работы я профилирование видел лишь в экзамене. Однако позднее, после того как его зарешал, я начал применять эти знания. Получилось оч круто.
Аноним 07/02/22 Пнд 13:27:07 22896341043
IMG202202071326[...].jpg 616Кб, 1440x1929
1440x1929
Это точно задание для джуна?
Аноним 07/02/22 Пнд 13:32:26 22896501044
>>2289634
Абсолютно точно, задания базовые, это основа основ.
Аноним 07/02/22 Пнд 13:33:32 22896531045
>>2289650
Отдел кадров, плиз. Если нужен мидл так и пишите
Аноним 07/02/22 Пнд 14:11:09 22897011046
16393989921-abr[...].jpg 176Кб, 1080x1008
1080x1008
Пиздец, первое техинтервью на английском, и сразу же реалтайм кодинг, тоже первый в моей карьере. Еще и пан-сеньор меня поунижал немного. Говорит еще чо у меня вижуал студио на русском. Тебя ебет пёс, а?

Так и подохну в снг парашах пердоля винформы.

>>2289634
Да , для мидла это слишком изи.

Только пункт про отправку емаилов всратый, будь я помощником на хайре, вычеркнул его бы нахер.
Аноним 07/02/22 Пнд 14:12:07 22897031047
Аноним 07/02/22 Пнд 15:00:55 22897731048
>>2289653
>Web сервис долже нпринимать post запрос
Ок, на такое только миддл способен
>Уметь работать с почтой
Ок, на такое только миддл способен
>Добавлять в бд
Ок, на такое только миддл способен
>Web сервис должен принимать get запрос
Ок, на такое только миддл способен

А что в твоем понимании джуниор в асп? Умеющий писать штмл? HTTP запросы и работа с бд это база, это основа любого бэкенд разработчика.
Аноним 07/02/22 Пнд 17:37:28 22899251049
>>2289773
Ладно, убедил. Это я не работал с asp просто
Аноним 08/02/22 Втр 00:01:46 22903191050
image.png 356Кб, 659x731
659x731
>>2289650
>>2289701
>>2289703
Вот задание на позицию сыньор.нет

не устроился. я хотел 4.5 после налогов, а он до.
Аноним 08/02/22 Втр 00:04:45 22903211051
>>2290319
Какие низкие требования.
Аноним 08/02/22 Втр 00:09:05 22903231052
Как стать уверенным джуном? Ну посмотрел кучу туториалов на Ютубе. Повторил как в видео. Написал парочку проектов. А в голове чувствуется помойка из ненужных знаний. И собеседованиях отказывают.
Аноним 08/02/22 Втр 00:27:28 22903321053
>>2290323
>Как стать уверенным джуном?

А что такое "уверенный джун"? Тот, кто знает по верхам, но быстро разбирается при необходимости?
Аноним 08/02/22 Втр 00:37:22 22903361054
>>2290332
Тот, кого ждут работодатели. Вроде и джун, а вроде и чего-то не хватает, вот как тут узнать. Опыта работы блять не хватает?
Аноним 08/02/22 Втр 01:02:55 22903411055
>>2290321
дык, нагавнякать это может каждый, а хорошо написать - другое дело.
Аноним 08/02/22 Втр 06:18:58 22903911056
>>2290336
>Опыта работы блять не хватает?
Да.
Представь мир розовых поней где обучение где-нибудь в околовузике не пережиток советского прошлого где учат паскаль и бейсик, а нормальное упругое обучение хоть как-то нацеленное на рынок.
При нормальном обучении за 3..4 года ты успеешь пройти как минимум 2...3 'производственных' практики на которых заимеешь нормальный опыт на боевых или около проектах, сделаешь нормальные курсачи и т.д. Т.е. как раз и заработаешь тот самый опыт который нужен работодателю.
И когда ты получишь диплом, и пойдешь на работу, то у тебя уже будет нормальный опыт и ты сможешь со старта уже приносить пользу.
Вот примерно этого и ждут от джуна. Никому не нужен стажер не имеющий опыта. Т.к. по сути нанимая тебя работодатель теряет 1...2 года, пока ты наберешь ту самую практику и знания, которые должен был набрать на обучении. Т.е. по факту работодателю придется взять на себя функции вуза и обучать студента, прежде чем он начнет приносить пользу.
Аноним 08/02/22 Втр 06:51:00 22903981057
>>2289634
Ну да.

Мне вот только что интересно. Вот я бы сделал как деды и майки показывают, т.е. в контроллере весь код хуйнул. Меня бы взяли из расчета что это же джун? А если бы я наоборот - вынес бы в сервис-леер, меня бы посчитали мудаком, что лишние абстракции для такой простой задачи делает? А если бы я взял тот же HTTPListener, вместо того чтобы контроллеры и это вот использовать? Вот что из этого со стороны потенциального работодателя - хуже и на каком уровне?
Аноним 08/02/22 Втр 08:44:37 22904131058
>>2290323
>И собеседованиях отказывают
Просто берешь и читаешь Рихтера, каждая вторая галера вопросы задает именно по нему. Да и не галера тоже.

Ну и плюс минимальный набор ASP, EF, SQL, LINQ.

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

Аноним 08/02/22 Втр 10:11:54 22904591059
>>2290323
2 книги именно в таком порядке:
- Джон Скит: Jon Skeet - C# in Depth (4th) - 2019
- Ben Watson - Writing High Performance .NET Code - 2014

Прям делаешь по ним конспекты и учишь всё что там написано. Похуй, будет оно применяться или нет.
- кастомные Task классы
- state machine в yield return с ексепшенами
- асинхронные IDisposable
- обработка исключений в многопоточных приложениях

Да, ты этого нихуя не найдешь в живых проектах, зато сможешь смотреть на некоторых "сеньеров" как на говно.
Аноним 08/02/22 Втр 10:52:34 22904711060
>>2290391
Ну кто виноват что образование в рашке не работает? Пускай конденсируют это пониженной зарплатой на первое время.
>>2290413
На интервью мне не задают настолько сложных вопросов чтоб я прям не знал что ответить, а хотя я знаю. То что в списках "это точно спросят на интервью" даже ни разу не спрашивали про типы по значению и ссылке, про сборщик мусора, про виртуальную машину и т.д.
>>2290459
И в чём смысл Джуна который знает какие-то сложные штуки про которые его никогда не спросят и которые не пригодятся при его уровне развития?
Аноним 08/02/22 Втр 11:36:56 22905021061
Добрый день. Чуть меньше месяца назад я начал изучать c# и пока изучаю, чисто, синтаксис языка. Хотелось бы узнать, у более опытных анонов, насколько часто желательно повторять весь изученный матерьял? И нужно ли, во время повторения, пробегаться по теории или достаточно будет сделать парочку задач по теме?
Аноним 08/02/22 Втр 11:39:53 22905051062
>>2290502
Языковые конструкции учатся очень быстро поскольку используются всегда и везде, нет смысла их повторять и задрачивать, они сами задрочатся по мере изучения, но конечно нельзя пропускать мимо ушей практику. Усвоил циклы - пошел их практиковать и экспериментировать.. и так далее по всем основам. Если ты уже умеешь юзать циклы условия итд, то переходи к более сложным вещам.
Аноним 08/02/22 Втр 12:40:53 22905561063
>>2290323
Книги бро
Потом практика, если сам себе задачку придумать не можешь
Стырь с курсов, только не скиллбокс, лучше у индусов, лол
Аноним 08/02/22 Втр 12:45:13 22905611064
>>2290556
Какие книги? Какая практика? Ну я же писал выше, мне нужно конкретнее
Аноним 08/02/22 Втр 13:21:45 22906081065
>>2290561
Ну Троелсен к примеру, но на русике очень старое издание
Параллельно алгоритмы и структуры данных поверхностно подрочить
Потом делаешь простой интерфейс к бд на каком нибудь впф, или аспе
Аноним 08/02/22 Втр 13:47:19 22906511066
>>2290608
> Потом делаешь простой интерфейс к бд на каком нибудь впф, или аспе
Ну на впф я такое могу сделать. Могу называться джуном значит? Как это точно определить, мне отказываются из-за того, не везёт или чего-то не хватает? Пробовал собеседование уже около 5 раз
Аноним 08/02/22 Втр 15:03:06 22907411067
>>2290651
Ну видимо ты реализуешь его по каким-то старым паттернам, или вообще без паттернов а тяп ляп
Глянь пример простейшего МввМ приложения на впф, и сделай что-нибудь подобное
Какой нибудь парсер погоды хз, не важно
Главное показать что ты понимаешь концепцию модель вьюха вьюмодель, или на аспе мвс, или апи
Круто если еще и тестами покроешь
Ef тоже плюсом будет
Ну и на гите чтоб это все было
Ждут обычно чего-то такого
Аноним 08/02/22 Втр 15:34:01 22907731068
>>2290471
>И в чём смысл Джуна который знает какие-то сложные штуки про которые его никогда не спросят и которые не пригодятся при его уровне развития?
Ну это как сказать мол Ерохин и Сычов одинаково угловато вынлядят в костюмах. Вот только на Ерохе костюм сидит, т.к. тот на турнички ходит по утрам, а Сычов пинус в доте сосет дрочит.

Короче в работе это отражается в том, какой код пишет в итоге.
Аноним 08/02/22 Втр 15:55:40 22907901069
посоветуйте нормальный, адекватный сборник задач по с#, где нету всякой хуйни, типо "переведи там двоичный код в биты-хебиты, бла бла" или "сделай задачу на тригометричискую-хуемитрическую функцию" и т.п.
Аноним 08/02/22 Втр 17:30:59 22908841070
Аноним 08/02/22 Втр 19:04:30 22910211071
>>2290323
Я сейчас тебе на самом деле дам годный совет.
Делаешь мелкий проект через TDD. Проект выбираешь не на похуй, чтобы сделать, а что-то что тебе самому хотелось бы автоматизировать, чтобы ты понимал как этим пользоваться будешь. Даже ебучая поваренная книга совмещенная с ведением учета того что у тебя в холодильнике, если это то что тебе нужно - будет полезнее в плане экспы, чем прога, которую ты вроде как сделал, а не знаешь нахуя и зачем. Потому что по факту, охуенный код, который не решает задачи бизнеса - нахуй никому не нужен, ты сам подумай, с хуя столько вони про легаси и хуевый код дедов, но при этом он - крутится на серверах и им пользуются. А если у тебя будет и охуенный код(полученный через TDD) и еще он что-то полезное делает, то ты в глазах хуев что тебя нанимают - потенциальный менеджер-хуенеджер или тимлид.
Берешь докер и учишь пайплайн(там просто, вечер посидеть поразбираться).
Запихиваешь свой проект в докер.
Все, ты уверенный джун.

Почему именно так? Потому что через TDD ты привыкаешь писать код так, чтобы его было удобно тестировать, а значит выделять интерфейсы удобные для использования.
Так вот. Пописав вот так - твой код будет выделяться на фоне кучи джунов и ты как раз будешь тем самым уверенным джуном.


Книги - хуйня. Но если ты решишь, что тебе таки нужны, рихтера сразу нахуй.
Аноним 08/02/22 Втр 19:06:10 22910251072
>>2290790
Кодварс. Там задачки интересные, а не унылота как на литкоде.
Аноним 08/02/22 Втр 19:39:09 22910711073
Аноним 08/02/22 Втр 19:44:47 22910731074
>>2291071
Хочешь сказать, что задачка неинтересная?
https://www.codewars.com/kata/52ffcfa4aff455b3c2000750

Оно и интереснее и больше всяких штук затрагивает, в отличии от литкода, гда даже хард задачки - это конец первого курса вуза. Вот пример что я скинул - это уже как минимум - конец второго. По крайней мере у нас мы такое на втором делали.
Аноним 08/02/22 Втр 20:02:19 22910801075
изображение.png 385Кб, 1094x377
1094x377
>>2291073
Извиняй, просто у нас, видимо, вышло недопонимание. Я, первоначально, когда увидел твой пост, зашел на Кодварс и увидел пик, после этого я решил, что ты просто меня решил обидеть. Но думаю я был не прав, ведь сперва стоит попробовать и только потом уже делать выводы.
Аноним 08/02/22 Втр 20:03:26 22910811076
>>2291080
А, лол, я не на тот сайт просто попал...
Аноним 08/02/22 Втр 21:36:38 22911571077
Посмотрел видос как на твиче накручивают миллионы зрителей, и там попалась дллка которая показывает что это всё написано на c#. Каким образом вообще пишутся приложения которые могут создавать такое огромное количество соединений? Что там за такая крутая архитектура? Ни одного компьютера не хватит чтобы столько соединений открыть с прокси без продуманной структуры. Каким образом это вообще пишется?
Аноним 08/02/22 Втр 21:42:06 22911601078
>>2291157
столько это сколько?
Аноним 08/02/22 Втр 22:25:28 22911931079
>>2291157
Если найдешь экзешник проги - можно будет декомпилировать и глянуть исходники
Аноним 08/02/22 Втр 22:33:49 22912011080
>>2291160
Сотни тысяч сколько, мало что-ли
>>2291193
А если накрыли каким нибудь говном?
Аноним 08/02/22 Втр 23:15:22 22912301081
>>2291157
воображаю

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

сервер: всем смотреть какое-то говно на твиче
ботинки: открыть соединение
твич: ого сколько зрителей!...

да такое дети в школах пишут, если честно
Аноним 08/02/22 Втр 23:28:45 22912361082
>>2291201
>Сотни тысяч сколько, мало что-ли
Где взять сотни тысяч проксей для одновременного использования? А нигде.
Аноним 09/02/22 Срд 00:48:01 22912801083
>>2290471
>Ну кто виноват что образование в рашке не работает? Пускай конденсируют это пониженной зарплатой на первое время.
Ну кабаны по факту это и делают. Если вкатуну удается устроиться куда-нибудь без опыта, то только за еду.
Вот когда он год-полтора попердолится и оботрется, тогда сможет на что-то претендовать.
По сути 3-х летний студент с нормальной(!) практикой по уровню равен вкатышу после полуторагодовых курсов и тех же полутора лет работы за подачки.
Остальное зависит уже от личных качеств. У кого лучше хардскилы, тот берет умением, у кого лучше софт скилы, тот языком дорогу прокладывает.
Аноним 09/02/22 Срд 00:51:05 22912811084
>>2290471
>И в чём смысл Джуна который знает какие-то сложные штуки про которые его никогда не спросят и которые не пригодятся при его уровне развития?
Показывает кругозор и уровень. Если кандидат способен интересоваться сложными штуками да еще и понимать их, то с простыми у него точно проблем быть не должно.
Аноним 09/02/22 Срд 04:45:17 22913181085
>>2247357 (OP)
Есть база данных SQLite3.
И есть СSharp.
Есть System.Data.SQLite: https://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
Есть документация в CHM-файле: https://system.data.sqlite.org/index.html/doc/trunk/Doc/SQLite.NET.chm?mimetype=application/x-chm
И есть библиотика - System.Data.SQLite.dll : https://system.data.sqlite.org/downloads/1.0.115.5/sqlite-netFx20-binary-bundle-Win32-2005-1.0.115.5.zip

Как работать с базой данных, блядь?
Надо создать какой-то cs-файл, чтобы там подключиться к базе, и прописать там методы всяке ебучие, и его потом подключать, верно?
Как называется эта хуйня? Есть ли исходники с чем-то подобным?
Может создать? Только я ебу как правильно эту хуету назвать.
Аноним 09/02/22 Срд 09:43:03 22913631086
>>2291318
паттерн репозито(а)рий что ли?
Аноним 09/02/22 Срд 10:22:04 22913781087
Добавил новую view и viewmodel в программу, как делал сотни раз до этого и ВНЕЗАПНО началась какая-то дичайшая утечка памяти. Комменчу contentcontrol до viewmodel и она исчезает. Я уже всё проверил что только можно, пробовал и целиком комментить код viewmodel с view, чтобы там вообще нихуя не оставалось - всё равно утечка. Пробовал и onewaytosource ставить, вместо twoway - нихуя. В чём вообще может быть проблема?
Аноним 09/02/22 Срд 10:23:06 22913791088
>>2291201
>А если накрыли каким нибудь говном?
Сомневаюсь
Аноним 09/02/22 Срд 10:23:54 22913801089
>>2291378
Проблема там, где мы её не видим. Показывай код
Аноним 09/02/22 Срд 10:29:34 22913831090
>>2291380
Кода там порядочно во вьюхе и вьюмодели, но, как я говорил, я его пробовал убирать целиком, проблема осталась.
<ContentControl Grid.Row="0" Grid.Column="0" Content="{Binding ObjToolBar,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
Больше даже не знаю, что показать. Показывать просто нечего
Аноним 09/02/22 Срд 10:31:26 22913851091
>>2291383
Значит проблема в UI, иди на ruSO, там тебе ответим с пацанами
Аноним 09/02/22 Срд 10:38:31 22913961092
Аноним 09/02/22 Срд 10:39:31 22913981093
Аноним 09/02/22 Срд 10:44:47 22914141094
>>2291378
ну так посмотри же кто в куче живет
Аноним 09/02/22 Срд 10:45:05 22914151095
>>2291398
Если уж совсем не смогу решить. Но всё же, как проблема может быть c UI связана? Я этот contentcontrol положил в TabItem TabControl'а, в этом табайтеме у меня уже 2 других контенконтрола лежит и всё с ними нормально. Я эту операцию проделывал уже ёбаную кучу раз и в этот раз я всё сделал как обычно и уже всё что можно перепроверил, просто хуею
Аноним 09/02/22 Срд 10:54:36 22914261096
image 42Кб, 705x928
705x928
Ну да, UI, если я всё правильно посмотрел. Только что теперь делать с этой информацией?
Аноним 09/02/22 Срд 10:58:32 22914291097
image 9Кб, 955x115
955x115
Аноним 09/02/22 Срд 11:06:57 22914351098
Аноним 09/02/22 Срд 11:13:53 22914411099
>>2291415
Пройдись в отладчике, мб у тебя цикл бесконечный где-то.
Аноним 09/02/22 Срд 11:20:07 22914471100
>>2291441
Проходил. И если бы он был бесконечным, то всё вообще вылетало бы, а так прога работает, только отжирает 2 гига памяти, вместо 300.
Аноним 09/02/22 Срд 13:23:41 22915561101
>>2291447
А может у тебя проблема вовсе не в новой вью и вьюмодел?
Аноним 09/02/22 Срд 13:37:59 22915761102
>>2291383
Короче, у меня был Grid.ColumnSpan у ContentControl, я его убрал и память перестала утекать. Почему - даже примерно не ебу, просто абсурд, нахуй
Аноним 09/02/22 Срд 13:38:44 22915771103
Аноним 09/02/22 Срд 18:15:28 22918601104
>>2291157
> Каким образом вообще пишутся приложения которые могут создавать такое огромное количество соединений?
Берешь и пишешь
> Ни одного компьютера не хватит чтобы столько соединений открыть с прокси без продуманной структуры
С хуя? Вот буквально на работе нужно было перформанс моего TCP-сервера проверить и отказоустойчивость. Обычное ВПФ приложение, открыл сокет и понеслась. 50к - спокойно открываются, по потребленю памяти - около 100МБ на эти самые 50к(но тут я еще еблан, не периспользую память, никаких пулов и прочего, просто хуяк-хуяк, создал клиенту буффер и туды-сюда елозю), и это не просто открытое соединение, вполне себе шлют по протоколу пакетики, стейт меняют и все такое. Так что я хуй знает с чего ты решил, что не должно хватить мощностей.
Ну а архитектура:
-Core // тут парсер пакетов и все остальное относящиеся к протоколу
-Net
--Connection.cs // обертка над сокетом
-Application // тут прикладной уровень
--ClientAdapter.cs // стейт-хуейт, держит в себе парсер, соединение, при разрыве переподключается, умеет с прокси работать
-Views - единственная вьюшка тут с обычным датагридом чтоб за стейтами следить, настроечки тут же, чтобы можно было задать настройки подключения и всякое разное
-ViewModel
--AppViewModel.cs // тут вьюмодель
EntryPoint.cs // сюда Main запихиваю потому что я хочу так Код void Main(string[] args) => new Program(args).Run();
Program.cs // Приложение собираю тута, там создаем окошко и погнали
Аноним 09/02/22 Срд 21:38:57 22920101105
>>2291378
Смотри что за объекты выделяются. Удобнее конечно с доттрейсом, но и студийный профайлер пойдет.
Так вот. После того как увидел что - ищи где конкретно.
Аноним 10/02/22 Чтв 09:19:54 22923051106
Ребята, как совладать с datepicker'ом в разор страницах? Мне нужно вывести чисто дату, сейчас на html странице у меня такое:
@Html.TextBoxFor(model => model.DateTimeProperty, new
{ value = Model.DateTimeProperty.ToString("dd/MM/yyyy"),
type = "date"
}

В модели:
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime DateTimeProperty { get; set; }

Бинд проперти я уже специально убрал. В итоге у меня вывод просто дефолтного значения дд.мм.гггг (буквально), хотя в нем находится value в виде 10.02.2022 00:00:00. Как заставить DateTime поле не передавать время, а только дату в html?
Аноним 10/02/22 Чтв 10:08:15 22923311107
Двач, посоветуй чисто практических книг по шарпу, но не Рихтера - он показался тяжеловесен, с большим количеством избыточной теории.
Аноним 10/02/22 Чтв 10:16:06 22923381108
>>2292331
Тем более, что 4-ое издание датируется 2013 годом.
Я хотел бы почитать что-то не менее качественное, но более актуальное.
Аноним 10/02/22 Чтв 10:55:42 22923561109
>>2292331
- Jon Skeet - C# in Depth (4th) - 2019
- Ben Watson - Writing High Performance .NET Code - 2014

алсо, не понимаю, тех кто читаю рихтера. там про 4.5
Аноним 10/02/22 Чтв 11:36:49 22923991110
>>2291363
Ну, что-то типа того.
Что надо делать, чтобы работать с базой?
Подключиться к ней, открыть соединение с ней, и дальше читать SQL-запросы из ввода, исполнять их и возвращать результат, в виде таблиц, значений всяких, с разными типами, и так далее и тому подобное.
Добавлять данные туда, вставлять строчки, обновлять их, и всякое такое. Делать CRUD всякий с базой.
Вот, что-то подобное хочу написать, и залить на гибхаб. Токо не знаю как назвать эту парашу ебучую.
Аноним 10/02/22 Чтв 13:18:46 22925351111
>>2292399
дак ты сначала напиши очередную админку для баз данных, а уж потом про название подумаешь.
Аноним 10/02/22 Чтв 13:44:58 22925581112
Когда тред перекатите? Заебали уже, если честно. В дотнете все такие инфантильные?
Аноним 10/02/22 Чтв 14:05:47 22925961113
>>2292558
>В дотнете все такие инфантильные?
Тогда чего ты тут забыл?
Аноним 10/02/22 Чтв 14:48:35 22926531114
Для чего в туториалах по wpf для совсем новичков рекомендуют использовать caliburn micro, mvvcross? Разве не лучше сначала без них научится работать?
Аноним 10/02/22 Чтв 15:24:29 22926971115
>>2292653
без них это как? написать свой MVVM фреймворк? Так для его написания нужен опыт работы с ними. А без MVVM это ж вам не винформсы = стрелять себе в ноги
Аноним 10/02/22 Чтв 15:53:11 22927231116
>>2292558
Зачем. Все равно первые 500 постов набегают разные расто- джава- делфи- и прочие шизики и засирают тред до бамплимита. Зато потом можно спокойно общаться один хуй куда он с тематики денется.
Аноним 10/02/22 Чтв 16:34:34 22927971117
>>2292697
Даже для очень простых приложений нужен фреймворк? Почему его из коробки тогда нет?
>>2292558
Да перекачу, в c++ сидели до 2000 постов почти и нормально, тоже я перекатывал
Аноним 10/02/22 Чтв 16:43:02 22928131118
>>2292797
>Даже для очень простых приложений нужен фреймворк?
Ну никто не запрещает кодить все как будто с винформс работаешь, но это мазохизм. Даже для простых приложений.

>Почему его из коробки тогда нет?
https://docs.microsoft.com/en-us/windows/communitytoolkit/mvvm/introduction
Аноним 10/02/22 Чтв 17:28:40 22928511119
Аноним 10/02/22 Чтв 17:42:06 22928601120
>>2292851
хз. обычно выбирают же по обратному принципу "какие возможности".
Я начинал с MVVM Foundation. Почитал их код и вникнув в example app отформатировал мозг на понимание MVVM.
А дальше...да все фреймворки как братья, где в каждом что-то по своему сделано.

Для меня же все они обладают фатальным недостатком - у них weak модель управления жизнью всего
Аноним 10/02/22 Чтв 19:21:10 22929871121
>>2292851
хотя у майков какой то странный фреймворк. дока так все по верхам как то. Непонятно как навигация, как вьюмодели создавать, как и кто меняет IsActive для вьюмоделей (даже если это UWP, то кто меняет?), не все есть, но есть и не раскрыто лишнее вида AsyncRelayCommand и т.д.
Зато раздел по перфомансу, причем на уровне будто это хайлоад сервер код какой то пишем.
Аноним 10/02/22 Чтв 19:33:30 22930041122
>>2292987
Ясно, дальше на caliburn посижу
Аноним 10/02/22 Чтв 20:52:09 22930961123
image.png 48Кб, 781x589
781x589
image.png 57Кб, 549x349
549x349
>>2292535
Уже написал.
Это не админка, а просто консольная хуйня, в одном cs-файле, принимает sql-запрос через Console.ReadLine(), выводит данные и пишет их в лог. Есть также пара методов для возврата значений разных типов, datarow, datatable там, блобы, вот это вот всё.
Под каким именем сранину вхуярить на гитхаб - даже не знаю. Как это говно назвать?

Насчет админки, я вижу в OpenServer есть некий SQLite Менеджер, доступный по URL.
Но это не совсем то, что у меня.
Аноним 10/02/22 Чтв 21:20:43 22931331124
>>2293096
Назови ее пупса

Выбор имени - сложное дело. Искать говорящее про функционал имя и свободное, и не выглядело банальным типа SqlRequesterLite...бяка
А постороннее... А какое?

Поэтому пупса. Спросят тебя "а что это значит". А ты скажешь "анон подсказал"
Аноним 10/02/22 Чтв 21:21:54 22931361125
>>2293004
Да свой напиши, раз уж захотелось чего то другого
Аноним 11/02/22 Птн 08:43:30 22934421126
Аноним 11/02/22 Птн 11:20:54 22935521127
>>2293442
где хочешь. можешь с амазона бумажный вариант заказать
Аноним 11/02/22 Птн 11:45:56 22935771128
image.png 63Кб, 1123x555
1123x555
image.png 47Кб, 1254x323
1254x323
Смотрел документацию по СигналР, и насколько я понял метод OnDisconnectedAsync может принимать налл, отлично стильно соверменно, но я не понимаю как это обрабатывать? Что бы я не делал мне визуал студио все время говорит что я делаю это не правильно

Как у настоящих матерых программистов принято писать код в таком случае?
Аноним 11/02/22 Птн 12:29:09 22936271129
>>2293577
ну if(exception!=null) точно не нужен
Аноним 11/02/22 Птн 14:19:33 22937351130
>>2293577
Там новый сахарок в виде bang-bang оператора завезли, попробуй его использовать. Потом расскажешь.
Аноним 11/02/22 Птн 14:20:55 22937371131
image.png 311Кб, 1280x797
1280x797
Аноним 11/02/22 Птн 14:32:41 22937491132
image.png 23Кб, 881x119
881x119
Аноним 11/02/22 Птн 14:46:54 22937621133
>>2293749
а фреймворк сменить?
Аноним 11/02/22 Птн 14:47:25 22937641134
Аноним 11/02/22 Птн 15:05:33 22937761135
>>2293762
В смысле с дот нет 5 на дот нет 6? а там будет работать?
Но на самом деле не важно, я не могу вот так взять и просто сменить фремворк, у меня все поломается
Аноним 11/02/22 Птн 15:07:45 22937781136
>>2293776
конечно не будет.
дотнет 6 это шарп 10
шарп 11 еще ждать и ждать
Аноним 11/02/22 Птн 15:08:31 22937811137
Значит есть aspnet core сайтец. Есть у него слой работы с бд (б-гомерзкий еф), есть апликуха(контроллеры и вот эта вся хттп параша) и между ними лежит слой сервисов. Среди прочего прочих сервисов методов есть такие, которые просто отдают сущность из бд. Т.е. контроллер просит у сервиса, например, страну по айди, сервис тащит из бд CountryEntity, конвертит это в CountryDTO и отдает контроллеру. Таких запросов много, а стран мало и, очевидно, надо бы это закешировать. Вопрос: какой слой должен работать с кэшем?
Аноним 11/02/22 Птн 15:25:57 22938091138
Здарова, интересует такой вопрос: как лучше соединить код на фортране с шарпом. У моего научника есть достаточно старая программа написанная на фортране, он предложил написать для неё более новый интерфейс на шарпе. До этого я писал только простенькие проги на питоне, ну и синтаксис Си знаю немного. Есть предложения с чего лучше начать? Курить матчасть из шапки?
Аноним 11/02/22 Птн 16:32:59 22939141139
А как так вышло, что большая часть вакансий на C# это фуллстековые потогонки?
Аноним 11/02/22 Птн 16:36:30 22939261140
>>2293914
они на словах фулстековые
>>2293781
да ни в какой. поставь редиску между фронтом и бекендом и все.
Аноним 11/02/22 Птн 17:18:28 22939911141
image.png 109Кб, 1041x575
1041x575
image.png 116Кб, 1209x496
1209x496
image.png 6Кб, 905x136
905x136
image.png 52Кб, 941x167
941x167
В чем его проблема? почему этот ajax не работает?
почему я никак не могут передать сраный стринг
Аноним 11/02/22 Птн 17:29:06 22940141142
а оно вообще не работает
/
ВООБЩЕ НАХРЕН!


даже это
$.ajax({ url: _SetQuickReservationUrl, data: "test", type: 'POST' });

или это
$.ajax({ url: _SetQuickReservationUrl, data: {serializedInputs :"test"}, type: 'POST' });
Аноним 11/02/22 Птн 17:52:26 22940551143
Аноним 11/02/22 Птн 18:01:01 22940701144
>>2294055
Собственно я к тому же склоняюсь, я это делаю в апи контроллере, его недавно начал использовать
Аноним 11/02/22 Птн 18:34:41 22941171145
.png 31Кб, 505x831
505x831
>>2293577
Показываю только один раз. Запоминай.
Лень устанавливать сигналр, но ты думаю не тупой, все поймешь.
Аноним 11/02/22 Птн 18:42:45 22941301146
>>2294117
>ex is not null
Как в тред питухона зашёл...
Аноним 11/02/22 Птн 18:53:05 22941421147
>>2293764
Да, походу еще нет. Сорян, лоханулся, в конфе прочитал новость и потом уже только посмотрел. Но срачик на гитхабе знатный на эту тему.
Аноним 11/02/22 Птн 22:07:13 22944901148
За три года работы я уже почти забыл основы, по типу как устроена хешмапа, алгоритмы все эти и прочую залупистику.
Т.е. я помню названия, я помню как погуглить, что какой сложностью обладает, когда то, когда это применять. Но вот как оно написано - реально уже не помню.
Стоит ли освежить эти знания, если я собираюсь походить по собесам? Или теперь таки буду про проекты спаршивать и это вот? Слышал раньше, что после того как есть реальный опыт - начинают про него спрашивать, но чет сам думаю, что чтобы быть спокойным - следует таки поелзать-посмотреть на кишки.
Аноним 11/02/22 Птн 23:58:48 22945611149
>>2294490
>Стоит ли освежить эти знания, если я собираюсь походить по собесам?
Лишним не будет. Иногда спрашивают. Но в основном таким джавистов ебут. У шарпистов обычно максимум спрашивают как List под капотом устроен.
Аноним 12/02/22 Суб 05:40:21 22946151150
>>2293133
>Назови ее пупса
>Поэтому пупса. Спросят тебя "а что это значит". А ты скажешь "анон подсказал"
Заебись название. Мне нрав.
PUPSA - Program Usage Providing SQLite3 Access.
Тут говнокод, короче: https://github.com/username1565/PUPSA
Можете оптимизировать, дописать, потестить, а то и вовсе переписать. Предложения/пожелания - в issues.
Аноним 12/02/22 Суб 10:05:36 22946571151
>>2294615
>PUSDA - Provide Usage SQLite Data Access.
было бы попижже, я думаю
Аноним 12/02/22 Суб 11:17:45 22946941152
Аноним 12/02/22 Суб 11:40:52 22947331153
>>2293926
>да ни в какой. поставь редиску между фронтом и бекендом и все
Ну неее. Данные из Country используются для валидации и определения дальнейших действий, т.е. юзеру могут лететь разные ответы
Аноним 12/02/22 Суб 21:05:37 22953631154
>>2294694
ну их "а давайте все сделаем свое ибо фатальный недостаток" - у них стала абсолютной сильно позже рождения WPF
Аноним 12/02/22 Суб 21:31:22 22953881155
>>2292813
С хера ли мазохизм? Винформы - топ за свои деньги. Прост как молоток. Понятен даже дебилу. Куча готовых компонентов, спиздил вопхнул себе и в ус не дуешь.
Пилить что-то на винформах, не обмазываясь фреймворками за пределами самого .net - легче легкого.
Фатальный недостаток форм это то что поддерживать и кастомизировать это дело чуть сложнее.
Аноним 12/02/22 Суб 21:56:34 22954261156
>>2294657
Ну всё, пупсе - пизда. Можешь перепроверить.
Аноним 12/02/22 Суб 22:09:13 22954351157
Аноним 12/02/22 Суб 22:36:15 22954571158
>>2295388
А причем тут вообще винформсы, если речь идет о WPF

>не обмазываясь фреймворками за пределами самого .net - легче легкого
Ага, плодя портянки в code-behind ибо это дефолтный путь для винформс. Если захочется чистоты, то прикручиваем MVP

Но в WPF изначально сделана крутая система биндингов и писать в стиле винформс (лезем к контролам напрямую, да все в code-behind) - мазохизм.

Аноним 13/02/22 Вск 00:07:37 22955301159
Я вас категорически приветствую.
Есть ли смысл искать стажировки в мск, будучи студентом, или лучше смотреть в сторону джуновских вакансий? Насколько вообще глубоко опрашивают на собесах? В портфолио 1.5 проекта на винформах с ef-ом, в основном курсач вузовский
Аноним 13/02/22 Вск 04:48:02 22956191160
изображение.png 182Кб, 874x381
874x381
изображение.png 120Кб, 643x242
643x242
Какое же это говно ваш аспшлейфговнакор, отвратная документация мсдн с кучей ненужных деталей и опечаток, уххххх ыыыы new Random().NextIndus() скозал создавать дто для каждой ебучий хуйни, чтоб защититься от оверпостинга, ух ух названия типов настолько длинные что даже в сайдбар не влезают на их говносайте,
мы же блять любим печатать, private readonly URETRAServiceProviderManagerContext ___________service1
private readonly GOVNOEBANOEApiControllerTvoeuMamiContextAttribute _services2

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


> dotnet watch run
>[info] Microsoft.ShlyapuSnimau.Kogda.Vi.Pochinite.Cveta.V.Etom.Ebuchem.Govne

Аноним 13/02/22 Вск 04:54:28 22956201161
>>2295619
Дополню:

Нахуя нам нужна перегрузка операторов? Кто ей пользуется?

Спасибо, мелкософт, теперь в одниx ифах obj is null в других используем обычный ==. КРАСОТА
Аноним 13/02/22 Вск 11:18:18 22957091162
image 183Кб, 938x567
938x567
Пилю петпроект для нужд текущей инженерной работы. Есть вопрос по организации кода.
Вот есть файлы с исходным кодом программы, которая вычисляет что-то полезное.
Есть ресурсы. Например экселевская табличка и она же, конвертированная в формат csv. Иногда картинки, которые отобразятся на WinForm'е.
Есть файлы с исходным кодом тестов программы на корректность работы.
Есть файлы с исходным кодом тестов алгоритмов на производительность (где проверяется, что сравнительная скорость работы соответствует ожиданиям, и нет где-то внезапной просадки скорости вычислений в 10-100 раз).
Есть файлы с исходным кодом простых примеров использования кода программы. Обычно я вычислительную часть делаю отдельным проектом и отдельным проектом делаю GUI + чтение и сохранение исходных данных. И вот есть пример кода, типа Getting started, для кода вычислительной части.
Есть файлы с документацией. Сейчас в файлах MS Word. Там текст с перекрестными ссылками, оглавлением, формулами, набранными в редакторе формул, картинками (фотки/сканы листочков с формулами и схемами или просто всякие другие картинки). Так же в документацию входят файлы Excel, где какие-то промежуточные вычисления для наглядности реализованы формулами Excel, чтобы легко всё увидеть, как считается, и что получается.
Вопрос. Как всё это грамотно хранить по папочкам на диске, по проектам и решению/решениям? Как называть? Есть какие-то лучшие практики? Чтобы легко было ориентироваться, и человеку со стороны было понятно, чтобы ничего не терялось и сразу находилось там где ожидаешь. Чтобы минимально плодить сущности.
Аноним 13/02/22 Вск 12:05:25 22957671163
ad6ee05ad1c41f4[...].jpg 53Кб, 564x560
564x560
Можно немножко оды любви Шарпу?

Я вроде тупорылый гуманитарий, но Шарп это тот яп, который освоил для автоматизации своих рутинных задач (пусть и без кроссплатформы) и мне чуть ли не физически приятно писать на нём - я, блять, такой кайф ловлю, когда что-то большое заканчиваю

Пробовал освоить все эти "дружелюбные к новичкам и тупым" жаваскрипт и пайтон - меня почему-то смущает динамическая типизация, хотя в PHP меня всё устраивал и опять же мне чуть ли не физически неприятно с ними работать, лол.

Как так получается - для меня шарп оказался наиболее интуитивно понятным или просто повезло, что мне хороший ментор попался с пачкой литературы, разделённой по уровням?
Аноним 13/02/22 Вск 12:27:59 22957791164
>>2295767
Двачаю, шарп мой первый ЯП и надеюсь последний, уже не представляю свою жизнь без LINQ и другого сахара. Тоже смотрел пайтон чтобы помогать мл. брату готовиться к ЕГЭ и это пиздец, насколько же конченый синтаксис и типизация. Жс еще хоть Си-подобный.
Аноним 13/02/22 Вск 12:40:48 22957841165
Сап шарпач помогай.
У Васи есть X белых и Y чёрных квадратных клеток паркета. Он хочет составить квадрат наибольшего размера. Любые две соседние по стороне клетки этого квадрата должны иметь разные цвета. Угловые клетки квадрата могут иметь какой угодно цвет. При изготовлении квадрата не обязательно использовать все имеющиеся клетки.

Какой самый большой квадратный паркет сможет составить Вася?

Например, если X = 3 и Y = 3, то вывод 4 (поле 3х3, наибольшее - 4)
Аноним 13/02/22 Вск 12:41:52 22957851166
>>2295784
Напиздел на счет входных:

входные данные
9 9
выходные данные
4
Аноним 13/02/22 Вск 13:03:03 22958031167
>>2295530
Два раза проходил стажёром, тупо отказали. Лучше уж джуном на не полную ставку
Аноним 13/02/22 Вск 13:31:04 22958161168
>>2295767
Тричую. До шарпа перепробовал несколько языков, но остановился именно на нём, сразу понял, что это моё. Просто эстетически даже импонирует. Даже логотип приятного цвета, сине-фиолетовый, не то что кофеек жабовский. Даже naming conventions — всё с большой буквы, методы, свойства, файлы, папки. Охота распрямить спину, когда пишешь на шарпе.
Аноним 13/02/22 Вск 13:48:41 22958331169
>>2295779
перебробовал с 10+ языков и у меня 3 лидера
питон - нормальный там синтаксис и сахар из коробки (учитывая на каких простых концепциях оно все построено), самая быстрая скорость кодирования "думаю о проблеме, а не о том "как б... в этом языке ее выразить". Ну и батарейки конечно. для прототипов и быстрых вещей.

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

котлин - очень выразительный и лаконичный язык. приятно на нем "выражаться затейливо", а уж сила этой выразительности вовсю проявляется в jetpack compose (описание GUI под андроид) - шарп бы там выглядел куда более коряво (пример корявости - тот же флютер). У меня от него синтаксический экстаз...ну пока дело не касается "а вот ушки жавы торчат хаха".
Аноним 13/02/22 Вск 15:37:49 22959331170
>>2295530
>В портфолио 1.5 проекта на винформах
В современном мире тем у кого есть деньги на стажеров, винформы нахрен не уперлись, а у тех кому уперлись денег на стажеров нет.
Учи asp.net и прочий веб. Ну или хотя бы WPF если именно в десктоп хочешь, с ним хоть что-то еще поймать можно.
Аноним 13/02/22 Вск 16:18:52 22959871171
>>2295933
>у кого есть деньги на стажеров, винформы нахрен не уперлись
Тут скорее дело в том, что проекты на формах намного более стабильны. Ни о каком динамично развивающемся проекте на винформах в 2к22 и речи быть не может.
Это браузерный скот готов терпеть любые унижения новыми интерфейсами и редизайнами, придумываемыми каждые полгода по инициативам менеджеров, которых без бурной деятельности без бонусов оставят.
Коммерческие проекты на формах начаты обычно очень давно, может быть и 15 и 20 лет назад, используют их консервативные корпоративные клиенты. На таких проектах просто никогда не возникнет нужда в срочных, внезапных, глобальных изменениях, которые можно было бы закидывать стажерским мясом. Да и джуны тут не очень нужны. Фичи медленно и планомерно пилят понурые скуфы 40+. К молодому, упругому и бесполезному отношение будет не очень.
Аноним 13/02/22 Вск 20:50:19 22963091172
Хм. Хм. Как сделать логгер быстрее, при этом:
1. Не использовать буффиризацию стрима(приводит к тому что флашится он когда буффер заполнен, а это приводит к тому, что иногда сообщение лога не полностью выводится, пока буффер вновь не заполнится)
2. Не захватывая файл все время(нужно смотреть что он достиг лимита на размер лога и удалять старый, при захвате файла с этим проблемы)

Да, я знаю что как-бы да, велосипед и все такое. Но такое дело. ПО что пишется - пишется под определенный протокол, в протоколе заложены свои логи(можно считать скоупами в привычном смысле) и свои уровни(их там 15, и обычным адаптером придется сверху уродливую конструкцию мутить для того чтобы парсить лог при запросе последних данных из него, а чтобы быстро было - проще хуйнуть sqlite базу, в которой эти уровни будут отдельной табличкой, на а экономить место можно храня только уникальные записи эвентов, таким образом - сама таблица с логами выглядит примерно как: id, dateTime, eventId, level, scope)
Так вот. Если я включаю уровень trace в своем логере, а в приложении идет активная хуйня, то логгер без буффиризации и захвата файла - начинает работать пиздецки медленно, задержка может достигать нескольких минут, что мне кажется неоч. Но как без этого сделать быстрее - я не знаю.
Аноним 13/02/22 Вск 21:02:16 22963121173
>>2296309
>что иногда сообщение лога не полностью выводится, пока буффер вновь не заполнится)
буфер сообщений переполнился - запись с флушем. хз где тут не полная запись
>при захвате файла с этим проблемы
ну так расхвати и сделай ротацию. У тебя там многопоточный доступ к файлу что ли.
Аноним 13/02/22 Вск 21:05:09 22963171174
>>2295767
Ну а я бы поспорил.
Во-первых, плюсы - пизже в плане возможностей. Когда берешь плюсы - прямо чувствуешь себя программистом настоящим. У тебя полный контроль над всем. Хочешь вывести в консольку анимешную картинку - да изи, никаких проблем, взял хендлер окна, из памяти загрузил картинку, чики-брики у тебя в консольки анимешная девочка. Чтобы такое сделать на шарпах, ты либо unsafe и винапи тереби, либо бери чью-нибудь либу, которая это же делает.
Хочешь вычислений на видяшке - тоже изи бризи
Проблема плюсов только в том, что туда как в топовый спорткар заложили просто дохуища всего, что в целом-то и не нужно среднестатистическому кодеру. Ну, и этого слишком дохуя, чтобы нормально освоить даже за года практики. А в остальном - плюсы - лучший язык. Низкоуровневый, оопшный, удобный. Люблю плюсы. Жалко что за них тута платют мало, так бы в них пошел.
Аноним 13/02/22 Вск 21:07:16 22963201175
>>2296312
> У тебя там многопоточный доступ к файлу что ли.
Ну да. По протоколу клиент может запросить данные за диапазон времени для определенного скоупа определенного уровня. Нужно будет прочитать из файла чтобы сформировать ответ. В это же время логгер должен будет писать в файл.
Аноним 13/02/22 Вск 21:17:55 22963271176
>>2296320
ну пусть пишет. какая проблема? винда что ли?
Аноним 13/02/22 Вск 21:23:02 22963361177
>>2296317
Ну ты же понимаешь, что ЭТОДРУГОЕ?
Для какой-нибудь МК я не буду на шарпе писать, а на плюсах или чистом си - это очевидно вроде
Аноним 13/02/22 Вск 22:28:05 22963801178
изображение.png 19Кб, 559x162
559x162
Поясните, что некорректного в строках?
Аноним 13/02/22 Вск 22:34:53 22963901179
>>2296317
На плюсах тебе ровно также надо будет винапи дергать.
Фишка в том, что на шарпе сейчас можно писать в ансейфе код прямо как на чистом С, и память нативную выделять. Т.е. ты в рамках одного языка в одном месте пишешь низкоуровневый код, а в другом месте, буквально в соседнем файле - нормальный божественный шарп во всей его красе. Можно поизучать стандартную библиотеку шарпа, там почти везде примерно так и делается.
Аноним 14/02/22 Пнд 00:05:01 22964771180
16446943479140.jpg 218Кб, 1080x1080
1080x1080
>>2295767
>>2295779
>>2295833
А можно я вам тупой вопрос задам? Я ньюфаг, есть мысль написать приложение виндовое одной направленности. В начале пробовал питон, вроде всё понятно было, но решил дропнуть из-за направленности в бэкенд и нежелании ебаться с костылями. Начал смотреть уроки по шарпу. В начале полное ощущение того, что всё просто и понятно, а местами "ёпт в питоне почти точно так же". А потом смотришь урок и башка гуманитария взрывается от синтаксиса пизда.елда.хуйзалупа(сосибибу.пизда.елда).
Это мне кажется и надо брать яйца в кулак и просто разбираться, всё не так сложно, или реально про сравнению с питоном, щарп - ебаное нагромождение?
Аноним 14/02/22 Пнд 02:00:38 22965311181
>>2296477
А что сложного в
> пизда.елда.хуйзалупа(сосибибу.пизда.елда)
Это же наоборот удобно и просто.
Аноним 14/02/22 Пнд 02:21:24 22965361182
image.png 111Кб, 1013x681
1013x681
image.png 83Кб, 598x675
598x675
image.png 70Кб, 705x366
705x366
Проект на WPF, Caliburn Micro.
Захотел добавить модальное окно. Создал окно, класс, но View никак не хочет ничего привязывать из ViewModel. Названия файлов 100% совпадают EditView.xaml и EditViewModel.cs. В чём проблема?? Тоже самое написал в ShellViewModel и там всё работает. Как вызываю окно на последнем скрине.
Это приложение для контактов, хочу показать окно чтобы посмотреть данные о контакте и отредактировать его если нужно.
Аноним 14/02/22 Пнд 02:22:26 22965371183
>>2296477
>пизда.елда.хуйзалупа(сосибибу.пизда.елда).
это у тебя синдром утенка (брехня - на самом деле непривычность к разным парадигмам разных языков)

У меня была ровно обратная ситуация. Я привык в шарпе из классов, как из кубиков собрать структуру, которую пнул - и оно поехало.
А в питоне такое ощущается противоестественно. Конечно я такое видел, но как то чужеродно. В питоне же есть модули, и можно без классов писать (а в шарпе методы не могут быть без классов), к тому же куча вымученного синтаксиса вида list(map(reduce или i for i in ...

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

кстати у меня с котлином было то же самое. Я кучу языков и парадигм переварил, но котлин ну никак в голову не шел. А потом тут на дваче нашел "котлин для питонистов" и я такой "а зачем я пытаюсь искать аналогии с шарпом, если котлин = рубипитон с типизацией" - и тогда очень все хорошо пошло.

Аноним 14/02/22 Пнд 02:25:21 22965391184
>>2296536
За MessageBox в ViewModel стегать нагайкой
Аноним 14/02/22 Пнд 02:25:29 22965401185
>>2296477
>про сравнению с питоном, щарп - ебаное нагромождение?
Ну в некоторых местах нагромождение. Но ты бери во внимание что в c# удобнее писать из за того что у переменных есть типы, будет меньше ошибок во время работы, подсказываются методы, а ещё язык намного быстрее работает. Золотая середина по мне
>>2296380
Этот метод не принимает строку, тебе надо Double.Parse()
Аноним 14/02/22 Пнд 12:41:20 22967101186
Как отправлять письма по электронной почте в хтмл формате?
Аноним 14/02/22 Пнд 12:59:23 22967191187
>>2295767
Если бы ещё на нём работа была
Нужен парсер Аноним 14/02/22 Пнд 13:11:44 22967281188
Сап шарпач!
Есть один файл, структурированный по-питоновски (подэлементы дерева отбиваются табами).
Хотелось бы узнать, есть ли в природе парсеры общего назначения, в которые я бы загрузил свои правила и он бы мне мой файл конвертнул в ЖСОН.
Аноним 14/02/22 Пнд 14:29:33 22967921189
Метод PasswordSignInAsync возращает false, хотя логин и пароль переданы корректно. В чем может быть ошибка?
Аноним 14/02/22 Пнд 14:32:12 22967951190
Аноним 14/02/22 Пнд 14:35:57 22968021191
>>2296795
>await не забыл?
Нет. await _signInManager.PasswordSignInAsync
Аноним 14/02/22 Пнд 15:41:00 22968701192
Аноним 14/02/22 Пнд 18:22:01 22970321193
>>2296536
я не знаю что там в калибурне, но вот на 3 скрине ты создаешь окно и вызываешь его показ, но нигде не ставишь у него DataContext
Аноним 14/02/22 Пнд 19:45:56 22971211194
>>2296380
Школу вспоминай. В российской культуре разделитель дробной части это запятая, а не точка
Аноним 14/02/22 Пнд 19:49:01 22971261195
>>2296540
>Этот метод не принимает строку
Если б не принимал, была бы ошибка компиляции.
Аноним 14/02/22 Пнд 19:56:27 22971391196
>>2296719
Да уж побольше чем на Go или Котлине
Аноним 15/02/22 Втр 14:40:47 22979271197
Второй месяц готовлюсь к собеседованию на одну компаний с джинни. По синтаксису вроде все подтянул, не считая нескольких моментов, сейчас надрачиваю ASP.NET фреймворк. В следующем месяце собираюсь перейти на структуры данных и алгоритмы, а после паттерны проектирования.
Одновременно с этим начинаю поднимать уровень английского, пока что самостоятельно по Мерфи, позже запишусь к репетитору.
У кого-то тут был опыт таких подготовок к собеседованиям?
Аноним 15/02/22 Втр 16:11:13 22980451198
>>2297927
>По синтаксису вроде все подтянул
Вот тебе задачка с собеса.
Как из словаря <string, object> достать элемент независимо от регистра ключа? Например в словаре у тебя ключ "Zalupa", а в запросе "zAlUpA". Доступа к созданию экземпляра словаря у тебя нет.
Аноним 15/02/22 Втр 16:14:36 22980511199
>>2298045
Обойти все ключи и найти нужный. Делов то. Про скорость в задаче не вижу
Аноним 15/02/22 Втр 16:15:03 22980521200
>>2297927
>Второй месяц готовлюсь к собеседованию на одну компаний с джинни.
>У кого-то тут был опыт таких подготовок к собеседованиям?
Что за компания которая готова ждать полгода, пока ты подготовишься к собесу? Или это стажировка за еду какая-то?
За полгода-год, в принципе, можно и в какую-нибудь мелкоконтору вкатиться за плюс-минус нормальный прайс.
Аноним 15/02/22 Втр 16:17:45 22980571201

>>2298045
.Where(x => x.key).Where(x => String.ToLower(x)).Where(x => x == "zalupa")
Аноним 15/02/22 Втр 16:20:25 22980601202
>>2298051
>Обойти все ключи и найти нужный.
На такой ответ первый же вопрос будет: как ты будешь ключи обходить? Даже могут на листочке код попросить написать.
Аноним 15/02/22 Втр 16:22:03 22980621203
>>2298057
Все, спасибо, я пошел это в прод вставлять.
Аноним 15/02/22 Втр 16:24:11 22980661204
>>2298060
dic.Keys..Select/Where
dic.Select/Where
да хоть тупо в цикле, а на вопрос "почему не LINQ" отвечать "так быстрее, LINQ тормоз, такова моя вера"
Аноним 15/02/22 Втр 16:26:44 22980691205
>>2298057
Вот будет весело тебе, когда попросят по шагам расписать, что этот код делает (и да он работать не будет)
Аноним 15/02/22 Втр 16:29:22 22980701206
>>2296728
Судя по количеству ответов никто такой хуитой не занимается. Я вчера гуглил километры матана, голова вспухла от парсеров, лексеров и прочей красноглазой дряни. В общем, сваял свой парсер. Однопоточный, говновсратый, ифами-ветвящийся швайнопарсер. Над 15 кб файликом пыхтит джве минуты. Сойдёт.
Аноним 15/02/22 Втр 16:30:52 22980711207
>>2298066
>так быстрее, LINQ тормоз, такова моя вера
Кстати на нормальных собесах сейчас ебут за сентенции вроде "X медленный поэтому я использую Y"
За последние два года в .net столько всяких оптимизаций наебенели, что такие фразы однозначный признак, того что собеседуемый завис где-то в 2017-м году.
Аноним 15/02/22 Втр 16:34:28 22980821208
>>2298045
> Как из словаря <string, object> достать элемент независимо от регистра ключа? Например в словаре у тебя ключ "Zalupa", а в запросе "zAlUpA". Доступа к созданию экземпляра словаря у тебя нет.
foreach (var item in tvoyDict) if (item.Key.ToLower() == "zalupa") return item;
Мне перезвонят?
Аноним 15/02/22 Втр 16:35:27 22980831209
>>2298071
> .net столько всяких оптимизаций наебенели
наебенили, да не везде. LINQ все равно проиграет в оптимизации и в количестве аллокаций.

Более того, если бы все было именно так, то дотнет не предлагал бы такое количество штук для оптимизации.
Аноним 15/02/22 Втр 16:44:51 22980921210
>>2298069
Берёт наш словарь и извлекает только ту часть которая слева, ключ (string)
Преобразует этот ключ во все нижние буквы
Теперь отфильтровывает только ключи с нужным названием
Не работает, тогда надо в визуал студии проверить
Аноним 15/02/22 Втр 16:47:10 22980971211
>>2298092
> и извлекает только ту часть которая слева
А тебе надо ключевую пару отдать. Вот ты и объебался.
Аноним 15/02/22 Втр 16:53:18 22981061212
dic.Where(p => p.Key.Equals("zalupa", StringComparison.OrdinalIgnoreCase)).Select(p=>p.Value).FirstOrDefault();
Аноним 15/02/22 Втр 16:56:37 22981141213
>>2298106
правда тут не отличить "значения нет" от "значение null" так что цикл удобнее будет
Аноним 15/02/22 Втр 16:58:47 22981171214
>>2298082
foreach (var item in tvoyDict) if (item.Key.Equals("zalupa", StringComparison.OrdinalIgnoreCase)) return item;
Вот теперь точно перезвонят.
Спасибо, анон.
Аноним 15/02/22 Втр 17:00:53 22981201215
>>2298117
нет. скажут "а че не StringComparison.CurrentCultureIgnoreCase". ты надеешься что в кеях будет только латиница. Ты что - оптимист что ли? Оптимисты нам не нужны. Нам нужен надежный код.
Аноним 15/02/22 Втр 17:10:58 22981321216
>>2298120
> ты надеешься что в кеях будет только латиница
>>2298117
> "zalupa"
Ого! В дотнете можно получать доступ к строковым константам? Покажи как?
Аноним 15/02/22 Втр 17:33:42 22981531217
Аноним 15/02/22 Втр 17:49:52 22981801218
>>2298132
public class Program
{
const string constanta = "zalupa";

public static unsafe void Main(string[] args)
{
fixed (char* p = string.Intern(string.Concat("zal", "upa"))) p[0] = (char)0x10;
Console.WriteLine(constanta);
}
}
Аноним 15/02/22 Втр 18:05:39 22982071219
>>2298132
даже проще
public static unsafe void Main(string[] args)
{
fixed (char* p = string.Intern(string.Concat("zal", "upa"))) p[0] = (char)0x10;

Console.WriteLine("zalupa");
}

значит меня склероз не подводит что все хардкор строки - интернированные
Аноним 15/02/22 Втр 18:07:58 22982101220
Аноним 15/02/22 Втр 18:08:00 22982111221
>>2298207
не говоря уже о том что string.Concat и не нужен - можно прямо значение писать и сразу в интернированные попасть. А string.Concat только для примера чтобы была видна суть
Аноним 15/02/22 Втр 18:11:11 22982161222
>>2298210
то есть в дебрях делаешь такое, да еще чтобы срабатывало не сразу и рэндомно

fixed (char* p = "zalupa") p[0] = (char)0x10;

и увольняешься.
Аноним 15/02/22 Втр 18:15:01 22982241223
>>2298216
Меняет букву z на символ перевода каретки? Но что это даёт? Не могу сообразить.
Аноним 15/02/22 Втр 18:17:59 22982301224
Image 1.png 8Кб, 554x148
554x148
>>2298224
>Меняет букву z на символ перевода каретки?
ничего. не хотел париться с юникодом, потому просто взял непечатный символ

А дает это вот такую отладку.
на скрине условие не сработает. Но попробуй догадайся почему.
Аноним 15/02/22 Втр 19:07:32 22982851225
Аноним 15/02/22 Втр 19:14:31 22982951226
>>2298285
а также Sprache, где можно описывать все в шарпе, но есть ограничения, и PEG вместо ANTLR
Аноним 15/02/22 Втр 22:34:58 22984781227
>>2296728
Тебе ответили.
Но если там просто дерево обычное и типа его узлы, то самому написать такой парсер - дело 10 минут же.
Аноним 16/02/22 Срд 08:22:52 22986181228
>>2298052
То опечатка. Я имел в виду удаленку в любую забугорную компанию с перспективой релокейта и зп больше 2.5 к.
Аноним 16/02/22 Срд 10:41:05 22986571229
Аноним 16/02/22 Срд 11:56:01 22987071230
в сигналР есть он коннект и онДисконект методы, проблема в том что онДисконект выполняется при каждой перезагрузке страницы, п у меня нет онРеконект евента, поэтому я не знаю новый ли это пользователь или тот же который был, обновил страницу, как это фиксить?
Аноним 16/02/22 Срд 15:09:22 22989091231
>>2247357 (OP)
Привет, двачата.
Начал изучать си шарп с абсолютного нуля. Из знаний программирования только школьные уроки паскаля, которые я тоже забыл, так что уровень моей осведомленности, думаю, можете понять. Щас смотрю уроки по каналу SimpleCode да, реклама на ютубе, прохожу методы. Доволен собой, что понимаю хотя бы 70% из материала, но без тупости не обходится. В видосе дадя говорит, что для примера Console.WriteLine не возвращает никакого значения, только символы на консоль. Мне как раз не понятно, что такое "возврат значения" и почему тот же Console.WriteLine ничего не возвращает, а делает что-то там внутри себя. По моей текущей логике я вижу, что Console.WriteLine выдает мне на консоль символы, то есть для меня это и есть значение, которое мне вернули. Может кто мне объяснить, пожалуйста, почему Console.WriteLine ничего не возвращает и в чем суть возврата чего-либо?
Аноним 16/02/22 Срд 15:36:16 22989311232
>>2298909

//void - ничего не возвращает
private void DoSomething(){
}

//int - возвращает целое число
private int GetSomeValue(){
return 123;
}

// где-то в другом методе можно сделать такой вызов:
var someVariable = GetSomeValue(); //в переменную someVariable запишется 123
DoSomething(); // а вот тут просто вызов метода который ничего не возвращает (void)
Аноним 16/02/22 Срд 15:46:11 22989411233
и плохо что void то не возвращаемое значение. Это один из просчетов создателей шарпа
Аноним 16/02/22 Срд 15:50:17 22989421234
>>2298909
По аналогии с человеком.

Ты сказал человеку купить бутылку воды, он пошел купил и дал тебе бутылку воды.
В другом случае ты сказал купить бутылку воды, он пошел купил но тебе ничего не отдал.
Аноним 16/02/22 Срд 16:14:01 22989571235
Ребят, как встроить гугол рекапчу с двоща в десктопное приложение?
Аноним 16/02/22 Срд 17:40:49 22990551236
>>2298909
> в чем суть возврата чего-либо?
Когда у оператора return есть аргумент, происходит ВОЗВРАТ.
Как написал анон выше:

>>2298942
> Ты сказал человеку купить бутылку воды, он пошел купил и дал тебе бутылку воды.
water BuyBottle(int amount) { return amount; } // Возвращает воду.
water myWater = BuyBottle(1); // Nice!

> В другом случае ты сказал купить бутылку воды, он пошел купил но тебе ничего не отдал.
void BuyBottle(int amount) { return; } // Ничего не возвращает, или как говорят англоязычные, "возвращает ничего".
BuyBottle(1); // And what?
Аноним 16/02/22 Срд 17:43:27 22990591237
1645022607332.png 296Кб, 770x664
770x664
>>2298941
> void
> просчет
> шарпа
Аноним 16/02/22 Срд 18:02:27 22990781238
>>2299059
Ну а чей? когда делали шарп конечно делали "пилим свою жаву", но никто в заложниках членов семьи не держал и не заставлял делать именно как там не подумав.
А нам теперь разгребай это.
Аноним 16/02/22 Срд 18:07:02 22990821239
>>2298931
>>2298942
>>2299055

Ну то, что именно войд не возвращает значения, я, допустим, понял. Пример с бутылкой тоже понятен. Однако, я не понял почему Console.WriteLine не возвращает ничего. На тех же примерах, я передаю консоли (человеку) команду написать строку (купить воды), результатом у меня строка в консоли (вода в моих руках). Эта же строка работает по умолчанию в static void Main(string[] args), то есть войд мне что-то возвращает. Вот так я понимаю. Если неправильно, объясните, пожалуйста, еще раз
Аноним 16/02/22 Срд 18:09:32 22990861240
>>2299082
да елки палки
возвращаемое значение - значение которое может вернуть метод, как результат своей работы, если он может сформировать такой результат и в этом есть смысл.

а что делает метод - его личное дело

>о есть войд мне что-то возвращает
попробуй
var result = Console.WriteLine() и пусть тебе компилятор пояснит что такое void

Аноним 16/02/22 Срд 18:15:48 22990961241
>>2298909
>По моей текущей логике я вижу, что Console.WriteLine выдает мне на консоль символы, то есть для меня это и есть значение, которое мне вернули. Может кто мне объяснить, пожалуйста,
Ты различай себя который кодит и себя который смотрит на окно консоли - это разные люди.
Первый дает команду Console.WriteLine, которая что-то куда-то отправляет. Может быть в консоль, а может еще куда. Ему похуй. Он отдал данные - метод их отправил и все, обратно в _программу_ он ничего не вернул.
А вот второй сидит и пялится в окно, в котором по волшебству возникают буковки. Никаких программ, кода или еще какой-то программерской вуду-юду. Просто смотришь в экран, а там картинка меняется. Чудеса.
Аноним 16/02/22 Срд 18:22:49 22991051242
>>2299082
> результатом у меня строка в консоли (вода в моих руках)
Нет. Строка в консоли, это пока челик ходил в магаз, по пути написал ХУЙ на заборе. А вернувшись воды тебе не дал. Потому что void.
Аноним 16/02/22 Срд 18:23:57 22991081243
>>2299082
>На тех же примерах, я передаю консоли (человеку) команду написать строку (купить воды), результатом у меня строка в консоли (вода в моих руках).
Нет, чувак!. В твоих случаях будет так:
В твоем случае "строка в консоли" != "вода в моих руках"
"Строка в консоли" == "вода в руках чувака, который за ней ходил".
Чтобы эта вода оказалась в твоих руках, тебе нужно дать другую команду.
Вот если бы ты выполнял какую-нибудь метод Console.WriteLineAndGetResult("купи водой") который возвращает значение, то ты бы получал какие-нибудь данные, но не те же самые которые вывелись в консоли. То что вывелось в консоли это часть самого путешествия за водой, а не его результат.
Аноним 16/02/22 Срд 18:29:09 22991161244
>>2299082
> почему Console.WriteLine не возвращает ничего
Потому что индусы в майкрософт сделали именно так.

А вот помнится ,в былые времена, в МС любили делать функции, которые возвращали код выполнения, то есть, если бы шарп был запроектирован как диды кодили, то было бы int WriteLine(...) и ты бы мог написать что-то типа:
> if ( Console.WriteLine("Купи воды") == ErrorCode.OK )
> // Oll Correkt
> else
> // OMG samsin wrong
Аноним 16/02/22 Срд 18:31:22 22991181245
>>2299116
и щас любят. просто стараются называть такие методы Try....
Аноним 16/02/22 Срд 18:36:03 22991251246
>>2299116
>> if ( Console.WriteLine("Купи воды") == ErrorCode.OK )
>> // Oll Correkt
>> else
>> // OMG samsin wrong
Вы, блядь, поехавшие тут что ли. Нахуй вам вообще такая конструкция, в применении к консоли? Это команда в стиле "отправил и нахуй забыл". Или вы какие-то хитрые колбеки от консоли ловить хотите на простой вывод меседжа?
Аноним 16/02/22 Срд 18:37:38 22991271247
>>2299082
вывод в консоль это не возвращаемое значение,а выполняемая работа. Оно выводит в консоль и при этом код может выполняться на сервере где никакой сессии с консолью нет и никто не смотрит вовсе
Аноним 16/02/22 Срд 18:43:32 22991341248
>>2299125
> Вы, блядь, поехавшие тут что ли.
Ага. Проблемс?
>>2299118
> называть такие методы Try
Кстате да.
Аноним 16/02/22 Срд 18:45:49 22991381249
>>2299082
>(вода в моих руках)
это как раз то что метод бы вернул тебе.

А метод Console.WriteLine("вода в моих руках") это всё равно что если бы человек, которого ты отправил за водой, крикнул на всю улицу "Вода в моих рука!"
Аноним 16/02/22 Срд 18:57:38 22991511250
>>2299138
>А метод Console.WriteLine("вода в моих руках") это всё равно что если бы человек, которого ты отправил за водой, крикнул на всю улицу "Вода в моих рука!"
Ну точно ебанутый. Console.WriteLine, это аналог команды "напиши на заборе...". Ты же почему-то ожидаешь, что когда ты дал команду НапишиНаЗаборе("Хуй"), этот "хуй" у тебя мистическим образом в руках окажется.
Аноним 16/02/22 Срд 19:00:56 22991571251
1645027256796.jpg 42Кб, 599x449
599x449
>>2299078
> разгребай это
Как теперь жить-то? Консоль не возвращает значение.
Аноним 16/02/22 Срд 19:02:41 22991601252
>>2299157
не знаю причем тут вообще консоль. В моем сообщении на "проеб с void"не было ни слова про консоль, ни ссылки ну любой чужой пост где бы упоминалась консоль
Аноним 16/02/22 Срд 19:08:17 22991641253
>>2299151
Так я и не ожидаю ничего в руках. "Крикнуть", тоже самое что и "написать на заборе". Это просто один из способов передачи текста.

Я думаю ты не тому анону ответил. Я же наоборот пытаюсь объяснить тому анону, в чем суть метода WriteLine()
Аноним 16/02/22 Срд 19:21:27 22991811254
>>2299138
Так, то есть, если результат возврата значения, это вода в моих руках, то как это выглядит? Не понимаю тогда как с точки зрения программирования вода действительно находится в руках, а не просто сообщает мне, что она в руках.

Если я создам калькулятор в консоли, сосчитаю 2+2, то 4 будет результатом или чем-то другим?
Аноним 16/02/22 Срд 19:39:43 22991931255
>>2299181
>Не понимаю тогда как с точки зрения программирования вода действительно находится в руках, а не просто сообщает мне, что она в руках.
Ну, вообще C# только лишь сообщает тебе о том, что метод вернул какое-то значение, поскольку само значение лежит где-то в ебенях памяти. Т.е ты имеешь только механические руки, в которых находится результат выполнения метода, но если ты достучишься до области памяти где твой результат находится, то фактически возьмешь в руки сам результат.
Аноним 16/02/22 Срд 19:41:16 22991951256
>>2299181
>Если я создам калькулятор в консоли, сосчитаю 2+2, то 4 будет результатом или чем-то другим
Да, это будет результатом выполнения твоего алгоритма. По сути любой код это алгоритм. Группы схожих алгоритмов можно группировать в классы, а сами определенные алгоритмы(т.е не посредственно "рабочий" код который там что-то считает умножает в хуй ебется) - в методы
Аноним 16/02/22 Срд 19:46:28 22991991257
>>2299181
ну сказали же. возвращаемое значение - то что возвращается через return, этот результат можно получить после вызова метода, сохранить в переменную, намазать на хлеб, свернуть и засунуть в, забыть про него и так далее.

метод может вывести в консоль, сохранить в файл, написать на заборе, проорать во весь голос в магазине - это не возвращаемое значение (хотя бы потому что чтобы его получить нужно делать дополнительные телодвижения)
Аноним 16/02/22 Срд 20:30:36 22992561258
Действительно ли читать книги более эффективно чем смотреть туториалы на ютубе? (английский знаю). Как будто они не в целом язык разбирают, а узкие темы. Если потом попробуешь самостоятельно что-то исследовать не будет понятно, придётся всё постоянно гуглить. Ну у меня такое ощущение примерно. Посоветуйте книгу не для совсем новичка, чтоб подтянуться до джуна, не очень огромную
Аноним 16/02/22 Срд 20:40:31 22992671259
>>2299256
самое эффективное это что то кодить реальное (неважно какой степени полезности) с учителем у кого можно спросить "а как тут правильнее". Сильно хуже - вместо учителя гугл. Ну а книжки читать по диагонали для построения индекса подходов в голове. Ну еще и чужой код активно изучать сильно лучше чтения книг.
Ютуб - сильно медленная подача и не спросить детали
Аноним 16/02/22 Срд 20:52:28 22992801260
>>2299267
И где взять такого учителя? Частенько возникают вопросы не только как правильнее, а как вообще это сделать и почему не работает. Гуглёж не особо помогает. Сюда кидаю но не часто отвечают
Аноним 16/02/22 Срд 21:10:14 22992991261
Может здесь кто-нибудь такой найдётся, кто будет помогать мне в изучении языка? Мне в школе говорили мальчик умный, старательный но ленивый. А потом и на работку вкачусь.
Аноним 16/02/22 Срд 21:24:50 22993151262
>>2299280
>а как вообще это сделать и почему не работает.
это и есть "как правильнее"

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

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

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

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

Еще конечно можно писать свои велосипеды (либы, фреймворки - потому что сложно придумать "что бы написать полезное"). Получатся будет убого, но это не имеет значения - будут закрепляться знания и подходы.
Аноним 16/02/22 Срд 21:40:35 22993331263
>>2299256
>Если потом попробуешь самостоятельно что-то исследовать не будет понятно, придётся всё постоянно гуглить.

Это основной навык. В голове всё удержать не получиться. Нужно уметь искать информацию в интернете.
Аноним 16/02/22 Срд 22:18:57 22993581264
>>2299315
>устроишься на работу джуном - будет тебе такой. Правда будут заставлять тебя делать что нужно им, а не интересно тебе...издержки работы
Да мне всё равно что писать. Меня просто не берут на работу, якобы я чего-то не знаю. Вот думаю как мне достаточно подтянуть знания чтобы взяли
Аноним 16/02/22 Срд 23:03:38 22993951265
>>2299358
>Меня просто не берут на работу, якобы я чего-то не знаю
ну проходить собеседование и быть хорошим разрабом - разные вещи
собеседование это дичь
Аноним 17/02/22 Чтв 00:28:34 22994741266
>>2299256
>Действительно ли читать книги более эффективно чем смотреть туториалы на ютубе?
Да. Ноу дискас.
Аноним 17/02/22 Чтв 03:29:00 22995321267
>>2298941
>и плохо что void то не возвращаемое значение. Это один из просчетов создателей шарпа
>>2299059
> void
> просчет
> шарпа
>>2299157
>Как теперь жить-то? Консоль не возвращает значение.
>>2299160
>не знаю причем тут вообще консоль. В моем сообщении на "проеб с void"не было ни слова про консоль, ни ссылки ну любой чужой пост где бы упоминалась консоль
>>2299078
>А нам теперь разгребай это.
>public static bool Method(){
>    try{
>        MethodVoid();
>        return true;
>    }catch(Exception ex){
>        Console.WriteLine("Method ex: "+ex);
>        return false;
>    }
>}
Аноним 17/02/22 Чтв 05:05:17 22995391268
>>2299532
Я повторюсь еще раз - моя ремарка про void не касается консоли, а говорит о void вообще. Именно поэтому я не ссылался ни на какой пост (и не думай что я не умею ссылаться, ведь я ссылаюсь сейчас на твой пост)

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

А теперь про void
void плох тем, что он не возвращаемый тип. void не несет никакой пользы, кроме указания "результата нет".
Нельзя сделать Task<void> - а значит будь добр пилить в либах почти идентичный код для Task и Task<T>
В других языках используется структура Unit. Даже в либах самого мелкософта можно ее встретить - самопальная структура велосипед) для внутренних нужд.
Аноним 17/02/22 Чтв 05:09:20 22995401269
Аноним 17/02/22 Чтв 05:11:54 22995421270
Аноним 17/02/22 Чтв 07:00:09 22995541271
>>2299539
В чем, блядь косяк? В чем? Блядь. void == ничего не кладем в какой-нибудь EAX после завершения.
Ну или в контексте паскалеподобноых терминов - void == процедура. Если тебе нужно чтобы процедура возвращала значение, ты пользуешься функциями. Если ты так хочешь какого-то результата от void - прими таблетки передавай внутрь ссылку на хуйню которая тебе все сохранит куда-то, почему.
Аноним 17/02/22 Чтв 12:42:43 22997521272
>>2299554
Косяк в том, что кто то насмотрелся обрыганских видосов на ютубе и теперь давит интеллектом харкач.
Аноним 17/02/22 Чтв 14:10:32 22998611273
1645096231691.jpg 12Кб, 252x240
252x240
>>2299542
> void - один из косяков создателей шарпа
> void
> косяк
> шарпа
Аноним 17/02/22 Чтв 14:59:20 22999241274
>>2299554
>В чем, блядь косяк?
я же русским по белому написал чем плох. мне повторить?

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

Вообще тип Unit он норм, просто он не стандарт, а каждый пилит свой велосипед.

>>2299861
А чей? папы римского?
Аноним 17/02/22 Чтв 15:02:20 22999301275
>>2299554
>Если ты так хочешь какого-то результата от void
ты рассуждаешь с точки зрения клиентского кода. Либы видать никогда не писал, а уж либы с кодогенерацией для Task тем более

Тогда бы не спрашивал что не так.
Аноним 17/02/22 Чтв 15:38:49 22999911276
изображение.png 18Кб, 400x400
400x400
Привет Шарпистам.
Хочу сделать приложение кроссплатформенное под всю хуйню (Вин, Линукс, Андроид, плюсом будет ВЕБ), решил что возьму либу Avaliona потому что она умеет в MVVP по этим параметрам. Далее - приложуха будет plugin-based, что значит надо найти какую-то либу, решение и т.д., которое позволяло бы загружать плагины и дампать API, чтобы вообще знать а что расширять-то можно.
Есть какие-нибудь гайды, главы в книгах, статьи о том как такое сделать? Можно на аглицком
Или можете хотя бы указать какие либы ЛУЧШЕ всего подходят под такую задачу?
Аноним 17/02/22 Чтв 16:14:23 23000141277
>>2299991
>Андроид, плюсом будет ВЕБ
авалония в это не умеет.

Это нужно смотреть в сторону https://platform.uno/ или мауи (хз может ли он веб)
Аноним 17/02/22 Чтв 16:15:16 23000151278
>>2299930
>Либы видать никогда не писал, а уж либы с кодогенерацией для Task тем более
А ты писал?

>решили вводить свой велосипедный тип Unit вместо священного void от просто так ага
То есть любая пользовательская структура данных - велосипед? МС должны просто всё впихнуть в язык, а то маловато всего.
>В других языках используется структура Unit
Так в шарпе должен быть Unit, свой стандартный вшитый фабричный отточенный, или void должен нести значение?

void используется, когда ничего возвращать не надо, надо что то возвращать - возвращаешь. И в этом и суть велосипедного типа Unit: зачем то им надо что то возвращать, и это что то должно вести себя определённым образом - та-да! они это возвращают.
А ты серишь просто бессмысленный поток сознания. Что то где то увидел и пошёл повторять с умным видом. Скоро вернёшься размазывать мантру "с++ лудший потому что всё есть и всё можно написать а ещё самый быстрый!!!"
Аноним 17/02/22 Чтв 16:25:10 23000231279
16438315159522.png 170Кб, 500x335
500x335
>>2300014
Ты хоть погуглил бы 5 минут прежде чем отвечать

https://github.com/wieslawsoltes/NodeEditor
https://wieslawsoltes.github.io/NodeEditor/

>Avalonia is mature and production ready. We also have in beta release support for iOS, Android

Но ладно. По твоему Уно будет лучше Авалонии? Чем лучше? Меньше кода для кроссплатформенности?

Алсо, я так и не понял как систему плагинов запилить
Аноним 17/02/22 Чтв 16:32:52 23000331280
>>2300015
>А ты писал?
конечно писал. И конкретно с этой проблемой дела имел. И в итоге тоже завел себе тип Unit

>То есть любая пользовательская структура данных - велосипед?
именно. Все знают про Task/Task<T> ибо это в языке задумано. А про Task<Unit> - нужно доки читать

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

Когда ты пишешь клиентский код, то проблем нет - нужен T, юзаешь Task<T>, не нужен - юзаешь Task. То есть пишешь один из вариантов - что тебе нужно.

Но когда ты пишешь либы, то должен предусмотреть все варианты использования Task<T> и Task. И вот тут наступает трабла, потому что ты вынужден кодить параллельную цепочку для Task (а если еще кодогенерация, то туши свет). То есть тупо повторяешь кучу кода, только потому что Task это вам не Task<T>. И либо кодируй отдельно для Task, либо вводи Task<Unit>, что авторы представленных либ и сделали.
Аноним 17/02/22 Чтв 16:38:03 23000371281
>>2300015
>Так в шарпе должен быть Unit, свой стандартный вшитый фабричный отточенный, или void должен нести значение?
ничего не должно быть. жить можно. просто конечно лучше бы изначально был unit вместо void и не приходилось бы свое вводить, в доке описывать и так далее
Аноним 17/02/22 Чтв 16:41:09 23000431282
>>2300023
>По твоему Уно будет лучше Авалонии?
хз. я с уно дел не имел. с авалонией имел но давненько ито что они в блазор полезли - не знал
но вот с авалония бета я запарился. Того нет, этого нет, это работает не так, траблы под ios и сколько времени потратишь переписку и фикс - хз. Вижу бета - прохожу мимо.
Аноним 17/02/22 Чтв 16:47:53 23000501283
>>2300033
Так в чём проблема то? В том, что нет стандартной структуры почти без функционала? Но с этим ещё можно согласиться, в самописном Unit есть фатальный недостаток.
Но как из этого следует, что void должен возвращать значение? Все методы, которые ничего не возвращают, должны срать структурой, только потому, что у тебя функциональность Task и Task<T> дублируется?
Аноним 17/02/22 Чтв 16:54:03 23000521284
>>2300043
Ну да, в этом плане лучше пользовать уже готовый ЮИ фреймворк.
Аноним 17/02/22 Чтв 17:01:54 23000561285
>>2300050
>Все методы, которые ничего не возвращают, должны срать структурой, только потому, что у тебя функциональность Task и Task<T> дублируется?
ну, во первых, не только у меня, а у всех либописателей.
а, во вторых, почему нет - в некоторых языках (щас не вспомню) именно так и сделано изначально. Потому что нет разницы между "нет результата" и "результат не имеет значения/нужности". Unit не привносит проблем, просто не имеет ограничений как void
(как и тот же companion object в котлине, который я хейтил что "смотрите как они уродливо сделали статические методы", пока не понял что так лучше)

>Так в чём проблема то?
Понимаешь, со всем можно жить. Ну вообще совсем. Жили же с null и ничего. Это потом автор нулл назвал это "охрениллиард долларов". Но ведь жить можно. Вон сколько кода написано. Да что автор понимает то )

Но если быть честным, то такие "можно жить" по факту - косяки. А мешают они сильно или слабо - не меняет факта ошибочности идеи.

навскидку
void - пояснил
виртуальные свойства - там я уже не помню ибо сам никогда такое не юзаю
IReadOnlyList - изначально забыли, а потом уже к IList не прилепить. То есть понятно что IReadOnlyList должен быть родителем для IList, а поздно. В итоге нельзя передать в IList в метод ожидающий IReadOnlyList
null safety - в итоге как варнинги, да и от кучи кода без оглядки на него никуда не денешься.
events - необходимость для отписки давать тот же делегат плохая идея. Вариант с диспозабле токеном или lifetime куда лучше.
раз уж выше написал про статики - статики нельзя расширить как экземпляры. Приходится писать свои ClassEx

ну и не язык уже но пример тоже хороший
HttpClient при таймауте кидает TaskCancelledException. Почему? Да потому что автор либы посчитал что метафора "задача отменена" тут подходит. Таймер отменяет задачу запроса в сеть, вроде все логично. Но не кидает наверх TimeoutException, ведь работает метафора "задача отменена"

Вот только клиентский код должен теперь разбираться "а кто отменил" явно проверяя "а это точно не я отменил все или оно само и мне нужно повторить?"

В итоге это "пофиксили" - теперь TaskCancelledException содержит InnerException = TimeoutException, чтобы можно было отличить хоть как то с фильтром when для исключений.
Дикий костыль, но ради обратной совместимости иначе никак.

Конечно, я не всё это считаю "ууу виноваты, бестолковые", но все же неудачные идеи остаются неудачными.
Аноним 17/02/22 Чтв 17:06:35 23000641286
>>2300052
в авалонии под винду мыльные шрифты (увы). конечно зависит от монитора и хз чего, но лично на моем мыльновато
и никак это не решить.
wpf тоже мыло, но там есть настройки.
Аноним 17/02/22 Чтв 17:15:57 23000711287
>>2300050
Забыл про свой любимый ConfigureAwait(true) по умолчанию. И мне, как либописателю, это очень напрягает - или везде ставь ConfigureAwait(false), или насильно теряй SynchronizationContext (и не дай бог забыть потерять его на входе), или юзай ConfigureAwait.Fody (что я и делаю), но это уже дикий костыль, ведь он скрытый от глаз и если кто-то посторонний смотрит на код, то он про эту тонкость не знает.
Аноним 17/02/22 Чтв 17:48:35 23001071288
Дайте годную идею для веб приложения.
Аноним 17/02/22 Чтв 17:49:50 23001101289
Господа! как бороться с мыслями которые постоянно лезут в голову, что я тупой. Вот допустим изучал как то делегаты, вроде все понятно, но с течением времени изучив много чужого кода я пришёл к выводу, что нифига я не знаю о них. И так касаемо всего, даже операции с обосцаными строками если копнуть, то можно столько всякого откопать. Создаётся впечатление, будто программирование это бесконечно глубока бездна в которой нет дна. Поэтому кажется будто я тупой, либо программирование удел гиков-аутистов, которые знают весь код наизусть как Отче наш.
Аноним 17/02/22 Чтв 18:05:05 23001321290
>>2300110
Просто берёшь и без задней мысли кодишь, а если что то не понимаешь, то гуглишь.
Аноним 17/02/22 Чтв 18:44:46 23001771291
>>2300056
>HttpClient при таймауте кидает TaskCancelledException. Почему? Да потому что автор либы посчитал что метафора "задача отменена" тут подходит. Таймер отменяет задачу запроса в сеть, вроде все логично. Но не кидает наверх TimeoutException, ведь работает метафора "задача отменена"
>
>Вот только клиентский код должен теперь разбираться "а кто отменил" явно проверяя "а это точно не я отменил все или оно само и мне нужно повторить?"
О, да. Мне вот эта хуита с "was cancelled" в случае таймаута, стоила кучки нервов в свое время.


Аноним 17/02/22 Чтв 19:15:21 23002081292
>>2299930
> Либы видать никогда не писал
Писал. Хуй знает правда при чем тут void и чем он в контексте либы плох.
Ну давай. Допустим я пишу логгер.
У меня есть метод
void Log<TScope>(TScope scope, LogLevel level, string messageFormat, params object[] logEventParameters);
Почему void - плохо тут? Что бы ты хотел, чтобы там было? LogEventWriteState? int с кодом ошибки? Может быть объект для того чтобы можно было подождать пока сообщение таки будет всеми писателями записано и ты бы с этим что-то делал? А может быть это все хуйня и тут void - норм, как раз для пользователей моего кода, а в своем коде - я могу с internal нахуячить чего мне надо?
Аноним 17/02/22 Чтв 19:27:31 23002161293
>>2300208
>Почему void - плохо тут?
без понятия почему ты считаешь что он плох тут
Тут он просто сигнатура, которая никому не мешает.

Мешает он когда у тебя нужно Task<void>, но поскольку Task<void> нельзя, то ты пишешь Task. А это вынуждает тебя писать параллельную к Task<T> логику обработки этого случая. При этом код на 99% копипаст из логики с Task<T>
То есть есть у тебя метод с Task<T>, который по цепочке там на 10 что то вызывает - придется сделать дубликат всей этой логики для Task

Там же рядом ходит и необходимость в интерфейсах указывать Task и Task<T> раздельно. А потом еще и реализовывать это (даже клиенту)
https://github.com/jbogard/MediatR/wiki#request-types
Аноним 17/02/22 Чтв 19:58:44 23002521294
>>2300208
И так то не проблема, что либа вводит свой Unit
просто это не стандарт, а значит люди не привыкши
что приводит к необходимости писать об этом в доках

был бы введен Unit при рождении TPL и все про него знали - здорово
был бы Unit изначально - еще лучше

А без этого рождаются вот такие вопросы
https://qna.habr.com/q/858409
Аноним 17/02/22 Чтв 20:38:07 23002941295
1645119486589.jpg 31Кб, 500x372
500x372
>>2299924
> А чей? папы римского?
> священного void
От самого Иисуса!
Аноним 17/02/22 Чтв 20:52:56 23003091296
>>2300216
> При этом код на 99% копипаст
Пиздёжь. Делаешь класс без дженерика, который наследует скажем Класс<int> и один раз оборачиваешь его методы в void-овые. Например, если у твоего Task<T> есть метод T Run(), то тебе не надо копипастить код этого метода. Наследуешься от Task<int>, прячешь int Run(), прячешь int Result, делаешь void Run() { base.Run(); } и всё. Инт возвращается, но уходит в пустоту. Которая по английски и есть void.

Такшта надуманная проблема. Лучше бы софт делал, а не этой хуйнёй маялся.
Аноним 17/02/22 Чтв 21:04:07 23003231297
>>2300309
>Такшта надуманная проблема
ну да ну да. расскажи это автору хотя бы того же Mediatr, что он неуч и нихрена не понимает, и все его регалии
https://mvp.microsoft.com/ru-ru/PublicProfile/4025502?fullName=Jimmy%20Bogard
херня, ведь анону с двача виднее

Расскажи это авторам Reactive Extensions, что они тупые, ведь никакой проблемы нет

Они то всего лишь практики. А практика хуйня )
Аноним 17/02/22 Чтв 21:08:14 23003301298
>>2300323
> расскажи это автору
Рассказал.
> Расскажи это авторам
Рассказал.

Харкнул им в ебала. Твои действия?
Аноним 17/02/22 Чтв 22:15:48 23003711299
>>2300330
>Твои действия?
пойду киношку погляжу. ведь диалог продолжать нет смысла
Аноним 17/02/22 Чтв 22:15:52 23003721300
>>2300323
Аргументум ад регалиум.

У меня дед, который 20+ лет работает и кучу всего полезного за время работы написал - хуячит методы по 10к строк и все пишет зачастую в одном Program.cs, потому что ему так вот нравится, ссыт на ебало всем любителям ООП и ФП, потому что начинал он с си, а асинхронщину по заветам APM хуячит. Ну, дед-входит в тех, кто составляет стандарты на уровне европки для нашей предметной области, дед - дохуя всего сделал, у деда ЗПха охуенная, ну, давай как дед AsyncCallback'и хуячить и ебашить ансейфом, просто по фану, потому что можем. У него ж столько регалий, куча выступлений на конференциях и вообще, дед - довольно известный в кругах этой вот предметной области.
Аноним 17/02/22 Чтв 22:23:59 23003741301
>>2300372
не сомневаюсь
Но что еще делать, если не получается пояснить суть тем, кто далек от темы

Даже прямыми словами у авторов написано что они вводят юнит, потому что void нельзя вернуть - не аргумент. "Авторы дураки и придумали это от просто так" (с) анон с двача

Аноним 17/02/22 Чтв 22:29:42 23003791302
>>2300309
ага. у рх проблема не с тасками - я не знаю, я его не юзаю. (что пофиг ибо суть проблемы та же)
цитата
"Поскольку мы не можем реализовать интерфейс IObservable<void>, разработчики библиотеки Rx добавили тип Unit, который как раз и играет роль отсутствия возвращаемого значения."
http://sergeyteplyakov.blogspot.com/2010/11/blog-post.html
Аноним 17/02/22 Чтв 23:06:57 23004101303
tuples.png 26Кб, 271x281
271x281
Давайте ещё вброшу обратное от Task<void>.

Разве пикрелейтед - это не костыльная ООП-имлементация tuples?

>where TRest : struct
Ну это вообще ахуенно, бонус, тюпл в тюпле.
Аноним 17/02/22 Чтв 23:44:22 23004331304
>>2300410
а зачем так было сделано? какую проблему решали?
Аноним 18/02/22 Птн 00:06:41 23004451305
>>2300433
Скорее не захотели встраивать нормальные tuples (как в F#) в компилятор, а реализовать средствами языка.
Аноним 18/02/22 Птн 06:07:48 23005091306
>>2300379
> разработчики библиотеки Rx добавили тип Unit
Я сделал то же самое, только не добавляя типа. Вместо какого-о лишнего Юнит, у меня инт.
Аноним 18/02/22 Птн 10:52:14 23005681307
image.png 69Кб, 611x590
611x590
image.png 65Кб, 628x559
628x559
Дорогие аноны, как можно ускорить два метода, один из которых парсит данные из листа структур в лист удобно читаемых строк, а другой ищет по префиксу все подходящие вхождения в получившемся листе?

Пробовал две реализации на пикрелейтедах, причём с параллелизмом стало медленнее. Как быть?
Аноним 18/02/22 Птн 11:24:30 23006041308
>>2300330
>Твои действия?
Мутирую в гидралиска.
Аноним 18/02/22 Птн 12:30:42 23006511309
>>2247357 (OP)
Привет, подскажите, пожалуйста, как перейти на версию c# 8.0? В одном видосе сказано нажать "Открыть папку в проводнике" в решении, там зайти в .csproj и скопировать строку <LangVersion>8.0</LangVersion> из <PropertyGroup> в <PropertyGroup> повыше. Проблема в том, что у меня нет строки <LangVersion>8.0</LangVersion> и некоторые операторы не работают, например ??=. У меня Visual Studio 22 17.1.0 версии, стоит только "разработка классических приложений .NET.
Аноним 18/02/22 Птн 12:51:18 23006611310
Аноним 18/02/22 Птн 13:16:35 23006751311
>>2300651
допиши эту строку в первый PropertyGroup, там где фреймворк указывается
иначе он автовыбирает по фреймворку
Потому вписав дотнет 6 получишь шарп 10 и не нужно ничего мудрить лишнего
Аноним 18/02/22 Птн 14:56:24 23007751312
1.png 20Кб, 705x547
705x547
2.png 15Кб, 640x472
640x472
>>2300675
Поменял на 6.0, visual studio просит установить версию 6.0.2. Я ее поставил, но все равно не могу на нее перейти почему-то
Аноним 18/02/22 Птн 15:24:04 23007891313
>>2300775
Я раньше тоже с этими волшебными списками опций игрался и нихуя не понимал, а потом освоил консолечку (dotnet CLI) и горя не знаю теперь.
Аноним 18/02/22 Птн 15:45:30 23008161314
>>2300775
VS2019 что ли
Хз. я давно перешел на 22
Аноним 18/02/22 Птн 15:50:39 23008251315
Аноним 18/02/22 Птн 15:51:42 23008291316
>>2300816
Я давно перешёл на вс коде. Запускается за полсекунды, в руке лежит, как влитой. Разницы со студией ноль.
Аноним 18/02/22 Птн 16:04:44 23008441317
Image 4.png 32Кб, 820x774
820x774
>>2300825
тогда хз чего у тебя настройки выглядят так (по старому). а не как у меня на пике
Аноним 18/02/22 Птн 16:05:20 23008461318
>>2300829
>Разницы со студией ноль.
юморист )))
Аноним 18/02/22 Птн 16:27:09 23008611319
Аноним 18/02/22 Птн 16:49:01 23008901320
>>2300861
Конечно, только формы и шлепаю. Заодно и куличики леплю
Аноним 18/02/22 Птн 17:17:41 23009271321
1.jpg 229Кб, 1039x704
1039x704
>>2300844
А где такие настройки? У меня даже при создании проекта нет возможности выбрать другие версии кроме этих
Аноним 18/02/22 Птн 17:27:36 23009511322
>>2300927
>А где такие настройки?
свойства проекта по пкм. теперь они выглядят иначе (ну у меня точно, а почему хз - 2019ю я давно снес, а в ней выглядело по старому)

Ну выбрать можно те, поддержка сдк которых были поставлены со студией

но вообще есть старый стиль *.csproj и новый sdk
может для каждого стиля свой вид настроек. Я давно перешел на новый во всех проектах еще задолго до выхода даже дотнет 5

Аноним 18/02/22 Птн 19:28:36 23011121323
.png 73Кб, 485x783
485x783
.png 4Кб, 784x82
784x82
>>2300568
В общем. Если бы я еще знал что эти циферки значат.
Да, заполнял лист фуллнеймов по 1000 валидных и 1000 невалидных.
Аноним 18/02/22 Птн 19:32:17 23011161324
>>2301112
А, ну да, еще наверное такая дикая разница из-за того что тестовые данные я как ебанат составил:
Valid
Invalid
кек. Наверное нужно было бы поиграться.
Аноним 18/02/22 Птн 19:41:03 23011241325
Аноним 18/02/22 Птн 19:58:25 23011451326
>>2301112
а как по твоему сравнивается StartWith в строках? До первого несовпадающего символа же - дальше нет смысла искать. Поэтому ручная имплементация самому лишена смысла.

Хочешь ускорить - параллель (если плата за это не превосходит выигрыш) либо структуру какую типа префиксного дерева
Аноним 18/02/22 Птн 20:13:43 23011611327
.png 51Кб, 887x826
887x826
.png 45Кб, 1240x718
1240x718
>>2301145
> а как по твоему сравнивается StartWith в строках
Ну, они сравниваются как-то так. А потому, свой велосипед вполне нормальное решение, если тебя все эти культуры и прочее не волнует.
Аноним 18/02/22 Птн 22:05:24 23012101328
>>2301161
но не в 500 же раз если на скринах бенчи именно этого
Аноним 18/02/22 Птн 22:22:07 23012291329
.png 10Кб, 1775x229
1775x229
.png 75Кб, 671x786
671x786
Что я делаю не так? Первый скрин - вывод в консоль и курл
Второй - собственно код
С заголовками-то все ясно. Но вот решил, что хорошо бы и тело доставать. И чет пизда. Что в постмане, что в curl - уходит в выделенном куске в бесконечное ожидание. Смотрю что там в сокете, написано Available = 0. Но блядь. А куда тело-то делось? Чи шо? Чи я тупой и что-то не прочитал?
Аноним 18/02/22 Птн 22:32:37 23012451330
>>2301161
хотя да. сделал бенчи ориг StartWith и второго варианта (проверяем по символу в цикле)

если без указания StringComparison то дико медленно
| Method | Mean | Error | StdDev |
|-------------- |-------------:|-----------:|-----------:|
| TestOrigin | 5,809.44 us | 29.262 us | 25.940 us |
| TestNaive | 20.21 us | 0.065 us | 0.061 us |

а вот с StringComparison.Ordinal вменяемо
| Method | Mean | Error | StdDev |
|-------------- |-----------:|---------:|-----------:|
| TestOrigin | 29.50 us | 0.216 us | 0.191 us |
| TestNaive | 20.43 us | 0.238 us | 0.222 us |
Аноним 18/02/22 Птн 22:34:21 23012471331
>>2301229
>что в curl - уходит в выделенном куске в бесконечное ожидание
нужно проверять i
если он i==0 то значит поток закрылся и данных больше не будет и нужно выходить из цикла
Аноним 18/02/22 Птн 22:39:10 23012571332
>>2301247
Ну, поток-то не закрылся на деле. Он вполне принимает нормально ответ.
Плюс я постманом файл текстовый пытался отправить. Вот его таки читает, но не целиком, последние несколько строк куда-то проебываются. Но куда - я не понимаю.
Аноним 18/02/22 Птн 22:46:51 23012661333
>>2301257
все дело в ридере и его ReadLineAsync()
он выгребает кусок из стрима, сплитит его по \n и в нем остается остаток

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

читай из чего то одного
Аноним 18/02/22 Птн 22:51:22 23012721334
Авалония?
Аноним 18/02/22 Птн 22:58:40 23012761335
>>2301266
Действительно!
Спасибо. Сам бы я скорее психанул бы и отказался как от стримов, так и от ридеров и взялы бы пайпы и с сокетом забавлялся, нахуячив какой-нибудь ебанутый парсер со стейтмашиной.
Еще раз спасибо.
Аноним 18/02/22 Птн 23:19:43 23012861336
Аноним 18/02/22 Птн 23:47:18 23013041337
Там превью версия .NET 7 вышла
Аноним 19/02/22 Суб 00:02:57 23013151338
>>2301286
Ну, как я знаю, пайпы в asp юзают не потому что проще, а потому что хотят дать пососат. Типа в плане использования ресурсов - оно таки круче и при этом есть удобное решение для работы с буфферами. Но в плане кода - выходит на самом деле тот еще ужас, как минимум на уровнях что близко к сокетам.
Brokenranks 19/02/22 Суб 09:36:12 23014161339
image.png 139Кб, 1278x602
1278x602
image.png 64Кб, 1370x755
1370x755
Аноним 19/02/22 Суб 13:13:50 23014911340
>>2301416
Не бывает классов без неймспейсов. Соотвественно, неймспейс - часть полного имени класса.
Аноним 19/02/22 Суб 13:49:00 23015051341
Готовлюсь к собесам по стеку WEB API, MVC по книжке Фримана. Насколько важно учить тег-хелперы? Часто ли применяются в разработке или эту главу можно пропустить?
Аноним 19/02/22 Суб 13:54:53 23015071342
>>2301491
Вау. ты спаситель, заработало
Блин вот из-за таких как ты я понимаю что мне в программировании ничего не светит, вы просто на голову умнее меня
Аноним 19/02/22 Суб 14:35:52 23015381343
>>2301505
Используешь хтмл - нужны
отдаешь только жсоны - не нужны конечно
Аноним 19/02/22 Суб 19:05:04 23017111344
Зареган на линкедин и мне написала рекрутер из EPAM (в который я очень хочу попасть как-нибудь в будущем. Я хоть и готовлюсь к собесу, но пока что я сырой (надо подтянуть паттерны и алгоритмы со структурами данных) и не хочу даже пытаться. Что можно ей ответить? Попросить подождать?
Аноним 19/02/22 Суб 19:19:18 23017161345
>>2301711
Игнорируй просто, ответишь чуть позже когда станешь умнее
Аноним 19/02/22 Суб 20:19:13 23017601346
Вопрос. Вот в шарпе есть индексаторы object this[int index]. И есть свойства с довольно похожим синтаксисом. А свойств с индексаторами нету, да? Чтобы я в свойство мог совать аргумент как с индексатором в свойство и через set get что-то делать.
Аноним 19/02/22 Суб 20:25:26 23017641347
>>2301760
> И есть свойства с довольно похожим синтаксисом
????
Аноним 19/02/22 Суб 20:37:10 23017711348
Аноним 19/02/22 Суб 20:40:41 23017721349
>>2301771
Ну это можно извернуться, но зачем.
троллейбус_из_хлеба.жпег
Аноним 19/02/22 Суб 20:56:27 23017791350
>>2301772
У свойств то синтаксис приятный можно написать в одну и ту-же хуйню что она читает и что она меняет! И индексаторы приятные.

Вот написал класс который менеджит ресурсы на гпу. Раньше следил он там за своими текстурками и я через индексатор обращался к этим текстуркам. Удобно. А теперь хочу чтобы он ещё и за буфферами следил. Но второй индексатор то я не могу сунуть. Задумался что хочу иметь возможность обращаться к нужным мне ресурсам примерно так-же как обращался бы им в словариках. То есть написать например хранилка.текстуры["имя"], хранилка.буффер["имя"]. Но как мне такой синтаксис иметь без словариков то?

Наверно остается только написать дженерик класс для хранения ресурсов у которого обращение к его ресурсам происходит через индексатор и просто собрать из двух таких один.
Аноним 19/02/22 Суб 21:16:47 23017921351
.png 23Кб, 566x749
566x749
.png 19Кб, 540x327
540x327
>>2301779
Если я правильно тебя понял, то ты можешь что-то типа такого намутить.
Аноним 19/02/22 Суб 21:51:05 23018131352
Буквально на днях вентилировал этот же вопрос: что учить в 2022 году для разработки >бэкэнда<. Несколько дней гуглил, читал статьи и прочее. Краткие выводы к которым я пришёл для себя (на истину в последней инстанции не претендую):

1) Ванильная Java - уже фактически труп. Учить её сейчас с нуля нет смысла, новых проектов на ней никто уже не начинает. Большое кол-во вакансий и высокие ЗП в данный момент, обусловлены её славным прошлым, большому кол-ву кровавого энтерпрайза в финтехе, телекомах и тп который нужно поддерживать и дорабатывать, и тем, что молодые разрабы в большинстве своём проходят мимо неё в результате чего имеется серьезный дефицит разработчиков.

2) C# медленно, но верно загибается, МС судя по всему будет продолжать активно развивать его, в результате чего он имеет шансы обогнать Java со временем. Т.е. проще говоря он будет терять свою долю рынка медленнее чем Java. Тем не менее учить его с нуля в 2022 тоже нет смысла, главный аргумент тут: он не используется в core-сервисах крупнейших IT компаний мира (разумеется, сама МС не в счет). Пока гугл, амазон или мета не перепишет свою инфраструктуру на C#, смотреть в его сторону тоже не стоит.

3) Думаю, что следующая троица: node+ts, kotlin и golang в течение нескольких лет практически полностью вытеснят java и c# с бэкэнда везде, включая банки, телекомы и тп. В конечном счете всё будет переписано на данных языках. Старые технологии местами останутся, если серьезные доработки не требуются, но с нуля разрабатывать на них уже не будут.

Поскольку, последние 5 лет я пишу исключительно на node+ts (до этого, немного разрабатывал на c#), в этом году я решил изучить golang. Думаю, что спрос на golang разработчиков вырастет в разы в ближайшие годы.

Напоследок, хочу поделиться с вами прекрасным постом на реддит который я нашел пока вентилировал данную тему. Там не только про dotnet ui фреймворки, но и про политику МС к разработчикам в целом (в хроме можно использовать встроенный переводчик, смысл остается вполне понятен) https://www.reddit.com/r/csharp/comments/f9i9hc/comment/firr467/?utm_source=share&utm_medium=web2x&context=3
Аноним 19/02/22 Суб 21:55:35 23018171353
>>2301813
>1) Ванильная Java - уже фактически труп
бред
>2) C# медленно, но верно загибается
бред
>3) node+ts, kotlin и golang в течение нескольких лет практически полностью вытеснят java и c#
еще больший бред

"боже вас сохрани, не читайте до обеда советских газет" (с)
Аноним 19/02/22 Суб 22:00:35 23018231354
>>2301817
>бред
Аргументы будут?
Аноним 19/02/22 Суб 22:15:36 23018431355
>>2301813
> В конечном счете всё будет переписано на данных языках
Да. Бизнесу-то делать нечего, как по 10 раз переписывать то что работает. Вон, как славно в штатах с кобола все переписывают!
Относительно ноды - говно без задач, годящееся только чтобы фронтендеру развернуть тестовое окружение и как временная мера чтобы роутить запросы при очередных попилах монолита на микросервисы.

Относительно остального.
Жава - жива и помирать не собирается, сколько бы ее не хоронили.
Шарпик - если майки не обосрутся - будет делить ту же нишу что и джава в области бекенда. Держим пальчики, чтоб очередная война гидры внутри конторы - не сменила вектор развития шарпика и не откатились к началу десятых.
Про ноду уже сказал. Говно без задач. Котлин - на мобилках норм, в бекенде - говно. Гошка - только для микросервисов и годиться, что-то большое и сложное - заебешься писать и поддерживать и как-бы микросервисы не пытались продвигать, на деле - оказывается, что это нихуя не серебрянная пуля и нормально спроектированный монолит - пизже во множестве кейсов.
Аноним 19/02/22 Суб 22:32:07 23018531356
Аноним 20/02/22 Вск 12:01:18 23021581357
>>2247357 (OP)
Аноны, объясните, пожалуйста, в чем разница между int.Parse(Console.ReadLine()) и Convert.ToInt32(Console.ReadLine())?
Аноним 20/02/22 Вск 12:06:47 23021701358
>>2301779
Но ты же можешь сделать хранилка[типхранимого.текстура]["имя"]
Аноним 20/02/22 Вск 12:38:36 23022531359
.png 4Кб, 501x139
501x139
>>2302158
В случае с string -
Convert.ToInt32(string str) просто дергнет int.Parse(str)
Так что разницы никакой нет.
Аноним 20/02/22 Вск 12:48:57 23022721360
Аноним 20/02/22 Вск 17:16:57 23025651361
Странное решение с этим IHttpClientFactory
получается каждый раз создается новый HttpClient
Ну да, он берет хендлер из пула, но разве тот же singleton сервис не может захватить этот HttpClient надолго (и тем самым захватить и хендлер мешая смене dns).
Получается нужно в сервисы закидывать фабрику и создавать HttpClient на каждый запрос
выглядит диковато

Почему не сделали хендлер, который сам все меняет - хз
Аноним 21/02/22 Пнд 00:16:17 23030341362
>>2301304
Пиздец у них продакшон полетел без тормозов.
Аноним 21/02/22 Пнд 02:28:44 23030641363
Аноним 21/02/22 Пнд 02:34:51 23030651364
image.png 967Кб, 1600x1040
1600x1040
>You can separate these route actions to multiple files easily. RouteGroup would become more useful if in the future c# gets support for top-level functions(not just for Program.cs).
Ебушки-воробушки, они думают над тем чтобы затащить функции?
Аноним 21/02/22 Пнд 02:56:38 23030671365
>>2303065
Они со своим top-level херню сделали, от которой постоянно материшься.
Аноним 21/02/22 Пнд 07:20:00 23031021366
>>2247357 (OP)
Есть, значит
bool arg1 = false;
и оно может быть тру-фелсе.
И есть, значит:
public static Namespace.Class object = new Class(arg1);
Который тупо срабатывает когда arg1 = false.

Есть Main(string[] args) с arg1 внутри.

Но ебучий паблик статик создаётся до обработки аргов. Шо делать с этой хуйнёй?
Аноним 21/02/22 Пнд 07:35:15 23031061367
>>2303102
Всё, понял. null по дефолту и {get; set} надо въебать туда.
Аноним 21/02/22 Пнд 09:50:53 23031361368
Есть сайт с авторизацией (айдентити + кастомная), инфа о юзвере лежит в HttpContex.User (все стандартно). Но вот какой нибудь айдишник или еще что может понадобиться в других частях/либах приложения. Как грамотно организовать доступ к инфе о юзвере. У меня такие варианты:
-прокидывать ihttpcontextaccesor, и из него тануть юзера (мне такое не нравиться по нескольким причинам, как минимум не хочется тянуть хттпконтекст в слои далекие от хттп, плюс в том слое еще понадобиться знание о клаимах и т.д.)
-сделать iuserinfoservice, который уже будет работать с ihttpcontextaccesor'ом. Вроде норм, но меня смущает то, что его я буду использовать и в контроллере, т.е. будет поле ClaimsPrincipal User и IUserInfoService UserInfo, по сути обертка над ClaimsPrincipal User. Довольно странно.
В общен нужен ваш совет/варианты.
Аноним 21/02/22 Пнд 10:00:04 23031431369
>>2303067
Может они хотят сделать добее легкого скриптинга?
Аноним 21/02/22 Пнд 10:55:43 23031981370
>>2302158
>в чем разница между
>>2302253
>разницы никакой нет
Разница есть в обработке наллов. Конверт вернет 0, а Парсе бросит исключение.
Аноним 21/02/22 Пнд 11:18:00 23032081371
>>2247357 (OP)
Может кто знает, в чем причина полной нагрузки памяти компа пустым проектом VS? Первый раз за день проект может загружаться очень долго, к тому же, хотя кода там нет совсем
Аноним 21/02/22 Пнд 11:44:08 23032311372
>>2303208
Полной это в гб сколько? Что за студия? Что за проект?
Переустанови студию вместе с шиндус
Аноним 21/02/22 Пнд 12:10:07 23032461373
>>2303231
Получается, что около 10гб съедается при первом запуске, при том, что в нормальном состоянии потребляет около 1гб или чуть больше. Студия 22, 17.1.0, консольное приложение .Net Framework
Аноним 21/02/22 Пнд 13:49:59 23033431374
Аноним 21/02/22 Пнд 14:32:56 23033781375
>>2303343
А дотнет7 может крутить приложения под дотнет5/6? Или надо все версии рантайма устанавливать?
Аноним 21/02/22 Пнд 14:50:06 23033901376
Аноним 21/02/22 Пнд 14:59:13 23033961377
image.png 4Кб, 138x75
138x75
>>2303208
Обрати внимание на левый нижний угол приложения. Там будет вот такой значок. Это бэкграунд таски которые студия делает после загрузки. Там может быть дохрена всего, грузится интеллисенс, пакеты, тулзы какие-нибудь, анализаторы всякие и т.д.
Дальше лень объяснять гугли что-нибудь вроде "Visual Studio Background Tasks"
Аноним 21/02/22 Пнд 15:13:37 23034031378
>>2303390
Я только к пятому привык, шестой ещё не начинал учить, а тут седьмой на подходе.
Аноним 21/02/22 Пнд 15:14:26 23034041379
>>2303208
> в чем причина
В древней пеке для учобы?
Аноним 21/02/22 Пнд 15:17:51 23034081380
Ну что там ваш распиаренный МАУИ? (который по факту - переименованный хамарин, который по факту переименованный впф для мобилок).
Кто на ём десктопные кроссплатформенные приложения пилит?

И вдогонку вопрос. На чём пилить кроссплатформенные десктопные приложения в 2022 веку?

Авалония идёт нахуй.
Аноним 21/02/22 Пнд 15:47:33 23034471381
>>2303408
>кроссплатформенные десктопные приложения в 2022 веку
не нужны. но если нужны, то электрон
Аноним 21/02/22 Пнд 16:37:52 23035031382
>>2303143
Какому шарписту, привыкшему что все лежит на своем месте, проще от того что все в одной большой лапше куче? да никакому. Это просто ломает привычку,а пользы ноль

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

Тут аноны рекомендовали типа "ну создай свой шаблон"
Из чего (цензура) создай. Где я в 22 студии создам старый тип проекта чтобы сохранить его как шаблон? Да и нахера оно мне надо?

Для легкого скриптинга так же отлично подходил метод Main - пиши тупо в нем хоть 10к строк - никаких проблем не было. Идиотская идея в общем, как и с ConfigureAwait
Аноним 21/02/22 Пнд 17:04:37 23035421383
Аноним 21/02/22 Пнд 17:17:10 23035621384
>>2303503
>Для легкого скриптинга так же отлично подходил метод Main
Да, если для одного файла не нужно было бы создавать проект с csproj

Иногда нужна папка с тулзовыми скриптами для проекта, один файл один скрипт. Все это бы "без статик воид мэн" даже сейчас
уже зашло .
Аноним 21/02/22 Пнд 17:17:36 23035631385
Аноним 21/02/22 Пнд 19:30:09 23037041386
>>2303378
Рантайм должен быть установлен тот который указан в .csproj. .NET 6 не может запускать .NET Core 3.1 приложения, например.
Аноним 21/02/22 Пнд 21:52:20 23037951387
>>2303704
А Net5 может? Или клиенту надо иметь Net5/6/7, помимо коре и фв?
Аноним 21/02/22 Пнд 21:57:05 23038011388
.png 34Кб, 1214x786
1214x786
Тупой вопрос.
Смотрите, есть табличка в которую записывается считанное значение, есть табличка устройств, есть табличка параметров устройства, которые можно читать.
Так вот. Я хочу достать из базы все последние значения для какого-то устройства.
Если бы я делал это на sql, то это было-бы примерно так:
Группирую значения по параметру и устройству и MAX(Dt), джойню с самим собой, доставая таким образом последние считанные значения для каждого параметра устройства
Делаю правый джоин со всем списком параметров устройства(ну, мне хочется знать, что что-то мы еще не читали)


Ну, я примерно так решил делать на EF.
И EF говорит что низя, сделать вот так:

var lastParams = from readed in db.ReadedVals
group by new { readed.deviceId, readed.parameterId } into g
select g.OrderByDescending(x=>x.Dt).FirstOrDefault()

Вернее можно. Но тогда чтобы сджойнить его с устройством - нужно привести результат к массиву/списку/IEnumerable, а мне это не нравится и хочется чтоб EF таки как-то это транслировал.
Писать SQL-запрос для этого - не хочется по причинам того, что всюду линку, а тут будет нативный запрос, просто уродливо, тогда уж все менять на sql.

Может быть я что-то не так делаю и есть способ эту же фигню написать так, чтобы не приводить к массиву и при этом ef не ругался, что не может транслировать запрос? Ну или есть какой-то простой способ сказать ef что я от него хочу в контексте sql вот таким вот запросом, чтобы он таки транслировал его?
Просто мой гуглеж завел в тупик, т.к. все просто делают .ToArray и не парятся, а мне не хочется ToArray делать.
Аноним 21/02/22 Пнд 22:02:09 23038111389
>>2303795
у меня стоит 5 и 6
приложения 3,1 запускаются
Аноним 21/02/22 Пнд 22:32:28 23038331390
>>2303447
> то электрон
Кстате думал о нём. Это ж на нём написан МС коде. Пойду изучу. Спс.
Аноним 21/02/22 Пнд 22:34:20 23038361391
>>2303801
> все просто делают .ToArray и не парятся, а мне не хочется ToArray делать.
Зделой сначала ту эррей, а потом ту лист. И спрячь в отдельном модуле.
Аноним 21/02/22 Пнд 22:45:54 23038491392
>>2303811
Запускаются приложения у которых в .csproj указано netcoreapp3.1? А сделай-ка скрин вывода команды dotnet --list-runtimes
Аноним 21/02/22 Пнд 22:47:36 23038521393
>>2303795
Конечно надо иметь, они ж новее.
Аноним 21/02/22 Пнд 22:52:43 23038591394
>>2303849
гм. а реально

$ dotnet --list-runtimes
Microsoft.AspNetCore.App 3.1.21 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.21 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.21 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.12 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

при этом в программы и компоненты только 5 и 6 упоминаются.
я помню удалял из программы и компоненты старые фреймворки, а оно эна как
Аноним 21/02/22 Пнд 22:53:08 23038601395
Кстати. Я тут недавно на паскале чуть пописал.
И вот концепция модулей вполне прикольная жи. В спеках .net описываются модули. Когда их завозить-то будут? А то чет посмотрел роадмапу .net7 - там какая-то хуета беспонтовая, в 6 больше ништяков завезли. А модули бы были норм.
Аноним 21/02/22 Пнд 23:01:33 23038731396
>>2303859
>при этом в программы и компоненты только 5 и 6 упоминаются.
Ты может старые SDK удалил, их можно посмотреть --list-sdks
Аноним 21/02/22 Пнд 23:02:19 23038741397
>>2303859
>при этом в программы и компоненты только 5 и 6 упоминаются.
Может ты старые SDK удалил, их можно посмотреть --list-sdks
Аноним 21/02/22 Пнд 23:59:19 23039251398
>>2303860
Модули в паскаль пришли из си. Хочешь модулей - добро пожаловать в чистый си.
Аноним 22/02/22 Втр 05:28:01 23039671399
Screenshot2022-[...].jpg 746Кб, 1440x3200
1440x3200
Подскажите, что это значит? Что за автоматизация бизнес процессов? Это связано с программированием?
Аноним 22/02/22 Втр 06:18:40 23039711400
>>2303967
То что программист делает всегда.
Вот у тебя есть процесс: "прием заказа". В классическом виде: Клиент припиздовал, сказал человеку, человек на бумажечку записал, потом передал это тому кто формирует заказ. Так вот, ты можешь автоматизировать - теперь заказ можно сделать на сайте (исключая как физическую необходимость клиента припиздовать, так и необходимость в том, кто заказ примет и тонны бумаги, чтобы это записывать). Ну и таких процессов миллионы в любом бизнесе: расчеты ЗП, инвентаризация, всякие специфичные хуйни(ну, допустим вот у телеканала есть процесс - "вещание", раньше сидел челик и ручками выводил всякое в эффир, сейчас - составили программу передач на год вперед, программа сама переключает, делаем прямые включения только по необходимости и иногда корректируем программу; у всяких больниц - ведение карты больного и т.д.)
Короче. Ты понял. Специфичные процессы какого-то бизнеса, которые приносят прибыль обычно.
Как связано с программированием? Ну, блядь, а кто будет делать электронный журнал какой-нибудь? Или корпаративный планировщик задач? Тетя Зина-бухгалтерша и дядя Петя - ответственный за соблюдение ТБ и заведование складом?
Аноним 22/02/22 Втр 07:35:10 23039861401
>>2303971
Спасибо. А SAP это не связано, это как 1C получается?
Аноним 22/02/22 Втр 11:32:24 23040931402
>>2247357 (OP)
двач, посоветуйте книги, чтобы вкатиться в c#, учитывая то, что знаю java на уровне ждуна
Аноним 22/02/22 Втр 13:04:53 23041891403
>>2247357 (OP)
Как скачать файл cURL'ом в байты, не сохраняя файл?
Аноним 22/02/22 Втр 13:55:22 23042441404
>>2303801
Сделай хранимку и дергай ее
Аноним 22/02/22 Втр 16:01:33 23043311405
Аноним 22/02/22 Втр 17:29:08 23043881406
А напишите у кого чего на студии (не коде) из расширений стоит
может чего нужного себе найду про что я не знаю

у меня вот (VS2022)
resharper
suprecharger
XamlStyler
Origin Blue Theme
OzCode debug
VisualHg
BuildVision вот собираюсь
Аноним 22/02/22 Втр 18:11:36 23044121407
>>2304388
Ничего. Раньше codeMaid стояла, но нахуй не нужна оказалась.
Аноним 22/02/22 Втр 19:33:37 23044581408
Как это понимать?
(a) => () => a.Foo(...)
Аноним 22/02/22 Втр 19:43:48 23044671409
>>2304458
Ну, примерно как:

void Foo(MyClass a){
a.Foo();
}
Аноним 22/02/22 Втр 20:08:25 23044921410
image.png 23Кб, 1363x285
1363x285
Так наверно будет лучше.

>>2304467
>Ну, примерно как:
>void Foo(MyClass a){
>a.Foo();
>}
А это разве не
(a) => a.Foo()
?
Аноним 22/02/22 Втр 20:15:00 23044981411
>>2304492
ты регистрируешь лямбду, которая возвращает лямбду, которая уже возвращает нужный сомевьюмодель

лишний уровень лямбдовости
Аноним 22/02/22 Втр 20:43:15 23045191412
image.png 7Кб, 545x156
545x156
>>2304498
Мэдскиллз верен?

Я думал, что после
(s) =>
должен быть стейтмент или даже блок, а там опять параметр, и только потом стейтмент, и ЯННП.

И получается, что на пике nested lambda - это и есть стейтмент?
Аноним 22/02/22 Втр 20:50:25 23045261413
>>2304388
Visual Studio Spell Checker - удобно подсвечивает ошибки на скроллбаре

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

Shrink Empty Lines - сжимает визуально пустые строки

Solution Error Visualiser - подсвечивает ошибки в дереве проекта

Match Margin - подсвечивает выделенное слово на скроллбаре, если оно еще где-то в коде встречается

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

Fine Code Coverage - показывает покрытие кода тестами (не самое лучшее в своем классе, но бесплатное)



Аноним 22/02/22 Втр 20:52:09 23045271414
>>2304519
смотря что ты хочешь сделать?
то что на пике закинет в инжект Func<SomeViewModel>

иначе же
services.AddSingleton(p=>p.GetRequiredService<SomeViewModel>());
Аноним 22/02/22 Втр 21:04:23 23045391415
>>2304527
Я самостоятельно учу с нуля нет, не вкатун и прихуел от формы записи.
Лямбды вида (s) => Foo(s) понятны, а с той, что на пике, впервые столкнулся. Пытался что-нибудь нагуглить, но не получилось.
Аноним 22/02/22 Втр 21:10:53 23045441416
>>2304539
Просто если зарегать лямбду ака фабрику в контейнере через эти методы, то контейнер при резолве вызовет эту ламду, котоая вернет зависимость.
поэтому регистрируют ламбду, которая возвращает ламбду

ну можно создать и метод расширение типа services.AddFactory(...) но это будет путать
Аноним 23/02/22 Срд 00:43:46 23046591417
Перестаньте так сложно говорить!
Аноним 23/02/22 Срд 12:12:41 23048011418
wut.png 130Кб, 436x1082
436x1082
Почему студия меня унижает? Создал пустой консольный проект, а он мне говорит дотнет у меня неправильный. Ну пиздец.
Аноним 23/02/22 Срд 12:36:01 23048261419
>>2304801
Выполни команду
>sysprep/sysprep.exe
И нажми ОК в открывшемся окошке. Дождись перезагрузки. Проверь, исчезла ли проблема.
Аноним 23/02/22 Срд 12:54:57 23048321420
>>2304826
Да я уже нажат на инсталл в подсказке, он сказал что установит Net5 (на 7Мб, лол) и предупреждение ушло. Но список сдк/рантаймов не поменялся.
Мне, как диванному эксперду, кажется, что майки хуиту творят с зоопарком дотнетов.
Аноним 23/02/22 Срд 14:14:09 23048771421
.png 30Кб, 568x533
568x533
>>2304458
Вот тебе пример более развернутый.
Аноним 23/02/22 Срд 14:23:36 23048811422
>>2304458
Вот кстати с лямбдами в коротком виде - хуйня в том, что если ты вот так делаешь - не зная что там делает a.Foo(...)- ты не можешь сказать, это делегат с void или каким-то возвращаемым значением.
Как по мне - нужно убрать нахуй короткую запись лямбды и делать со скобками, чтобы разночтений и необходимости мышкой водить не возникало.
Аноним 23/02/22 Срд 14:32:17 23048861423
>>2304881
>ты не можешь сказать, это делегат с void или каким-то возвращаемым значением.

все могу и без проблем. Никаких пробле со чтением лямбд
Аноним 23/02/22 Срд 14:44:58 23048891424
>>2304886
> все могу и без проблем
> var x = () => SuperDupperMethod();

Что будет возвращено после вызова лямбды? Будет ли вообще что-то возвращено? Давай. Вот лямбда, дерзай, у тебя же нет никаких проблем с чтением лямбд.

А было бы нормально написано:

Func<int> x = () => { return SuperDupperMethod(); };
или
Action x = () => { SuperDupperMethod(); };

Вообще никаких проблем бы не возникло. А тут - води мышкой, и это хорошо если в студии сидишь. А если код нельзя открыть в иде? Короче, var и короткая запись там, где тип не очевиден - говно, тот кто так пишет - говнокодер и его нужно выгонять из айТи за целенаправленное вредительство. Завтра он начнет рефлексией доставать приватные методы и выделять руками память, дергать указатели на строки и прочую хуйню делать. Фу таким быть.
Аноним 23/02/22 Срд 14:47:36 23048901425
>>2304889
> А если код нельзя открыть в иде?
а лямбды тут причем вообще?
это уже проблема var vs Type
ты сам привел пример как явное указание типа решило для тебя проблему чтения
Аноним 23/02/22 Срд 15:07:52 23049031426
>>2304458
как джсер тебе скажу, что это функция, которая принимает параметр А и возвращает другую функцию, которая вызывает a.Foo(...)
Аноним 23/02/22 Срд 15:15:51 23049071427
>>2304889
суть в том, что вот так var x пишется очень редко
обычно лямбды используются сразу по месту - LINQ, тот же service.AddSingleton(...)
и даже если ты читаешь без IDE, то как то не встает вопрос, а что там возращает a.Foo(), ведь контекст больше смещен на что делает AddSingleton

так что с этим никогда проблем чтения не было (а я читаю без IDE больше кода чем c IDE).
Вот с неймспейсами больше проблем при таком чтении. Видишь использование класса Foo и хрен поймешь в каком он неймспейсе. После такого многословный импорт в котлине сказкой кажется.
Аноним 23/02/22 Срд 18:56:16 23050871428
Можно ли в шарпе как-то в рантайме классы создавать и потом инстанцировать?
Аноним 23/02/22 Срд 18:59:05 23050881429
Аноним 23/02/22 Срд 19:52:39 23051121430
>>2304889
Чел... В 2к22 никто не пишет код в блокнотах.
Аноним 23/02/22 Срд 22:51:28 23052241431
Как всё заебало! Ничего нихуя не работает! Ёбаный wpf, конченная хуйня. Что с ним сделать блядь чтобы ебучие кнопки в EditView заработали? И так пробовал, и вписывал Button cal:Message.Attach="Delete()" и писал функцию в другом вью для теста, он только вылетает с ошибкой и всё. Кому не поебать гляньте код
https://github.com/shitshitsh3412/ContactsWPF
Аноним 23/02/22 Срд 23:44:43 23052561432
>>2305224
> Что с ним сделать блядь чтобы ебучие кнопки в EditView заработали?
Прописать им в хамл параметр x:name, затем в код-бихайнд класс добавить соответствующие добавленным именам свойства. Например:
В хамл:
> <Button "x:Name"="TButton1"/>
В классе:
> Button TButton1 { set; get; }
И далее пишешь в коде конструктора класса после InitializeComponent, в котором эти кнопки из хамла прибиндятся к членам код-бихайндового класса:
> TButton1.OnClick += (s, e) => { //твой код };

> конченная хуйня. Что с ним сделать блядь
Юзать Eto.Forms который проще, прозрачнее, и кроссплатформеннен. И хамл код у него попроще. И если тебя насяльника заставляет ебаться с МВВМ, то там это тоже можно реализовать.
Аноним 24/02/22 Чтв 01:22:37 23053711433
>>2305224
>cal:Message.Attach="Delete()"
интересно зачем юзает такое? чем это лучше чем простые команды, кроме того что это хуже
Аноним 24/02/22 Чтв 06:31:36 23054091434
>>2305256
>И если тебя насяльника заставляет ебаться с МВВМ, то там это тоже можно реализовать.
МВВМ - плохо?
Аноним 24/02/22 Чтв 09:52:08 23054511435
>>2305409
> МВВМ - плохо?
Не плохо. Но ты должен понимать, что и для чего ты используешь. МВВМ придуман для больших и сложных приложений, если ты пишешь какую-то мелкую утилиту, юзать там МВВМ - как стрелять из пушки по воробьям.
Аноним 24/02/22 Чтв 10:52:52 23054791436
>>2305451
Ты так написал, будто МВВМ - говно, вот я и спросил.
Аноним 24/02/22 Чтв 10:56:37 23054841437
>>2305479
Сорян. Двачдеформация. Я всё описываю так, будто оно говно. Даже небо. Даже аллах.
Аноним 24/02/22 Чтв 22:11:11 23058371438
Аноним 25/02/22 Птн 06:53:04 23060331439
>>2305837
Тред тонет кстати. Перекатывать будет кто? Заебали. Перекатывайте.
Аноним 25/02/22 Птн 07:37:41 23060361440
>>2305451
>МВВМ придуман для больших и сложных приложений
он просто придуман отделить визуальную логику от визуального рендеринга для тестирования и снижения лапши. И размер приложения значения не имеет.
Это всякие призмы придуманы для "больших и сложных", а не сам мввм
Аноним 25/02/22 Птн 07:48:51 23060371441
>>2306036
> придуман отделить визуальную логику от визуального рендеринга
Нет. Он придуман как решение для уже существующей инфраструктуры, в которой визуальный рендеринг происходит на отдельной системе третьей стороны.
> для тестирования и снижения лапши
Нет. Тестирование и понятность приплелись позже.

Проверим твою эрудицию, о какой третьей стороне речь?
Аноним 25/02/22 Птн 11:58:28 23061261442
А есть паттерны для простых маленьких приложений?
Я долбоёб и ничего не умею, но по чуть-чуть учусь, и уже придумал, что буду первое пилить.
Аноним 25/02/22 Птн 12:12:47 23061371443
>>2306037
ты про х-сервер что ли?
Абсолютно не в тему
Аноним 25/02/22 Птн 12:20:12 23061441444
>>2306126
>А есть паттерны для простых маленьких приложений?
MVVM же. не слушай чудиков

Вот твой путь
1 пишешь как в WinForms, то есть обработчики событий, команды (те которые роутед), будешь работать напрямую с контролами если нужно чего то извлечь
2 Потом тебе это надоест и " а где же биндинги, даже в формсах есть биндинги, унылые, но есть" - и вот ты уже юзаешь биндинги, кодишь классы, которые проецируются в этот биндинг - и вот ты уже почти MVVM
3 И потом очередная мысль - а нахера все в кучу в code behind мешать, может вынести в отдельный класс логику" - и вот ты уже изобрел MVVM )

Это настолько простой паттерн, что больше беспокоит "блин нужна будет зависимость от какой то либы где есть всякие ViewModelBase/RelayCommand" чем "ааа зачем мне это сложно"


Аноним 25/02/22 Птн 13:14:04 23061931445
>>2306137
Не угадал. Ещё попытка - и мы вам не перезвоним.
Аноним 25/02/22 Птн 13:18:54 23061991446
>>2306193
Наплевать
Если вещи похожи - это не значит что это одно и то же.
Это просто ты пытаешься выдать одно за другое
Те же паттерны прокси, адаптер, политика выглядят как братья в реализации - значит это один паттерн ага
Аноним 25/02/22 Птн 15:01:22 23062741447
Аноним 25/02/22 Птн 19:30:31 23065171448
Аноним 25/02/22 Птн 20:40:46 23065631449
>>2306517
Сцук. Я лучше нахуй тогда это погромирование брошу и за станок вернусь.
Аноним 26/02/22 Суб 09:30:49 23066991450
Нам сисярп не блокнут случаем? Его в Росси вообще будут использовать? Пендокомпании не побанят работников из Раши? Какие курсы по 1С посоветуете?
Аноним 26/02/22 Суб 10:25:11 23067071451
1645860310632.png 152Кб, 480x360
480x360
>>2306699
Кто ж его блокнет? Он же - опен-сорц!
Аноним 26/02/22 Суб 17:45:32 23070291452
>>2306707
Репозиторий локальный сделал уже? А от там это, интернет может быть всё
Аноним 26/02/22 Суб 19:13:51 23070781453
>>2307029
Двач, кстати, уже под дудосом второй день лежит, по джве минуты посты отправляются.
Аноним 28/02/22 Пнд 09:03:38 23079501454
>>2306517
Походил по ссылкам. Чушь полнейшая. Это русифицированный бейсик, блять. Я понимаю, что это тралинг такой, но надо же тоньше, блять.
Сегодня, во времена юникода, программирование на национальных символах - не проблема.
Проблема у этой жырноты в другом: после того, как 99% кодеров привыкли к описательной пунктуации в ключевых конструкциях, никто больше не вернётся к словесным ключевым конструкциям.
> Класс Собака : Млекопитающее { }
Короче, читаемее и эффективнее, чем
> Класс Собака Родитель Млекопитающее
> Конец Класса
Аноним 01/03/22 Втр 23:22:02 23090861455
Посмотрите на это позорище ебаное. Какое убогое чмо, стыдно что они пишут на таком же языке. Там ещё и у некоторых поддержавших в комментариях написана компания и должность, может устроим травлю ебанатам, чтоб их снесли с работы? Например Александра B Senior QA/Test Lead в Luxoft. Самое мерзкое и бессмысленное действие которое можно осуществить, электричество и ресурсы на ветер

https://dou.ua/forums/topic/36795/
Аноним 02/03/22 Срд 09:05:48 23091491456
>>2309086
> https://dou.ua
> ua
Не твоя личная армия, петушок. Иди воюй в специальный военный тред.
Аноним 02/03/22 Срд 18:32:52 23095711457
>>2305112
Зато читает ПР-ы в онлайн блокнотах.
Аноним 03/03/22 Чтв 09:08:15 23099341458
image.png 37Кб, 1000x368
1000x368
Сап аноны, хочу обучить нейронку с использованием Unity, а он использует C#. Вопрос следующий, какие библиотеки можно использовать для обучения нейросети?
В идеале хотел бы использовать tensorflow или pytorch, но как я понимаю, их под C# нет
Аноним 03/03/22 Чтв 10:06:39 23099621459
>>2309934
Нашел Unity ML Agents - выглядит, как то, что мне нужно!
Аноним 03/03/22 Чтв 16:08:33 23101901460
>>2309962
Хорошо, когда анон сам спрашивает, сам отвечает, и оставляет названия решений для потомков, для истории.
Аноним 03/03/22 Чтв 22:18:52 23104221461
всем привет! сори если оффтоп, но любопытно было бы узнать: есть ли здесь кто-то, кто свичнулся с дотнета и если да, то как впечатления, стоило ли оно того?
Аноним 03/03/22 Чтв 22:19:55 23104231462
>>2310422
Я ушёл с дотнета по трём причинам:
1. Мало кто использует язык в современных реалиях. В большинстве вакансий, что я видел был старый дотнет (который под винду), WCF и пр. Где-то даже мелькали WinForms и IIS. Очень редко можно было встретить вакансию с современными стеком и архитектурой.

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

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

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

А на го как-то побольше интересных вакансий
Аноним 04/03/22 Птн 01:41:52 23104911463
>>2310423
2 притянуто за уши
альтернативы?
Аноним 04/03/22 Птн 01:51:15 23104921464
>>2310491
Более того странно это выглядит в контексте перехода на ГО, который уж точно не про функциональщину.
Аноним 04/03/22 Птн 09:37:31 23105251465
Я после этого поста >>2310423 сходил в гугл, почитал про Го. Ну и дрисня.
> компилятор афтоматичиски добавляет ; в конец каждой строки
> поэтому нельзя переносить открывающую скобачьку { на новую строку
Нахуя, блять? Что за блажь ебучая? Зумерам из гугла было лень ; писать?
04/03/22 Птн 11:14:55 23105571466
Зачем нужен Mono, если .NET(Core)теперь и так кроссплатформенный?
мимонуб
Аноним 04/03/22 Птн 11:39:15 23105801467
>>2310525
Зайди в их тред, там еще больше веселого есть. На это специальный язык с низком порогом входа, на котором сложнее говнокодить. Не то чтобы невозможно, но просто заставить обычную макаку писать на нем простую хуйню не создавая проблемы.
Аноним 04/03/22 Птн 13:14:36 23106311468
image.png 2Кб, 1140x18
1140x18
Аноны, подскажите зелёному: 1) стоит ли тестировать котроллеры?
2) Если стоит, то как в тесте из Task<ActionResult<List<Zalupa>>> вытащить этот самый List<Zalupa>? result.Result.Value возвращает null, хотя в отладке видно, что значение есть (pic 1).
Аноним 04/03/22 Птн 15:20:14 23107081469
Возможно, мои мысли полная хуйня, но может же чисто теоретически Microsoft полностью огородить рашку от всех ее продуктов, в том числе и dotnetа? Тогда конец вакансиям на нем или я еблан как и всегда?
Аноним 04/03/22 Птн 15:30:46 23107101470
>>2310631
await ставил на вызов? Выглядит так будто ты резулт смотришь до того как выполнится task.
Аноним 04/03/22 Птн 15:36:17 23107151471
>>2310708
как они дотнет отберут? проверку по днк блять сделают в 7 коре?
Аноним 04/03/22 Птн 15:45:17 23107181472
>>2310708
тебе максимум лицензию на вижуалстудию продавать небудут. Но думаю это можно пережить.
Аноним 04/03/22 Птн 15:46:20 23107191473
>>2310715
Перекроют доступ к сайту, гитхабу, тем самым возможно пропадет 90% вакансий (стоит еще допустить, что Россию могут от тырнета отключить и будет как в Китае, свой)
Аноним 04/03/22 Птн 15:48:29 23107201474
>>2310719
"сайту" это ты про msdn? 90% из-за гитхаба и документации, что ж это за ахуенные вакансии такие?
Аноним 04/03/22 Птн 15:56:09 23107221475
>>2310720
я также и про доступ к новым версиям дотнета
Аноним 04/03/22 Птн 16:07:16 23107261476
>>2310722
Обойти блокировку раз в год очень сложно. Или ты из тех то обновляет кор при каждом обновлении?
Аноним 04/03/22 Птн 17:10:17 23107611477
посоны, чего можно на неткоре написать, чтобы освежить свои знания
Аноним 04/03/22 Птн 17:56:42 23107931478
>>2310557
Unity до сих пор на Mono, например.
Аноним 04/03/22 Птн 18:01:29 23107991479
Аноним 04/03/22 Птн 18:20:58 23108141480
.jpg 181Кб, 630x840
630x840
Смотрите. Есть веб-приложение. Оно генерирует JWT и отправляет мне. Я знаю секрет(это публичный ключ, который приложение крепит к запросу) и алгоритм подписи(ES512). Я хочу проверить что подпись валидна. Как мне это сделать?
Я просто тупой в этом плане немножко. Типа я понимаю как это концептуально делается: я должен просто взять, посчитать хеш ключа, затем взять и посмотреть что при хешировании вот этим вот ключем - заголовок и тело JWT - совпадают. Но блин. Я не понимаю как это делается на .net. Я гуглю - JWT Signature validation .net - мне выдает всякое добро про bearer, а мне не для авторизации нужно, а для своих темных дел, и проверка сигнатуры нужна исключительно чтобы знать от кого пришло. Опять же, я начал гуглить - и узнал много интересного про криптографию в .net - но те жк ecdsa у майков как-то странно работают, просто pem - нельзя, какие-то ебатеки с x509, плюс, пока читал - там еще ебатеки с тем что одно работает на линуксе - другое не. А у меня просто блин лежит файлик с публичным ключем и я хочу проверить что jwt-пришел от того самого приложения.
Аноним 04/03/22 Птн 18:24:05 23108171481
>>2310557
Потому что по желанию левой пятки - майки могут забить на кроссплатформенность, могут захотеть закрыть исходники, дам много чего могут сделать. МОНО - попенсорс, под божественной GPL, так что там - хуй, никуда не денется.
Аноним 04/03/22 Птн 21:50:54 23109491482
>>2310525
>Нахуя, блять? Что за блажь ебучая? Зумерам из гугла было лень ; писать?
Это та же хрень, что и с питоном. Сначала идет декларация "мы не любим скобки, скобки не нужны, нам хватит отступов", потом срач на кучу лет, что использовать в качестве отступов: табы или пробелы. А потом периодические статьи на тему: "как бы нам впилить скобки или их аналог в пайтон, а то неудобно ведь оказывается"
Аноним 04/03/22 Птн 21:56:24 23109571483
>>2310631
>стоит ли тестировать котроллеры?
В основном их и стоит тестировать.
Аноним 04/03/22 Птн 21:57:59 23109591484
>>2310718
А ее хоть кто-нибудь покупал? Я таких не разу не встречал.
Аноним 05/03/22 Суб 00:59:52 23111011485
>>2310959
Незнаю, все кого я видел сидят на комьюнити
Аноним 05/03/22 Суб 02:07:27 23111311486
>>2310817
> могут захотеть закрыть исходники, дам много чего могут сделать.
не могут захотеть. Иначе тогда они вернутся к тому, от чего так настойчиво бегут - "никто не хочет использовать язык и райнтам из-за закрытости". Предыдущее их "мы обещаем не преследовать" никого не убеждало, и только вот такая открытость стала вытаскивать язык из тени жавы.
Аноним 05/03/22 Суб 07:06:35 23111401487
>>2311101
Угу. Так же как и срайдером. Который вроде как и не принято пиратить, но у каждого второго он пираченый, а у тех кого нет, просто куплен на бабки кабанчика.
Аноним 05/03/22 Суб 12:50:53 23112261488
>>2310799
>Всё?
Похоже что всё, кто пишет в рашке под дотнет (MS санкционочка) и джаву (Oracle санкционочка) - повод задуматься о смене стека либо об эвакуации, так как репозитории и вся документация в скором времени перестанет быть доступна без танцев с бубном.
Аноним 05/03/22 Суб 14:27:17 23112761489
>>2311226
Хороший повод наконец пощупать go
Аноним 05/03/22 Суб 15:43:35 23113241490
Тупой вопрос: если функция очень часто и многократно вызывается, то объявление в ней локальных переменных является ресурсоемким действием? Насколько это шатает оперативу по сравнению с работой с уже инициализированной переменной?

Многократное выделение памяти и освобождение — это вообще естественный процесс?
Аноним 05/03/22 Суб 15:59:50 23113321491
>>2311276
> Хороший повод наконец пощупать go
Задумался я вчера. Полез гуглить, ознакамливаться. И БАЦ! БДЫЩ! БАБАХ! >>2310525
Аноним 05/03/22 Суб 16:15:53 23113381492
>>2310525
> поэтому нельзя переносить открывающую скобачьку { на новую строку
Чет подобное есть в жабаскрипте, у меня тогда сильно припекло.
Аноним 05/03/22 Суб 16:32:22 23113511493
>>2311338
Я (есличо) вернусь обратно на фрипаскаль (из которого пришёл в шарп). Он ПОЛНОСТЬЮ опенсорц, не имеет в зависимостях всяких ёбнутых зумерских виртуальных машин и байткода. Запускается на любой системе, включая очень экстравагантные.

Жаль конечно будет переходить обратно на begin end после таких-то удобных скобачек. Эххх...
Аноним 05/03/22 Суб 16:40:57 23113561494
>>2310525
>Нахуя, блять? Что за блажь ебучая? Зумерам из гугла было лень ; писать?
Я всё понимаю, но этого не понимаю.
мимо бесикоблядь

Я могу понять в чем хуевость динамической типизации, я могу согласиться с определенными пунктами обсирания VB; но единственное, чего я не понимаю, это ебучей точки запятой в каждой строке. Это самый тупой культ в программировании — только ради того, чтобы тебя посчитали "своим".

>>2310525
> компилятор афтоматичиски добавляет ; в конец каждой строки
> поэтому нельзя переносить открывающую скобачьку { на новую строку
"вам шашечки или ехать?"
Именно поэтому в VB отсутствуют открывающие скобки, но в GO решили избавиться от ; при этом оставить скобочки. А вообще попахивает несовершенством компилятора. Неужели в 2к22 нельзя научить компилятор при детекте скобок, учитывать контекст предыдущей строки, даже если там стоит ; ?

Аноним 05/03/22 Суб 16:44:34 23113621495
>>2311351
>Я (есличо) вернусь обратно на фрипаскаль (из которого пришёл в шарп).
Но это же безумие. Это не выход.
Аноним 05/03/22 Суб 16:49:47 23113671496
>>2311362
Дело привычки.

>>2311356
> я не понимаю, это ебучей точки запятой в каждой строке. Это самый тупой культ в программировании
Благодаря ей гугловский парсер разбирает код на термины. Действительно непонятно, зачем им точка с запятой, если у них уже есть конструкция области (scope), то есть скобачьки {}. Видимо так быстрее где-то в чём-то. Я гугловский го парсер не тестировал, не знаю.
Аноним 05/03/22 Суб 16:52:28 23113701497
>>2311356
> в VB отсутствуют открывающие скобки
В ВБ тем не менее есть области (scope) они начинаются ключевым словом, которое предполагает область и заканчиваются end'ом.
Аноним 05/03/22 Суб 18:04:54 23114241498
>>2311324
>локальных переменных
сами по себе локальные переменные повисают в стеке. Стек заранее выделен. А вот где их значения - зависит от типа
То есть если у тебя функция инициирует только переменные значимого типа - у тебя будет нулевая аллокация (если нигде не было упаковки)
В случае ссылочного - конечно в куче будет выделено место для значения, а ссылка повиснет в стеке

>Многократное выделение памяти и освобождение — это вообще естественный процесс?
памяти в куче если. это аггрит сборщик мусора. Потому alloc-free алгоритмы приносят свои плоды. Но нужен здравый смысл.
Смотри на частоту сборок мусора и оптимизируй (по возможности) горячие места.
Туда же и memory traffic - незачем копировать если можно не копировать.

Аноним 05/03/22 Суб 18:17:02 23114371499
>>2311367
>Благодаря ей гугловский парсер разбирает код на термины.
Есть такой локальный язык Zscript для программы Zbrush — там для удобства парсера абсолютно любая операция заключается в скобки. Ну просто песня для парсинга. Зацени объявление переменной MyVariable и присвоение числа 5:
[VarDef, MyVariable, 5]
Просто присвоение там вот такое:
[VarSet, MyVariable, 10]
Шо фсё? Нет, не фсё? Как тебе сложение:
[VarAdd, MyVariable, 42]

А вот с точки зрения человека, там лютый трэш.
[[[Код] превращается], [[в] мегатонны] скобочек]
Но компилятору удобна )))))

Аноним 05/03/22 Суб 18:40:27 23114641500
>>2311437
Забавная хрень. Бывает же!
Аноним 05/03/22 Суб 20:55:00 23115291501
>>2311356
Потому что блять, код не только пишется, но еще и рефакторится и отлаживается. И вот если в первом случае все эти модные флюшки вроде отсутствия точек с запятыми или отступы вместо скобок еще норм, то вот во втором и третьем случае начинается пиздец.
Аноним 06/03/22 Вск 02:07:45 23116651502
>>2311529
Отказ от точек с запятыми вообще никак не влияет ни на отладку ни на тем более рефакторинг, чем меньше символов на экране тем проще воспринимается текст.
Аноним 06/03/22 Вск 02:13:56 23116671503
>>2310710
Да, ставил. Второй день пытаюсь, если не лист залуп возвращать, а инт например, то копипаста того, что сейчас возвращает нулл, возвращает нормальное значение.
Аноним 06/03/22 Вск 16:59:11 23118991504
Сап всем анонам. Есть строки, каждая из которых дополняется набором атрибутов (строчных), причём для разных строк могут встречаться одни и те же атрибуты. Для всех таких строк есть базовая строка без атрибутов - ключ в словаре, к которому значением является словарь с вложенными строками и их атрибутами. Строк, как и атрибутов, может быть овердохуя.

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

Я хэширую каждый атрибут и запоминаю в отдельный словарь атрибутов (получается Dictionary<string, long>). Для атрибутов каждой вложенной строки хэш составляется как произведение всех хэшей её атрибутов. Итоговый словарь, по которому ищу - Dictionary<string, Dictionary<long, string>>. Собственно, найти какую-нибудь вложенную строку от базовой прохэшировав атрибуты я могу, но как получать именно первый результат? Была мысль заменить хэширование в атрибутах на использование последовательности простых чисел, но это тоже кажется костылём.
tl;dr как хэшировать всё множество так, чтобы понимать, что некоторое подмножество содержится в нём?
Аноним 06/03/22 Вск 18:14:40 23119481505
Аноним 06/03/22 Вск 18:28:11 23119601506
>>2311948
Если навешивать к атрибутам в конце пути по дереву строки, то в моём случае миллионы строк могут висеть после конечного узла. Например есть атрибут существительного и лярд существительных. А ещё префиксное дерево не особо уживается со структурой, при которой есть базовая строка и связанные с ней вложенные. По крайней мере не понимаю как это увязать.
Аноним 06/03/22 Вск 20:13:13 23120101507
>>2311960
Ты случайно не проходишь стажировку в скб контур?
Аноним 06/03/22 Вск 20:32:32 23120131508
>>2312010
Случайно прохожу. Поздно начал только с заданиями, плюс откисал неделю после великой победы пыни.
Аноним 06/03/22 Вск 20:51:04 23120211509
>>2312013
Я перестал делать т.к на основной работе дохуя тасков, нет времени + еще на две работы пригласили, так что нет смысла идти к ним
Аноним 06/03/22 Вск 21:06:09 23120301510
>>2312021
Я студентота в поисках стажировки/работы, поэтому хватаюсь за всё.
Аноним 06/03/22 Вск 21:16:53 23120361511
>>2312030
А ты сам откуда? Может помочь могу, Контур это слишком большая контора для вката с нуля, слишком большие требования и там не требуются джуны
Аноним 06/03/22 Вск 21:19:14 23120401512
>>2312036
Из Перми. По поводу требований ощутил, конечно.
Аноним 06/03/22 Вск 21:24:15 23120421513
>>2312040
Не иди на двач за вопросами по таким заданиям, лучше на ruSO или обычный SO
Аноним 06/03/22 Вск 22:02:59 23120551514
>>2312042
Спасибо, анон. Впрочем, решил задачу ту, просто не совсем эффективно.
Аноним 06/03/22 Вск 22:25:33 23120671515
Как узнать размер пустого листа? Или в частности насколько сильно различается отжираемая память экземпляра класса А и листа, содержащего один экземпляр А?
Аноним 07/03/22 Пнд 01:33:39 23121441516
>>2311899
А сколько у тебя тех атрибутов? Может проще их флагами битовыми заебенить, а потом по маске просто искать.
Аноним 07/03/22 Пнд 05:35:03 23121601517
Помогите пожалуйста, я пока тупенький джун и у меня возникла проблема с запросами к БД из нескольких потоков. Юзаю EF 6.
Суть задачи:
Есть некий товар и его остаток на складе, например 100 штук, товар можно забронировать, тогда его остаток на складе уменьшается на определённое число а в другую таблицу соответсвенно пишется запись о брони таким-то юзером такого-то товара. Собственно проблемы у меня начинаются когда допустим 10 потоков пытаются бронировать 1 товар. Например 10 потоков по 100 раз бронируют по 2-3 штуки товара, мне нужно чтобы:
товар доставался первому бронирующему в честной конкурентной борьбе - кто первый бронирует, тому и достаётся товар
не получилось так, чтобы забронировался товар без остатка
верно подсчитывался остаток после бронирования
верно сохранялась информация о брони
Плдскажите в какую сторону копать пожалуйста.
Аноним 07/03/22 Пнд 10:39:35 23121921518
>>2312144
99 штук. С битовыми масками годная идея, попробую, спасибо.
Аноним 07/03/22 Пнд 12:34:53 23122341519
>>2312160
Ну с дивана могу посоветовать добавить товарам блокировки, а лучше состояния. Кажется в СУБД такое искаропки есть.
Смысл в том, что если товар получил запрос на некую транзакцию, он переводит своё состояние в "занято", и сколько бы ни было потоков, они при открытии транзакции получают ответ, что занято и надо подождать.
Когда первая транзакция завершится, открывается вторая в очереди. Статус не меняется, очередь растёт. Насколько это уязвимо к хайлоаду я ХЗ. С дивана же советую.
Аноним 07/03/22 Пнд 13:04:16 23122441520
Аноним 07/03/22 Пнд 13:05:10 23122461521
Аноним 07/03/22 Пнд 14:51:29 23123591522
>>2312234
Ну это решение мне приходило в голову, одна проблема, не знаю как написать такую "очередь"
Аноним 07/03/22 Пнд 16:04:46 23124311523
>>2312234
Если на одну транзакцию уходит 0.5 секунды для юзера, то при 1000 пользователях конечному придется ждать 500 секунд?
Аноним 07/03/22 Пнд 16:49:24 23124581524
image.png 14Кб, 649x266
649x266
image.png 11Кб, 1170x74
1170x74
Аноны, которым удалось добавить авторизацию через гугл, КАК ВЫ ЭТО СДЕЛАЛИ?

Я следовал инструкции:https://developers.google.com/identity/sign-in/web/sign-in

получил свой OAuth 2.0 айди 32082523667-b4a2752lb52cq01popq6hgcqvbeхххх.apps.googleusercontent.com

в итоге у меня ошибка пик 2

Они хоть бы написали в чем дело, почему не работает? Я же понятие не имею!

Аноним 07/03/22 Пнд 17:20:08 23124781525
image.png 254Кб, 500x500
500x500
>>2312458
Может кто-то спокойно обяснить что они хотят? потмоу что в их документации какая-то шиза от

Просто вставте копипаст себе на страницу и все будет работать до
вам нужен этот айди, но зачем мы вам не скажем, а вообще запилите видео на ютуб как вы разрабатывали сайт.
Аноним 07/03/22 Пнд 17:40:02 23124931526
Аноним 08/03/22 Втр 06:39:24 23128011527
>>2312160
Лол, кек. Волгоград?
Я похоже знаю в какую контору ты вкатываешься.
Аноним 08/03/22 Втр 06:54:44 23128021528
Не волгоград
Аноним 08/03/22 Втр 07:42:06 23128091529
>>2312802
Забавно, а задание один в один как тестовое в одну из местных контор.
Аноним 08/03/22 Втр 08:02:11 23128121530
>>2312809
И ты делал? поделись))))
Аноним 08/03/22 Втр 10:26:51 23128451531
>>2312801
Лол, тут оказывается не только я из волгограда. Вроде конторка интегрикс называется, я не подавал, но у меня друг туда кидал резюме и ему давали такое же тз.

Анончик, а ты где работаешь?
Аноним 08/03/22 Втр 21:06:06 23131151532
Пр/в есть 10 классов у которых одинаковый конструктор, полостю. Т.е. один объект, как один аргумент и инициализация свойства класса этим объектом.
Как сделать инициализацию проще?
Один раз передали объект без усилий инициализации 10
Аноним 08/03/22 Втр 21:48:34 23131481533
>>2313115
> Как сделать инициализацию проще?
Фабрикой.
Аноним 09/03/22 Срд 01:15:50 23132911534
Аноны, никто не знает, как наебать джетбреинс с их райдером на линуксе?
Аноним 09/03/22 Срд 04:24:29 23133121535
>>2313291
заплатить за лицензию, но кодить на визуал студии )
Аноним 09/03/22 Срд 08:24:05 23133331536
>>2313312
А если не хочется платить за лицензию?
Аноним 09/03/22 Срд 10:18:05 23133501537
>>2313148
Где более-менее есть примеры
Аноним 09/03/22 Срд 11:14:58 23133691538
>>2313333
Тогда надо пройти нахуй.
Аноним 09/03/22 Срд 11:41:18 23133751539
>>2313333
тогда гуглить ja-netfilter на гитхабе
Аноним 09/03/22 Срд 15:32:59 23135001540
>>2312845
>Вроде конторка интегрикс называется,
Я х.з. не помню контору только город.
>я не подавал, но у меня друг туда кидал резюме и ему давали такое же тз.
Я тоже не подавал, кореш мой устраивался. Лол, может ты это я?
Аноним 09/03/22 Срд 16:14:05 23135201541
>>2312812
>И ты делал? поделись))))
Нет, не делал. Но там ничего сложного.

На бэке ебашишь сервис с бд, через асп.нет. В бд минимум две таблицы - одна с остатками товара, вторая в которой информация о зарезервированном товаре.
У сервиса делаешь два маршрута. Один принимает заявку на бронирование, заявке присваивается гуид, она помещается куда-нибудь в кэш заявок (или отдельная, третья, таблица необработанных заявок в б.д. или синглтон какой-нибудь - на уровне задачи похуй, но в реале бд надежнее) и в ответ на запрос возвращает гуид заявки.
Имея этот гуид сервис может обратиться по второму маршруту и узнать статус заявки:
- необработана (заявка все еще в очереди)
- обработана-товар зарезервирован,
- иди нахуй - товара нет

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

На клиентской части просто делаешь библиотеку с двумя апишками. По одной делаешь заявку, по второй проверяешь статус. Потом цепляешь эту библиотеку к любой приложухе, хоть консоль, хоть wpf и в кучу потоков начинаешь резервировать товары.
Аноним 10/03/22 Чтв 09:01:21 23139081542
>>2313520
Ля как сложно. Нипанятна.
Аноним 10/03/22 Чтв 10:24:16 23139441543
>>2312160
Сделал бля, отправил на проверку, итог:
Комментарий от тимлида: Вы смогли защитить код метода Reserve в рамках одного процесса - теперь представьте, что ваша программа работает в нескольких экземплярах. как будет работать бронирование товаров в этом случае? Я думаю, что Вам нужно еще подумать над решением.
Аноним 10/03/22 Чтв 13:43:39 23140451544
>>2312067
Если у тебя в шарпе возникают такие вопросы, то ты где-то пошел не туда. Пальцем в небо могу предположить, байт на 50-100, для ссылочного типа.
Аноним 10/03/22 Чтв 15:08:45 23140941545
>>2314045
Да это просто загон был. Иногда трудно справиться с приступами преждевременной оптимизации.
Аноним 10/03/22 Чтв 15:22:37 23141091546
>>2313944
Синглтон ебани потокобезопасный и мозг не еби. А на претензии, что не ООП-угодно говори, что пацаны во дворе сказали, что норм будет. А если честно, то х.з. мы же не знаю,что там у тебя.
Алсо, если ты действительно устраиваешься в ту контору о которой я думаю и хочешь устроится, то спокойно переделывай тестовое и посылай по второму разу. Шансы пройти есть, если норм сделаешь. Можешь даже еще времени недельку попросить.
>>2313908
> как сложно. Нипанятна
Это уровень примерно 4...5 месячного вкатунца с говнокурсов. Т.е. даже не джуна.
Аноним 10/03/22 Чтв 18:50:42 23142781547
двачик, помоги. Где можно скачать пиратку rider'а от jetbrains и при этом не нахватать вирусов?
Аноним 10/03/22 Чтв 19:31:20 23143251548
>>2313944
Ишак ебаный. Динахуй отседава
Аноним 10/03/22 Чтв 19:43:31 23143381549
Аноним 10/03/22 Чтв 20:37:38 23143631550
>>2314278
да еп. выше ж написали куда копать
что за ленивый народ
Аноним 10/03/22 Чтв 21:09:20 23143761551
1077383c71773da[...].jpg 346Кб, 1336x1806
1336x1806
Что в шарпе есть для реализации ECDH?
ECDiffieHellmanCng - какая-то хрень. Во-первых, судя по тому что мне студия пишет - только под винду, во-вторых, слишком уж много возни.
Мне-то нужно положить байтики публичного ключа клиента, байтики своего приватного ключа и создать таким вот образом сессионный ключ, чтобы закодировать сообщение.
Пример от майков-то работает, но там нужно либо сертификаты, либо с байтиками, но тогда, как мне студия пишет - только под винду.
Я наверное чего-то не понимаю или не знаю.
Кто-нибудь с криптографией на шарпах-то дело тут имел? Можете пояснить?
Аноним 12/03/22 Суб 17:09:19 23154941552
Посоны, пишу на дотнете. Дома неплохой десктоп, но сейчас срочно нужен ноутбук на случай ... длительной зарубежной командировки.
Нужен недорогой - на месте потом можно купить мощнее за валюту.
Хватит ли i3, или прямо обязательно i5? В связи с затратами на... командировку все ресурсы на счету до цента.
Аноним 12/03/22 Суб 18:48:24 23155181553
>>2315494
Чел, ну что ты как целка выдумываешь тут командировки всякие. Так и скажи - "Пацаны я обосрался и съябываю заграницу роняя в спешке кал"
А если по теме, то хуй тебя знает. Если ты каким-нибудь гейдевом на юнити занимаешься, то с i3 тебе будет мучительно и больно. Если ты крудошлеп, то тебе меньше за глаза хватит. Опять же не все от проца зависит, количество оперативы тоже критично, ну и слишком медленный винт тоже головной боли добавит.
Аноним 12/03/22 Суб 18:52:00 23155201554
>>2313944
Чел, я тебе могу сказать, уже то что тебе, джуну, тимлид хоть какой-то фидбек дал на твое тестовое, говорит, что ты не совсем пропащий. Т.е. если поднапряжешься и исправишь косяки, то имеешь все шансы вкатиться.
Обычно все ограничивается отпиской от самой эчарши, вроде "вы нам не подходите", без подробностей. А чаще всего джунам даже не отвечают.
Аноним 12/03/22 Суб 20:36:16 23155801555
0e0a1b4124544de[...].jpg 287Кб, 1152x1120
1152x1120
Почему никто не отвечает на мои вопросы? Я настолько дегенерат разве, и вопросы такие простые, что их предпочитают игнорить?
>>2314376
>>2310814
Аноним 12/03/22 Суб 20:45:22 23155851556
1647107120716.jpg 175Кб, 951x1500
951x1500
>>2315580
Я не знаю, что тебе ответить, это слишком сложно для меня. А остальные аноны треда по подвалам сидят без интернетов. Такщта воть. Держи няшку. Не расстраюйся.
Аноним 12/03/22 Суб 21:49:20 23156191557
>>2315580
Варианты:
1) Большинство не знает
2) Те кто знают, понимают, что это выходит за рамки стандартных знаний по использованию jwt, сертификатов и т.д. и такая информация не выдается просто так хуй пойми кому. И дело даже не в какой-то секретности, а в том что на получение подобной инфы приходится тратить усилия отличные от "посмотреть туториал все о шифровании за полчаса".
3) Мутный ты какой-то. Возьмет анон поможет тебе, а ты его же завтра скамить этим будешь.
Аноним 13/03/22 Вск 20:20:15 23161661558
>>2315518
Не было нужных моделей с i5, взял с Ризеном 5.
SSD на 512, 8 оперативки. Я крудошлёп, но юнька - хобби.
Аноним 14/03/22 Пнд 03:31:18 23163481559
Приветствую всех, ребзя. Коротко о себе: студент первого курса деревенского вуза, после 1 курса в голову ударила моча, и я понял, что нужно ебошить, чтобы стать специалистом. Сейчас планирую немного подзабить на ненужные дисциплины в вузе и вкатываться в Шарп(веб разработка). Учусь по The Player's Guide + metanit.com, решаю простые задачки, но понимаю, что нужно закреплять всё чем-то более серьёзным. Пока что 3-я неделя изучения, к ASP.NET даже не притрагивался. Может ли кто-то натолкнуть на верный путь, как лучше взяться за основы веба? Стоит ли вообще идти в веб, если интеллектуальные способности ниже среднего? Буду благодарен каждому ответу.
Аноним 14/03/22 Пнд 09:49:15 23164161560
>>2316166
В принципе на форсмажорные времена сойдет. Если конечно ты не собираешься кучу серваков в докере крутить, то сойдет.
Удачи в бегстве. Расскажешь потом как доехал.
Аноним 14/03/22 Пнд 10:01:49 23164211561
>>2316348
>Сейчас планирую немного подзабить на ненужные дисциплины
Плохая идея. Ты либо забивай совсем на все, либо тащи все. Преподы необязательных дисциплин как раз и кормятся с таких, как ты т.к. прекрасно понимают, что может тебе их сраная философия или история нахрен не нужна, но если ты не сдашь ему зачет, то хуй ты допустишься до сессии и соттветственно, хуй ты дальше пойдешь.
Если уж решил забивать, то договаривайся с преподами сразу на берегу, в начале, что не будешь учить их предмет и во что тебе это обойдется.

>The Player's Guide
Судя по описанию, очередная хуета для зумерков, для которых обычные методы обучения - "сложна,..". Модное обучение в околоигровой форме, для даунов у которых проблемы с концентрацией на одной теме длительное время.

>metanit.com
Забудте вы про метанит. Это хороший сайт, но он не для обучения. Основное его назначение, это "бля забыл, как эта хуета правильно используется, загляну по быстрому в справочник".
Если ты будешь по нему учиться, то мимо тебя пройдет дохуя нужной информации.

>Пока что 3-я неделя изучения, к ASP.NET даже не притрагивался.
Еще полгода-год можешь и не притрагиваться, пока основы шарпа нормально знать не будешь.

>Может ли кто-то натолкнуть на верный путь, как лучше взяться за основы веба?
Ебашишь базу, потом Asp.Net in action.

>Стоит ли вообще идти в веб, если интеллектуальные способности ниже среднего?
Стоит учиться и становиться умным, тогда можешь хоть куда идти.
Аноним 14/03/22 Пнд 10:07:19 23164261562
>>2316348
>Буду благодарен каждому ответу.
Забыл сказать. Я бы советовал читать Албахари. Причем и полную версию для методического изучения. И краткую версию справочника таскать постоянно с собой, чтобы читать в свободное время и обновлять знания.
Аноним 14/03/22 Пнд 12:16:33 23165261563
Ананасы, посоветуйте годный плейлист по шарпу на русском.
Аноним 14/03/22 Пнд 14:00:55 23165691564
Аноним 14/03/22 Пнд 18:34:49 23167211565
>>2290398
ты заебистый, уже не понятно зачем брать такого заебистого. джун должен делать так как принято и не выебываться.
Аноним 15/03/22 Втр 09:51:48 23169971566
Screenshot3.png 42Кб, 1221x232
1221x232
Screenshot4.png 73Кб, 1244x629
1244x629
Я так отчаялся что пришел сюда.
Почему он в запросе это выдаёт?
Timeouts are not supported on this stream.
Аноним 15/03/22 Втр 16:54:30 23171881567
>>2316997
А что он должен выдавать? MemoryStream не поддерживает таймаут (в силу бесполезности) и сообщает об этом.

Почему MemoryStream? Да потому что клиент по дефолту он читает все тело ответа прежде чем вернет. И читает он его в MemoryStrea. Чтобы возвращал управление сразу после того как пришли хидеры, нужно указывать HttpCompletionOption.ResponseContentRead

Тогда можно будет сразу после получения хидеров получить поток и сразу из него читать (но конечно не в твоем случае ибо у тебя вообще положено на асинхронность .Result вместо await)
Аноним 15/03/22 Втр 16:55:16 23171901568
>>2316997
блин
HttpCompletionOption.ResponseHeadersRead
Аноним 15/03/22 Втр 23:11:12 23174531569
image.png 18Кб, 368x96
368x96
image.png 17Кб, 367x156
367x156
Есть переменные (пик 1) и проверка (пик2). Проблема в том, что когда я добавляю подобную переменную - мне нужно модифицировать и код проверки, а хотелось бы чтобы все добавлялось в одном месте. Сюда бы подошло что-то вроде енамов со стринговыми значениями, но их в шарпе, насколько я понял, нет. Есть ли какой способ использовать в коде именованные строки, чтобы можно было добавлять их в одном месте, не городить кучу классов для этого и не ебаться с рефлексией?
Аноним 16/03/22 Срд 00:35:25 23174831570
1.png 24Кб, 634x280
634x280
2.png 13Кб, 572x135
572x135
3.png 1Кб, 84x55
84x55
>>2317453
Ну, допустим...
Я другого способа не знаю.

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

А вот в жаве - есть енумы, которым можно какие хош значения прихуячивать. Вот я хуй знает почему все так копротивляются такие же в шарп добавить. Охуенная вещь же.
Аноним 16/03/22 Срд 00:37:34 23174841571
>>2317483
Да, я как обычно еблан, забываю что в Any можно так же передавать условие. Т.е. то что в Where - в Any можно запихать и на строчку меньше выйдет.
Аноним 16/03/22 Срд 02:07:56 23175041572
>>2317483
>Ну, допустим...
447>Можешь конечно запилить, допустим, словарик с Enum'ом ключ - элемент enum'а значение - строка.
Так а профит в чем? Все равно для добавления нужно лезть и в enum, и в словарь.
Аноним 16/03/22 Срд 02:14:05 23175061573
>>2317483
А как ты скриншоты делаешь, что они у тебя по порядку нумеруются?
Аноним 16/03/22 Срд 06:56:18 23175411574
>>2317453
Выглядит как попытка удаления гланд через задницу
>>2317483
А вот и месье проктолог с рабочим результатом

Аноним 16/03/22 Срд 07:02:31 23175431575
>>2317453
Ну а если серьезно. Нахуа?
Какой кейс ты пытаешься решить этим?
Если ты используешь константы, то присваивая эти значения где-то в коде ты и так знаешь, что ты присваиваешь (хотя судя по тому, что ты называешь их переменными, ты слабо представляешь что представляют из себя константы в шарпе)
Если ты берешь это откуда-то динамически, то нахуй тебе константы.
Ну и судя по содержимому, все это вполне можно через какой-нибудь конфиг прокидывать и брать оттуда.
Аноним 16/03/22 Срд 07:18:34 23175441576
>>2317483
>Вот я хуй знает почему все так копротивляются такие же в шарп добавить.
1) С учетом того как устроены строки под капотом шарпа (а точнее clr) - нахуй не нужны
2) С учетом разных альтернатив (вплоть до запиливания собственного енама) - тоже нахуй не нужны.
Аноним 16/03/22 Срд 11:07:51 23175951577
Аноним 16/03/22 Срд 12:55:55 23176481578
16427635737980.png 349Кб, 640x676
640x676
АХАХА КАКОЙ ЖЕ УЕБИЩНЫЙ ЯЗЫК
Самодостаточность? Нет, нахуй нужно. И еще какой-то кретин пиздел в тредике про низкоуровеньщину.
https://github.com/dotnet/corert/search?l=c%2B%2B&p=4

Рантайм, тобишь БАЗА до сих пор на крестах, то есть без крестов это говно нормально нигде не запуститься.

Когда вы пишите на крестах, вам никто не нужен, но всем нужны кресты. Какая ирония. А могли бы один язык выучить и спокойно заниматься настоящим программированием, а не выступать в веб цирке с gay.js клоунами
Аноним 16/03/22 Срд 13:26:01 23176611579
>>2317648
>Рантайм, тобишь БАЗА до сих пор на крестах, то есть без крестов это говно нормально нигде не запуститься.
Вот бы мне еще на это не похуй было.
Аноним 16/03/22 Срд 13:26:17 23176621580
image.png 526Кб, 604x653
604x653
>>2317648
>заниматься настоящим программированием
Аноним 16/03/22 Срд 14:21:55 23176991581
>>2317648
Вот будет дефицит серверов (если даже серые через Казахстан/Армению/Турцию/етц не смогут ввозить), тогда и будем на крестах писать
Аноним 16/03/22 Срд 15:53:58 23177351582
AmpleAmusingHaw[...].gif 1787Кб, 444x250
444x250
>>2317661
>пук

>>2317662
>пук

>>2317699
>среньк

Доска вроде /pr/, a где программисты то, в тредах системщины, а вы просто девелоперы?
Аноним 16/03/22 Срд 18:41:58 23177971583
>>2317648
> Рантайм, тобишь БАЗА до сих пор на крестах, то есть без крестов это говно нормально нигде не запуститься.
Ты не понимаешь вообще, что такое рантайм, няша.
Аноним 16/03/22 Срд 19:30:26 23178401584
>>2317648
А в чем проблема? Ну gay.js так gay.js, почему меня должно сильно беспокоить, что где-то там в недрах CLR есть код на С++? Зачем дрочить на самодостаточность?
Аноним 16/03/22 Срд 19:33:00 23178441585
>>2317648
Самодостаточность - это про Golang, где и компилятор, и рантайм написаны на Go.
Аноним 16/03/22 Срд 22:27:58 23179541586
image.png 29Кб, 978x227
978x227
image.png 26Кб, 682x490
682x490
>>2247357 (OP)
Есть задание, где пользователь выбирает раздел реестра.
Как можно реализовать выбор раздел реестра?

Через folderBrowserDialog не может выбраться путь с реестрами, всегда мне выдаёт дефолтный "Мои документы", хоть я и кодом пытался выставить систему, потом в настройке на форме тоже выставлял систему, нихуя.
Аноним 16/03/22 Срд 22:51:53 23179601587
Аноним 16/03/22 Срд 22:55:10 23179661588
image.png 69Кб, 1510x240
1510x240
>>2317960
>Если тебе нужно сорт-оф regedit
Ну мне нужно чтобы пользователь зашёл в regedit и выбрал там папку.

Через folderBrowserDialog нельзя зайти в регистры. думал может там изначальный путь изменить можно чтобы зашёл грубо говоря в regedit

Задание пикрил
Аноним 17/03/22 Чтв 01:04:23 23180351589
Стоит ли создавать сайт на си шарпе? Профессионально занимаюсь разработкой .net приложений и unity приложений. Поступил заказ на сайт. Стоит ли ебаться с си шарпом? 3 часа разбирался в ебанном пхп и ларавель, говнище полнейшее.
Аноним 17/03/22 Чтв 01:44:17 23180491590
>>2318035
если не знаешь пхп, то зачем делать на пхп?

На шарпе конечно сильно приятнее, чем на пхп. СИЛЬНО.
Аноним 17/03/22 Чтв 13:40:05 23181971591
>>2317966
Реестр - это не папка где-то на диске. Это файл с базой данных где-то на диске. Стало быть, стандартным диалогом он не откроется. Вообще никак. Ответ тебе дали. Иди по ссылке читай.
Аноним 17/03/22 Чтв 13:41:52 23181981592
>>2318197
Кстати, если бы майки догадались переименовать "реестр" в "Windows Settings Database" - все зумеры были бы их.
Аноним 17/03/22 Чтв 17:01:32 23183041593
Аноним 17/03/22 Чтв 20:35:16 23185211594
Объясните плиз с MVC и EF:
С EF Core сделал код фёрст базу данных (делаю имиджборду на MVC).
Class Board (id, name, List<Thread>)
Class Thread (id, text, List<Post>)
Так вот - добавил миграции, апдейтнул бд - всё ок. Все в бд зависимости и связи тоже - У таблицы Threads есть столбик BoardID, всё ок.
Вопрос - Я хочу в контроллере BoardsController через экшн GetThreads получить все треды на борде выбранной. Как это сделать? Я хотел что-то типа
public IActionResult GetThreads(int? id)
{
var threads = _context.Threads.Where(t => t.BoardID == id);
return View(threads);
}
Но естественно у Threads мне недоступен BoardID, потому что в классе не описан (а в бд создался еф кором)
Как мне такое вот сделать?
Аноним 17/03/22 Чтв 20:54:12 23185331595
>>2318521
Я погуглил - Я типа обязательно в свойствах класса должен указать что-то типа public int BoardId?
Аноним 17/03/22 Чтв 22:42:33 23186291596
Подскажите лучший ресурс, книги, курсы для изучения WPF. Можно на английском. Хочу сделать лучшее в своём классе приложение
Аноним 17/03/22 Чтв 22:52:04 23186401597
Аноним 17/03/22 Чтв 22:59:04 23186481598
>>2318640
Я как то натыкался на эти уроки, там вроде не супер подробно объясняется, мне бы посильнее разжевать надо
Аноним 18/03/22 Птн 08:48:49 23187471599
>>2318533
Вот оно, развращающее влияние юнити на мозги. Да, прикинь, должен.

Это, для тех кто не в курсе, у юнити принято класть хуй на модификаторы доступа и через атрибуты редактор юнити с лёгкостью получает доступ к приватным членам классов в скриптах. Это пиздец, нахуй!
Аноним 18/03/22 Птн 11:55:41 23188111600
>>2318747
Ну блин, я первый раз код Фёрст делаю, до этого всегда проектировал бд руками и скаффолдил так сказать, а в обратную сторону даже не подумал чёт
Аноним 18/03/22 Птн 13:05:21 23188441601
Аноним 18/03/22 Птн 13:50:50 23188751602
Анонасы, есть такая проблема. Пишу на WPF

Надо запускать сканирование папки на наличие новых файлов (если файлы есть - отправляю по API контрагенту).

Так же, если есть файлы от контрагента - скачиваю их.

Я хочу это запихнуть в одну ViewModel и в конструкторе вызвать методы (условно) "Outbound.Start()", "Inbound.Start()", но есть одно но: я так полагаю это нарушает ебаный принцип единой отвественности ибо моя VM становится ответственнена за включение и выключение каких-то двух хуёвин. Че делать? Или норм?
Аноним 18/03/22 Птн 14:03:45 23188861603
>>2318875
ну всякие действия в конструкторе кроме присвоения полей - зло

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

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

так то VM в MVVM - НЕ ЗНАЧИТ что нужно делать канонично все. Нет никаких правил описывающих как именно должен быть реализован этот слой. Потому мудри что хочешь, лишь бы фреймворк позволял
Аноним 18/03/22 Птн 16:49:15 23189441604
Анончики, а что вот написать джуну в резюме? У меня 8 месяцев опыта работы. Текущее моё резюме выглядит так. Что можно добавить/удалить/изменить?

Изучаю C# 1.5 года
Чем владею:
• C#
• WPF (MVVM), WinForms
• Entity Framework Core
• xUnit
• Autofac
• MS SQL
С чем знаком:
• ASP.NET (MVC)
• Migrations
• Neo4j
Был опыт работы с HTTP протоколами, сокетами (tcp/udp), портами.
Знаю принципы SOLID, GoF паттерны и некоторые паттерны для параллельного программирования, DI/IoC, автотесты
Аноним 18/03/22 Птн 16:55:40 23189481605
>>2318944
зачем удалять что-то?
имел дело с чем то,значит знаком и потому упоминаешь. Значит тебе не нужно с нуля изучать эту технологию.
Ты же не утверждаешь что ты в этом списке во всем профи, а всего лишь то, что ты можешь с этим работать.
Аноним 18/03/22 Птн 18:32:42 23189991606
>>2318944
К Autofac'у добавиь стандартный майкрософтовский DI
К EF добавь еще какую-нибудь orm, даппер там, или еще что-нибудь.
Хорошо когда указан уровень владения sql-ем. Плюс одного MS SQL мало, хотя бы постгрес изучи.
Напиши, с чем конкретно работал с .Net Framework и .Net Core. (даже если это очевидно, все равно пиши)
Nlog
Rest API
Аноним 18/03/22 Птн 20:55:03 23190991607
0cad05d64dcb3bb[...].jpg 190Кб, 637x900
637x900
В общем. В качестве тестового задания дали сделать прокси на шарпе.
Типа веб-сервис, есть списочек СПА-приложений с путями. Нужно чтобы пользователь по условному пути: www.example/app1 - получал веб-морду спа-приложения и работал с ним будто к нему напрямую подключился.
Я просто хуйнул мидлварь. Беру из контекста имя приложения, смотрю в списочке, пересылаю запрос куда надо, копирую результат.
Так вот. С чем столкнулся в контексте СПА. 1. По какой-то непонятной причине - все, блядь, поганят роут на стороне фронта, в результате - все что более-менее статичное - работает, но если хуйня пытается к своему апи обращаться - все, пизда. 2. В не СПА, допустим приложение это обычный yginx который дергает пхп-скрипты - при попытке скрипты эти выполнить - белая страница, при том что судя по тому что отдает сайт - HttpClient - я все нормально получил, достал заголовки, ответ скопировал, но нихуя. Ну и мелкая проблема была, но ее довольно просто решил - это то что скрипты, стили - не грузились через прокси, но это таки решается тем что я заменяю все стандартные пути на мое прокси и через него гоняю.
Так вот. Как решить 1 и 2? Я не понимаю. Типа эти пути - могут быть захардкожены в приложении и так же просто как с ref="/img/lol.png" - не получится.
Кто делал подобное? Как это делается?
Аноним 18/03/22 Птн 22:01:08 23191371608
>>2318844
Еба, огромное спасибо за эту годноту, я думал кроме Флибусты нет сайтов подобных
Аноним 18/03/22 Птн 22:33:53 23191521609
>>2319137
да книги то не проблема. проблема - сами книги
книги == очень медленное и обычно "не туда" повествование. Я вот не могу книги ну никак. только статьи, чужой код...
А книги ну слишком нудно
Аноним 18/03/22 Птн 23:22:54 23191751610
>>2319152
Не знаю, мне почему-то в книгах больше нравится, там подробнее объясняют, есть какие-то контрольные точки. В хорошим по крайней мере.
Аноним 19/03/22 Суб 12:00:46 23193231611
>>2319152
Ты просто не умеешь работать с книгами. У книг есть оглавление. Есть номера страниц, которые можно пролистать по ссылке из оглавления. Прииикииинь? Оказывается, книгу не обязательно читать от начала до конца! Можно заглянуть в середину и даже (о ужас!) в конец и сразу узнать, чем закончится!
Аноним 19/03/22 Суб 16:14:44 23194091612
>>231932
>Оказывается, книгу не обязательно читать от начала до конца!
А еще ее можно вообще не читать, а нагуглить материал, который подан сжато, доходчиво и под разными углами, чем выискивать где это в книге (книгах). Гугл = тоже оглавление
Аноним 20/03/22 Вск 17:28:00 23199891613
>>2319409
>Гугл = тоже оглавление
По факту если ты правильно сформируешь запрос, то тебе первой ссылкой выкинет на тот же MSDN, который мало чем отличается от книги и у которого, вот сюрприз, есть свое оглавление. Дальше будет стековерфлоу, в котором тоже, прикинь, народ часто ссылается либо на ту же документацию, либо на те же книги.
А дальше будет дрисня вроде рекламы, кривых копий стековерфлоу с кучей рекламы ну и видосы с индусами, которые на своем овечьем хинглише будут час тебе разжевывать, то что читается за несколько минут в книге.
Редко когда попадается толковая статья которая рассматривает какие-нибудь редкие случаи.
Аноним 20/03/22 Вск 18:26:16 23200391614
>>2319989
>то что читается за несколько минут в книге.
если это не решение какой то проблемы то so просто пропускаю
если это не базовое "забыл пример". то и msdn (хотя можно просто загуглить "такое то + пример")

Остаются статьи в стиле "как сделать это и что это такое". открываю с 10к вкладок, читаю по диагонали, приходит понимание. с 99% вероятностью натыкаюсь на глубокую статью, которую кидаю в закладки как кладешь инфы по данному вопросу

>Редко когда попадается толковая статья которая рассматривает какие-нибудь редкие случаи.
все относительно. ну да на 1 такую статью можно открыть 20 вкладок, но после нахождения онной цель достигнута и хлам можно закрыть

вот ты прочел в книге, но не понял, то ли подано неудачно, то ли не раскрыты детали
что делать будешь? другую книгу брать?
Аноним 21/03/22 Пнд 03:11:08 23203711615
>>2318049
Да похуй. Уже больше 50 часов потратил на изучение пхп и освоился немного. Особенно доставляет заголовки для элементов массивов и не типизированные переменные. Сейчас ебусь с фронтендом. Тут блять своих приколов дохуя, но вроде справляюсь.
Аноним 21/03/22 Пнд 11:47:16 23204681616
У меня есть родительский cshtml (пусть будет GeneralProfile), в котором находится js функция getNumber, возвращающая ViewBag.Number.
Есть дочерний cshtml (пусть будет DisabledProfile), у которого есть свой дочерний cshtml (Filters), в котором используется метод getNumber. Можно ли как-то в DisabledProfile заоверрайдить значение ViewBag.Number или жыэс функцию? Если да, то как?
Аноним 21/03/22 Пнд 14:12:16 23205531617
Крч, решил потыкать реакт. Ну и создал проект из шаблона asp core + react. Нажимаю ctrl+f5, а студия меня нахрен шлет, видите ли у меня нода не установлена. И тут у меня встал вопрос: а нахуа? Реакт вроде это то, что работает у клиента, а нода - серверная часть, но у меня же сервер это aspnet, а он и без ноды прекрасно себя чувствует. Объясните что к чему, я в этих ваших жсах не шарю, а вы тут все фуллстеки 666к/нс.
Аноним 21/03/22 Пнд 16:22:21 23206511618
>>2320371
>Уже больше 50 часов потратил на изучение пхп и освоился немного
пхп хоть и пытается стать слаботипизированной жавой, но никогда не сможет избавиться от того, что он был рожден шаблонизатором, то есть своих детских болячек - автоперевод в int, безумные несогласованные названия всего, однопоточность, отсутствие исключений в ядре, невменяемая обработка ошибок и так далее.
И что-то да обязательно вылезет на продакшене.

Помню у меня так вылезло боком стремление все переводить в число. Я сериализовывал и обратно словарик (ака ассоциативный массив) и в один момент все нае...упало. Оказалось, он при десериализации пытался ключи массива читать как числа типа '123abc' => 123. Полечил простым добавлением _ к названию ключа на записи и чтении, чтобы он не смог его в число превратить. Но узнал то я о такой подлянке уже в продакшене.

У пхп только один плюс - у него на одном пуле процессов можно сделать бесконечное количество сайтов (в отличие от того же руби/питона/шарпа).
Аноним 21/03/22 Пнд 18:12:30 23207201619
>>2320553
Нода нужна для разработки, она из твоего говнокода будет собирать приложуху и гонять ее, чтобы ты мог заниматься отладкой и т.д.
Аноним 22/03/22 Втр 10:32:41 23210701620
image.png 74Кб, 723x663
723x663
Что с ебалом шарперы?
Аноним 22/03/22 Втр 11:16:43 23210911621
>>2321070
Судя по фуллстаку это скрин с фриланс биржи. Так что гуляй, мальчик, шарп применяется в настоящем секторе экономики.
Аноним 22/03/22 Втр 11:44:20 23211061622
Аноним 22/03/22 Втр 14:14:00 23212041623
изображение.png 98Кб, 1527x723
1527x723
Сап, анон, помоги разобраться, будь добр.
В общем учу ЖС и чтобы понять что такое ООП начал ковырять шарп, в документации есть гайд по классам, начал его делать и соснул хуя, пруф на пике.
Понятное дело, что в таком случае нам небходим сеттер, и что без него свойство является "только для чтения", но вот если я создаю простенький сеттер уровня:
set
{
balance = value;
}
то получаю бесконечный цикл. Ориентируясь на знания из ЖС учебника я бы создал свойство private decimal _balance и balance с геттером и сеттером соответственно, но я не знаю насколько это легитимно в шарпе, так как это решения из сахарного недоООП ЖС, плюс в гайде об этом как не говорится. В общем как правильно поступить в этом случае? С меня как всегда.
Аноним 22/03/22 Втр 15:21:28 23212631624
>>2321204
>я бы создал свойство private decimal _balance и balance с геттером и сеттером соответственно
так и надо. {get; set;} сахар всего лишь создает __backingField за вас. Но без этого сахара все ручками (в отличие от хотя бы котлина, где кроме ссылки на значения value есть и ссылка field)
Аноним 22/03/22 Втр 15:35:23 23212671625
>>2321263
Понял, а как тогда насчет конвенции? Я так понял через подчеркивание (_balance) в шарпе не пишут, а вместо этого геттер/сеттер называют с большой буквы, а свойство (поле?) называют с маленькой. Так и делать?
Алсо как я понял все такие поля должны быть private, как опять же говорится в доках, но при этом при создании полей (свойств??) с {get; set;} используют public, и это логично, но не соответствует конвенции, можете прояснить этот момент?
Аноним 22/03/22 Втр 15:38:54 23212681626
>>2321267
При создании public свойств ты задаешь сеттеры / геттеры и в них пишешь свою логику. Можешь не просто public Zaloopa {get{ return zaloopa;} делать, а какую-то предварительную обработку.
Аноним 22/03/22 Втр 15:53:09 23212731627
>>2321267
>Понял, а как тогда насчет конвенции?
Да как и везде - "кто в лес, кто по дрова"
в исходниках фреймворка всякие m_state, s_LinkedTokenCancelDelegate

мне же нравится просто _state
да и просто иду по пути наименьшего сопротивления "как принято в инструментарии", а у меня это решарпер.

правда и решарпер сам не знает чего хочет. задолбал постоянно жаловаться на

const string AnyValue =
и предлагать переименовать в
const string ANY_VALUE =
а после перезапуска студии (или хз по какому триггеру) - жалуется и предлагает переименовать обратно. И так по кругу



Аноним 22/03/22 Втр 16:08:08 23212821628
Аноним 22/03/22 Втр 16:12:02 23212871629
Аноним 22/03/22 Втр 16:25:20 23212971630
Screenshot14.png 8Кб, 585x239
585x239
Screenshot15.png 6Кб, 409x199
409x199
Шарп бояре, помогите. начинаю изучать этот язык, мне необходимо выполнить лабораторную работу. склонировал репозиторий на комп, в солюшн эксплорере 2 проект - с заданиями и юнит тестами. Я не понимаю - их надо выполнять и проверять в первом проекте или создать новый проект и вызывать там методы из первого? Энивей при запуске без созадния нового проекта появляется ошибка как на пике 2. Почаны помогите, я совсем уже ебануляся...
Аноним 22/03/22 Втр 16:53:38 23213201631
>>2321297
Это у тебя библиотека, а не программа. Ее надо открыть, как библиотеку в другом проекте.
Аноним 22/03/22 Втр 16:55:04 23213221632
>>2321320
Это же написано на скрине.
Аноним 22/03/22 Втр 17:07:29 23213441633
>>2321320
Спасибо, добрый человек!
Аноним 23/03/22 Срд 09:43:13 23216671634
>>2321273
>правда и решарпер сам не знает чего хочет. задолбал постоянно жаловаться на
.editorconfig настрой и пропиши там правила.
Аноним 23/03/22 Срд 09:52:21 23216711635
>>2321267
>Понял, а как тогда насчет конвенции? Я так понял через подчеркивание (_balance) в шарпе не пишут, а вместо этого геттер/сеттер называют с большой буквы, а свойство (поле?) называют с маленькой.

В современном кодстайле в шарпе принято приватные поля класса называть с подчеркивания + lowerCamelCase
Свойства принято называть в UpperCamelCase

Пихать логику в геттеры-сеттеры сейчас не принято (вроде как даже многие голосуют, за выпил этого из шарпа). Обычно, если ты это делаешь, то ты уже где-то проебался с архитектурой. Допустим, то, что у тебя на скрине >>2321204 уже нихуя не ООП-угодно. Это либо в отдельный метод нужно выносить, либо в отдельную структуру/класс
Аноним 23/03/22 Срд 10:56:51 23216891636
Аноним 23/03/22 Срд 16:11:02 23218211637
image.png 18Кб, 684x83
684x83
image.png 9Кб, 1306x65
1306x65
Почему размер файла это лонг

Но при этом когда мы пробуем прочитать участок из файла то оффсет (отступ) указываем как инт?

Тоесть мы интом буквально не можем указать читать файл с какого-то места если его размер превышает максимальное значение инта?

Какой-то Абсурд
Аноним 23/03/22 Срд 16:46:39 23218441638
image.png 23Кб, 931x78
931x78
Ну чушь же! Что же чертовщина! Это в принципе так не может работать!
Аноним 23/03/22 Срд 17:42:07 23218721639
>>2321821
>>2321844
Потому что ты долбоеб. offset к bufer относится, а не к стриму. Доки читай.
Аноним 23/03/22 Срд 23:38:12 23220531640
Привет шарписты! Очевидно, что у вас тут постоянно появляются вкатывальщики с однатипными вопросами, но всё же. Хочу вкатиться в backend и сейчас пытаюсь определиться с ЯП. Может кто-то дать дельный совет по этому поводу? Пока что выбор стоит между Питоном и Шарпом. На сколько я понял, без HTML, CSS и фреймворка JS тоже не обойтись. Вопрос вот в чём: если выбирать между Питоном и Шарпом, то с чем сейчас объективно легче найти какую-нибудь стажировку и в дальнейшем работу? В питоне есть совсем небольшой опыт, но толком все равно ничего на нём не писал. Просто у меня такое ощущение, что с Питоном вкатиться будет куда сложнее, т.к. его пытаются учить все кому не лень(я в том числе). Может посоветуете какие-то другие варианты? На Шарпе думал начать заниматься по курсу на ULearn + параллельно читать какую-нибудь книгу из шапки треда. С чтением/прослушиванием на английском проблем нет. Только на днях узнал про курсы Олежки Тинькова, но к сожалению, набор туда закончился в феврале. Заранее спасибо за ответы!
Аноним 23/03/22 Срд 23:48:28 23220561641
>>2322053
>Питоном вкатиться будет куда сложнее, т.к. его пытаются учить все кому не лень
А также использовать все кому не лень.
С ним проще найти работу.

Питон очень неплох, если бы правда не GIL
Аноним 24/03/22 Чтв 00:07:40 23220611642
>>2322053
Одногруппник сдал msdn'овский тест по .net framework (вроде, один хуй тест уже недоступен), с полученным сертификатом нашел работу.
Я питонистом искал работу около года, нашел хуйню в которой питон почти не нужен был, уже в компании выучил шарп с дотнетом и сменил проект, месяца 2 назад сказал что хочу уволиться и мне еще замену не нашли.

Выводы делай сам.
Как много питонистов-вкатывальщиков, так много и разных затычек на проектах для них -- дата инженегры, бекенд разработчики, автоматизаторы хуйни, чел чтобы включать кофемашинку. Я бы сказал что в обоих случаях сложность получения работы примерно одинакова, но рекомендовал бы шарпы, т.к. приучишь себя к полезным вещам в слабо-типизируемых языках.
По поводу стажировок и курсов -- чекни епам тренинги и яндекс академию, объявления на хх.ру и линкедине или что у тебя в регионе популярно.
Аноним 24/03/22 Чтв 00:12:55 23220621643
>>2322061
>Я питонистом искал работу около года
Это очень общая фраза.
Вопрос в том на сколько вакансий ты собеседовался.
Аноним 24/03/22 Чтв 01:10:28 23220791644
>>2322061
Спасибо за инфу, анон. А что думаешь по поводу Java? Насколько я понял, Java и Шарп очень похожи, но по ощущениям стажировок и прочего по Java больше, чем по .NET. Просто глаза разбегаются со всем этим многообразием языков, если честно. Сложно понять куда инвестировать время и силы
Аноним 24/03/22 Чтв 01:36:40 23220811645
>>2322079
>А что думаешь по поводу Java?
ага, как ваз и иномарка. обе машины, на обоих можно ездить, но есть нюанс
Аноним 24/03/22 Чтв 03:09:41 23220851646
>>2322061
И да, можешь пожалуйста рассказать как ты примерно учил шарп и донет? Может какой-то курс проходил и читал что-то? Так сказать небольшой роадмэп бы увидеть, чтобы лучше понимать что учить и откуда брать
Аноним 24/03/22 Чтв 05:11:44 23220991647
Аноним 24/03/22 Чтв 05:12:17 23221001648
image.png 661Кб, 1060x3142
1060x3142
>>2322085
>как ты примерно учил шарп
Открываешь справочник Албахари и учишь все подряд. В шарпе нужно знать все.
А дальше забиваешь в поиске .net developer roadmap и подбираешь, то что тебе по нраву.
Вот например вполне годный для бэкендера:

https://github.com/MoienTajik/AspNetCore-Developer-Roadmap
Аноним 24/03/22 Чтв 10:09:00 23221671649
>>2321872
Погоди, тогда я ничерта не понимаю, вот у меня есть файл, я открываю стрим, и хочу его прочитать, но частями (предположим файл 14 гб а озу у меня только 8 свободно 4) тогда как мне прочитать часть стрима?
Аноним 24/03/22 Чтв 10:49:38 23221791650
>>2322167
Ну ебана. Сказали же - доки читай.

Перемотку используй:
long Seek(long offset, SeekOrigin origin)

В документации идет сразу же после методов чтения. Совсем себе мозги видосиками разжижили, пару лишних строчек прочитать не осиливают.
Аноним 24/03/22 Чтв 16:54:43 23223841651
сап, у нас в вузе изучается .Net Remoting, я погуглил, мне на 1 же странице гугла выдает страницу 2003 года, эта хуета не используется как я понял уже?
Аноним 24/03/22 Чтв 16:58:39 23223871652
>>2322384
Да. Вместо него грпц или вцф
Аноним 24/03/22 Чтв 17:00:58 23223881653
Аноним 24/03/22 Чтв 17:02:27 23223891654
1648130544978.gif 1634Кб, 350x197
350x197
>>2322384
Вузеки в своём репертуаре.
Аноним 24/03/22 Чтв 17:03:11 23223901655
>>2322388
блять, то есть он даже языком уже не поддерживается, а мы это учим? ебаный стыд
Аноним 24/03/22 Чтв 17:05:18 23223931656
>>2322390
ну так фреймворк никуда не делся. То, что кор пришел ему на замену, не значит что сразу все на него перешли. Дюже дорогое удовольствие.
Так что шанс попасть на работу, где все легаси - довольно высокий.
Аноним 24/03/22 Чтв 17:16:15 23224011657
>>2322390
бля братан, я в своей шараги тоже дохуя бесполезного делаю, но у тебя хотя бы надо на шарпе писать
Аноним 24/03/22 Чтв 17:54:52 23224331658
Смотрите. Вот я в ef core делаю:
var post = new Post(Images=_images)
_context.add(post)
И у меня и в табличке Posts и в табличке Images создаются записи (потому что есть связь 1-много)

А вот теперь если я из бд хочу пост с картинками достать (и хранить это в модели Post с полем list<images>) - надо писать linq запрос с джоинами и вот этим вот всем, или я что-то неправильно делаю всё-таки?
Аноним 24/03/22 Чтв 18:47:38 23224551659
>>2322433
Я нашел! За такое в еф отвечает Include() он как раз в соответствующую модель добавит то, что по связи должно входить
Аноним 24/03/22 Чтв 19:27:35 23224711660
image.png 195Кб, 2553x1329
2553x1329
Я написал имиджборду, могу идти жуниор бэкенд ебелопер?
Аноним 24/03/22 Чтв 19:50:02 23224811661
>>2322471
Оно в докере? Очереди прикрутил? Верстка адаптивная? Вебемки загружать можно? Что там с продажей пасскодов? Админкой?

Вообще. Я не верю что ты серьезно спрашиваешь. Я вот первую работу нашел, после того как в консольке сделал хелловорлд и на формах хуйнул рисование прямой по алгоритму брезенхема, кек. Просто решил, что хули я буду сидеть и нихуя не делать. Пришел на собес, сказал что знаю шарпы и перечислил технологии про которые слышал. Все. Взяли. Да, это было в 2020м. Так что да, можешь идти искать работу жуниором,
Аноним 24/03/22 Чтв 20:01:57 23224861662
lll.gif 2274Кб, 690x544
690x544
>>2322481
>в консольке
>по алгоритму брезенхема
Аноним 24/03/22 Чтв 23:46:34 23226121663
>>2322486
Прикольненко. Еще бы не мерцала - было бы совсем заебись.
Аноним 25/03/22 Птн 04:26:08 23226461664
>>2322612
Это один из первых вариантов.
Я потом вроде бы делал с нормальным выводом без мерцания. Но мне лень сейчас это искать, собирать и новую гифку записывать.
Эта картинка просто валялась в удобном месте.
Аноним 25/03/22 Птн 16:21:08 23230071665
А вот такой вопрос
Допустим есть абстрактный сервис который выполняется
у него есть поле типа

public ServiceState State {get;}

и для желающих наблюдать за изменениями ну пусть будет событие такое

public event EventHandler<ServiceState> StateChanged = delegate { };

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

Кто как будет решать проблему чтения текущего State и подписки на изменения без побочных эффектов от гонки потоков?
Аноним 25/03/22 Птн 21:48:57 23232391666
>>2323007
Я не понял вопроса. Можно как-то перефразировать?
Аноним 25/03/22 Птн 22:43:45 23232521667
>>2323239
Ну смотри. Есть у тебя сервис, он работает, у него какое то свойство, которое меняется и событие, которое сигнализирует об этом изменении. Сервис изнутри меняет свойствои сигнализирует об его изменении.

Если просто читаешь время от времени это свойство, то все норм. И если подписался до старта сервиса, то тоже норм ибо события не пропустишь.

Но ты подключаешься в рэндомный момент и плохое решение выглядит так
1 свойство State = States.Foo
2 мы подключаемся, читаем свойство State, и собираемся подписаться
3 Пока мы шагали до подписки на событие, то State = States.Bar
4 Мы подписываемся на событие изменения и начинаем следить. В итоге мы изменение не видели и в полной уверенности что там Foo, а на деле оно Bar

ну в общем то классика.
Аноним 25/03/22 Птн 23:34:18 23232621668
>>2323252
> В итоге мы изменение не видели
Конечно. Мы же ещё не подписались.
Аноним 25/03/22 Птн 23:56:24 23232761669
>>2323262
>Конечно. Мы же ещё не подписались.
ну как бы это и так понятно
а теперь вернемся к первоначальному вопросу

Кто как будет решать проблему чтения текущего State и подписки на изменения без побочных эффектов от гонки потоков?
Аноним 26/03/22 Суб 00:35:25 23232831670
>>2323007
>>2323276
Я вынесу стейт в базу и буду вьюхой из не читать, а сервисом в нее писать.
Изи-бризи.
Аноним 26/03/22 Суб 00:38:33 23232861671
>>2323283
Как это хоть как то что то решает?
Аноним 26/03/22 Суб 00:57:04 23232901672
>>2323286
Это решает все проблемы. Это индустриальный стандарт.
Аноним 26/03/22 Суб 01:02:31 23232911673
>>2323290
Ясно. Если нечего покушать, то можно станцевать.
Но лучше послушаю других.
Аноним 26/03/22 Суб 05:21:00 23233071674
Шарпач, предлагают релок (пара вариантов, но скорее всего к балканским братушкам).

Проекты MS Dynamic, но там махровое легаси с WPF. Релок очень интересен, но вдруг легаси с WPF будет унылым?
Аноним 26/03/22 Суб 10:51:29 23233731675
Сап, я даун. Каким образом через EF добавлять данные из связанной таблицы в DataGrid и биндить для редактирования? Как-то забиндил, так теперь при изменении меняются значения в связанных таблицах.
Аноним 26/03/22 Суб 10:54:51 23233751676
>>2323307
Офк переезжай, уровень жизни апнешь, западные ребята тебя научат важному и главному, а дальше дела еще лучше пойдут
Аноним 26/03/22 Суб 10:57:54 23233781677
>>2323373
Если у тя ObservableCollection забинжено к DataGrid, то просто повесь событие на CollectionChanged или чето типа того, а в нём просто добавляй и изменяй. К примеру:

void OnCollectionChanged()
{
if(item.Id == 0) //ну или чето другое
database.Add(item)
else
database.Update(item)
}

это очень грубо говоря и не самый лучший способ. Лучше повесить ICommand в котором изменять коллекцию и асинхронно изменять бд. А еще лучше - иди на ruSO, там очень быстро отвечают по шарпу пару челов
Аноним 26/03/22 Суб 13:07:12 23234501678
>>2323307
>но вдруг легаси с WPF будет унылым?
Как будто WPF сам по себе не уныл, без всяких если.
Аноним 26/03/22 Суб 13:18:50 23234601679
Сап, я новичок. Как правильнее будет сделать?
Я через рефлексию получаю коллекцию каких-то различных типов(штук 5 видов в различных количествах) в формате object[] и передаю его как лист в определенную фабрику в зависимости от задачи. Там они просто кастятся к нужным типам/провожу валидацию и создаю готовый объект.
Мне очень не нравится, что приходится в фабрику передавать лист обджектов. Это вообще норма или хуйня и нужно переделать?
Если переделать, то как?
Думал насчёт анонимных типов. В эту сторону гуглить? Или dynamic параметр сделать? По скорости и затратности каста мне разницы нет, это происходит только один раз, дальше просто эти данные живут на протяжении всей работы.
Аноним 26/03/22 Суб 13:19:19 23234621680
>>2323291
>>2323007
>>2323252
Просто ты проблему на пустом месте создаешь.
Классический подход при решении такой хуйни: у тебя есть стейт где-то. Текущий стейт при этом иммутабельный. И он - единственный источник истины. Как там есть - то и считаем правдной.
Так вот. В контексте классических приложений этот стейт кладут в БД. Все. В контексте фронта - его выносят в какой-нибудь редакс, ngrx или vuex. Все. Твои сервисы - свое состояние коммитят в БД/стор. Твои вьюшки достают из бд/стора при коммите новое состояние. БД/Стор - при этом иммутабельны по своей природе, пока там что-то пишется, тот кто возьмет данные - получит правду на момент обращения, когда коммит будет завершен - он будет оповещен и елси нужно - обратится снова и получит новое состояние.

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

А про гонку и прочее. Оно тут вообще ни к селу, ни к городу. В том кейсе который ты описал - там никакой гонки быть не может в принципе, т.к. сделать безопасное чтение, при условии что пишет один поток - не представляется чем-то сложным, а ситуация когда стейт меняет несколько потоков - долбоебизм.
Аноним 26/03/22 Суб 14:41:32 23235421681
>>2323460
Ты можешь сразу к типу какому-то кастовать через Convert.ChangeType
Аноним 26/03/22 Суб 15:06:12 23235591682
>>2323542
Я его использую.
Просто у меня в конечном итоге получается массив к примеру {string, bool, mytype, int}. И меня интересует как лучше его передавать параметром. В каждой фабрике я уже знаю на каком идексе какой тип и какие могут отсутствовать. Поэтому могу просто (string)param[0] перекинуть в конструктор, либо посмотреть после каста значение и дальше решать кидать его или нет.
Аноним 26/03/22 Суб 15:10:12 23235691683
>>2323462
>Так вот. В контексте классических приложений этот стейт кладут в БД. Все
хватит мыслить категориями классических CRUD приложений с базами данных.
я говорю совсем про другую проблему. Она ближе к теме "события + мультипоточность" (для примера вот https://www.codeproject.com/Articles/886223/Csharp-Multithreading-and-Events ) И базы данных там даже рядом не лежало. В приложении вообще может не быть никакой базы данных.
ты просто зацепился за слова сервис и стейт из примера. И понеслось

Хорошо. пусть это будет датчик (много датчиков) и его состояние. Датчик может менять свое состояние и делать это может как триллион раз в секунду, так и 1 раз в год, то есть время смены состояния неизвестно. И у него есть свойство где можно прочитать текущее значение, ну и событие чтобы подписаться на изменения. И очевидно!!! что база данных тут вообще не к месту - какая разница где хранить текущее состояние? - А НИКАКОЙ. Нет никакого смысла где-то еще хранить, если у нас оно и так хранится в свойстве - бери да читай.

И вот тебе нужно в РЭНДОМНЫЙ момент атачиться к этому датчику и начинать активно за ним следить, переставать следить, снова подключаться.

>А про гонку и прочее. Оно тут вообще ни к селу, ни к городу.
И гонка тут как раз основа всего. Тут хранение состояния "где-то еще" нахер не нужна, ибо и так у датчика можно спросить актуальное состояние. И проблемы чтения стейта нет - бери да читай, это атомарно.
Тут проблема "чтения текущего значения + одновременной подписки"

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

И тут решение нисколько не простое.

Навскидку можно несколько вариантов
- использовать SyncRoot ( это тот который антипаттерн) со всеми его недостатками
- заставить этот датчик использовать SyncronizationContext. Работать будет, но тогда любому, кто будет использовать датчик, нужен будет работать в таком контексте.
- Если у нас UI, то у нас есть Dispatcher и мы подписываемся, но в подписке планируем обработчик выполниться в UI потоке, а раз мы в нем находимся, то его выполнение станет после нас. (то есть это решает мой пример, но я говорю про общий случай)
- замудрить свое событие которое будет сразу выдавать последнее значение при подписке, а-ля SharedState в андроиде, то есть это уже не событие, а целый IObservable с выдачей последнего значения подписчику
(и в общем то неплохо, но это уже велосипед и это опять же применимо если мы пишем класс датчика. Да и где взять готовое такое, самому писать чистое решение не так просто)
- расчитывать на авось и в один момент получить хрень (даже нет смысла обсуждать)
Аноним 26/03/22 Суб 18:40:41 23236971684
Если я создаю Timer то это уже отдельный поток, мне не надо создавать для него отдельный Thread?
Аноним 26/03/22 Суб 19:11:19 23237081685
Стоит ли вкатываться в wpf по книжке петцольда? Уже до второй главы дошёл, вроде съедобно
Аноним 26/03/22 Суб 19:28:29 23237131686
Аноним 26/03/22 Суб 21:47:10 23237491687
>>2322062
Собеседований 10 было, обычно присылали отказ либо игнорировали.
>>2322079
На жабу действительно больше вакансий и стажировок. Ничего не думаю.
>>2322085
С# Players Guide + metanit + дали написать мини-проект, вот по нему гуглил моменты и с разных сайтов инфу впитывал.
Аноним 26/03/22 Суб 21:47:54 23237501688
>>2323708
>9. Литература по WPF
>— Pro WPF 4.5 in C# (Matthew MacDonald)
>— Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

Бтв, почему эти книги? Даже нет WPF Unleashed которую тоже хвалят
Аноним 27/03/22 Вск 07:58:06 23238421689
>>2323559
Значит я не понимаю, что ты имеешь в виду. Запомни, код нельзя объяснять на словах, его нужно просто показывать
Аноним 27/03/22 Вск 09:06:57 23238511690
>>2323750
Потому что эту хуйню никто не обновляет. Я помню три или четыре треда ныл, чтобы добавили .NET 5 наконец-то в ОП пост. Уже давно .нет 6, а его никто в оп-пост не добавил
Аноним 27/03/22 Вск 12:08:44 23239131691
>>2323851
> Уже давно .нет 6
Зачем они так часто номера версий обновляют?
Аноним 27/03/22 Вск 13:40:15 23239741692
>>2323851
>Потому что эту хуйню никто не обновляет
WPF не изменился за много лет (даже баги не фиксят) и выход дотнет 6 ничего не меняет.
Аноним 27/03/22 Вск 16:23:17 23240621693
>>2323974
MAUI там обещают подвезти.
Аноним 27/03/22 Вск 17:54:04 23241091694
>>2324062
И что в нем такого этакого для виндузятника? Для видузятника целая куча WPF замен и так есть, которые слабее по фичам чем WPF

А как кросс - MAUI хуже других ибо другие хотя бы поддерживаются их авторами (а не пойми кем) на линуксах
Аноним 27/03/22 Вск 20:28:18 23242031695
>>2324109
>MAUI хуже других ибо другие хотя бы поддерживаются их авторами (а не пойми кем) на линуксах
Что ты несешь? Майки сделали мауи они и будут поддерживать. Или майки это непойми кто?
Аноним 27/03/22 Вск 21:44:54 23242531696
>>2324203
Майки-то майки, только опять без линупс десктопа
Аноним 27/03/22 Вск 22:04:47 23242661697
Аноним 27/03/22 Вск 22:49:09 23242991698
>>2324266
Я ему это ещё год назад говорил. Но он же фанатик. Не объяснишь.

мимо фанат Eto.Forms
Аноним 28/03/22 Пнд 04:03:33 23243761699
>>2324266
Так а нахуй нужен линукс? Главное что андроид поддерживается
Аноним 28/03/22 Пнд 09:44:56 23244091700
Джентельмены! С какой версии asp.net core щас лучше вкатываться? Вижу вышла 6 не очень давно. Или все таки с 5?
Аноним 28/03/22 Пнд 10:03:30 23244181701
>>2324376
> Так а нахуй нужен линукс?
Я на андроиде страдаю, когда шарпотред не перекатывают.
Перекатите тред!
Я страдаю!
Аноним 28/03/22 Пнд 11:47:18 23244631702
image.png 11Кб, 445x180
445x180
Зачем нужен атрибут [ApiController]? Вроде, и без него все работает, нет?
Аноним 28/03/22 Пнд 11:52:22 23244681703
>>2324409
Вообще, разницы нет особой, можешь хоть с 7-й начинать, превью уже выпустили. Их каждый год выпускают, разница небольшая. Ну а вообще, если тебе это так критично - то 6, это LTS версия, 5-ю нет смысла никакого изучать.
Аноним 28/03/22 Пнд 11:56:59 23244721704
>>2324299
Так это понятно, ну какой MAUI на линуксе, але, это же конкурирующая платформа, у майков основной продукт - винда.
Аноним 28/03/22 Пнд 12:22:51 23244851705
>>2324376
>Главное что андроид поддерживается
Так андроид и так работает на хамарин. MAUI - это попытка принести хамарин на десктопы. И заявлять что "нах нужен ваш десктоп, главное андроид"....

>>2324472
>ну какой MAUI на линуксе
А зачем он тогда нужен вообще? чтобы мобильщики могли писать под десктоп? Ну может быть. А остальным оно нафиг не нужно
Аноним 28/03/22 Пнд 12:28:50 23244901706
>>2324463
вот о нем написано

The [ApiController] attribute can be applied to a controller class to enable the following opinionated, API-specific behaviors:

Attribute routing requirement
Automatic HTTP 400 responses
Binding source parameter inference
Multipart/form-data request inference
Problem details for error status codes

по ссылке пояснение по каждому пункту
https://docs.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-5.0

Если получится понять

Аноним 28/03/22 Пнд 12:34:58 23244941707
Аноним 28/03/22 Пнд 13:57:16 23245591708
>>2324409
На новые проекты где сразу юзают онли 6-й .net, сейчас берут в основном стронг мидлов и синьоров. Тебя туда не возьмут.
В конторах куда у тебя есть шанс вкатиться скорее всего юзают core 3.1 или потихоньку переползают с него на .net6. Чтобы туда взяли нужно уверенно знать и 3.1 и понимать чем от него отличается 6-й. Поэтому твой выбор 3.1
Аноним 28/03/22 Пнд 14:14:47 23245701709
>>2324485
>А зачем он тогда нужен вообще? чтобы мобильщики могли писать под десктоп?
Да, чтобы к единой базе все привести, на основе ксамарина.
Аноним 28/03/22 Пнд 17:17:23 23246901710
>>2324570
без линукса это не единая база
кончится ничем. десктопщикам не нужно такое, а мобильщикам - а им зачем вообще десктоп...
Аноним 28/03/22 Пнд 20:01:09 23247841711
>>2324690
>без линукса это не единая база
Линукс - конкурирует с основным продуктом, для него не нужно. А то напилят еще программ на линукс, кто тогда винду покупать будет?
Аноним 28/03/22 Пнд 21:17:55 23247971712
>>2324784
это ИХ проблема
а моя проблема, как разработчика софта - чтобы он работал нормально на всех системах. И линукс в их числе.

А раз этого нет, значит это мертворожденный проект для десктоперов. А мобиловодам десктоп вообще не нужен
Аноним 28/03/22 Пнд 21:33:43 23248031713
>>2324784
Я думаю со временем виндовс переедет на их облако и станет облачной ос по подписке
Аноним 29/03/22 Втр 10:58:38 23249911714
Я щас поставил шаблоны MAUI через dotnet new и создал простое приложение, чисто повтыкать в файлы шаблона, потому что оно у меня ожидаемо не запустилось, потому что я из под линукса сижу. Дак вот чо. Майкрософт в своём репертуаре. Сгенерированный пустой проект-хелловорлд содержит в себе кучу нечитаемого xml-говна, манифесты, манифесты, тысячи их! Сделано всё специально так, чтобы разобраться в этом можно было только через формочки-редакторы в вижуал-студии.

Нет простоты, элегантности и лаконичности нет. Как например, если я создам шаблон приложения в Eto.Forms, создастся 4 папки, по два-три файла в каждой:
1. Платформонезависимое окно, компилирующееся как dll, файлы: проект и шарпокод. Если выбрать шаблон с кодебихайндом, будет третий файл хамл.
2. Приложение GTK, компилирующееся как запускаемый бинарник, файлы такие же, проект и шарпокод.
3. Приложение Шындовс.
4. Приложение МАК.

Но у Eto.Forms другой минус (для зумера) там по умолчанию нет андроида и его надо пердолить ручками самостоятельно, и для макак с галер есть минус, нет модного MVVM шаблона, все модели и вьюмодели надо создавать ручками.

Бумеру инди-девелоперу же, взросшему на Дельфях в эпоху Ильхама Мокрописечного - тут одни плюсы.
Аноним 29/03/22 Втр 11:03:19 23249941715
>>2324991
Ах да, самое главное забыл. В МАУИ все платформы перечислены внутри едиственного проекта, который тянет все зависимости, но просто логикой внутри огромного раздутого файла-проекта их переключает.

В Ето.формсах 4 проекта в 4 отдельных папках, каждый со своими зависимостями. Кому-то это может показаться неудобно, я же проникся мощю этого гениального подхода. Кодишь на винде - не думаешь о зависимостях линукса, запускаешь нативную приложуху и она работает. Надо перейти на линукс - переходишь в папку с линуксовой сборкой и конпелируешься оттуда, не думая о зависимостяз венды.
Аноним 30/03/22 Срд 09:13:35 23255591716
image.png 219Кб, 683x740
683x740
>>2247357 (OP)
Чуваки я сильно всрался, что купил пикрил?
или кто то читал и проходил?
Аноним 30/03/22 Срд 09:39:17 23255671717
>>2325559
Любой покупающий бумажную техлитературу в 2z22 - всрался. Бамажка устарела аккурат в тот момент, когда на типографии отпечатали половину тиража.

Бумажку имеет смысл покупать если ты бумажкофил, любишь переворачивать хрустящие страницы и вдыхать аромат белил с чернилами.
Аноним 30/03/22 Срд 09:48:40 23255731718
>>2325567
Я про содержание книги
Мне неудобно читать с компа литературу
Аноним 30/03/22 Срд 09:52:25 23255771719
>>2325573
Я тоже про содержание. Повторяюсь. Содержание морально устарело аккурат в тот момент, когда отпечатали половину тиража.
Аноним 30/03/22 Срд 09:54:01 23255811720
>>2325573
Купи электронную читалку на e-ink.
Аноним 30/03/22 Срд 10:20:00 23256011721
>>2325577
Ну почитаю, скажу свое мнение
Я так то решил вкатится не в шарп, как таковой
А в шарп в контексте юнити
В гейдев треде думаю не так быстро и качественно ответят как тут
Аноним 30/03/22 Срд 10:27:54 23256041722
>>2325601
> шарп в контексте юнити
Выше в треде уже давали подробный расклад по данному вопросу. Ищи юнити поиском по странице.
Бумажная книжка такого функционала тебе не предоставит.
Аноним 30/03/22 Срд 10:30:03 23256061723
>>2325604
Окей, значит я всрался
штош, не в первой
Аноним 30/03/22 Срд 10:37:23 23256081724
>>2325559
На Ютубе другого Васильева открой, тоже хороший человек
Аноним 30/03/22 Срд 14:53:43 23257461725
>>2325559
2018-й год
Ни слова про коллекции, дженерики, интерфейсы, linq и прочую базу которая сейчас мастхэв. Судя по содержанию книга даже не для студентов, а для совсем школьников.
Аноним 30/03/22 Срд 15:08:40 23257521726
>>2325746
Ну, в контексте юнити коллекция только одна - массив, интерфейсы не нужны, а за linq тебе и вовсе пальцы поломают.
Аноним 30/03/22 Срд 15:46:56 23257911727
Аноним 30/03/22 Срд 15:59:05 23258071728
Аноним 30/03/22 Срд 16:09:37 23258141729
>>2325807
Но ведь в c# нет такого типа данных как "object" в отличии от JS. Точнее есть, но насколько я сейчас понимаю он просто позволяет не писать конкретный тип данных. Не могу понять как создавать подобные вложенности. Через классы или через библиотеку получается какая-то хуйня, которую не понятно как инициализировать, хотя очевидно это я что-то не то горожу.
Аноним 30/03/22 Срд 16:14:58 23258191730
1648646099231.png 36Кб, 683x755
683x755
>>2325814
Я пытаюсь набросать тебе пример через анонимные типы, но он не компилится в онлайн ИДЕ, а студию мне запускать впадлу. Если тебе надо прям вот так же динамически, можно ещё заюзать сторонние либы, например ньютонсофт ЖСОН.

Вот пока что НЕРАБОЧИЙ вариант, как я это вижу:
Аноним 30/03/22 Срд 16:18:04 23258221731
>>2325819
>>2325814
Если же без анонимных типов и прочей динамической пидерсии, то тебе надо сначала описать элементы коллекций, а потом завести коллекции. Строго типизированно.
Аноним 30/03/22 Срд 16:21:40 23258291732
>>2325819
Пытался через анонимный var делать, не получалось. Оказывается забывал "new". Спасибо большое!
Аноним 30/03/22 Срд 20:02:11 23259951733
Это нормальное поведение? Первый раз с такой хуйней сталкиваюсь просто.
Есть enum Keys из форм с кучей констант. Хочу стринг конвертить в него. Юзаю Enum.Parse.
Например в таких случаях работает корректно:
Enum.Parse("A"), true); // A
Enum.Parse("Asd"), true); //exception
А в таком он мне не кидает эксепшн:
Enum.Parse("A,S,D"), true);
Возвращает W.
Аноним 30/03/22 Срд 20:40:16 23260131734
>>2325995
А, понятно. Он запятую использует как сепаратор для битового или. Пиздец, нахуя это сделано.
Аноним 30/03/22 Срд 21:12:36 23260211735
>>2325752
>в контексте юнити
А, сорян, проебался. Ну тогда, учитывая насколько дерьмовая реализация шарпов в юнити, лучше тогда книжку постарше поискать, года так 2008-го.
Аноним 30/03/22 Срд 21:14:03 23260231736
>>2325791
Через анонимные типы.
Аноним 31/03/22 Чтв 10:54:10 23262591737
>>2325746
Старина, а где прочитать про это?
Я вот читаю Васильева этого. пока нихуя не понятно
Видимо или я тупой, или реально книга кал
Аноним 31/03/22 Чтв 11:10:08 23262721738
>>2322389
Блять, я понять одного не могу
Это какая то загадка человечества величайшая
Как, с такой всратейшей системой образования (высшее)
где изучается некро говно 2003 года, русский програмист спокойно перекатывается забугор и работает и его все облизывают?
Это единицы "вопреки" или как? Как ВУЗы учащие некромантию способны выпускать студентов наносеков?
Аноним 31/03/22 Чтв 12:38:03 23263631739
Вкатуны есть которые вкатились за последние пол года?
Травите байки.
Ебаная "спец операция" половину ваканский порезала. Хуй знает как теперь вкатится. Всем опыт нужен блять от года.
Аноним 31/03/22 Чтв 12:55:30 23263721740
>>2326363
Ох, жиза. Вката.NET
Может летом вернутся галеры
Аноним 31/03/22 Чтв 13:04:42 23263831741
>>2326272
Всё очень просто. Если ты изучил БАЗУ, если ты изучил КЛАССИКУ, БЛЯТЬ, КОТОРУЮ ЗНАТЬ НАДО, то тогда ты с лёгкостью осваиваешь любой зумерский фреймворк, который отличается от дидовских тулкитов только тем, что в нём А заменили на Б. Поэтому в вузах преподают ОСНОВЫ, вплоть до командных интерфейсов.

Как-то так.
Аноним 31/03/22 Чтв 13:21:39 23263911742
>>2326259
Гм. Если тебе даже Васильев не понятен, то что-то серьезнее тебе читать еще бесполезнее будет.
Тебе надо на какой-нибудь совсем базовый курс, где тебе расскажут о программировании без привязки к языку и технологиям. Я х.з. какой-нибудь школьный курс типа scratch-а или еще, что-нибудь.
Аноним 31/03/22 Чтв 13:33:37 23263951743
>>2326272
>Как,
Про базу верно уже сказали.
Еще один момент - ограничение инструментария, при должной мотивации, дает неплохой буст развития. Т.к. мозг учится обходить все эти ограничения, решая попутно множество интересных сопутствующих задач. Ну а айтишники в РФ всегда были поставлены в позицию тех, кому нужно изъебнуться, чтобы достичь результата. Начиная с взлома игрушек и винды, по причине невозможности их купить, и заканчивая самостоятельным изучением и доработкой технологий, которые недоступны на данный момент.
Ментальность такая. Пока условный западный прогер будет сидеть на жопе и ждать когда ему подадут нужный для работы инструмент или технологию и обучат им пользоваться, условный местный прогер возьмет все сам и сам научится.
ЛУчшие художники тоже всегда сначала учились сначала простым карандашом рисовать, а не со всего набора красок начинали.
Аноним 31/03/22 Чтв 14:19:44 23264281744
>>2326272
>Как, с такой всратейшей системой образования (высшее)
>где изучается некро говно 2003 года, русский програмист спокойно перекатывается забугор и работает и его все облизывают?
>Это единицы "вопреки" или как? Как ВУЗы учащие некромантию способны выпускать студентов наносеков?
1. Да, это единицы "вопреки".
2. Традиция программирования еще не вполне образовалась, а, учитывая что задача вузов - именно приобщения к традиции, они для программирования не особо нужны.
Аноним 31/03/22 Чтв 14:22:14 23264341745
>>2326363
>Хуй знает как теперь вкатится.
Учить 1С или js (он будет всегда и везде). С шарпами и прочими питухонами нам теперь будет туго, это да.
Аноним 31/03/22 Чтв 19:08:51 23267181746
108f5ed9f6dc686[...].png 208Кб, 546x357
546x357
Короче.
Есть несколько АйПи-камер.
Что я хочу. Я хочу чтобы они подключались по ВПН к моему серваку, ну а дальше, пользователь входит и в зависимости от прав доступа - смотрит что там на камерах.
Так вот. На текущий момент - я как делаю, я просто храню АйПи, пользователь должен руками настраивать ВПН, на фронте он клацает на камеру, его через ВПН подключает к нужной камере.
Момент с настройкой ВПН мне не нравится. Заеб для пользователя и вообще какая-то хуета, типа тот кто подключился к ВПН - может в обход основного приложения доступ к камерам получать.
Так вот. Что я хочу. Я хочу чтобы ВПН был только между мной и камерами, а пользователь, только после входа в приложении - мог подключиться.
Как я сделал. Я сделал обычный мидлвар, который после проверки прав доступа - просто шлет запрос камере, отдает пользователю.
Ну, собственно, в чем проблема такого решения. В том, что камеры сейчас дюже умные, не только картинку стримят, но и имеют возможность настройки и прочего. В связи с этим возникает хуета, типа у камеры фронтенд - всякие ссылки вида /settings, /dashboard /hui/zaluipa использует, оно соответственно шлется на мой сервак, который таким образом не знает куда роутить маршрут и отдает 404.
Так вот. Как по человечески делать-то такую хуйню? Я пока что придумал только: смотрим куку, если в куке обращались по прокси, считаем что это запрос по прокси и соответственно роутим к последней камере. Думаю в чем проблема тут - ясно, если маршруты совпадают - на сервак мой без чистки кук уже не так просто попасть будет, ну и плюс - если камеры одинаковые - роутить будет к последней подключенной, разве что я буду чистить куки при обращении к новой камере каждый раз.
Может быть есть какие-то предложения, няши?
Да, я загуглил, есть такая штука как YARP, но чет оно какое-то сложное, а простые примеры - это статичная прокси для одного маршрута, а нужно, условно, по запросу /api/cam/{id} - посмотреть в базе, проверить права доступа пользователя, ну и если все ок - послать запрос к нужной камере и дальше типа чел с камерой работает.
Аноним 31/03/22 Чтв 21:03:33 23267741747
>>2326434
>С шарпами и прочими питухонами нам теперь будет туго, это да.
Почему? Что изменилось в применении шарпов за этот месяц?
Аноним 01/04/22 Птн 18:30:47 23272501748
Господа. Сегодня зачем то решил обновить студию 22 и вылезло окошко об ошибке, что .нет 4.8 не может обновиться. Пробовал чистить кэш, переставлять заново и студию и лаунчер, но все одно и тоже. Кто нибудь сталкивался с подобным?
Контрактное тестирование Аноним 02/04/22 Суб 00:26:15 23273891749
Аноны, может кто сталкивался с контрактным тестированием, с использованием Pact, и может поделиться годным репозиторием с примерами как для дебилов. Что бы прям пошагово и понятно. Буду очень благодарен.
Аноним 02/04/22 Суб 08:07:49 23274331750
Здарова, шарпаны. Помогите, я тупой.
Вот есть у меня асп где

Контроллер
{
Метод(данные)
{
Тут пишем в данные в бд
Вопрос
Как вернуть приславшему данные "Все норм, ок, понял,
принял записал"
А потом тригернуть другой метод (может в другом классе, неважно), который уже на моей стороне спокойно займется чтением и обработкой этих данных в бд
}
}

Аноним 02/04/22 Суб 10:12:08 23274591751
>>2327433
Запустить сервис аля BackgroundService/IHostedService, где будет входящая очередь (хотя бы Chanel). В нее закинул в очередь и ответил юзеру
Аноним 02/04/22 Суб 16:14:46 23276131752
>>2327433
Если тебе не принципиально что сначала вернуть, потом - триггернуть, то делаешь простой медиатор, на стороне контроллера - триггеришь, на стороне того кто должен что-то делать - делаешь. Это, что называется - самое простое решение.
Можно и по другому:
Делаешь класс:
TasksQueue,
в нее просто кидаешь лямбду с задачей, которую ты собираешься спокойно выполнять, делаешь обработчик этой очереди, как - сам решишь, вон предложили уже IHostedService. Решение чуть сложнее и нужно исключительно если у тебя нужно как-то ограничивать нагрузку, при этом как человек пользоваться нормальными очередями и лоадбалансерами - ты почему-то не хочешь.
Можешь, как человек - делать Event Driven архитектуру. Твой контроллер - просто передает хендлеру и ждет ответ, хендлер уже кидает кидает события, у события могут быть миллиард обработчиков. Пример хороший - IdentityServer, они вот так как раз и делают.

Короче. Вариантов тьма.
Аноним 02/04/22 Суб 16:20:01 23276171753
1.png 21Кб, 669x679
669x679
2.png 29Кб, 553x808
553x808
3.png 58Кб, 500x947
500x947
>>2327433
Я бы примерно так сделал...
Аноним 02/04/22 Суб 18:43:50 23277361754
Аноним 02/04/22 Суб 19:31:45 23277741755
16489056033761.png 50Кб, 553x808
553x808
>>2327617
Вообще изначально что-то подобное и планировал с асинк/эвейт, но теперь с новыми советами еще по-другому попробую
Я правильно понимаю, что вот в этом месте вернет id только когда дойдет жо первого await в вызываемых методах? Т.е. после первого await в DoWork в данном случае?
Аноним 02/04/22 Суб 20:47:58 23278101756
>>2327774
> Я правильно понимаю, что вот в этом месте вернет id только когда дойдет жо первого await
Ну да. Если это критично - можно сделать вот так:
_workTask ??= Task.Run(async () => await DoWork(_stopWorkTokenSource.Token));
Тогда ты еще до входа в метод выйдешь на верх и вернешь Id.
Аноним 02/04/22 Суб 21:49:20 23278511757
Как я понимаю, в C# есть 3 типа сущностей: валью тайпы, хранят данные фиксированного размера по месту, классы - хранят ссылку на объект фиксированного размера в куче и строки/массивы - почти как классы, но со своими заморочками, по типу незаданного размера и прочего. Как в эту систему вписывается тип Span<T>?
Аноним 02/04/22 Суб 22:01:22 23278541758
>>2327851
Для всего выделяется память. Span - унифицированный доступ к куску памяти, где бы она не была выделена.
И нет у строк и массивов никаких заморочек.
Аноним 02/04/22 Суб 22:01:48 23278551759
>>2327851
Держи просто в голове, что все - это просто память с которой ты работаешь. Велью - могут лежать в куче, а референсы, при определенных условиях - на стеке и сразу же освобождаться.
Никакой магии тут нет на самом деле. Это разделение нужно скорее для семантики, а не сути.
Span<T> - обертка над памятью, раньше бы ты то же самое делал unsafe кодом, но unsafe'а боятся нубы(да и не только нубы, а еще те кто с шарпа-жавы начинал), будто это какая-то черная магия, которая скораптит и они будут долбиться указателями в сраку. Ну, потому придумали оберточку удобную в виде легкой структурки, которая соответственно еще и не нагружает GC.
Аноним 02/04/22 Суб 22:53:36 23278861760
>>2327854
>И нет у строк и массивов никаких заморочек.
Ну как же нет, когда есть. Т.е. про что там по строкая - я плохо представляю (я смотрю на https://source.dot.net/#System.Private.CoreLib/String.cs,8281103e6f23cb5c и для меня это как эльфийский, насколько же C# отвратный непонятный язык), а вот массивы - я уверен, что они с точки зрения памяти совсем по особому управляются, хранятся и обрабатываются, не как классы.
Аноним 02/04/22 Суб 22:58:44 23278921761
>>2327855
>Ну, потому придумали оберточку удобную в виде легкой структурки, которая соответственно еще и не нагружает GC.
И вот с организацией этой оболочки мне и непонятно. Т.е. определяется оно через структуру, но там же тоже все как на эльфийском (https://source.dot.net/#System.Private.CoreLib/Span.cs,d2517139cac388e8), и мне вот интересно, это просто хитровыебанная структура, или это магическая структура, по типу как аррей - магический класс, который на уровне clr обрабатывается особым образом, не как все другие классы.
Аноним 03/04/22 Вск 04:51:30 23279811762
>>2327886
>Т.е. про что там по строкая - я плохо представляю
А не нужно туда смотреть. Там помесь unsafe с интристиками. Собственно, для этого и придумывают языки высокого уровня, чтобы не смотреть вот туда.

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

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

А вот Span являются магическим. Там есть особенности завязанные на рантайм, поэтому в неткор они работают лучше чем в старом фреймворке, где есть ограничения.
Аноним 03/04/22 Вск 16:03:38 23281731763
Аноны, на странице регистрации есть один комбобокс в который я загружаю данные из базы в конструкторе. Есть в страницы OnPost в которой проверяется правильная ли модель и если зарегистрировать пользователя не удалось то добавляются ModelState.AddModelError() и делается return Page(); (а при валидности всех данных идет редирект на страницу входа).
Все ошибки подсвечиваются НО, после этого у меня комбобокс на странице абсолютно пустой, хотя сам конструктор через брейкпоинт срабатывает. Что я делаю не так?
Где блять искать РАБоту? Аноним 03/04/22 Вск 18:48:36 23282611764
Может быть мне кто-то тут поможет...

Короче вводные: Есть вышка по ИТ, сейчас получаю магистра. РАБотаю 9 месяц разработчиком ERP говна (Microsoft AX) на языке, схожим с шарпом. Шарп тоже изучил базу, в ооп могу, но делегаты с интерфейсами и LINQ со списками не умею. До этого РАБотал помощником сисадмина, изучил сети. Есть гит, на нем лежат разработанные тулзы для VS, для разработчиков сделал. Еще на юнити игру написал. Однако не знаю паттернов проектирования и алгоритмов всяких. Английский С1 деревенское есть, и сертификат тоже, но не долбаеба.

Вопрос: где блять искать работу? Хочу со своих 30к перекатиться куда-то в более приемлемое место, хотя бы на 50. Какую сферу деятельности смотреть? Смотрел гейдев, но там нужны онли мидлы, а я себя с трудом джуном назвать могу. Ищу везде: ХХ, Хабр, Линкедин - все по нулям нахуй. Никому не нужен. Руки опускаются конкретно, особенно на фоне моих дногруппников которые якобы нихуя не умеющие вкатываются на 70к в месяц. Что мне делать? Муравью уже хуй приделал, не помогло.
Аноним 03/04/22 Вск 20:17:26 23283631765
image.png 106Кб, 1826x782
1826x782
ПОМОГИТЕ! Что я делаю не так? Как использовать класс из другого файла?
Аноним 03/04/22 Вск 20:41:23 23283851766
Аноним 03/04/22 Вск 21:02:30 23284061767
>>2328261
> Что мне делать?
Вот ты главное не злись, не ругайся, ок? Я чисто по брацки посоветую. Иди на завод.
Аноним 03/04/22 Вск 21:03:38 23284071768
>>2328406
Обидно потраченных сил
Аноним 03/04/22 Вск 21:07:26 23284121769
>>2328407
Жизнь лотерея. Не всем удаётся ухватить джек-пот взамен на потраченные усилия.

Делай персональные проекты, нарабатывай портфолио. Лет через 5 работы на заводе и писания своих проектов вечерами, наработаешь авторитет и найдёшь работу по специальности.
Аноним 03/04/22 Вск 21:11:40 23284141770
>>2328412
Дык я сейчас на айти заводе работаю по сути. А то и на айти каторге. После которой сил вообще не остается, а потом учеба. Опять же сил только на одну игру хватило, и на расширения, но не очка. Ну и с учебы пара сайтов есть на пейтоне, но это я даже за проекты не считаю
Аноним 03/04/22 Вск 21:21:56 23284201771
>>2328414
Как говорил Наполеон: Кто только подумал о поражении, тот уже проиграл.
Аноним 03/04/22 Вск 21:35:04 23284271772
>>2328261
Забудь про геймдев. Он и до события в РФ был почти что мертв. А сейчас когда все площадки для сбыта огородили, уже не почти.
В твоем случае нужно делать:

1) Составить нормальное резюме. Находишь хорошую херочку и просишь оценить, и сказать что и как поправить. Можешь заплатить бабок или еще как ее ублажить. Но факт в том, что в первую очередь твое резюме будет смотреть эйчар, и ориентироваться надо на нее. И я говорю не про понравился/не понравился. Им на это давно уже похуй, через них в день настолько дофига проходит кандидатов, что они как роботы кандидатов рассматривают, только на то, подходят они под нужные параметры или нет.
Половина времени твое резюме даже не открывают, т.к. видят первые несколько строчек и закрывают вкладку.

2) Вариант долбиться в вакансии где дают тестовые. Берешь тестовое и делаешь. Похуй на то укладываешься в указанные сроки или нет. Делаешь, отсылаешь, просишь фидбек. Не получаешь, идешь к знакомому, на форум, к преподу и просишь тоже самое.
Аноним 03/04/22 Вск 22:00:49 23284411773
>>2328427
2 вариант годный, надо попробовать, а насчет первого, мне говорили что у меня норм резюме (хотя на дваче обсирали конкретно).

Я валился именно на собесе, даже если собес хорошо проходил. За исключением тяжелых где я сам понимал что тупой в основном собесы состояли из примитивнейших вопросов, на которые я отвечал и мне говорили что я молодец. А потом слали на хуй. Или было когда отбор в несколько ступеней, сначала пишут что я успешно прошел этап и со мной свяжутся для следующего а потом тупо игнорили (это я так в МТС проходил). А самое крутое было, когда на вопрос почему меня не взяли, мне сказали "вы уже обладаете высоким уровнем знаний но их к сожалению недостаточно до базового уровня". Понимай как хочешь.
Аноним 03/04/22 Вск 22:04:05 23284441774
>>2328420
Да, я ловлю себя на мысли что у меня выученная беспомощность. Но сука, а как ей не быть если все вот так?

Эх, если бы блять была работа где бы мне платили за мое нытье... Я бы заработал миллионы а потом уволился потому что причин для нытья нет, пошел бы к психологу или психиатру, вылечился бы и начал бы нормальную в моем понимании жизнь с нового листа. Если б да кабы...
Аноним 03/04/22 Вск 22:55:39 23284711775
>>2328441
>вариант годный, надо попробовать,
У меня достаточно много знакомых, кто именно так и вкатывался. Брал тестовое, делал хорошо-качественно и потом проходил. Тут главное две вещи, сделать качественно и потом смочь пояснить за каждую строчку кода, т.к. две неделю-две над ним пыхтел и сделал все по чесноку.
>>2328441
>а насчет первого, мне говорили что у меня норм резюме (хотя на дваче обсирали конкретно).
Я вот тоже так когда-то думал и не понимал почему мне никто не отвечает. Потом одна опытная херочка (из тех которые только 500К наносеков хантят) подсказала что и как у меня неправильно и заставила переписать, хотя я и сильно сопротивлялся, думая что это полная херня. И мне неожиданно сами начали названивать и приглашать на собесы.

>>2328441
>состояли из примитивнейших вопросов, на которые я отвечал и мне говорили что я молодец.

Нормальный собес должен по времени распределяться где-то так. 40% времени ты отвечаешь на вопросы. 40% времени это попизделки о твоем предыдущем опыте, и 20% презентация для тебя фирмы в которую ты устраиваешься. Если у тебя на ответы на вопросы уходит 80% времени, то это плохо. Ответы на вопросы не должны быть тупо по учебнику. "Что такое x? - x это 'определение' " - плохой ответ.
Нормальный ответ: "Что такое x? Да знаю, это то-то и то-то, я вот такую штуку делал и мне x там очень пригодился, а вот в другом случае я вместо него y применил и вообще обалдел"

В третьей части, тоже важно какие ты будешь задавать вопросы, когда тебе про контору рассказывают. Если ты спросишь "сколько платят и где у вас можно посрать/поспать/пожрать" - твои цели понятны. А вот если спросишь какие инструменты используются, какой флоу при работе с vcs используется. Какие технологие тебе стоило бы еще подучить по их мнению. То намного больше расположишь к себе.

Алсо, насчет контор типа МТС и прочих подобных больших шарашек. Там часто собесами просто штаны протирают, чтобы массу просеять и ходить на них стоит только ради опыта прохождения собесов. Лучше искать конторы поменьше, человек на 100...200. Там может и не по верху рынка платят, но вполне приемлимо. И новичкам больше рады.
Аноним 04/04/22 Пнд 05:57:01 23285291776
>>2328471
Понял, спасибо больше за помощь
Аноним 04/04/22 Пнд 09:08:29 23285591777
>>2325995
> //exception
А если:
string what = "Asd";
var result = Enum.TryParse(what) ? Enum.Parse(what) : Enum.YourDefaultConstant;
Какой вектор развития выбрать? Аноним 04/04/22 Пнд 12:14:30 23286621778
Изучил шарпы, могу всякую хуйню делать, куда развиваться? Какие сферы можно рассмотреть? Может идей для пет проектов дадите? Заранее спасибо
Аноним 04/04/22 Пнд 18:18:35 23289051779
Как из waitHandle слепить CancellationToken?
Есть способ навесить на waitHandle какой нибудь обработчик события что бы он дергал токен?
Аноним 04/04/22 Пнд 18:39:30 23289231780
>>2328662
> идей для пет проектов дадите?
Народу не хватает визуального (WYSIWYG) дизайнера форм. Чтобы он отдельно запускался. Чтобы конфигрурировался под разные форматы: xaml, axaml, xeto, jeto. Чтобы мог из одного в другой формат формочки конвертировать, открывать, сохранять.
Цены бы тебе не было, если б ты такой дизайнер запилил.
Представь себе, есть например, софт на WPF и разраб хочет поставить его на кроссплатформенные рельсы. От осознания что весь ворох форм ему придётся заново дизайнить в другом UI-тулките он приходит в ужос! И тут появляешься ты, спаситель, со своим многоформатным дизайнером форм!
Аноним 04/04/22 Пнд 19:01:45 23289481781
>>2328905
Так а проблема то в чем навесить?
Аноним 04/04/22 Пнд 20:56:43 23290381782
Смотрите. Ef core с пятой версии может many-to-many сам в бд в три таблицы превращать (без дополнительного указания в коде промежуточной сущности). И в коде собственно без проблем делаю муди = хуй.инклюд(х=>х.яйца). Но доступ к яйцам тогда получается только через for/foreach.

А можно ли без промежуточной сущности в коде тогда получить аналог хуй.join(ХуйЯйца).Join(Яйца)? Или как бы сахар сахаром, а как что-то сложнее - делай третью сущность?
Аноним 04/04/22 Пнд 21:12:39 23290471783
image.png 255Кб, 1200x628
1200x628
>>2328923
А чего нибудь такого чтобы сразу нахуй не выгореть есть?
Аноним 04/04/22 Пнд 22:21:56 23290821784
>>2328662
Там говорят новый UUID придумали. Сделаешь хороший генератор - будешь молодец.
Аноним 04/04/22 Пнд 22:51:52 23290901785
>>2328948
А как? У WaitHandle только методы ожидания есть, а надо что бы когда он засигналит мой обрабочик отработал где бы я токен отменил.
Аноним 04/04/22 Пнд 23:39:38 23291221786
Аноним 05/04/22 Втр 01:08:08 23291551787
>>2329090
ну напиш код где после Wait заканселишь нужный токе и этот код в пул потоков. Ну заблокируешь один поток из пула если свой не создашь. Не хочешь блокировать - юзай асинк WaitHandle
Аноним 05/04/22 Втр 01:11:18 23291561788
Аноним 05/04/22 Втр 04:29:20 23291741789
Я правильно понимаю, что у C# нет будущего? Посудите сами:

1. Половина интернета работает на php, и переписывать ее никто не собирается, а если и собирается - то частями, на более новый php

2. На .Net практически нет готовых решений. CMS, движки для блогов, шаблоны лендингов, форумов, да чего угодно - на том же js миллионы решений, разворачивающихся из коробки одной командой и делающие что надо. А на дотнете - а нет нифига на дотнете, какой-нибудь облезший e-commerce, да и только.

3. Комюнити. На js - оно огромно. Миллионы тулзов, миллионы библиотек на любой вкус и цвет, любая задача решается подключением библиотеки.

4. Производительность не важна. Дотнет позиционируется как высокопроизводительный веб-фреймворк. Вот только она, ну, не нужна никому. Если ты не лидер рынка с миллионами пользователей, или даже десятками миллионов пользователей - тебе вообще до пизды, даже если нода работает в 10 раз медленнее asp.net-а. Потому что сервер ценой в половину программиста - с лихвой перекроет разницу в данной потере производительности, а разрабатывать на js, в силу предыдущих пунктов, быстрее, всегда. И это я еще молчу про системы контейнеризации, которые делают работу с потоками в asp.net ненужной сложностью и костылем, который всегда мешается, но никогда не пригодится.

5. Даже если производительность важна - .net все равно сосет. Ведь есть go, который можно выучить и встроить в cicd пайплайн быстрее, чем прочитать про весь синтаксический сахар, добавленный в последней версии C#, и при этом go еще прямо из коробки, с дефолтными настройками и интуитивно написанным кодом, давит стрелку в пол. Да, asp.net тоже может уложить стрелку, но тебе для этого придется обмазаться конфигами, пулами, спанами и прочим аллокейшн-фри кодом.

6. Фронт все равно на JS. Майки могут сколько угодно рассказывать про блейзор, но у него нет будущего, никто никогда не будет учить xml и не будет встраивать нативную поддержку блейзора в браузеры. Т.е. все это будет медленно, криво и некрасиво. А если все равно учить js - то зачем платить больше (и тратить время на C#)?

7. Перспектив роста нет. Рост ведь зависит от того, куда течет новая кровь, на каком языке кодят - тот и растет. Вот только по данному параметру C# тоже глубоко сосет у JS. JS уже установлен в любом браузере, нюфагу даже делать ничего не нужно, чтобы получить доступ к среде выполнения, можно прямо в браузере код писать и радоваться, что что-то происходит. VS Code позволяет полноценно программировать на js. У шарпа же все очень плохо. Вс-кодом пользоваться попросту невозмо, это адская боль. Никаких платных райдеров новичок покупать не будет. Остается только огромная, гигантская студия, занимающая 50 гигабайт. Новые пользователи отсеиваются уже на этапе решения какой язык попробовать.

8. Язык превратился в срань. Когда-то C# был хорошим, приятным языком. Но теперь это уже не так. За эти годы в него добавили не только прекрасные линкью, кортежи и свитч экспрешены, но и адские кучи адского говнища, при этом оставив старое для обеспечения обратной совместимости. Теперь код на c# выгляди как франкенштейн из разных стилей, одну и ту же задачу можно решить десятком разных внешне непохожих способов, нет единообразия, нет простого понятного синтаксиса. C# скатывается уже даже не к C++, он скатывается к брейнфаку.

9. На нем нет работы. Никому C# не нужен. Да, если ты синьор - ты не пропадешь. Но даже знакомые миддлы испытывают проблемы при трудоустройстве, на интервью буквально издеваются, требуя наизусть цитировать Священное Писание (Рихтера) об аллокации памяти. Причем надо ответить именно как написано у Рихтера, а не как оно работает сейчас, включая те версии, на знание которых тебя собеседуют. Что уж говорить про войтивайтишников. На каждую вакансию - по 3 тысячи кандидатов, вас по js и фронтенду будут дрочить больше, чем на собеседовании на позицию js-фронтендера.

Короче, вы как хотите, а я выкатываюсь из C#. До конца неделю подтяну базу по ноде и реакту, и буду рассылать резюме на жс-ера. Нужно спрыгивать с поезда, пока он еще не слетел в обрыв.
Аноним 05/04/22 Втр 06:25:21 23291811790
>>2329174
зачем вообще с этим бредом в тред заходить? чтобы напихали по самое?
Аноним 05/04/22 Втр 07:38:25 23291851791
>>2329174
Могу только сказать, что монополия JS это худшее, что случилось в айти за последние десятилетия.
Пункт 8 согласен.
Аноним 05/04/22 Втр 08:17:34 23291911792
>>2329174
>можно решить десятком разных внешне непохожих способов,
и что? даже в питоне, который типа идеал единообразия - та же самая картина

>но и адские кучи адского говнища
ну из говнища там разве что топ левел маин и следствие от него. лютая ненавистная дичь. Что еще?
в остальном шарп страдает что не добавляют нужного в угоду чем то бесполезному

Аноним 05/04/22 Втр 09:12:33 23292151793
>>2329174
Мне похуй, мне просто C# нравится. PHP и JS я пробовал и даже делал небольшие проекты и больше на них не вернусь, это реально конченная срань.
>любая задача решается подключением библиотеки
Из личного опыта - либы на жиес часто забрасываются и депрекейтятся, из-за чего и сборщик орет матом, и гвард гитхаба тоже орет матом что там в либах критикал вулнерабилитиес. npm это похоже реально русская рулетка в которую нужно играть постоянно.
Аноним 05/04/22 Втр 09:18:33 23292171794
>>2329155
Легаси клиента не хочется трогать.

>>2329156
Cпс, хоть и сложновато но походу другого пути нет.
Аноним 05/04/22 Втр 09:58:32 23292381795
>>2329122
Да я уже игру разработать успел, надо что-то чуть потяжелее но не пиздец какое тяжелое
Аноним 05/04/22 Втр 10:02:37 23292401796
>>2329082
Поподробнее можно?
Аноним 05/04/22 Втр 10:25:32 23292541797
Есть лист элементов с определённым набором полей. Как можно динамически переопределить в нём некоторые поля у элементов?
Аноним 05/04/22 Втр 10:27:00 23292551798
Аноним 05/04/22 Втр 10:39:20 23292611799
>>2329255
Например так обычно делает переопределение
var List = List.Select(item=>
{
item.field1= 1;
item.field2= 2;
item.field3= 3;
return item;
}).ToList();
А я не знаю, какие field мне могут понадобиться и должен как-то на лету их подставить.
Аноним 05/04/22 Втр 10:44:04 23292631800
>>2329261
Так может требуемые поля как то в массив вкидывать а потом циклом их подставлять для вызова?
Аноним 05/04/22 Втр 10:51:44 23292721801
>>2329263
Как? У меня была какая-то похожая идея, но как по мне это хуйня. Потому что нужно именно оригинальный лист нужно переопределить, ибо он привязан к интерфейсу и обновлённые данные должны там отобразиться, а если просто на основе его что-то там собрать, то толку не будет
Аноним 05/04/22 Втр 10:54:39 23292731802
>>2329272
Блин, тогда не знаю... Не сеньор и не мидл
Аноним 05/04/22 Втр 11:18:16 23292871803
>>2329261
и что с этим решением не так? То, что изменяет оригинальные item? ну делай клоны. Ну или использовать recod .. with - где те же клоны за тебя пишет компилятор
Аноним 05/04/22 Втр 11:20:13 23292891804
>>2329287
>и что с этим решением не так?
То, что я не знаю заранее ни какие филды мне надо будет переопределить, ни их количество. Инфа об это приходит из другого метода в виде строк
Аноним 05/04/22 Втр 11:26:14 23292951805
Аноним 05/04/22 Втр 11:32:41 23292991806
>>2329289
Ну значит использовать кодогенерацию. Сделать какой нибудь PropertySetter у которого вызывать propSetter.Set(item, 'PropName', value)
Конечно будет боксинг, но работать будет
Аноним 05/04/22 Втр 12:55:00 23293771807
>>2329299
Попробую, хотя по времени это пиздец будет, скорее всего
Аноним 05/04/22 Втр 14:04:12 23294311808
>>2329238
> игру разработать успел
Показывай.
> надо что-то чуть потяжелее но не пиздец какое тяжелое
Инженерный калькулятор с простыми дробями, графиками функций и т.д.
Аноним 05/04/22 Втр 14:17:08 23294401809
>>2329431
А что можно такого сделать, чтобы на собеседовании потом не косились с видом "Ты зачем это делал? Ты что, идиот?".
Аноним 05/04/22 Втр 15:04:03 23294781810
Аноним 05/04/22 Втр 16:33:28 23295481811
>>2329440
> чтобы на собеседовании потом не косились с видом "Ты зачем это делал? Ты что, идиот?"
Без обид анон, но если ты уже так думаешь, то скорее всего на тебя уже косятся, ЧТО БЫ ТЫ НИ ДЕЛАЛ.
Аноним 05/04/22 Втр 18:48:19 23296571812
>>2329478
>I did not leave any comments because the code is not hard to understand.
Перевод: "Я ленивая жопа. Мне насрать на тех с кем мне придется работать."
>I have some gaps in my knowledge of GitHub to avoid storing junk files :c
Перевод: "Я еще более ленивая жопа, т.к. мне лень потратить 5 минут, чтобы разобраться с базовым функционалом"

Аноним 05/04/22 Втр 19:45:46 23297231813
>>2329377
Да там ничего сложного. Прочитал тип, получил все свойства и для каждого создал setter_writer любым удобным способом - кодоген через expression/emit или вообще без онных - используя virtual/override механизм. Полученные врайтеры в словарик и юзать этот словарик.
Если допускать боксинг, то изи, а вот без него...а оно надо такой гемор?!
Аноним 05/04/22 Втр 20:29:41 23297421814
>>2329657
>я ленивая жопа
Да, все так. Хотя там реально интуитивно понятно

>насрать на тех с кем предстоит работать
Мне не с кем работать. А на своей работе я комменты оставляю

Аноним 05/04/22 Втр 21:11:25 23297631815
>>2329377
Вот например наивная реализация без кодогена
https://pastebin.com/Jj4esAFD

с кодогеном примерно так же - море всего (so примеры или куча готовых либ) что позволяет сгенерить из геттера сеттера метод ридер врайтер - через Expressions/emit и точно так же держать в словарике
Аноним 06/04/22 Срд 13:17:01 23302001816
image.png 13Кб, 1089x99
1089x99
Как это вообще возможно?
Аноним 06/04/22 Срд 13:46:58 23302181817
>>2330200
Нихуя не понимаю, что тебе нужно? Этот тег так и работает
Аноним 06/04/22 Срд 14:06:31 23302371818
>>2330218
??????????????????
чего?
ну хорошо, а где именно тогда хранится вот то самое текущее состояние, как его изменить?
Аноним 06/04/22 Срд 14:27:38 23302481819
>>2330237
Я вообще не понимаю, что тебе нужно и при чем тут HTML в си шарп треде?
Аноним 06/04/22 Срд 16:58:54 23303671820
1599823157408.png 29Кб, 1136x162
1136x162
1528553824096.png 24Кб, 490x476
490x476
)
Аноним 06/04/22 Срд 17:45:36 23304091821
Сап, аноны, недавно первый раз прорешал тестовое задание на стажировку, прошёл этап, дальше намечается техническое собеседование. О чём могут на нём спрашивать? В самом тестовом были задачи более-менее прикладного характера из разряда реализации префиксного дерева, обработки огромного файла и подобия написания микросервиса.

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

Ещё подозреваю, что могут задать вопросы конкретно по шарпам, к каким есть смысл готовиться? Попросят ли пояснить разницу между ref и out или интерфейсом и абстрактным классом, как это пишут во многих "топ-146 вопросов по C# к собеседованию"?

Могут ли дать какой-нибудь лайвкодинг, учитывая, что тестовое вроде как уже написал? А ещё, что делать, если понимаешь, что не знаешь ответа и обосрался или что-то около того?
Аноним 06/04/22 Срд 18:16:02 23304331822
>>2330409
Не парься, тебя не возьмут
Аноним 06/04/22 Срд 18:35:55 23304541823
>>2330409
>Я сам студентота второго курса, и, думаю, меня можно вполне себе разъебать по алгоритмам, поэтому сейчас вспоминаю различные вещи из дискры и алгоритмизации, плюс на всякий случай собираюсь вспомнить какие-нибудь две сортировки, относительно эффективные.
Покупаешь C# 8.0 Pocket Reference (Joseph Albahari и Ben Albahari) (есть на русском, можно для 9-й версии, в зависимости от того что учил)
Часа за 3...4 до собеса пролистываешь ее, там вся база максимально ужато и понятно, для быстрого обновления знаний.
Еще так же накати перед собесом несколкьо первых глав из "Грокаем Алгоритмы", там где O-нотация разжевывается и базовые сложности.
Если собес онлайн, то держи их при себе как шпаргалки.

По сортировкам сейчас редко где спрашивают что-нибудь. Но если спрашивают, то это обычно либо quick либо bucket.

>Попросят ли пояснить разницу между ref и out
Обязательно, кое-где еще и про in спросят.

>или интерфейсом и абстрактным классом
Тоже обязательно. Плюс спросят возможно ли в шарпе множественное наследование. И для справки - интерфейсы реализуются. Скажешь, что они наследуются - обоссут.
Еще обязательно спросят про коллекции (словарь и лист)
Про GC сейчас часто спрашивают. Сколько поколений, как работает, что есть LOH и SOH.
Про делегаты еще спрашивают, но вяло.
Про асинхронщину обязательно спросят.
Стек, куча, упаковка-распаковка. Референс и вэлью тайпы и т.д.
Вобщем читай албахари, там все есть.

>Могут ли дать какой-нибудь лайвкодинг, учитывая, что тестовое вроде как уже написал? А ещё, что делать, если понимаешь, что не знаешь ответа и обосрался или что-то около того?
Сейчас что-то серьезное лайвкодить на собесах не дают, кроме самых отбитых. Обычно дают простенькие задачки вроде:
1) Простой пример когда асинхронный метод вызывается из неасинхронного. Что произойдет и в каком порядке буковки выведутся в консоль. Как исправить, чтобы вывелись в нужном порядке (вставить aync Task и await в нужных местах)
2) Составить какой-нибудь не сильно навороченный sql-запрос с парой джойнов и условий.
3) Покажут кусок говнокода и спросят твое мнение о нем. Все ли тебе нравится в нем и не хочешь ли ты там, что-нибудь поменять. Тут просто хуяришь по заветам дяди Боба, насколько фантазии хватит. Сможешь к этом хотя бы S из солида приплести уже хорошо будет.

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


Аноним 06/04/22 Срд 19:43:27 23305041824
>>2330454
Спасибо, анон! Албахари наворачиваю тоже, в том числе сейчас. Хотел ещё уточнить по поводу линка, часто ли по нему спрашивают что-то, если да, то на примерно каком уровне? В последнее время много его вижу в чужом коде, по видимому довольно популярный.
Аноним 06/04/22 Срд 21:27:50 23305851825
>>2330504
Linq - это тема. Офигенно удобная штука. Если хоть каким-то образом работаешь с данными (коллекции, БД и т.д.) то без этого ты в работе не обойдешься. Он сейчас практически везде.
Но что удивительно, на собесах его не сильно дрючат. В основном спрашивают за базовые методы (Where, Select, FirstOrDefault (и в чем его отличие от простого First), Any).
В контексте Linq могут спросить про отличие от IEnumerable и IQueryable. И про отложенное и немедленное.
Аноним 06/04/22 Срд 21:38:23 23305901826
>>2330409
Тебя ещё за дефолтные интерфейсы могут спросить. IEnumerable, IQueryable, IDisposable. Туда же копирование, сравнение. Что-нибудь про yield. Про линк: select, where, orderby, aggregate и тд. Могут просто кинуть код с линком и попросить запрос оптимизировать. Про рефлексию могут спросить. Что-нибудь про using, во что превращается и зачем нужна. Также за string vs StringBuilder. Что под капотом у билдера, плюсы/минусы, кейсы использования.
Это что касается самого шарпа без привязки к фреймворкам.
Аноним 06/04/22 Срд 22:03:10 23306091827
>>2330590
>Про рефлексию могут спросить.
Это уж совсем редкость. Такое уже спрашивают либо если видят, что кандидат сильный и дохуя знает, либо чтобы просто доебаться.
С рефлексией вообще все стараются по минимуму дела иметь, только если это не спец проект какой-нибудь вроде какой-нибудь ERP c кодогенерацией структуры БД на лету или хитрой системы плагинов. Но новичков к таким делам обычно не подпускают, т.к. там не умея легко хуйни наделать.
Аноним 07/04/22 Чтв 09:22:12 23307611828
>>2330248
Чел, КАК ЭТО В ПРИЧНИПЕ ВОЗМОЖНО что бы внутри елемента было одно, а браузер показывал вообще другое, КАК? вот там слово TEST ОТКУДА оно взялось если не с хтмл? ГДЕ ОНО? как его посмотреть или найти, где оно?

в с# треде потому что это происходит в блазоре
Аноним 08/04/22 Птн 09:18:47 23316201829
Чем можно читать XLS из excel в net core 6? Именно XLS, а не XLSX

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

Как сделать по нормальному?



(вообще почему такая жопа в net core с ms office? Реально все через жопу, либо вообще никак)
Аноним 08/04/22 Птн 09:31:48 23316241830
>>2331620
Не рассматривай мой ответ всерьёз, подожди других анонов, но я с дивана вижу только вариант через неуправляемый код, через дидову автоматизацию открыть ексель-объект, в нём открыть документ и делать свои дела.
Аноним 08/04/22 Птн 13:12:39 23317891831
>>2330454
>И для справки - интерфейсы реализуются. Скажешь, что они наследуются - обоссут.

interface IHeroOFCSharp : IDvacher
{ }
interface IDvacher { }

поссал сверху
Аноним 08/04/22 Птн 19:43:22 23321181832
Аноны, я себя умственно-отсталым чувствую. Год писал разные небольшие десктоп программы на Delphi, когда вкатывался в программирование. Сейчас решил ASP.Net Core изучать, работу всё-таки надо искать. И что-то пиздец как трудно даже начало даётся…
Суть я уловил, контроллеры, гет делит апдейт итд. Но когда пытаюсь решить задачи постоянно спотыкаюсь. Как будто изучил недостаточно.
Можете посоветовать что-нибудь почитать по микросервисам на webAPI? Я уже думаю блять ментора нанимать, только хз где его искать…

Нет, конечно я бы наверное мог пойти работать на десктоп разработку, деньги меня не сильно волнуют. Но хочется развиваться в профессии, а не сидеть в зоне комфорта
Аноним 08/04/22 Птн 19:47:42 23321221833
1649436463450.png 210Кб, 608x352
608x352
>>2332118
> я бы наверное мог пойти работать на десктоп разработку
> решил ASP.Net Core изучать
В нете конкуренция охуевшая. Макаки-крудошлёпы тебя сожрут, блять.
Аноним 08/04/22 Птн 20:02:16 23321261834
>>2332122
Да сейчас везде конкуренция ахуевшая
Аноним 08/04/22 Птн 20:13:47 23321361835
>>2332126
Не в тему треда, но я щас щупаю движок Django, нраица, но это питон.
Аноним 08/04/22 Птн 22:16:53 23322191836
>>2331789
Контекст был "класс <-> интерфейс".
Аноним 08/04/22 Птн 22:20:47 23322241837
>>2332118
>посоветовать что-нибудь почитать
"ASP.NET Corr in action". Русек в наличии.
Аноним 08/04/22 Птн 22:21:31 23322251838
>>2332224
Core конечно же. Очепятался.
Аноним 08/04/22 Птн 23:22:12 23322511839
>>2332224
а про Адама Фримана что скажешь ?
Аноним 08/04/22 Птн 23:24:49 23322521840
>>2330454
>Сколько поколений, как работает, что есть LOH и SOH
POH забыл
Аноним 08/04/22 Птн 23:52:05 23322681841
пт.png 4Кб, 488x261
488x261
Шарпаны, может вы знаете. Где-нибудь на просторах интернетов можно найти какие-нибудь сборники отдельных кадров ascii анимаций в виде символов для копипаста в консоль. Вот эта птичка чуть ли не единственное, что удалось найти. Тонны блядь ебучих гифок без исходного текста фреймов, килограммы гайдов как запилить свой собственный конвертер, и на все это одна сука птичка при этом
Аноним 09/04/22 Суб 00:17:13 23322791842
>>2332268
https://www.qqpr.com/
Вот здесь например, можешь из жс файлов кадры как раз вытащить. Они правда с хтмл тэгами
Аноним 09/04/22 Суб 12:05:05 23323811843
>>2332252
Он только в 5-м .net-е появился. Про него еще не все знают.
Аноним 09/04/22 Суб 12:24:46 23323951844
Аноны, как можно два list с разными классами объединить в один list с классом-DTO.

У меня есть рабочий linq запрос, возвращающий список со агрегатными функциями сгруппированными по времени, создающий DTO через select new DTO(){}. Сейчас количество полей в DTO увеличилось, так как надо передавать данные ещё с другого запроса...
Но как оба запроса объединить в один класс?
Аноним 09/04/22 Суб 13:46:19 23324311845
Создаём класс A с методом B, возвращающим byte[]

И так.

int c = A.B().Lenght

byte[] d = A.B()

int e = d.Lenght

Что вернет c==d?


Аноним 09/04/22 Суб 14:05:20 23324481846
Аноним 09/04/22 Суб 15:42:38 23324891847
>>2332395
выборка из нескольких источников?
Аноним 09/04/22 Суб 16:22:21 23325091848
>>2332489
Выборка из одной таблицы, но с разными условиями (отрицательные и положительные числа)
Аноним 09/04/22 Суб 17:24:36 23325701849
>>2332431
Вернет ошибку что такой код нельзя скомпилировать ведь c - int, а d - byte[]
Аноним 09/04/22 Суб 17:50:17 23325911850
>>2332570
Да, мой косяк. Я про c==e хотел спросить?
Аноним 09/04/22 Суб 18:45:05 23326181851
Аноним 09/04/22 Суб 18:55:08 23326211852
Аноним 09/04/22 Суб 19:01:35 23326251853
image.png 21Кб, 650x436
650x436
Аноним 09/04/22 Суб 19:03:33 23326261854
Ребят, как на Azure портале зарегаться? Чет карту не принимает. А без карты нельзя, даже к бесплатным сервисам нет доступа.
Аноним 09/04/22 Суб 19:09:27 23326281855
Аноним 09/04/22 Суб 19:11:23 23326291856
>>2332626
Если ты из рф - никак. Виза и мастеркард не работают и оплатить ты соответственно тоже не можешь
>>2332628
Причем тут статик? Ты вообще C# знаешь?
Аноним 09/04/22 Суб 19:27:50 23326381857
>>2332395
Никто не подскажет?
Аноним 10/04/22 Вск 00:23:31 23328051858
>>2332629
>Причем тут статик? Ты вообще C# знаешь?
Потому что у меня был не статический класс, и я хочу понять, что за херня там случилось.
Аноним 10/04/22 Вск 00:58:37 23328131859
>>2332638
объедини два запроса в 1
Аноним 10/04/22 Вск 01:09:49 23328151860
>>2332813
Проблема не в union. а в том, как передать из двух запросов создать список с объектом, в котором содержатся значения из обоих запросов.
Аноним 10/04/22 Вск 01:31:04 23328161861
Почему в c# есть удобные свойства которые одинаково задаются в одну строчку, а в яве ты постоянно должен писать get set методы где ещё и можно ошибиться с названием, ещё и занимает лишнее место?

Если хочешь пользоваться линуксом, под него есть только две бесплатные флагманские ide это idea и pycharm, то есть выбор ограничен всего двумя языками, когда на винде кроме этих ещё и есть visual studio поддерживающий кучу языков и более удобный. Но он не совсем бесплатный, а от jetbrains вообще свободный исходный код.
Аноним 10/04/22 Вск 01:35:53 23328181862
>>2332816
Короче, может ли visual studio code полностью заменить легаси visual studio? Или всегда на него нужно ставить миллион плагинов? А как насчёт kotlin и idea? А может jetbrains fleet станет новым стандартом?
Аноним 10/04/22 Вск 02:04:12 23328211863
>>2332816
насчёт сокращения записи свойств, посмотри для джавы либу lombok, особенно её аннотации @getter, @setter, @data и тд
Аноним 10/04/22 Вск 08:36:12 23328581864
>>2332816
Вот как раз для джавы нет проблем с иде: хочешь идею, хочешь эклипс, хочешь нетбинс и все кроссплатформенные. А на сишарпе всё ограничено виндой с её вижлой.
Аноним 10/04/22 Вск 08:45:28 23328621865
>>2332805
Да без разницы, это ни на что не влияет кроме того, что метод можешь вызвать без создания объекта а напрямую из класса
Аноним 10/04/22 Вск 12:52:33 23329751866
Без имени.png 144Кб, 1280x1026
1280x1026
Шаблон "ASP.NET core Api". Собственно вопрос: а где Startup.cs?
Аноним 10/04/22 Вск 13:15:17 23329851867
>>2332975
Так его же в последнем Net убрали.
Аноним 10/04/22 Вск 13:18:34 23329871868
>>2332985
Уже понял. Но спасибо за ответ. Осталось разобраться как теперь жить без него.
Аноним 10/04/22 Вск 14:02:43 23330111869
>>2332975
>>2332985
Никуда его не убирали. Если написать всё ручками и запустить - всё будет работать. Это просто новый синтаксис
Аноним 10/04/22 Вск 15:20:41 23330431870
>>2333011
Это не новый синтаксис, это новый пайплайн, типа всю настройку производим внутри верхнего уровня. Плюс там небольшие улучшения работы с конфигурациями.
>>2332975
Использовать Sturtup - можно как и раньше, если есть желание, просто перенеси конфигурирование сервисов и мидлвара туды.
В текущем виде - есть свои плюшки, типа ты можешь довольно просто без лишних телодвижений намутить нужные тебе мидлвари, проинициализировать все как надо в нужном порядке и вообще.
Аноним 11/04/22 Пнд 00:12:05 23334621871
Удивительно, но получилось объединит агрегатные функции Linq с рефлексией.
Аноним 11/04/22 Пнд 07:46:57 23335291872
А что если микрософт отключат в РФ шарп? Есть какие-нибудь варианты защититься от отключения? Может есть пиратские сборки дотнет, которые не управляются микрософт?
Аноним 11/04/22 Пнд 11:08:57 23335681873
>>2333529
Что значит отключат от шарпа? Ну, будем нюгетами через фидонет обмениваться, щито поделать
Аноним 11/04/22 Пнд 11:53:53 23335861874
>>2333568
Я боюсь, что за зря выучу шарп, а окажется, что шарписты никому не нужны.
Аноним 11/04/22 Пнд 11:59:09 23335881875
>>2271496
Почему ему не стыдно?
Аноним 11/04/22 Пнд 14:21:00 23336541876
Вот в винде сборка - это ехешник или dll-файл. А что из себя представляет сборка в других ОС? В линупсе, к примеру?
Аноним 11/04/22 Пнд 14:50:44 23336741877
image.png 400Кб, 610x666
610x666

BLAZOR
Анон, мне очень нужно имплементировать скачивание большого файла (10-20 гб) с сервера

я понимаю как это сделать, очевидно что скачивать его надо посредством чанков через сигнал р или в подобном стиле но...

КАК ЭТО СДЕЛАТЬ! мне ведь как-то нужно записать первый чанк на диск, потом когда прийдёт второй чанк указать что надо дописать биты в тот файл... легко записывать файфлы по стороне сервера, как записывать большые файлы по стороне клиента?
Аноним 11/04/22 Пнд 14:55:03 23336781878
>>2333586
В твоем случае лучше бояться, что ты ничего не выучишь и итак будешь никому не нужен.
Аноним 11/04/22 Пнд 14:55:37 23336791879
>>2333586
В твоем случае лучше бояться, что ты ничего не выучишь и итак будешь никому не нужен.
Аноним 11/04/22 Пнд 15:39:50 23337401880
image.png 151Кб, 1293x523
1293x523
>>2333674
Позвольте уточнить,
на прикриле пример, скачивается файл 13 гб уже скачано более 3, при этом это очевидно больше чем занимает озу хром.
КАК ОН ЭТО ДЕЛАЕТ?
Очевидно что он открывает какой-то поток с сервера к клиенту и пишет с сервера прямо в файл, КАК?
Когда я пытаюсь скачать файл он сначала буфферизируется в озу, а только потом пишеться на диск.

Как это фиксить, что читать? Где искать?
Аноним 11/04/22 Пнд 15:47:34 23337491881
>>2333740
Ничего не понять. Открываешь файл и пиши в него данные по мере поступления.

>Когда я пытаюсь скачать файл он сначала буфферизируется в озу
с чего вдруг. он пишется в темп файл и в конце переименовывается/переносится
Аноним 11/04/22 Пнд 15:50:37 23337521882
>>2333749
Какой файл открыть? у тебя на клиентене же нет таких прав создавать и открывать файл какой захочешь.
Разве нет?
и Что значит по мере поступления?
Аноним 11/04/22 Пнд 16:12:25 23337661883
>>2333752
уппс. не увидел про блазор. Ну такой файл может скачать только браузер. Хитромудрости, что пытаются юзать на жс (а у блазора по идее те же ограничения), больше 4гб не смогут
Аноним 11/04/22 Пнд 16:21:56 23337691884
>>2333674
Скачай локально средствами браузера и открывай клиентом
Аноним 11/04/22 Пнд 16:26:44 23337701885
>>2333769
Локально тоесть в память? мой вопрос именно в том как это обойти, потому что загружать в память возможно по 10-20 гигов я не могу себе позволить
Аноним 11/04/22 Пнд 16:41:58 23337751886
Когда планируется перекат?
Аноним 11/04/22 Пнд 16:57:10 23337811887
Кто-нибудь нашёл способ ломануть Rider?
Аноним 11/04/22 Пнд 17:29:14 23337961888
Как вернуть старые стартовые шаблоны проектов с полным описанием класса и метода Main, вместо новых укороченных?
Аноним 11/04/22 Пнд 19:24:36 23338831889
Как добавлять дополнительные ссылки на сборки для .Net Core в Visual Studio 2022?
Аноним 11/04/22 Пнд 20:11:24 23339401890
Как сделать валидацию на стороне сервера с razor pages? Пока я делаю просто через blazor, viewdata и js, а я хочу вернуть view (или просто добавить на страницы ошибки валидации) на пост как в контроллере, только если я возвращаю page я возвращаю модалку у которой на работает код в модели (cshtml.cs).
Аноним 11/04/22 Пнд 22:43:02 23340311891
>>2333796
>Как вернуть старые стартовые шаблоны проектов с полным описанием класса и метода Main, вместо новых укороченных?

Создаешь приложение под .net5

Потом в настройках изменяешь
<TargetFramework>net5.0</TargetFramework>
на
<TargetFramework>net6.0</TargetFramework>.
Аноним 11/04/22 Пнд 22:43:39 23340321892
Аноним 12/04/22 Втр 03:38:03 23341251893
>>2334031
>>2334032
Что за бредовые костыли? Пиздец конечно Майкрософт
Аноним 12/04/22 Втр 09:05:56 23341551894
Аноним 12/04/22 Втр 13:16:32 23343481895
>>2332431
Какой-то ебанутый вопрос. Очевидно что зависит от реализации B.
Аноним 12/04/22 Втр 23:02:48 23347611896
>>2332224
Больше спасибо, анон
Аноним 15/04/22 Птн 20:48:03 23367191897
>>2333674
Делай как человек:
Запрос: размер чанка - порядковый номер - хеш. Ответ - в случае если это первый кусок либо хеш в порядке - новый кусок с порядковым номером, куском и данных, в случае если шех не совпадает с тем что ты рассчитал для предыдущего куска - ошибка с номером предыдущего куска.
Не клиенте - создаешь временный файл в котором в метадату пишьешь номер последнего удачного куска. Когда все скачается - удаляешь метаданные.
Собственно все. СигналР тут не особо нужен, плюс - появляется возможность продолжить скачивание хоть через месяц.
Аноним 15/04/22 Птн 23:55:47 23368471898
>>2333586
Поздно боишься, уже произошло. Вкатиться в шарпы сейчас нереально. Учи ноду, если хочешь прогером стать.
Аноним 25/05/22 Срд 21:08:47 23633861899
>>2336847
Ну охуеть. Шарпы ему поздно, а ноду не поздно И с хуя ли поздно стало шарпы учить? Все будет на ноде? Прими таблетки, маня!
Аноним 25/05/22 Срд 23:46:23 23634801900
Шарпаны, сколько примерно может стоить написания враппера для двача?
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов