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


Ответить в тред Ответить в тред

Check this out!
<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
522 56 103

C#/Сишарп/.NET Тред - Шапка edition #13 /csharp/ Felix 19/10/19 Суб 03:50:10 14997461
3F3F3F3F3F3F.png (172Кб, 350x329)
350x329
4.png (70Кб, 512x512)
512x512
5.png (103Кб, 512x512)
512x512
59fd9bb3a0c5515[...].png (392Кб, 700x933)
700x933
Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

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

1. Ресурсы:
- http://stackoverflow.com/questions/tagged/c%23
- http://www.tutorialspoint.com/csharp/
- http://professorweb.ru
- http://net-informations.com
- http://habrahabr.ru/hub/csharp/

2. Онлайн-компиляторы:
- https://dotnetfiddle.net/ - возможно лучший вариант. Встроено немного убогое, но все-таки автодополнение и проверка синтаксиса.
- http://ideone.com/
- http://csharppad.com/
- http://www.tutorialspoint.com/compile_csharp_online.php
- http://rextester.com/l/csharp_online_compiler

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

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

5. Какую ИДЕ выбрать?
Для Windows самым очевидным вариантом будет Visual Studio (https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx). Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополнений
Для мака и никсов самый юзабельный вариант - MonoDevelop ( http://www.monodevelop.com/download/ ).
Для vim можно использовать OmniSharp ( https://github.com/OmniSharp/omnisharp-vim ).
Кросплатформенный полуредактор/полуIDE VS Code ( https://www.visualstudio.com/en-us/products/code-vs.aspx )
Также существуют плагины для Atom'а и Sublime Text, но функциональность там достаточно сильно урезана.
Кроме того, в данный момент JetBrains активно пилит свою IDE для шарпа (Project Rider), вероятно в ближайшее время станут доступны первые EAP. IDE заявлена как кросплатформенная, со всем решарпер-функционалом, поддержкой отладки, моно и .net core.
SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб) и опциональной портабельностью, при этом имея дизайнер WinForms и WPF, а также интеграцию с FxCop, StyleCop и прочими ништяками. Если хочется что-то по быстрому набросать, а выкачивать гигабйты нет желания, то возможно SharpDevelop будет лучшим вариантом.

6. С# для мобильной разработки
Если нужны инструменты для разработке под мобилы, ставь сразу VS2015 и при установке выбирай все нужные компоненты.
Больше информации тут - https://msdn.microsoft.com/ru-ru/library/dn771552.aspx
Из актуальной литературы
- Xamarin Mobile Application Development
- Xamarin Essentials

7. Дополнительные инструменты для разработки на C#
LINQPad - сорт оф REPL, с возможностью быстрого подключения к БД и удобной визуализацией данных
dnSpy - декомпилятор, малоизвестный форк ILSpy, где реализована возможность модификации IL-кода прямо в EXE и DLL файлах, отладка IL-кода и много других фич для reverse engineering'а. Плюс няшные темы как в студии
dotPeek - бесплатный декомпилятор от JetBrains
scriptcs - для запуска C# кода как скриптов, возможность использовать как REPL

8. Расширения для студии
ReSharper - одно из известнейших. Рефакторинги, умный автокомплит, настраиваемый стиль кода. Платный, но можно стянуть с торрентов
Supercharger - показывает "карту" с классами, методами и всем остальным сбоку от кода с возможностью прыгать по ним
Indent Guides - показывает вертикальные линии на каждом уровне отступов.
Format document on Save - форматирует код каждый раз при сохранении документа
Code alignment - Выравнивает код по указанным символам. Удобно, например, при инициализации словарей или в перечислениях

Обзор Roslyn: https://github.com/dotnet/roslyn/wiki/Roslyn%20Overview
Новые возможности C# 6.0: https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-C%23-6

ПРИНИМАЮТСЯ ПРЕДЛОЖЕНИЯ ПО ШАПКЕ

Код этой шапки: http://pastebin.com/cKKXYArs

Прошлый тред тонет здесь: https://2ch.hk/pr/res/1482351.html#1498035
Аноним 19/10/19 Суб 03:50:33 14997472
2183202145b4aa3[...].gif (1839Кб, 540x304)
540x304
>>1499746 (OP)
9. Что почитать?
- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.
- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином
- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой
- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом.

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

11. Хочу еще хардкорней
- C# Deconstructed (Mohammad Rahman) - введение в CLR, модели памяти и выполнения в CLR, байтоебство, JIT. Книга достаточно коротенькая, менее 200 страниц, можно осилить за пару дней. Желателен опыт работы WinDbg и понимание устройства PE-формата.
- Expert C# 5.0 with .NET 4.5 Framework - еще одна книга этого автора, в этот раз намного длиннее. Очень много IL, анализа и разбора стандартной либы (те же коллекции), разбор ивентов, дегегатов, асинхронности etc. на уровне байткода.
- .NET IL Assembler (Serge Lidin) - ILёбство, во многих местах повторяет документацию MSDN, но при этом имеет много интересных дополнений и заметок. Кроме того все неплохо структуировано и разложено по красивым табличкам

12. Литература по WPF
Из более-менее актуального можно выделить пару книг:
- Pro WPF 4.5 in C# (Matthew MacDonald)
- Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

13. Литература по ASP.NET
- Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)
- Pro ASP.NET MVC 5 Platform (Adam Freeman)
- Beginning ASP.NET for Visual Studio 2015 (William Penberthy)

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

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

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

17. Что еще нужно знать, чтобы взяли работать за еду?
- SQL - подойдет люая книг по MSSQL/MySQL, базовые запросы, SELECT, INSERT, DELETE, UPDATE. Джойны, индексы, нормализация. В контексте шарпа еще ORM: Entity Framework, Dapper
- Системы контроля версий - обычно гита достаточно: add/commit/push, merge, rebase, checkout, remote's, разрешение конфликтов, трехпанельные дифф-менеджеры, cherry-pick
- Гитхабы-гитхабчики - issues, организация пулл-реквестов, интеграция с appveyor, теги, релизы, маркдаун
- Алгоритмы - сложность алгоритмов, сортировки (пузырек, быстрая, вставками), поиск, рекурсия, алгоритмы на строках
- Структуры данных - связанные списки, деревья (бинарные, красно-черные, b-деревья), хеш-таблицы, графы
- Если идти в веб - HTML, CSS, JavaScript, веб-сокеты, REST
- Паттерны проектирования, стиль кода, внедрение зависимостей, MVVM (если хочется в WPF), SOLID

18. Я не умею читать, что посмотреть?
- Programming with C# - https://www.edx.org/course/programming-c-microsoft-dev204x-0
- Beginning Game Programming with C# - https://www.coursera.org/course/gameprogramming
- C# Fundamentals: Development for Absolute Beginners - https://goo.gl/meyyxO
- Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском) - https://nnm-club.me/forum/viewtopic.php?t=891636
- Набор курсов по C# от O'Reilly Media (28 часов, на английском) - http://rutracker.org/forum/viewtopic.php?t=5082978
Аноним 19/10/19 Суб 03:54:38 14997493
ogog14712552672[...].jpg (67Кб, 1200x628)
1200x628
>>1499747
Сообщение от ОПа.
Привет мой дорогой, няшный анончик. В конце 2018 года я вкатился в этот тред в надежде получить знания об этом языке программирования и с огромной страстью накинулся на все ресурсы что были в шапке. Тогда я ещё не знал что это изменит мою жизнь. Так, что я до сих пор нахожусь в эйфории. Я устроился на новую очень хорошо оплачиваемую работу. Мои проекты помогают компании, людям и в целом лично для меня приносят радость уже тем, что я делаю что-то нужное и важное.
Всё это благодаря тебе анончик! Ты сделал мою жизнь счастливой. :3
Аноним 19/10/19 Суб 05:05:40 14997604
48671d6c820f981[...].png (177Кб, 380x304)
380x304
>>1499746 (OP)
Зачем здесь аниме и кошкодевочки? Это скорее про всякие Линуксы и прочий фри софтвер, а Майкрософт для серьёзных уверенных в себе мужчин.
Аноним 19/10/19 Суб 06:46:48 14997665
Dr0xaSqVsAI5a6c[...].jpg (21Кб, 422x480)
422x480
>>1499760
>Майкрософт для серьёзных уверенных в себе мужчин.
Да
Аноним 19/10/19 Суб 07:24:54 14997726
>>1499760
>кошкодевочки
>девочки
Но ведь на фото серьёзный и уверенный в себе мужчина, рыцарь ордена и второй человек в государстве!
Аноним 19/10/19 Суб 09:30:38 14997977
>>1499749
А я нихуя не вкатился, это энтерпрайз говно, на которое сложно попасть студенту, лучше бы во фронтенд вкатывался, уже бы рубил 3000k/нс
Аноним 19/10/19 Суб 09:54:49 14998048
forman.jpg (61Кб, 720x951)
720x951
>>1499797
>студенту
>энтерпрайз
А ты чего ожидал? Ясен пень никто не хочет платить 300к в наносекунду работнику, который пол дня проёбывается на парах и берёт кучу отпусков на экзамены.
Аноним 19/10/19 Суб 11:09:59 14998219
>>1499746 (OP)
Что такое StateFull класс? Спросили на собеседовании, я аж подохуел.
19/10/19 Суб 11:13:12 149982410
>>1499804
>подразумевает, что на тырпрайзе есть задачи на фуллтайм
Аноним 19/10/19 Суб 11:14:16 149982611
>>1499821
Stateful может хранить какое-либо состояние между запросами, соответственно контейнер имеет пул таких бинов и для каждой сессии выделяет отдельный экземпляр.
19/10/19 Суб 11:16:05 149982712
>>1499821
Маньки рваные загуглили ооп и начали тебя ебать.
Обычный класс это с данными.
Аноним 19/10/19 Суб 11:16:42 149982913
>>1499824
Ну с таким подходом можно только дворы подметать.
19/10/19 Суб 11:18:37 149983114
>>1499829
Программирование - это призвание, верно?
Методичку не обновили ещё на съездах манагеров?
Аноним 19/10/19 Суб 11:21:26 149983215
forman.jpg (61Кб, 720x951)
720x951
>>1499831
Ты понимаешь что только что сам себе придумал вопрос, сам на него ответил, сам загорелся и теперь у тебя претензии почему-то ко мне. Ты Ебанутый?
Аноним 19/10/19 Суб 11:22:53 149983416
>>1499832
Он тёлка, это прям шаблон бабское мышление. Самой придумать проблему и обьдеться.
19/10/19 Суб 11:27:26 149983617
>>1499832
>программист обязан сидеть в офисе 24/7
>ты не прав
>иди дворы подметать
>я не ретард я просто троллю /pr/
19/10/19 Суб 11:28:03 149983718
>>1499834
найс семенишь, на швабре забанили?
Аноним 19/10/19 Суб 11:29:17 149984019
>>1499836
Ты в курсе что рабочий день 8 часов, иногда и меньше? С чего ты взял 24 часа? И да, если тебе СЛОЖНА сидеть в офисе 8 часов за 300к - пиздуй дворы подметать.
Аноним 19/10/19 Суб 11:30:49 149984120
>>1499837
Это ты у нас спец по ответам самому себе.
19/10/19 Суб 11:46:20 149985121
>>1499840
>ну не 24 а 8 мам ну скажи
Пидорашка у которой работа в количестве измеряется, ты?
В тырпрайзе на поддержке что ты собрался 8 часов подряд безвылазно ебашить?
Начальник или манагер уже выдрессировал, что если он не видит тебя на рабочем месте, то это сразу атятятя к зарплате?
Аноним 19/10/19 Суб 11:48:03 149985522
>>1499851
>тырпрайзе на поддержке
А, ты видать бордой ошибся, тут программач, тут Программы делают, а не поддерживают.
Аноним 19/10/19 Суб 11:54:59 149986023
>>1499851
Всё правильно, с утра двор подмёл потом бояры наебнул, 8 часов работать не надо.
Аноним 19/10/19 Суб 12:19:37 149987424
>>1499851
>Что делать 8 часов на работе
Работать, блядь. Таски сами себя не делают.
Скажи нахуя нанимать чмошника который будет ныть что его работать заставляют, если есть люди которые и приходят на работу работать?
19/10/19 Суб 12:23:46 149987625
>>1499874
Делаю таски за час, что со мной не так?
Аноним 19/10/19 Суб 12:30:54 149988626
Аноним 19/10/19 Суб 14:06:53 149998827
>>1499876
>что со мной не так?
Пиздабол является ответом на вопрос?
Аноним 19/10/19 Суб 14:21:59 149999628
>>1499876
Помоги другим значит, хули без дела сидишь хуесос.
Аноним 19/10/19 Суб 15:19:31 150002229
>>1499876
Значит у вас манагеры/лиды проебываются, что человек на работе есть, а задач для него нет. Кайфуй пока не просекли, хули.
Аноним 19/10/19 Суб 15:44:13 150003730
>>1500022
На самом деле есть разные методы.
Например Cont improove - подразумевает что у тебя всегда забито всё.
DevOps - подразумевает что ты чинишь только сломанное,
Developer - я тебе дал ТЗ, сделай прогу.
В данном случае человек вообще не вдуплает в энтэрпрайз. Ибо это экосистема. Ты обновил одну прогу, которую юзает финансовый отдел, а там сидел хуй который в 2015 уволился, но он написал скрипт на Excel который импортил из твоей проги, так что ебись. Но таких хуёв 10, а отделов 20! При этом прога завяззана на 10 других прог, пожтому твоё обновление накрыло пиздой международую корпорацию. ЭНТЭРПРАЙЗ СУКА! Тот тролящий пидорас который думает что 8 часов - много, нихуя не работал в энтерпрайзе, он работал в рога и копыта на 15-50 человеки вообще не вдупляет за что синьора называют так и а что дают 300к! Вот блядь за это!
Аноним 19/10/19 Суб 19:47:46 150018531
>>1499996
мне за это не платят
>>1500037
Галерному рабу неприятно
Аноним 19/10/19 Суб 20:59:09 150021832
>>1500185
>мне за это не платят
Кончено, тебе платят за чистый двор.
Аноним 19/10/19 Суб 22:34:00 150028833
image.png (44Кб, 737x481)
737x481
Лол, а в джаве со времен 1.0.2 есть
import static Classname
Аноним 20/10/19 Вск 00:25:20 150036334
На следующей неделе собеседование предстоит. Судя по ожидаемой зарплате middle+, что сейчас модно спрашивать по ASP.NET?
Аноним 20/10/19 Вск 07:55:52 150043835
Screenshot1.png (13Кб, 719x330)
719x330
Почему после вхыода из цикла IF, переменная arrAllFiels зануляется?
При работе диалога имя файлов записываются как надо, а после выхода из цикла null.
Что я делаю не так?
Аноним 20/10/19 Вск 07:59:27 150043936
>>1500438
Не цикл, а условие, конечно же.
Аноним 20/10/19 Вск 08:11:31 150044237
>>1500438
Если ты хочешь в static переменную, которая у тебя торчит вне метода что-то записать, то нахуя ты создаешь локальную переменную с тем же именем внутри самого метода?
Что ты вообще пытаешься сделать?
Аноним 20/10/19 Вск 08:12:21 150044338
>>1500218
У тебя какая-то фиксация на подметании, хочешь об этом поговорить?
Аноним 20/10/19 Вск 10:20:39 150047039
>>1500438
>Почему после вхыода из цикла IF, переменная arrAllFiels зануляется?
Потому что она объявлена внутри цикла.
Аноним 20/10/19 Вск 10:21:03 150047140
>>1500470
Не цикла, а условия, конечно же.
Аноним 20/10/19 Вск 12:02:56 150050441
Добрый день!
Подскажите что не так с кодом работает на половину.
Ввожу данные массива с клавиатуры есть отдельный метод
и потом вот такой код и задание.Работает корректно только если в массиве нет повторения минимального элемента и только одно отрицательное значение.

//Найти номер первого минимального элемента.
public static void FindIndexFirstMinElement(int[] array)
{

int minelement = array[0];
int minindex=-0;
for (int i = 0; i < array.Length; i++)
{
if (array <= minelement)
{
minelement = array;
minindex = i;
Console.WriteLine("min element");
Console.WriteLine(minelement);
Console.WriteLine("index min element");
Console.WriteLine(minindex);

}

}
Аноним 20/10/19 Вск 12:37:41 150052342
>>1500504
Как понять первого минимального элемента массива? А есть второй, третий минимальный? А максимальных сколько?
Аноним 20/10/19 Вск 12:40:54 150052543
>>1500523
Ну вот массив в нем {0,1,2,1,0,0}
И нужно найти индекс первого минимального элемента.
Хотя в массива минимальных элементов несколько.
Аноним 20/10/19 Вск 12:42:39 150052744
>>1500525
if (array < minelement)
И не будет тебе такой же элемент присваиваться
Аноним 20/10/19 Вск 13:00:56 150054345
>>1500470
>>1500442
Спасибо, аноны. Я уже закончил приложение, и можно сказать лишился программной девственности. не считая хеллоуворлда, конечно

>Что ты вообще пытаешься сделать?
Нужно было сохранить имена файлов в массив, чтобы я мог их обработать в дальнейшем, для вставки в ворд.
Аноним 20/10/19 Вск 13:04:13 150054846
>>1500543
Листвы ты лишишься при выполнении первого таска на реальной работе. Пока ты только мастурбируешь и кончаешь.
Аноним 20/10/19 Вск 13:31:43 150056347
>>1500527
Что то ты хуиту написал как можно массив сравнивать с переменной?
Аноним 20/10/19 Вск 14:19:15 150059948
>>1500563
Нет, это [ i ] из-за разметки на дваче стерлась
я думал ты догадаешься
Аноним 20/10/19 Вск 17:08:18 150079549
>>1500599
Не догадался)
Но потом так и сделал изменил <= на <
Аноним 20/10/19 Вск 17:15:03 150080550
>>1500795
>Не догадался)
Ну ты ж шарпист.
А я на самом деле из джава-треда заглянул.
Аноним 20/10/19 Вск 17:31:25 150082351
Я правильно понимаю, что после выхода .NET 5 Джава ВСЁ?
Аноним 20/10/19 Вск 17:55:45 150084652
>>1500823
ты не представляешь, какое количество проектов написанно на джаве, которые так же будут саппортиться десятками лет. К тому же джава не стоит на месте и никто не знает, что будет в следующем релизе
Аноним 20/10/19 Вск 20:02:38 150094053
Вопрос про IDataErrorInfo, что я должен указывать в Error? Я знаю что есть более предпочтительный INotifyDataErrorInfo
Аноним 20/10/19 Вск 20:47:22 150096754
В общем вот код. Как в нем обработать исключение когда все числа массива одинаковы
//Найти номер первого минимального элемента.
public static void FindIndexFirstMinElement(int[] array)
{
int minelement = array[0];
int minindex=0;

for (int i = 0; i < array.Length; i++)
{
if (array < minelement)
{
minelement = array;
minindex = i;

}


}

Console.WriteLine("min element");
Console.WriteLine(minelement);
Console.WriteLine("index min element");
Console.WriteLine(minindex);

}
Аноним 20/10/19 Вск 20:47:26 150096855
>>1500953
Ты проебал сравнение элемента
if(array == array[0])
Аноним 20/10/19 Вск 20:48:35 150097156
>>1500968
Или нет, array[переменная i] у тебя там есть и это просто макаба сожрала?
Лей на пасту или ideone как нормальные люди
Аноним 20/10/19 Вск 20:56:33 150098257
Аноним 20/10/19 Вск 20:56:58 150098358
image.png (74Кб, 1003x616)
1003x616
Аноним 20/10/19 Вск 22:13:12 150103059
>>1500288
К чему это ты написал? А их в шарпе когда-то не было?
Аноним 20/10/19 Вск 22:18:47 150103260
>>1501030
В 6ом шарпе это появилось. В 2015 году.
Аноним 21/10/19 Пнд 01:16:19 150115461
Аноним 21/10/19 Пнд 14:40:46 150153362
>>1501030
Ты даже историю собственного языка не знаешь? Хотя зачем вам, у вас каждые 3 года проект уже переписывать с нуля надо.
Аноним 21/10/19 Пнд 16:19:00 150161063
image.png (90Кб, 1206x620)
1206x620
Второй день ебусь с исключением если в массиве все элементы одинаковые должно быть сообщение. И как его вывести что бы весь код не выполнялся остальной
Вот весь говнокод значения ввожу с клавиатуры.
Аноним 21/10/19 Пнд 16:42:22 150163264
Безымянный.png (6Кб, 397x206)
397x206
>>1501610
Сначала научись нормально изъясняться. Вот тебе метод проверки, все ли элеметы массива одинаковые.
Аноним 21/10/19 Пнд 16:56:52 150163965
>>1501632
В общем у меня задание вывести на консоль индекс первого минимального элемента массива. Этоя сделал. Но мне еще нужно обработать одно исключение когда в массиве все числа.одинаковые.
Вот как это проверить я хз.
Аноним 21/10/19 Пнд 17:15:31 150165866
>>1501639
А, так исключение не в смысле exception. Ну так и пиши If(AreTheySame)
{
//показать сообщение
return;
}
Аноним 21/10/19 Пнд 17:52:30 150167967
Аноним 21/10/19 Пнд 18:22:42 150169968
>>1501639
Ты же блядь уже это проверил в своем коде
Аноним 21/10/19 Пнд 19:01:09 150172369
Ну и тред у вас одни вкатывальщики и/или секта святой поделки от Билли. Который спиздил гуй у джобса в 80-ых.
Аноним 21/10/19 Пнд 19:15:10 150173570
>>1501723
>спиздил гуй у джобса
просто сотона
Аноним 21/10/19 Пнд 19:39:38 150175271
>>1499746 (OP)
Добрый день, анон.
Есть проблема - сижу и пишу код в небольшой компании, базовый синтаксис вроде знаю, кое-что понимаю об алгоритмах, но чувствую постоянно какую-то нехватку знаний и компетенции на тезх же собеседованиях. Подскажи пути роста с джуна до уверенного мидла, м.б. книги, курсы, программы. Предвижу - да, читать, конечно, но с чего начать и на что обращать внимание? Заранее спасибо.
Аноним 21/10/19 Пнд 20:12:00 150177472
>>1501752
>базовый синтаксис вроде знаю, кое-что понимаю об алгоритмах
Этого сейчас достаточно для джуна, что ли?
Аноним 21/10/19 Пнд 20:20:36 150177973
>>1501774
Я сам в ахуе
мимо не берут после прочтения всего Троелсена
Аноним 21/10/19 Пнд 20:21:53 150178174
>>1501699
Так да но вывод получается на каждое значение массива и все равно находит первый элемент как минимальный
Аноним 21/10/19 Пнд 20:30:04 150178675
Как организована память в шарпе? В стеке хранится все?
Аноним 21/10/19 Пнд 21:27:16 150182276
>>1501779
Я с тебя в ахуе
мимо взяли после не всего Троелсена
Аноним 21/10/19 Пнд 21:29:22 150182577
>>1501752
Рихтер. SQL дрочи, DI, вырой книги не для начинающих и ебашь-ебашь, leetcode/codewars/codingame в помощь
мимо предыдущий охуевший си-шарп джун
Аноним 21/10/19 Пнд 21:41:40 150183678
>>1499746 (OP)
Есть сервер и клиент на C# https://metanit.com/sharp/net/3.2.php
Этот код немного модифицирован так, чтобы принимать много байт в одном сокете, а не создавать кучу других.

Вопрос: Как можно эту хуету использовать в браузере?
Ну, чтобы одно соединение открыть, и приёмо-передавать данные туда, а не открывать кучу соединений ёбанных,
по принципу запрос-ответ.
Слышал что можно как-то Keep-Alive соединение открыть, по HTTP 1.0, только блядь как это кодить сервер этот грёбанный, и как к нему с браузера коннектится - хуй знает... Поясните!
Аноним 21/10/19 Пнд 22:11:40 150185779
>>1501786
Как ты себе это представляешь?
У каждого треда свой стек по мегабайту.
Есть еще куча где хранится все подряд.
Дальше сам нагуглишь.
Аноним 21/10/19 Пнд 22:21:43 150186680
Аноним 21/10/19 Пнд 22:23:18 150186781
>>1501825
Спасибо.

мимо-джун-с-тремя-годами-опыта

Хотя мне все-равно западло, если это не требуется.
Аноним 21/10/19 Пнд 23:24:05 150191982
>>1501836
Вот, смотрите что нарыл: https://stackoverflow.com/questions/10200910/creating-a-hello-world-websocket-example
У этого чела какой-то заголовок в консоли выводится, а потом соединение закрывается. Работает, проверял.
Дальше всё по-английски и непонятно нихуя, это всё ещё и допиливать надо.
Есть у кого-нить примеры сервера на C# и клиента на JavaScript?
Ну, чтобы через websockets лишь одно соединение установить, и уже туда, в это соединение - писать и получать инфу...
Аноним 22/10/19 Втр 06:49:39 150198783
>>1501533
>историю собственного языка
Это не мой язык, я его не писал. Я на нём писал впервые в 2015 году.
Аноним 22/10/19 Втр 08:53:14 150200984
Почему в C# нет полноценных шаблонов (таких же, как в C++)? Это что, так сложно реализовать?
Аноним 22/10/19 Втр 08:55:58 150201085
>>1501919
socket и websocket не одно и тоже. А тебе советую взять SignalR и не ебать мозг.
Аноним 22/10/19 Втр 08:57:49 150201186
>>1502009
Какие задачи темплейтов не покрывают дженерики?
Аноним 22/10/19 Втр 09:02:27 150201287
>>1502011
Не знаю, может быть в C# это и не нужно. А в Джаве тогда почему не сделают шаблоны/нормальные дженерики? Там же хуета с преобразованием типов в рантайме, выходит накладно.
Аноним 22/10/19 Втр 09:31:01 150202588
>>1502012
Потому что джава поддерживает легаси говно вплоть до первых версий.
Аноним 22/10/19 Втр 10:19:28 150204489
>>1502025
А разве нельзя ввести новую фичу, оставив при этом старую?
Аноним 22/10/19 Втр 10:23:35 150204790
>>1502044
Дженериков изначально не было в первой версии жавы, и так как они были введены в язык позже, для сохранения обратной совместимости действуют только на уровне исходного кода, в байт-коде их нет.
Аноним 22/10/19 Втр 13:29:36 150214091
>>1502044
Можно.
Но тогда придется переписывать триллиарды библиотек, которыми все пользуются, но в которой этой новой фичи нет.
Аноним 22/10/19 Втр 13:59:17 150216492
Аноним 22/10/19 Втр 14:06:54 150217693
Мы пометим тот тред, где сидит пидорас.
Аноним 22/10/19 Втр 18:05:36 150235994
>>1502010
>socket и websocket не одно и тоже. А тебе советую взять SignalR и не ебать мозг.
SignalR на Windows XP не ставится, и под .NET 4.0 не билдится, даже версия 1.1.3. Просит какой-то nuget package, отсутствующий.
Поэтому, поставил пока WebSocket Server в виде Fleck2. https://github.com/peters/Fleck2
Сбилидлось нормас, и вроде как даже работает demo.
Как теперь этот WebSocket-сервер в наноборду встроить - ума не приложу.
https://github.com/username1565/nanoboard/issues/5#issuecomment-544768616
Аноним 23/10/19 Срд 13:38:18 150288795
Индексаторы классов используются на практике? Столько ебаных фич напилили, вроде бы не просто так, но уместить в голове все способы взаимодействия объектов в ООП просто нереально.
Аноним 23/10/19 Срд 22:00:41 150339896
Аноним 24/10/19 Чтв 00:08:00 150348897
>>1503398
>111
Не совсем понял тебя.
Но SignalR версии 1.1.1 - тоже чё-то не билдится. Опять же, по той же причине. Сначала запускается nuget, открывается какое-то соединение, и после этого, соединение разрывается...
Я пока Fleck2 чутое подправил, вроде работает и компилируется.
Вижу при работе demo - одно открытое соединение в фаерволе, и байты передаются по нему одному.
И много соединений не открывается.
Аноним 24/10/19 Чтв 17:52:25 150392698
>>1499746 (OP)
>Кроме того, в данный момент JetBrains активно пилит свою IDE для шарпа (Project Rider), вероятно в ближайшее время станут доступны первые EAP. IDE заявлена как кросплатформенная, со всем решарпер-функционалом, поддержкой отладки, моно и .net core.
Блядь, ну это то можно и исправить уже в шапке. Rider чуть более чем полноценная замена мерзкой студии.
Аноним 24/10/19 Чтв 20:34:04 150403399
Аноним 24/10/19 Чтв 21:29:42 1504084100
Аноним 24/10/19 Чтв 23:28:45 1504190101
image.png (65Кб, 960x672)
960x672
Гайс читаю Троелсена, .NET Core изучаю, но т.к. даже ASP .NET я не юзал(так же прошелся по Троелсену), не догоняю че за сервисы зачем они нужны и их конфигурирование. Есть что почитать(для начала в общих чертах), чтобы догнать все возможности и тонкости, которые можно прикрутить в Core и понять зачем они вообще нужны?
В книге как-то высрано непонятно, плюс бывают ошибки, которые пока фиксишь теряешь нить нахуя это вообще делается. Отразить че вообще делается на скрине.
Аноним 24/10/19 Чтв 23:40:44 1504195102
Возможно ли из дочерней формы вытащить переменные в главную и посчитать их там, если мне нужно из таблицы в дочерней в массив внутри главной?
Аноним 24/10/19 Чтв 23:46:40 1504199103
У меня тупой вопрос.
Что лучше использовать TcpListener или Socket?
Аноним 25/10/19 Птн 00:30:12 1504227104
>>1504190
Сервисы - это инстансы в DI контейнере приложения. Есть встроенные типа DbContext, но ты можешь туда засунуть любой класс.
Аноним 25/10/19 Птн 10:04:58 1504320105
Аноним 25/10/19 Птн 10:15:13 1504321106
>>1504033

Да. Использую Rider вместо VS, все охуенно.
Аноним 25/10/19 Птн 10:41:18 1504330107
scheme.png (41Кб, 633x1389)
633x1389
Решил сделать трехзвенку с связью на wcf. Как сделать юзерские сессии и аутенфикацию? Пока придумал только что-то похожее на пикрелейтед для создания токенов, которые при каждом запросе на который необходима авторизация отправляются, но даже то что я придумал не работает.

По сути мне просто нужно сделать:
1. Либо сервер логинит пользователя и держит его сессию со всеми данными для авторизации. Это реализуемо, если у нас wcf построен на сервисной модели и вызовы между сервисами как бы не связаны
2. Либо север с клиентом договариваются как генерировать секьюрити токен и им сопровождаются все авторизуемые сообщения. Но я пока не смог придумать как это реализовать грамотно.
Аноним 25/10/19 Птн 10:57:57 1504342108
>>1504330
>1. Либо сервер логинит пользователя и держит его сессию со всеми данными для авторизации. Это реализуемо, если у нас wcf построен на сервисной модели и вызовы между сервисами как бы не связаны?
фикс
Аноним 25/10/19 Птн 11:43:22 1504361109
>>1504321
А что в vs тебе не охуенно было?
Аноним 25/10/19 Птн 12:40:40 1504389110
image.png (4Кб, 185x59)
185x59
image.png (6Кб, 658x21)
658x21
image.png (64Кб, 1447x228)
1447x228
Так как стаковерфлоу для лохов, которые не боятся деанона их тупых вопросов, пишу здесь:
1) Как работает эта поебень на первых двух пиках? Я не пишу new Either<>..., а просто пишу через равно сразу или string, или int. При этом даже с варом шарп все понимает. Как бля? Что это за черная магия? мне кажется, она со struct связана
2) Почему на третьем пике оно не приводится, если в конце не дописать toList() или не сделать так:
>return EitherStrict.Right<Response, IEnumerable<Response>>(nextPossible.Right.Where(t => t.Suitable(m, a))
.Select(t => t.Execute(m, c, a, nextPossible)));
?
Аноним 25/10/19 Птн 12:49:57 1504392111
image.png (7Кб, 283x82)
283x82
>>1504389
Упс, первая пикча отклеилась
Аноним 25/10/19 Птн 16:45:55 1504592112
>>1504389
1. Читай про implicit и explicit операторы, они позволяют производить неявное/явное преобразование типов.
>даже с варом шарп все понимает
не верю. Вар это указание компилятору самому вывести тип переменной, исходя из правой части выражения. Т.е. в е бе\удет стринг. А вот при передаче строки в solve будет произведено неявное (implicit) преобразование.
>она со struct связана
мимо
2. Компилятор говорит, что запрос возвращает коллекцию респонсов, а возвращать метод должен вернуть EitherStrict<Rsponse, IEnumerable<Response>>. Мне не видно от сюда что у тебя там за классы, так что подробности смотри сам.
Аноним 25/10/19 Птн 18:13:12 1504645113
.png (4603Кб, 2031x2952)
2031x2952
Аноним 25/10/19 Птн 18:35:02 1504658114
Сап двачик, такой вопрос. Когда я делаю запрос к апи на пхп, то пишу что-то вроде
>$response = json_decode(file_get_contents("https://2ch.hk/VKids.json"), true);
>echo $response[250]["LastName"];
И таким образом имею доступ ко всем данным. И я никак не могу нагуглить работающую альтернативу этому простому и понятному способу на C#. Реквестирую аналог.
Аноним 25/10/19 Птн 18:40:09 1504661115
15426720365540.jpg (24Кб, 468x520)
468x520
Сап шарписты. Есть идеи как перегрузить операторы "<" и ">", которые будут принимать только один параметр ?
Аноним 25/10/19 Птн 18:46:38 1504669116
Аноним 25/10/19 Птн 18:49:00 1504671117
>>1504658
И сразу бамп, помогите плиз очень нужно сегодня пиздос....
Аноним 25/10/19 Птн 18:54:47 1504680118
>>1504669
Ну вот препод мол сказал. Перегрузи мне операторы ">" и "<", чтобы я по списку летал туда сюда. Сам охуел от такого расклада, но сказано сделать.
Аноним 25/10/19 Птн 19:08:09 1504689119
>>1504680
Так с чего ты решил что тебе нужно сделать унарный оператор? Не вижу этого в постановке задачи
Аноним 25/10/19 Птн 19:15:52 1504694120
>>1504689
Ну допустим у меня первым параметром будет экземпляр списка, а второй какой будет ? Не могу же я в шарпах передать поток ввода/вывода ?
Аноним 25/10/19 Птн 19:17:31 1504696121
Аноним 25/10/19 Птн 20:53:08 1504768122
Аноним 25/10/19 Птн 21:28:36 1504815123
>>1504645
Тогда, очевидно, твой выбор TcpClient/TcpListener.
Аноним 25/10/19 Птн 21:53:10 1504832124
Аноним 25/10/19 Птн 22:15:30 1504850125
image.png (17Кб, 1044x71)
1044x71
image.png (6Кб, 423x39)
423x39
image.png (24Кб, 500x319)
500x319
>>1504592
> implicit и explicit операторы
спасибо анон, теперь узнал что это такое.
>не верю.
Ты прав, происходит неявное преобразование через implict. Правда я не понимаю, почему оно не приводит неявно тип, если юзать ienumerable, а не list, array и тд.
Аноним 25/10/19 Птн 23:52:04 1504941126
Безымянный.png (64Кб, 1258x601)
1258x601
>>1504680
> по списку летал туда сюда.
Аноним 26/10/19 Суб 00:45:13 1504961127
image.png (126Кб, 1154x836)
1154x836
Нужна помощь Я тут наговнокодил и не понимаю 2 момента
Число в массив ввожу с клавиатуры
1.Верно ли я нашел минимальный и максимальный элемент массива
2.Почему суммы не считается как надо
Аноним 26/10/19 Суб 00:56:12 1504967128
>>1504961
Тебе точно нужна сумма всех элементов кроме minElement и maxElement, или все-таки сумма элементов с индексами между minIndex и maxIndex?
Аноним 26/10/19 Суб 03:51:31 1505007129
У меня начинается батхёрт. Причём такой нехилый. Постоянно на работе доёбываются до кода. Но непо существу а по каким-то вообще абстрактным понятиям.
Например могут доебаться до того, что я при запиле программы не сделал кучку функционала отдельной библиотекой, чтобы потом можно было её юзать в других проектах. Или например какая-то прога написанная непойми кем вдруг потребоавала изменений буквально неделю назад. Изменения уровня "Поставь один if если переменная будет превышать размер в 70 символов." Сделал@отдал. Претензия "А чего ты не переписал всё под MVVM? А чего ты класы не использовал? А потом ведь поддерживать дубет хреново." Да вы с 2012 её нихуя и так не поддерживали. Задачу я решил? Решил, чё блядь вам ещё от меня надо? Откуда вообще такое вот лезет то? Зачем каждый более менее опытный программист пытается свою парадигму на меня применить? Главное ведь решение задачи, а уже потом чтобы всё было внутренне красиво.
Аноним 26/10/19 Суб 04:51:18 1505014130
>>1504961
1. неверно
2. даже не стал смотреть

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

Да иди ты на хуй!
Аноним 26/10/19 Суб 06:28:05 1505021131
>>1504961
1) Нет. Сравнивай с минамксэлементом а не с первым в массиве, да и иинициализируй их минмаксинтом.
2) Потомушо ты сравниваешь со значеим минмаксэлемента, а не индексы. Да и вынеси рэндж в фор.
Аноним 26/10/19 Суб 09:00:39 1505035132
>>1499746 (OP)
Бля, опять эта хуйня. Когда трапа с оппика выкинете?
Аноним 26/10/19 Суб 09:17:02 1505038133
>>1504961
Короче, я не совсем понял, нужно ли не считать сумму если массив состоит из одного элемента. Так же не понял, нужно ли считать сумму если maxidx<minidx, просто потому что у тебя в коде алгоритм завершается а в комменте сверху просто: Выведите сообщение. Ну и когда говорится про "между", подразумевается что крайние элементы не нужно считать или нужно, я подумал что нужно. Вооот.


Короче, вот тебе вариант, заваязанный на том как я понял задание. Если я там что-то не так понял, исправишь за 1 секунду.
https://ideone.com/fDAIB3
Аноним 26/10/19 Суб 09:24:29 1505040134
>>1505007
Потому что ты, еблан, когда-нибудь да уйдешь, а потом придут новые ебланы и им может понадобиться этот говнокод развивать и поддерживать.
Да даже не так. Тебе самому через пару лет потребуется допилить что-то в этот говнокод, отличающиеся от добавления одного 'if', скажем переносить это на какую-нибудь новый модный-молодежный фреймворк. Как думаешь, захочется ли тебе потом переписывать все чуть ли не с нуля, еще и разбираясь, как это говно вообще работает?
Аноним 26/10/19 Суб 09:58:43 1505047135
>>1505007
>Например могут доебаться до того, что я при запиле программы не сделал кучку функционала отдельной библиотекой, чтобы потом можно было её юзать в других проектах.
Из макаки хотят сделать нормального человека, а она копротивляется. Как мило.
Выносить какие-то общие алгоритмы, части проекта в отдельные файлы/библиотеки - стандарт. Потом и тебе самому, и другим будет проще работать чем по 10 раз один и тот же велосипед писать.

>Изменения уровня "Поставь один if если переменная будет превышать размер в 70 символов." Сделал@отдал. Претензия "А чего ты не переписал всё под MVVM?"
Чего? У тебя задача добавить условие в иф, а к тебе доебываются почему ты архитектуру не переделал? Ты или не договариваешь, или путаешься сам. Или, как вариант, тебя просто вытравить хотят, что неудивительно судя по той хуйне что ты ляпнул в предыдущем предложении.
Аноним 26/10/19 Суб 10:29:53 1505059136
>>1504961
хуле ты array сравниваешь с array[0], а не с array[minIndex]?
Аноним 26/10/19 Суб 10:53:56 1505066137
>>1504961
Сколько тредов ты эту задачу пердолишь? Может пора учебник открыть?
Аноним 26/10/19 Суб 13:35:59 1505136138
>>1504195
Сделай в дочерней метод, который возвращает нужные данные и дергай его из главной.
Аноним 26/10/19 Суб 13:57:24 1505149139
Не совсем вопрос по Шарпу, но VS же наверное относится к теме обсуждения?
Так вот, я только недавно узнал что там есть возможность целые конструкции генерировать сокращениями, типа prop, cw и т.д. при том, что еще с 2009 студии начинал. Распробовал эту фишку и она мне понравилась, только вот встроены таких штук маловато оказалось. Можно ли как-то расширить список таких вот штук?
Аноним 26/10/19 Суб 15:15:55 1505175140
Безымянный.png (34Кб, 839x685)
839x685
>>1505149
Можно. Гугли сниппеты, описываются xml'ом. Пикрелейтед сниппет для теста.
Аноним 26/10/19 Суб 16:13:26 1505211141
>>1505175
Спасибо, няша. Когда будет время запилю себе этих снипетов на большую часть штук, которые систематически приходится писать.
Аноним 26/10/19 Суб 17:21:34 1505246142
Что почитать толкового по MSBuild?

Уже какое-то время использую кастомные таргеты и до сих пор не могу выявить как работает, например, robocopy в постбилде взятый с MSDNовского гайда. На одном солюшне всё как часы, на другом потребовалось по-другому оформить пути к директориям, в третьем ебля на ровном месте в ходе чего пришлось другой код ошибки вставлять, и ещё много всякого разного.
И это один только несчастный перенос файлов. Как охватить умом всю систему, чтобы оно не казалось таким рандомом? MSDN тут не сильно помогает, увы.
От всяких там мурриканских профи уловил месседж, что Студия скрывает в себя много подводных на этот счёт, но реально критично это должно быть когда компилится враз порядка 7 и выше проектов (т.к. оптимизация билда может аукаться альтернативным проходом тех же таргетов). Но это явно не случай одного несчастного приложения в котором нужно некоторые косметические вещи сделать, правильно ресурсов притащить дополнительных, обфускацию, итд.
Аноним 26/10/19 Суб 19:04:07 1505381143
Сап. Пишу впф+мввм приложуху. Обычно, что бы закрыть окно по кнопке я ставил ей IsDefault/IsCancel в тру и оно закрывается после выполнения команды. Но теперь появилась необходимость, чтобы при определенных условиях в команде закрытие отменялось. Как это можно сделать в рамках мввм?
Аноним 26/10/19 Суб 21:14:20 1505531144
>>1504961
Типичный двач, мажутся говном уже в первой лабе по шарпам
По алгоритму тут уже всё сказали, по кодстайлу вот:
1. В консоль без дела не срать: убери весь вывод в консоли из циклов
2. Вместо даблслэш используй / somecode / для комментов в несколько строк или summary, если это описание работы метода.

А вообще всё это говно с сортировкой превращается в пару строк с помощью Array.Sort(Array)
Аноним 26/10/19 Суб 21:27:48 1505550145
Аноним 27/10/19 Вск 01:32:29 1505821146
>>1505550
Лучше, чем у автора
Предусмотрены некоторые исключения, что хорошо. Но слишком много ифов, с набега не въехал в логику работы
Плюс не очень понял, зачем отдавать методам data через ref , но я в чужие дела не лезу. Прописал, значит есть зачем.
Мой вариант таски примерно такой: https://ideone.com/L1Frzn
Приоритет отдал коду в ущерб быстродействию
Аноним 27/10/19 Вск 12:31:01 1506011147
Раз уж тут в code review играют, то я пожалуй тоже попробую.

>>1505038
1. Замени возврат значения через out параметры на нормальный возврат через return. Это явно не тот случай, где следует применять out параметры.
2. Передавать массив через ref не имеет смысла, массив - это ссылочный тип, он и так по ссылке передается.
3.
if (left > right)
{
right = left + right;
left -= right;
right -= left;
}
Не нужно менять значения двух переменных подобным образом, с точки зрения производительности выхлопа здесь никакого не будет, а вот читаемость страдает. Кроме того, возможно переполнение right, если right + left будет больше макс. значения инта.
4. Возможно, у тебя какая-то своя схема именования методов, но в C# стандартом является именование всех методов через PascalCase, даже если они приватные.

>>1505821
1. Почему метод называется Sort, если никакой сортировки не происходит и метод делает совершенно другие вещи?
2.
>massive
Транслит в коде - нехорошо.
3.
>int sum = new int()
Не вижу смысла явно вызывать конструктор инта, запись int sum = 0 и короче и понятнее.
3. И наконец, самая большая проблема - код работает неправильно.
В строчке
>sum = massive.Where(p => !(p > minElementId && p < maxElementId)).Sum();
целых 2 проблемы. Во-первых, метод Where работает со значениями элементов, не с индексами, а у тебя идет сравнение с индексами. Во-вторых, твой предикат суммирует те элементы, которые наоборот находятся за минимальным и максимальным элементами, а не между ними.
Аноним 27/10/19 Вск 13:08:12 1506031148
>>1506011
Да, действительно, в Where на ночь глядя ерунду написал. Хотел прописать суммирование через одну строку без явного цикла - поспешил
Аноним 27/10/19 Вск 13:28:26 1506037149
>>1505821
> Приоритет отдал коду в ущерб быстродействию
Зачем лапша из for вместо нормального foreach и бесполезные переменные с крайними элементами?
Аноним 27/10/19 Вск 15:02:22 1506093150
>>1506037
С for можно узнать текущий индекс элемента без костылей (для возможности вывода в консоли "A[i} = ").
Можно обойтись без переменных, я их прописал, чтобы код легче было читать
Аноним 27/10/19 Вск 15:03:57 1506094151
>>1506011
>Ссылочный тип не имеет смысла передавать через реф
Мы вам перезвоним

на самом деле в этой ситуации может не имеет, но в целом имеет, не путай ньюфага
Аноним 27/10/19 Вск 15:17:56 1506104152
>>1506093
> текущий индекс элемента без костылей
Используй List и
foreach (var (item, index) in list.WithIndex())
Аноним 27/10/19 Вск 15:46:51 1506143153
>>1506094
Эх, так и знал что кто-то доебется до этого.
Аноним 27/10/19 Вск 16:29:42 1506212154
>>1505047
>Из макаки хотят сделать нормального человека, а она копротивляется. Как мило.
Типичный проект в конторе - переделать XML в текст. Вся прога строк 320 занимает. Щас бы неделю тратить на всякие либы, потом через пол года в них разбираться вместо того, чтобы просто написать прогу за пол дня и пойти обедать. Я не против когда проект огромный и реально есть что делать отдельно. Но ЭТО НЕ ВСЕГДА ТАК РАБОТАЕТ АНОН!
Аноним 27/10/19 Вск 16:32:52 1506214155
>>1505047
>У тебя задача добавить условие в иф, а к тебе доебываются почему ты архитектуру не переделал? Ты или не договариваешь, или путаешься сам.
Ну да, консольная прога, запустил, нажал кнопку, рад. ПОследний реквест был реально добавить 2 условия уровня if.
Нет просят переписать под UI, чтобы на WPF и чтобы обязательно MVVM. Учитывая что вся прога заняла примерно 5 дней написания и пользоваться будут её исключительно 3 человека из конторы, весьма сомнительно тратить на неё месяц переписывая всё под WPF MVVM. Тем более что работы и так много.
Аноним 27/10/19 Вск 16:40:29 1506226156
>>1505040
Какой-то непонятный аргумент. Ну как понадобится - так пусть и переписывают? Я тут каким боком? В данный момент понадобилось добавить 1 if и я добавил.
А всякие "'скажем 'потом ядро операционки из этого кода надо будет написать " - вообще шиза последней стадии. Что вообще значит "скажем"? Задача есть или нет? Переписывать какой-то код хуй пойми почему - ну так я вообще тогда могу просто днями сидеть и переписывать всё. Смысле только ноль.
>Как думаешь, захочется ли тебе потом переписывать все чуть ли не с нуля, еще и разбираясь, как это говно вообще работает?
Опять какой-то странный вопрос. Что вообще значит "захочется ли тебе"? Это моя работа, мне за неё деньги платят. Конечно мне захочется, иначе бы я не работал на этой должности.
>потом придут новые ебланы и им может понадобиться этот говнокод развивать и поддерживать.
Такова их работа. Не смогут разобраться - их проблемы. И вообще у тебя аргумент типа "Ух бля в 300 строках разбираться надо!!111"
Аноним 27/10/19 Вск 17:12:54 1506251157
>>1506212
>Типичный проект
Так блядь тем более сука. Если у вас куча однотипных задач, то выносить обобщенную логику в библиотеки сам господь сука велел. Иди нахуй короче, хуле перед мартыхой расписаться, надеюсь тебя уволят к хуям
Аноним 27/10/19 Вск 23:00:02 1507093158
>>1506226
>Непонятный аргумент
Блядь ты тупой или троллишь? Ты работать работу пришел, на дядю. Не на себя. А потом КОКОКО А МНЕ КАКОЕ ДЕЛО ДО ТРЕБОВАНИЙ КУДАХ, да такое что тебе за это деньги блядь платят. Хочешь писать как тебе нравится - пиши петпрожект или мути стартап.
Мартыхан пиздец, "я свою часть высрал а остальные ебитесь как хотите с тем что я высрал"
Аноним 27/10/19 Вск 23:38:06 1507110159
>>1499749
Распиши свою стори. Какие вводные? Как вкатывался? Сколько готовился? Как учился? Что самое сложное было? Сколько времени посвящал? Что на собесе спрашивали?
Аноним 28/10/19 Пнд 00:24:34 1507119160
Зачем придумали микросервисы? Какие у них плюсы и минусы?
Аноним 28/10/19 Пнд 09:29:46 1507209161
Аноним 28/10/19 Пнд 12:49:32 1507284162
image.png (145Кб, 735x438)
735x438
>>1507119
Моя любимая пикча на эту тему
Аноним 28/10/19 Пнд 13:19:25 1507303163
>>1506251
>выносить обобщенную логику в библиотеки сам господь сука велел.
Сел на стул - написал библиотеку для усаживания на стул.
Пёрнул - написал либу для пердежа.
Пчесал яйцо -написал либу. Вдруг кому пригодится.
Смотришь на коллег у которых по 100 либ на всякую хуйню, кто из них использует свои же либы? Никто. Вот и поговорили.
Аноним 28/10/19 Пнд 13:20:29 1507307164
>>1507093
> Ты работать работу пришел, на дядю. Не на себя.
Вот дядя мне и ставит задачу которую я решаю за пару часов. А всякие двачеры говорят потратить пару недель на написание либ, вместо решения задачи.
Аноним 28/10/19 Пнд 13:24:09 1507310165
>>1507303
Двачую. Максимум - написать нормальный класс и потом подкидывать куда надо.
Аноним 28/10/19 Пнд 13:25:31 1507313166
>>1507310
Вот, двачую этого адеквата! Самое хорошее решение в данном контексте.
Аноним 28/10/19 Пнд 13:26:38 1507315167
Что делать, если мне нужно работать с кучей листов, у каждых из которых свой тип? Меня просто трясёт уже, я на ровном месте топчусь и нихуя не могу сделать. Раньше всё прекрасно работало с datatable, но за каким-то хуем нужно весь проект под злоебучий entity framework переделывать, ебись он в рот.
Аноним 28/10/19 Пнд 13:29:07 1507317168
>>1507315
Думал всем этим блядским листам тип entityobject сделать, но нихуя не вышло.
Аноним 28/10/19 Пнд 13:42:05 1507331169
ferris-re-zero-[...].jpg (24Кб, 300x415)
300x415
>>1507110
>Какие вводные?
Кун, 25 лет. До этого баловался художествами. Умел в PHP немного в JS на уровне копипасты и сделал пару сайтов на WP.
>Как вкатывался? Сколько готовился? Как учился?
Вкатился примерно в это время (октябрь ноябрь 2018) год назад к вам в тред. Знакомый сказал что примерно через пол года будут искать джуна на должность со знанием C#. Но его захантили в другую контору и в итоге по знакомству устроится не смог. Собственно от него помощи никакой небыло.
Сидел здесь месяца три вылавливая всё что только можно. Прочитал большинство книг шапки. Прорешал всё что было в задачах. Покликал сайты с шапки. Посмотрел некоторые курсы на ютюбе. Внезапно они оказались безсмысленной тратой времени.
Примерно к марту 2019 у меня было несколько проектов уровня чуть больше чем лаба.
>Что самое сложное было?
MVVM самое сложное, вообще не понимаю его профитов относительно маленьких тим. Ещё SOLID - если по отдельности ещё кое как могу притянуть за уши к проектам, то всё вместе пока небыло опыта применить. Наверное поэтому не понимаю.
>Сколько времени посвящал?
Примерно часов 8-10 в день. Благо работа была ненапряжной, админил конторку.
>Что на собесе спрашивали?
MVC, ASP, SQL, очень много про базы данных, вложенные запросы, тригеры, отношения, оптимизации запросов, что вообще-то меня удивило поскольку для меня это казалось что-то уровня "Ты выпускника MIT спрашиваешь про букварь". Админимтрирование немного. C# как ни странно почти не задели. Ну и так, кем работал, какие проекты были, что из проектов было самым сложным и почему. Про PHP спросили потравили анекдотов и баек про него.
Аноним 28/10/19 Пнд 13:46:56 1507336170
Аноним 28/10/19 Пнд 13:47:33 1507337171
>>1507315
И у таблиц соответственно типы разные, с ними нихуя сделать нельзя, даже join ёбаный.
Аноним 28/10/19 Пнд 16:10:49 1507500172
Стоит ли использоваться Thread'ы, или лучше всегда предпочитать Task'и?
Аноним 28/10/19 Пнд 16:25:46 1507522173
>>1507500
Всегда используй async/await, в 2019 использовать что-то другое будут только пердолики. Thread вообще говно мамонта - очень медленно, надо следить за потокобозопасностью, за количеством потоков, пердолить то что с асинхронностью работает без лишнего кода. А ещё автоматом лишаешь себя всех асинхронных нововведений, которых в каждом апдейте Core/языка завозят гору.
Аноним 28/10/19 Пнд 17:23:41 1507610174
Превозносимые сисярп-Б*ги, такое дело: надо за два дня постичь основы C#, чтобы написать тз (по основам JS, SQL и сисярп) и попасть на курсы. Подскажите, пожалуйста, как это реализовать? На всё у меня в сумме неделя.
Аноним 28/10/19 Пнд 17:33:21 1507629175
>>1507610
>чтобы написать тз
Ты должен тз написать?
Аноним 28/10/19 Пнд 17:42:12 1507642176
>>1507315
Ты проблему сформулировать нормально можешь блядь? Что за листы, откуда берутся, что конкретно с ними делается? "Доктор помогите у меня болезнь, ну такая, болезнь организма"
Аноним 28/10/19 Пнд 18:09:32 1507680177
>>1507629
хуй его знает, как называется, тест какой-то по знаниям вышеуказанного.
Аноним 28/10/19 Пнд 18:24:34 1507691178
Аноним 28/10/19 Пнд 18:43:43 1507719179
>>1507691
А можно за 3? Мне лень.
Аноним 28/10/19 Пнд 19:17:05 1507744180
>>1507719
Скорость 2х ставь.

И еще... ВЫ СПИЗДИЛИ РЕАЛИЗАЦИЮ ИНТЕРФЕЙСОВ!
Аноним 28/10/19 Пнд 19:51:18 1507772181
Закончил в этом году вышку не по АйТи, за лето сделал несколько проектов в портфолио.
0. https://github.com/42ama/HeadhunterRuStats - пока учился питону сделал парсер хх чтобы вакансии помониторить. Прилагаю как пример ведения гита, потому что в остальных проектах я хуй на него забивал.
1. https://github.com/42ama/UrlShortener - одностраничник сократитель ссылок, с разрешение коллизий.
2. https://github.com/42ama/Little-Blog-Engine - небольшой блоговый движ, с аутенфикацией и авторизацией, постами и поиском.
3. https://github.com/42ama/Boorger-Shop - онлайн-магазин бургеров с товарами, категориями, корзиной и проработанной админкой для управления всем этим.
Проекты в хронологическом порядке. Скидывал резюме с ними на 4 вакансии, позвали на 2 собеса, после личного собеседования говорили что я неплохо все знаю, дали тестовые - сделал, в итоге на обе вакансии взяли челов с большим опытом.
Так вот вопрос, как думаете, мне сейчас дальше с этим портфолио искать себе место чтобы побыстрее получить опыт корпоративной разработки или сделать ещё один проект, ещё лучше, но потратить на это время и силы? Просто от безделья и сидения на мамкиной шее я потихоньку в мини-депрессию скатываюсь.

Уже пытался зафейкать корпоративную трехзвенку, на двух новых для себя фреймворках wpf+wcf в итоге понял что слишком большую задачу взял, думаю на asp.net'е опять её сделать, параллельно про wpf почитать.
Аноним 28/10/19 Пнд 20:04:10 1507798182
>>1507772
> 0. https://github.com/42ama/HeadhunterRuStats
Пиздец треш. Ты сам можешь в этом говнокоде ориентироваться?
> 1. https://github.com/42ama/UrlShortener - одностраничник сократитель ссылок, с разрешение коллизий.
Зачем из рандомного туториала скопипастил в гитхаб?
> 2. https://github.com/42ama/Little-Blog-Engine - небольшой блоговый движ, с аутенфикацией и авторизацией, постами и поиском.
Опять копипаст? Сам не можешь ничего сделать?
> 3. https://github.com/42ama/Boorger-Shop - онлайн-магазин бургеров с товарами, категориями, корзиной и проработанной админкой для управления всем этим.
Выглядит как говно, слепленое студентом за вечер.
> Так вот вопрос, как думаете, мне сейчас дальше с этим портфолио искать себе место чтобы побыстрее получить опыт корпоративной разработки или сделать ещё один проект, ещё лучше, но потратить на это время и силы?
Не думаю что тебя с таким куда-то возьмут, это даже на джуна за еду не тянет.
Аноним 28/10/19 Пнд 20:04:55 1507799183
Аноним 28/10/19 Пнд 20:25:36 1507833184
>>1507799
Говорю как есть. Лучше больше не позорься. Я вообще админ и мне нахуй не надо кодить, но я вижу что ты совсем не понимаешь ничего, когда пишешь
> корпоративной разработки
Естественно тебя могут взять только в такую дыру, где кроме тебя никто не придет на собес. Пилить низкокачественное говно, например, будешь. Опыта тебе не дадут. Ты пытаешься за всё ухватится, но знаний хоть по одной теме ноль.
> от безделья в депрессию скатываюсь
Ты хоть попробовал бы что-то поизучать? Не? Безделье лучше? С начала лета почти пол года прошло. А у тебя в гитхабе кода как за неделю максимум. Знаю я таких работников. Нихуя не знают, нихуя не делают, никуда не стремятся, а потом кто-то виноват им, когда руководство в очко ебет.
Аноним 28/10/19 Пнд 20:35:17 1507853185
>>1507799
Поддерживаю
>>1507833
Что поизучать? Спрашивай что хочешь с любых вопрос для джунов, без гугла отвечу. Я в программирование с 0я вкатился, вкатился в теоретические данные по проектированию, вкатился в пару фреймворков на сисярпе, что ещё поизучать?
В 1ом говно код согласен, вчера залез пофиксить баг какой-то сам еле-еле разобрадся.
2, 3, 4 с нуля с идеи сам делал.
На 4ый убил примерно где-то неделю, у тебя какой-том мир слишком идеальный где джуны вкатываются с личной бордой и 5ью рабочими банковскими системами.
Покажи мне хорошие джуновские проекты я посмотрю, получу опыт, постараюсь что-то такое же по качеству сделать. А у меня А - закончились идеи, Б - кончились силы самому себе выдумывать никому не нужную хуйню, а потом её делать.
Аноним 28/10/19 Пнд 20:39:18 1507861186
>>1507772
>думаю на asp.net'е опять её сделать, параллельно про wpf почитать.
Зачем тебе одновременно wpf и asp.net изучать? Выбери что-то одно (asp.net) и забей хуй на второе.
Аноним 28/10/19 Пнд 21:27:34 1507900187
>>1507861
Соглашусь, просто понравилось построение по принципу мввм, хотел поглубже проникнуть
Аноним 28/10/19 Пнд 21:58:47 1507930188
>>1500288
Не удивительно не теперь, почему эта ненужная хуета для даунов, появилась в божественном шарпе. Майки сжалились над умственно отсталыми и добавили.
Аноним 28/10/19 Пнд 22:01:11 1507932189
>>1507900
Ты же не понимаешь зачем оно нужно, да?
Аноним 28/10/19 Пнд 22:16:57 1507945190
>>1507932
Для упрощения поддержки и расширения кода, для упрощения написания тестов. Как и любой из паттернов м-в серии, просто я не видел новых фреймоврков на мвц и мвп. В мвп больше писанины по сравнению с мввм, так как больше ручками приходится описывать, а с мвц я только в асп.нете сталкивался и либо он как-то не совсем стандартно там применен, либо(что скорее) я не правильно его в контексте понял.
Аноним 28/10/19 Пнд 22:22:32 1507952191
>>1507522
Можешь ещё за мьютексы и прочую поебень для синхронизации потоков пояснить? на собеседовании спрашивали
Аноним 28/10/19 Пнд 22:38:16 1507963192
>>1507952
> Можешь ещё за мьютексы и прочую поебень для синхронизации потоков пояснить?
Зачем? Под Windows 98 писать код собираешься? Хотя если будет задача сделать простейшую задачу максимальным количеством строк кода и выстрелить себе в ногу во время синхронизации потоков, то Mutex идеально подойдёт.
> на собеседовании спрашивали
Скажи что с 2003 года уже много времени прошло, этим говном зашкварно пользоваться в 2k20.
Аноним 29/10/19 Втр 00:21:31 1508033193
>>1507963
Я на ASP.NET WEB Api собеседовался, а вопросы были про мьютексы, сложность алгоритмов и степени изоляции транзакций.
29/10/19 Втр 01:35:15 1508069194
Я вот о чём подумал:
Разве не логичнее использовать одну переменную byte, представленную в двоичном виде, вместо того, чтобы использовать восемь переменных bool? Все равно по памяти что байт, что буль занимают 1 байт.
Аноним 29/10/19 Втр 01:57:47 1508070195
>>1508069
Так и делают, например, когда нужно хранить информацию о возможностях пользователя, например, берёшь 0000 и разбиваешь его на 0 - возможность постить 0 - возможность создавать новые темы, 0 - возможность удалять чужие посты 0 - доступ к закрытым разделам и т. п.
Но в случае C# наверно лучше использовать перечисления. А считать байты это вообще полный долбоебизм, если ты хочешь писать настолько низкоуровневые программы, то тебе не С# нужен, а С++ или С
Аноним 29/10/19 Втр 02:14:52 1508074196
>>1508069
Поздравляю, ты придумал bitmask
Аноним 29/10/19 Втр 03:00:59 1508080197
>>1508069
Так делают, но это медленнее.
Иногда ради производительность наоборот хранят булеаны в 32байтных переменных.
Аноним 29/10/19 Втр 03:01:15 1508081198
Аноним 29/10/19 Втр 08:21:05 1508113199
>>1507963
>Зачем?
А что еще есть для межпроцессной синхронизации?>>1507963
>Скажи что с 2003 года уже много времени прошло,
В 2020 уже не синхронизируют доступ к ресурсам? И рэйс кондишн исячез? Все пишут на Го?
Аноним 29/10/19 Втр 09:03:52 1508121200
>>1508113
В 2k20 в тренде асинхронное программирование. Нет таких задач, когда выгоднее использовать Thread.
Аноним 29/10/19 Втр 10:31:21 1508155201
>>1508121
А при чем тут Thread? Речь же шла про примитивы синхронизаии. Использование тасков с async/await не отменяет необходимости программисту обеспечивать потокобезопасный доступ к общим ресурсам.
Аноним 29/10/19 Втр 11:26:40 1508190202
>>1508155
Про контекст синхронизации и потокобезопасные типы слышал? Какая ещё ручная синхронизация в 2k20? Такой ебенью уже нет необходимости заниматься. Недавно ещё и асинхронные стримы завезли, можно из другого потока в основной данные высерать без лишних телодвижений.
Аноним 29/10/19 Втр 11:36:18 1508196203
>>1508190
>контекст синхронизации
Угу, заставить все выполняться в родительском потоке? Охуенно.>>1508190
>потокобезопасные типы слышал
Которые используют теже самые мониторы, семафоры и прочее. Что там есть из потокобезопасных типов для работы с БД?
Аноним 29/10/19 Втр 11:49:26 1508207204
>>1508196
> Угу, заставить все выполняться в родительском потоке?
Кто тебе мешает передавать данные в основной поток? Контекст синхронизации вернёт данные куда укажешь.
> Что там есть из потокобезопасных типов для работы с БД?
Зачем? У тебя ввод/вывод асинхронный, пиши/читай из БД откуда хочешь, хоть из основного потока, он же не блокируется.
И если говорить про таски, то там нечего синхронизировать. А ещё таск не обязательно будет в другом потоке выполняться, хуй знает что ты там будешь пытаться синхронизировать. Только ресурсы просрешь изобретая велосипед там, где он не нужен.
Аноним 29/10/19 Втр 12:00:41 1508223205
>>1508207
>Кто тебе мешает передавать данные в основной поток?
Вот есть у меня серв, на нем висит ~150-200 клиентов, все работают асинхронно на тасках, кто в каком потоке выполняется разруливает среда. Ты предлагаешь всем выполнятся с однопоточным контекстом? Это же ебань.
>У тебя ввод/вывод асинхронный, пиши/читай из БД откуда хочешь, хоть из основного потока, он же не блокируется.
Возвращаясь к серву. Ну вот два клиента сделали дело и данные должны улутеть в БД, и произошло это одновременно. Упс, все идет по пизде без синхронизации.
>там нечего синхронизировать
>таск не обязательно будет в другом потоке
Эм, не находишь противоречий?
Аноним 29/10/19 Втр 12:13:02 1508232206
>>1508223
> Ты предлагаешь всем выполнятся с однопоточным контекстом? Это же ебань.
Так ты должен долгие задачи выполнять асинхронно, а остальное в основном потоке. Плодить потоки без нужды - вот это настоящая ебань, ещё и производительность по пизде пойдет.
> Упс, все идет по пизде без синхронизации.
Лол, нет. С чего ты это взял?
Аноним 29/10/19 Втр 12:29:55 1508239207
>>1508232
>Так ты должен долгие задачи выполнять асинхронно, а остальное в основном потоке.
И путь три ядра простаивают, пока одно захлебывется от мелких задач? Нет, спасибо.
> Плодить потоки без нужды - вот это настоящая ебань
Таски берут потоки из пула, он их не плодит без надобности.
>Лол, нет. С чего ты это взял?
С того и взял. Например, если использовать EF, то есть вероятность создать две записи с одним ключем, очевидно при сохранении база будет такому не рада. Ты хоть раз писал программу, которя выполняется нелинейно и поряд дейсвий тебе неподконтролен?
Аноним 29/10/19 Втр 12:32:50 1508240208
>>1508190
>Недавно ещё и асинхронные стримы завезли
А еще давно завезли асинхронный семафор, хм.
Аноним 29/10/19 Втр 13:29:23 1508299209
Аноним 29/10/19 Втр 13:37:04 1508307210
>>1508239
> И путь три ядра простаивают
Если ты не понимаешь как работает await, то сходи почитай.
> Например, если использовать EF, то есть вероятность создать две записи с одним ключем
Это проблемы говнокода, а не асинхронности. Опять же, читай как работает контекст синхронизации и await, чтобы не стрелять себе в ногу.
> которя выполняется нелинейно
> поряд дейсвий тебе неподконтролен
Как из первого следует второе?
Аноним 29/10/19 Втр 13:42:39 1508313211
>>1508299
Потому что говнокод без нормального использования асинхронности. Кто вообще так таски запускает? Естественно оно через жопу работает, ты пытаешься явно непотокобезопасно вызывать метод из другого потока.
Аноним 29/10/19 Втр 13:43:26 1508315212
>>1508307
>Это проблемы говнокода
Ну так правильно, в нормальном коде будет синхронизация.
>Как из первого следует второе?
Никак, это два разных свойства, на что намекает союз "и". Если б я подразумевал следствие, так бы и написал.
Вобщем пердоль все через один поток, когда понадобятся сам пойдешь изучать синхронизацию но будет поздно.
Аноним 29/10/19 Втр 13:45:05 1508316213
>>1508313
Напиши потокобезопасно с нормальной асинхронностью. По коду будет все видно.
Аноним 29/10/19 Втр 14:16:16 1508348214
>>1501032
>>1501533
Вы так говорите, будто это что-то полезное. Добавили костыль для дебилов которым сложно с JS перекатиться.
Аноним 29/10/19 Втр 15:20:07 1508396215
>>1508299
Напрямую в основной поток писать - ебень какая-то, ты же его блокируешь. Лучше просто возвращай результат, вроде такого
https://dotnetfiddle.net/7NhmEb
Это и быстрее в разы и основной поток не блокируешь. Нормальные люди вычисления делают асинхронно, а результат получают синхронно и пишут его куда надо, т.к. профита от блокировки другого потока нет никакого. Опять же, можно возвращать промежуточные результаты, если надо. Стримить данные можно через yield, если надо сразу в другой поток передавать.
Но и если уж припекло, то хотя бы Interlocked.Increment(ref counter) пиши, чтоб не вешать всё локом.
Аноним 29/10/19 Втр 15:34:01 1508409216
>>1508396
У тебя все таски выполняются синхронно и последовательно друг за другом. Представь, что ты зашел на двач и что бы отправить пост ты ждешь в очереди, пока другие двачеры закончат работу с бордой. Не очень хорошо. Получается правильная асинхронность - её отсутствие?
>>1508396
>Но и если уж припекло, то хотя бы Interlocked.Increment(ref counter) пиши, чтоб не вешать всё локом.
Таки да. И в итоге знать семофоры/локи/мониторы все равно надо и без них можно обосраться.
Аноним 29/10/19 Втр 15:49:16 1508418217
>>1508409
> У тебя все таски выполняются синхронно и последовательно друг за другом.
Так должна быть цепочка тасков. Суть асинхронности в том, что код выполняется параллельно, но ты контролируешь порядок выполнения. Внезапно await для этого и нужен, а не просто всё подряд через Task.Run() запускать и ебаться с синхронизацией.
> Представь, что ты зашел на двач и что бы отправить пост ты ждешь в очереди, пока другие двачеры закончат работу с бордой.
Так и есть в однопоточных веб-серверах. Все запросы обрабатываются поочерёдно. Для тебя это новость?
> Получается правильная асинхронность - её отсутствие?
Ну то что ты понимаешь под асинхронностью отсутствует, да.
Аноним 29/10/19 Втр 15:59:13 1508421218
>>1508418
>Суть асинхронности в том, что код выполняется параллельно, но ты контролируешь порядок выполнения. Внезапно await для этого и нужен, а не просто всё подряд через Task.Run() запускать и ебаться с синхронизацией.
Мда.. Суть асинхронности в том, что б не блокировать вызывающий поток (а ты .Result пишешь!). Await нужен, что бы освободить поток (а ты его не вызываешь, тебе даже иде пишет что без него все отработает синхронно) и не ебеаться с коллбэками (компилятор раскрутит async/await в машину состояний и при каждом ивенте завершения таски будет эту машину дергать). В твоем коде, если выкинуть таски ничего не изменется, все равно там нет асинхронности. Даже чуть быстрее все будет.>>1508418
>Так и есть в однопоточных веб-серверах. Все запросы обрабатываются поочерёдно. Для тебя это новость?
Так работают синхронные серверы.
>>1508418
>Ну то что ты понимаешь под асинхронностью отсутствует, да.
Там её нет ни в одном из пониманий.
Аноним 29/10/19 Втр 16:37:33 1508454219
>>1508421
> Мда.. Суть асинхронности в том, что б не блокировать вызывающий поток (а ты .Result пишешь!).
А что lock делает?
> Await нужен, что бы освободить поток
У тебя как с английским? await нужен для остановки выполнения текущего метода и ожидания результата таска, .Result делает тоже самое, но глобально, т.к. Main синхронный. Ты точно так же можешь вместо await написать .Start() и не ждать результата, а получить его потом через .Result, когда надо.
> (а ты его не вызываешь, тебе даже иде пишет что без него все отработает синхронно)
Блять. Ты читать не умеешь? Там пишется что метод помечен как асинхронный, но в нем не вызывается ни одной асинхронной операции, т.е. всё в нем выполняется по порядку. Это не значит что сам метод выполняется в том же потоке.
> Даже чуть быстрее все будет.
А тебя не смутило, что вариант с lock аж в 5 раз медленнее моего?
Аноним 29/10/19 Втр 16:59:42 1508467220
>>1508454
>А что lock делает?
Пускает только один поток в критическую секцию кода.
>await нужен для остановки выполнения текущего метода
Вот именно метода, а не потока, поток освобождается
>Result делает тоже самое
блокирует поток до завершения таски
>Там пишется что метод помечен как асинхронный, но в нем не вызывается ни одной асинхронной операции
Во-первых нет, там написано именно синхронное выполнение, у тебя самого с английским видимо не очень. Во-вторых слово async не дает асинхронности, оно лишь позволяет использовать await. И тогда уже компилятор создаст стэй машину и скорее всего (но не обязательно) код после await выполнится асинхронно.
>А тебя не смутило, что вариант с lock аж в 5 раз медленнее моего?
Конечно, нет. Он другое показывал.
Аноним 29/10/19 Втр 17:09:47 1508479221
>>1508467
И зачем ты повторил то что я написал?
Аноним 29/10/19 Втр 17:11:06 1508483222
>>1508479
Бывает. Попробуй завтра и потоньше.
Аноним 29/10/19 Втр 17:15:06 1508485223
>>1508467
> скорее всего (но не обязательно) код после await выполнится асинхронно
Вообще-то обязательно. Он может выполняться синхронно только до момента пока не потребуешь результат.
Аноним 29/10/19 Втр 17:17:53 1508490224
>>1508485
Если к моменту await'а таска уже завершена, то выполнение продолжится синхронно.
>может выполняться синхронно только до момента пока не потребуешь результат.
Ты опять все напутал.
Аноним 29/10/19 Втр 17:25:09 1508500225
>>1508490
У тебя логика сломана? Это таск выполняется асинхронно, код после await в любом случае синхронно выполнится.
Аноним 29/10/19 Втр 17:34:09 1508506226
>>1508500
У тебя просто огромнейший пробел в знаниях по всем фронтам.
Аноним 29/10/19 Втр 20:00:55 1508625227
>>1499747
такой вопрос: учу уже несколько дней С#, решил начать с первой книги в списке - руководство игрока от вайтейкера, читаю на английском, прошёл больше четверти книги, но книга эта мне совершенно не нравится, т.к. автор объясняет будто бы для умственно отсталых, я намного больше времени трачу на перевод его длинных объяснений простейших вещей, чем на само обучение.

Можете, пожалуйста, посоветовать другой учебник, где так же будут описаны все основы сишарпа, который подойдёт для изучения с нуля, но, при этом, не будет вызывать ощущение, что автор - мама-птичка, которая срыгивает мне, как птенцу, переваренную информацию в клюв.
Аноним 29/10/19 Втр 20:04:26 1508628228
>>1504190
>В книге как-то высрано непонятно, плюс бывают ошибки, которые пока фиксишь теряешь нить нахуя это вообще делается.
Спасибо, я из поста выше, такая же ситуация, полчаса фиксил код, в котором автор даже не удосужился объяснить новые термины. Буду знать, что читать не надо
Аноним 29/10/19 Втр 20:04:53 1508629229
Аноним 29/10/19 Втр 21:50:58 1508723230
>>1508629
Спасибо. А почему не метанит?
Аноним 29/10/19 Втр 22:01:35 1508731231
>>1508723
Потому что протухшее и поверхностное говно.
Аноним 29/10/19 Втр 22:01:57 1508732232
>>1508723
Потому что это устаревшая хуета для дегенератов, которые хотят получить иллюзорное чувство того, что они изучили C#, при этом на деле не получив никакой полезной информации.
Аноним 29/10/19 Втр 22:16:30 1508748233
Аноним 29/10/19 Втр 22:18:20 1508752234
>>1508732
ну хз, там вроде как книгу Троелсена по C# 7.0 пересказали)
Аноним 29/10/19 Втр 22:32:07 1508767235
>>1508752
Зачем читать двойной пересказ документации? Если ты хлебушек и не можешь прочитать документацию, то так и напиши. Попробуем отговорить дальше вкатываться, это явно не твоё.
Аноним 29/10/19 Втр 22:49:58 1508782236
>>1508748
Читай в комментах к его главам. Но большая проблема не в устаревшей информации, а в многочисленных опечатках и кривости изложения. Мутанит словно комнатный сыч, который прочитал троелсена, хуево его понял и теперь пытается пересказать тебе, заикаясь и делая ошибки, при этом не желая эти ошибки исправлять.
Вот, один из примеров (https://metanit.com/sharp/tutorial/11.3.php):
>После создания потока мы передаем метод myThread.Start(number); переменную, значение которой хотим передать в поток.

Что мы, блять, передаём? Метод? Может "методу"? Тогда какого хуя ты пишешь "myThread.Start(number);" - это не передача методу, это вызов метода myThread.Start с параметром number. И мы не хотим "передать значение переменной в поток", мы передаем переменную делегату ParameterizedThreadStart, которую он принимает в качестве параметра, и делаем это через метод myThread.Start

И таких опечаток/кривых изложений у него воз и маленькая тележка, при том, что всё пересказано максимально сжато, без пояснений. При этом само повествование не последовательно, почему-то о рефлексии у него речь заходит в 18 главе, а о доменах приложения только в 22.
В итоге даже машинный перевод статей msdn лучше в сравнении с высером мутанита.



Аноним 29/10/19 Втр 22:52:44 1508785237
>>1508752
От Троелсена там только примеры. И у Троелсена 1300+ страниц, а у мутанита едва 100 наберётся. Это даже на краткое содержание не тянет.
Аноним 29/10/19 Втр 22:54:54 1508787238
image.png (185Кб, 877x827)
877x827
Антоны, что за хуйня?
Сперва Рихтер пишет
> Оператор await не может использоваться в блоке catch, finally или unsafe.
Но потом я вижу вот это
Аноним 29/10/19 Втр 22:55:22 1508790239
>>1508787
А, бля, все норм, это я в глаза долблюсь, про блок try ничего не написано.
Аноним 30/10/19 Срд 08:33:44 1508896240
>>1508787
> Оператор await не может использоваться в блоке catch, finally
Может.
Аноним 30/10/19 Срд 08:38:33 1508898241
>>1508787
Потому что ты читаешь говнокниги на русском.
Аноним 30/10/19 Срд 08:43:25 1508900242
Пиздец пошла мода обсирать все источники на русском. Чувак просто невнимательно прочитал предложение и сделал неправильный вывод. В результате набежали хищники со словами: "ДА ПАТАМУШТА НАДА НА АНГЛИСКАМ ЧИТАТЬ, ВОТ НА АНГЛИСКАМ ТЫ БЫ ПРОЧИТАЛ ПРАВИЛЬНО!!!".
Аноним 30/10/19 Срд 08:55:43 1508909243
>>1508900
> ко-ко-ко
Проблема вовсе не в языке, руске мир может спать спокойно.
Аноним 30/10/19 Срд 11:51:11 1508996244
Аноним 30/10/19 Срд 11:56:15 1508999245
https://dotnetfiddle.net/GXoYLd

Господа, почему так, подскажите? Почему такое определение не вызывает ошибку на этапе написания, ведь вызов метода подходит к обоим определениям?
Аноним 30/10/19 Срд 12:16:50 1509006246
Англ источники тоже ничем особо не лучше, прочитал вчера про контекст синхронизации и вообще нихуя не понял практически, надо перечитывать.
Аноним 30/10/19 Срд 12:37:36 1509009247
>>1508900
Потому что если бы он читал на английском, то это было бы не устаревшее говно в виде рихтера, а какой-нибудь Троелсен, тогда бы твой чувак узнал, что асинхронные операции можно выполнять в блоках catch и finally с момента выпуска С# 6.0
Аноним 30/10/19 Срд 12:38:12 1509010248
>>1509009
У Троелсона разбор на гораздо более меньшем уровне, чем у Рихтера.
Аноним 30/10/19 Срд 12:43:34 1509014249
>>1508999 из спеки:
>Parameter lists for each of thecandidatefunction members areconstructed in thefollowing way:
>Theexpanded form is used if thefunction member was applicable only in theexpanded form.
>Optional parameters with no corresponding arguments areremoved from the parameter list
>The parameters arereordered so that they occur at thesame position as thecorresponding argument in the
argument list.
Думаю в этом дело
Аноним 30/10/19 Срд 12:44:15 1509015250
>>1509010
И как твой "гораздо более меньший уровень" понимать? Слишком подробный разбор и всё на низком уровне происходит или не достаточно деталей и мало углублений? Если нужны подробности и внутренние детали, то читать нужно Альбахири. Если для тебя Троелсен слишком низко уровневый, то тебе не программирование надо изучать, а возле зеркала тренироваться, повторяя "Добрый день, что будете заказывать?"
Аноним 30/10/19 Срд 12:46:02 1509016251
>>1509015
>или не достаточно деталей и мало углублений
this
>Если нужны подробности и внутренние детали, то читать нужно Альбахири.
Прочту, спасибо за наводку.
Аноним 30/10/19 Срд 12:48:24 1509018252
>>1509009
а толку ему от английского варианта Рихтера, если последнее издание базируется на C#5.0 и .NET Framework 4.5
Аноним 30/10/19 Срд 12:49:22 1509019253
>>1509018
фикс
Блять, соре чел, не до конца прочитал твое сообщение)
Аноним 30/10/19 Срд 12:50:42 1509020254
>>1508999
А еще в спеке во такое есть
>Otherwise, if Mp is applicablein its normal form and Mq has a params array and is applicable only in its expanded form, then Mp is better than Mq .
Слишком сложно для меня. дальше сам спеки читай.
Аноним 30/10/19 Срд 12:55:38 1509026255
>>1508999
Потому что выбираться будет метод, который более всего подходит под вызов. В данном случае "a1" будет только в том случае, если явно передавать массив из строк в качестве второго аргумента.
Аноним 30/10/19 Срд 13:15:16 1509032256
>>1509026
>>1509020
> >Otherwise, if Mp is applicablein its normal form and Mq has a params array and is applicable only in its expanded form, then Mp is better than Mq .
Понятно, если вызов подходит только при раскрытии params, такой вариант автоматически имеет меньший вес. Спасибо за пояснения, аноны, я всё понял. Однако лучше бы в таком случае хотя бы предупреждение вылезало, что имеется несколько подходящих методов, но будет вызван только один конкретный.
Аноним 30/10/19 Срд 13:26:27 1509039257
>>1509032
Может тебе еще предупреждения давать когда ты используешь логические операторы, в зависимости от их приоритета? Ситуация элементарная - если есть какое-то более конкретное определение метода, то будет вызываться оно.
Аноним 30/10/19 Срд 13:40:34 1509051258
>>1509032
Кста, у тебя же там в обоих методах param, поэтому скорее твой случай
>Otherwise, if Mp has more declared parameters than Mq , then Mp is better than Mq .This can occur if both methods have params arrays and areapplicable only in their expanded forms.
Хотя, как он дойдет до этой проверки, если он отбракует метод на предыдущей. Хм.. надо еще понять что такое expanded и normal form
Аноним 30/10/19 Срд 14:10:32 1509074259
1.jpg (224Кб, 913x1065)
913x1065
Здесь не хватает await перед actualimplementation(); ?

Потому что компилятор пишет, что метод будет выполнятся в синхронном режиме из-за отсутствия в нём await. Если добавить await, тогда предупреждений не будет, но и теряется смысл. Если всё написано так как должно, то зачем тогда добавлять модификатор async при объявлении функции?
Аноним 30/10/19 Срд 15:19:00 1509135260
>>1509074
В данной реализации помечать метод async смысла нет.
>но и теряется смысл
Смысл чего? Await тут по сути ничего не изменит (если предположить что эксепшенов не будет).
Аноним 30/10/19 Срд 16:23:14 1509175261
>>1509135
Await сделает весь метод асинхронным, а суть в том чтобы начало метода выполнялось синхронно для того чтобы не было ситуаций когда проверка выполняется после начала задачи, а не до.
Аноним 30/10/19 Срд 16:32:49 1509181262
>>1508785
Сомневаюсь, что по количеству бульона можно судить о его питательности.
Аноним 30/10/19 Срд 17:17:08 1509207263
Кстати, Антоны, подкиньте статеек про контекст синхронизации, чёт я статью на MSDN не понимаю
Аноним 30/10/19 Срд 19:00:32 1509293264
>>1509181
Мы и не бульон обсуждаем, а техническую литературу. У тебя прям идеальный склад ума для работника мака - всё с едой сравнивать.
Аноним 30/10/19 Срд 21:05:40 1509376265
Кто нибудь может подробно описать работу алгоритма нахождения пути А*?
Пилю на unity игру на основе сетки, и пытаюсь сделать алгоритм для перемещения персонажей.
На данный момент есть алгоритм который находит ближайшую точку по отношению к точки финиша.
Аноним 30/10/19 Срд 21:40:35 1509404266
Антоны, если я хочу добавить на сайт систему авторизации и аутентификации, то мне же необязательно юзать OWIN?
Есть видео с метанита, где все это делается, оно подойдёт?
Аноним 30/10/19 Срд 23:47:55 1509464267
image.png (92Кб, 1028x403)
1028x403
image.png (53Кб, 961x179)
961x179
>>1509376
Паласиос, программирование искусственного интеллекта на юнити.
Аноним 31/10/19 Чтв 10:12:21 1509606268
реально ли на .net кодить из под линухи?
Аноним 31/10/19 Чтв 10:40:07 1509623269
>>1509606
а что там не реального?
Аноним 31/10/19 Чтв 11:57:55 1509664270
>>1509376
>подробно описать работу алгоритма нахождения пути А*?
Куда уж подробнее чем на педивикии?
Аноним 31/10/19 Чтв 12:07:24 1509672271
>>1509623
ну типа .net платформа от оконников, да и иде нормального я что-то не могу найти, слышал что для .net надо юзать только визуал
Аноним 31/10/19 Чтв 12:22:37 1509686272
>>1509672
Ты в 7 классе? Под Линуксом/Маком работает .NET Core, кодить надо в VS Code.
Аноним 31/10/19 Чтв 12:39:10 1509697273
>>1509686
> кодить надо в VS Code
Прикольный конечно блокнотик, но есть же и студия и ридер под линь.
Аноним 31/10/19 Чтв 12:39:20 1509698274
>>1509672
Если писать под .NET Framework то да, придется на винде сидеть.

Есть .NET Core.Качаешь .NET Core SDK. Ставишь VS Code с расширением для C#.
Минус в том что под Линуксом доступны лишь Console и ASP.NET Core проекты.

Как альтернатива, есть еще Rider от JetBrains, но стоит он не малых денег.
Аноним 31/10/19 Чтв 12:40:40 1509699275
>>1509697
официальной студии же нет под Линукс? Ты имеешь ввиду под Wine`ом запускать?
Аноним 31/10/19 Чтв 12:56:00 1509710276
>>1509699
Сорян, обосрамс, под мак завезли думал и под линь тоже. Студии нет, но ридер есть.
Аноним 31/10/19 Чтв 12:59:26 1509713277
>>1509710
Похоже у меня двойной обсер. То что они называют VS for Mac это бывший MonoDevelop. Санта-барбара бля.
Аноним 31/10/19 Чтв 14:08:28 1509779278
Перестала работать навигация по коду ctrl-up,ctrl-down. Вместо перемещения курсора прокручивается лист. Как фиксить. Заебался гуглить.
Аноним 31/10/19 Чтв 15:35:18 1509844279
>>1509175
>Await сделает весь метод асинхронным
лол нет. часть до await выполниться синхронно, await там может помочь поймать исключение. если что я про await перед actualImplementation, которого в коде нет.
Аноним 31/10/19 Чтв 15:42:17 1509857280
>>1509844
Тогда бы не нужно было делать обертку в виде локальной функции, а просто написать проверку перед await Task.Run() в коде выше. Скорее всего Троелсен забыл убрать модификатор async у новой функции внтури которой лежит локальная функция, выполняющаяся асинхронно.
Аноним 31/10/19 Чтв 17:40:16 1509958281
>>1509857
>Тогда бы не нужно было делать обертку в виде локальной функции, а просто написать проверку перед await Task.Run() в коде выше.
Локальна функция не причем, и да можно сделать проверку перед Task.Run(), результат тотже.
>Скорее всего Троелсен забыл убрать модификатор async
Ему было лень писать return, и он отдал это на откуп компилятору.
Аноним 31/10/19 Чтв 18:11:24 1509985282
>>1509958
>и да можно сделать проверку перед Task.Run(), результат тотже.

Ты английского не знаешь и пытаешься предугадать слова автора по коду?

>You can (and should) add checks to the beginning of the method, but since the entire method is asynchronous, there’s no guarantee when the checks will be executed.

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

>Ему было лень писать return, и он отдал это на откуп компилятору.

Какой откуп, лол, какой return? Перед actualImplementation? Если его там написать, то компилятор выдаст ошибку.
Аноним 31/10/19 Чтв 21:11:46 1510204283
pic1.png (41Кб, 986x519)
986x519
pic2.png (11Кб, 748x182)
748x182
>>1509985
>Это комментарий к коду
Это комментарий к методу MethodWithProblems. У тебя как с восприятием письменности?
>Какой откуп, лол, какой return? Перед actualImplementation? Если его там написать, то компилятор выдаст ошибку.
Ты тупой или притворяешься? Если написать ретурн, то надо убрать асинк.
Аноним 31/10/19 Чтв 21:31:01 1510224284
>>1510204
>Это комментарий к методу MethodWithProblems. У тебя как с восприятием письменности?

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

>Ты тупой или притворяешься? Если написать ретурн, то надо убрать асинк.

Если убрать async то компилятор выдаст ошибку из-за того что return стоит в проверке.
В общем, ты что-то высераешь, то сразу пиши, что долбоеб-вкатывальщик, чтобы люди на тебя времени не тратили.
Аноним 31/10/19 Чтв 21:33:35 1510227285
У меня тупой вопрос.
Короче, как я уже говорил, делаю сервер. Типа решил разбить на две сущности: сам слушатель и сессия, слушатель просто ждет соединения, когда получает соединение создает новую сессию - добавляет ее в словарь(id-сессия) и запускает в новом потоке метод из сессии, где идет общение, когда у сессии соединение окончено(долго ничего не просит(т.к. пока не с реальными девайсами общаюсь, а эмулирую девайсы, просто ставлю счетчик и если в цикле общения n раз пришел пакет только 0й длины, обрываю сессию) либо просто прислало пакет о том, что закончило общение), поток закрывается(ставлю флаг sessionClosed = true), на событие закрытия сессии сервер удаляет из словаря эту самую сессию, у сессии в свою очередь реализован IDisposable в котором метод Dispose вызывается при закрытии сессии.
Так вот, к чему я все это. Я запустил на локальном ПК сервер и он даже без подключенных сессий жрет 9МБ оперативки. А если я эмулирую 1000 сессий(просто в отдельном проекте создаю кучу клиентов которые стучат в порт) он уже аж 130МБ съедает. Я конечно не эксперт, но разве это не много? Или для шарпа это норма?
И еще, судя по статистике работы процессора, большую часть времени процессор не особо жрет ресурсы, по сути скачок происходит когда я разом 100+ сессий добавляю или решаю все сессии разом остановить, во время самого общения даже 1% не потребляется, но при этом в консоли(пока интерфейс сервера делаю в консольке) при вводе команд во время какой-то операции заметна задержка, в связи с этим у меня возникла мысль, что я, наверное что-то делаю не так. Думал что для каждой сессии делать отдельный поток - неправильно, но пробежавшись по нескольким книжкам, увидел, что там примерно так и делают.
Короче, жду советов мудрых и может быть книжек, где будет на нормальном примере показано как нормальный сервер пишется, а не очередное: Ну, бесконечный цикл где при подключении мы получаем сообщение, делаем его большими буквами, отсылаем обратно, закрываем соединение и ждем нового подключения.
Аноним 31/10/19 Чтв 21:55:16 1510234286
Есть книги/руководства в сети или еще чета по серверному?
Аноним 31/10/19 Чтв 22:03:10 1510240287
Аноним 31/10/19 Чтв 22:04:51 1510242288
Аноним 31/10/19 Чтв 22:20:08 1510248289
pic1.png (18Кб, 417x260)
417x260
>>1510224
Нельзя быть настолько тупым, если хочешь стать программистом.
Аноним 31/10/19 Чтв 22:20:16 1510249290
>>1510227
>жрет 9МБ оперативки. А если я эмулирую 1000 сессий(просто в отдельном проекте создаю кучу клиентов которые стучат в порт) он уже аж 130МБ съедает.
> Я конечно не эксперт, но разве это не много?

Ты из какой мухосрани вещаешь, что для тебя 9 и 130 мб это много?
Аноним 31/10/19 Чтв 22:21:35 1510251291
>>1510248
И зачем ты это высрал, дебилоид? Можно полностью метод переписать, вот только сути написанного в книге это не изменит.
Аноним 31/10/19 Чтв 22:25:07 1510254292
Есть ли смысл обмазываться wpf в 2019 году? На работе немного используется, но я только самые основы ухватил и просто пизжу код со стака, с горем по полам его переписывая. Может стоит овладеть им на нормальном уровне?
Аноним 31/10/19 Чтв 22:28:44 1510255293
>>1510251
Шизик плес, ты сам мпрашивал зачем там асинк. Я показал, как можно без него.
Аноним 31/10/19 Чтв 22:38:16 1510261294
>>1510249
Из глубокой. 100к населения.
Но не в этом же суть. Просто мне кажется, что ну не должно быть так, что всего 1000 клиентов, которые отправляют пакеты по 10КБ, их сервер обрабатывает и шлет ответ уже жрут 100+МБ оперативки, а в будущем эта хрень должна минимум 100к клиентов на одном сервере поддерживать, даже если увеличение потребления памяти будет линейным, это все равно буде 10+гигов.
Мне кажется, что я где-то наговнокодил, а ведь по сути еще ни СУБД не присобачил, ни логирования какого-то не сделал, ни интерфейс не запилил, ни всего остального не сделал. Так вот продолжу и будет эта хреновина кучу памяти жрать и тормозить.
Аноним 31/10/19 Чтв 22:42:30 1510264295
>>1510261
> даже если увеличение потребления памяти будет линейным
Так ты посмотри, линейное оно или нет. Скорее всего нет, потому что мусоросборщик начнет просыпаться чаще.
Аноним 31/10/19 Чтв 22:49:24 1510266296
>>1510261
10 гигов на 100к человек это дохуя по твоему? Ну тогда пиздуй из треда в тред байтоебов на плюсах писать
Аноним 31/10/19 Чтв 22:56:37 1510271297
>>1510255
Я не спрашивал зачем там async, я спрашивал есть ли опечатка в книге и если есть, то в каком месте.
Аноним 31/10/19 Чтв 22:59:12 1510273298
>>1510261
>https://habr.com/ru/company/microsoft/blog/473172/
>В наших тестах один экземпляр Standard_D1_v2 в Azure (1 vCPU, 3,5 ГБ памяти) мог обрабатывать более 5000 одновременно работающих пользователей без снижения задержки.
>Экземпляр Standard_D3_V2 (4 vCPU, 14 ГБ памяти) обрабатывал более 20 000 одновременно работающих клиентов.
Сижу ахуел Аноним 31/10/19 Чтв 23:00:45 1510275299
15608892497620.png (245Кб, 400x617)
400x617
Блять, сярписты, посоветуйте как быть.

Устроился на работу .NET разрабом. Работаю уже 2 неделю. Собеседовали на C# + ASP.NET + SQL Паттерцы-хуятерны, солид, кишочки шарпа. В итоге, насколько я понял, мне придется поддерживать код на VB.NET + ASP.NET Legacy + работа с SVN и Jira. На шарпе там только новые проекты, и я понимаю что быстро меня туда не пустят.

Я понимаю что обосрамс, и надо перекатыватся. Но даже если отработать там пол года - год кушац хочеца, я могу претендовать на зп не как у человека с 0 опытом шарпа? Чисто за счет прокачанных софт скилов и вообще опыта коммерческой разработки? За условия что я буду пилить свои проекты на шарпах.
31/10/19 Чтв 23:43:21 1510318300
>>1510275
Чего ты ожидал?
За бугром сложные схемы отлова кадров на которые влияют еще сотрудничества института по контрактам с мс
Ты выучил это говно находясь в рамках мертвого .net рынка с аутсорсящими белонегроидными шарашкими конторами
Наслаждайся своей энтерпрайзной коммерческой разработкой, вряд ли найдешь лучше
Аноним 31/10/19 Чтв 23:45:46 1510324301
Аноним 01/11/19 Птн 00:08:27 1510334302
>>1510275
>я могу претендовать на зп не как у человека с 0 опытом шарпа
Что ты как маленький, на новой работе будешь рассказывать, как архитектором работал на этой.
Аноним 01/11/19 Птн 00:17:22 1510339303
Чем .Net отличается от .Net Core, особенно Asp.Net? Хочу галеру сменить, а вакансии почти все коровские. Что почитать или посмотреть?
Аноним 01/11/19 Птн 07:19:31 1510420304
>>1509074
> зачем тогда добавлять модификатор async при объявлении функции?
>>1510271
>Я не спрашивал зачем там async,
Шизик, успокаивайся.
Аноним 01/11/19 Птн 09:39:38 1510441305
Может кто-нибудь объяснить как в ASP.NET, RESTfull подход применять. Выставление на странице input formmethod="delete" и атрибута HttpDelete в контроллере не помогает. Вроде бы надо AJAX для посылки форм надо юзать, но я в душе не ебу и нагуглить что-то вразумительное с примерами не могу.
Аноним 01/11/19 Птн 09:40:26 1510442306
Почему У Майкрософта Вечно Всё С Большой Буквы? Функции, Константы, Свойства, Даже Небо, Даже Аллах.
Аноним 01/11/19 Птн 09:46:35 1510445307
Аноним 01/11/19 Птн 09:52:08 1510447308
>>1510445
Аааа, это Micro soft, понял.
Аноним 01/11/19 Птн 10:32:52 1510467309
>>1510420
И зачем ты из контекста вырываешь, шизик? При этом ты его убрал и переписал тело метода добавив хуеты, очевидно, что автор книги бы это заметил и опечатки там либо нет, либо она в чём то другом.
Аноним 01/11/19 Птн 10:33:51 1510470310
>>1510339
У Кора упор на кросплатформенность и веб-приложения, а .Net это вообще всё что связано с .Net, те и core и framework
Аноним 01/11/19 Птн 10:38:39 1510473311
>>1510442
Это называется соглашением об именовании. Всё кроме локальных переменных, имён полей и аргументов метода пишется с прописной буквы в ПаскальКейсе, эти три пишутся в камелКейсе со строчной.
Аноним 01/11/19 Птн 10:47:08 1510477312
>>1510473
Ты не ответил мой вопрос, ты повторил то что я сказал.
Аноним 01/11/19 Птн 10:52:08 1510480313
Бля, Антоны, мне ответили, теперь придется повторять ебучий джаваскрипт и sql.
Как думаете, знаний из современного учебника javascript хватит, чтобы пройти собеседование?
Аноним 01/11/19 Птн 10:58:24 1510485314
>>1510477
Ты ничего о соглашениях не писал, будто это майкрософтская прихоть придерживаться подобных соглашений. Большинство внутри майкрософт посчитало, что так удобней и читается лучше, также как и в других случаях с подобными соглашениями.
Аноним 01/11/19 Птн 11:06:45 1510491315
Если я хочу написать базовый запрос на LINQ, а потом вызывать его обновляя результаты, как это сделать? Мне кажется что он при первом вызове выполнится, данные загрузятся в память и будут оттуда тянуться, несмотря на изменения в БД.
Аноним 01/11/19 Птн 11:15:28 1510494316
>>1510491
Именно поэтому все linq запросы выполняются отложенно. Каждый раз перечисляя какое-либо перечислимое, которое состоит из linq запроса, ты получаешь обновленные данные.
Аноним 01/11/19 Птн 11:23:16 1510497317
>>1510491
+ если хочешь зафиксировать результат, то нужно вызывать преобразовательные методы вида .ToList()/.ToArray()
Аноним 01/11/19 Птн 11:51:10 1510513318
Аноним 01/11/19 Птн 11:52:09 1510515319
>>1510491
Вообще не знаю такой проблемы, приведи пример кода.
Аноним 01/11/19 Птн 12:03:22 1510521320
>>1508629
При этом опу никто не советует что-либо заменить. Но как обосрать - сбегается толпа экспертов мирового уровня.
Аноним 01/11/19 Птн 12:26:40 1510528321
>>1510521
ОП смешал говно с годнотой, он мутанита то только недавно убрал, не смотря на то, что только редкостный говноед не высказывался о его хуевости. Я и сам стал жертвой мутанита, начав с него, но ничего, плохой опыт тоже опыт, теперь хотя бы есть с чем сравнить.
Аноним 01/11/19 Птн 12:30:59 1510531322
>>1510528
Посоветовали и убрал. В остальном все сидят с кривым еблетом и морщатся, при этом ничего дельного предложить не в состоянии. Вы вообще опа не теребите лишний раз, уже забыли как пару лет шапка была из ШАРП ТРЕД и рандомной пикчи? Авось уйдёт от вас, будете потом эту платину (сап что прочесть ньюфагу) каждый день читать с горящей жопой.
Алсо не понимаю гона на ментанит, никто же не заставлял его читать. Просто было написано вот есть такой сайт, посмотри.
Аноним 01/11/19 Птн 12:45:33 1510537323
>>1510531
>Посоветовали и убрал.
Советовали 100 раз, убрал только на 101, все поняли, что советовать смысла нет. Не малую роль играет то, что тут этих "всех" 1.5 анона.
>Алсо не понимаю гона на ментанит, никто же не заставлял его читать. Просто было написано вот есть такой сайт, посмотри.

Так сразу ссылку на гугл вставляй с запросом "C# books, tutorials", почему нет? Советы на то и советы чтобы отсеивать говно, а "вот есть такой сайт, посмотри" ничего о материале не говорит, особенно для новичка, который ничего до этого не читал.

> Вы вообще опа не теребите лишний раз, уже забыли как пару лет шапка была из ШАРП ТРЕД и рандомной пикчи?

Другого от анимешника ожидать и не приходится. После подставы с мутанитом мне вообще похуй на шапку, я просто захожу на https://libgen.is/, ищу материал по теме и самостоятельно выбираю.
Аноним 01/11/19 Птн 12:49:11 1510539324
Бля, кому вообще не похуй на шапку, вы серьезно ей пользуетесь, для кого она существует?
Все нормальные посоны уже давно знают про учебники и годные ресурсы.
Аноним 01/11/19 Птн 12:51:35 1510540325
>>1510539
ОПу и его ЧСВ, а также вкатывальщикам, которые верят, что на дваче могут посоветовать что-то полезное.
Аноним 01/11/19 Птн 12:55:31 1510542326
И, кстати, чем метанит так плох? Если нужно освежить знания по какому-нибудь говну, то почему бы и не почитать его?
У Троелсона из книги в книгу копируется одно и тоже говно, есть разбор CLI, сам мутанит больше похож на книжку того Шилдта. В том же Троелсоне разобрано вообще не все, про отражение сказано мало, так что читайте Рихтера.
Аноним 01/11/19 Птн 13:05:20 1510546327
>>1510467
Ну шизик. Нет там опечатки, читай по буквам, если тяжело воспринять сразу. Async там нужен только для того, чтоб не писать ретурны. Как сделать тоже самое, но без асинка, а с явными ретурнами я тебе показал, раз для тебя это оказалось слишком тяжело.
Аноним 01/11/19 Птн 13:05:29 1510547328
>>1510542
Из треда в тред пишут почему мутанит говно, даже в этом треде написано почему он говно, но долбоебы (а скорее долбоеб) продолжает спрашивать "ЧЕМ МЕТАНИТ ПЛОХ!?!?!?!".
>У Троелсона из книги в книгу копируется одно и тоже
И добавляется новое. Чем это плохо? Он объясняет всё хорошо и без лишних подробностей, именно поэтому с него и нужно начинать, после него у тебя в голове останется хороший пакет знаний, благодаря которым можно переходить на более детальное изучение и начинать делать свои проекты.
>В том же Троелсоне разобрано вообще не все, про отражение сказано мало

То ли дело мутанит, да? С его "изучаем с# за 5 минут, все области". Чего там тебе мало? Обрисовано что это, показаны примеры использования. При этом он чуть ли не в каждой главе пишет, что можно и нужно заглядывать в офф. документацию майкрософтов, если ты хочешь узнать что-то более подробно.
>читайте Рихтера.
Сейчас бы в быстроразвивающемся мире IT советовать говно мамонта шестилетней давности. Не удивительно почему у тебя метанит подозрений не вызывает.
Аноним 01/11/19 Птн 13:12:56 1510551329
>>1510547
>И добавляется новое. Чем это плохо? Он объясняет всё хорошо и без лишних подробностей, именно поэтому с него и нужно начинать, после него у тебя в голове останется хороший пакет знаний, благодаря которым можно переходить на более детальное изучение и начинать делать свои проекты.
Читал еще год назад какую-то версию Троелсона, по сравнению с Рихтером он очень поверхностен, не вижу какой-то особой разницы с метанитом, кроме разбора CLI.
>Чего там тебе мало?
Я давно уже разбирался в этом дерьме, сейчас уже не вспомню, про что там Троелсон не написал. Но если хочешь, чтобы я полез в залупу, то сейчас могу пройти по тредам и отписать.
>Сейчас бы в быстроразвивающемся мире IT советовать говно мамонта шестилетней давности.
Зато оно сделано подробно, да и в языке не произошло чего-то особого, что делает Рихтера неактуальным, разве что выход .Net Core, но мне норм, ибо я к нему не прикасался и не собираюсь, пока разработка ведется не на нем.
Аноним 01/11/19 Птн 13:22:43 1510552330
>>1510551
Да и не только отражение, Троелсен не рассматривает, как работают делегаты изнутри, у него мало про уборку мусора написано, про строки, про асинхронку и многопоточку.
Этого даже для джуна не хватит по факту.
Аноним 01/11/19 Птн 13:29:23 1510555331
>>1510551
>не вижу какой-то особой разницы с метанитом
Разница в детальном объяснении, последовательности, отсутствии перепрыгивания с темы на тему, а также отсутствии желания рассказать всё на 5 страницах текста.
>Зато оно сделано подробно
Для подробного есть Альбахири, как раз его и нужно читать после Троелсена.
>да и в языке не произошло чего-то особого
Произошло C# 6.0, C# 7.0, а это кортежи, оператор is, switch по типам и с условиями when, локальные методы и еще куча годноты о которой твой Рихтер и не знал.
>ибо я к нему не прикасался и не собираюсь, пока разработка ведется не на нем.
Вот и приходим к действительному предназначению Рихтера - книга для будущих ковырялщиков легаси кода, который этот код улучшать не собираются.
>как работают делегаты изнутри
И правильно делает, зачем новичку эта информация, особенно когда есть события и лямбда-выражения о которых будет полезнее знать, чем о том как внутри работают делегаты. При этом у него есть рассмотрение самого IL и упоминание ildasm, которые дадут почву для изучения всех внутренностей, если ты этого так хочешь.
Аноним 01/11/19 Птн 13:32:35 1510558332
Для .NET Core надо переучивать какие-то API, или там всё то же самое?
Аноним 01/11/19 Птн 13:35:51 1510559333
>>1510537
>Советовали 100 раз, убрал только на 101,
>Шапка edition #13
Сдаётся мне ты пиздаболишко.
Аноним 01/11/19 Птн 13:41:41 1510564334
>>1510551
>в языке не произошло чего-то особого, что делает Рихтера неактуальным, разве что выход .Net Core, но мне норм, ибо я к нему не прикасался и не собираюсь, пока разработка ведется не на нем
Overдохуя вакансий на .NET Core 2.0+, рыночек перевернулся на Core, все перепиливают актуальные проекты под Core. И только анону на дваче это нахуй не надо, ибо его контора пишет на монолитном фреймворке. А когда легаси сгорит и его попрут из конторы - тогда и познакомится с Core.
Наес
Аноним 01/11/19 Птн 13:44:54 1510565335
>>1510555
>Произошло C# 6.0, C# 7.0, а это кортежи, оператор is, switch по типам и с условиями when, локальные методы и еще куча годноты
Учится за день с одной рукой в трусах.
>Вот и приходим к действительному предназначению Рихтера - книга для будущих ковырялщиков легаси кода, который этот код улучшать не собираются
Просто ни с чего сделал вывод, ведь главное говном мазнуть.
>И правильно делает, зачем новичку эта информация, особенно когда есть события и лямбда-выражения
Это и у Рихтера разбирается.
И новичку, видимо, не нужно знать про SynchronizationContext, встретит он ConfigureAwait(false) и все, иди кривую статью на MSDN ковыряй.
>При этом у него есть рассмотрение самого IL и упоминание ildasm, которые дадут почву для изучения всех внутренностей, если ты этого так хочешь.
Да, охуенно, что-то уровня указания на msdn
Аноним 01/11/19 Птн 13:46:14 1510568336
image.png (17Кб, 557x221)
557x221
>>1510564
Ага, охуенно, переквалифицировался, куда деваться, ток вакансий на сам C# раза в 3 больше.
Аноним 01/11/19 Птн 13:46:20 1510569337
>>1510546
Какие ретурны, долбоеб? Если убрать async и добавить return Task.CompletedTask и return actualImplementation(), функция будет возвращать Task от actualImplementation, в случае если всё оставить так как есть в книге, будет возвращаться Task функции MethodWithProblemsFixed, никто за тебя "ретурны" дописывать не будет.
Зачем ты вообще продолжаешь срать себе в штаны, если написал, что MethodWithProblems и MethodWithProblemsFixed ничем не отличаются?
Аноним 01/11/19 Птн 13:47:26 1510570338
>>1510537
Ух какой у нас бомбящий шизик в треде завёлся. Не иначе как тебя ментанит в жопу выебал в детстве. Иначе и не обьяснить этого хейта.
>Советовали 100 раз, убрал только на 101, все поняли, что советовать смысла нет.
Советовали РОВНО 1 раз в 4 треде, в 6 уже ссылки небыло. До этого были единичные посты "Ой чот мне лично ментанит не нравится". Хотя тут таких постов сотни про любой ресурс. Возьми хоть дебила который Visual Studio хейтил потому-что на мак не мог ссылку найти. Оп таких дятлов не слушает, я тоже и тебе советую.
Аноним 01/11/19 Птн 13:48:48 1510573339
>>1510539
Шизикам не похуй. Каждый тред тут человек 5 пытаются говорить с пастой 2016 года.
Аноним 01/11/19 Птн 13:51:47 1510576340
>>1510565
>Просто ни с чего сделал вывод, ведь главное говном мазнуть.
Вывод сделан с того, что на момент написания рихтера был только C# 5
>Учится за день с одной рукой в трусах.
Сразу видно юного падавана мутанита. У того весь C# за один день с рукой в трусах учиться.
>И новичку, видимо, не нужно знать про SynchronizationContext, встретит он ConfigureAwait(false)
Для этого и есть книги за авторством Альбахири, от которых не воняет стариками типа рихтера. И новичку это действительно не нужно, новичку такая информация только помешает, потому что он на ней зависнет.
>иди кривую статью на MSDN ковыряй.
Проблемы быдла, который в 2к19 не знает английского, никого не волнуют, это правда.
>Да, охуенно, что-то уровня указания на msdn
Это уровень последовательного и уместного повествования. Сначала читаешь Троелсена, потом читаешь Альбахири или про какие-то конкретные области, которые тебя интересуют.
Аноним 01/11/19 Птн 13:56:55 1510578341
>>1510570
>Не иначе как тебя ментанит в жопу выебал в детстве.
Может это он тебя выебал и сейчас у тебя Стокгольмский синдром из-за которого ты из треда в тред его защищаешь?
>Советовали РОВНО 1 раз в 4 треде, в 6 уже ссылки небыло.
Его тут каждый тред засерали, либо упоминали его в ироничном контексте, но у тебя то конечно всё учтено, прям до раза. Наверно и номера постов записаны, лол. Я даже лично расписывал по полочкам, тыкал носом в дерьмо метанита, но после этого он продолжал висеть в шапке.
Хотя понятно, ведь любой совет можно списывать на "Ой чот мне лично ментанит не нравится", а потом еще и в пример какие-то случае с макоглиномесами приводить.
Аноним 01/11/19 Птн 14:02:57 1510584342
>>1510578
>ты из треда в тред его защищаешь?
Лул, я вообще впервые в треде про него пишу. Как впрочем и вообще впервые за 4 треде тут что-то пощу. Но видать тебе говна в жопу капитально залили, раз такая реакция. И видать каждый тебя спрашивает чё ты так бомбишь от него. А ты и перестать не можешь бомбить, видать от того что необучамый.
>Его тут каждый тред засерали, либо упоминали его в ироничном контексте,
Пруфы ты конечно не сможешь првести, ай как жаль...
>но у тебя то конечно всё учтено, прям до раза.
Ахуеть расчёты досчитать до одного! Рокет саенс, не иначе.
>лично расписывал по полочкам, тыкал носом в дерьмо метанита, но после этого он продолжал висеть в шапке.
Если ты это не писал ответом в оп пост - какие претензии? Ну бомбит кто-то про то что сайт не нравится. Бомби дальше, может тебе бомбить нравится, я не осуждаю.

А вообще я не понимаю к чему ты этот срачь устроил снова. Метанита в шапке нет уже несколько тредов, а жопа у тебя по прежнему горит. Может быть дело всё-таки в тебе?
Аноним 01/11/19 Птн 14:05:03 1510587343
>>1510576
>Сразу видно юного падавана мутанита.
Ох лул, я в разработке уже 2 года и таки нововведения учил за день.
>У того весь C# за один день с рукой в трусах учиться.
Чувак, после этого тебя только нахуй послать можно, зачем ты кривляешься и пытаешься переврать мои слова? Тебя мама не учила правилу вежливой дискуссии или ты тут типа траллишь?
>Для этого и есть книги за авторством Альбахири, от которых не воняет стариками типа рихтера.
Бля, ну это уже вышка, Рихтер старик, а значит хуевый.
Вот это аргументация.
>Проблемы быдла, который в 2к19 не знает английского, никого не волнуют, это правда.
>БЫДЛА НЕ ЗНАЕТ АНГЛИЙСКИЙ, АРЯЯЯ
Не, дите, ты меня уже смешишь, под кривой статьей на MSDN я подразумевал хуевую статью, внезапно, никаких указаний на то, что она хуевая, потому что написана на английском нет.
>Сначала читаешь Троелсена
Точно с такой же эффективностью сначала можно читать метанит, пиздецовой разницы нет.
Говорю как человек, что читал и Троелсона и метанит и Рихтера и даже Албахари, которого ты считаешь очень подробным, хотя по факту это не так.
Аноним 01/11/19 Птн 14:09:17 1510589344
>>1510584
>спрашивает про мутанита
>продолжает рассуждать о нём
>А вообще я не понимаю к чему ты этот срачь устроил снова

Ты сам с собой разговариваешь что ли?
Аноним 01/11/19 Птн 14:10:31 1510590345
>>1510589
>ОП смешал говно с годнотой, он мутанита то только недавно убрал, не смотря на то, что только редкостный говноед не высказывался о его хуевости.
>Ну ты же сам спросил про мутанит!
Тебе только галоперидол. Остальное уже не поможет.
Аноним 01/11/19 Птн 14:12:43 1510593346
>>1510590
Мутанит это единственное, что ОП убрал, поэтому я его и упомянул, при этом это самый яркий пример говна о котором говорили много, но долго не убирали. Но ты конечно можешь выдумывать шизиков у себя в голове и приписывать это им.
Аноним 01/11/19 Птн 14:14:17 1510594347
>>1510569
>если написал, что MethodWithProblems и MethodWithProblemsFixed ничем не отличаются?
Пруф? Или опять шиза играет?
>>1510569
>"ретурны" дописывать не будет.
Вот тут >>1510204 я тебе не просто так второй пик прикрепил.
Аноним 01/11/19 Птн 14:17:55 1510595348
>>1510587
И вообще смешно, когда человек общается на уровне 13-летней залетухи из /b, но зато он АНГЛИЙСКИЙ выучил, а все, кто его не знают, они БЫДЛО, вот он особенный, ибо смог кое-как выучить один из легчайших языков.
Козырял бы ты китайским или японским, то я бы еще это понял, но для изучения английского вообще никаких усилий прикладывать не надо.
Аноним 01/11/19 Птн 14:18:12 1510596349
>>1510593
Пошли манявры. Ещё раз тебе шизику говорю, что ты сперва САМ его начал в треде форсить, потом сам же бомбанул от него, а потом ещё и попытался на меня стрелку перевести, мол это я его упомянул. Хуя ты шизик!
>Мутанит это единственное, что ОП убрал, поэтому я его и упомянул
Ещё раз тебе вопрос повторю, его убрали. Какие у тебя ещё блядские претензии ебобо?
>при этом это самый яркий пример говна о котором говорили много, но долго не убирали.
Что-то я захожу в прошлый тред и не вижу чтобы что-то просили убрать ещё. Видать это всё в твоём манямирке было. Говорят такое бывает когда ты шизойд.
>Но ты конечно можешь выдумывать шизиков у себя в голове и приписывать это им.
Ясно.
Аноним 01/11/19 Птн 14:20:31 1510598350
>>1510596
Выгоните вообще этого шизика из нашего уютного тредика, не нравится шапка - пусть пишет свою. Хотя, блджад, кого она вообще ебет, можно и без нее, но пусть будет, если кому-то удобно
Аноним 01/11/19 Птн 14:23:13 1510601351
Тем кто не шизик я напоминаю что ОП СПЕЦИАЛЬНО создал >>1482359 пост. В котором всего 2 ответа. Вот и вся предложка.
>>1510598
Он тут в качестве анона который генерирует срачеконтент вокруг которого держится общение. Так как мы на дваче, такое поведение привлекает посетителей в тред. Адекватные аноны пьют чай и общаются друг с другом вежливо. А кому скучно может подразнить шизика и получить интересные посты в ответ. Ну разьве не милота?
Аноним 01/11/19 Птн 14:29:43 1510607352
>>1510601
>Ну разьве не милота?
Ну свое собственное цирковое животное - это может и хорошо, но поскольку я к вам не так часто заглядываю, ибо вопросов у меня обычно нет, то смотрите сами.
Всех благ.
Аноним 01/11/19 Птн 14:36:36 1510616353
>>1510607
Заглядывай почаще. Тут иногда такие тёплые беседы ведутся, что даже и просто почитать бывает интересно.
Аноним 01/11/19 Птн 15:36:45 1510660354
>>1510594
>Пруф? Или опять шиза играет?

>Локальна функция не причем, и да можно сделать проверку перед Task.Run(), результат тотже.
И вот еще относительный высер
>Await сделает весь метод асинхронным //из моего поста
>лол нет. //твой высер
Троелсен пишет, что оборачивать в локальную функцию нужно для того чтобы разбить метод на синхронную и асинхронную часть, но долбоебу с двача, конечно, виднее.
>Вот тут >>1510204 я тебе не просто так второй пик прикрепил.
Может ты наконец перепишешь пример из книги и перестанешь выставлять свою тупость на показ? Ты написал return перед внутренним таском, который оборачивается в примере в локальный метод, говоря о том, что если оставить async, то этот return допишет за тебя компилятор. На деле при async он допишет его не перед локальным методом, а в конце метода MtethodWithProblemsFixed. Поэтому твой высер про "лень было прописывать ретурны" выглядит более чем нелепо.
Аноним 01/11/19 Птн 15:39:56 1510664355
>>1510596
Ясно. Шизик любой пост с упоминанием метанита воспринимает как крясную тряпку и теряет его суть. Я мутанита как пример привёл, но у шизика почему-то пример превратился в претензию, лол. Еще и форсы какие-то придумал. Как я уже писал, мне похуй на шапку, можешь вернуть туда своих мутанитов и одноклассников, это не отменит того факта, что твой мутанит редкостное дерьмо.
>Что-то я захожу в прошлый тред
А, ну раз в прошлом треде нет, значит никогда не было. 10 из 10 логика, долбоеб.
Аноним 01/11/19 Птн 15:48:51 1510671356
>>1510664
>Как я уже писал, мне похуй на шапку
>Нет, тя не понял мне похуй
>Посмотри вот на этот и ещё 24 поста о том как мне похуй
Аноним 01/11/19 Птн 15:57:22 1510680357
>>1510671
>шизик понял, что обосрался и перешел на бессмысленный гринтекст

Почему без боевых картиночек? Или может еще одним монологом вроде этого >>1510601 >>1510607 >>1510616 порадуешь?
Аноним 01/11/19 Птн 16:02:38 1510686358
image.png (86Кб, 1657x479)
1657x479
>>1510680
Бля, шиз, у тебя теперь вокруг еще и Семены, лул.
Хватит серить себе в штаны
Аноним 01/11/19 Птн 16:19:55 1510700359
>>1510680
>Гринтекст не имеет смысла
>Я не шизик, это ты шизик
>А ещё ты семён
>А ещё я скажу про картиночки чтобы было типа я олд
>Я не шизик
>Ну мааааааааам скажи им
Аноним 01/11/19 Птн 16:21:47 1510703360
А можно, кстати, пруфы к этому?
>Вы можете (и должны) добавить в начало метода проверки, но поскольку весь метод является асинхронным, нет никаких
гарантий, что такие проверки выполнятся
Если я впишу код проверки перед await Task.Run без этого вашего локального метода, то по идее все выполнится, так как стейт машина следит за последовательностью выполнения.
Аноним 01/11/19 Птн 16:22:45 1510706361
>>1510703
Я, если честно, не понимаю проблемы.
По идее и в самом таске можно впихнуть проверку данных и отменить операцию.
Аноним 01/11/19 Птн 16:52:58 1510731362
image.png (35Кб, 628x310)
628x310
>>1510706
>>1510703
Короче, пока кто-нибудь не пруфнет, что проверка как на пике не сработает будем считать, что Троелсен написал хуйню.
Аноним 01/11/19 Птн 17:02:22 1510740363
.png (37Кб, 547x368)
547x368
Господа, конфуз! Что, во имя Минервы, я сделал не так?
Аноним 01/11/19 Птн 17:04:33 1510743364
>>1510660
Ты снова обосрался. Ищи быстрей свой галоперидол.

>Await сделает весь метод асинхронным <-твое
>лол нет. <-мое
>разбить метод на синхронную и асинхронную часть <-троелсен
Видишь ли весь метод асинхронный (твое) и разбить метод на 2 части (троелсен), это разные вещи, потому я и написал нет (мое). Так, что это ты прешь против троелсена.

>MethodWithProblems и MethodWithProblemsFixed ничем не отличаются <- ты приписал это мне
>Локальна функция не причем, и да можно сделать проверку перед Task.Run(), результат тотже <- то, что я писал
Как ты перешел от одного к другому не понятно. MethodWithProblems не делает проверок и валится в асинхронной части, метод MethodWithProblemsFixed делает проверку перед аинхронной части и он не валится. Этого можно добиться по-разному. Это и написан в приводимой тобой цитате.

>>1510660
>На деле при async он допишет его не перед локальным методом, а в конце метода MtethodWithProblemsFixed.
Ты все еще еще не понимаешь чем разговор и во что компилятор разворачивает async/await. Да я и не писал куда компилятор вставит ретурн (это было на скрине), я показывал куда вставлять ретурны, если писать без async. Не путай меня со своими голосами в башке.
Аноним 01/11/19 Птн 17:10:51 1510745365
>>1510703
>>1510706
>>1510731

Да по-разному можно проверить. Тем более тот пример не из главы про асинхронность, а про локальные методы. Плюс если делать метод с авэйтом, то еще и нормальный проброс ексепшона получишь. Но как я написал, там пример не про это.
>>1510740
нет неявного преобразования из дабл в инт. Либо приводи явно, либо пусть метод дабл возвращает.
Аноним 01/11/19 Птн 17:12:48 1510749366
.png (6Кб, 344x104)
344x104
>>1510740
Разобрался. Число было вставлено из калькулятора (стандартный Windows 10), и он вставил в результат непечатаемые символы. Пришлось перепечатать всю строку, чтобы заработало.

>>1510745
> нет неявного преобразования из дабл в инт.

Нет, он остановился на проблеме с отсутствующим ;. До преобразования даже не дошел.
Аноним 01/11/19 Птн 17:13:28 1510750367
>>1510740
хотя он прости ";".. есть еще ошибки? может ты со скобками накосячил
Аноним 01/11/19 Птн 17:16:17 1510756368
>>1510750
Спасибо, глюк оказался чуднее, чем я думал. Никогда такого ещё не встречал, но поимею в виду.
Аноним 01/11/19 Птн 17:35:22 1510783369
>>1510745
>Но как я написал, там пример не про это.
В любом случае, то, что он написал, что из-за того, что метод асинхронный проверка может не выполниться - это пиздеж.
Аноним 01/11/19 Птн 17:39:49 1510788370
>>1510749
>Пришлось перепечатать всю строку, чтобы заработало.
Как же шарпистам тяжко приходится.
Аноним 01/11/19 Птн 17:54:46 1510793371
>>1510745
>Тем более тот пример не из главы про асинхронность, а про локальные методы.
Это глава как раз про многопоточку и асинхронность и находится оно как раз в части с асинхронкой.
>Плюс если делать метод с авэйтом, то еще и нормальный проброс ексепшона получишь.
Где автор это сам указал? У него конкретно написано, что юзать локальный метод нужно из-за того, что проверка может не выполниться в силу асинхронности метода.
Это неправда.
Вот и читай вашего Троелсена после такого.
Аноним 01/11/19 Птн 17:58:41 1510798372
Аноним 01/11/19 Птн 18:04:53 1510804373
>>1510793
Вот что значит отсутствие пояснения про StateMachine.
Этот делегат в Task.Run никоим образом не может выполниться раньше проверки, никакой экзепшен тут не будет выбрасываться, поскольку выход из метода произойдёт прямо во время проверки.
Вообще, эти локальные методы сомнительная штука.
Аноним 01/11/19 Птн 18:45:20 1510827374
>>1509175
>а суть в том чтобы начало метода выполнялось синхронно для того чтобы не было ситуаций когда проверка выполняется после начала задачи, а не до.
Этого вообще никак не может произойти.

Аноним 01/11/19 Птн 18:49:37 1510830375
.png (15Кб, 492x451)
492x451
Шарпаны, чому вы переменные и методы обзываете английскими словами? Неудобно же читать потом. Вот просто посмотрите на прикриплейд. Все ясно-понятно, не нужно пытаться вспомнить что значит какое-то слово и ты можешь даже без комментариев кодом пользоваться. Да и запомнить неймеспейсы, названия классов намного проще. Вот просто сравни:
StreamReader и ПотоковыйЧтец. Вот сразу же понятно что оно делает.
Надеюсь в будущем кто-нибудь сделает русскоязычную обертку для всего .Net, чтобы человек не тужился вспоминать: "Что это за Dictionary такой?", а сразу понимал: "Ага, словарь, сейчас в него запишу что-нибудь".
Аноним 01/11/19 Птн 19:08:45 1510844376
>>1510830
Легче выучить английский, сириузли, это очень легкий язык.
Аноним 01/11/19 Птн 19:09:02 1510845377
index.png (8Кб, 224x225)
224x225
Аноним 01/11/19 Птн 19:23:40 1510850378
>>1510844
Ну, знаешь ли, когда ты оказываешься в команде, где куча бывших джавистов, сишников и пару человек с асмом и все вы вместе пилите на шарпе, получается такая вот фигня, что джавист привык Map писать и к каждому словарю дописывает Map, UserMap, ClientMap, ListnerMap, а тебе нужно каждый раз из-за этого наводить мышкой чтобы понять что это Dictionary<>, сишник думает что писать что-то в духе "ctr1()"- круто, даже в шарпе и т.д. Писали бы по русски, не приходилось бы даже задумываться о том что это значит. Ну или хотя бы писали одинаково нет, каждый хуй хочет частичку себя, блядь, оставить и чтобы все потом охуели пытаясь понять, что за говно он там понаписал и как, а главное почему, оно вообще работает.
Аноним 01/11/19 Птн 19:25:05 1510851379
>>1510743
>Видишь ли весь метод асинхронный (твое) и разбить метод на 2 части (троелсен), это разные вещи, потому я и написал нет (мое). Так, что это ты прешь против троелсена.

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

> MethodWithProblems не делает проверок и валится в асинхронной части,

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

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

Ну да, на скрине одно, а писал ты совсем про другой. В голосину, тебе самому не смешно от своих нелепых оправданий?
Аноним 01/11/19 Птн 19:27:49 1510853380
>>1510804
Троелсен называет такие ситуации одной из причин, по которой ввели локальные методы. Но вот не задача, Троелсену с его 20-ти летним опытом, про стейтмашин не пояснили оказывается. Не перестаю проигрывать со всезнающего анона.
Аноним 01/11/19 Птн 19:28:24 1510854381
>>1510827
Троелсену это скажи. Он два примера разных приводит, но оказывается этого никак произойти не может.
Аноним 01/11/19 Птн 19:29:17 1510856382
>>1510853
>Троелсен называет такие ситуации одной из причин, по которой ввели локальные методы. Но вот не задача, Троелсену с его 20-ти летним опытом, про стейтмашин не пояснили оказывается.
Начнем с того, что ты тупо отсылаешь к авторитету Троелсена, что демагогия и вообще не аргумент.
А теперь тебе вопрос, знаешь, чем отличается await Task.Run от обычного Task.Run?
Аноним 01/11/19 Птн 19:32:08 1510861383
image.png (28Кб, 547x326)
547x326
>>1510854
Окей, скажите мне, как с ним связаться.
Вот вам, блядь, пример.
Если я напишу await Task.Run, то такой случай невозможен.
А знаете почему? Потому что стейтмашина сохраняет порядок вызова кода.
Аноним 01/11/19 Птн 19:32:19 1510862384
>>1510856
Тебя уже выше по этому поводу обоссали, ты всё никак не угомонишься и за второй порцией лезешь? Прислушайся к этому >>1508506 посту и прекрати срать в тред.
Аноним 01/11/19 Птн 19:33:09 1510863385
image.png (72Кб, 1497x343)
1497x343
Аноним 01/11/19 Птн 19:35:44 1510865386
И еще, это даже не только я могу подтвердить, но и обычный пример со стаковерфлоу, где человек говорит тоже самое, причем даже не один человек, а два.
У них тоже проеб по всем фронтам, просто надо читать нормальную литературу, а не Троелсена.
https://stackoverflow.com/questions/37360905/what-is-the-difference-between-task-run-and-await-task-run
>The difference between them, is that in the first example, when Task.Run returns the code which immediately follows that line gets executed immediately(provided no thread switch happened). And in the second example the lines which follow await get executed only when LongOperation completed on some thread provided by the thread pool(DoWork immediately returns when it encounters await).

Да и вообще, что это за аргумент ссаный, ты либо нормально Анону ответь по факту, либо не выебывайся.
Аноним 01/11/19 Птн 19:35:50 1510866387
1.jpg (216Кб, 1233x549)
1233x549
>>1510863
Еще я долбоеб и хуй сосу.
Аноним 01/11/19 Птн 19:36:57 1510867388
>>1510866
Да, чувак, мне есть охуенный смысл лезть в фотошоп, чтобы убедить шизика в треде, что я не Семен.
По факту давай приводи пруфы, что Троелсен не обосрался.
Аноним 01/11/19 Птн 19:39:34 1510868389
>>1510865
>речь про локальные функции и проверки в асинхронных функциях
>долбоеб тащит стэковерфлоу с Task.Run и await Task.Run
>ПАЧИМУМНЕНАРМАЛЬНА НИАТВИЧАЮТ МАААМ СКАЖИ ИМ!! ТРОИЛСИН ЛОХ!!!

В голосину. Почему ты перескочил с асинхронной функции и локальных функции на await, хотя про него никто и не говорил и не спрашивал? Был скрин из книги авторитетного автора, был конкретный вопрос. Зачем ты сюда лезешь со своей обосранной сракой и своим "вы нихуя не понимаете, троелсен говно, верьте моему шизобреду"? Ты либо опровержение делай, подкрепляя авторитетными источниками, либо нахуй иди и не засоряй тред.
Аноним 01/11/19 Птн 19:44:31 1510872390
>>1510868
> Был скрин из книги авторитетного автора, был конкретный вопрос
Авторитет автора хуйня, нужно все по факту проверять.
>Почему ты перескочил с асинхронной функции и локальных функции на await, хотя про него никто и не говорил и не спрашивал?
Вообще-то про await говорилось в самой книге Троелсена, у него вызывается делегат через await и сказано, что проверка может выполниться после.
Я же привел пример со стаковерфлоу, где еще два человека, кроме меня, поясняется, что функция вызванная через await выполняется в том порядке, в котором она написана, что как бы подразумевает, что выполниться до какого-либо синхронного кода она не может.
Но тебе, великому чтецу Троелсена, такая логика вообще непостижима видимо.
Аноним 01/11/19 Птн 19:48:31 1510876391
image.png (176Кб, 647x678)
647x678
image.png (221Кб, 686x901)
686x901
image.png (181Кб, 630x868)
630x868
image.png (304Кб, 851x743)
851x743
>>1510872
И я могу закинуть пруфов, просто прочитайте то, как работает конечный автомат и сразу все станет ясно.
Аноним 01/11/19 Птн 19:54:27 1510878392
>>1510872
>через await и сказано, что проверка может выполниться после.

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

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

>>1510876
Ты так сразу и скажи, что ничего не понял из того что на твоих скриншотах. Еще и в русике всё, а пытаешься на английском что-то читать. Оно и понятно откуда такие пробелы.
Аноним 01/11/19 Птн 20:03:35 1510881393
>>1510878
>если ты не используешь await в функции, то она не будет асинхронной
Верно.
>У него и говорилось про то, что в асинхронной функции тебе не известно когда произойдет проверка, поэтому нужно оборачивать ту часть, в которой нет проверки, в локальный метод, а проверки делать в оставшейся части, которая выполняется асинхронно
Ты сам себе противоречишь, в асинхронной функции неизвестно, когда произойдет проверка Хотя непонятно, с чего Троелсен это взял, но проверки надо делать в асинхронной части функции и после нее вызывать синхронно функцию из которой вызывается асинхронно делегат.
>В том, что ты привел говорится о том, что выполнение кода не будет происходит дальше await до выполнения задачи которая следует после этого оператора, что вообще никакого отношения к написанному в книге не имеет.
Нет, имеет, поскольку показывает свойство statemachine.
>Еще и в русике всё, а пытаешься на английском что-то читать. Оно и понятно откуда такие пробелы.
Ох лул, доказывай, что русский перевод хуев в этой части или получай мою струю урины.
Аноним 01/11/19 Птн 20:40:05 1510916394
image.png (57Кб, 868x777)
868x777
>>1510881
И еще раз в подтверждение мною же сказанного.
Аноним 01/11/19 Птн 20:56:57 1510934395
>>1510916
>>1510881
Дегенерат умственно отсталый, вопрос был по книге и почему Троелсен так написал. Зачам ты сюда со своей хуйнёй лезешь? Если бы я этого не знал, у меня бы и не возникло никаких вопросов, я бы прочитал и пошел дальше.
Аноним 01/11/19 Птн 21:06:47 1510947396
>>1510850
И как это решает перечисленные тобой проблемы? Джавист будет писать КлиентКарта, шарпист будет наводить мышкой чтобы понять что это Словарь<>. Сишник будет думать что хуй1() – это круто.
Аноним 01/11/19 Птн 21:16:51 1510962397
>>1510947
Я просто надеюсь на то, что на русском они будут таки руководствоваться здравым смыслом при именовании, а не привычкой. В кодинге же такое дело: тривиальные задачи, коих 95% от работы, люди пишут на автомате, как привыкли. Если заставить всех резко писать на русском, они вынуждены будут хотя бы на секунду задуматься о том, как нужно обозвать переменную и, возможно, таки разум возьмет верх и человек напишет: СловарьПользователи. А потом это войдет в привычку, но уже будет более-менее понятно, что какой кусок кода делает.
Аноним 01/11/19 Птн 21:17:40 1510964398
>>1510934
>вопрос был по книге и почему Троелсен так написал
Троелсен хуйню написал про то, что асинхронный метод может вызваться до проверки, я даже уже код скомпилировал, чтобы показать, что такого быть не может.
Либо я как-то неверно понимаю случай, когда порядок может измениться и проверка может выполниться после метода, тогда дайте пример такого кода.
Аноним 01/11/19 Птн 21:31:25 1510979399
Сап, как сделать метод который останавливает работу другого метода?
Аноним 01/11/19 Птн 21:50:17 1511001400
>>1510979
Можешь засунуть один метод в Task и из другого вызвать отмену операции.
Аноним 01/11/19 Птн 21:54:57 1511003401
>>1510979
Создаешь CancellationTokenSource, передаешь из него .Token в метод который нужно остановить, добавляешь в цикл метода либо проверку .Token.IsCancellationRequested, либо .Token.ThrowIfCancellationRequested() , в останавливающем методе при необходимости вызываешь .Cancel у объекта CancellationTokenSource.
Аноним 02/11/19 Суб 01:07:35 1511110402
Аноним 02/11/19 Суб 12:12:10 1511250403
>>1511110
Стоит, вполне хороший материал по основам. Устаревать там особо и нечему, потому что затрагиваются основы. Прочитай это, а потом можешь переходить на Троелсена или Рихтера.
Аноним 02/11/19 Суб 12:19:22 1511255404
>>1511250
>1000+ страниц
>основы
Там что? На 200 страниц про циклы рассказывают?
Аноним 02/11/19 Суб 12:26:14 1511258405
>>1511255
>Introduction to Programming

42 страницы. Больше чем про циклы в 2 раза.
Аноним 02/11/19 Суб 12:27:19 1511260406
>>1511110
Да, только я бы посоветовал читать самые основы, потом про многопоточку уже у Троелсона можешь прочитать, ток будь осторожен и все проверяй, Троелсон и напиздеть может.
Аноним 02/11/19 Суб 12:27:40 1511263407
Аноним 02/11/19 Суб 12:28:27 1511265408
>>1511260
Про многопоточку нужно у альбахири читать.
Аноним 02/11/19 Суб 14:16:51 1511335409
>>1499746 (OP)
Привет шарпики. Кто-нибудь работал с FluentFtp? Срочно нужна помощь.

Краткое описание проекта : WPF на "чистом" MVVM + FluentFtp. Проект типа простого Ftp клиента

Проблема заключается в том что ответ от сервера приходит с разным интервалом от 300 мс до 2 секунд. Ответ в плане получения списка файлов и папок на удаленном сервере.
Аноним 02/11/19 Суб 14:29:28 1511345410
>>1511335
Я просто оставлю здесь long polling. Погугли.
Аноним 02/11/19 Суб 14:34:56 1511349411
>>1510441
> я в душе не ебу и нагуглить что-то вразумительное с примерами не могу
Если коротко - загугли ASP .NET Web API.
Да, через ajax можно кидать форму (данные, пикчи и говно) по конкретному пути и получать ответ. Таким образом не только устанавливается связь View-Controller, но и появляется возможность бескостыльно использовать контроллеры как API для любых клиентов, гонять данные и юзать контроллеры без апдейтов страниц и прочее. Годная вещь, рекомендую к изучению.
К слову, если полезешь в Core пробовать - очень советую сразу загуглить, как изменить дефолтный парсер JSON на Ньютонсофтовскую говнину. Дефолтный в Core не умеет в большие данные и крашится к хуям при передаче формы в 8 полей.
Аноним 03/11/19 Вск 01:05:43 1511700412
>>1503926
>Rider
По факту лучшее иде для дотнета, я испытываю оргазм когда не пользуюсь эксплоером а просто щелкаю хоткею
>>1504361
ты говноед?
Аноним 03/11/19 Вск 01:11:54 1511703413
>>1500363
>ASP
dependency injection оно же частный случай dependency invercion, пайплайн, cicd, транспорт данных типа rabbitmq, мб кеш redis, тесты обязательно, желательно по bdd, причем не только юниты, можно сквозные писать (тестируют api) и ui тесты на селениуме
Аноним 03/11/19 Вск 01:14:37 1511704414
>>1504190
di контейнер, ну и пайплайн мидлварей (middleware)
Аноним 03/11/19 Вск 01:18:56 1511710415
>>1507945
самое лучше упрощение написания тестов - с них начинать
Аноним 03/11/19 Вск 01:21:24 1511714416
изображение.png (41Кб, 1078x432)
1078x432
>>1509672
а запрос, 2 кнопки, ну и установленных линукс, ты бы блять его сначала установил, а потом бы вопросы задавал, долбаеб
Аноним 03/11/19 Вск 01:23:53 1511718417
>>1509698
лол у меня три тачки, на всех райдер и на всех я взломал, но камон 350 баксов в год, работающий дотнетер может себе позволить на лучшую иде в мире
Аноним 03/11/19 Вск 01:26:53 1511720418
>>1510339
лол перекатывайся пол часа назад просто дотнет каменный век, на коре блазор работает
Аноним 03/11/19 Вск 02:42:59 1511745419
Короче, меня раздражает студия тем, что она постоянно какую-то хуйню с неймспейсами творит по дефолту. Еще меня раздражает, что папка с исходниками превращается по дефолту в какое-то говно, где потом без студии хуй что найдешь. Какие есть нормальные альтернативы? Чтобы и интелисенс, и возможность в папочках все организовать и т.д.?
Аноним 03/11/19 Вск 02:50:01 1511746420
Аноним 03/11/19 Вск 08:48:12 1511798421
>>1511745
Очередной долбоеб, который не знает языка, ничего учить не хочет и винит во всём IDE, лол.
Аноним 03/11/19 Вск 11:55:18 1511866422
>>1511798
Как вообще мое недовольство дефолтным поведении студии при выборе неймспейса связано со знанием языка, лол? Или то что мне не нравится что студия упорно не хочет создавать папки в проекте, а кидает исходники в одну папку, если ты вручную не переключишь режим на работу с папкой, но тогда у тебя пропадает возможность использовать шаблончики, которые таки очень удобны.
Аноним 03/11/19 Вск 15:23:33 1512046423
>>1511866
Тут дело в неумении пользоваться студией, говорящее о том, что ты ни одной книги нормальной по шарпу не прочитал, следовательно его не знаешь. Начитаются своих метанитов, а потом оказывается, что студия виновата.
Аноним 03/11/19 Вск 20:20:27 1512308424
Есть такой код:
class Fraction
{
public int num;
public int denom;

public Fraction() { }
public Fraction(int N, int D)
{
num = N;
denom = D;
}
public int Numerator
{
get { return num; }
set { num = value; }
}
public int Denominator
{
get { return denom; }
set { denom = value; }
}
public static Fraction Plus(Fraction fract1, Fraction fract2)
{
Fraction result = new Fraction();

if (fract1.Denominator != fract2.Denominator)
{
result.Numerator = fract1.Numerator fract2.Denominator + fract2.Numerator fract1.Denominator;
result.Denominator = fract1.Denominator * fract2.Denominator;
}
else
{
result.Numerator = fract1.Numerator + fract2.Numerator;
result.Denominator = fract1.Denominator;
}
return result;
}
public static Fraction Simple(Fraction result)
{
Fraction simpleResult = new Fraction();
int nod = NOD(simpleResult.num, simpleResult.denom);
if (nod != 0)
{
simpleResult.num /= nod;
simpleResult.denom /= nod;
}
return simpleResult;
}
public static int NOD(int a, int b)
{
while (b != 0)
{
int temp = b;
b = a % b;
a = temp;
}
return a;
}
public override string ToString()
{
return num + "/" + denom;
}
}
class Program
{
static void Main(string[] args)
{
Fraction fract1 = new Fraction();
Console.WriteLine("Введите числитель первой дроби: ");
fract1.num = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите знаменатель первой дроби: ");
fract1.denom = Convert.ToInt32(Console.ReadLine());

Fraction fract2 = new Fraction();
Console.WriteLine("Введите числитель второй дроби: ");
fract2.num = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите знаменатель второй дроби: ");
fract2.denom = Convert.ToInt32(Console.ReadLine());

Fraction result = Fraction.Plus(fract1, fract2);
result = Fraction.Simple(result);
Console.Write("Результат сложения: ");
Console.WriteLine($"{fract1.num}/{fract1.denom} + {fract2.num}/{fract2.denom} = {result}");

Console.WriteLine("Нажмите ENTER, чтобы выйти...");
Console.ReadLine();
}
}
В методе NOD должен производиться поиск наибольшего общего делителя дроби, а в методе Simple, исходя из наличия НОД, должно производиться упрощение. Однако, при запуске программы, независимо от введенных данных, результат сложения выдается как "0/0". Если убрать эти два метода, код работает и всё правильно считает. Не могу понять, в чём проблема. Может кто подскажет.
Аноним 03/11/19 Вск 20:27:49 1512319425
>>1512046
Ну давай, расскажи мне, как сделать так, чтобы студия
1. По дефолту делала неймспейс вида: SolutionName.ProjectName.Folder1.SubFolder1.SubSubFilder...
2. При создании проекта в солюшине по дефолту 1. Создавала папку проекта. 2. Кидала исходники в папку src и затем, при создании папки в проекте помещала исходники в эту папку на диске, не переключаясь между режимами папок и солюшинов.
Аноним 03/11/19 Вск 20:43:43 1512327426
>>1512308
В методе Simple ты создаешь класс Fraction используя стандартный конструктор, т. е. задаешь полям значения по умолчанию, у int это 0, после чего ты делишь эти нули на то, что у тебя вернул метод NOD. Поэтому у тебя всегда будет выдаваться 0.

И тебе нужно использовать автосвойства Numrator и Denominator или хотя бы сделать поля num и denom приватными, иначе никакого смысла в этих свойствах и полях нет.
Аноним 03/11/19 Вск 20:56:56 1512334427
Аноним 03/11/19 Вск 21:32:54 1512366428
Почему во всех примерах с TCPListener и сокетами данные сохраняют в byte[] методом Read?
Чем плоха конструкция:
List<byte> buf = new List<bute>();
while(stream.DataAvailable)
{
buf.Add((byte)stream.ReadByte());
}
?
Аноним 03/11/19 Вск 21:51:19 1512395429
Аноним 03/11/19 Вск 22:12:19 1512429430
Аноним 03/11/19 Вск 22:15:21 1512433431
>>1512366
Памяти больше жрёт и по скорости проигрывает.
Аноним 04/11/19 Пнд 00:32:01 1512537432
Вечер в хату шарписты!
Кароче я тут уже до строк добрался так что заданиями с цифрами вас заебывать не буду ,да и со строками наверное тоже.В общем подскажите где годной инфы глянуть или как гуглить про строки и работу с ними, сейчас нужна информация как определить тип символа в строке (число, буква, пунктуация и т.д.) Ну а елси вы мне тут чутка распишете про подобные методы и как использовать то я прям вам по Имэйлу тонну нефти скину.
Аноним 04/11/19 Пнд 03:13:59 1512608433
>>1512537
Документацию читай если тебе что-то не хватает в книгах.
Аноним 04/11/19 Пнд 08:16:13 1512663434
13.jpg (233Кб, 1385x976)
1385x976
14.jpg (159Кб, 1398x962)
1398x962
1-9032-128-9.png (2Кб, 128x128)
128x128
>>1499746 (OP)
Добрый день. Подскажите тупому, что я делаю не так.
Ориентируюсь вот на этот гайд (https://metanit.com/sharp/windowsforms/1.1.php) как простенькое оконное приложение сделать. Но графического редактора не вылезает, всё перепробовал. Так же не добавляются никакие активные элементы ни в какой раздел, всё серого цвета. Вроде редактор XML слева вывел, но он тоже неактивен.
Как бля сделать то это? Визуал перезапускал, проекты новые создавал - нихуя. Всё неактивно. В отладке окно возникает ясен хрен, но как его отредактировать вне отладки то?
Я нуфаг если что. Подскажите, где у меня косяк.
1 пик - редактирование, 2 пик - запущено.
Аноним 04/11/19 Пнд 08:59:40 1512675435
>>1512663
Xaml открывай, а не cs.
Аноним 04/11/19 Пнд 09:09:43 1512681436
>>1512537
char.IsLetterOrDigit
char.IsPunctuation
char.IsSeparator

и т. д. Открываешь мсдн и читаешь всё про класс char и string.
Аноним 04/11/19 Пнд 09:15:22 1512684437
>>1512663
>Подскажите, где у меня косяк
>https://metanit.com/
>metanit

Вот здесь у тебя большой косяк.
Аноним 04/11/19 Пнд 09:36:29 1512691438
988888.jpg (222Кб, 1400x976)
1400x976
>>1512663
У меня его походу в принципе нет(стоит 2019 комьюнити бесплатная). Как его скачать и он вообще доступен в бесплатной версии?
Аноним 04/11/19 Пнд 12:26:35 1512771439
изображение.png (941Кб, 811x811)
811x811
Всем привет.
В этом году вкатился в IT разработчиком на C#, хотя начинал изучать программирование на Java.
Всё получается легко и интуитивно, мне очень нравится новая специальность.
Теперь вопрос. Я сейчас пишу ПО для фреймворка BPM Online. Бэк - C#, по сути ASP.NET, фронт - JS, БД MSSQL, всё работает на IIS.
В какую сторону развиваться теперь?
Сел писать микросервис .NET + React.

Если верить
https://stackoverflow.com/questions/51390971/im-lost-what-happened-to-asp-net-mvc-5
.NET Framework умирает и будет полностью заменён .NET CORE.
Всё верно?
Аноним 04/11/19 Пнд 15:08:28 1512941440
>>1512771
>.NET Framework умирает и будет полностью заменён .NET CORE.

Нахуй ты стэковерфлоу читаешь, когда есть блог майкрософт? В нём они дали понять, что просто объединят Framework и Core и сделают из него Core 3.0 после чего именоваться всё будет только с окончанием Core. Понятно, что упор будет делаться на Core, так время диктует, но и про Framework никто забывать не будет, просто из названия уберут.

С остальным тебе нужно идти сюда https://2ch.hk/pr/res/1512359.html потому что в этом треде 1.5 анона и все они вкатывальщики, ты не вписываешься в рамки текущего треда.
Аноним 04/11/19 Пнд 16:43:00 1513035441
facepalm-1.0.jpg (141Кб, 1400x1400)
1400x1400
>>1512771
>вкатился в IT разработчиком на C#
>.NET Framework умирает и будет полностью заменён .NET CORE.
Ты или долбоеб или пиздабол. Одно из двух.
.NET core - на текущий момент не может существовать без .net framework, т.к. по сути - это CLR+FCL+ВНИМАНИЕ! Сам .NET Core, как инструмент веб разработки.
Как блять .NET framework может умереть? Произойдет объединение - скорее всего, т.к. потребность в WPF,UWP,Xamarin etc (who knows what else) может банально отпасть. Кто будет сапортить говно 20 летней давности?
Аноним 04/11/19 Пнд 17:41:37 1513090442
>>1513035
Вот это подростковый выкрик.
Аноним 04/11/19 Пнд 18:02:23 1513114443
изображение.png (15Кб, 402x41)
402x41
Что это значит? Типа, треугольные скобки как на пике, что в них указывается?
Аноним 04/11/19 Пнд 18:03:08 1513117444
>>1513114
Дженерики, иди читай материал, рано тебе еще код писать.
Аноним 04/11/19 Пнд 18:03:54 1513118445
Аноним 04/11/19 Пнд 18:18:42 1513134446
Аноним 04/11/19 Пнд 19:55:15 1513224447
Аноним 04/11/19 Пнд 20:32:24 1513260448
>>1512691
Два раза щелкнуть по Form1 не пробовал?
Аноним 04/11/19 Пнд 23:03:30 1513403449
>>1512663
На NetCore конструктор ещё не допилен. Но он накатывается в виде плагина, гугли в этом направлении.
Аноним 04/11/19 Пнд 23:22:25 1513412450
Screenshot3.png (43Кб, 1016x768)
1016x768
Screenshot4.png (174Кб, 1644x858)
1644x858
>>1512663
Алсо, нахуй на NetCore вообще? На Net Framework выбери.
Аноним 05/11/19 Втр 00:14:23 1513444451
Сап хлопчаки. Вопрос по Ninject и DI контейнерам.
https://gist.github.com/Hotriden/126f74448cadbdbef5f8eb7cebf94bb8
Как по итогу инициализировать классы с DI? Везде создавать экземпляр интерфейса и передавать в конструктор класса?
Аноним 05/11/19 Втр 07:23:07 1513538452
>>1513403
А с кором теперь можно собрать портабельное WPF с окошками без необходимости ставить фреймворк? Например чтоб на XP завести без ебли с пердолингом дотнета 4.5?
Аноним 05/11/19 Втр 09:39:32 1513564453
>>1513538
>А с кором теперь можно собрать портабельное WPF с окошками без необходимости ставить фреймворк?
Да.>>1513538
>тоб на XP завести без ебли с пердолингом дотнета 4.5
Нет. Кор дружит с виндой от 7 Sp1 и далее.
Аноним 05/11/19 Втр 10:21:47 1513581454
Безымянный.png (0Кб, 202x19)
202x19
Аноны, я закоммитил такой код. Я молодец?
Аноним 05/11/19 Втр 10:57:09 1513599455
>>1513581
Нет, ты дурачок. Во-первых, твой var делает твой код еще более нечитаемым чем он есть, во-вторых, конструкция !(counter > 3) ничем не отличается от более простого counter <= 3
Аноним 05/11/19 Втр 11:31:06 1513620456
>>1513599
>твой var делает твой код еще более нечитаемым
тут не соглашусь, все давно привыкли к вар, да и пишут в иде-хах а не блокнотах
>!(counter > 3) ничем не отличается от более простого counter <= 3
Да, но тогда декремент и сравнение не объединятся в один символ в так любимых местными шрифтами с лигатурами. Признайся, ты же подвис, читая эту строчку? Жаль автоформатирование это поломает.
Аноним 05/11/19 Втр 12:11:30 1513648457
>>1513444
В контейнере регистрируешь соответствие интерфейсов и классов, настраиваешь время жизни и все остальное. Это место называется composition root. И если всё нормально спроектировано, то контейнер сам будет автоматически передавать нужные объекты в конструкторы.
Аноним 05/11/19 Втр 13:23:47 1513710458
>>1511349
Спасибо, все прочекаю
Аноним 05/11/19 Втр 13:29:40 1513718459
Заимплементил свойство только для интерфейса (Interface.Property { get; }), но присвоить ему новый объект в конструкторе нельзя.
Облом?
Аноним 05/11/19 Втр 13:31:15 1513721460
>>1513620
>все давно привыкли к вар, да и пишут в иде-хах а не блокнотах

Дело не в привычке, а в читаемости кода. Пока не прочтешь то что после = не поймешь, что это булевая переменная. Каждый раз тебе нужно либо читать, либо наводить мышку на var. За такое в продакшене пиздят и обоссывают.

> Признайся, ты же подвис, читая эту строчку?

Нет, я сразу понял, что эту хуйню можно переписать в counter <= 3 и мне стало стыдно за человека, который эту строку написал.
Аноним 05/11/19 Втр 14:39:04 1513768461
>>1513721
>За такое в продакшене пиздят и обоссывают.
Какая-то у вас контора старперов. У нас наоборот стайлгайд предписывает вар использовать.
>я сразу понял, что эту хуйню можно переписать в counter <= 3
Значит код хорошо читаем. Жаль. Думал мозголомку придумал.
Аноним 05/11/19 Втр 15:59:29 1513843462
Аноним 05/11/19 Втр 17:48:39 1513916463
>>1513648
>настраиваешь время жизни
Не совсем понял. Насчет привязки интефейс-реализация это я понял - отдельным NinjectService выносить тригер при запуске приложения.
У меня вопрос в передаче интерфейса через конструктор - получается цепь передачи конструкторов через вложение класса с DI контейнером в другие классы. Как пример из гиста:
Я захочу создать класс объеденяющий самураев, к примеру - Baracks, то и в нем мне нужно будет делать передачу интерфейса IWeapon, т.к. вложение самурая требует в конструкторе этот интерфейс.
Тоже самое при инициализации экземпляра у меня должен быть объевлен интерфейс IWeapon для передачи в конструктор.
Аноним 05/11/19 Втр 18:58:07 1513961464
Аноним 05/11/19 Втр 21:10:11 1514041465
picture.jpg (101Кб, 972x443)
972x443
НУ И КАК В ЭТОМ ПИСАТЬ? ААА?
Аноним 05/11/19 Втр 21:32:10 1514063466
Аноним 05/11/19 Втр 21:35:07 1514066467
>>1514063
ты блядь не видишь, РЕКОМЕНДОВАНО 125!
Аноним 05/11/19 Втр 21:36:46 1514069468
>>1514066
Так это системой рекомендовано, не все приложения в рамках этой системы заточены на подобное.
Аноним 05/11/19 Втр 21:45:44 1514087469
>>1512941
Ты тоже читал плохо, походу. Майки пишут, что будет одна ветка - NET 5. Без какого-либо Core. По-сути, это и есть продолжение Core, он теперь и будет основным. Это как раз Core из названия уберут, его влили в основную ветку.

>>1512771
>Я сейчас пишу ПО для фреймворка BPM Online. Бэк - C#, по сути ASP.NET, фронт - JS, БД MSSQL, всё работает на IIS.
Хрена себе, я точно на такую же вакансию недавно устроился. Только учил кресты, в основном. А, ну и еще база MySQL и через их прокладку взаимодействие.
В какой энтерпрайз-сфере работаешь-то?
Аноним 05/11/19 Втр 21:47:38 1514094470
>>1514069
МОЖЕТ МНЕ ЕЩЕ ВРАПЕР НАПИСАТЬ НА CPU-Z И ТАМ РАЗРЕШЕНИЕ СМОТРЕТЬ?
Аноним 05/11/19 Втр 21:54:08 1514106471
Аноним 05/11/19 Втр 21:56:16 1514112472
>>1514087
>>1512771
И да, кстати говоря, BPM Online - это CRM-система, а не фреймворк. Ты, скорее всего, на шарпах конфигурационные сервисы пишешь в виде библиотек фронт для морды, бизнес процессы на JSe
Аноним 05/11/19 Втр 22:20:19 1514133473
>>1514106
А с чего ты взял что я пишу dpiaware приложение? может я просто статистику собираю и мне нужно точное разрешение монитора.
Аноним 05/11/19 Втр 22:40:16 1514152474
>>1514133
Мне похуй что ты пишешь, я сказал как узнать точное разрешение и что для этого ничего придумывать не надо.
Аноним 05/11/19 Втр 22:50:46 1514166475
>>1514152
НЕТ ТЫ ПРЕДЛАГАЕШЬ ИЗДАТЬ МАНИФЕСТ ВИНДУВСУ ЧТО МОЕ ПРИЛОЖЕНИЕ НЕ НУЖНО СКЕЙЛИТЬ СИСТЕМНЫМИ ФУНКЦИЯМИ ВИНДОВС ПОТОМУ ЧТО Я ЕГО СКЕЙЛЮ САМ СВОИМ ЗАПАТЕНТОВАННЫМ МЕТОДОМ, а я просто хотел посмотреть разрешение экрана.
Аноним 05/11/19 Втр 22:55:55 1514172476
>>1514166
Ты просто тупой и не знаешь, что эти настройки можно менять в рантайме, а не только в манифесте. Поменял на dpi aware -> узнал разрешение -> поменял на dpi unaware.

Неужели в макдональдсе всё так плохо, что даже такие долбоебы уже в it лезут?
Аноним 05/11/19 Втр 23:16:26 1514194477
>>1514172
Может это ты тупой? Везде специально для тебя написано, менять в рантайме - STRONGLY UNRECOMMENDED.
Аноним 05/11/19 Втр 23:19:45 1514201478
>>1514194
Таким как ты к компьютеру подходить тоже STRONGLY UNRECOMMENDED. Но ты же подошел...
Аноним 05/11/19 Втр 23:23:38 1514205479
Аноним 05/11/19 Втр 23:26:40 1514209480
Для чего нужны хешкоды в объектах? Почему они формируются в Int32, а не в string с символами? Где вообще хешкоды применимы помимо Compare?
Аноним 05/11/19 Втр 23:32:48 1514216481
>>1514205
Ты сам это подтвердил своими постами.
Аноним 05/11/19 Втр 23:36:56 1514219482
>>1514209
ЭТА ТВОЙ ПОСТ >>1514201 ??????????
ПОТОМУЧТО C# ТИПИЛИЗОВАНЫЙ ЯЗЫК, ТУТ НЕТУ JSON, ГДЕ ТЕБЕ ВСЕ ПЕРЕМЕННЫЕ ХРАНЯТСЯ В СТРОКЕ ВИДА {ХУЙ: [жопа]}
Аноним 05/11/19 Втр 23:39:44 1514222483
a851c00ad103fc2[...].jpg (30Кб, 300x251)
300x251
>>1514219
сливаешься после >>1514201 поста? Пшел нахуй отседова, петух ряженный
Аноним 05/11/19 Втр 23:44:33 1514224484
>>1514209
>Для чего нужны хешкоды в объектах?

Для того чтобы определять одинаковы объекты или нет, используя хэшкод.

>Почему они формируются в Int32, а не в string с символами?

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

>Где вообще хешкоды применимы помимо Compare?

Везде где тебе нужно узнать уникальность объекта в сравнении с объектами такого же типа.
Аноним 05/11/19 Втр 23:45:39 1514225485
>>1514222
А ссышь ты тоже в кровать, ну и что что рекомендуют в унитаз, окно открыл, проветрил, можно дальше спать.
Аноним 05/11/19 Втр 23:46:25 1514226486
>>1514219
>>1514222
>>1514225

Хуя тебе припекло, аж на окружающих кидаться начал и во всех своего обидчика видишь. Потом еще и такие >>1514205 глупые вопросы задаешь, когда говорят, что ты опасен для общества. Самому не смешно?
Аноним 05/11/19 Втр 23:55:00 1514229487
picture.jpg (25Кб, 568x176)
568x176
Аноним 05/11/19 Втр 23:58:16 1514233488
>>1514229
>In .Net Framework Strings are immutable reference types. All .net datatypes has default size except string and user type. So String is a Reference type, because it does not have default allocation size.
Аноним 06/11/19 Срд 00:10:07 1514241489
>>1514233
Пиздец, походу надо виндуос переустанавливать, ниче не работает.
Аноним 06/11/19 Срд 00:15:40 1514248490
>>1514224
Спасибо
>>1514225
долбоеб, ты не со мной до этого вел диалог
Аноним 06/11/19 Срд 00:22:29 1514256491
>>1514224
>Для того чтобы определять одинаковы объекты или нет, используя хэшкод.
Не, я, конечно, могу предположить, что в шарпе такая хуйня.
Но с вероятностью 99.9% ты - тупой хуесос, который сам не шарит, и анонов на дваче наебывает
Аноним 06/11/19 Срд 00:24:59 1514260492
>>1514248
>Спасибо
Он тебя наебал, мудила

Two objects that are equal return hash codes that are equal. However, the reverse is not true: equal hash codes do not imply object equality, because different (unequal) objects can have identical hash codes.
Аноним 06/11/19 Срд 00:43:31 1514277493
>>1514256
Что сказать то хотел, дурачок? Или ты просто пукнуть сюда зашел?
>>1514260
Я пишу:
>Везде где тебе нужно узнать уникальность объекта в сравнении с объектами такого же типа.
А в том что ты процитировал говорится об объектах в целом, без уточнения типа. Ну и конечно нужно учитывать, что GetHashCode это функция которую можно перезаписывать, и долбоеб вроде тебя может создать тип и перезаписать GetHashCode таким образом, что она всегда будет возвращать одинаковое значение, независимо от состояния объекта, поэтому только на неё нельзя полагаться. Но это уже проблема говнокодеров, а не предназначения функции.
Аноним 06/11/19 Срд 01:18:06 1514314494
too-funny-bro.jpg (32Кб, 600x345)
600x345
>>1514260
обсер на обсире. Not your day bro
Аноним 06/11/19 Срд 03:39:56 1514354495
>>1514277
Уебок хэш-код нужен для равномерного распределения по корзинам в хэш-структурах. Единственное к нему (нестрогое) требование - именно равномерность. (Ну и, чтобы у двух одинаковых объектов был один хэш-код, чтобы не положить, блядь, их в разные ебаные корзины)
Если ты используешь хеш-код для сравнения объектов на эквивалентность, ты просто безграмотный хуесос.

Тебе два раза об этом сказали. Вместо того, чтобы почесать в затылке и почитать ЭЛЕМЕНТАРНУЮ теорию, ты продолжаешь с надутыми щеками пердеть в лужу.
Пиздец, откуда в шарпном треде макаки с интеллектом яваскриптера?
Аноним 06/11/19 Срд 09:44:09 1514387496
Аноним 06/11/19 Срд 10:50:16 1514408497
Ну что ребята, как вам в итоге Кор 3.0 кто в прод уже пустил?
Аноним 06/11/19 Срд 10:50:41 1514409498
И ещё кто нибудь уже на блазоре что-нибудь классное сделал?
Аноним 06/11/19 Срд 10:53:29 1514411499
>>1514354
В голосину с этого подрыва. Где я писал
>используешь хеш-код для сравнения объектов на эквивалентность

Или может я написал, что метод Equals - не нужная хуета, потому что есть GetHashCode?

>Ну и, чтобы у двух одинаковых объектов был один хэш-код, чтобы не положить, блядь, их в разные ебаные корзины

Это я и имел ввиду. Хэш код это всего лишь добавление для Equals и существует он в основном для классов Hashtable и Dictionary<TKey, TValue>.
Если ты не способен понять смысла прочитанного, то не нужно на нормальных срываться, это не поможет твоей проблеме.
Аноним 06/11/19 Срд 11:09:04 1514420500
>>1514224
>Где вообще хешкоды применимы помимо Compare?
>Везде где тебе нужно узнать уникальность объекта в сравнении с объектами такого же типа.
Мы вам перезвоним.
Аноним 06/11/19 Срд 11:10:19 1514422501
>>1514420
Не очень то и хотелось...
Аноним 06/11/19 Срд 11:21:42 1514427502
Как в линке при селекте хранить какое-то значение между вычислением элементов?
Аноним 06/11/19 Срд 12:43:59 1514465503
Аноним 06/11/19 Срд 12:53:43 1514470504
>>1514427
Или если тебе нужно из массива X взять результат, а потом объеденить его с результатом из массива Y, то можно писать так:
from x in xarray
where x.Length > 3
from y in yarray
where y.Length < 3
select new { x, y};
Аноним 06/11/19 Срд 13:14:37 1514484505
>>1514411
> Где я писал
>используешь хеш-код для сравнения объектов на эквивалентность

Вот здесь:
>Для того чтобы определять одинаковы объекты или нет

>Это я и имел ввиду.
Но написал совершенно другое.

Я понял. Для тебя не только с# непонятен, но и русским ты не владеешь.
Иди на хуй, короче, уебок.
Сри в мозги таким же пидорам, как ты сам, мне больше неинтересно.
Аноним 06/11/19 Срд 13:20:49 1514493506
>>1514484
>понял что обосрался
>мне больше не интересно

Держи в курсе.
Аноним 06/11/19 Срд 14:00:56 1514537507
Аноним 06/11/19 Срд 14:37:58 1514549508
>>1514465
>>1514470

Спасибо, похоже я пропустил что into появился. Let не подходит так как действует перед вычислением всего Select, а мне надо внутри лямбды под селектом аккумулятор держать.
Аноним 06/11/19 Срд 15:52:32 1514614509
>>1514549

Похоже into мне тоже не подходит, он работает с группами или тоже всей последовательностью, а мне надо между элементами последовательность промежуточный разультат хранить.
Аноним 06/11/19 Срд 16:36:56 1514652510
>>1514549
Просто покажи что тебе сделать нужно и я за тебя сделаю.
Аноним 06/11/19 Срд 16:55:24 1514672511
>>1514652

На входе последовательность в упакованном виде как приращение относительно предыдущего элемента, надо её распаковать.
Аноним 06/11/19 Срд 18:11:14 1514718512
Capture.PNG (16Кб, 713x370)
713x370
>>1514427
Можно сделать нечто такое.
Аноним 06/11/19 Срд 18:12:29 1514720513
Аноны, подскажите, web-api приложение, когда делаю post-запрос на добавление сущности выскакивает ошибка 500 (internal server error) (видно в swagger). Пошагово выполнение смотрел, ошибка появляется при использовании await _context.SaveChangesAsync(). Как быть - не знаю.
Аноним 06/11/19 Срд 18:20:55 1514725514
>>1514718

Внешняя переменная все равно используется, а мне бы одним выражением.
Аноним 06/11/19 Срд 18:21:59 1514728515
>>1514725

Я погуглил, вроде это невозможно, по крайней мере на SO сам скит в похоже ситуации советовал кастомный итератор писать.
Аноним 06/11/19 Срд 18:53:51 1514747516
>>1514728
хуя ты сеньер Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)
Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.
Аноним 06/11/19 Срд 19:09:44 1514752517
Аноним 06/11/19 Срд 19:18:12 1514759518
>>1514720
ДЕБАГ КОНФИГУРАЦИЮ ПОСТАВЬ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
Аноним 06/11/19 Срд 23:07:21 1514988519
Наслушался Radio-T, обсуждали темы сборщиков типо Docker,Basil. Внимание вопрос - какие сборщики используются в.NET разработке? С какими вы проектами сталкивались, написанные не только на .NET (JS/CoffeScript/TypeScript как фронт ASP.NET не в счет) и какими сборщиками пользовались вы?
Аноним 06/11/19 Срд 23:10:04 1514992520
>>1514988
Мы используем самописный сборщик.
Аноним 07/11/19 Чтв 00:03:00 1515037521
>>1514992
На чем написан? Какой размер проекта, команды? Какие языковые сборки помимо .NET входят?
Аноним 07/11/19 Чтв 09:26:56 1515184522
>>1514752
>>1514747

А она разве не одно значение возвращает? Мне-то надо одну последовательность преобразовать в другую.
Shinobu 07/11/19 Чтв 10:10:35 1515208523
shinobu-oshino-[...].jpg (22Кб, 300x450)
300x450
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов