М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 13 мая 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

C#/Сишарп/.NET Тред - Шапка эдитион #5 /csharp/ 19 мар, 04:23 1366885 В конец треда | Веб

81 Кб, 660x330657 Кб, 1920x108017 Кб, 750x42238 Кб, 400x400

Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

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

1. Ресурсы:
- https://metanit.com/sharp/
- https://stackoverflow.com/questions/tagged/c#
- https://www.tutorialspoint.com/csharp/
- https://professorweb.ru
- https://habr.com/ru/hub/csharp/

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

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

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

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

6. С# для мобильной разработки
Если нужны инструменты для разработке под мобилы, ставь сразу VS2017 и при установке выбирай все нужные компоненты.
Больше информации тут - 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 Overview
Новые возможности C# 8.0: https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-8

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

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

Прошлый тред тонет здесь: https://2ch.hk/pr/res/1335434.html (М)

Ответы66890670976720768116681757048970513716267586276264

2 19 мар, 04:24 2 1366886

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

2 19 мар, 04:24 2 1366886

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

Показать весь текст

3 19 мар, 04:34 3 1366890

>>1366885 (OP)
Наконец-то нормальный перекат, без бомжей, школьников и прочей хуеты в шапке. Вкатился.

Ответы6689167934

4 19 мар, 04:39 4 1366891

>>1366890
>Наконец-то нормальный перекат, без бомжей, школьников и прочей хуеты в шапке.
Я ньюфаг, взял прошлый тред и скопировал по инструкции. Прошлые ОПы были настолько тупыми что с этим не могли справиться? Ужас! Ужас просто!

Ответы66988

5 19 мар, 05:41 5 1366895

Перетащу из прошлого тренда в этот, для вот этого долбоеба
>>1366518
>То-есть ответить на элементарный вопрос ты не смог. Ясно всё с тобой.

Блядь, вы чо, обезумели тут что ли? Вот вам метод из той самой программы с директориями

public void ProcessingDirectories(string dir1, string dir2)
{
try
{
if (!dir1[dir1.Length - 1].Equals(@"\")) { dir1 += @"\"; };
if (!dir2[dir2.Length - 1].Equals(@"\")) { dir2 += @"\"; };

//Заполняю коллекции именами подкаталогов (без путей) в каждой из папок.
List<string> directoriesInDir1 = (from d in new DirectoryInfo(dir1).GetDirectories() select d.Name + @"\").ToList();
List<string> directoriesInDir2 = (from d in new DirectoryInfo(dir2).GetDirectories() select d.Name + @"\").ToList();
List<string> directoriesTempInDir1 = new List<string>(directoriesInDir1);
List<string> directoriesTempInDir2 = new List<string>(directoriesInDir2);
//Заполняю коллекцию именами подкаталогов, которые встречаются в обеих папках.
List<string> directoriesDelete = (from d in directoriesInDir1 where directoriesInDir2.Contains(d) select d).ToList();

//Оставляю в каждой из коллекций только уникальные подкаталоги.
directoriesDelete.ForEach(d =>
{
directoriesInDir1.Remove(d);
directoriesInDir2.Remove(d);
});

//Создаю новые подкаталоги в каждой из папок в соответствии со списками уникальных подкаталогов.
directoriesInDir1.ForEach(d => { OnStatusWrite(this, "Создаю " + dir2 + d.Remove(d.Length - 1)); Directory.CreateDirectory(dir2 + d); });
directoriesInDir2.ForEach(d => { OnStatusWrite(this, "Создаю " + dir1 + d.Remove(d.Length - 1)); Directory.CreateDirectory(dir1 + d); });

ProcessingFiles(dir1, dir2);

//Рекурсивно вызываю этот метод (ProcessingDirectories()), для того, чтобы проверить подкаталоги на наличие уникальных
//подкаталогов 2-го, 3-го, 4-го ... N-го уровней. Сначала для подкаталогов первой папки, затем для подкаталогов второй.
directoriesTempInDir1.ForEach(d => ProcessingDirectories(dir1 + d, dir2 + d));
directoriesTempInDir2.ForEach(d => ProcessingDirectories(dir2 + d, dir1 + d));
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

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

5 19 мар, 05:41 5 1366895

Перетащу из прошлого тренда в этот, для вот этого долбоеба
>>1366518
>То-есть ответить на элементарный вопрос ты не смог. Ясно всё с тобой.

Блядь, вы чо, обезумели тут что ли? Вот вам метод из той самой программы с директориями

public void ProcessingDirectories(string dir1, string dir2)
{
try
{
if (!dir1[dir1.Length - 1].Equals(@"\")) { dir1 += @"\"; };
if (!dir2[dir2.Length - 1].Equals(@"\")) { dir2 += @"\"; };

//Заполняю коллекции именами подкаталогов (без путей) в каждой из папок.
List<string> directoriesInDir1 = (from d in new DirectoryInfo(dir1).GetDirectories() select d.Name + @"\").ToList();
List<string> directoriesInDir2 = (from d in new DirectoryInfo(dir2).GetDirectories() select d.Name + @"\").ToList();
List<string> directoriesTempInDir1 = new List<string>(directoriesInDir1);
List<string> directoriesTempInDir2 = new List<string>(directoriesInDir2);
//Заполняю коллекцию именами подкаталогов, которые встречаются в обеих папках.
List<string> directoriesDelete = (from d in directoriesInDir1 where directoriesInDir2.Contains(d) select d).ToList();

//Оставляю в каждой из коллекций только уникальные подкаталоги.
directoriesDelete.ForEach(d =>
{
directoriesInDir1.Remove(d);
directoriesInDir2.Remove(d);
});

//Создаю новые подкаталоги в каждой из папок в соответствии со списками уникальных подкаталогов.
directoriesInDir1.ForEach(d => { OnStatusWrite(this, "Создаю " + dir2 + d.Remove(d.Length - 1)); Directory.CreateDirectory(dir2 + d); });
directoriesInDir2.ForEach(d => { OnStatusWrite(this, "Создаю " + dir1 + d.Remove(d.Length - 1)); Directory.CreateDirectory(dir1 + d); });

ProcessingFiles(dir1, dir2);

//Рекурсивно вызываю этот метод (ProcessingDirectories()), для того, чтобы проверить подкаталоги на наличие уникальных
//подкаталогов 2-го, 3-го, 4-го ... N-го уровней. Сначала для подкаталогов первой папки, затем для подкаталогов второй.
directoriesTempInDir1.ForEach(d => ProcessingDirectories(dir1 + d, dir2 + d));
directoriesTempInDir2.ForEach(d => ProcessingDirectories(dir2 + d, dir1 + d));
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

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

Показать весь текст
Ответы6689666897

6 19 мар, 06:02 6 1366896

>>1366895
Уже и сюда перетащил срачи.
Глупенький маленький долбоёб. Иди вот в этот ПРИКРЕПЛЁННЫЙ БЛЯДЬ >>1215536 (OP) пост и читай
>Большие куски кода желательно вставлять через ideone или pastebin.
Уже само то, что ты неуважительно относишься к посетителям треда и анонам (копируя код просто в вакабу), заставляет к тебе относиться также и оскорблять тебя в ответ. А потом вы удивляетесь что тред скатился. Так вы же сами неуважение проявляете и ожидаете что к вам будут с уважением относиться.

Ответы6692368245

7 19 мар, 06:06 7 1366897

>>1366895
Не совсем понял зачем ты переходишь на личности? Я тебя оскорбил как-то или что?
Второе, я увидел твой код и получил ответ на вопрос в прошлом треде, я прочитал твой пост и был удовлетворён ответом (Спасибо кстати что запостил таки). Посему мне не совсем понятно зачем ты этот пост перетащил сюда?

Ответы66902

8 19 мар, 06:31 8 1366902

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

9 19 мар, 08:29 9 1366923

>>1366896
>неуважительно относишься к посетителям треда и анонам
Какой смешной червь-пидор.

Ответы66926

10 19 мар, 08:32 10 1366926

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

Ответы669296693066932

11 19 мар, 08:57 11 1366929

>>1366926
Культурно выебал твоего папашу на твоей спине.

Ответы66932

12 19 мар, 09:01 12 1366930

>>1366926
Неженка, плес
Уебывай на пикабу и там на вы беседуй

Ответы66932

11 Кб, 500x167
13 19 мар, 09:03 13 1366932

>>1366926
Ну вот видишь
>>1366930
>>1366929

Ответы66934

14 19 мар, 09:10 14 1366934

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

Ответы669356693766939

15 19 мар, 09:14 15 1366935

>>1366934
>беги мамке пожалуйся
Да я и так у твоей мамаши шлюхи сейчас.

Ответы66937

16 19 мар, 09:20 16 1366937

>>1366934
>>1366935
Уроки-то хоть сделали?

17 19 мар, 09:21 17 1366939

>>1366934
Тебе 30 с хуем лет, а ты на дваче срачи устраиваешь.

Ответы6694166947

10 Кб, 480x360
18 19 мар, 09:22 18 1366941

>>1366939
Как ты блядь узнал то?!11111

Ответы66942

19 19 мар, 09:25 19 1366942

>>1366941
Великовозрастного девственника (тебя) сразу видно.

20 19 мар, 09:54 20 1366947

>>1366939
Чо ебанулся? Чо не 60 с хуем?

21 19 мар, 10:59 21 1366971

Как удобнее всего отрисовывать быстроменяющиеся графики?
Хорошо бы найти библиотеку, не хотелось бы колхозить свой велосипед с нуля
Проблема в том, что должна быть возможность мышкой водить по графику и получать конкретные значения в данной точке. Когда "пауза", естественно

Ответы669746698566996

22 19 мар, 11:02 22 1366974

>>1366971
>Как удобнее всего отрисовывать быстроменяющиеся графики?
Отрисовываешь его такой, отрисовываешь. Потом берёшь такой и перерисовываешь.

23 19 мар, 11:27 23 1366985

>>1366971
В телеграмме нету шарпа

24 19 мар, 11:45 24 1366988

>>1366891
Не опы, а один я. И охуенные школьники и мужики были!
Почему этот тред называется "шапка", если так назывался прошлый?

Ответы66993

25 19 мар, 11:49 25 1366990

языку потребовалось ~20 лет, чтобы, наконец-то, уметь в рэнжи
как же меня печет с "развития" языка, начиная с 6й версии

Ответы6720767476

26 19 мар, 11:53 26 1366993

>>1366988
Шарпка

27 19 мар, 12:09 27 1366996

>>1366971
LiveChart

28 19 мар, 17:00 28 1367097

>>1366885 (OP)
>Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.

Большой и жирный пук. Работаю с д365 по хттп запросам - уебищные данные. даже распределить лист листов не могут в жсон.
Шарик постоянно лагает, что еще говорить про саму компанию. Ебаный зашквар.

Особенно скобки.

И после всего этого ты такое высираешь? Ну и сиди дальше в своем говне.

Ответы67100

29 19 мар, 17:05 29 1367100

>>1367097
>Очередной неосилятор долбоёб спорит с пастой
>Традиции двача.

30 19 мар, 19:42 30 1367179

Есть какая актуальная книга по ASP .net core?

Ответы6719167207

31 19 мар, 20:03 31 1367191

>>1367179
офсайт

32 19 мар, 20:37 32 1367207

>>1366885 (OP)
На пикчах Сишный код. Здешние дотнетчики настолько тупые?

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

Книжки по асп нету сейчас, ровно как и дока, кроме каких-то избранных глав (web api, middlewares, filters, caching, di) нахуй не нужны, в основом мусор. Остальное по ходу доберешь.
Можешь сразу ангуляр идти надрачивать.

>>1366990
>уметь в рэнжи
Enumerable.Range существует хуеву тучу лет.
Срезы, которые ты называешь "рэнжи", нахуй не нужны, а кому нужны те используют пайтон. Ведь нормальные люди используют язык по назначению, а не тащат его везде

Ответы672266736067475

33 19 мар, 20:39 33 1367208

Итак народ. Ситуация такова. Чем заменять циклы и переборы? Имеется задача, в которой надо описать функцию, которая принимает два строковых одномерных массива. Массив А и массив Б. "А" - включает в себя сайтики по которым хочет перейти пользователь. Например: "cards.uk", "smile.ogr", "wartime.de" и так далее. На а "Б" содержит в себе список запрещенных доменов. Если домен заблокирован, то все его суб-домены тоже. К примеру если заблочен "never.smile.org" то на smile.org перейти можно, а вот на "just.never.smile.org" нельзя. Я просто не знаю никакого другого способа, кроме как перебора. Алсо возвращать функция должна целочисленный массив с индексами из "хороших" доменов массива "А". Чем заменять эти циклы с переборами? Рекурсивные функции тоже не вариант, т.к. тоже перебор

Ответы672266733667376

34 19 мар, 21:16 34 1367226

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

>>1367208
если это задача с собеса, предлагаю его дропнуть

Ответы67230

35 19 мар, 21:37 35 1367230

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

Ответы67233

36 19 мар, 21:43 36 1367233

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

Ответы67241

37 19 мар, 22:02 37 1367241

>>1367233
Да, нужно было взять и проверить на какие сайты заходить можно. А цикл - слишком медленно работал бы. Типо если 1000 хотелок и 100 блокировок. то это 100к переборов. Я уже склоняюсь к тому, что надо массив Б перерабатывать в дерево и через это с ним работать... алсо запросил у них корректное решение, самому пиздец интересно

Ответы67243

38 19 мар, 22:04 38 1367243

>>1367241
так как условие задачи звучит?
чтобы построить дерево, массив нужно перебрать

Ответы67254

39 19 мар, 22:19 39 1367254

>>1367243
я могу тупо вбросить файл с заданием (на инглише)

https://yadi.sk/i/g3e_a90zpn27pQ

40 19 мар, 23:30 40 1367295

Вы нахуя сендбокс контура положили, дауны?

41 20 мар, 01:18 41 1367336

>>1367208
Есть же методы в стринге - contains или что в котором это есть или это читерство?
Если по велосипедному то тут насколько я понял есть правило - домен одинаковый с конца и до какого-то символа, можно либо сабстрингом пердолиться либо строки создавать как-то с индексов чара, или обрезать оригинал и сравнить, правда там все равно внутри есть переборы.

Ответы67339

42 20 мар, 01:25 42 1367339

>>1367336
А, перечитал задание - я идиот.

43 20 мар, 06:36 43 1367360

>>1367207
>пайтон
>нормальный язык
Нахуя ты такое жирное чудище?

Ответы67626

44 20 мар, 07:37 44 1367376

>>1367208
1)заблокированные домены пихаешь в Set
2)пишешь функцию извлечения домена для адреса (если 1 точка - вернуть как есть, если >1 то регуляркой можно (с позитивным просмотром вперёд и символом конца строки,например))
3)для а пишешь а.вере(адрес => !сет.содержит(домен(адрес)))

45 20 мар, 11:09 45 1367428

человеки челики челибосы, что вас (вы) спрашивают (спрашиваете) на собесах про ASP.NET?
время жизни запросов, архитектуры MVC/REST, IIS, валидация модели, фильтры, ViewBag/TempData - это дефолт (из моих воспоминаний). че еще этакого?

Ответы674566747967508

46 20 мар, 11:15 46 1367429

Сишарпошки, поясните новичку пожалуйста. Читаю Вайтакера, дошел до рекурсий, но не понимаю одного момента: у меня есть переменная с числом, я сую число в метод с рекурсией, в рекурсии все нормально отрабатывается, число увеличивается, но в главном методе число все еще считается маленьким. Почемууу?

using System;

public class Program
{
public static void Main()
{
int num = 1;
Console.WriteLine(num);//здесь num = 1
num = Recursia(num);//тут внутри метода num = 25
Console.WriteLine(num);//здесь num = 2
}

public static int Recursia(int i)
{
if(i<10)
{
i = i * i;
Console.WriteLine("i="+i);
i++;
Recursia(i);
}
return i;
}

}

46 20 мар, 11:15 46 1367429

Сишарпошки, поясните новичку пожалуйста. Читаю Вайтакера, дошел до рекурсий, но не понимаю одного момента: у меня есть переменная с числом, я сую число в метод с рекурсией, в рекурсии все нормально отрабатывается, число увеличивается, но в главном методе число все еще считается маленьким. Почемууу?

using System;

public class Program
{
public static void Main()
{
int num = 1;
Console.WriteLine(num);//здесь num = 1
num = Recursia(num);//тут внутри метода num = 25
Console.WriteLine(num);//здесь num = 2
}

public static int Recursia(int i)
{
if(i<10)
{
i = i * i;
Console.WriteLine("i="+i);
i++;
Recursia(i);
}
return i;
}

}

Показать весь текст
Ответы674306743367464

47 20 мар, 11:17 47 1367430

>>1367429
>\t\t
кто это будет читать по-твоему?

Ответы6743167432

48 20 мар, 11:21 48 1367431

>>1367430
А тут нету тега [code]
Давай я на пастербин выложу если ты такая нюня

49 20 мар, 11:22 49 1367432

>>1367430
Вот на
https://pastebin.com/zJACcEVP

Ответы67434

50 20 мар, 11:23 50 1367433

>>1367429
Тому что вэлью тайп и в методе работаешь с копией числа.
мимо другой ньюфаг

Ответы674356743667464

51 20 мар, 11:23 51 1367434

>>1367432
>i = i * i;
>i++;
я хуй знает, что за магию ты писал, но это значение изменяется только в пределах метода
и результат рекурсивного вызова Recursia(i) не сохраняется

Ответы67436

52 20 мар, 11:23 52 1367435

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

53 20 мар, 11:25 53 1367436

>>1367433
>>1367434
Спасибо, аноны, так как это обойти? Глобальными переменными?

Ответы674386743967440

54 20 мар, 11:27 54 1367438

>>1367436
сделай
>return Recursia(i);
я не уверен, что это то, что тебе надо. но тут больше никак не просматривается ожидаемый результат

Ответы67441

55 20 мар, 11:29 55 1367439

>>1367436
Указателями, хуле.

Ответы67441

56 20 мар, 11:31 56 1367440

>>1367436
С помощью ref попробуй.

Ответы67441

57 20 мар, 11:32 57 1367441

>>1367440
>>1367439
>>1367438
Спосибо

58 20 мар, 11:35 58 1367442

Да, аноны, спасибо, реф помогло. Не топите тред, пока я с# не выучу, вы няши

Ответы67444

59 20 мар, 11:38 59 1367444

>>1367442
Чего не указателями? Слабак что-ли?

Ответы67446

60 20 мар, 11:40 60 1367446

>>1367444
я недоразвился еще до указателей, видимо в следующих главах будет

Ответы67448

61 20 мар, 11:45 61 1367448

>>1367446
А что читаешь?

Ответы67450

62 20 мар, 11:48 62 1367450

>>1367448
Whitaker Players guide
В предыдущих тредах посоветовали, спасибо, очень годно

Ответы67455

63 20 мар, 12:02 63 1367455

>>1367450
А ты сделал крестики-ролики?

Ответы67457

86 Кб, 640x480
64 20 мар, 12:06 64 1367456

>>1367428

65 20 мар, 12:12 65 1367457

>>1367455
это сложно еще

66 20 мар, 12:39 66 1367464

>>1367429
>>1367433
Не слушай местных петухариусов про ссылку и указатель - они долбаебы сами нихуя не поняли и советуют костыли!
Ты не совсем правильно понял как работает рекурсия и тебе возвращается изначальный первый проход в котором i = 2 (очевидно). Если ты прошелся бы дебагером то увидел что возврат рекурсивно вызванных методов совершается с конца.
Глянь вот это - там разбирается дерево рекурсии
https://ulearn.me/Course/BasicProgramming/Derevo_rekursii_670fa739-0f73-450c-b877-eaa6264a34fc
И в рекурсии как правило нужно писать условие выхода в начале вот метод без костылей:
public static int Recursia(int i)
{
if (i > 10) return i;
i = i * i;
i++;
Console.WriteLine("i=" + i);
return Recursia(i);
}

67 20 мар, 12:41 67 1367465

Проебался ответами ну и похуй.

68 20 мар, 13:01 68 1367473

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

Ответы67481

69 20 мар, 13:19 69 1367475

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

70 20 мар, 13:21 70 1367476

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

71 20 мар, 13:28 71 1367479

>>1367428
Хуй знает, был в январе на 10 собеседованиях - это был просто ёбаный цирк с клоунами и конями. Причём параллельно был на собеседованиях по PHP, даже там было на пару уровней серьёзнее.
Суть в том, что ничего из именно программирования меня не спрашивали. Все вопросы были расплывчатыми и обобщёнными. По типу, где работал, что писал, к какой БД конектился, MVC знаешь? Что такое C из MVC? А что он делает. Максимум из профи спрашивали SOLID и core. Ну это тоже изи.
У меня создалось впечатление что никто в душе ниибёт что такое ASP и как собеседовать.
Зато на вакансию PHP за копейки вопросы блядь такие, что я охуевал просто. Один раз прямо на собеседовании дали ноут и 4 часа на "'Вот практическое задание, вордпреии и плагин, напиши магазин".

Ответы67489

72 20 мар, 13:30 72 1367481

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

73 20 мар, 14:05 73 1367489

>>1367479
обилие фреймворков овер ASP поражает воображение. и большая часть того, что там есть, сделана и так нормально, что челикам даже не нужно знать работу под капотом
меня до сих пор бесит вот это "а с ASP работали? ну, с MVC. а с Razor работали? а сессии использовали?". та ебать, это все дефолтная хуйня в асп. с другой стороны, куча дурачков, которая для проекта на ASP.NET писали свои конченые foreach и знать не знали, что есть какие-то модели, роутинги, валидации, сессии, реквесты

Ответы67490

74 20 мар, 14:09 74 1367490

>>1367489
>писали свои конченые foreach и знать не знали, что есть какие-то модели, роутинги, валидации, сессии, реквесты
Не, норм. Если ты опытный, то быстро всё поймёшь. По крайней мере лучше чем искать документацию к 30 разным хуёвинам которые просто в итоге по разному предоставляют вью.

Ответы67494

75 20 мар, 14:24 75 1367494

>>1367490
ну скажи на собесе "я опытный и все пойму, только возьмите меня" ))

Ответы67497

76 20 мар, 14:32 76 1367497

>>1367494
Я найду что говорить на собесе, не беспокойся. По крайней мере не буду говорить "Ой, тут foreach сделаны, это сложно. Я вот только через фрэймворк velosiped всё делал, это прогрессивно!".

Ответы67506

77 20 мар, 14:48 77 1367506

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

Ответы67507

78 20 мар, 14:49 78 1367507

>>1367506
О чём? Переведём разговор в прежнее русло.

Ответы67508

79 20 мар, 14:51 79 1367508

>>1367507

>>1367428

80 20 мар, 18:30 80 1367626

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

Ответы67639

81 20 мар, 19:36 81 1367639

>>1367626
>сеньеры с двумя годами опыта - вполне
>сеньеры
>вполне

Ответы67660

82 20 мар, 20:24 82 1367660

>>1367639
Ты видимо, немного тупенький раз не понял, что речь о частных случаях и не о вкатывальщиках без опыта работы.
Поясняю: 2 года опыта на конкретной платформе.
По-мимо этих двух лет, еще 2 года НОРМАЛЬНОЙ вышки, благо такая еще осталась. (при условии что человек начал работать на третьем курсе, если нет - тогда 5 лет вышки)
Еще бывают и такие варианты: человек отработал 2 года на одном стеке, сменил стек, отработал 2 года, ты можешь сколько угодно доказывать манагерам что человек сильный и тянет на сеньера - им будет похуй.

Ответы67669

83 20 мар, 20:33 83 1367669

>>1367660
так я че-то не понял, что мешает подрочить 2 года дотнет при условии наличия опыта на другом языке (допустим даже компилируемом со статической типизацией) и стать сеньором?

Ответы67671

84 20 мар, 20:36 84 1367671

>>1367669
>что мешает подрочить
Тупость и узколобость манагеров, очевидно.

Ответы67680

85 20 мар, 20:44 85 1367680

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

Ответы67696

86 20 мар, 21:03 86 1367696

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

Ответы6776367766

87 20 мар, 21:15 87 1367763

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

88 20 мар, 21:19 88 1367766

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

Ответы6777467775

89 20 мар, 21:29 89 1367774

>>1367766
Пиздец ты охуел? Люди которые с нулевых ебашат как хуй знает кто, вот их действительно можно назвать сеньерами, йоба архитекторами итд. А 2 года в продакшене это только только мидл.

Ответы67784

90 20 мар, 21:31 90 1367775

>>1367766
>что можно стать сеньором за джва года с условным опытом чуть побольше

Я не совсем так сказал, но посыл примерно такой. Основная претензия к дотнету - отсутствие альтернатив в плане задач. Что на пайтоне что на жабе есть бигдата, на пайтоне еще машоб. С жабы можно укатится на скалу.
А на дотнете что? Нихуя.
>>1367766
>Python Backend девелоперы
В моей тоже есть. При всём этом: во фронтенде не копаются от слова вовсе, получают не меньше.
Итого: зачем тратить пару лет на дотнет? Чтобы ковыряться в тс и ангуляре и получать столько же?

Ответы6777867784

91 20 мар, 21:38 91 1367778

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

Ответы67785

92 20 мар, 21:44 92 1367784

>>1367774
ты с конца читаешь?

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

Ответы67787

93 20 мар, 21:45 93 1367785

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

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

94 20 мар, 21:52 94 1367787

>>1367784
>легаси никто не отменял
Я не считаю классический MVC легаси, потому что на нем работал. А на проекты на вебформах не кидали, потому что всегда проще снять с текущего проекта людей, который уже знают специфику проект на формах ибо когда-то делали его. Десктопа в конторе нет и слава богу.
>что зная ее-джяву, ты прям на изи въедешь в скалу
На изи ничего не бывает. Но такая возможность есть, потому что если нужен разработчик на скале, то зеленых брать не будут, а возьмут человека работающего на джаве.
С перекатом на сам Kotlin проблем нет, если ты до этого работал на андроиде на джаве. Если со спринга - проблемы будут.
>>1367784
>пиля бигдату на питоне, прям лайк э босс закатишься в машоб
На "изи" - нет. Там совершенно разные области и разная мат. подготовка.

314 Кб, 2048x1536
95 20 мар, 21:53 95 1367788

Всем привет. В конце прошлого года был юристом, теперь работают на C# (а также немного на JS). Всё очень нравится, программисты как люди душевнее привыкших подскакивать кабанчиков юристов, хотя невероятные интроверты.
Работаю с CRM-фреймворком, теперь вопросы.
Какие инструменты повышения квалификации лучше? Понятно, что читаю Рихтера, изучаю ASP.NET и хочу погрузиться в .NET Core.
Про GeekBrains слышал негатив. Очередное высшее образование не рассматриваю, так как хорошо знаю это бесполезное болото изнутри. Как получить максимум возможных знаний наиболее эффективным способом?

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

Ответы67843

96 20 мар, 22:12 96 1367793

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

Ответы67798

97 20 мар, 22:17 97 1367796

Антоны, насколько сильно нужно знать Джаваскрипт, если я хочу устроиться джуном?
Что лучше учить, джаваскрипт дальше Я прочитал первую книгу Кантора или выучить asp.net core?
Сейчас я знаю только Asp.net MVC

Ответы67801

98 20 мар, 22:17 98 1367798

>>1367793
вероятно, объекты не трекаются контекстом. надо бы посмотреть, че ты делаешь

Ответы67985

99 20 мар, 22:21 99 1367801

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

100 20 мар, 22:21 100 1367802

Как можно сравнить изподкоробки какая строка больше или меньше (> <)?

Ответы67817

101 20 мар, 22:43 101 1367817

Блять, что за деграданство?
>string1 = "a";
>string2 = "aa";
>string.Compare(string1, string2, StringComparison.OrdinalIgnoreCase) == -1

>string1 = "a";
>string2 = "b";
>string.Compare(string1, string2, StringComparison.OrdinalIgnoreCase) == -1
>>1367802

Ответы67818

102 20 мар, 22:45 102 1367818

>>1367817
какой результат ты ожидал?
'аа', как и 'b', в отсортированном множестве, идет после 'a'

Ответы67819

103 20 мар, 22:48 103 1367819

>>1367818
А, да.
Блять, я просто туплю как мне сформулировать условие чтобы сравнивать больше ли строка в отсортированом массиве строк?
if (valueString > phrases)

Ответы6782167822

104 20 мар, 22:49 104 1367821

>>1367819
макаба съела *phrases[j]

105 20 мар, 22:50 105 1367822

>>1367819
что значит больше?

Ответы67823

106 20 мар, 22:51 106 1367823

>>1367822

107 20 мар, 22:51 107 1367824

///
///Возвращает индекс левой границы.
///То есть индекс максимальной фразы, которая не начинается с prefix и меньшая prefix.
/// Если такой нет, то возвращает -1
///

108 20 мар, 23:33 108 1367843

>>1367788
>стоит ли смотреть в сторону Unity и геймдева?
Только если душа лежит. Так денег мало, а работа тежелее чем на asp веб формочки лепить. И да, нужно уметь в матешу или художественные скиллы.

Ответы68811

109 20 мар, 23:38 109 1367845

Есть кто проходил этот таск на ulearn?
https://ulearn.me/Course/BasicProgramming/Praktika_Levaya_granitsa__2f97664a-375b-4a60-824f-6227008f822a

Можете пожалуйста кинуть решение/помочь ибо код я написал в студии затестил - РАБотает normalno, а в их сендбоксе на каком-то тесте ловлю stack overflow.

Вот код:
https://pastebin.com/veUTMxTz

Ответы67847678506789067932

110 20 мар, 23:48 110 1367847

>>1367845
>if (string.Compare(prefix, phrases[m], StringComparison.OrdinalIgnoreCase) < 0) return m - 1;
Смущает тут -1 в ретурне. Ты проверяешь слово с адесом m, но возвращаешь как заматченое слово (m - 1). Можно словить выход за границы массива.

Ответы67849

111 20 мар, 23:50 111 1367849

>>1367847
Здесь не нужно искать заматченое слово, а нужно найти левую границу. И там бы писало index out of range,

Ответы67851

112 20 мар, 23:52 112 1367850

>>1367845
>if (left - right == Math.Abs(1)) return -1;
Тут не проверяется условие на равенство left и right. Если будет ровно ноль, то улетит в сек оверфлов.

Наверно поправить нужно так: (left - right) <= Math.Abs(1)

Ответы67853

113 20 мар, 23:54 113 1367851

>>1367849
Ну тогда ладно. Но просто писать "левая граница" это как-то ебано, ибо не ясно входит сама граница в интервал или нет.

114 20 мар, 23:56 114 1367853

>>1367850
Ты все поломал.
Error on: Prefix [ab], phrases [a, ab, abc]
result should be 0, but was -1

Ответы67856

115 21 мар, 00:01 115 1367856

>>1367853
Ну охуеть, код твой, а поломал я.

Давай дальше ломать. Очевидно у нас один символ теперь не проверяется и условие надо изменить на : abs(left - right) <= 0

Вообще один проход дебагера всё решает, а онлайн-параша это великое зло.

Ответы6785767859

860 Кб, 1200x1200
116 21 мар, 00:05 116 1367857

>>1367856
Abs не нужен. И left-right поменять местами. Вот.

Ответы6785967871

117 21 мар, 00:06 117 1367859

>>1367856
Я не знаю какие там внутри тесты, а у меня нормальные результаты, скорее всего там реально оверфлоу на каком-то тесте и/или я беру дохуя памяти (>1мб).
И почему <= 0 ?
Там смысл был в том что если левая граница - правая граница = 1 элемент то значит некуда больше и идти и результат не найден.
>>1367857
>поменять местами
Абс-костыль это вроде как контролил.

118 21 мар, 00:22 118 1367871

>>1367857
Да, частично ты был прав, правда у меня теперь новая проблема:
Как округлить число int в низ при делении?

Ответы6788568050

119 21 мар, 00:58 119 1367882

Пиздец какой-то, ЯННП, призываются труъ эксперты.
Дошел до теста:
Error on: Prefix [a], phrases [ab, ab, ab, ab]
result should be -1, but was 0.
Получается так что по алгоритму бинарного поиска я какбэ(?) постепенно должен делить массив, я делю первый раз и в данном случае это должен быть 1 -1+(4-(-1)+2) = 1.5 1.5-1 = 0.5 = 0, но тест требует от меня границы самого первого вхождения.
И как это тогда сделать?
Добавлю что в метод я не могу добавить дополнительные передаваемые параметры.
Или я долбаеб?

Ответы68051

120 21 мар, 01:05 120 1367885

>>1367871
>Как округлить число int в низ при делении?
/

121 21 мар, 01:32 121 1367890

>>1367845
Ха-ха, я тут живу работаю

122 21 мар, 09:23 122 1367932

>>1367845
Стоит проходить этот курс? Годный?

Ответы679336794368122

123 21 мар, 09:30 123 1367933

>>1367932
Книжки лучше почитай.

Ответы6793567958

124 21 мар, 09:34 124 1367934

>>1366890
Ffgvvbjkl

125 21 мар, 09:42 125 1367935

>>1367933
Книжки читаю, но там практики мало.

Ответы67939

126 21 мар, 10:09 126 1367939

>>1367935
За практикой пиздуй реальные приложения писать, а не хуйню с изъебами

Ответы67958

127 21 мар, 10:26 127 1367943

>>1367932
Хочу туда на стажировку после диплома ulearn это курсы от СКБ Контур
Проходил курс, забросил на 20% первой половины
Так как читал книжки, все было знакомо. Но, выполняя практические задания, кое-что попутно узнал: ранее я избегал рекурсию, но было задание подсчитать число високосных лет на отрезке, не используя циклы
Набросал пример, он не работал. Переписал, заработал. Попутно загулил, где вообще это применяется, прочитал книгу "Грокаем алгоритмы", где рекурсия да и все остальное объясняется просто охуенно. Раньше не доходило, что все нужно сводить к базовому случаю. В общем, рекурсию я полюбил

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

Если есть время — вперёд

Ответы6794467946

128 21 мар, 10:27 128 1367944

>>1367943
Разметка поехала

129 21 мар, 10:29 129 1367946

>>1367943
Впрочем, дело скорее во мне. Конечно, в дебри уходить не нужно, весь материал зачастую тебе дают в роликах. Просто я немного аутист и люблю закопаться поглубже. С таймменеджментом проблема

434 Кб, 1649x988
130 21 мар, 11:07 130 1367956

Сап, аноны.
Читаю Троелсена, дошел до момента подписи сборки и всего этого говнеца. Автор создал две сборки и поместил их в GAC. У этих двух сборок одинаковый маркер открытого ключа не ебу как правильно называется мешанина символов после версии сборки. Однако у меня нет. Сейчас не у ПК, скрины сделать не могу, но я делал все то же самое, что и по книге (кроме названия сборки, заместо CarLibrary сделал test_l), но маркер открытого ключа все равно разный у обоих сборок. Меня бы это сильно не волновало, если бы не то, что дальше по книге предлагается в конфиге перезаписать версию используемой сборки, что у меня не получается сделать: приложение все равно использует старую версию. В конфиг файле все перепроверял, ошибок нет. Может ли быть такое, что это именно из-за этого маркера? Или я тупой?
Пропускать не хочу, ибо наверняка попадется что-то, что требует знание этого процесса.

Ответы67989

131 21 мар, 11:11 131 1367958

>>1367939
Вот только не нужно хуйню нести, ладно? Там начиная с ~половины первого же курса есть таски с реальной хуйни. Ту хуйню над которой я пердолился - поиск возможных слов как в клавиатуре на телефоне.
>>1367933
Вон один выше уже дочитался до раздела с рекурсией и нихуя почти не понял.

Ответы67999

132 21 мар, 13:58 132 1367985

>>1367798
Поменял в представлении значения, нажал сохранить и перешел в метод где буду все это сохранять. Туда передалась валидная модель со всеми изменениями (только навигационные свойства у нее все null но по идее это ж нормально), вызываю update в котором сперва делаю context.Entry(entity).Attach(); затем
context.Entry(entity).State = EntityState.Modified;
потом отдельно уже вызываю SaveChanges, который возвращает не 0. В контексте сущность поменялась как в локальном списке, так и не в локальном. Но в базе почему-то нет. При этом, если я после SaveChanges сделаю запрос на получение этой сущности GetByID, то получу сущность с ИЗМЕНЕННЫМИ параметрами как и должно быть. Но потом я делаю редирект на Index и в итоге я в представлении вижу эту сущность, у которой поменялись примитивные свойства, а навигационные - нет, как и в базе этих изменений нет.

Ответы67988

133 21 мар, 14:04 133 1367988

>>1367985
>только навигационные свойства у нее все null но по идее это ж нормально
отсюда я уже начал теряться
ты зависимые модели меняешь через Entity.RelaviteEntity.Property = "42" что-ли?

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

Ответы6799667997

134 21 мар, 14:07 134 1367989

>>1367956
Хер знает как, но, скопировав код со StackOverflow у меня оно заработало. Может, все-таки что-то забыл дописать. Ну и хрен с ним.

135 21 мар, 14:20 135 1367996

>>1367988
Если что, у меня навигационные свойства в модели описаны так:
public int RelativePropertyID
public RelativePropertyType RelativeProperty
Сам я ничего не меняю. У меня в представлении есть форма с полями модели, я делаю submit и у меня в контроллер приходит собранная модель, у которой RelativePropertyID заполнен изменённым значением, а RelativeProperty null. И эту модель из представления я уже пытаюсь сохранить.
context.Set<TEntity>().Attach(entityToUpdate);
context.Entry(entityToUpdate).State = EntityState.Modified;
context.SaveChanges();

Ответы68013

136 21 мар, 14:20 136 1367997

>>1367988
Если все равно плохо объяснил, то вечерком код кину, как буду дома.

137 21 мар, 14:28 137 1367999

>>1367958
Да, кажется, у Троелсена было два примера (про числа Фибоначчи и факториал числа), и этого было мало

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

Ответы68003

138 21 мар, 14:41 138 1368003

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

139 21 мар, 14:43 139 1368004

Платиновый вопрос:
Нахуя нужен struct если есть class?

Ответы680146801968581

140 21 мар, 14:49 140 1368013

>>1367996
>public RelativePropertyType RelativeProperty
чтобы проперти работало как навигационное, нужно его маркать как virtual
вообще, для code first есть конвенции

Ответы68036

141 21 мар, 14:50 141 1368014

>>1368004
чтобы экономить на памяти, перфомансе и латенси от потенциальных сборок мусора в 2к19м

Ответы680476858468589

142 21 мар, 15:04 142 1368019

>>1368004
Класс - ссылочный тип.
Структура - значимый тип.
Дальше гугли разницу.

Ответы68047

143 21 мар, 15:55 143 1368036

>>1368013
у меня помечено как virtual, когда сюда писал проебался

Ответы68043

144 21 мар, 16:08 144 1368043

>>1368036
тааак
у тебя есть Entity (e) и RelativeEntity (r). ты меняешь (e).RID и это сохраняется?
и что не так, в общем-то?

Ответы68103

145 21 мар, 16:20 145 1368047

>>1368019
>>1368014
То есть struct храниться в стеке, я правильно понял?

Ответы6804868049

146 21 мар, 16:26 146 1368048

>>1368047
struct выделяется на стеке. храниться она может и в куче при некоторых обстоятельствах

Ответы68057

147 21 мар, 16:30 147 1368049

>>1368047
Правильно. А что из этого следует?

Ответы68057

148 21 мар, 16:48 148 1368050

>>1367871
Math.Floor
И есть еще в большую сторону - Ceil

149 21 мар, 16:54 149 1368051

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

В нормально коде такой проблемы даже бы не возникло т.к. ты контролируешь его полностью(ну почти).

Ответы68057

150 21 мар, 17:09 150 1368057

>>1368051
Хорошо, и как это кроме очевидного перебора можно реализовать? Люди же как-то сдают.
>>1368049
Что это велью тайп, я знаю это и просто уточнил.
>>1368048
В каких случаях?

Ответы6806068102

151 21 мар, 17:19 151 1368060

>>1368057
>Что это велью тайп, я знаю это и просто уточнил.
Ты не понял. Ну велью тайп и что?

Ответы68196

152 21 мар, 19:06 152 1368101

Будут ли в EF работать навигационные свойства, если не добавлять им атрибут [ForeignKey]? Если да, то зачем вообще нужны FK в EF? Только для того, чтобы не давать удалять объекты, которые референсятся через FK в другом объекте?

Ответы68106

153 21 мар, 19:13 153 1368102

>>1368057
>В каких случаях?
когда это часть ссылочного типа, элемент массива, или упаковывается в рантайме

154 21 мар, 19:13 154 1368103

19 Кб, 469x2838 Кб, 284x28420 Кб, 766x305

>>1368043
1) Нажимаю в представлении редактировать, перехожу в обработчик Get запроса и получаю там выбранную сущность по ID, на скрине значения.
2) Поменял в представлении Teacher и Semester, нажимаю сохранить перехожу в обработчик Post запроса, мне туда приходит модель из формы с изменёнными значениями. Я делаю update как я уже писал, сначала аттачу ее, потом state=modified, делаю context.savechanges() он возвращает 1
3) Ради интереса делаю запрос на получение этой записи по ID, получаю сущность с изменениями, НО в базе изменений не произошло, все осталось как было.

Ответы68108

155 21 мар, 19:18 155 1368106

>>1368101
>если не добавлять им атрибут [ForeignKey]
ну есть Fluent API

если так же принцип следования конвенции. если помечать референсы виртуальными и правильно объявить тип/объект, то EF раздуплит связь между энтитями

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

Ответы68107

156 21 мар, 19:22 156 1368107

>>1368106
>ну есть Fluent API

>есть так же принцип следования конвенции. если помечать референсы виртуальными и правильно объявить тип/объект, то EF раздуплит связь между энтитями

а если без fluent API, вот проста
public int ClassB_Id {get; set;}
public virtual ClassB ClassB {get; set;}
- вот у этого EF всегда нормально будет ClassB вытягивать из БД без FK?

Ответы68329

157 21 мар, 19:24 157 1368108

>>1368103
>запрос на получение этой записи по ID
EF достает данные из Local, в рамках уже существующего контекста ты, конечно же, получишь актуальные данные

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

Ответы68114

158 21 мар, 19:50 158 1368114

>>1368108
Добавил лог, update идет только по одному полю типа int, по остальным ничего, странно..

Ответы68121

159 21 мар, 19:53 159 1368116

>>1366885 (OP)
Почему тред такой активный?

160 21 мар, 20:15 160 1368121

>>1368114
у тебя айди семестра отсутствует. если я правильно все гляжу

Ответы68126

161 21 мар, 20:17 161 1368122

>>1367932
Да, мне нормально зашел.
Объясняют норм и практики интересные.
Но лучше до/в процессе/после все же книжки почитать

162 21 мар, 20:25 162 1368126

>>1368121
Semester и StudyType это enum

Ответы68329

163 21 мар, 22:21 163 1368175

>>1366885 (OP)
>>1335434 (OP)
Анон в каком месте я лажанул?
------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OLD
{
class Human
{
public int Age { get; set; }
public string Sex { get; set; }
public string Name { get; set; }
public void SayHelloToBitch()
{
Console.WriteLine("Ну привет шаболда");
}
}
}
-------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OLD
{
class Boozer : Human
{
private Liver Liver = new Liver();
protected Boaroshnik Boaroshnic = new Boaroshnik();
public void NassatVPadike()
{
Console.WriteLine("Опять кто-то подъезд обоссал");
}
}
static void Main (string[] args)
{
Boozer Seva = new Boozer();
Seva.Name = "Дядя Сева";
Seva.Age = 50;
Seva.Sex = "Мужичара";
Seva.SayHelloToBitch();
Seva.NassatVPadike();
Human man = Seva;
Boozer boozer = man as Boozer;
if(boozer != null)
{
boozer.NassatVPadike();
}
Console.ReadKey();
}
}
-----------------------------------------------
namespace OLD
{
class UltraBoozer : Boozer
{
public void ChoDrink()
{
Console.Writeline(Boaroshnik);
}
}
}
-----------------------------------------------
namespace OLD
{
class Boaroshnik
{
}
}
-------------------------------------------------
namespace OLD
{
class Liver
{
}
}
--------------------------------------------------------------
ОшибкаCS0116Пространство имен не может напрямую включать в себя такие члены, как поля или методы.
ОшибкаCS0117"Console" не содержит определение для "Writeline".
ОшибкаCS0119'Boaroshnik" является тип, который недопустим в данном контексте.

163 21 мар, 22:21 163 1368175

>>1366885 (OP)
>>1335434 (OP)
Анон в каком месте я лажанул?
------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OLD
{
class Human
{
public int Age { get; set; }
public string Sex { get; set; }
public string Name { get; set; }
public void SayHelloToBitch()
{
Console.WriteLine("Ну привет шаболда");
}
}
}
-------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OLD
{
class Boozer : Human
{
private Liver Liver = new Liver();
protected Boaroshnik Boaroshnic = new Boaroshnik();
public void NassatVPadike()
{
Console.WriteLine("Опять кто-то подъезд обоссал");
}
}
static void Main (string[] args)
{
Boozer Seva = new Boozer();
Seva.Name = "Дядя Сева";
Seva.Age = 50;
Seva.Sex = "Мужичара";
Seva.SayHelloToBitch();
Seva.NassatVPadike();
Human man = Seva;
Boozer boozer = man as Boozer;
if(boozer != null)
{
boozer.NassatVPadike();
}
Console.ReadKey();
}
}
-----------------------------------------------
namespace OLD
{
class UltraBoozer : Boozer
{
public void ChoDrink()
{
Console.Writeline(Boaroshnik);
}
}
}
-----------------------------------------------
namespace OLD
{
class Boaroshnik
{
}
}
-------------------------------------------------
namespace OLD
{
class Liver
{
}
}
--------------------------------------------------------------
ОшибкаCS0116Пространство имен не может напрямую включать в себя такие члены, как поля или методы.
ОшибкаCS0117"Console" не содержит определение для "Writeline".
ОшибкаCS0119'Boaroshnik" является тип, который недопустим в данном контексте.

Показать весь текст
Ответы6824568329

164 21 мар, 22:58 164 1368196

>>1368060
И то что он храниться в стеке, а ссылочные типы хранят референс в стеке на объект в куче, так?

Ответы6833068484

165 22 мар, 00:32 165 1368245

>>1368175
>>1366896

166 22 мар, 08:29 166 1368329

>>1368107
ну, надо объявить DbSet<> в контексте, тада да

>>1368175
тебе ж компилятор все по-русски (даже) написал

>>1368126
выложи ты все-таки кодэ куда-нибудь. а то "я делаю как надо, а оно не так как надо"

Ответы68334

167 22 мар, 08:30 167 1368330

>>1368196
>ссылочные типы хранят референс в стеке
шо? ссылочные типы все данные размещают в куче

Ответы68355

168 22 мар, 08:46 168 1368334

>>1368329
https://pastebin.com/5PKpeCkE

https://github.com/thallkeer/TeacherLoad/tree/master/TeacherLoadApp

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

Ответы68352

169 22 мар, 10:21 169 1368352

>>1368334
.sln ты не коммитишь, типа нахуй надо?)

Ответы6835368368

170 22 мар, 10:34 170 1368353

>>1368352
Лол, я рили долбоеб

171 22 мар, 10:37 171 1368355

>>1368330
Вань ты дурак?
Покормил

Ответы68359

172 22 мар, 10:45 172 1368359

>>1368355
синьор в трэде, все расходимся

Ответы68373

173 22 мар, 11:25 173 1368368

22 Кб, 1087x240198 Кб, 1823x998185 Кб, 1826x997110 Кб, 1091x595

>>1368352
короче. inb4 в EF Core я шарю практически никак. и тот подход, который ты юзал, работал в дефолтном EF от чего у меня знатно подпекало на проектах. я не фанат такого способа обновления данных, и, если я прав и команда Core избавила фреймфорк от подобного инвалидства/костыляния, я апплодирую стоя

я сильно подозреваю, что суть в поведении StateTracker'а, который понятия не имеет об исходном состоянии entityToUpdate, и, соответственно, не видит изменений при попытке их детектирования (я изменил только Semester на UI):
пик 1 - значения в базе
пик 2 - что StateTracker знает об исходном состоянии энтити
пик 3 - что StateTracker получает как "измененный" стэйт энтити

для долбоебов:
- контекст только что был создан и там вообще нет никаких локальных данных
- ты передаешь какой-то объект в контекст с просьбой помаркать его как измененный
- вызывается SaveChanges
-- трэкер пытается детектить изменения:
-- видит: оригинальный семестр - (2), измененный семестр - (2)
-- уволить, отказать. идем дальше (а данных больше и нет)
ебошим UPDATE, в котором не апдейтится ничего

я сделал по-еблански: вытащил данные из базы, прошелся по всем пропертям, чтобы обновить их значения на то, что прислал браузер - пик 4. соответственно, unitOfWork.{}.Update я послал к хуям ибо трэкер по-дефолту и так уже в курсе про изменения.

но это привело к ошибке обновления ключа: пик в следующем посте. в душе ниибу, что такое AlternateKey. закомментировал OnModelCreating::modelBuilder.Entity<GroupLoad>().HasAlternateKey и был счастлив

Ответы683696837668544

151 Кб, 1844x1095
174 22 мар, 11:25 174 1368369

>>1368368

Ответы68374

175 22 мар, 11:32 175 1368372

В треде какие-то довны судят о знаниях по времени, мол поработал 2 года и синьор. Охуеть вообще. Синьор это знания и личные качества, а не "Я сидел на стуле 2 года."

176 22 мар, 11:34 176 1368373

>>1368359
Вкатывальщик в треде, все собираемся

177 22 мар, 11:36 177 1368374

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

Ответы68375

178 22 мар, 11:37 178 1368375

>>1368374
Fantasque Sans Mono

179 22 мар, 11:39 179 1368376

>>1368368
> видит: оригинальный семестр - (2), измененный семестр - (2)
-- уволить, отказать. идем дальше (а данных больше и нет)
Не совсем понял. Почему их больше нет?

Ответы68377

180 22 мар, 11:41 180 1368377

>>1368376
ну это просто единственная запись в чендж-трекере. и то добавленная как DbContext.Entry().State =

181 22 мар, 16:15 181 1368484

>>1368196
>И то что он храниться в стеке, а ссылочные типы хранят референс в стеке на объект в куче, так?
Так, и что из этого?
Меня так на собеседовании дрочили

Ответы6850468507

182 22 мар, 17:06 182 1368504

>>1368484
> Так, и что из этого?
А вам что нужно?

183 22 мар, 17:15 183 1368507

>>1368484
В стэке хранятся ссылки на ссылочные типы. Когда ты присваиваешь что-то типа
object a = new object();
var b = a;
То ты переменеой b присваиваешь ссылку на a. И если ты изменишь что-то в a, то изменится и b, так как это один и тот же обьект из кучи. Так же само, когда ты сравниваешь ссылочные типы, ты сравниваешь только ссылки.
Значимые типы могут лежать прям в стеке. И при копировании, ты копируешь все значение, а не только ссылку. Так же, значимые типы могут стать ссылочными - когда ты пишешь
object o = 5;
Ты даешь переменной о ссылку на int 5 в куче. При возврате назад к инту, в стэк будет копироваться значение из кучи.
пиздос, как можно идти на собеседование и не знать этого

Ответы68588

184 22 мар, 18:49 184 1368544

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

Ответы68549

185 22 мар, 19:07 185 1368549

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

186 22 мар, 20:15 186 1368581

>>1368004
>Платиновый вопрос:
>Нахуя нужен struct если есть class?
>Класс - ссылочный тип.
>Структура - значимый тип.
И чо? Нахуя нужен struct если есть class? Какая разница значимый тип или ссылочный в данном случае? К этому все велось.

Ответы6858468586

187 22 мар, 20:21 187 1368584

>>1368581

>>1368014

188 22 мар, 20:24 188 1368586

>>1368581
еще есть такой кейс для любителей острых ощущений
https://habr.com/ru/post/423657/

189 22 мар, 20:26 189 1368588

>>1368507
>пиздос, как можно идти на собеседование и не знать этого
А я где-то написал, что не знал?
Вопрос был - нахуя struct, если есть class? Ради радости присваивания через оператор = ? Где реально эти структуры используются, например?
Вот вопрос, который меня в тупик на собесе поставил был такой:
try catch finally, зачем нужен блок finally?
Я грю, ну он сработает после выполнения try или catch в любом случае.
Хорошо, а где это используется?
Я ни одного примера придумать не смог.

Ответы68601686306864168741

190 22 мар, 20:30 190 1368589

>>1368014
>чтобы экономить на памяти
Как там, в 80-х, 640кб не хватает уже что ли?

191 22 мар, 21:15 191 1368601

>>1368588
>ни одного примера придумать не смог
using

Ответы68624

192 22 мар, 22:01 192 1368624

>>1368601
разверни мысль

Ответы6863468637

193 22 мар, 22:14 193 1368630

>>1368588
Коннектишься к бд, в try делаешь свои операции, в finally закрываешь соединение

Ответы68631

194 22 мар, 22:21 194 1368631

>>1368630
>в finally закрываешь соединение
using ведь закрывает

195 22 мар, 22:23 195 1368634

>>1368624
- делаешь любое действие
- гарантированно освобождаешь ресурсы

Ответы68678

196 22 мар, 22:27 196 1368637

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

Ответы68679

197 22 мар, 22:47 197 1368641

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

Ответы6868168720

198 23 мар, 00:20 198 1368678

>>1368634
>- делаешь любое действие
>- гарантированно освобождаешь ресурсы
У меня чо, сборщика мусора кто-то отобрал? Может еще и деструкторы дрочить?

Ответы68756

199 23 мар, 00:23 199 1368679

>>1368637
>естественно, в случае фейла
есть фейл - работает catch
нет фейла - try
какое третье состояние нужно, чтобы только finally

Ответы68756

200 23 мар, 00:25 200 1368681

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

Ответы68686

201 23 мар, 00:35 201 1368686

>>1368681
> А кто мне их в классе мешает использовать?
От того, что они в классе, они не становятся ссылочными.

Ответы68689

202 23 мар, 00:43 202 1368689

>>1368686
>От того, что они в классе, они не становятся ссылочными.
И чо? Дальше то что?

203 23 мар, 02:14 203 1368720

>>1368641
Он не осознает всех тонкостей, оставь его

204 23 мар, 04:11 204 1368741

>>1368588
Можно закрыть открытые потоки в файлах. Я знаю одного спросили как закрыть потоки в файлы если метод оче большой и сложный и еще что-то. Ответ - деструктором. Немного не то но похоже.

Ответы68758

205 23 мар, 07:10 205 1368756

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

>>1368679
пустой catch - это ультрахуевая практика, даже если тебе этот кэтч реально не нужен. пустой finally тебя ни к чему не обязывает

Ответы68759

206 23 мар, 07:20 206 1368758

>>1368741
>Можно закрыть открытые потоки в файлах
Это если ты долбоеб и не юзаешь оператор со скобками, который так или иначе закрывает все твои потоки

Ответы68763

207 23 мар, 07:22 207 1368759

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

Ответы6876268768

208 23 мар, 08:02 208 1368762

>>1368759
та блять. говорят уже раз третий тебе, чтобы гарантированно выполнить какой-то код, даже если основной блок отвалится
[/spoiler]самый верняковый пример - закрытие соединения, релиз блокировки или файла

Ответы68781

209 23 мар, 08:03 209 1368763

>>1368758
какой оператор со скобками?

210 23 мар, 08:33 210 1368768

>>1368759
> зачем finally
Это короче жава-шарповский костыль для имитации деструкторов.

211 23 мар, 09:25 211 1368781

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

Ответы6878968795

212 23 мар, 10:04 212 1368789

>>1368781
var connecton = this.ConnectionPool.GetAwailable();
try { return connection.Query<Govno>(queryString, params); }
finally { this.ConnectionPool.Release(connection); }

это не копипаста из проекта, если че (но могла бы быть)

Ответы68802

213 23 мар, 10:48 213 1368795

>>1368781
другой пример, это из реального говнопроекта: https://pastebin.com/49h0ZiVV

214 23 мар, 11:09 214 1368802

>>1368789
Через using религия не позволяет? Обязательно явно нужно закрывать?

Ответы68803

215 23 мар, 11:18 215 1368803

>>1368802
>ConnectionPool
>закрывать
джун плиз

Ответы6880868812

216 23 мар, 11:32 216 1368808

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

217 23 мар, 11:43 217 1368811

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

Ответы69391

218 23 мар, 11:50 218 1368812

>>1368803
>джун плиз
Петя, плиз.
Твой говнокод никому нахуй разбирать не надо на составляющие

Ответы68813

219 23 мар, 11:59 219 1368813

>>1368812
в следующий раз когда на собеседовании придется рассказать про использование try-finally в проектах, скажи, что это говно без целей и задач, а разрабы языка - долбоебы
если спросят, почему так, можно ответить: потому, что пети из двачей не доказали реальные кейсы применения, а подпихнули говнокод, который хуйня

220 23 мар, 12:12 220 1368816

Тащемта, для закрытия соединений реально удобнее использовать using
Она же полностью синонимична этим вашим try finally.

Ответы68905

221 23 мар, 16:47 221 1368892

Анончики как быть? Устроился в небольшую фармацевтическую кампанию, поддерживать код на winforms. Все круто. Недавно начальник сказал что будем переходить на asp net, а на winform забиваем. Мне как бы не проблема выучить JavaScript, разметку, бд и СУБД, но мне ближе разработка под десктоп. Я сразу полюбил разработку под десктоп, когда начинал. А вакансий других нету вообще, что делать?

Ответы68905

222 23 мар, 17:43 222 1368905

>>1368816
так а кто спорит.
а если логика чуть сложнее, чем открыл/закрыл?

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

Ответы68925689376897668998

223 23 мар, 18:09 223 1368915

На связи вкатывальщик, предлагаю начать срач куда лучше вкатываться после "основ" - в веб или xamarin?

224 23 мар, 18:34 224 1368925

>>1368905
Ее можно засунуть в Dispose обычно, но я бы в таком случае предпочёл воспользоваться конструкцией try finally

225 23 мар, 18:59 225 1368937

>>1368905
А если плюнут на все? Подтянуть zenject и внедрение зависимостей, ну или UniRx, хотя вроде он мертв. И уйти в геймдев, еще с детства мечтал

Ответы68942

226 23 мар, 19:11 226 1368942

>>1368937
ты хочешь заниматься чем-то, но спрашиваешь на двачах, стОит ли?
не знаю, что тебе ответить

227 23 мар, 20:42 227 1368976

>>1368905
>так а кто спорит.
>а если логика чуть сложнее, чем открыл/закрыл?
Блядь, ты привел код, да? Да! Тебе сразу недоджун сказал, почему не через using, finally избыточно в данном случае, ты попой покрутил и сказал, что так и должно быть, не долбоебушка ли ты часом? Логика чуть сложнее, чем открыл/закрыл? Так приведи пример этой логики. Пока что ты хуйню избыточную привел, вместо ответа, зачем finally нужно

Ответы6899669213

228 23 мар, 21:39 228 1368996

>>1368976
почему долбоеб ты, а стыдно мне?

229 23 мар, 21:44 229 1368998

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

Ответы6901169035

230 23 мар, 22:13 230 1369011

>>1368998
retry в случае ошибки, да; какой-нибудь пул соединений и/или Unit of Work
вообще в приложениях сложнее moy_kursach заботу об управлении коннэкшном (ну и не только, просто это наиболее очевидный/часто встречающийся пример) не берет код/класс, который с этим соединением получает/записывает данные. а раз ты разделяешь ответственность, то появляется соблазн переиспользовать ёмкие ресурсы повторно (например, для какой-нибудь операции, которая выполнится через две строчки кода; или шире: в любом последующем ветвлении какого-то флоу). отсюда тебе мало написать using, ты не знаешь, в какой момент времени еще управляемый объект может понадобиться

могу другой, немного высосанный из пальца пример привести, не связанный с базой: юзер загружает картинку в твое приложение, но оно нарушает правила использования сервиса:
- бэкенд принимает файл, записывает его во временный сторадж
- идет попытка применения его для данных пользователя с сопутствующей проверкой. например, это аватарка и она хранится в каком-нибудь блоб хранилище
- файл нужно удалить из temp, дабы не хламить место, что бы не произошло
условно говоря, у тебя будет action контроллера, обернутый ExceptionFilter-ом (соответственно, блок catch в нем будет (скорее всего) отсутствовать), а валидация, сохранение, еще что-то происходит в глубоких ебенях сервисов/репозиториев. и в этом случае try/finally тебе поможет: удалить файл если был выброшен эксепшн; не копипастить логику обработки фильтром ошибки в catch блоке (и не писать catch { File.Delete(); throw; })

Ответы69285

231 23 мар, 22:40 231 1369035

>>1368998
>А ты пример этой логики приведешь?
Конечно не приведет. Он же даже в юзинг не умеет, лол

232 24 мар, 01:00 232 1369105

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

Ответы6917169187692156925369315

233 24 мар, 04:13 233 1369171

>>1369105
>мввм - это вообще говно мочи.
Лул, америку открыл.

234 24 мар, 07:47 234 1369187

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

>чистый code behind - это хорошо
так нынче хорошо все, что кодогенерацией облегчаетнет/ускоряет разработку. написание приложения через объявление вью-моделей и разбиение логики по командам а-ля десктопный CQRS - это как раз о том

Ответы69473

235 24 мар, 09:40 235 1369213

>>1368976
catch
{ return false; }
Выглядит знакомо?

236 24 мар, 09:56 236 1369215

>>1369105
>Его что, блять, по приколу что ли запилили?
Каэшна, vm руками создавай, для каждого окна, хули ты, не макака что ли?

237 24 мар, 12:07 237 1369253

>>1369105
>кусок сырого непроработанного говна
>>1369105
>плюс мввм - это вообще говно мочи.
>>1369105
>удобный code behind
>>1369105
>запиливаешь все эвенты
>>1369105
> Его что, блять, по приколу что ли запилили
Анекдоты уровня /pr/

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

Ответы6925769275

238 24 мар, 12:30 238 1369257

>>1369253
>Алсо, qt бляди до сих пор завидуют байндингам которые есть в wpf
И чему там завидовать? Можно поподробнее?

Ответы69315

239 24 мар, 13:20 239 1369275

>>1369253
>Алсо, qt бляди до сих пор завидуют байндингам которые есть в wpf
С чего бы? Сидел на обоих, xaml отсасывает у qml с проглотом.

Ответы6929869315

240 24 мар, 13:44 240 1369285

>>1369011
>retry в случае ошибки, да
Минуту, я хуйню сказал, это в catch нужно.
>этом случае try/finally тебе поможет: удалить файл если был выброшен эксепшн; не копипастить логику обработки фильтром ошибки в catch блоке
Почему "если", через finally в любом случае произойдёт удаление.

241 24 мар, 14:09 241 1369298

>>1369275
xaml вообще у всего отсасывает, это такое говно, что пиздец

Ответы69315

242 24 мар, 14:54 242 1369315

>>1369298
>это такое говно, что пиздец
>>1369105
Ниосилятор, съеби уже.

>>1369275
>Сидел на обоих, xaml отсасывает у qml с проглотом.
О, индивид заявляет что сидел на WPF, но когда ему рассказывают про приемущества Binding выражений и Dependency Property, он начинает сравнивать xaml и qml.
Дай угадаю, ты "сидел" ковыряя свою "лаба 1", но при этом не работал, верно?

>>1369257
>Можно поподробнее
Всему. Binding выражения, Dependency Property, workflow, анимации, тонны вещей из коробки.

Ответы69357

243 24 мар, 15:57 243 1369357

>>1369315
>верно
Нет. А вот ты явно не видел как биндинги делаются в кюте, дошло бы какой анальной дрочкой ты занимаешься.

Ответы69382

244 24 мар, 16:40 244 1369382

>>1369357
в wpf дефолтный биндинг на уровне <Элемент Свойство="Выражение" />. как еще более удобно/адекватно можно че-то ривязывать?
мимо

Ответы69394

245 24 мар, 17:07 245 1369391

>>1368811
Бамп.

246 24 мар, 17:15 246 1369394

>>1369382
Ну возьми второй пример кют биндинга из педивикии https://en.wikipedia.org/wiki/QML#Property_bindings
и попробуй переписать на ксамле/шарпе.

247 24 мар, 19:17 247 1369473

>>1369187
>ты уверен, что все делаешь правильно?
Уверен. Расскажи мне, например, как адекватно реализовать datagrid column header click через команды, но мало того, чтобы команда ещё и объект datagridcolumnheader возвращала. Или как привязать команду к гриду, который находится внутри табконтрола? А никак.

Ответы69490

248 24 мар, 19:53 248 1369490

>>1369473
>адекватно
>datagrid column header click
kek

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

Ответы69501

249 24 мар, 19:56 249 1369495

Пиздец, уже в обсуждение формочек, скатились. Тред сдох.

Ответы69498

250 24 мар, 19:58 250 1369498

>>1369495
вкатывайся в го

251 24 мар, 20:00 251 1369501

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

Ответы69518

252 24 мар, 20:25 252 1369518

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

253 24 мар, 20:47 253 1369527

public double Discont
{
get{return Discont;} set{Discont = value;}
}

Поясните чому оверфлоу и как можно это решить кроме как создания новой переменной?

Ответы6953169543

254 24 мар, 20:52 254 1369531

>>1369527
>public double Discont
>get{return Discont;} set{Discont = value;}
Ты уверен, что ты понимаешь, что ты делаешь?

Ответы69641

255 24 мар, 21:17 255 1369543

>>1369527
Хмм, я даже не знаю, почему.

Ответы69641

256 24 мар, 22:28 256 1369597

Сисяны, нужен совет. Есть я - изучавший сисярп 2 года детально, так что хоть и дошёл до паттернов основных только, но зато без пустоты в голове и прочего. Но увы, я оступился и залез в каку, имя которой Swift. Сейчас хочу вернуться, посоветуйте, с чего можно освежить память и двинуться дальше

257 25 мар, 00:20 257 1369641

>>1369531
>>1369543
Я пример навел, там еще есть строки условий.
>что ты делаешь?
Я думал что понимаю.

258 25 мар, 11:47 258 1369752

Господа, есть вопрос к вам.

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

Ответы69763

259 25 мар, 12:32 259 1369763

>>1369752
Через cancellationtoken (или как-то так)?

Ответы69766

260 25 мар, 12:37 260 1369766

>>1369763
>cancellationtoken
Для него токен надо создавать, не? Потом хранить его где-то. У меня 10-15 потоков параллельно работают

Ответы69772

261 25 мар, 12:51 261 1369772

>>1369766
это общепринятый способ завершать работу в TPL. откуда взялась проблема что-то куда-то создавать?

Ответы69777

262 25 мар, 12:55 262 1369777

>>1369772
Не пользовался никогда. Не было необходимости. Вот и спрашиваю

Ответы69780

263 25 мар, 12:58 263 1369780

>>1369777
по соглашению асинхронные методы имеют в сигнатуре CancellationToken как параметр. потому, что постоянно появляется необходимость что-то отменять

Ответы69782

264 25 мар, 13:03 264 1369782

>>1369780
понял пасибо

Ответы69790

265 25 мар, 13:35 265 1369790

>>1369782
если уж не случилось по разным причинам с CancellationToken, есть воркэраунд на игнорирование результата, но такое может не подойти в некоторых случаях:

var delay = Task.Delay(timeout);
var workTask = RunGovnoAsync();
var result = await Task.WhenAny(delay, workTask);
if (result == workTask)
{ azaza }

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

266 25 мар, 13:52 266 1369795

В чем основная фишка распознавателя зависимости?
Не понимаю, зачем он конкретно нужен.

Ответы69800

267 25 мар, 14:10 267 1369800

>>1369795
>распознавателя зависимости
in English plz?

Ответы69807

268 25 мар, 14:19 268 1369807

>>1369800
Я объебался, имелось ввиду внедрение зависимостей, DI.
Как в Ninject можно привязать несколько реализаций?

Ответы69810

269 25 мар, 14:27 269 1369810

>>1369807
через именованые зависимости. вообще это хак и многие люди не любят такую дрочню.
для всех остальных есть чуть более хардкорные вещи, типа условная инжекция в SimpleInjector. точно не помню, но там вроде через цепочку When(x => { }).Resolve<T>() можно подпихнуть что угодно

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

270 25 мар, 15:47 270 1369831

>Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде.

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

Ответы698487014570289

271 25 мар, 16:31 271 1369848

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

272 25 мар, 20:18 272 1369957

>>1369946
Куда выкатываетесь?

Ответы69958

273 25 мар, 20:19 273 1369958

>>1369957
в Rust

Ответы69961

274 25 мар, 20:22 274 1369961

>>1369958
Проиграл

10 Кб, 210x240
275 26 мар, 01:21 275 1370125

У вас бывает/бывало такое что вы над каким-то тупым минутным решением думаете >час?
Сегодня прям дизмораль словил.

Ответы7014270144

276 26 мар, 02:15 276 1370142

>>1370125
Я всегда такой. Чувствую себя отбитым дауном. Раньше ходил в школе на олимпиадное прогоаммирлвание, но в итоге забил - я не умею думать и писать код с такой скоростью.

277 26 мар, 02:22 277 1370144

>>1370125
Постоянно такое.

278 26 мар, 02:24 278 1370145

>>1369831
Потому что:
>РЯЯЯ У НАС ЕСТЬ ДЖАБА С КОТЛИНОМ, СМУЗЗИ И ПОНЧИКИ.

Ответы70171

279 26 мар, 07:52 279 1370171

>>1370145
Ну это понятно, перекатыватся с жабы на шарп ради xamarina возможно не очень то хочется как и например мне с шарпа на жабу.

280 26 мар, 11:34 280 1370289

>>1369831
Ну так. Скорость разработки конечно выше чем на убого android studio. И если формы не трогать. Ну тут нужно учитывать что все библиотеки для android на java, и тебе скорее всего нужно будет самому билдить и настраивать это все для поддержки в C# (для популярных библиотек вроде есть nuget пакеты, но не уверен в их актуальности и работоспособности).
Если что-то пойдет не так, тебя ждует охуенные долгие дни поиска причины и ее исправления, т.к. инфы по ксамарину в интернете почти нет.

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

281 26 мар, 12:16 281 1370316

Антоны, можете пояснить, как юзать Ninject в формах?
Хочу протестировать кучу всего, но не понимаю.
Достаточно ли будет сделать вот так, чтобы модуль работал на всех формах?
Kernel = new StandardKernel();
Kernel.Load(new ExampleModule());
Application.Run(new MainForm());

Ответы70319

282 26 мар, 12:20 282 1370319

>>1370316
тебе нужно иметь доступ к Kernel из всех своих форм. самый васянский способ - объявить публичный статический класс и там свой Kernel инициализировать

Ответы70333

283 26 мар, 12:41 283 1370333

>>1370319
Это мне нужно будет везде прописывать kernel.Get<>?

Ответы70336

284 26 мар, 12:45 284 1370336

>>1370333
как-то так

285 26 мар, 14:22 285 1370376

Аноны, подскажите самый быстрый способ рисовать пиксели на форме? Graphics/picturebox - не варианты. Первый срабатывает раз через раз и не несет в себе функции установки единичного пикселя. А DrawLine(x,y,x+1,y+1) я рот ебал. Второй же требует ебанутой конструкции аля image.bimap = null; drawworld(bitmap); image.bitmap = bitmap; и опять же, цикл битмаповых setpixelов съедает всё процессорное время.
Помните первохл? Там как раз есть программный рендер. Чем же он выводит кадровый буфер на экран?
тут даже вопрос не конкретно по сярпу, а вообще о возможностях винды

Ответы703847038670387

286 26 мар, 14:44 286 1370384

>>1370376
>цикл битмаповых setpixelов съедает всё процессорное время
А зачем ты цикл крутишь? У тебя мир часто обновляется по пикселям? Вот прямо каждый кадр новые пиксели?

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

Вот посмотри тут как быстро ебут пиксели линей в ряд:
https://stackoverflow.com/questions/54553517/c-sharp-bitmap-set-pixel-value-for-format8bppindexed

287 26 мар, 14:48 287 1370386

>>1370376
>Чем же он выводит кадровый буфер на экран?
Внутрях там наверно крестовый bitblit - это очень быстрая шняга для копирования пикселей куда угодно. Используется в винде повсеместно. Можно поробовать обмазаться этой нативной реализацией если забить на кросплатформу нета.

40 Кб, 375x360
288 26 мар, 14:50 288 1370387

>>1370376
Отвечу третий раз. Прост.

289 26 мар, 16:07 289 1370428

Антоны, можете пояснить, как работать с Ninject, если у меня
1) Множество конструкторов, что ссылаются друг на друга через this
2) Конструктор ссылается на базовую реализацию через base?

Ответы70434

290 26 мар, 16:21 290 1370434

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

291 26 мар, 18:35 291 1370489

>>1366885 (OP)
Как скачать файл с Releases, по ссылке с гитхаба, через webclient, если там, на github'e - редирект.

Ответы73041

292 26 мар, 19:30 292 1370513

>>1366885 (OP)
Привет, ребята. Я хуй без опыта и высшего образования. 26 лвл. Программированием увлекаюсь давно, база хотя бы для джуниора есть с запасом. Хочу в веб. Пока без разницы, во фронт или в бэк. Лишь бы найти какую-нибудь работу. Из серверных языков знаю php, но это мне не очень нравится, все-таки хочется чего-то посерьезнее. В джаву мне путь 100% закрыт.
Есть ли шансы вкатиться к вам с такими данными?

Ответы7067170688

293 27 мар, 03:23 293 1370666

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

294 27 мар, 04:13 294 1370671

>>1370513
>В джаву мне путь 100% закрыт.
из чистого интереса, что может закрыть путь в джаву?

295 27 мар, 07:46 295 1370688

>>1370513
>Есть ли шансы вкатиться к вам с такими данными?
всегда удивляют такие вопросы.

Хочешь в веб, учишь JS. Ну и к нему html+css. Делаешь пет проект и выкладываешь на гитхаб и идешь по собеседованиям.

Ну а типа "потратить 1-2 недели на изучение и сразу на работу" ну тут хз. Как минимум полгода-год уйдет, если не больше.

296 27 мар, 16:55 296 1370866

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

Ответы70867

297 27 мар, 16:57 297 1370867

>>1370866
Реально.
>как это можно сделать?
Динамически читать.

Ответы70870

298 27 мар, 17:07 298 1370870

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

Ответы7092770931

299 27 мар, 18:36 299 1370927

>>1370870
new Timer(1000, ParseChat).Start();

Ответы70982

300 27 мар, 18:46 300 1370931

>>1370870
Тебе нужен http и api сервиса, дальше легко.

Олсо, вопрос, правильно ли я понимаю, что для каждого сайта делается отдельный ВебСкраппер или можно унифицировать?

Ответы70976

301 27 мар, 19:57 301 1370976

>>1370931
унифицировать ты сможешь только базовые действия
конкретные данные с конкретной разметки ты, конечно же, забираешь индивидуально

302 27 мар, 20:10 302 1370982

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

Ответы71015

303 27 мар, 21:14 303 1371015

>>1370982
слишком общий вопрос, чтобы отвечать на него как-то конкретно. что и как ты хочешь парсить? если у сайта есть вменяемое API (подозреваю, его нет), то какой-нибудь HttpClient (или напрямую с WebRequest пердолься) с десериализацией респонза в нужный тебе тип
если же тебе нужно ебашить разметку, то я лично предпочитаю использовать HtmlAgilityPack. опять таки, для скачивания страницы тебе понадобится нечто вроде HttpClient

Ответы71020

304 27 мар, 21:23 304 1371020

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

Ответы71028

305 27 мар, 21:31 305 1371028

>>1371020
мраземакаба не дает постить ссыль на доку дискордовскую
гуглируешь крч: Discord Development Portal / Channel / Get Channel Messages. это разве не оно?

Ответы71042

306 27 мар, 21:44 306 1371042

>>1371028
>гуглируешь крч: Discord Development Portal / Channel / Get Channel Messages. это разве не оно?
Это все про написание ботов для своего сервера, на другой я его закинуть не могу.

Ответы71043

307 27 мар, 21:46 307 1371043

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

Ответы71050

308 27 мар, 21:56 308 1371050

>>1371043
>уберпупероверкилл
В каком смысле? Не понимаю тебя.
Это мне еще надо будет залогиниться, написав POST запрос, потом спарсить страницу, вытащить сообщения и снова спарсить эту страницу, но так, чтобы не выйти из дискорда.
Может какой-нибудь Cefsharp сможет помочь сделать все проще?

Ответы71055

309 27 мар, 22:01 309 1371055

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

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

Ответы71239

310 28 мар, 03:09 310 1371239

>>1371055
Короче, я сделал так, максимально васянским способом
Через CefSharp запускаю скрипт и через
var div = await chromeBrowser.EvaluateScriptAsync(textBox2.Text);
Запускаю команды javascript.
У меня пока не получилось сделать нормальный вход и переход по формам, выгрузку картинок и гифок.
Думаю, что можно на это забить и сделать имитацию нажатия клавиши и клика мыши.

311 28 мар, 15:03 311 1371422

кто-нибудь из местных поехавших юзал NServiceBus с транспортом в виде SqlServer (ор любая другая базочка)?

312 28 мар, 17:36 312 1371511

Мужики, у CancellationTokenSource в разных тредах может меняться WaitHandle?

Ответы71598

313 28 мар, 20:15 313 1371598

>>1371511
https://github.com/Microsoft/referencesource/blob/master/mscorlib/system/threading/CancellationTokenSource.cs#L177
я вот лично не вижу ничего, связанного с тредом. и для себя не очень понимаю, почему бы он менялся

Ответы71788

314 28 мар, 21:35 314 1371626

>>1366885 (OP)
Аноны, что делает эта строка:
int index = (int)Math.Min(Math.Pow(r.NextDouble(), 0.3) * count, count - 1);
Хочу на JS переписать метод, а там - вот это...

Ответы71627

315 28 мар, 21:41 315 1371627

>>1371626
Math.Min - выбор наименьшего из двух
Mat.Pow - возведение x в степень y
* - умножение
- - вычитание
NextDouble() - случайное значение числа с плавающей точкой от 0 до 1

Ответы71743

316 29 мар, 02:22 316 1371720

вопрос. а вот если сделать struct с сылкой на class, то в struct же копируется ссылка?

Ответы71731

317 29 мар, 04:31 317 1371731

>>1371720
да

318 29 мар, 06:10 318 1371743

>>1371627
Понял.

319 29 мар, 09:12 319 1371788

>>1371598

Разобрался, мой косяк, токены неявер подменялись из-за ошибки.

Господин 320 29 мар, 12:04 320 1371872

Привет шарписты, я С господин уже 2й год, мой первый ЯП и основной, полюбил его навсегда, но с ним я никому не нужен кроме себя:) Думаю поплнить ваши ряды и осесть в офисе, интересует Desktop Development, возможно мобильная разработка.

Стоит ли игра свечь в плане вакансий для джунов, сколько времени на перекат и вливание в это опп:(

Ответы71876

321 29 мар, 12:14 321 1371876

>>1371872
десктоп на донтетах - это как делфи. вакансии можно найти, конечно, но зачем

Ответы71910

322 29 мар, 13:54 322 1371910

>>1371876
Ок, я открыт для идей/светов, готов принять любые идеи/светы на рассмотрение, так как есть огромное желание присесть в офис и залезать к дяде в карман 1 раз в месяц, помимо пасивного дохода...

Ответы71911

323 29 мар, 13:57 323 1371911

>>1371910
веб-фулстекинг практически гарантирует тебе место в офисе
может быть что-то про юнити тебе тут расскажут
мобильная разработка, опять-таки. наверное, xamarin жив еще

Ответы7191471948

324 29 мар, 14:07 324 1371914

>>1371911
Короче никак не миновать бля*кий JS?
Что расскажешь про системного админа, есть мне там что ловить?

Ответы71925

325 29 мар, 14:39 325 1371925

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

326 29 мар, 14:47 326 1371930

Антоны, я таки дорос до того, чтобы отправлять дискорду post запрос через Cefsharp.
Но мне в ответ приходит {"code": 0, "message": "400: Bad Request"}
И я не могу понять, в чем ошибка, как можно посмотреть исходящий запрос из приложения?

Ответы72007

327 29 мар, 15:42 327 1371948

>>1371911
Прочитал подробно, что такое full stack developer... это не мое, везде по немногу, но зато везде, а копни такого поглубже в чем либо, лопнет как блять пузырь мыльный! Я предпочитаю знать 1 но идеально, максимум 2 и то второй для дяди или удобства написания проекта.

Ответы71950

328 29 мар, 15:50 328 1371950

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

Ответы72028

329 29 мар, 18:07 329 1372007

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

Ответы72035

330 29 мар, 19:14 330 1372028

>>1371950
Значит больше уязвимостей:) От таких спецов, подуй на темную сторону:) ахахаах (Шутка)
Спасибо за общение и разъяснения, буду копать еще что нибудь, уверен найду, не может быть, чтобы Сишник был абсолюно не нужным;)

Ответы72035

331 29 мар, 19:34 331 1372035

>>1372007
хэдэры проанализируй и вопросы отпадут сами собой

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

Ответы72196

332 30 мар, 03:42 332 1372196

>>1372035
Там куча всяких скриптов.
Ладно, буду входить сам, на крайняк вроде можно куки сохранить и при новом запуске не потребуется аутентификация.
А так все работает, получаю информацию через javascript запросы, обрабатываю и шлю ботом в свою конфу, схороняя видео и получая уведомления, когда один пользователь пишет. Полагаю, что надо ещё отрубить отображение в chart после входа, чтобы ресурсы не тратились на отрисовку
Сейчас оставил работать на всю ночь, если не упадёт, то буду максимально доволен.

Ответы72226

333 30 мар, 08:49 333 1372226

>>1372196
это все с целью поиграться или есть практическая задача?

Ответы72544

334 30 мар, 09:02 334 1372231

Сисярпач, неосилятор здесь. Думал многопоточка и асихнронщина это легко, но в итоге неистово соснул. Вообщем есть 3 потока (по-мимо основного), 1 из них кеширует данные для последующей обработки другими потокам. Вообщем мне нужно все это синхронизировать. Например посылаю я из основного потока команду стоп, нужно чтобы потоки в определенном порядке закончили свою работу, посылаю команду старт и они запускаются в нужном мне порядке. Как такое правильно реализовать? Чтобы избежать состояние гонки, обработки исключений, костылей с синхронизацией итд.

Ответы72236

335 30 мар, 09:10 335 1372236

>>1372231
>потоки в определенном порядке закончили свою работу
>запускаются в нужном мне порядке
есть под этим подразумевается: убить и создать новый - то какого-нибудь ThreadRofloManager будет достаточно, который будет управлять состоянием потоков

если это все значит, что в методах самих трэдов нужно паузить и возобновлять работу, то ManualResetEvent (или Auto~) тебе в помощь

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

Ответы72484

336 30 мар, 21:55 336 1372484

>>1372236
Тоже думал про эвенты.
Почему костыль-то? Как правильно делать тогда?

Ответы72486

337 30 мар, 21:58 337 1372486

>>1372484
ну сложно сказать, имея представление только о части реализации задачи
я так понял, ты одним трэдом в loop-е асинхронно собираешь задачи, а другие потоки каким-то хуем асинхронно в том же (своем) loop-е их по очереди обрабатывают, чи шо?

338 31 мар, 01:04 338 1372544

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

Ответы72545

339 31 мар, 01:05 339 1372545

>>1372544
Надо бы разобраться с тем, как работать с куки, может быть, если я их сохраню и отправлю post, то дискорд меня пустит.

340 31 мар, 08:34 340 1372588

21 Кб, 1048x45619 Кб, 865x48226 Кб, 884x50122 Кб, 955x331

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

Ответы7259072813728867292475798

341 31 мар, 08:40 341 1372590

>>1372588
mapPic[x, y] у тебя точно в рамках границ обращается?
подсвечиваемая строка и реальное место исключение не всегда совпадают, зависит от всякого

Ответы7264073046

342 31 мар, 11:40 342 1372629

Существуют ли какие-нибудь бесплатные средства для генерации отчетов в asp.net core?

343 31 мар, 12:22 343 1372640

>>1372590
Эта беда вылезла, когда попытался инициализировать
Init()

private void Init()

MainBoard board = new MainBoard (panelGame);

До этого все работало, но мне нужно было вевести пролинейное поле разбитое на квадраты.

Прошу прощение за синтаксис пишу с планшета..

344 31 мар, 14:17 344 1372695

Дорогие шарписты может кто помочь? У меня есть главный класс Controller который порождает различные виды NotificationBox (error, message, info). Сами NotificationBox являются Form.

Controller порождает NotificationBox, через передачу в его конструктор enum, нужный тип Box (error, message, info)

После передачи в конструктор Controller в нем есть switch, который смотри какой enum передали и вызывает нужный метод
CreateMessageBox, CreateErrorBox

Как мне можно сократить? Ведь если я захочу сделать еще пару типов NotificationBox, мне нужно будет увеличить на n раз свич, добавить в enum нужное n кол-во имен NotificationBox, а в Controller нужно будет добавить еще пару методов создания NotificationBox.

Ответы7270272717

345 31 мар, 14:24 345 1372702

>>1372695
Я хочу сделать примерно так:

Каждый Form NotificationBox наследовать от INotification.

В самом INotification сделать abstract void метод Create.

В Controller создать глобальный экземпляр INotification. При вызове конструктора Controller switch апкастит нужный Form NotificationBox к глобальному INotification и в конце свитча я вызываю у INotification Create.

Ответы73190

346 31 мар, 14:32 346 1372704

test

347 31 мар, 14:49 347 1372717

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

348 31 мар, 17:48 348 1372813

>>1372588
Может ещё кто, чего подскажет? Параграф о массивах и исключениях в виде индексов выпадающих из массивов зачитал до дыр.

Ответы72883

349 31 мар, 18:15 349 1372836

Антоны, в мск будет трудно устроиться Джуном без вышки? У меня только среднее специальное.

Ответы72839

350 31 мар, 18:24 350 1372839

>>1372836
Если что, то конкретное направление - asp.net mvc

351 31 мар, 20:53 351 1372883

>>1372813
тебе бы посмотреть стек трейс исключения, а не искать помощи по скриншотам. или хотя бы показать его нам, если неосилятор

Ответы73046

352 31 мар, 21:03 352 1372886

>>1372588
>Анон в каком месте я лажанал?
В панельгейм.контрольс.адд
Скорее всего у тебя там массив с 0 элементов или что типа того

Ответы7288773046

353 31 мар, 21:06 353 1372887

>>1372886
так Add добавляет в конец ICollection. какая разница, сколько там было изначаьно элементов?

Ответы7288973046

354 31 мар, 21:12 354 1372889

>>1372887
Вот и показывай что такое этот контролс и как он аддит

Ответы72894

355 31 мар, 21:17 355 1372894

>>1372889
вась, ты чего
https://referencesource.microsoft.com/#system.windows.forms/winforms/managed/system/winforms/Control.cs,a984fc45e2486e83

356 31 мар, 22:19 356 1372924

>>1372588
Раканыч, ты в цикле x вместо y используешь

Ответы73046

357 31 мар, 22:30 357 1372927

Здравствуйте люди добрые, такой вопрос, если бы у вас был выбор, работать в C# за 40-50 в месяц или попытаться в веб макакинг на фрилансе, в надежде получать 70-100 (не знаю реальные ли это цифры, поправьте если что), что бы вы выбрали?

Ответы73059

358 31 мар, 22:33 358 1372928

Ну или получать 40-50 в месяц и копить на переезд в ДС1, чтобы получать 120к?

359 1 апр, 07:27 359 1373041

>>1370489
Бамп вопросу!
Если попытаться скачать файл с releases на github'e,
и сразу же приостановить загрузку,
а затем скопировать ссылку по которой скачивался файл - она же другая будет, более длинная, да ещё и с разными значениями!

360 1 апр, 07:47 360 1373046

>>1372590
>>1372883
>>1372886
>>1372887
Спасибо аноны.
Особенно этому господину
>>1372924

361 1 апр, 08:29 361 1373059

>>1372927
>в надежде получать

362 1 апр, 14:28 362 1373190

>>1372702
вот это грамотное решение, зачастую всё нужно подгонять к интерфейсам, удобнее, чем свитч

363 2 апр, 13:19 363 1373700

В шапке написано про The C# Player's Guide, второе издание (RB Whitaker), а что насчет 3 издания? Читать можно?

Ответы7375273808

364 2 апр, 14:17 364 1373752

>>1373700
если ты впервые в .net, то можно читать все, что угодно

365 2 апр, 15:56 365 1373808

>>1373700
Хз, я шапку скопировал с треда двухлетней давности, я ничего вообще не читал. Если ты ньюфаг, то нихуя тебе не надо читать - пройди любой курс по программированию, желательно там где язык со статической типизацией лично я проходил явараш, потом вообще без проблем перешел на сярп. Демоверсии на 10 уроков хватит для основ, а потом читай metanit.com.

Ответы73999

366 2 апр, 22:28 366 1373999

>>1373808
>лично я проходил явараш, потом вообще без проблем перешел на сярп
Двачаю. После явараша легко перешёл на шарп.

367 2 апр, 22:35 367 1374002

Поясните за дженерики. Нахуй они нужны, если любой обьект можно привести к objecr? Или это просто синтактический сахар над приведением object в другой, более сложный обьект?

Ответы74034

368 2 апр, 23:44 368 1374034

>>1374002
https://metanit.com/sharp/tutorial/3.12.php

Ответы74040

369 3 апр, 00:09 369 1374040

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

Ответы74091

370 3 апр, 07:37 370 1374081

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

[CODE]
using (Process ffmpeg = new Process()) {
ffmpeg.StartInfo.FileName = "ffmpeg.exe";
ffmpeg.StartInfo.Arguments = ...
ffmpeg.StartInfo.UseShellExecute = false;
ffmpeg.StartInfo.RedirectStandardError = true;
ffmpeg.StartInfo.CreateNoWindow = true;
ffmpeg.Start();

while (!ffmpeg.StandardError.EndOfStream) {
string line = ffmpeg.StandardError.ReadLine();
Debug.WriteLine(line);
if (условие)
ffmpeg.Kill(); // тут исключение что нет доступа, охуеть!
}
}
[/CODE]

Ответы74088

371 3 апр, 08:43 371 1374088

>>1374081
Я конечно не эксперт, но может запусти от админа?

372 3 апр, 09:12 372 1374091

>>1374040
>кастовал его к object и при возврате кастовал бы обратно
ну вот в джяве такая параша придумана. и что из этого получилось?

Ответы74118

373 3 апр, 10:45 373 1374118

>>1374091
А что они со значимыми типами делают?

Ответы74152

374 3 апр, 12:09 374 1374152

>>1374118
кастят в Object

Ответы74155

375 3 апр, 12:11 375 1374155

>>1374152
причем, если я правильно понял, вся эта мичпуха разворачивается еще на этапе статической компиляции в кодосгенерированные типы, у которых под капотом T наружу - это Object, T внутри - это скащенный в нужный тип экземпляр
возможно, я не прав, но это не делает дженерики джявы неуебищными

376 3 апр, 18:38 376 1374438

Аноны, в visual studio 2017 и 2019 в проекте с тестами при попытке запуска теста выскакивает ошибка cs5001 program doesn't contain static 'Main' method и т.д. Советы из гугла поменять версию языка не помогли. Прошу помощи у местных специалистов.

Ответы74565

377 3 апр, 20:01 377 1374545

Сисярпач, я тупой, помоги.
Есть: Dictionary<int, Dictionary<float, int>>();
Нужно отсортировать вложенный словарь по ключу ( найти минимальный float ) и вернуть соответственно 2 инта которые соответствую минимальному float.

Ответы74548

378 3 апр, 20:05 378 1374548

>>1374545
С помощью лтнкью или алгоритмов?

Ответы74550

379 3 апр, 20:09 379 1374550

>>1374548
С помощью встроенных средств C#.

Ответы74566

380 3 апр, 20:26 380 1374565

>>1374438
тестовый проект это графическое приложение чтоль? сделать его Class Library

Ответы74590

381 3 апр, 20:27 381 1374566

>>1374550
нихуя не проверял, но вроде так:

var dict = new Dictionary<int, Dictionary<float, int>>();

var minDict = dict.OrderBy(t => t.Value.Min(x => x.Key));

Console.WriteLine($"{minDict.First().Key}, {minDict.First().Value.First().Value}");

Ответы74714

382 3 апр, 20:52 382 1374590

>>1374565
Всё, спасибо, оказалось, что в солюшене один из проектов был как консольный. А тестовый проект - проект типа Unit Test, библиотека

383 4 апр, 00:48 383 1374714

>>1374566
Спасибо анончик.

384 4 апр, 11:44 384 1374866

Анончик, привет помогите пж разобраться что где хранится. Сейчас читаю вот этот курс https://metanit.com/sharp/tutorial/3.3.php. Вроде понятно, а вроде нет. Например: как вы знаете типы данных можно условно разделить на ссылочные и значимые. Значимые типы хранятся в стеке, а ссылочные сохраняют в стэк ссылку на адрес в куче и там хранят своё значение. Вроде понятно, но тут появляется слово static...(тревожная музыка, скример) В статьях не нашёл информации о том меняется тип памяти для статических переменных ссылочных типов. И ещё вопрос, попробую нагуглить, но всё же - можно ли в VS при отладке отобразить в состояние стэка и кучи, желательно в разных окнах. Спасибо, анон

Ответы74877

385 4 апр, 12:01 385 1374877

>>1374866
>меняется тип памяти
ссылочные типы хранят свои value type значения вместе со всем хламом в куче, этот нюанс разве метанит не пишет? для статических классов правила такие же, как и для динамических

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

Ответы74895

386 4 апр, 12:31 386 1374895

>>1374877
>ссылочные типы хранят свои value type значения вместе со всем хламом в куче, этот нюанс разве метанит не пишет? для статических классов правила такие же, как и для динамических

Я пропустил слово) Хотел просить "Меняется ли тип памяти?"
т.е. string ""; - ссылка
static string ""; - то же будет ссылкой или нет, раз переменная имеет общее значение для всех объектов класса...хотя это же объект, то получается что в любом случае он будет ссылкой. Как то сам на свой вопрос ответил. Всё равно спасибо)

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

Ответы74909

387 4 апр, 13:09 387 1374909

>>1374895
>раз переменная имеет общее значение для всех объектов класса
ты уверен, что правильно понял суть статики?

Ответы74923

36 Кб, 604x458
388 4 апр, 13:20 388 1374912

Сап, нужна помощь. Я ньюфажина, и нужно придумать лайт версию программы на сишарпе консольной, с использованием:
1. Наследования
2. Полиморфизма
3. Интерфейсов
4. Стандартных интерфейсов
5. Делегатов

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

Ответы749147492274928

389 4 апр, 13:23 389 1374914

>>1374912
придумай двач

Ответы74916

390 4 апр, 13:24 390 1374916

>>1374914
Смешно, но нет, спасибо.

391 4 апр, 13:40 391 1374922

>>1374912
Рпг игрульку, где ты выбираешь класс.
да, для сонсоли

Ответы7492575411

392 4 апр, 13:44 392 1374923

>>1374909
>ты уверен, что правильно понял суть статики?
Хороший вопрос) К статической переменной можно обращаться не создавая объект класса. Это я понял) Ещё я понял что значение статической переменной одно на все объекты класса.

Ответы7492475049

393 4 апр, 13:45 393 1374924

>>1374923
Переменные как пример

Ответы74926

394 4 апр, 13:46 394 1374925

>>1374922
А на остальное? Если можно

395 4 апр, 13:48 395 1374926

>>1374924
Если говорить о классе, то хз - для статического класса, получается нет смысла создавать объекты

396 4 апр, 13:50 396 1374928

>>1374912
Тебе для практики?
https://www.codewars.com - может тут найдешь что-нибудь

Ответы74959

397 4 апр, 15:29 397 1374959

>>1374928
Да, для практики, чтобы попробовать сделать что-то по этим темам, ну и чтобы сдать работы в институт завтра.

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

398 4 апр, 19:05 398 1375049

>>1374923
>значение статической переменной одно на все объекты класса
на какие объекты, какого класса? инстанс статического класса нельзя создать, а статические члены - это члены типа, а не экземпляра

399 4 апр, 21:20 399 1375118

36 Кб, 799x3584 Кб, 280x257

LINQ БОГИ ТУТ?
тащемта в чем проблема?
хочу вытащить из studing_period значения больше 4, выдаёт такую хрень.
Где ошибся? Как понять в чем ошибка?

Ответы75161

1,2 Мб, 720x1280
400 4 апр, 22:21 400 1375148

Сколько стоит денег и времени написать С# сервер чтоб он принимал стрим данных с нескольких бирж (трейды, ордербуки), сохранял их в базу, а тем кто залогинен мог отдавать данные как с БД так и пришедшие со стрима. В общем суть затеи иметь возможность смотреть графики цен реалтайм/историю. Также нужен простой аккаунт менеджмент и чат. Какие могут быть подводные камни при найме?

Ответы7516275276

401 4 апр, 22:59 401 1375161

LINQ БОГИ ТУТ? (2)
Есть массив строк в котором записаны цифры. Как в условие where можно вставить int.Parse точнее как стучаться к элементам lines в данном контексте?
Надо только так.

public static int[] ParseNumbers(IEnumerable<string> lines)
{
return lines
.Where(???)

>>1375118
>в чем ошибка
>выдаёт такую хрень
Ты стучишся конкретно в перечисление и тебе возвращает тип при таком стучании очевидно. Ошибка в select n, тебе наверное нужно select n.studing_period.

Ответы7518675252

402 4 апр, 23:04 402 1375162

>>1375148
Тебе обязательно на .NET?

Ответы75225

403 5 апр, 00:14 403 1375186

>>1375161
.where(n => int.Parse(n) > 3)

404 5 апр, 01:46 404 1375222

Объясните пожалуйста, почему usually you register for events in OnEnable and unregister in OnDisable?
как это вообще возможно, если OnEnable вызывается когда объект становится активным?

Вот код, если можно, объясните вообще что в нем происходит, или может у меня с английским проблемы?
void OnEnable()
{
DamagePlayerEvent.OnDamagePlayer += DecrementPlayerHealth(метод уменьшает хп);
}

void OnDisable()
{
DamagePlayerEvent.OnDamagePlayer -= DecrementPlayerHealth;
}

405 5 апр, 01:47 405 1375225

>>1375162
В случае с .NET смогу сам ковырнуть, ну а вообще-то похуй конечно. Для начала хочу понять сколько требуется деняк.

Ответы75231

406 5 апр, 02:02 406 1375229

Нихуя, некоторое время не заходил, уже почти до второго переката успели доехать. Тред ожил?

Ответы75230

407 5 апр, 02:04 407 1375230

>>1375229
А с мобильного инета - бан тор, впн. Что за хунта? Кто сломал?

408 5 апр, 02:05 408 1375231

>>1375225
Вот я бы допустим писал на Скале. По твоему описанию может потребоваться от недели до месяца времени. Вот и прикидывай исходя из рыночных зарплат + надбавка за разовую работу.
Но это только бэкенд. И это Скала.

Ответы75240

409 5 апр, 02:16 409 1375236

Аноны, есть кто с дс2? Такое ощущение что на с# не нужны погромисты. Откликаюсь на вакансии, сделал пару тестовых, одно из них на asp.net, хотя его даже не начинал еще изучать, только мельком глянул доки. Работодатель начал морозиться по поводу з/п. Даже на самую ссаную стажировку отказ. Они там охуели?

Ответы76714

410 5 апр, 02:26 410 1375240

>>1375231
Время не критично, главное результат, поскролил апворк, ничего не понял, расброс цен большой как и почасовая оплата. Все еще не имею представления сколько должен стоить в конечном итоге продукт.

Ответы75363

411 5 апр, 05:36 411 1375252

>>1375161
помогло, сяп няша

412 5 апр, 07:50 412 1375276

>>1375148
если апи площадок имеется, но недолго
а цена зависит от деталей
ты пытаешься во фриланс и спрашиваешь, сколько тебе заломить, лол?

Ответы7527776100

413 5 апр, 07:51 413 1375277

>>1375276
сука, опять трендель не обновился

414 5 апр, 12:25 414 1375363

>>1375240
$2-5k

415 5 апр, 14:09 415 1375411

>>1374922

Так вроде бы из соснолей только на Xbox есть шарпей и дотнет, или нет?

416 5 апр, 15:22 416 1375441

Как поменять в richtextboxe каретку на _ (нитжнее подчеркивание)?

417 5 апр, 17:57 417 1375538

LINQ БОГИ ТУТ?
Вообщем в кнопке есть код, в котором лежат 6 экземпляров классов, со всякой мутью в конструкторах.
Хочу в другой кнопке делать запросы из этих экземпляров классов, это можно как то реализовать, без ctrl+c ctrl+v в код другой кнопки?

Ответы75561

418 5 апр, 18:33 418 1375561

>>1375538
сохрани эти экземпляры в виде полей формы и юзай их из другого хэндлера

Ответы75883

419 5 апр, 21:08 419 1375630

LINQ БОГИ ТУТ? (2)
>найти самое длинное слово из этого списка, а из всех самых длинных — лексикографически первое слово в одно выражение кортежами и linq.
>Не используйте методы сортировки
Я написал пока что:
return words
.Max(n => Tuple.Create(n.Length,n));
И че дальше, с чем мне его сравнить если я работаю со строкой или как задать нормальное условие?

Ответы7563175803

420 5 апр, 21:09 420 1375631

Алсо сам список это
IEnumerable<string> words
>>1375630

421 5 апр, 22:02 421 1375663

>Я не умею читать
Кто-то знает годные по Xamarin'у и в частности xaml'y гайд-видео/туториалы/курсы на русеке?

422 5 апр, 22:43 422 1375695

Что делает с массивом строк вот эта запись?
.GroupBy(word => word)?

Ответы75803

423 6 апр, 02:50 423 1375767

Нужно срочно решить задание на C# с помощью LINQ, не пойму каким образом разбить жильцов на подъезды с этажами и как вообще правильно решить. Огромное спасибо заранее.

Исходная последовательность содержит сведения о задолжниках по оплате коммунальных услуг, живущих в 144-квартирном 9-этажном доме. Каждый элемент последовательности включает следующие поля: <Фамилия> <Номер квартиры> <Задолженность> Задолженность указывается в виде дробного числа (целая часть — рубли, дробная часть — копейки). В каждом подъезде на каждом этаже располагаются по 4 квартиры. Для каждого из 9 этажей дома вывести сведения о задолжниках, живущих на этом этаже: число задолжников, номер этажа, суммарная задолженность для жильцов этого этажа (выводится с двумя дробными знаками). Сведения о каждом этаже выводить на отдельной строке и упорядочивать по возрастанию числа задолжников, а для совпадающих чисел — по возрастанию этажа. Если на каком-либо этаже задолжники отсутствуют, то данные об этом этаже не выводить.

Ответы7579175803

424 6 апр, 06:15 424 1375791

>>1375767
Это решается за пару минут и без всяких LINQ, а с LINQ выглядит как задача для школьников.

425 6 апр, 07:12 425 1375798

>>1372588
1. Всю дополнительную инициализацию формы лучше пихать в ивент хэндлер OnLoad. Конструктор может отработать несколько раз, а ивент OnLoad в подавляющем большинстве дергается лишь при непосредственной загрузке формы.
2. Имена классов - только в КэмэлКейсе.
3. Переведи енум на английский, дай значениям явные номера (0,1,2) и заведи аттрибут с дерганием его имени, куда ты и впишешь русское название. Затем напиши метод-расширение, которое дёргает указанное в аттрибуте имя енума.

426 6 апр, 07:32 426 1375803

>>1375695
Группирует их по ключу. В твоем случае ключами будет строка word, а значениями коллекция из строки word (сколько их там будет зависит от того сколько строк word в оригинальной коллекции). То есть ты получишь коллекцию уникальных строк и сколько раз эти строки встречаются в оригинальной коллекции.
{ жопа, пися, жопа, пися, жопа} -> { жопа => { жопа, жопа, жопа}, пися => { пися, пися } }

>>1375630
.groupby(n => n) - если слова повторяются (нужны только уникальные)
.groupby(n => n.lenght).max() - список всех самых длинных слов (одной наибольшей длины)
.min() - вернёт тебе первое слово по алфавиту (или чему оно там будет, т.к. сравнение через IComparable)

>>1375767
>Нужно срочно решить задание на C#
У тебя деньги есть?

Ответы7584176026

427 6 апр, 09:58 427 1375841

>>1375803
> { жопа, пися, жопа, пися, жопа} -> { жопа => { жопа, жопа, жопа}, пися => { пися, пися } }
Спасибо, с этого надо было и начинать!

428 6 апр, 10:59 428 1375862

>>1366885 (OP)
Господа, разъяснит кто-нибудь, как все-таки проводить интеграционные тесты? не надо затестить слой Бизнес Логики. На примере возьмем 2 функции: добавление пользователя и просмотр списка пользователей.
Я делаю тест Add(), в нем формирую сущность юзера (корректную, валидацию запилил уже юнит-тестами) и передаю в существующий слой Data Access Layer (Сейчас это у меня фейк, построенный на коллекции).
Так вот, потом я должен вызвать метод GetAll() или GetById(), чтобы проверить наличие юзера в базе и проверить его идентичность с тем, которого добавил или еще что-то?
У меня сейчас в классе создание объектов логик идет через обращение к свойству Специального Класса, в котором оно реализовано как синглтон. Т.е. в разных тестах я по сути буду работать с одним и тем же классом и с одной и той же коллекцией в ДАЛ слое.
Тут и начинаются непонятки.
1) Часть тестов валилась пока не запилил метод Cleanup(), который после каждого теста удаляет из коллекции все элементы. Но при тесте другого класса логики 1 тест валится при клинапе, а другой наоборот без него.
2) Один ментор мне сказал, что обращение к статик свойству через класс, это норма. Другой ментор сказал, что я тогда начинаю от него зависеть и надо вообще нарямую в тестовом классе создавать объекты и БЛ, и ДАЛ.

Правильно ли я начал вообще, и как лучше? Или почитать дадите где-нибудь, а то все размыто описывают или на MVC примеры приводят. У меня пока обычная 3х-слойка.
Заранее благодарю.

Ответы75957

429 6 апр, 12:06 429 1375883

>>1375561
если честно я не оч понял(

Ответы75890

430 6 апр, 12:16 430 1375890

>>1375883
Я не он, но думаю

public class TvoyaKnopka {
public NuzhniyClass {get; set;} =
DrugayaKnopka.ExemplyarNuzhnogoClassa;
...
}

В полях/свойствах своей кнопке ссылаешься на поля, которые содержат нужные классы в другой кнопке, если они, конечно, не private.

Ответы75932

18 Кб, 493x245
431 6 апр, 13:29 431 1375932

>>1375890
Я правильно тебя понял? А то у меня ничего не сработало(

Ответы75941

432 6 апр, 13:46 432 1375941

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

Ответы75981

433 6 апр, 14:26 433 1375957

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

Ответы75962

434 6 апр, 14:40 434 1375962

>>1375957
Чувак, у меня обычная трехслойка. Никаких контроллеров и запросов у меня нет и в душе не ебу пока, что это.
Валились не юнит, а другие интеграционные. Оказалось, когда я их разом запускаю, добавление напрмер происходит в одну статик коллекцию в фейковом ДАЛе и юзеры не проходили проверку по уникальности.
Теперь думаю, создавать ли каждый раз нового юзера с другими параметрами, или после каждого теста, удалять всех, чтобы одного и того же можно было добавлять.

Ответы76021

435 6 апр, 15:21 435 1375981

>>1375941
>И завязывай с линк синтаксисом, сейчас все методами расширения пишут.
Хорошо учту. А линкю потому что требование лабораторной

436 6 апр, 16:42 436 1376021

>>1375962
>трехслойка
обращаешься в ту часть приложения, что у тебя вывернута наружу. контроллер, сервис или хуй пойми что у тебя

437 6 апр, 16:54 437 1376026

>>1375803
>У тебя деньги есть?
Господи, какие же русские пидорасы.

>английский форум типо stackoverflow
- Ребята, вот такая проблема есть, помогите пожалуйста
- Да конечно fam, вот тебе решение, вот тебе совет, удачи в твоих начинаниях buddy:3

>русский форум
- Ребята, вот такая проблема есть, помогите пожалуйста
- ДЕНЬГИ ЕСТЬ А??? А ЕСЛИ НАЙДУ????? СОБАКА ТЫ КУДА ЛЕЗЕШЬ БЛЯДЬ ТУТ ВСЕ ЗАБИТО А НУ БЫСТРО БЛЯДЬ БРОСИЛ ВСЕМ ЭТИМ ЗАНИМАТЬСЯ ТЫ ЧЕ СУКА НА МОЮ РАБОТУ ПОЗЫРИЛСЯ МРАЗЬ Я ТЕБЯ БЛЯДЬ ЩАС ПРИКОНЧУ ГОВОРИ АДРЕС СЫН СОБАКИ

Ответы7603076373

438 6 апр, 16:57 438 1376030

>>1376026
Проходил мимо, хотел помочь, но с таким отношением точно нет. Удачи.

34 Кб, 429x423
439 6 апр, 18:50 439 1376100

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

Ответы76122

440 6 апр, 19:31 440 1376122

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

Ответы76129

441 6 апр, 19:45 441 1376129

>>1376122
Что не так с линком?

Ответы76162

442 6 апр, 20:28 442 1376162

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

443 6 апр, 22:24 443 1376264

>>1366885 (OP)
А какие вообще есть живые альтернативы asp.net core? Nancy кто-нибудь тыкал? Понятно, что asp.net - энтерпрайзный стандарт, но для маленьких любительских проектов хотелось бы что-то полегче. Подскажите что-нибудь пж.

Ответы76461

sage 444 7 апр, 01:02 444 1376373

>>1376026
>Господи, какие же русские пидорасы.

Свiнота, возвращайся в свой /ukr/.

445 7 апр, 02:40 445 1376422

Есть советы по wrapping внешних библиотек, написанных на крестах?

446 7 апр, 02:42 446 1376423

Акромя ЛИНКАа, Шершавый проебывает Жабе.

447 7 апр, 07:54 447 1376461

>>1376264
что значит полегче?
ServiceStack дает возможность RESTful сервис построить на базе себя, но не сказать, что он прям какой-то легковесный

Ответы76511

448 7 апр, 09:40 448 1376511

>>1376461
Полегче - именно что более легковесный и не перегруженный таким количеством нюансов. По аналогии с python: если asp.net это django, то что в дотнете bottle?

Ответы76557

449 7 апр, 10:57 449 1376557

>>1376511
хз, не питонист
все нюансы работают неплохо по дефолту из-под коробки асп.нетом. напиши свою логику в контроллерах и заюзай кестрел (это тебе не иис, который и правда целый мир). самый легкий и эффективный старт веб-приложухи на коре

450 7 апр, 15:01 450 1376714

>>1375236
Ясно, понятно

451 7 апр, 15:13 451 1376721

Есть некоторое количество свойств, какой вариант каноничен?
field1;
field2;
Property1;
Property2;

или

field1;
Property1;
field2;
Property2;

Ответы76836

452 7 апр, 17:33 452 1376792

Антоны, как и чем применяются фильтры в Asp.Net MVC?
В чем принципиальная разница между ними и аттрибутами типа [HTTPPost]

Ответы76836

453 7 апр, 17:50 453 1376798

Как там в формах пилить передвижение? Нужно передвиджение по нажатию на кнопку, чё за эту ересь отвечает?

454 7 апр, 18:05 454 1376809

Нужно исчезновение кнопок после наезда главной в координаты любой кнопки (по тупому, но написал). Аноны хелпуйте!

455 7 апр, 19:14 455 1376836

>>1376792
авторизация/аутентифиация, эррор-хэндлинг, логгирование
это по дефолту, как правило

>>1376721
филды
ивэнты
проперти
конструкторы
методы

приватные
протектед
интернал
публичные

Ответы77978

456 7 апр, 21:25 456 1376900

Что думаете о F#?

Ответы77511

457 8 апр, 01:45 457 1377030

Здравствуйте, возникло несколько вопросов, помогите пожалуйста разобраться.
1. - Память для статических данных (классы, методы и т.д.) выделяется также как и для динамических (ссылка в стеке на ячейку в "куче")? Можно ли использовать статический класс без создания объекта? Когда и где выделяется для него память? Если мы используем метод из статического класса, то память выделяется для всего класса или только для метода?
2. - Чем статический класс отличается от структуры, кроме того что класс является ссылочным типом?

Ответы77058

458 8 апр, 08:04 458 1377058

>>1377030
у тебя каша в голове шо пиздец, попробуй троелсена еще накатить разок

Ответы77124

459 8 апр, 12:16 459 1377124

>>1377058
А не рискованно троелсена с метанитом смешивать?

Ответы77126

460 8 апр, 12:20 460 1377126

>>1377124
если после троелсена полезешь на метанит, то, конечно, рискованно

461 8 апр, 14:25 461 1377175

Тут один умный товарищ проводит семинар https://m.habr.com/ru/company/clrium/blog/446510/ посвещённый памяти clr. Вопрос к понимающим, на сколько это будет полезно? Имею в виду, это для общего развития и понимания, или применимо ирл?

Сам вкатывающийся в asp.net ньюфаг.

Ответы77177

462 8 апр, 14:31 462 1377177

>>1377175
тонкости CLR - эти слишком сложна и нинужна для новичков. нинужна, в большинстве случаев в принципе, и для старичков. но, если будут рассказывать доступно и о насущных вещах, то послушай, хули тут?

Ответы77182

463 8 апр, 14:40 463 1377182

>>1377177
Вот я и думаю, хули тут? Но ведь я не профессионал, может это собрание для синьоров, а я припрусь и не пойму ничего?
Ну и меня волнует вопрос, это типа как на плюсах в нете можно памятью управлять? Или там о другом?

Ответы77187

464 8 апр, 14:52 464 1377187

>>1377182
ну управление памятью есть какое-никакое в дотнетах, но очень кастрированное, по сравнению с плюсами. есть сверхвырвиглазные способы, но они, наверное, чисто 4fun: https://habr.com/ru/post/423657/

да и в статье написано, о чем речь будет идти:
>Выделение памяти: все стадии этого интереснейшего процесса
>Все фазы работы GC (по 45-50-минутному докладу на фазу. Столько про GC не дадут говорить ни на одной конференции).
>Мы также поговорим про System.IO.Pipelines. Наталья Цвилих, моя коллега, расскажет про этот интерфейс много интересного.
>Я также затрону вопрос CLR MD. В прошлом CLRium я сделал отличную вводную. Теперь — поговорим подробно.
>И многое другое.
ни слова об управлении. а под многим другим, небось, какие-нибудь профилирования, диагностики и что-нибудь этакое поверхностно

465 8 апр, 15:31 465 1377197

Вопрос от нуба - мне нужно использовать код, написанный на крестах - http://viennacl.sourceforge.net/ - в шарп-проекте.
Одно дело сделать DLL самому, другое дело, что я не шарю, как сделать DLL из чужого C++ кода, тем более, когда там большое количество зависимостей.

466 9 апр, 04:30 466 1377511

>>1376900
F# это мировое будущее, активнейше развивающийся передовой функциональный язык.
Мало того, что он мультипарадигмальный так ещё и императивный и объектно-ориентированный.
Вот лучший обзор этого всего: https://dungpa.github.io/fsharp-cheatsheet/

Ответы7751277526

467 9 апр, 04:34 467 1377512

>>1377511
Алсо, как и все другие языки программирования - он позволяет ПРОГРАММИРОВАТЬ БЕЗОШИБОЧНОСТЬ, лол.

Ответы77585

468 9 апр, 06:56 468 1377526

>>1377511
>передовой функциональный, императивный и объектно-ориентированный язык
охуеть высер

469 9 апр, 10:31 469 1377585

>>1377512
Что?

84 Кб, 615x341
470 9 апр, 11:05 470 1377597

LINQ БОГИ ТУТ?
Ласт вопрос по этому линку отвечаю.
Вообщем из массивов экземпляров класса, мне вот то что выделил красным, надо сделать из этого отдельный массив.
В ручную создать новый с такими же данными не проканает

Ответы77615

471 9 апр, 11:47 471 1377615

>>1377597
.Select(n => n.3) - Селектор в котором ты указываешь куда там идут твои цифры
.ToArray() - Получаешь массив

Ответы77660

472 9 апр, 12:34 472 1377660

>>1377615
Спасибо няша ^_^

Ответы77663

473 9 апр, 12:38 473 1377663

>>1377660
Спасибо хуй не пососёт.

Ответы77800

474 9 апр, 13:26 474 1377700

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

Ответы77745

475 9 апр, 14:37 475 1377745

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

Ответы77914

476 9 апр, 16:15 476 1377800

>>1377663
Я пососу.

477 9 апр, 17:27 477 1377825

Да как блин текст в консоли выровнять?
Пишу допустим:
Console.WriteLine($"short:\t{1}\nlooooooooooooong:\t{2}");

И в итоге выходит нихуя не ровно, хотя \t везде есть.

478 9 апр, 20:09 478 1377914

>>1377745
Ну я вроде как понимаю что да нахуя.
> то тут сыглы
То тут что?

Ответы77915

479 9 апр, 20:11 479 1377915

>>1377914
>сыглы
https://teenslang.su/content/сыглы

275 Кб, 1118x1080
480 9 апр, 21:53 480 1377967

Анон мне по секрету достался древний двиг восьмибитной игры, полностью написанный на C#, ну а так как я ни разу не кодер, а скорее гавноартист, то решил моддить игру, добавить пару механик и апнуть графику этого убожества, перерисовать спрайты, задники, так вот дошёл до того момента когда нужно было выводить спрайты на экран и обосрался, узнав, что на C# а в частности в вижуал студии, не отображаются прозрачные картинки. Может кто сталкивался с подобным?
Перекатиться на юнити или годот прошу не советовать.

Ответы7797278116

481 9 апр, 22:03 481 1377972

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

Ответы77986

482 9 апр, 22:16 482 1377978

>>1376836
Я знаю какие фильтры существуют, но чем они вызываются?
Активатором действий, фабрикой контроллеров?

483 9 апр, 22:36 483 1377986

>>1377972
Ну да, совсем, так решение есть?

Ответы77997

484 9 апр, 23:06 484 1377997

>>1377986
Открыть спрайт в просмотрщике спрайтов, а не в вижуал студии.

Ответы78004

485 9 апр, 23:18 485 1378004

42 Кб, 739x73841 Кб, 684x564

>>1377997
Что? И как это мне поможет выводить прозрачные спрайты в моей прогге?

Некий анон посоветовал мне такой способ, но он ни разу не работает.

Ответы78005

486 9 апр, 23:22 486 1378005

>>1378004
Ты сказал, что проблема в вижуал студии, но при этом, кидаешь код. Ты ебобо вдвойне?

7 Кб, 889x147
487 9 апр, 23:58 487 1378019

Двач чому тут 7?
Первая итерация - т - сходятся.
н != а => добавляем а получается студенат и так далее и походу удаляем потом (или не потом) символы. В 7 действий анриал уложиться.
Или я что-то не понял?
https://ulearn.me/Course/BasicProgramming2/Rasstoyanie_Levenshteyna_48a29bee-2f02-42af-ad1f-df15fa48515b

Ответы7803778116

488 10 апр, 00:32 488 1378037

>>1378019
Я в 6 уложился:
1. студент - первая т =
2. судент - у =
3. сдент + о =
4. содент + л =
5. солдент - е =
6. солднт (н - > а) =
солдат

Ответы78039780457804778111

489 10 апр, 00:34 489 1378039

>>1378037
А я в три:
студент + мивина + гречка + промытые мозги = солдат.

490 10 апр, 00:44 490 1378045

>>1378037
Так ты не с конца потом начал идти, а так чтобы это было логично.

Ответы7804778105

491 10 апр, 00:45 491 1378047

>>1378037
>>1378045
И плюс, редактировать нельзя.

Ответы7810578111

492 10 апр, 03:01 492 1378105

>>1378045
>>1378047
Загуглил "редакторское расстояние", в итоге нашёл это:
https://ru.wikipedia.org/wiki/Расстояние_Левенштейна
Цитата:
>Расстояние Левенштейна (редакционное расстояние, дистанция редактирования) —
>минимальное количество операций вставки одного символа,
>удаления одного символа и
>замены одного символа на другой,
>необходимых для превращения одной строки в другую.
То есть, заменять символы - можно, одной операцией.

Ответы78108

493 10 апр, 03:10 493 1378108

>>1378105
С заменами вообще в 4 операции получилось, раз уж речь о минимальном количестве операций:
1. студент + (т - > о) =
2. coудент + (y - > л) =
3. солдент + (e - > a) =
4. солдант - н = солдат

Ответы78111

494 10 апр, 03:14 494 1378111

>>1378047
Ай, не обратил внимание на условие на пике.
Тогда замену в этих примерах: >>1378037 >>1378108
рассмотри как две операции - удаление одного символа и добавление другого.
И получишь на выходе - эту свою 7-ку.

495 10 апр, 03:30 495 1378116

>>1378019
>Двач чому тут 7?
сТУдЕНт -> сОЛдАт - 7 букв, 7 шагов. 4 удалить, 3 добавить.

>>1377967
В редакторе ты прозрачность и не увидишь. В рантайме прозрачность только к паренту. Если хочешь чтобы твои боксы друг к другу были прозрачны, то отрисовывай их сам в .Paint (событии, а не редакторе) холста, например с помощью DrawImageUnscaled.

Ответы78161

496 10 апр, 08:06 496 1378161

>>1378116
В редакторе ты прозрачность и не увидишь. В рантайме прозрачность только к паренту. Если хочешь чтобы твои боксы друг к другу были прозрачны, то отрисовывай их сам в .Paint (событии, а не редакторе) холста, например с помощью DrawImageUnscaled.

Хоспади хоть один адекватный анон. Спасибо, теперь буду знать в какую сторону воевать.

497 10 апр, 13:46 497 1378250

Привет шарписты, есть вопрос. Я ноунейм живу в мухосранске иркутская область. Изучаю шарп уже где-то год. Выучил основу, написал пару программ на wpf и winforms делал только на те темы, которые нравились и понимал. Перехожу на ASP.NET.
Паттерны MVC знаю, ибо работал с wpf и winforms, умею работать в Visual Studio.
Знаю как заливать и толкать проекты на гит, так же создавать и смержить ветку в мастер.
Знаю основы linq, получал запросы с бд.
Может скоро остановлюсь и начну js учить или entity framework, пока не решил.
Так вот, сам вопрос. Как мне прорваться в ближайшие большие города Красноярск, Новосибирск и найти работу? Хотел бы узнать как принимают на работу, как устроиться, что еще нужно подучить.
Спасибо

Ответы78295

498 10 апр, 15:00 498 1378295

>>1378250
Всмысле как? Как и все, отрываешь жопу от дивана и ищешь работу. Пиздуешь по вакансиям и собеседованиям. Единственно советую подучить команды гита, ибо когда я в феврале проходил собеседования для меня стало сюрпризом что я могу форкать и комитить А HR ЭТОМУ УДИВЛЯЕТСЯ! Хотя базовые скилы казалось бы. Видимо на рашкорынке вообще остались только JS дебилы.

Ответы7829778299

499 10 апр, 15:03 499 1378297

>>1378295
мы тоже умеем использовать гит
мимо джс дебил вкатывальщик

Ответы78300

500 10 апр, 15:04 500 1378299

>>1378295
Понятно, что нужно стучать в каждую дверь и проситься. Я живу в мухосранске, у меня просто нет вакансий шарписта или .net, я хочу узнать как перебраться в другой город.

Ответы78301

501 10 апр, 15:06 501 1378300

>>1378297
>мы тоже умеем использовать гит
Вопрос прямо с собеседования.
"Закомить в отдельную ветку корпоративного битбакета."

Ответы78302

502 10 апр, 15:07 502 1378301

>>1378299
Чел, я как-то смог найти в своём 50к мухосранске вакансию.

Ответы78303

503 10 апр, 15:07 503 1378302

>>1378300
>битбакета
буэ

Ответы78306

504 10 апр, 15:10 504 1378303

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

505 10 апр, 15:11 505 1378306

>>1378302
Ну вот видишь как мы быстро с тобой разобрались. А в энтэрпрайзе вот так вот, потому-что сейчас везде ДЖИРА и КАНБАН с АГИЛА, а битбакет в эту ебанину встроен.

506 10 апр, 15:13 506 1378309

https://2ch.hk/pr/res/1378307.html (М)
https://2ch.hk/pr/res/1378307.html (М)
https://2ch.hk/pr/res/1378307.html (М)
перекат

507 14 апр, 03:47 507 1380597

test

Тред утонул или удален.
Это копия, сохраненная 13 мая 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion