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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
C#/Сисярп/.NET Тред - Шапка эдишн #4 /csharp/ Банан 1355872 В конец треда | Веб
Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем 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/E8THe9Z1

Прошлый тред тонет здесь: https://2ch.hk/pr/res/1335434.html (М)
Банан 2 1355874
Варнинг, ничего из этого списка не читал и мб литература устаревшая.
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 1355874
Варнинг, ничего из этого списка не читал и мб литература устаревшая.
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 1355877
Бля, эта

>Да, он совершенно прав. Даже микрософт постепенно переходит с шарпа на тайпскрипт. К сожалению, самые крутые языки никому не нужны.


хуета должна быть под спойлером. Но зачем то правду скрывать?
4 1355890
>>1355865

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


Плотют мала
5 1355896
>>55872 (OP)

>Даже микрософт постепенно переходит с шарпа на тайпскрипт.


Чаво блять? Как тайпскрипт может заменить C#? Они вообще в разных лигах играют.
6 1355907
>>55896
nodejs же
тогда у шарпа останется единственная ниша - ынтырпрайз
7 1355914
>>55907

>nodejs же


Node.js может конкурировать с .NET, но не с C#. Смешали все в кучу.

>>55907

>тогда у шарпа останется единственная ниша - ынтырпрайз


Ты скозал? Ну все, теперь все послушают твое авторитетное мнение, бросят писать на C#, и он помрет. Ты же конечно знаешь лучше всех, и не можешь ошибаться.
8 1355923
посоны, что это за хуйня? Сисярп говорит, что 20 не равно 20.
9 1355934
>>55907
Опять ты, заебал уже, в вебе по скорости ноду ебет врот даже джанго какой-нибудь. От того, что 2.5 имбецила хотят писать бэк на том же языке, на котором они пишут свой кривой фронт, нихуя не поменяется, т.к. это нахуй никому не упало и в любом случае придется искать бэкендеров
10 1355935
>>55923
Так может одно это инт, второе стринг. Или децимал. Ты их типы вытащи и покажи что там
11 1355940
>>55907

>тогда у шарпа останется единственная ниша - ынтырпрайз


Если NodeJS откусит рынок ASP NET, то тырпрайза не останется.
>>55914

>.NET, но не с C#.


Кроме ASP NET ничего больше нету.
Десктопы и так мертвы,
>>55934

>в вебе по скорости ноду ебет врот даже джанго какой-нибудь


а юнити это просто юнити.
Когда же уже манячки поймут, что в 2019 году это не главное. А дальше будет еще хуже.
12 1355944
>>55934

>в вебе по скорости ноду ебет врот даже джанго какой-нибудь.


А вот это пиздеж.
13 1355946
>>55940

>Десктопы и так мертвы


Чо, охуел? WPF вполне себе живет.
14 1355950
Сап, мужичье, заебался я тут писать софт для микроволновак, и собираюсь перекатиться в ваш ламповый До-диез
Что интересует - я с 10 лет пишу на сишке, и работаю на ней уже лет 10, будет ли это приемуществом при вкатывании?
И второе я никогда не пользовался идешками кроме терминала, нужно ли перекатываться на винду, или есть на мак/линукс какие крутые опции?
15 1355951
>>55944
ок, с джанго сейчас пруфов подвезти не могу, хотя, точно видел сравнения, вот здесь, например, явно кор дал всем пососать
https://www.ageofascent.com/2019/02/04/asp-net-core-saturating-10gbe-at-7-million-requests-per-second/
16 1355963
>>55923
Он говорит, что утверждение "20 не равно 20" ложное.
17 1355986
бампану, что бы не потерять
18 1356021
>>55935
Вроде те же самые типы. Но я решил проблему тем, что сравнил хэши, а не сами обьекты.
>>55963
Выражение возвращает фолс, если два обьекта не равны. И оно почему-то возврвщает фолс при сравнивании 20 и 20.
19 1356024
>>55950
Шапку читать умеешь? Есть относительно швабодный вскод и проприетарный райдер. Ну и кривые плагины под вим/емакс.
20 1356046
>>56021

> Выражение возвращает фолс


Это если бы ты туда поставил оператор ==. А сейчас у тебя выражение «правда ли что двадцать не равно двадцати?»
21 1356048
>>56046
А, в глаза ебусь, у тебя там if. Так это, у вас в шарпе сравниваются объекты или ссылки на них? Потому что если это ссылки - вполне понятно почему у тебя if срабатывает.
23 1356052
>>56049
вангую какой нибудь XNA, там часто полигры нахуярено в одном классе на 50к строк
24 1356061
>>56052
Неа, цмска.
25 1356062
>>56061
Точнее модели для цмски.
26 1356079
>>56049

>Ряяяяяяяяяяяяяяяяяяяяя

27 1356095
>>56048

>Так это, у вас в шарпе сравниваются объекты или ссылки на них?


Ссылочные типы данных по ссылке сравниваются, значимые, по значению. Классы, интерфейсы, делегаты - ссылка. Флоат, инт, хуинт - по значению.
28 1356111
>>56095
То есть если я создам два обьекта с полностью одинаковыми параметрами, то они не будут равны?

Алсо, если все наследуется от object, то как int, который значимый тип, может быть наследником ссылочного object?
29 1356135
>>56111
Мамкин вкатывальщик, почитай про упаковку и распаковку. И про то, как считается на самом деле хэш. Дам подсказку - объект там вообще никак не участвует.
30 1356138
>>56111
Как создашь? Через new? Конечно нет, будет два разных экземпляра, на которые будут две разные ссылки
31 1356140
>>56111
Int будет в стеке, а object в куче
32 1356155
>>56135
Я уже понял, что он считается по ссылке. Хотя, почему это >>55923 с хэшем работает, а без него нет, я ебу.

Можно ли как-то получить хэш не от ссылки, а от того, что по этой ссылке находится?
34 1356391
Антоны, я правильно понимаю, что с методами BeginInvoke и EndInvoke процесс все равно блокируется?
Я пишу чат на сокетах, мне надо сделать так, чтобы клиент мог отправлять сообщения и принимать их от сервера, но без блокировки.
Можете подсказать, в каком направлении думать?
35 1356411
>>56391
А, все удалось, написал с помощью бегинов.
Но это вроде как старая тема, есть где-нибудь пример, как сделать все с использованием SocketAsyncEventArgs
36 1356441
>>56391
Какой процесс у тебя блокируется? Сервак слушает порт, приходит от клиента сообщение, читает, асинхронно обрабатывает, слушает дальше. Клиент слушает свой порт, при необходимости, отправляет сообщение на сервак, дальше слушает
37 1356462
Сисярпы, так как все таки передать объект класса по ссылке, в unsafe коде? ref CLASS obj - работает, а CLASS* obj - нет. Почему?
38 1356481
Сисярпач, нужен ультимативный гайд по кодинг-стайлу в C#. Где читать, что курить? Хочу чтобы код выглядил красиво и аккуратно. Не зря же я из плюсов сюда вкатываюсь, заебался от кракозябр.
39 1356502
Анонче, помоги.

Что курить, чтобы понять смысл .NET
Я уже заебался искать, что входит туда (кроме Шарпа), в каком порядке лучше ознакомиться с технологиями.
Я в конец запутался.
Хочу понять не только в теории основы .net, ну и хотя бы на практике чутка.

По вакансиям много где нужен .net, но вот что конкретно учить/читать/практиковать - я в душе не ебу.

Направь меня на путь истинный, анон, уже не раз выручал.

Спасибо!
tcpsocketclient.png4 Кб, 239x269
40 1356521
>>56441

>Какой процесс у тебя блокируется?


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

>Сервак слушает порт, приходит от клиента сообщение, читает, асинхронно обрабатывает, слушает дальше.


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

>Клиент слушает свой порт, при необходимости, отправляет сообщение на сервак, дальше слушает


А конкретнее? У меня все так работало, пока до асинхронности руки не дошли
41 1356553
>>56502
Троелсен С# 7.0 .Net 4.7
Рихтер CLR via C#
на первые 0.5 - 2 года хватит
42 1356558
>>56391
Для асинхронности у тебя чтение и запись в сокет должны быть в разных потоках. Если у тебя в разных и все равно что-то блочится то у тебя какие-то обычные дедлоки между потоками.
43 1356572
>>56521

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


Чо? Зачем на нее вешать ожидание? Вынеси ты это ожидание в отдельный метод асинхронный и ожидание делай await. А так конечно, у тебя будет блокироваться, по сути у тебя программа стопится и ожидает, пока сервак ответит или таймаут закончится. Представь, что у тебя там не ожидание ответа, а метод Sleep(10000), стоит. На десять секунд твоя программа будет просто на паузе.
44 1356676
Анчоусы, не обоссывайте ньюфага. Я уже всю голову сломал в попытках сделать это говно рабочим как надо.
Есть один простой считатель урона по типу "хп - урон от врага". Ебашу это говно через while - уходит в бесконечный цикл с одной итерацией. НО если я делаю всё то же самое, но только использую вместо "хп - урон" вот этот вот "хп--", то всё нормально считает до самого нуля. В чём может быть проблема? Кроме того, что я тупой дегенерат.
Вот скрины моей параши. Там где желтым помечено - там должны быть вон те 4 переменные выше, которые имеют такие же значения, что и в параметрах метода.
45 1356691
>>56676
поясняю: когда у тебя стоит хп-- у тебя нормально выполняется проверка health == 0. Потому что декремент -- отнимает по единичке. А если «хп = хп-урон» у тебя хп сваливается ниже нуля потому что здоровье не кратно наносимому урону. Замени проверку равенству нулю на проверку «меньше либо равно нулю» и все заработает.
cover1w600.jpg67 Кб, 600x872
46 1356754
Аноны, стоит ли читать то, что на пикриле? Отзывы в этих ваших интернетах говорят о том, что среднячок, но почитать хочется.
S90228-18095024.jpg21 Кб, 709x165
47 1356759
>>56754

>от циклов до массивов

48 1356888
>>56754
Васильев А. Н., залогинься
49 1356945
Что можно интересного на ASP.NET пописать? Не зря я ж его выучил.
50 1356952
>>56945
Любой контент для интернета
51 1356953
>>56945
spa имиджборду
52 1356956
>>56952
Например?
Я уже сделал простой проект, выводящий инфу из базы.
Сделал учебный пример интернет магазина.
Что еще можно сделать?
53 1356966
>>56956
Бочку. Напиши интерпретатор какого-нибудь скриптового языка.
54 1357008
>>56676
Много лишнего кода. Поменяй цикл на while(damageCalculated > 0), убери If, убери булевую переменную.
321321.PNG24 Кб, 825x270
55 1357119
Кто нибудь работал с библиотекой Interop для Word. Почему метод Documents.Open()ничего не делает а просто возвращает null ?
56 1357180
>>56481
Бамп реквесту, тонны нефти.
57 1357201
>>57119

>русек


Вот это рофел.
58 1357231
>>57201

>Вот это рофел.


>русек


Съеби на англоязычную борду, дебил
59 1357460
>>55872 (OP)
Есть метод
public HttpResponse method(HttpRequest request)
Он возвращает
return new HttpResponse(StatusCode.Ok, responce);
когда существует responce.
Иначе же, он возвращает пустой ответ:
return new HttpResponse(StatusCode.Ok, "");

Вопрос. Как не возвращать ответ, пока не появится responce, оставляя запрос - без ответа до тех пор.
60 1357461
Стоит ли смотреть это?

https://mva.microsoft.com/ru/training-courses/язык-программирования-c-часть-1--8669?l=MAuqZiG1_4404984382

https://mva.microsoft.com/ru/training-courses/язык-программирования-c-часть-2--8877?l=ATbUZg02_6104984382

Ну либо где можно что-то подобное и годное найти, плюсом будет если дается какой-либо сертификат (хз дает ли какие-то профиты в резюме)
61 1357488
>>57461

>Стоит ли смотреть это?


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

>хз дает ли какие-то профиты в резюме


нихуя не дает. Заведите аккаунт на гитхабе и выкладывайте туда свой код.
62 1357534
>>55872 (OP)
Для больших файлов изредка - срабатывает catch, в конструкции:
try
{
File.Delete(filename);
}
catch(Exception e)
{
Console.WriteLine("Файл используется другим процессом");
}

Как правильно удалить файл по таймауту?
Или же как убедиться в том, что файл не используется другим процессом, а потом удалить?
Или же, если всё ещё используется, то как узнать каким именно процессом он продолжает использоваться?
63 1357569
Напомните, аноны, при создании переменной классового типа при помощи оператора "ass", передается ссылка или создается новый независимый объект?
64 1357571
>>57569

>передается


>ссылка


>На


>новый независимый объект


>ass

65 1357580
>>57571
Хуйня, уже проверил, адреса переменных одни и те же.
66 1357647
try
catch
finally
Нахуя это финали нужно? Типо выполнится все равно, хоть тру, хоть катч, но по сути кто и для чего его использует?
67 1357650
>>57231
Какой же ты даун, лол.
68 1357654
>>57460
async Task<HttpResponse> method(HttpRequest request), внутри крутишь цикл, пока не получишь ответ.
69 1357724
>>57647
Самый банальный пример это блокировки, когда ты вначале try ставишь блок и затем тебе надо в конце в любом из случаев будь то катч или нормальное выполнение снять блокировку.
Или открыл ты файл на чтение и тебе надо обязательно его закрыть.
70 1357769
>>55872 (OP)
ОйтиБояри нид хелп
Вообщем есть формочка на ней аш 2 хридвью. Собственно как при двойном клике на перем хридью эта СТРОКА вставала в 2 хридвью?
71 1357816
Есть кто плотно работал с хибером? Отзовитесь плиз @juscko есть пара вопросов
72 1357833
Хочу прикрутит гуи своему консольному хеллоувроду ~5к строчек кода, но не знаю даже с чего начать. Что делать-то? Где можно по-быстрому прототип накидать?
73 1357835
Посоветуйте годных либ для автообновления софта под .NET Core.
74 1357870
Аноны, как справиться с этим: https://dotnetfiddle.net/o38B1l?
Ведь там не должно быть ошибки.
75 1357871
СИШАРПЫЧИ ПОМОГИТЕ
ООП
вот есть у меня 3-х уровневая иерархия классов, родительский класс абстрактный, реализовываю я значит в дочернем классе формулу, потом формулу из дочернего в дочерний дочернего, когда вывожу формулу, выводиться только формула, которую реализовал в дочернем дочернем.
Надеюсь понятно объяснил.
Вообщем чьто делать?
76 1357873
>>57870
Отбой вопросу, это я туплю жёстко уже.
77 1357906
Вопрос по винформочкам от ньюфага: какого хуя у меня не меняется текст лейбла? Я делаю простой метод: по нажатию кнопки - текст лейбла меняется на заданный пользователем из текст бокса. Вроде всё делаю как надо, а у меня ничего не меняется при нажатии на кнопку. Пытался гуглить - у всех всё нормально, а у меня через жопу. Я даун, да?
Пикрелейтед - сам блок метода и как я его вызываю. Где я обосрался, анон?
78 1357961
>>57647
В файнал, как правило, помещается логика по освобождению неуправляемых ресурсов. В нем должно быть минимум кода. Зачем это надо, когда есть кэтч? Причины есть. Finally выполниться и в случае если try отработал нормально без захода в cath и в случае исключения. Может быть несколько caсth'ей - finally выполнится в любом случае. В tyr или catch'e может быть выполнен возврат из метода (return) - finally выполнится. в кетче может быть логика по логированию или другая логика, которая сама может привести к исключению - finally выполнится. Захочется пробросить исключение дальше - пожалуйста, finally выполнится.
79 1357970
>>57906
Из твоих скринов ничего не понятно. Что это за переменные хуй проссышь, зато ясно одно: твой код - говно. Гоняешь форму по методам (если frm это форма), какие-то данные в классе программ, бррр. На правах ванги можно предположить: 1)Обработчик не подключен к кнопке. 2) Какого-то хрена ты сначала рефрешешь, а потом меняешь текст, почему?
Нахуя тебе цикл, если в итоге будет присвоено значение седьмого элемента? Почему не сделать это сразу?
И в конце концов, б-г дал тебе отладчик - пользуйся.
80 1357988
Как дебажить в VS программу с несколькими потоками? Жутко все лагает, 5 фпс в VS.
81 1358042
>>57988
меняй свой калькулятор на нормальный компьютер
82 1358043
>>58042
Но у меня рузен 2700. Одновременно по 2 виртуалки поднимаю, но с ебучим визуал студио не могу справится. Уверен что проблема в софте. Лагает когда работают несколько потоков параллельно.
83 1358091
>>58043
Жертва маркетинга, привет. Рязань это не процессор для работы.
84 1358131
>>57961
Нихуя не ясно объяснил
85 1358132
>>58043

>Но у меня рузен 2700


>рузен


Купил интел, нищенка
86 1358133
>>58132
Купи
быстрофикс
87 1358209
У меня есть сущность, у которой 6 первичных ключей, причем есть как string, так и int ключи. Как лучше организовать все это дело? Может добавить собственный ключ у этой сущности уникальный и, например, такие запросы как GetByID делать по нему? А то как-то стремно все это выглядит и не очень удобно.
88 1358279
>>56502

Bart De Smet C# 5.0 Unleashed - очень эдвенсд книга
Рихтер и Скит сосут по сравнению с ней
89 1358380
>>58131
Это потому что ты тупой ))))
90 1358485
>>58091
>>58132
Хуя школьники тролят. Посмотрю я как вы будете на своих кекогерцах но без ядер нормально работать.
91 1358498
>>57534
Посмотрел везде, где он используется, оказалось, что Bitmap лочит файл до .Dispose().
Пока создаётся Bitmap, файл нельзя удалить.
Поэтому, сделал так: файл - в ByteArray, байты эти - в MemoryStream, а потом уже - Bitmap из него.
92 1358570
>>58485
Но у меня 8 ядер в процике.
93 1358683
Как сделать так, чтобы определенный метод вызывался в точное время каждый день?
В гугле только каждую секунду советуют таймер перезапускать и чекать совпадает ли DateTime с тем, что нужно.
Неужели нет более адекватного способа?
94 1358704
>>58683
Планировщик Заданий же, специально для таких довнов как ты придумали
95 1358739
>>58704
Мне нужно, чтобы это на сервере было
96 1358752
>>58739
А на сервере что, не бывает планировщиков? Иди читай как cron пользоваться.
97 1358850
Антоны, мне нужно из представления передать данные в контроллер.
У меня страница, которая выводит данные, нужно, чтобы при нажатии на кнопку данные выводились в эксель.
Как можно передать модели напрямую в метод?
98 1358933
>>58850

>Как можно передать модели напрямую в метод?


public void MyMethod(model myModel)
99 1358975
Почему, блядь, хеловорлд занимает семь метров памяти? Чо за хуйня?

namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello world");
Console.ReadKey();
}
}
}
100 1359131
>>58975
Дебаг
101 1359216
>>59131
Чо?
102 1359222
>>58933
Я забыл указать, что оно в asp.net mvc
Из вьюхи нужно в метод действия передать
103 1359253
>>59222

>Из вьюхи нужно в метод действия передать


Ну делаешь гет запрос, чо как маленький то?
104 1359258
>>59253
Каким образом?
У меня есть страница, на ней таблица и ниже под ней лейбл и еще ниже кнопка "Печать".
Вот при нажатии этой самой кнопки у меня и должен скачиваться файл, что я генерю отдельным методом, я не понимаю, как мне из вьюхи передать.
105 1359275
Двач, для чего может быть понадобиться такой прием? В книге указано, что так можно, но не написано для чего.

if (obj is var _)
{
// Какое-то действие
}
106 1359277
>>59258

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


Тут тебе ajax юзать надо
107 1359279
>>59277
Зачем? В Asp.Net MVC есть FileResult
108 1359338
>>59275
Можно, но бессмысленно так как код недостижим.
109 1359347
>>59338
А в книге наоборот написано, что туда все будет попадать
110 1359428
>>59279
Короче, вынес все в отдельный статический класс и в статический метод передаю модель.
Это совсем криво или допустимо?
111 1359588
привет. я уже второй год работаю fullstack разрабом. ASP.NET + Angular.

у меня есть ощущение, что мое развитие остановилось. Я довольно плохо знаю базу C#, хотя неплохо разбираюсь в ASP.NET. уменю писать хороший и понятный код, знаю немного паттернов, но не часто их применияю. Алгоритмы вообще не знаю, не знаю этих сортировок наизусть и тп... плохо понимаю многопоточность, хотя работаю с ней. слышал и работал с DI и с ASP.NET Core.

мне кажется, что я топчусь на месте. очень хочу расти и развиваться. Кто-нибудь оказывался в моей ситуации? может мне нужно что-то почитать или задачки какие-то решать?
112 1359669
>>59588
Толстота.....
113 1359708
>>55907
Он под калбуком яві, тонні рабочих решений и проектов зачем нужен шершавій? Оракл или майкрософ как вендор один йух. Сам с# язік хорош особенно говнокодить в универе или писать веб простой, нет же как платформа кал поній.
114 1359717
>>59258
Я со всем разобрался, нужно выводить таблицу прямо в форме с помощью цикла for, перед каждым DisplayFor поставить HiddenFor и передать это Post запросом на метод действия, где передать эту коллекцию в другой метод, что сгенерит файл, а его уже вывести пользователя.
Вот теперь оно не нарушает принципы MVC
115 1359718
>>59717

>пользователя


пользователю.
Нет, мне серьезно нужно перечитывать о привязывании модели.
116 1359775
>>55872 (OP)
Шилдт Герберт » C# 4.0: полное руководство почему не работают примеры программы приведённые в книге?
117 1359786
>>59775

>почему не работают примеры программы приведённые в книге?


Например?
У меня, помню, в с++ за 21 день хеловорд не работал, опечатка была, это было забавно
118 1359791
>>59786
*/

using System;

class Example3 {

static void Main() {

int ivar; // объявить целочисленную переменную double dvar; // объявить переменную с плавающей точкой

ivar = 100; // присвоить переменной ivar значение 100

dvar = 100.0; // присвоить переменной dvar значение 100.0

Console.WriteLine("Исходное значение ivar: " + ivar);

Console.WriteLine("Исходное значение dvar: " + dvar);

Console.WriteLine(); // вывести пустую строку

// Разделить значения обеих переменных на 3. ivar = ivar / 3;

dvar = dvar / 3.0; -

Console.WriteLine("Значение ivar после деления: " + ivar);

Console.WriteLine("Значение dvar после деления: " + dvar);

}

}
118 1359791
>>59786
*/

using System;

class Example3 {

static void Main() {

int ivar; // объявить целочисленную переменную double dvar; // объявить переменную с плавающей точкой

ivar = 100; // присвоить переменной ivar значение 100

dvar = 100.0; // присвоить переменной dvar значение 100.0

Console.WriteLine("Исходное значение ivar: " + ivar);

Console.WriteLine("Исходное значение dvar: " + dvar);

Console.WriteLine(); // вывести пустую строку

// Разделить значения обеих переменных на 3. ivar = ivar / 3;

dvar = dvar / 3.0; -

Console.WriteLine("Значение ivar после деления: " + ivar);

Console.WriteLine("Значение dvar после деления: " + dvar);

}

}
119 1359806
>>59669
В чем толстота? Типичная ситуация, когда на проекте сначала быстро развиваешься, потом основные фичи запилены и ты можешь потом сидеть еще полгода шлифовать, добавлять мелкую хуйню, либо пилить однотипные апи на аспе. У меня примерно так же сейчас, но, надеюсь, скоро перекинут на другой проект.

>>59588
Меняй место работы
120 1359824
>>59791
ссылается на ошибку в dvar.
121 1359825
>>59791
У неё нет типа.
122 1359833
>>59824

>ссылается на ошибку в dvar.


Потому что она в комментарии у тебя
123 1359944
>>59833
Это копипаст с книги, они чего там наёбыват ньюфагов?
так как правильно выглядит код?
124 1360012
>>59944
int ivar; // объявить целочисленную переменную
double dvar; // объявить переменную с плавающей точкой
Перенести на следующую строку, так как все что после двойного слеша в строке - это комментарий
125 1360026
>>59708

>хрююю уии

126 1360141
>>60012
Ну я и дебил. Спасибо за помощь.
15392061551940.jpg47 Кб, 633x640
127 1360166
>>55872 (OP)
Сап, сишарпаны. Нужно написать прогу мониторищую сервер\другой комп. Суть в том что я совсем не знаю как подойти к делу и единственное решение что приходит в голову это ебашить все через cmd запросыбэкап,мониторинг задач и тд. Поэтому хотелось бы спросить совета в какую сторону стоит идти и что использовать. С меня как обычнонихуя
128 1360188
>>60166
Делаешь клиент-сервер, на сокетах. А вообще такого в интернете полно.
image.png47 Кб, 626x640
129 1360348
Иерархия пикрил. У процесса куча модулей, у модуля куча интерфейсов, у интерфейсов куча таблиц. Как мне сделать так, чтобы не таскать за собой ебучий объект класса Process? Во всех остальных классах мне нужен функционал memory operation.
130 1360349
>>60348
У каждого модуля 1 интерфейс.

быстрофикс
131 1360368
Шарпаны, как заставить себя учить яваскрипт?
Я все пытаюсь, но у меня что-то совсем нет желания заниматься им, сколько вообще книг Кантора мне надо прочитать, чтобы можно было на собеседование идти?
Раньше думал, что Рихтер - тягомотина несусветная, а теперь он кажется очень понятным и простым
132 1360381
>>60348
Сделай статичный хелпер класс с классом Process.
133 1360383
заебал .net, особенно, попытка засахарения итак засахаренного компилятора в новых версиях, а также вот это до сих пор пограничное состояние .net core
хотел укатиться в другой язык, но пока не довкатился, надо поддерживать уровень на этой платформе. а мотивации, сука, никакой

просто знайте это
134 1360391
Здесь наверняка есть люди, которые хорошо изучили С#. Расскажите, как конкретно вы его изучали?
135 1360392
>>60391
читаешь книги - пишешь код. другого способа не придумали
ну и работать на проектах с реальными требованиями >>>>> чем обмазаться уберрихтерами и пилить свой васяноconsoleapp
136 1360393
>>60383

>пограничное состояние .net core


В каком месте оно пограничное?
2.1 - LTS.
Уже полгода пишем проект на коре - полет нормальный
>>60383

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


Кек
>>60383

>знайте


Единственный минус который сейчас есть на дотнете - полное отсутствие вакансий на чистый бэкэнд. Раньше было тоже самое, сейчас с этим еще хуже, все больше приходится пердолить фронт.
Рынку нужны фуллстаки, на дотнете тем более. В жабе с этим как-то попроще.
137 1360395
>>60392
У меня просто уже был опыт в программировании, как-то основы изучаю, дальше не понимаю что делать. Но я по каким-то видео учил на ютубе. Сейчас попробую тогда книги в шапке прочесть
138 1360398
>>60393

>В каком месте


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

>>60395
возьми задачу попроще и запили её. читать ты заебешься, и ничего не запомнишь к тому же
139 1360458
>>60398

>не самые васянские фреймворки не спешат суппортить кор


Чего именно тебе не хватает? Нюгет завален солюшенами.
>>60398

>достаточно редки


Я не знаю что у вас там редкое.
Наша часть сеньеров обожглась от 1.0 из-за чего писали на MVC5. С релизом 2.0 все стало на свои места и все довольны.
>>60398

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


Так и есть. Он сейчас только под десктопы и легаси.
>>60398

>вакансий с кором не так уж и много


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

В целом, зеленым действительно делать здесь нечего. Язык и платформа вымирают и по итогу получится паскаль 2.0
140 1360514
>>60381
Это точно правильное решение?
141 1360539
>>60458

>Чего именно тебе не хватает?


я навскидку только вспомню MassTransit с ажуровской шиной сообщений. там, причем, не в самом MT сложности, а с зависимостью. еще было похожее решение из мира message driven, но уже сложно вспомнить.

>>Он сейчас только под десктопы и легаси.


"только" это слишком громкое заявление

>>всегда было мало вакансий на фоне той же жабы, жс и пайтона


причем здесь фон каких-то васянских языков? относительно фреймворка работы с кором пока что еще очень мало
142 1360549
я пишу шарпике. выбираю себе ноутбук. Очень нравятся макбуки, но я пишу на шарпике. Что делать?

так же интересно, если ли шарписты, которые пользуются линуксом?
143 1360554
>>60549
давно жив mono
с недавних пор родили .net core
мои экс-коллеги, непонятно зачем, покупали маки и ставили на них винды шобы на дотнете писать
144 1360689
>>60554

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



мне тоже нравятся маки, но такой херней я стардать не хочу. интересно, как аноны шарписты кодят на маках? удобно ли?
145 1360695
>>60689
Я с месяц назад поставил Xamarin на свой мак, написал приложульку под iOS. В принципе норм работает. Вижуал Студио коммьюнити чутка багованная правда, после ухода компа в спящий режим отваливается автодополнение кода.
146 1360762
>>60393

> Единственный минус который сейчас есть на дотнете - полное отсутствие вакансий на чистый бэкэнд. Раньше было тоже самое, сейчас с этим еще хуже, все больше приходится пердолить фронт.


> Рынку нужны фуллстаки, на дотнете тем более. В жабе с этим как-то попроще.


Да нет, все норм с этим, в США много вакансий. А если в рашке начал учить C# чтобы бэк писать - то сам себе злой буратино. У нас шарпы даже с фулстаком не нужно особо.

Хочешь бэк - учишь жаву. Хочешь фулстек/на фрилансе работать - учишь пхп и яваскрипт. Хочешь пилить игры - учишь шарп и скачиваешь юнити. Глупо учить шарп и ныть, что он у нас не нужен бэк писать.
147 1360768
>>60762
так куда эти самые пиндосы аутсорсят свои шарпы с бэкэндом?
148 1360797
>>60348
Исходя из того, что неизвестно, что у тебя там происходит можно посоветовать только класс глобальной видимости (одиночка/моносостояни/статический клас), можно прикрутить локатор или что-то подобное. Но что бы грамотно разрулить ситуацию нужно понимать что как и почему так, возможно у тебя вся архитектура говно.
149 1360809
>>55872 (OP)
Как воможно сделать нечто наподобие:
new WebProxy(socks5 proxy);
Чтобы качать файлы через TOR?
150 1360822
>>60797
Я показал что происходит. Все остальное вычисления внутри классов не так важны. Программа выполняет обход процесса. Сначала извлекает из него все модули, далее парсит эти модули, находит экспортируемые функции для каждого модуля, создает для них интерфейс и делает обход виртуальных таблиц. Тоже думал на счет синглтона, но не уверен. Поэтому спросил тут. Статический класс не хочу делать, их вообще кто-нибудь использует?
151 1360848
>>55872 (OP)
Аноны, я принёс вам метод Питера Гутмана для гарантированного удаления файлов:
Тут исходник: https://github.com/username1565/Gutmann
Бинарник - тут: https://github.com/username1565/Gutmann/releases

Исходник - простой, как угол дома. Но у меня есть вопросы.
Если вы посмотрите туда, там сделано так:

>//затирание Методом Гутмана, затем


>confirm_text = "Delete this file?";


>if(PromptConfirmation(confirm_text)){//by default


>try{


> File.Delete(fileInf.FullName);//Try remove the file


//код...
При этом файл затирается в 35 проходов.

Если же сделать так:

>bool delete = true;


>if(delete==true){//


>try{


> File.Delete(fileInf.FullName);//Try remove the file


>//код...


то пишет, что файл затёрся, и файл даже удаляется, затем,
но по смещению на диске, где находился удалённый файл - видно полный его исходник в WinHEX'e.
Почему так?
152 1360850
>>60848
Батеньки, да это же первая имплементация сего алгоритма на сиярп - на всея гитхабе, лол.
153 1360851
>>60848
Удаляй файл через NtDeleteFile.
154 1360854
>>60851
А как это правильно сделать?
155 1360872
>>60822

>кто-нибудь использует


наслушался говна, что только индусы юзают статик?
для всего есть свое применение. экстеншены, хелперы, общая логика - это прям первое, для чего нужны статические методы/классы
156 1360912
Есть у кого ключ на 19 поделитесь плез, у меня лицензия истекла
157 1360941
Поясните про try-catch-finally. Читал в книжках, но не всё понял.
Значит "обработка исключения" - это то что мы указываем в разделе catch. Вот если я хочу, чтобы в случае неправильного ввода числа, пользователю было предложено ввести заново, то что я должен написать в раздел catch? После обработки происходит возврат в try на строку после возникшей ошибки? То есть для моей задачи нужно сделать цикл while пока не введут верно?
158 1360961
>>60941
Не надо использовать исключения для обработки пользовательского ввода. Пользователь туп и может ввести любую хрень - это обычное явление и ты должен это нормально обрабатывать. Вот если неверные данные прошли в бизнес логику тогда да - исключение. В твоём случае надо использовать TryParse, если надо перевести строку в число, и метод Check/Validate который покажет допустимо ли значение.
159 1360962
>>60912
Чего тебе в коммунити не хватает?
160 1360964
>>60961
То есть try-catch для проверки деления на 0 и прочих подобных ошибок. Правильно?
161 1360965
>>60964
Типа того.
162 1360980
>>60964

>То есть try-catch для проверки деления на 0 и прочих подобных ошибок


Он для того, чтобы ты сам мог бросить исключение и обработать его. финалли никто не знает для чего нужен, кстати
163 1360998
>>60980

>никто не знает


))
164 1361015
>>60998

>))


Расскажи, где ты его хоть раз использовал, псина?
165 1361071
>>61015
там, где мне нужно выполнить какую-то операцию, не смотря на результат основной логики. а ты, долбоеб, сам не понял еще?
166 1361081
>>61071

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


Это все хуета из книжек, практический пример будет или ты слит, унижен и обоссан
167 1361082
>>61081
хуя мамкины синьоры итт без фантазии

открываешь коннекшн с базой данных, в try выполняешь запрос, в finally дропаешь соединение
168 1361083
>>60872
Так что делать-то блять! Класс процесс не может быть статическим. Вдруг я еще один экземпляр захочу сделать? Думал, может наследоваться от него, но тогда с инкапсуляцией проблемы.
169 1361093
>>61083

>с инкапсуляцией проблемы


какие проблемы? ты не хочешь, чтобы код, использующий Interface/Module/etc. знал о процессе-паренте?
навскидку, заебашь себе абстрактный класс типа ProcessOwnableItemBase, у которого наружу вынесен метод, в себе дергающий this.Process.MemoryOperationGovno()
170 1361125
>>61093
module/inteface/etc нужна часть функционала process (memory operations на скрине), но не весь остальной функционал.
171 1361152
>>60809
бумп
Стикер512x512
172 1361162
>>61152
Ну можно. А тебе зачем?
173 1361177
сап, аноны. подскажите плиз, как в GroupJoin выбрать только пустые группы?
174 1361207
>>60912
Там тупо тыкаешь продлить и она до середины лета у меня продлилась
175 1361282
>>55872 (OP)
Хочу намутить себе, на C#, прогульку для RSA енкрипта-декрипта больших файлов.
Без AES и прочих симметричных шифров.
Подскажите какой BigInteger наиболее годный для этих целей?
176 1361283
>>61162
Чтоб качать файлы через TOR, очевидно же.
177 1361304
>>61125
я хз, попробуй вынести функционал Process в типы, где он действительно нужен. а Process принимай параметром, если нужны какие-то его данные
тут вряд ли есть проблемы с инкапсуляцией. ты не сможешь изолировать метод от метода, если первый используется только одним потребителем, второй - только другим, без костылей или безосновательного переусложнения простых вещей (в твоем случае все относительно несложно)
178 1361312
Изучаю паттерн MVVM, кто-нибудь может мне объяснить, нахуя создавать отдельный класс ViewModel, если по дефолту у каждой View есть свой code behind?
179 1361333
>>61282
Еле нашёл на github'e RSA для файлов, но таки нашёл, подправил исходник и заебенил с этого - рабочий код: https://github.com/bokdong2/rsaVault
Бинарники - тут: https://github.com/username1565/rsaVault/releases
Плюс 32-битный exe-шник.
Аноны, хуле оно так медленно декриптит?
20 мегебайт видос "Pet Shop Boys - 'Twenty-something' (Official Video).mp4"
Минут 15 декриптило, проц от этого - жутко свестел и пердел...
Я понимаю, что (m^e mod N) быстрее вычисляется, чем (c^d mod N), но не думал, что декрипт НАСТОЛЬКО медленнее енкрипта.
Может туда какие-нибудь методы Карацубы напихать?
Нашёл вот такой, недопиленный cs, без Main: https://github.com/carchok/RSA/blob/master/RSA.cs
там есть методы для работы с RSA - в частности метод быстрого возведения в степень по модулю: modPow
Может внатуре заюзать нечто, вроде методов BigInteger?
180 1361338
>>61333
RSA для подписи, а не для шифрования.
181 1361339
Если ты RSA шифруешь файлы, то ты не осилишь Карацубу, довн.
182 1361343
>>61339
Схуяли довн?
И да, ведь осилил, тут: https://github.com/username1565/BigInteger.js/blob/81fc87dffcb4722257f3dc21c314d52d322ff14e/BigInteger.js#L304
И даже алго Диффи-Хеллмана на BigInteger'ах запилил: https://username1565.github.io/BigInteger.js/Diffie_Hellman_Key_Exchange_BigInteger.html
Но это всё JS. А здесь - решётка...
183 1361345
>>61338
Для - подписи EСDSA, А RSA - в том же PGP шифровать может: https://username1565.github.io/pgp/
184 1361356
>>61343

>JS


Переписывай под fpga на верилоге.
765f274052055.jpg131 Кб, 1024x687
185 1361396
Объясните, пожалуйста, на пальцах, что такое yield return?
187 1361410
>>61312
этот code behind не должен сожержать бизнес-логику, а только вызов васянских сервисов и конвертацию доменной модели в модель вьюшную. идеал mvvm wpf-шного -- это отсуствие кода в ~Window
188 1361416
>>61396
yield заставляет компилятор написать итератор за тебя.
189 1361429
>>61312
Чтоб отвязать представление от логики. В итоге получается лучшая поддерживаемость кода, можно писать юнит-тесты для вьюмоделей и вся работа по обновлению данных переходит фреймворку и его системе биндингов.
190 1361518
>>61410

>этот code behind не должен сожержать бизнес-логику,


И так не пишите ее в code behind и все.
191 1361530
Антоны, как мне нормально реализовать удаление?
Проблема в том, что я могу удалить из одной таблицы, но тогда другая таблица будет ссылаться на то значение, которого не существует.
Например, есть таблица "Команды" и таблицы "Игроки", связаны они отношением многие ко многим. Когда я удаляю игрока, то промежуточная таблица будет ссылаться на несуществующего игрока, следовательно я не смогу вывести его в своем приложении.
Надеюсь, что вы все поняли, как это реализуется в нормальных приложениях?
У меня есть мысль добавить в таблицы столбцы, что будут содержать значения 1 и 0 и при удалении в таблице будет просто устанавливаться значение 0 и пользователь не будет видеть его больше
Я
192 1361539
>>61518
поздравляю. ты только что presentation-шаблоны

>>61530
ты
удаляешь зависимые значения @ удаляешь нужное тебе значение
если 0/1 относится к Игрокам и Командам в одинаковой степени, то как вариант. но не думаю, что есть смысл хранить мусор в твоем случае
но я так понимаю, у тебя нет физической связи между таблицами? такое имеет смысл в продакшн проектах при необходимости, но это, скорее, не самая лучшая практика в общем случае
193 1361540
>>61539

> но не думаю, что есть смысл хранить мусор в твоем случае


Мне в проге нужно будет выводить отчеты, проводить аналитику и статистику
194 1361546
>>61540
значит, неправильно думаю. это называется Soft deletion, заводишь поле в таблице IsDeleted и основная логика работает с теми значениями, у которых IsDeleted = 0
195 1361555
>>61546
А какие еще подходы существуют?
196 1361624
>>61555
ну, например, есть основная(ые) таблица(ы), где происходит операции бизнес-логики. на триггерах (или другим любым удобным механизмом) весь CRUD рефлектится на денормализованную таблицу отчетов
особых приседаний в основной логике это не требует, но при изменении отчетов неиспользованные исторические данные ты уже никак не заюзаешь

еще я только у одного долбоеба видел реализацию дублировать данные в таблицах с префиксом Archive. соотстно в коде приходится вставлять и изменять данные в двух таблицах синхронно, удалять только из основной. репорты, как не трудно догадаться, берутся из архивов. челик считался сеньором в конторе. видимо, за особые заслуги перед родиной
197 1361627
>>61282
Сейчас бы RSA файлы шифровать. Совсем ебнулись уже?
198 1361642
Почему в сисярпе так мало инструментов для системного программирования под шиндувс? Почему я должен даже банальные обертки над винапи делать сам? Пиздец же.
199 1361650
есть ли разница между этими записями?
200 1361671
>>61650
Есть. Во 2 случае лист копируется в переменную и потом еще раз во время цикла.
201 1361672
>>61642
Потому что это не язык системного программирования.
>>61650
Нет. Возможно в релизе компилятор даже уберет лишнюю переменную, посмотри декомпилятором.
202 1361673
>>61671
Чего блять? Всё что делает форич это получает енумератор и вызывает на нем MoveNext до посинения. Какое копирование?
203 1361676
Поцаны, у меня есть впф окно с попапом. Сейчас, чтобы закрыть окно если открыт попап надо щелкать два раза, один где-нибудь, чтобы закрыть попап, второй раз по крестику, чтобы закрыть окно. Можно сделать, чтобы закрывалось сразу, типа чтоб попап не учитывался?
204 1361698
>>61672
Сишарп вообще нужен где-нибудь помимо тырпрайза?
205 1361704
Смотрю вакансии. Так как пора бы уже на галеру.ДС-2
ОПЫТ РАБОТЫ 3 ГОДА, ЗП 50 ТЫЩ
ОПЫТ РАБОТЫ 5 ЛЕТ, ЗП 100 ТЫЩ

Ахуели совсем блять? Я у бабы сраки в рестике посуду мыл больше получал. Пиздец какой-то нет?
206 1361733
>>61356
Чё уж сразу не на Q# - под оптические FPGA, квантовые компьютеры и спинорные GPU-акселлераторы.
207 1361756
>>61704
ты че долбоеб? я полгода назад пошел на аспнеткор 70к, чисто ебанул в качестве тестового рестуху из фримана почти, только с моделями, которые попросили, сейчас уже думаю просить повышения, т.к. я охуел и считаю, что 70к мало.
208 1361762
>>61756
Я то почему долбаеб? В Дс-2? Почему мне тогда такие бомже-вакансии показывают?
209 1361788
Антоны, у меня какой-то пиздец, значения ни в какую не хотят вставляться в базу.
Сперва был косяк с тем, что заместо русских символов вставлялись знаки вопроса, потом у меня отказалась работать вставка даты, запрос правильный.
Причём он сперва работал, а потом отказался работать, послав меня нахуй, я уже практически все перепробовал
210 1361790
>>61788
Откуда ж нам знать-то?
Закинь свой код в github или rextester хотя-бы.
211 1361823
>>61788
>>61790
Таки я разобрался, ошибка была не в дате, а в том, что у сишарпа и у sql немного разные decimal.
212 1361843
>>61762
Ищи нормальные места
Мимоджун за 75
214 1361855
>>61854
Это где такое?
Чет очень легко.
216 1361858
>>61856
Это точно мидл/синьйор?
217 1361859
>>61856
Они, блять, серьезно? Это на мидла?
Я для стажировок видел тестовое труднее было
218 1361861
>>61858
Ну теоретически, на таком можно отсеять говнокод и грязнокод и идти на интервью.
219 1361868
Как создать шаблон asp.net core react redux, но. Использованием тайпскрипта? А то, видимо, сейчас перешли на шаблон js
220 1361871
>>61856

>дотнет4, асп


ебать, я уже представляю себе с какими монстрами-проектами там работать придется
221 1361904
>>61429

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


Блядь, где смысл? Хули там у тебя отвязано, если вьюха все равно к конкретной вьюмодел привязана. Ну пиши юнит тесты к code behind, кто тебе не дает?
>>61410

>идеал mvvm wpf-шного -- это отсуствие кода в ~Window


Я это знаю, но понять не могу почему? Ну нахуя мне создавать отдельный класс вьюмодели и так же точно во вьюхе цепляться к ее свойствам, когда есть code behind, в котором все это можно точно так же прописать?
222 1361905
>>55872 (OP)
ньюфаня в треде

получаем все Молы которые есть в бд

> cmd.CommandText = "select * from МОЛ";


cmd.ExecuteNonQuery();
DataTable dt1 = new DataTable();
OleDbDataAdapter da1 = new OleDbDataAdapter(mol);
da.Fill(dt1);
foreach (DataRow dr in dt1.Rows)
{
comboBox2.Items.Add(dr["ФИО"].ToString());
comboBox1.Items.Add(dr["Код"].ToString());
}

con.Close()
хочу что бы при выборке в комбобоксе отоброжались те мц которые за ним закреплены

> public void comboBox2_SelectedIndexChanged(object sender, EventArgs e)


{
OleDbCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT МЦ.Наименование_товара, МЦ.МОЛ FROM Подразделение INNER JOIN (МОЛ INNER JOIN (Ед_Изм INNER JOIN МЦ ON Ед_Изм.Код = МЦ.Единица_измерения) ON МОЛ.Код = МЦ.МОЛ) ON Подразделение.Код = МЦ.Подразделение WHERE (((МЦ.МОЛ)='"+ comboBox1.Items +"')); ";
con.Open();
cmd.ExecuteNonQuery();
con.Close();
DataTable dt = new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(dt);
dataGridView1.DataSource = dt;
}
если вместо комбобокситем задаю жестко то все хорошо а если нет то говорит не соответствие типов данных иди нахуй. ЧЯДНТ?
222 1361905
>>55872 (OP)
ньюфаня в треде

получаем все Молы которые есть в бд

> cmd.CommandText = "select * from МОЛ";


cmd.ExecuteNonQuery();
DataTable dt1 = new DataTable();
OleDbDataAdapter da1 = new OleDbDataAdapter(mol);
da.Fill(dt1);
foreach (DataRow dr in dt1.Rows)
{
comboBox2.Items.Add(dr["ФИО"].ToString());
comboBox1.Items.Add(dr["Код"].ToString());
}

con.Close()
хочу что бы при выборке в комбобоксе отоброжались те мц которые за ним закреплены

> public void comboBox2_SelectedIndexChanged(object sender, EventArgs e)


{
OleDbCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT МЦ.Наименование_товара, МЦ.МОЛ FROM Подразделение INNER JOIN (МОЛ INNER JOIN (Ед_Изм INNER JOIN МЦ ON Ед_Изм.Код = МЦ.Единица_измерения) ON МОЛ.Код = МЦ.МОЛ) ON Подразделение.Код = МЦ.Подразделение WHERE (((МЦ.МОЛ)='"+ comboBox1.Items +"')); ";
con.Open();
cmd.ExecuteNonQuery();
con.Close();
DataTable dt = new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(dt);
dataGridView1.DataSource = dt;
}
если вместо комбобокситем задаю жестко то все хорошо а если нет то говорит не соответствие типов данных иди нахуй. ЧЯДНТ?
223 1361944
>>61698
Есть asp.net для веба, юнити для геймдева, xamarin для мобильных приложений.
224 1361945
>>61904

>Я это знаю, но понять не могу почему? Ну нахуя мне создавать отдельный класс вьюмодели и так же точно во вьюхе цепляться к ее свойствам, когда есть code behind, в котором все это можно точно так же прописать?


потому, что это ООП и все есть класс. ну а так же потому, что S.O.L.I.D., KISS, слабая связность и прочая хуита, которой очень любят подрочить на собеседованиях. пока у тебя каждый тип занят какой-то одной задачей, твое приложение без каких-либо ограничений по размерам, сложности логики и древности стека достаточно легко расширяется, модифицируется, и, главное, понимается другими человеками.
тебе никто не мешает писать через button1_Click, протаскивание Form1 в бизнес-логику, дергания базы данных из вью и так далее. и, даже имея десяток функций твоего приложения и пару тыщ строк кода тебе будет относительно просто его поддерживать. но бизнес, не без исключений, хочет чего-то сложнее и долгосрочнее. ну, а главное, дешевле в саппорте

>>61905

>+ comboBox1.Items +


ты посмотри на свой cmd.CommandText. вангую, увидишь много чего интересного
225 1361948
>>61945

>ты посмотри на свой cmd.CommandText. вангую, увидишь много чего интересного


да хз, этот запрос мне сгенерел аксес и там все хорошо выводится, логика такова: я выбираю в комбобоксе мола и автомат грид выводит всю инфу. Пошаманиф я добился что при выборе мола он мне пустой грид выводит. Куда смотреть я уже хз
226 1361951
>>61905
Нахуй тебе этот sql? Монгодб охуенен, перешел на него - выпилил дохуище строк кода и ебашу запросы с помощью linq. Да и концепция документов удобнее, чем таблиц.
227 1361952
>>61951
это аксес детка таков выбор защиканца заказчика
228 1361961
>>61905
отбой я дибил помогло это + comboBox2.SelectedItem.ToString() +
229 1361978
>>61945

>потому, что это ООП и все есть класс


Ну, а code behind это не класс что ли? Класс, причем специально для этого и созданный, автоматом.

>ну а так же потому, что S.O.L.I.D


И какую букву я нарушу, если вместо вьюмодел ебану это все в code behind?

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


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

>Монгодб охуенен, перешел на него - выпилил дохуище строк кода и ебашу запросы с помощью linq


Я для тебя открытие, наверное, сделаю, но уже сто лет как есть entity framework, чтобы к sql ебашить запросы с помощью linq
231 1361993
>>61978

>И какую букву я нарушу, если вместо вьюмодел ебану это все в code behind?


Блядь ебаный дегенерат, иди на хуй с такими вопросами, гуглом научись пользоваться, мразота тугорогая.
1.jpg92 Кб, 716x695
232 1362012
>>61993
Ты если нихуя сам не знаешь и объяснить не можешь, то зачем рвешься то?
233 1362021
>>61951

>Нахуй тебе этот sql? Монгодб охуенен


dolboebs never change

>>61978

>Ну, а code behind это не класс что ли? Класс, причем специально для этого и созданный, автоматом


ну, это слой ващет. может, у тебя и один клас за все отвечает. но это уже спагетти

>И какую букву я нарушу, если вместо вьюмодел ебану это все в code behind?


S

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


откуда она у тебя там есть? если ты каким-то фреймворком пользуешься или бутстраппером, я тебе ничем ответить не могу. ну или ты делаешь VM к VM. когда я тебе ничем не могу помочь )
234 1362031
>>62021

>Класс, причем специально для этого и созданный, автоматом


я только сейчас допер, что под code behind ты называешь Window1.cs, который рядом с xaml генерится. так что-ли?
235 1362034
>>61978
S - потому что у тебя класс mainwindow будет отвечать за всю возможную логику, начиная от открытия файла заканчивая валидацией модели
O - потому что ты полезешь в CB по множеству причин
L - у тебя все прибито гвоздями, тут не о каком замещении не может идти и речи
I - нет никакой сегрегации интерфейсов, все в одном окне
D - нет инверсии, всем управляет окно
>>61904

>пиши юнит тесты к code behind


А может ты попробуешь написать мок окна, чтоб не нести больше хуйню?

Пока ты пишешь один проекты, требования к которым не меняются каждые несколько месяцев ты можешь писать все в одном файле. Но если ты так будешь делать работая в тиме тебя погонят ссаными тряпками очень скоро.
236 1362061
>>62031

>я только сейчас допер, что под code behind ты называешь Window1.cs, который рядом с xaml генерится. так что-ли?


Ну да, а он что, не так что ли называется?
237 1362065
>>62061
гугл говорит, что так
я обычно подразумевал под этим понятием бэкенд (в общем смысле)
238 1362068
>>61944
Это все пути развития C# программиста? Ясно все, укатываюсь к крестобоярам.
239 1362070
>>62068

>ембеддед легаси щит из 90х


>гейдев, который ты не осилишь


>хайлод, в который тебя не возьмут


ты это, заходи, если что
240 1362074
>>62070

>ембеддед легаси щит из 90х


Ну да..

>гейдев, который ты не осилишь


Так что там осиливать? Фреймворк изучить, весь матан гуглится за 5 минут.

>хайлод, в который тебя не возьмут


Возьмут.

А еще десктоп хотя бы есть. И системное программирование.
241 1362078
>>62074
десктоп есть и в шарпах
только кому он нужен
242 1362123
>>62065
Ну, и короче, нахуй нужна эта вм, если можно в этом файле так же точно хуярить, он для этого и создан, блядь. Создаешь модели, где вся бизнес логика и хуяришь в этом файле свойства для вьюхи, хули не так? Нахуя руками создавать точно такой же файл, для тех же самых целей?
243 1362164
>>62123

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

ce2f99fa944f398505c252dca7965c9d180x0.jpg14 Кб, 180x240
244 1362314
>>61671
Как стать таким же как пикрилд?
245 1362353
Потсаны у меня тупняк, хелп!

Короче есть много-много экземпляров двух классов.

class A {
// не важно что тут
}

class B {
// держит ссылку на A
private A instA;
}

Нужно их бинарно сериализовать. Если делать это в один файл, то никаких проблем с восстановление правильных ссылок в B на A не будет, но мне нужно сериализовать классы раздельно - все А в fileA, все B в fileB. Ворос: как починить ссылки при загрузке? Это надо делать вручную используя некотрые ИДы?
246 1362369
>>62353
а тебе принципиально важно, чтобы каждый экземпляр A был уникален в памяти?
сериализуй/десериализуй вложенные типы тоже

если не подходит - то id или любое свойство/набор свойств, которые однозначно идентифицируют отдельный A в сете. при десериализации B ищешь нужный объект A в заранее десериализованной коллекции/наборе
Screenshot2019-03-1107-07.png305 Кб, 1469x391
247 1362370
>>62314
гуглопоиск обезумел
248 1362384
>>62369

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


Да важно. В логике программы ссылка на А используется для детекта всех B с некоторым общим А.

Короч наколхозил целочисленные ИДы которые создаются при сериализации и читаются при десириализации. Не знаю как по-другому тут сделать, пусть пока так.
249 1362398
>>62384

>В логике программы ссылка на А используется для детекта всех B с некоторым общим А.


objA может быть равен objB даже если это два изолированных объекта в памяти. и приложение прекрасно это поймет при элементарном подключении IEquatable<>
250 1362399
>>62398

>два изолированных


два объекта в памяти с идентичным состоянием
говнофикс
251 1362416
>>61981
Есть даже linq to sql
252 1362507
Нихуя не понимаю как работает асинхронность, ваши эвейт асинки ебаные мне вообще в башку не лезут, хоть убейте, для меня проще поток создать и не ебать мозги.
Посоветуйте что прочитать, чтобы вникнуть хотя бы в азы этой хуйни, ну или пинка получить для дальнейшего изучения, а то я тут с ума сойду нахуй скоро.
253 1362555
>>62507

>ваши эвейт асинки ебаные мне вообще в башку не лезут


Создаешь метод асинк, а затем в нем помечаешь оператор авейт, вот и все. Теперь у тебя оператор будет асинхронно выполняться - ну там таск-хуяск
254 1362572
>>62555
ЭЭээээ...
А в чем разница тогда? Не проще таск создать?
Кажется, ты чего-то недосказал.
255 1362580
>>62572

>А в чем разница тогда?



Все написано под капотом и лучше чем ты, очевидно
256 1362672
>>55872 (OP)
В очередной раз зашел чтобы насцать за щеку всем кричащим:
"ДОТНЕТ КОР КОКОКОКО КРОССПЛАТФОРМЕНОСТЬ БУДУЩЕЕ"

Кусок говна. EF Core - это вообще полный пиздец.
Захотел распределенные транзакции? А МЫ НЕ ПОДДЕРЖИВАЕМ пока))00.
Сделать что-то сложнее двух джоинов без навигационных свойств? А хуй.
Почти все выражения разворачиваются и исполняются in-memory, еще больше начинает подгорать с комментариев под ишью "ЭТО НЕ БАГ! ЭТО ФИЧА"
EF Core - это когда 3 простых джоина разворачивается в три запроса.
EF Core - это когда у тебя асинхронная версия валится с кучей ошибок, потому что это говно не может построить выражения, но при этом синхронная работает нормально.
257 1362676
>>62672
Раз такой умный пиздуй в кор разработку и исправляй ситуацию. Хули ноешь то, макака?
258 1362687
>>62676

>Раз такой умный


>>62676

>пиздуй в кор разработку


Ты меня недооцениваешь. Действительно умный не пойдет допиливать и собирать сопли мелгомягких. Закончив проект я съебусь с дотнетопараши, делать это нужно было сразу после "релиза" asp net core 1.0, но лучше поздно чем никогда.
Меня во всей этой ситуации удивляет вот что: как можно было за 4 года не покрыть основные кейсы которые используются на проектах при этом умудрится назвать свою хуйню LTS 2.1 !111
sage 259 1362690
>>62687
Джавалахта, съеби.

+15
260 1362697
>>62690

>Джавалахта, съеби.



Хуяхта.
Сходи что-нибудь сложнее хелоуворлда напиши, поймешь о чем речь идет.
261 1362717
>>62697
Да это ты видимо привык хеллоуворды писать с фичами из коробки.
262 1362726
>>62717

>фичами из коробки


>>62672

>джоинов без навигационных свойств


УУХ, тупая зелень не палится.
Я то думал что lazy loading с тонной навигационных свойств это фичи из коробки.
А оказывается linq, транзакции (которые в 2.0 появились) это уже что-то сверхествественно.
Так может это ты все-таки ты джавалахта, а, пидарок?

Пиздуй свою лабу 1 делать, зелень ебаная.
263 1362729
>>62572
>>62697
Тупой ебанат, нахуй ты приплел сюда ефкор, если для неткора даппер дефакто стандарт орм. вангую, сам дебил-хеллоуворлдщик, который пытался круд для магазина из учебника запилить, но дико обосрался по причине собственной тупости и теперь из треда в тред срет тут
264 1362734
>>62729

> неткора даппер дефакто стандарт орм


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

Пиздуй дальше писать лабы, через годик или сколько там тебе на вкатывание надо расскажешь что там дефакто стандарт.
265 1362740
>>62726
Я вообще крестобоярин мимо проходил, ахуел с тебя, тырпрайз макака.
266 1362752
подскажите пожалуйста синтаксис.
class DerivedClass : BaseClass<T> where T : ISomeInterface{}
а как сказать чтобы DerivedClass ещё наследовался от интерфейса ISomeOtherInterface?

если я напишу
class DerivedClass : ISomeOtherInterface, BaseClass<T> where T : ISomeInterface{}
то мне говорят что базовый класс указывается первым.

а если я напишу
class DerivedClass : BaseClass<T> where T : ISomeInterface, ISomeOtherInterface{}
то я перечисляю интерфейсы для T, а не говорю что DerivedClass реализует его
image.png385 Кб, 686x899
267 1362809
Прочитал пикрил. Что еще можно по паттернам почитать? Посложнее что-нибудь.
268 1362811
>>62809
Ничего, паттерны - это одновременно и антипаттерны.
Можешь навернуть "Шаблоны корпоративных приложений".
269 1362813
>>62752

>class DerivedClass : BaseClass<T> where T : ISomeInterface{}


Тут секция where относится к DerivedClass и ошибку он тебе выдает, что DerivedClass не является обобщеным(<T>) чтобы налагать на него ограничения.

Делать надо так:
class DerivedClass : BaseClass<ISomeInterface>, ISomeOtherInterface

Т.е. сразу задавать специализиацию базовому классу в обявлении.

Либо не задавать, а сделать ее сквозной:
class DerivedClass<T> : BaseClass<T>, ISomeOtherInterface where T : ISomeInterface
270 1362815
>>62813
а, where можно писать после всего. спасибо!
271 1362885
Программач, нихуя не понимаю, что мне делать. Знаю кое-как базовые вещи, могу поверхностно в бд, винформы, адо.нет, асп/мвц. Но пройти несколько собеседований мне ума не хватило. Блядь, у меня даже толком нет идей что писать. Что дальше то делать?
272 1362891
>>62752
class DerivedClass : BaseClass<T>, ISomeOtherInterface
where T : ISomeInterface
{
}
273 1362892
>>62891
бляд ебаный браузер
не показал мне актуальные сообщения на доске
image.png1,3 Мб, 833x1079
274 1362906
>>62885

>Блядь, у меня даже толком нет идей что писать.


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

>Что дальше то делать?


Умирать Не отступать и не сдаваться.
275 1362907
>>62672

>Захотел распределенные транзакции? А МЫ НЕ ПОДДЕРЖИВАЕМ пока))00.



Дохуя ли ты юзал из в реальной жизни маня? Всем давным давно известно что рт это зло и юзают саги или сортофф евенчуалконсистенси

Алсо все горение с ефкора пушто ебан тупой не осиляет в божественный и быстрый dapper
276 1362910
>>62907

>рт это зло


ну а когда действительно они необходимы, мы будем юзать именно EF Core )))))))))))))))))))))
какой-то щкальник пришел, новое слово выучил; увидел, что это еще и за него давно сделано было. а ты ему за шмот поясняешь
277 1362911
>>62906
Спасибо, няш, может правда все на поверхности и попробовать пилить тупо что-то существующее типа сосача.
278 1362920
>>62740

>крестобоярин


Гляди, петух закукарекал, заместо Авроры
279 1362943
>>62910
Ты заглавные проебал.
>>62920
А ты точку.
280 1362945
>>62911
Ну вообще именно это делать и надо.
Во первых это распрастранненные в комерческой разработке задачи.
Во вторых начинать карьеру с УНИКАЛЬНОГО СТАРТАПА представляется странным если у тебя опыта хуй да нихуяю
281 1362963
>>62943
Нихуя ты заиграл, конечно...
282 1362969
Могу создать классы карт (как числовые так и изображения) и сделать колоду. Рейт шанс работать в микрософт.
283 1362970
>>56676
ты тупой просто.
284 1363020
Как изменять размер текстбокса в соответствии с содержимым? Я прикрутился к textchanged и узнаю размер TextRenderer.MeasureText(tbsender.Text, tbsender.Font);, а потом устанавливаю нужную ширину, но это нормально работает только если вводить по одному символу. Если я вставляю текст, у которого размер больше, чем текущее окно ввода, то текстбокс автоматически смещает текст влево, чтобы он уместился в этом окне и после этого я ему задаю новую ширину, но текст остается на том же месте сдвинутый это как-то стремно, подскажите как лучше сделать.
285 1363048
>>63020
ну это геморрой 146%, лучше такой фигней вообще не страдать
разве что тебе для дела (лабы)
286 1363058
>>62969
Около нуля. Микрософт не казино и карты им вряд ли нужны.
287 1363063
>>63020
https://stackoverflow.com/questions/8048455/c-sharp-resize-textbox-to-fit-content

смотри какой элегантный костыль:
I had the same problem and I solved it in a simpler way.

I used the AutoSize property of a Label control.. I added an invisible label to my form, set its AutoSize property True. When the I need to change the size of my TextBox I use this code:
MyLabel.Text = MyTextBox.Text;
MyTextBox.Size = MyLabel.Size;

Суть: в лейбл тоже можно текст добавить и он растянется под его размер. Размер лейбла копируется в текстбокс.
288 1363065
>>62970
Школьник, иди отсюда нахуй.
289 1363094
>>63058
А в казиношку я могу устроиться? Много платят?
290 1363163
Аноны, как лучше форматировать строки?
1. ("foo {0}", bar)
2. ("foo " + bar)
3. ($"foo {bar}")
Что лучше в плане оптимизации ну тут, скорее всего, разницы нет, хрен с ним и читаемости кода?
291 1363165
>>63163
скорее всего разница, тут есть. и 2й вариант будет оптимальней
если задача стоит к строке прибавить константную приставку/префикс, то лучше воспользоваться плюсом
а обычно люди не ебут себе мозги и делают все через форматированную строку. интерполяция, к слову, в плане читабельности на больших строковых выражениях сильно проигрывает
292 1363166
>>63165
ебать я первую запятую поставил удачно
293 1363167
>>63165
Наоборот казалось, что 2 вариант больше всего места занимает.
294 1363169
>>63167
какого места?
295 1363173
>>63169
Ну бля, на строчке редактора.
296 1363176
>>63173
конкатенация всегда будет самым компактным вариантом тащемта. разве что в некоторых случаях интерполяция может быть покороче
вообще все зависит, в первую очередь, от привычек. а во вторую от IDE или той среды, где ты на это смотришь. VS, обмазанная решарпером, очень удобно подсвечивает элементы форматированной строки, а в темной теме раскраска постоянно всех цветов радуги, что даст тебе ясную картину происходящего
лично я смотрю на практически все пердоления со строками одинаково. разве что есть дибилы, которые в новомодном формате миксуют {{, }} и подвыражения с тернарными операторами. ну тут мои полномочия всё
297 1363179
>>63176
Ну, в общем, все сводится к "как тебе удобно, лишь бы строка весь экран не занимала".
298 1363186
Помогите пожалуйста ньюфагу!
Прохожу курсы на ulearn и застрял на псевдотестировании:
https://ulearn.me/Course/BasicProgramming/Praktika_Testirovanie__b0d7bc0f-7309-4ff9-b472-2c19a57f25a4
Конкретно на:

>Поле внутри кавычек может содержать символы кавычек, экранированные символом '\'. Символ '\' также может быть экранирован самим же собой. То есть строка "a \"c\"" содержит одно поле, а строка "\\" b — два поля.


>строка "\\" b — два поля.


Ввожу строки как на пик1 Test(@"""\\"" b", new[] {@"\\", " b"}); и все равно получаю пик2.
Что он хочет и что он требует?
Первый тест прошел строки

>"a \"c\""


прошел

>Test(@"""a \""c\""""", new[] {@"a ""c"""});

299 1363189
>>63163
Второй вариант читабельнее
300 1363191
Блять, а это что за говно?

>\"a b\" — это два поля \ и a b"


Схуяли тут уже два поля если сказано что \" это " ?
Они там вообще в глаза ебуться? Я нихуя не понимат.
>>63186
301 1363264
>>63163
На пикче у тебя все варианты однохуйственны и мусорят примерно одинаково.
В плане оптимизации лучше использовать StringBuilder если у тебя очень длинная портянка "foo" + "bar" + MyVar.ToString() + "baz"
302 1363267
>>63186

>@


Собака превращает все двоные кавычки внутри строки в ординарные, еще не нужны двойные слеши для экранирования.

@"Some string with "" quotation inside."
// даст - Some string with " quotation inside.

@"Some string with \ slash inside."
// даст - Some string with \ quotation inside.

Без собаки нужно экранировать
"Some string with \" quotation inside."
"Some string with \\ slash inside."
303 1363292
>>63048
Не для лабы. Просто treenode узлы у treeview не вмещают больше 255 символов, а мне надо, чтобы было больше. Я переопределил узел и добавил ему textbox, чтобы текст писался туда, но столкнулся как раз с описанной проблемой.
304 1363293
>>63063
Находил такой вариант, почему-то у меня не работает. Когда присваиваю лейблу текст, у него размер остается таким же. Плюс, по-моему в лейбл можно записать ограниченное количество символов.
305 1363295
>>63264
кек
советуют стрингбилдер использовать в случае, если количество конкатенаций/преобразований для изначальной строки неизвестно. в противном случае string.Join или +/string.Concat

>>63292
чета сложна. не уверен, что тебе нужен именно TextBox. а как насчет Label с AutoSize = true?
306 1363309
>>62910

>ну а когда действительно они необходимы



Ну расскажи когда? ) Если ты еба банк то там используются оракловские или сортофф решения для надежных рт за дохулиард денег. И твой ссаный еф тут никак не нужен от слова совсем
307 1363310
>>62734

>Даппер кусок говна


>уж лучше хибернейт использовать



Написал разрабам стековерфлоу, похихикали с тебя дурачка)
308 1363326
>>63309
ну так а я о чем пишу? если нужна ультрабыстрая сверхнадежная база с поддержкой ACID, то необходимо быть на голову поехавшим, чтобы пытаться использовать EF, не говоря уже о Core
309 1363327
>>63326
чтобы пытаться использовать для неё EF
310 1363339
Посоны, а я смотрел одно видео и там чел копировал куски кода (ну там какие-то домашние заготовки) типа из какого-то навороченного блокнота. Ну не совсем блокнота даже, а типа какого-то хранилища со структурой для быстрого поиска и тп. Че это было, вы не знаете по такому мутному объяснению?
311 1363344
>>63339

>Че это было, вы не знаете по такому мутному объяснению?


Может и правда бокнот наподобии CherryTree, с деревом и тегами для быстрого поиска. В некоторых и оформление кода поддерживается в один клик.
312 1363345
>>63344
Спасибо, щас гляну, и видео ещё это нихуя не найти.
313 1363357
Глава 1. Введение в ASP.NET Core
Глава 2. Основы ASP.NET Core
Глава 3. Сервисы и Dependency Injection
Глава 4. Конфигурация
Глава 5. Маршрутизация
Глава 6. ASP.NET Core MVC
Глава 7. Контроллеры
Глава 8. Представления
Глава 9. Маршрутизация в ASP.NET Core MVC
Глава 10. View Component
Глава 11. Модели
Глава 12. HTML-хелперы
Глава 13. Tag-хелперы
Глава 14. Метаданные и валидация модели
Глава 15. Работа с данными в Entity Framework
Глава 16. Фильтры
Глава 17. Razor Pages
Глава 18. Web API
Глава 19. Аутентификация и авторизация
Глава 20. ASP.NET Core Identity
Глава 21. Клиентская разработка
Глава 22. Поизводительность и кэширование
Глава 23. Сервер и публикация приложения
Глава 24. Тестирование
Глава 25. URL Rewriting
Глава 26. React.JS
Глава 27. Dapper
Глава 28. Работа с MongoDB
Глава 29. Глобализация и локализация
Глава 30. SignalR Core
Глава 31. CORS и кросс-доменные запросы
Глава 32. Дополнительные статьи

Охуеть, это все прямо знать надо что бы написать сранный RESTful API?
313 1363357
Глава 1. Введение в ASP.NET Core
Глава 2. Основы ASP.NET Core
Глава 3. Сервисы и Dependency Injection
Глава 4. Конфигурация
Глава 5. Маршрутизация
Глава 6. ASP.NET Core MVC
Глава 7. Контроллеры
Глава 8. Представления
Глава 9. Маршрутизация в ASP.NET Core MVC
Глава 10. View Component
Глава 11. Модели
Глава 12. HTML-хелперы
Глава 13. Tag-хелперы
Глава 14. Метаданные и валидация модели
Глава 15. Работа с данными в Entity Framework
Глава 16. Фильтры
Глава 17. Razor Pages
Глава 18. Web API
Глава 19. Аутентификация и авторизация
Глава 20. ASP.NET Core Identity
Глава 21. Клиентская разработка
Глава 22. Поизводительность и кэширование
Глава 23. Сервер и публикация приложения
Глава 24. Тестирование
Глава 25. URL Rewriting
Глава 26. React.JS
Глава 27. Dapper
Глава 28. Работа с MongoDB
Глава 29. Глобализация и локализация
Глава 30. SignalR Core
Глава 31. CORS и кросс-доменные запросы
Глава 32. Дополнительные статьи

Охуеть, это все прямо знать надо что бы написать сранный RESTful API?
314 1363359
>>63357
Не удивительно что питон и го языки будущего.
315 1363363
>>63339
сниппеты?
видео ты, конечно же, не покажешь
316 1363365
>>63363
Приду домой ещё попробую поискать.
317 1363367
>>63357

>REST



>Введение в ASP.NET Core


>Основы ASP.NET Core


>Представления


>MVC


>View Component


>HTML-хелперы


>Tag-хелперы


>Razor Pages


>Клиентская разработка


>Тестирование


>URL Rewriting


>React.JS


>больше одного ORM, васянские БД


>Глобализация и локализация


>SignalR Core


>Дополнительные статьи



охуеть. ты еще прикати сюда Рихтера и спроси, нужно ли все это зазубрить, чтобы написать hello world
image.png283 Кб, 2688x2688
318 1363369
>>63367

>ы еще прикати сюда Рихтера и спроси, нужно ли все это зазубрить, чтобы написать hello world


Как ты напишешь НОРМАЛЬНЫЙ хеллоуворлд без понимания как работает СЛР, мммм?
319 1363390
>>63369

>НОРМАЛЬНЫЙ хеллоуворлд


)
320 1363441
Почаны, а кто-нибудь обмазывался Nlua? У меня два настолько тупых вопроса, что их даже гугл не отвечает.

1) Как делать нормальный импорт модулей в луастейт из C# кода?

Сделал так, но выглядит это как дикий костыль:
Lua.DoString("SomeModule = require 'LocalPath.SomeModule'", "SM");
Lua["SM"] = null;

Пробовал еще так, но работает неправильно:
Lua["SomeModule"] = mLua.DoFile("LocalPath/SomeModule.lua");

2) Как экспортировать листы в шкрипт на луне?

На луне есть такой код:
SomeTable = { 1, 2, CSharpApi:GetListAInt() }

Результат просто пишет: { 1, 2, "List<Int32>" }
А нужно: { 1, 2, 3, 4, 5, 42 }
321 1363595
Сегодня узнал про stackalloc. Могу ли я как-то создавать списки/словари/етц на стеке? Или нужно свое делать?
322 1363599
Почему все срут метанит? Годно же. Все что нужно в одном месте, материал нихуя не поверхностный, хорошая подача. Мне лично лучше всяких книжек зашло, которые к тому же с корявым переводом.
323 1363602
>>63599
Изучал сокеты. Проще было десятки страниц Албахари почитать, чем понять принципы в метаните. Сервис нормальный, но там многие элементы поверхностно описываются.
324 1363616
>>63602
Ты какой-то тормоз. Хули там понимать? Отправил-принял, слушаешь-отправляешь
325 1363618
>>63616
Да, тормоз. Хули ты хотел, сверхразум ебаный?
326 1363929
>>55872 (OP)
Почитал тред и авторитетно заявляю: C# - язык для тупой школоты.
Даже в помойной скриптодристне аля пайтона \ жс школота умнее будет.
327 1363936
>>63929
Ага, всем так интересны твои стереотипы о программистах на разных языках.
328 1363967
>>63929
проиграл с умных жопоскриптеров
329 1363968
>>63936
C# - говно без задач, пруфы:
C++ - байтоёбство,
Java - тырпрайз,
C# - ???
330 1363969
>>63968
- тырпрайз для бедных
- рофломикросервисы
- мобилки
- виндовссторовские приложения
- легаси щит из конца '10х
331 1364024
>>63968
Лол, мой знакомый джавист например говорит что на джаве есть только ебучее легаси говно, буквально полутрупы которые писались ещё когда динозавры по земле ходили, жизнь которых надо поддерживать до посинения, ибо всем впадлу писать что-то новое пока старое пердит и трещит по швам, но все же работает. Не хотят делать новое, потому-что это трата бабок и человеко-часов, типичное авось и "и так сойдет" в общем. Жаба судя по тому что про неё говорят и как её ненавидят те кто на ней работают - полумертвый язык.

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

Шарп еще развивается, относительно твоих примеров это очень молодой язык и на мой взгляд он развивается в правильное русло. Мелкомягкие взялись за голову.

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

>НОРМАЛЬНЫЙ хеллоуворлд


Лови - https://repl.it/@DavidLindes/hello-replit
Питон конечно, но все-же.
333 1364209
>>63163
Первый и третий варианты лучше.
334 1364215
>>64205
нам в начальных классах Logo давали потыркать. так это ж то же самое
335 1364220
>>64215
Понятно что там ничего сложного нет, просто вспомнилось чето.
336 1364226
Подскажите годных мануалов\книг по XAML.
337 1364235
>>64226
XAML - это как в виде XML описать создание инстанса через new { PropA = "", PropbB = "" }
в общем-то, на этом весь мануал заканчивается
338 1364257
Это нормально что СОЛЕД мне кажится каким то капитанском.
Некоторые примеры которые пишут типа как делать не надо, такое ощущение что так могут делать только ебанутые.
Вроде то что описывает солид, иногда ахуенно заумными терминами Типа способ постановки Лисков это какая то слишком очевидная в своей сути хуйня.
339 1364260
>>64257

>СОЛЕД


>Типа способ постановки Лисков


Кстати хотел спросить.
А как же ПОЛИМОРФИЗМ.
Вроде как одна из главных фишек ООП, А солед вроде как требует его избегать, кек.
Виртуальные методы не нужны? Переопределения зашквар?
340 1364267
>>62672

>Не может нормально нормализовать данные


>Виноват дотнет



Ну ахуеть теперь.
341 1364270
>>64260
Где солид требует избегать полиморфизма?
342 1364286
>>64257
Вангую ты ничего не писал сложнее laba1.cs.
Иначе бы знвл, что понимать как делать правильно по solid и реально делать правильно на практике без ебанутостей это две большие разницы.
343 1364287
>>63936

>твои стереотипы


Причем тут стериотипы если эта реальность?
МЕРТВОЕ говно без задач, которым пользуются лишь исключительно школьники да студенты с лаба1.
А тупость дотнетчиков в данном треде - не имеет границ, достаточно 5 минутного чтения написановый выше хуйни.
>>64024

>Мелкомягкие взялись за голову


Да, взялись за голову: добивают мертворожденное говно, развивая TS и все чаще используя ноду.
inb4 сейчас петушня начнет вскукареки, ЧТО КРОМЕ ВЕБА ЕСТЬ ЗАМАРИН, который тоже, кстати, говно
>>64024

>Жаба судя по тому что про неё говорят и как её ненавидят те кто


Работает тонна знакомых на жабе - все давольные и с толстыми котлетами.
344 1364296
>>64260
Если ты про способ постановки Лисков то там речь идет не о избегании полиморфизма, а о том что полиморфизм не всегда уместен, как пример - плохо если ты пытаешься следовать логике реального мира в разработке ПО упуская из виду то что разработка ПО не работает по логике реального мира.
345 1364299
>>64287

>ЕСТЬ ЗАМАРИН, который тоже, кстати, говно


У кого ни спрашивал, никто объяснить не может, почему он говно. Вот ты знаешь? Или просто кукарекаешь, потому что все так говорят?
346 1364301
>>64287

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


Опять ты, как же ты уже заебал тут срать своими фантазиями.

>А тупость дотнетчиков в данном треде - не имеет границ, достаточно 5 минутного чтения написановый выше хуйни.


Лол ебать, ты на дваче, в любом треде в пр точно такая же хуйня.

>Работает тонна знакомых на жабе - все давольные и с толстыми котлетами.


Работает тонна знакомых на шарпе - все давольные и с толстыми котлетами.
347 1364329
>>64299

>почему он говно. Вот ты знаешь


Он как был сырым говном n лет назад, так таким и остался. Много времени тратится на то, на что не должно: ковыряние и костыли которые правят замариновский код и баги.
Знакомый доработал на проекте и съебался на свифт и благополучно забыл замарин как страшный сон.
>>64301

>Опять ты


Опять кто?
>>64301

>тут срать своими фантазиями


Какие нахуй фантазии. Посмотри на релиз 8.0
>>64301

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


С той лишь разницей, что дотнетчики еще защеку закидывают тайпскрипт, а на жаба господа избавлены от такого "удовольствия". Ну и котлеты на жабе, как правило выше.
348 1364355
>>64329

>Много времени тратится на то, на что не должно: ковыряние и костыли


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

>>64257
люди такой гениальности понапишут, что иногда вспоминать солид, та даже принципы ооп, как-то не к месту
350 1364397
>>64329

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


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

>Опять кто?


Долбоеб, который из треда в тред периодически пердит про то, что нода убьет дотнет, а майки этому помогают, развивая тс.
351 1364412
>>64355

>Конкретика будет или так, только лишь яскозал?


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

>>64397

>Жабагоспода зачастую наворачивают легаси


Уж лучше ковыряться в легаси говне чем в тс и жс.
Да и хуевые у вас джависты, раз им приходится ковыряться в легаси.
>>64397

>что нода убьет дотнет


Да мне похуй что на одно, что на другое.
>>64397

> майки этому помогают, развивая тс


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

О каком развитии дотнета вообще идет речь, если даже сами майки его не используют??
352 1364421
>>64412

>Пиздуешь писать что-нибудь на замарине.


Писал изучая на метаните, все норм работает. Выходит все твои кукареки - это обычное яскозал, ну лан, я даже особо и не удивился
353 1364434
>>64421

>Писал изучая на метаните


>>64421

>все норм работает


Гагагаг.
Можно даже не комментировать

>>64421

>обычное яскозал


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

Ну, ладно, пожалуй выпилюсь с треда, все равно в нем кроме трех школьцов никого нету.
Konachan.com - 278503 akira(mrakira) barefoot blackeyes bla[...].jpg1,4 Мб, 1920x1080
354 1364436
Как с помощью рефлексии получить protected метод класса по имени и параметру?

По отдельности методы вижу, а вот все вместе - нет.
https://docs.microsoft.com/ru-ru/dotnet/api/system.type.getmethod?view=netframework-4.7.2#System_Type_GetMethod_System_String_System_Reflection_BindingFlags_
https://docs.microsoft.com/ru-ru/dotnet/api/system.type.getmethod?view=netframework-4.7.2#System_Type_GetMethod_System_String_System_Type___
356 1364450
357 1364461
>>55872 (OP)
Sup /pr/c#
я решил вкатиться в волшебный мир погромирования на C# и уже смотрю курс от ITDVN C# Starter.
Но курс то я скачал, а домашки к нему не прилагается.
Поэтому у меня вопросы:
1) Где брать ГОДНЫЕ сборники задач для того,чтобы вкатиться и набить/надрочить руку для c# на джуна.
2)Может у кого есть эти дз и он могёт скинуть?
3) Есть у меня такая идея. Кароче есть сайт binance.ru
и есть один бот, который делает автоматически сделки.
Нет, я не хочу писать бот, который делает сделки на этом сайте- он уже есть и придуман умными людьми.
Вопрос в другом- нужно запилить модуль расчета прибыли,который будет в идеале бы брал данные по ключу API и
расчитывал прибыль с каждой сделки.Т.е. на аккаунте есть ключ API и он забирает с бинанса инфу,передает на сервер,берет курс биткоина и считает, какая прибыль между сделкой на покупку и сделку на продажу на данном аккаунте одной криптовалюты.Т.е. купили яброки по 9 рублей, продали по 10.
Расчитать для груш, апельсинов, ананасов, посчитать среднюю сделку, посчитать месячный процент.
Я пока ещё нубенький, но бинанс позволяет в екселе выгрузить таблицы всех сделок.
И поэтому у меня вопросы.
Как это запилить и какие технологии для этого использовать? Подойдет ли С# для подобного использования? или он бесполезен в этой области?
В идеале,можно ли с помощью шарпа рисовать графики?
4)Насколько я правильно выбрал язык шарп для изучения с целью вкатывания на джуна- тут пишут,что он мёртворожденный, что нужно учить питон. я постоянно слышу подобное про разные языки и меня это деморализует.Я вроде видел ваканскии на хедхантере- там требуются и шарписты и явисты.Двач-помогач, что мне делать у меня паника.
Зигодев-кун
15486171600150.png380 Кб, 594x590
358 1364610
>>63441
Починил второй вопрос.

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

В скрипте получается такая херня:
local Result = { }
CSharpApi:GetListAInt(Result)
SomeTable.insert(#len, Result)

Довольно многословно получается.
359 1364612
>>64461

>В идеале,можно ли с помощью шарпа рисовать графики?


Можно же. Брутально создаешь битмап, ручку, выбираешь цвет и поебошил. Потом битмап можно сохранить в файл, запульнуть на форму или отправить юзеру на почту.
360 1364614
>>55872 (OP)
А давайте закриптуемся шустро, четырьмя крестами: https://github.com/username1565/WinFormsCryptApp
361 1364616
Шарпаны, как не очковать идти на собеседование?
362 1364619
>>64616
Расслабиться же. Перед самым приемом лучше всего немного накатить вина. Будешь тормознуто-спокойным, но думалка кпд не потеряет.
363 1364621
>>64619
лучше плана курнуть чтобы тех. задачки на интервью нестандартно решались
364 1364628
>>64461

>ГОДНЫЕ сборники задач


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

>выбрал язык шарп для изучения с целью вкатывания на джуна


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

>можно ли с помощью шарпа рисовать графики?


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

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


И каким образом выставления бита четности - не реальная задача? Веб макака?
366 1364644
>>64461

>В идеале, можно ли с помощью шарпа рисовать графики?


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

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

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

>у меня паника.


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

Альзо, выучив один язык на достаточном уровне, поняв принципы именно разработки ПО ты получишь базу которая поможет тебе учить и другие языки в разы быстрее чем твой первый, и потом ты уже сможешь осваивать другие языки по мере необходимости и увеличивать свой стэк технологий.
367 1364656
>>64368

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


1. Паттерны не всегда и не везде применимы.
2. Тут отлично пояснено, и из этого описания я не вижу противоречий SOLID https://refactoring.guru/ru/design-patterns/strategy
У тебя есть навигатор, его цель прокладывать путь и в зависимости от того какой путь надо прокладывать не должна меняться реализация самого класса навигатора, ты просто передаешь обязанности построения пути другим классам, которые уже строят путь, не вмешиваясь в реализацию класса навигатора, это позволяет расширять и добавлять новые способы построения пути и вообще аккуратнее и удобнее. И опять подчеркну что это не противоречит SOLID ни в какой мере:
У тебя допустим есть абстрактный класс "RouteBuilder" у него есть виртуальный метод "BuildRoute", от него наследуются классы для построения маршрутов, класс навигатора принимает наследника RouteBuilder-а и наследник в зависимости от своего назначения передает навигатору построенный маршрут, поведение наследников в реализации класса навигатора не меняется, меняется только результат их поведения.
368 1364657
Поцаны, а я мутно понимаю, как работает цлр. Блядь, все эти стеки, хипы-хуипы, это вообще при реальной разработке надо прямо понимать до винтик? Не просто же так это спрашивают на собеседованиях? Может есть какая-то понятная схема?
369 1364668
>>64657
Забей, потом разберешься. На практике хватит знания чем отличаются типы значния от ссылочных типов и как рапредеяется под них память. Потом ты догуглишь как цлр грузит сборки и вообще про домен приложения узнаешь и на этом фсе.
370 1364669
>>64657
При реально разработке тебе это редко будет нужно, почти никогда, просто помни что няшка GC чистит за тебя все говно, "GC защитит" в общем.

Но это фундаментальные основы работы языка и их нужно понимать если ты претендуешь на какую-либо "экспертность".

Соглашусь с коллегой выше, достаточно понимать разницу между стеком и хипом и значимыми и ссылочными типами соответственно.
1552647516606.jpg105 Кб, 640x689
371 1364695
На следующей неделе будет собеседование на позицию автотестера.

Там C#+Selenium+SpecFlow. Посоветуйте книжку про использование селениума из C#. На ютубе одни индусы с отвратительным произношением.

Насчёт опыта. Работал с C#+NUnit и с Java+Appium+Cucumber. Т.е. близко к тому что нужно, но не совсем то.
372 1364700
>>64695

>автотестера


а ты тяночка?
373 1364729
Учусь по книге Троелсена, дошел до пункта "Linq to Objects". До этого я мало-мальски пытался понять некоторые непонятные термины, о котором говорит автор, но в этой главе я уже совсем начинаю запутываться в определениях. Стоит ли забить на эту всю тяорию и просто читать назначение Linq, или я долбоеб, и лучше понять сначала все, чтобы пото не возникало дохера вопросов?
374 1364731
>>64729
че ж там за определения-то запутанные?
375 1364732
>>64700
Тяночки в основном функциональным тестированием занимаются. Автотестер, это почти погромист же!
376 1364737
>>64731
Да хер знает, какие-то API интерфейсы. Хуево, похоже, читал.
377 1364741
>>64737
kek
LINQ2Objects - это, всего-то, набор методов-расширений для коллекций для удобного манипулирования ими без написания тонн foreach по каждому поводу и без
378 1364742
>>64741
Значит, тонны определений мне не нужно, и можно со спокойной душой все это пропускать?
379 1364744
>>64742
если тебе анончик скажет забить хуй на что-то, ты прям с радостью? )
380 1364746
>>64461

>В идеале,можно ли с помощью шарпа рисовать графики?


На wpf? LiveChart - годная библиотека
381 1364747
>>64644

>в .NET много крутых плюшек из коробки и работает он не хуже других.


Графики из коробки в wpf не нарисуешь, не пизди
382 1364748
>>64744
Ну блять, это же не /b/, тут люди чуть поумнее сидят. Маловероятно, что хуйню скажут.
383 1364750
>>64748
ну так попробуй запостить хотя бы одно непонятное тебе определение сюда
384 1364752
>>64747
Не пизжу. Ты совсем одарен если кривую линию нарисовать не в состоянии.
385 1364753
>>64752

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


Идиот, плес.
giphy.gif2,1 Мб, 480x360
386 1364770
image.png26 Кб, 614x237
387 1364855
ПОМОГИТЕ НУБАСУ
мне надо чтоб экземпляры класса с конструктором были в цикле и это все потом вышло в текстбокс, пока что ничего не получается, либо все ломается по причине что я не присвоил объект класса, либо пишет какую то хуйню в текстбокс. Тащемта помогите
388 1364903
>>64695
На какую зп ориентируешься?
389 1364904
>>64855
Ты в цикле заново для каждого элемента массива создаешь экземпляр пустого класса. Чтобы что-то выводить тебе надо напрямую обращаться к свойствам (direction.Name, например), либо, если ты хочешь писать просто direction, переопредели метод ToString в своем классе.
390 1364930
>>64855
Не надо создавать в цикле новые классы Philosophy, а нужно собрать их в одну строку через ToString();

Education.TextBox += (direction.ToString() + " ")

А еще ты как-то странно юзаешь текст бокс. Если у тебя выпадающий список, то нужно юзать значение Items для добавления новых вариантов выбора.
391 1365009
>>64855

>ПОМОГИТЕ НУБАСУ


Задание выложи, а не свои каляки.
Вместо i < 3 используй размер массива. Да и сам массив можно сразу же инициализировать: "int[] a = {1, 2, 3};", не заботясь о фиксированном размере.
Текст можно без цикла получить: String.Join("\n", a);
392 1365226
>>55877
Кто такое написал то? Тайпскрипт - хуета без задачь. Даже бывалые JS ники блюют глядя наэто всё. К тому-же понижает скорость написания кода раз в 10. Какой-то самоотсос получается.
393 1365227
>>55907
Медленную хуйню написанную на коленке, которую даже сами разрабы ноды обоссали и в итоге перекочевали на Go (sic!) ты сравниваешь с шарпом? Парень, да ты либо уточка, либо какой-то зомби с промытыми мозгами.
394 1365228
>>65226

>бывалые JS ники


главпетухи
395 1365229
>>65227

>уточка


что такое уточка
396 1365231
>>65229
Общеприменительно "Начал пользоваться сначала А, потом Б, считаешь А лучше только потому-что ты с него начинал".
Применительно к ЯП, это когда ты выучил 1 язык или фрэймворк, а на второй язык мозгов уже не хватает. Поэтому начинаешь бегать по интернету и везде кричать что именно твой язык лучше остальных, уже 100500 раз проходили сначала с джввистами, потом с рубистами, потом вылез дарт, потом нода, потом го, потом котлин, потом реакт. На деле никто не спорит что у определённых инструментов есть преимущества. Очевидно иначе бы они не создавались. Но использовать что-то одно для всего на свете довольно глупо.
397 1365236
>>65231
ну просто это дефолтное имя в /fg/ вот у меня вопрос и возник
398 1365237
>>65236
Захотел посмотреть что за /fg такое.
Захожу на борду, смотрю... удивляюсь.
Моё уважение. Если ты ещё и на C# пишешь, даже захотелось с тобой познакомиться, по крайней мере чаем\колой\винишком и картошкой фри я бы тебя угостил.
399 1365238
что за намеки, грр, я просто знаю что есть такая борда, давно на дваче сижу
400 1365239
>>65238
Ты хреновый программист если не переодеваешься в маленькую девочку служанку в няшных чулочках во время написание кода дома.
Это даже не смена ориентации или что-то типа того, это что-то на уровне уровня абстракции. Ты больше не 30 летний Юрий Борисовичь с усами, ты можешь забить хуй на проблемы, счета, налоги, расходы, аренду, кредиты и прочую взрослую хуйню. Теперь ты няшная японская тянучка у которой есть C# и список задачь. А все остальные проблемы из головы можно выкинуть.
Производительность повышается в ёбаные разы.
402 1365246
>>65009
Ну надо объявить массив экземпляров класса, заполнить его с помощью конструктора и на экран вывести
me29qhya6tpz.jpg464 Кб, 1410x2048
403 1365247
>>65239
звучит прямо как медитация по буддистски
наверное поэтому кодеры так любят удаленку

>>65241

>ansi c


и потом эти люди пилят ведро линукса
404 1365259
>>65246
Почему используешь текст бокс? Тебе надо три книжки вывести, или предполагается что будут добавляться новые?
405 1365269
>>65247

>эти люди пилят ведро линукса


Там с этим всё совсем плохо. Смотрел фотки с их втреч, много кто довольно сильно поехал и даже в ЛГБТ ударился. Тут надо очень хорошо контролировать и понимать для чего ты это делаешь. Ну и за собой следить тоже не помешает.
406 1365274
>>65259
предполагаются новые, пока я только 3 придумал
407 1365285
>>65274
Почему ты используешь текстбокс? Это условие задачи или что?
408 1365290
>>65285
нет не условие, я прост хз че ещё вместо текстбокса можно вбросить))
409 1365294
>>65239
Значит я гавнокодер, потому что вместо всей этой параши (надевать чулоки под брюки, жрать тонны шоколада и принимать Фенотропил) я просто часок прогуляюсь по улице или схожу в ближайший парк.
410 1365298
>>65294

>я просто часок прогуляюсь по улице или схожу в ближайший парк.


Гейство какое-то.
411 1365300
Сап поясните ньюфагу.
Создал базу данных с полями varchar и text форматов.
Создаю в студии сеттеры и геттеры, а там таких типов данных нет. Как так? Как выходить из ситуации?
412 1365301
>>65290
ListBox или ListView лучше для твоей задачи, и массив не лучший вариант, когда нужно добавлять что-то новое в коллекцию, используй List. Полностью перепиши добавление и вывод под ListView или ListBox, список книг сделай полем класса формы чтобы к нему был доступ из каждого метода класса формы, запили добавление новой книги в коллекцию.

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

Почитай про разные конролы в формах, чтобы понимать где лучше применять тот или иной.
413 1365302
>>65300
Как ты из базы данные достаешь?
414 1365306
>>65301
ничего, мне не обидно, я не прошарен от слова совсем)
415 1365307
>>65302
В датаконнекшне указал сервак и базу.
Конекчусь через коннекшн стринг.
416 1365316
>>65307
Тебе нужно "SqlConnection" и "SqlCommand" отсюда "System.Data.SqlClient"

Вот как пример кусок кода из моей laba101.cs:
https://ideone.com/kM5H44

Если не тупой поймешь.
417 1365319
>>65316
Спасибо няша, добра.
418 1365323
>>65300

>Создаю в студии сеттеры и геттеры, а там таких типов данных нет. Как так? Как выходить из ситуации?


Ты троллишь? С какого хуя мсскуель и шарп вдруг одинаковые данные поддерживают?
419 1365327
>>65323
Ты траллируешь? Я понимаю какие-то экзотические типы или блобы не саппортить, но варчар и дэйттайм не поддерживать как-то странно в 2019. Или я слишком многово прошу?
420 1365330
>>65327
Увы, для того чтобы шарпец понимал данные из SQL их нужно приводить к типам шарпца, для этого есть две тонны методов в статическом классе Convert.
421 1365333
>>65327

>но варчар


Иди читай начальную главу по шарпу, какой, блядь, варчар, ты из паскаля что ли перекатился?
422 1365334
>>65327
>>65330
И да, в шарпе есть дэйттайм и данные из SQL тоже можно спокойно к нему привести.
1.JPG16 Кб, 346x236
423 1365339
>>65333
Не бомби, я не хочу никого тут обидеть или разозлить, я сразу написал что я ньюфаг в этом деле и любой наверное анон из треда имеет в 10 раз больше опыта чем я.
Вот пикрил из MS SQL Server. тут варчар например. Почему бы и нет?
>>65334
>>65330
Спасибо няшки. Извиняюсь за глупые вопросы.
424 1365342
>>65294
Каждому своё.
425 1365361
>>65339

>я сразу написал что я ньюфаг


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

>Вот пикрил из MS SQL Server Managment Studio


Естественно там будут те же типы данных что и в SQL потому-что это программа для работы с SQL сервером.
426 1365363
>>65361

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


А где он себя так вёл?
427 1365364
>>65363

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


Тут например.
428 1365366
>>65364
Извините, не думал что это будет восприниматься как утверждение, скорее это был вопрос с рассуждением и надеждой на то, что может быть он поддерживает.
Больше я так не буду.
429 1365480
>>65246

>Ну надо объявить массив экземпляров класса, заполнить его с помощью конструктора и на экран вывести


Ну так и вперед:
MyClass[] arr = {
new MyClass("a", 1),
new MyClass("b", 2),
// и т.д.
};

Текст для вывода всего разом получаешь типа так:
String.Join("\n", arr);
И суешь в свой текстбокс, консоль или куда там тебе надо. Но как тебе писали у твоего класса должен быть свой ToString() реализован, в котором у тебя что-то вроде: "return Text + Num;".
430 1365697
>>55872 (OP)
Поясните ньюфагу - нахуя нужна рекурсия в шарпе?
Насколько я понял что все тоже самое можно сделать в цикле/циклами, опять же насколько я понял прироста в производительности как нет ибо во первых создается каждый раз метод в стеке, а потом еще и коллектор за остальными подъезжает, а сам синтаксис ебанутее и не понятнее дефолтных циклов как по мне.
Или я в чем-то не прав?
На собеседованиях на джуна/стажира их спрашивают?
431 1365783
>>65697
Рекурсия - это весьма тонкий, острый и очень ОЧЕНЬ специфический инструмент хирурга который можно применять строго (СТРОГО БЛЯДЬ) в определённых случаях и строго когда ты понимаешь какую проблему он решит. Тот факт, что большинство преподавателей даже на курсах от самих майк вообще нихуя не вдупляют как их применять и например при мне просто заваливали процессор - является тому доказательством. Делать 99% задач циклом безопаснее и менее подвергнет твою программу воздействию со стороны рекурсий.
432 1365816
>>65783
Можешь навести пример где лучше применить рекурсию?
433 1365826
>>65816
В деревьях.
434 1365830
>>65816
На дваче повыёбываться. Больше примерно нигде.
435 1365836
>>65816
В quicksortе
436 1365839
>>65830
Двачую. В 99.9% можно заменить do while.
437 1365916
>>65697

>Поясните ньюфагу - нахуя нужна рекурсия в шарпе?


Ну, я ее использовал, например, когда писал программу, что чекает файлы в папках. То есть, ты никогда не знаешь сколько в папке еще папок, в том числе лежащих еще в папках, а рекурсия просто по очереди в каждую заходит и чекает до упора
438 1365934
Посоны, что по зарплатам у шарпо-господ? (Хочу понять, насколько у меня всё хуёво)
439 1365936
>>65934
статистик в интернетах тебе по какой-то причине недостаточно?
440 1365941
>>65916
While (true)
if (!eshe_papki) break;

?
441 1365942
>>65936
Хочу данных по реальным (лол) людям. По знакомым джавистам сведений дохуя, а по шарпистам почти нет
442 1365961
>>65941

>While (true)


>if (!eshe_papki) break;


Назад возвращаться как будешь, маня? Твой цикл дойдет до конца первых папок и все
443 1366013
>>65961
Ладно, убедил, хотя можно было бы изъебнуться с добавлением директорий в стек наверное.

Другой вопрос, как и каким средством можно отследить вызовы метода кроме как вручную точкой остановки?
444 1366050
>>65942
по идее зарплаты в джяве на децл больше
445 1366232
>>66013

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


ЧО?
Ну, добавь в метод
Console.Writline("Методы был вызван");
446 1366372
>>65826
Ну обойди дерево. Если оно большое, быстро поймёшь что где-то ты обосрался.
447 1366374
>>65961

>Назад возвращаться как будешь, маня?


А как ты в рекурсии возвращаешься маня? Вот и тут также.
448 1366376
>>66050
Такую хуйню все ждависты говорят. На деле дохрена знакомых работают по банкам за 30-45 тыщь. Ни одного живого не видел кто получает больше.
*в России.
449 1366380
Сап двощь.
Хочу написать программу, суть такова. Надо хранить кучу сортированной информации с относительно быстрым доступом к ней. Тоесть что-то по типу базы данных. Но заморачиваться со всякими тулзами типа SQL серверов не особо охото. Как в таких случаях взрослые дяденьки выходят из ситуации?

Вот скажем есть программа домашняя бухгалтерия. Там всё расписано по датам, колонкам, сортируется, выбирается. При этом никакой серьёзной БД там нет.
450 1366382
>>66380
Как я понял, тебе нужно что-то компактное без сервера. Гугли про SQLite.
451 1366385
>>66382
Неплохо. А если юзер будет себе мою прогу качать, это надо будет отдельно ставить или можно будет прикрутить в установщик?
452 1366393
>>66385
SQLite - просто файлик с расширением .db, поэтому можно тупо в установщик прикрутить.
453 1366394
>>66380
>>66382
А почему все говорят, что БД сервера огромные и громоздкие? Даже мой батя так говорит он 1сник.
Я сначала пугался, но сейчас монгодб стоит даже на моем некроноуте и ничо - все ноомально работает, как будто никакой БД и нет.
Это фича монгодб или бд начинают жрать ресурсы, когда у них появляется пару миллионов записей?
454 1366395
>>66393
Найс.
455 1366402
>>66013
ультрапердолингом
хуки в CLR, но я даже не уверен, что получится сделать как-то обобщенно
либо через Dynamic Proxy, но это вынуждает менять сигнатуру методов, что не всегда оправданно (хотя что в laba1 может быть неоправданным?)
456 1366404
>>66394

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


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

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


Справедливо. Но тогда какая разница между скулайт и скуэль-сервер?

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


Тогда какая разница между скулайт и скуэль-сервер?
458 1366422
>>66413
sqlite - встраиваемая, бесплатная, локальная онли

sql server - целая вселенная из всего, поддерживает кучу всякого говна из-под коробки нажатием одной клавиши. платишь дохуя вплоть до использования определенного количества ядер
459 1366458
>>66422
С каких пор скэуль платная? Разве нет опенсурс аналогов?
460 1366463
>>66458

>скуэль-сервер


SQL Server
не?

вообще, киллер-фича SQLite - это именно встраиваемость. я не знаю других ACID баз данных, которые бы подключались к приложению путем инклуда одной ссаной dll-ки. остальное сравнение можешь наковырять тут https://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems
461 1366464
>>66458
Mysql
462 1366498
>>65783

А что сложного в рекурсии то? Я наример недавно писал метод который генерирует определенную метадату для типа (все поля и прочее посредством рефлексии)

Рекурсивно делаю метадату т.к некоторые поля типа могут быть сложными обьектами, если так то для каждого подобного сложного обьекта снова вызываю метод GenerateMetadata, в противном случае просто продолжаю
463 1366501
>>66498
Ещё раз, дело не в сложности, а в том, что она сжирает херову тучу процессора. По факту, когда у тебя много данных рекурсия почти равняется бесконечному циклу.
464 1366504
>>64695
Бля, сам хочу вкатиться в автотесты, меня тупо разрывает, идти по джаве или по c#?
465 1366513
>>66374
Ты долбоеб?
466 1366518
>>66513
То-есть ответить на элементарный вопрос ты не смог. Ясно всё с тобой.
467 1366519
>>66504
По обоим.
468 1366529
>>66374
Там не рекурсия нихуя, посмотри внимательно, схуяли цикл должен работать как рекурсия?
469 1366534
>>66529
Где там? Код рекурсивного обхода папок никто не показал.
470 1366538
>>66534
Ну так ты же пишешь что оно должно работать и так, хотя так оно нихуя не будет работать.

А рекурсивный алгоритм работает.
471 1366543
>>66538
Сцуко, вообще тебя не понимаю должно работать и так КАК?

>

472 1366545
>>66543

>так оно нихуя не будет работать.


Как?

>А рекурсивный алгоритм работает.


Ну так покажи.
*Сраная вакаба вместо Enter и переноса строки отправила пост

Я иду писать код без рекурсии если что.
473 1366546
>>66501
А как это сжирание памяти решается во всяких f# и хацкелях? Там ведь даже циклов нет, все через рекурсию.
474 1366547
>>66546
Я пищу как-то не так или может что-то у меня со способом выражения мыслей? Где ты прочитал в моём посте про память то?
475 1366548
>>66501

>сжирает херову тучу процессора


Ахуеть, приплыли.
476 1366550
>>66548
Когда тебе амазон выставит счёт на 20к баксов за превышение лимитов, тогда и приплывёшь.
477 1366553
>>66543

>While (true)


>if (!eshe_papki) break;


Анон ответил на это - >>65961

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


Ты ответил - >>66374

>А как ты в рекурсии возвращаешься маня?


Цикл не работает как рекурсия точно так же как и рекурсия не работает как цикл, рекурсия пройдет по всем подпапкам, а вот такой цикл пройдет по первой ветке до последней подпапки и будет считать что и так норм.

>>66545

>Ну так покажи.


У тебя нет рук загуглить хотя бы как рекурсия работает? Я на работе, не могу тратить время еще и на написание кода за тебя.
478 1366555
>>66553
ты работаешь на работе что-ли?
479 1366558
>>66547
В глаза ебусь. А чем рекурсия жрет процессор? Она ведь только стэк отжирает. Ну и вопрос тот же - как в фп живется, еслм там даже циклов нет и рекурсия быстро переполнит стэк?
480 1366560
>>66550
Вот и выросло поколение, которое не знает, что именно сжирает рекурсия. (подсказка, не процессор)
482 1366573
>>66571

>Ужс.


Что?
483 1366575
>>66553
Рекурсия потенциально может вызвать исключение переполнения стека, если дерево каталога большое и имеет большой уровень вложения. У меня например на работе каждый блядский второй каталог такой.
484 1366576
>>66553

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


Скорее так, ты в душе не знаешь как писать это рекурсией, но пацаны сказали что это норм. А вот хуй.
485 1366584
>>66573
Не знаю, видимо там есть какие-то свои заморочки. Опять же судя по тому что я нагуглил, там сильно юзают оптимизацию хвостовой рекурсии, что немного ситуацию "упрощает".
А вообще хаскель видимо поэтому не особо и распространён.
486 1366590
>>66372
Обойти его циклом будет в разы сложнее, трудозатратнее, неэффективнее и дольше.

1 мб в стеке хватает на все случаи жизни, не представляю каким дерево должно быть чтобы завалить стек при его рекурсивном обходе например в ВУЗике когда мы проходили рекурсию квиксорт на моих глазах отсортировал массив из 200к интовых значений в считанные секунды, тогда как тот-же бабл сорт на это тратил почти две минуты, ничего не завалилось ни у кого, если 1 мб внезапно не хватает, то можно увеличить размер стека. Завалить стек могут кривые руки, но тут сама рекурсия не при чем, потому-что кривые руки могут сделать это и без неё.
487 1366592
>>66573
Ты видел живых людей которые на этом пишут? Я один раз хаскелиста видел. При этом я два раза в природе в России видел живого дикого медведя. При этом выглядил Хаскелист примерно также. Будто очнулся от 6 месячной спячки и смотрел на меня как на говно.
488 1366593
>>66576

>Скорее так


Да-да, как ты меня раскрыл?
489 1366594
>>66590

>1 мб в стеке хватает на все случаи жизни


Дальше можно не читать.
Бери числа фибоначи, вычисляй.
490 1366596
>>66590
Я правильно понял что ты только что рекурсию с алгоритмом сортировки спутал?
491 1366601
>>66596
Там был QuickSort как пример рекурсии.
492 1366605
>>66594
Уже разогнался.
493 1366607
>>66590

>1 мб в стеке хватает на все случаи жизни


Дадада мальчик, мы помним.
640K ought to be enough for anybody
Сразу видно опытного программиста с примерами из лаб. Спасибо.
494 1366608
>>66605
Суть примерно в следующем.
10 итераций и тобi пiзда.
495 1366613
>>66584

> А вообще хаскель видимо поэтому не особо и распространён.


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

>функциональный язык


>ООП


>паттерны

497 1366616
>>66607
Ну да, опытные программисты же должны по умолчанию избегать какого-либо инструмента, даже когда он уместен, только потому-что страшна що стэк сожрет, при том что оно нихуя не сожрет, если уместно.
498 1366618
>>66616

>Ой да не сожрёт он стек


>Я лабу делал всё работало


Ты сейчас серьёзно пытаешься выставить это как аргумент?
499 1366619
>>66618
Я не он, но прекрасно траверсил дерево 60 метрового HIPAA документа.
500 1366622
>>66619
Молодец. И что?
501 1366624
>>66615
Ты читать умеешь? Я же написал, что всего этого в хвцкеле нет, впрочем, как и во всей парадигме ФП. Но 99% программистов выучились мыслить м погромировать императивно, поэтому им нахуй не нужен этот ФП.
502 1366626
>>66622
Хуй в оче, если ты не знаешь как работать с рекурсией - не еби мозг посетителям треда.
503 1366627
Ой бля, бамплимит уже.
504 1366632
>>66626
Лол, с первого вопроса бомбанул. Суть то твоего поста в чём? В документе деревьев много или что? Или там формат особоый который в 60 метрах миллиард деревьев содержит? Каким хером это хороший пример обьясни?

>ты не знаешь как работать с рекурсией


Я то знаю глупенький. Поэтому и предпочитаю этого не делать. А вот такие выскочки как раз ничего не знают. Слышали что это круто, а как начинаешь распрашивать про примеры и конкретные ситуации - сразу сливаются. Вот и ты слился сразу. Никаких деталей нет, кода нет, дал параметр 60 метров и всё. Молодец. Дальше что?
505 1366634
>>66619

>Health Insurance Portability and Accountability Act


Один лабу принёс, второй в ворде поработал. Суть всех кто рекурсии юзает. Реальный проект только у анона с директориями, и то он его написал без рекурсий.
506 1366635
>>66632
Ты уже заебал просто, я не говорю что её надо использовать везде и всегда, мань, хватит выдавать свои мысли за мои аргументы.

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

>>66634

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


Ты про этого? >>65916 Он же прямым тесктом написал что таки использовал рекурсию.
507 1366637
>>66635

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


>Ты про этого? >>65916


А где у него проект то? Код он так и не выложил. Я про этого.
>>66571
508 1366640
>>66635

>Почему ты приводишь именно этот пример, обьясни


>попадаешь в список долбоебов автоматически.


Ну вот видишь как мы с тобой быстро разобрались.
509 1366641
>>66627
Перекатывай.
510 1366643
>>66640
Ну да, ты записал себя в долбоебы и слился в пук гринтекстом, быстро с тобой разобрались.
511 1366645
>>66637
Это реальный проект? Это хороший код?
512 1366646
>>66643
Ты не смог про свой собственный >>66619 код рассказать ничего. Придумал что я считаю что "рекурсия ненужна", хотя вот >>65783 тут ясно всё написано, а теперь ты ещё и до пуков скатился. Ясно школьник. Себя в долбоёбы запиши.
513 1366650
>>66646
Во первых - ты изначально скатился в оскорбления и неоправданную агрессию к примеру из лабы, хотя пост был вообще не об этом.

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

В третьих - школьник тут только ты.
514 1366651
>>66645

>Это реальный проект?


В смысле "реальный"? Он компилируется и работает. Или ты сейчас попытаешься доебаться что он не написал тебе программу за 5 минут?

>Это хороший код?


Посмотрим что там написали другие аноны? А, ну да, ничего.
515 1366654
>>66650

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


Я написал что человек который применял рекурсии только на лабах - не совсем может судить об их практическом применении. Если его это оскорбляет - её проблемы. Я эту цель не преследовал.

>я свою позицию давно высказал


Ты обосрался с первого же поста и начал всех называть долбоёбами как только у тебя спросили подробности по проекту.
516 1366657
>>66654

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


Я анон с лабой, а не анон этот >>66619

Какая разница откуда пример, если рекурсия это только инструмент и успех зависит только от кого кто ей пользуется, это мой изначальный поинт с которым ты по всей видимости не согласен.
517 1366659
>>66657

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


Это и мой пойнт >>65783 Анон дальше привёл пример обхода директорий, я показал его слабые стороны. Ты же приехал с лабой, и сказал что рекурсия лучше потому-что ты 1 раз её применил. Чувствуешь разницу?
518 1366661
>>66657
Там два или три человека обсуждали рекурсии. Ты ворвался к ним с примером из лабы и решил что ты эксперт с 1 примером и всех можешь поставить на место?

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


Для информации, ты сейчас взял информацию с потолка и сам на неё обиделся.
519 1366662
>>66613
Проблема Хаскеля в том, что я года 3 пытаюсь понять что пишут хаскелисты, какие программы, и кто их потом использует. А так да, в чатах постоянно врываются, всем рассказывают какой хороший язык.
520 1366666
>>66657
Я же тебе пояснил в чём проблема >>66594 тут. Самый простейший и лёгкий пример когда стек забивается. Но ты почему-то подумал что неприязнь лично к тебе, лол.
521 1366667
>>66666
Сотона прав, рекурсии могут применять только синьоры помидоры 10+ лет опыта.
522 1366672
Блядь, вы чо, обезумели тут что ли? Вот вам метод из той самой программы с директориями

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());
}
}
522 1366672
Блядь, вы чо, обезумели тут что ли? Вот вам метод из той самой программы с директориями

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());
}
}
523 1366673
>>66659
Ну где я сказал что рекурсия лучше? Я сказал что она лучше конкретно применимо к деревьям, а не в 100% случаев.

>>66661

>Ты ворвался к ним с примером из лабы и решил что ты эксперт с 1 примером и всех можешь поставить на место?


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

>Самый простейший и лёгкий пример когда стек забивается.


У меня не забивался когда я их вычислял в ВУЗике, или ты имеешь ввиду написать Fib(100500) и посмотреть как все валится? Ну так не мудрено.
524 1366684
>>66376

>30-45 тыщь


Ну, так-то даже 30 штук баксов в год неплохо для какого-нибудь Мухосранска, чай, не в Калифорнии живёте.
525 1366693
>>66624

>99% программистов


иссессно. потому, что функциональная парадигма имеет не очень широкий пул применений. и те же 99% погромистов никогда не столкнутся даже с гипотетической необходимостью программировать функционально. а потуги разрабов языков запихнуть фп к себе, шобы быть модными, ничего, кроме фэйспалмов, не вызывает
526 1366803
Поцаны, где брать задачки попроще, на всякие массивы, циклы и побольше? Начал читать с# плеер гайд, дошел до пилежки крестиков-ноликов, ну это какая-то пизда. Мне такое не сделать.
527 1366810
>>66803
А что там сложного?
528 1366819
>>66810
Да я просто тупой. Не могу понять как там сделать взаимодействие классов друг с другом.
529 1366864
>>66819
А про какое взаимодействие идет речь/ты подразумеваешь?
530 1366874
>>66684
Рублей в месяц.
531 1366875
За ночь не перекатили ленивый программисты.
532 1366877
>>65238

>сидит на /fg


>знает их мемы про уток


>Оправдывается что не из этих


Лол, смешно. Но вообще в случае чего тебя никто не осуждает.
534 1366888
Перекатываемся в другой тред няшки.
>>1366885 (OP)
535 1368174
>>55872 (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" является тип, который недопустим в данном контексте.
535 1368174
>>55872 (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" является тип, который недопустим в данном контексте.
Тред утонул или удален.
Это копия, сохраненная 21 апреля 2019 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски