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


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

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

C#/Сишарп/.NET Тред - Шапка edition #16 /csharp/ /csharp/ C !ndViRcEtb2 24/12/19 Втр 19:54:06 15557021
image.png (402Кб, 470x600)
470x600
image.png (2805Кб, 1920x1200)
1920x1200
image.png (927Кб, 1200x675)
1200x675
image.png (4078Кб, 1600x2294)
1600x2294
Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

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

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

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

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

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

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

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

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

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

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

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

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

Прошлый тред тонет здесь: >>1528262 (OP)
C !ndViRcEtb2 24/12/19 Втр 19:54:57 15557032
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
Аноним 24/12/19 Втр 20:00:22 15557113
Аноним 24/12/19 Втр 20:01:04 15557124
>>1555711
Джаваскриптеру неприятно? Ну учи дальше новый фреймворк, пока трудотнетчики сидят на месте
Аноним 24/12/19 Втр 20:10:45 15557295
.jpg (169Кб, 800x800)
800x800
Короче, это снова я. В общем, я вчера(а может быть не вчера) жаловался на производительность своего супер-сервера и записей в БД, но сегодня лень было студию включать, я решил в VSCode чутка поправить, ну соответственно и запускал его во время проверок, не сломал ли я чего, без отладчика. Так вот, скорость возросла в разы, а эксепшены с тем что истекло время ожидания запроса к БД за час ее насилования ни разу не возникли(с дебагером через 5 минут начинались и все руинили, если ебануть безостановочную запись-апдейт) и вообще, еще и ни разу не тормознуло. Почему так? Почему с отладчиком и ошибки странные из EF, и тормоза, и внезапно начинаются скачки потребления ресурсов, а на голую - летает и нигде не падает?
Аноним 24/12/19 Втр 20:44:48 15557836
2019-11-11 23.1[...].jpg (52Кб, 450x281)
450x281
Перенесу сюда свой вопрос. Кто что думает насчет книги Герберта Шилдта "C# 4.0: полное руководство"? Насколько актуальна и полна книга? Не увидел её в списке литературы для изучения, хотя мои университетские преподы усиленно советовали её, пока учился.
Аноним 24/12/19 Втр 20:54:31 15557887
>>1555783
Для начинающего - нормальная. Не настолько уж сильно все поменялось за это время. Конечно, хорошо бы что-то поновей.
Аноним 24/12/19 Втр 20:55:01 15557898
>>1555712
Дурачок, C# уже 8 версии.
Аноним 24/12/19 Втр 20:55:56 15557919
image.png (28Кб, 1144x97)
1144x97
Аноним 24/12/19 Втр 20:56:38 155579210
>>1555791
Я прост обосрался, пытаюсь маняврировать
Аноним 24/12/19 Втр 20:59:49 155579511
>>1555789
Блядь, там отличий-то почти нихуя нет, при этом обратная совместимость во все поля. Это же не блядский С++, где между первыми версиями и последними отличий столько что мать ебал, тут же все попроще в плане изменений.
Аноним 24/12/19 Втр 21:12:26 155580112
Аноним 24/12/19 Втр 21:12:35 155580213
>>1555788
Благодарю за ответ. Думаю по ней учиться. Решил на всякий перестраховаться у анона.
Аноним 24/12/19 Втр 21:56:33 155586014
>>1555783
Если брать старьё, то лучше Рихтера. Из нового Троелсен топ.
Аноним 24/12/19 Втр 23:04:19 155594815
упец, шарпашы. Зырьте какое тестовое дали на джунскую должность

Программа будет использоваться для поиска файлов на диске

Пользователь следующие критерии и они должны быть сохранены при перезапуске программы:

1. Стартовая директория (с которой начинается поиск)

2. Шаблон имени файла

3. Набор символов, которые могут содержаться в файле



Затем пользователь нажимает кнопку Поиск и программа начинает отображать следующую информацию в режиме реального времени:

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

Пользователь должен иметь возможность остановить поиск в любой момент и затем либо продолжить его либо начать новый поиск.
Аноним 24/12/19 Втр 23:07:07 155595016
>>1555948
>упец
Супец
быстрофикс
Аноним 24/12/19 Втр 23:10:58 155596117
>>1555948
Любую домохозяйку уже джуном берут? Наверное и платят 60к?
Аноним 24/12/19 Втр 23:24:56 155598118
>>1555948
>Дерево не должно моргать
В WinForms делаешь DoubleBuffered = true, а в WPF двойная буферизация по дефолту используется, нужно всего лишь оптимальный ивент/луп для перерисовки написать. А к чистому WinAPI ручками бы пришлось прикручивать, да.
Аноним 24/12/19 Втр 23:28:18 155598419
>>1555981
Какой нахуй ивент луп, всё делает при помощи привязок к свойствам объекта и интерфейса INotifyPropertyChanged
Аноним 24/12/19 Втр 23:57:42 155600320
>>1555984
Не ивент луп, а ивент или луп, специально же слэш поставил. Я не знаю, какая у него/тебя архитектура программы, и как организована перерисовка - по какому-то условному ивенту (например, нахождение ещё не отрисованного каталога высокого уровня) или в лупе (каждые n миллисекунд). Имелось ввиду, что требуется только оптимальное написание вот этой части кода, а каких-либо телодвижений для прикручивания двойной буферизации в WPF совершать не нужно.
Аноним 25/12/19 Срд 03:24:57 155614221
Шарпач, я к вам с неткодом. На одном компьютере у меня работает тестовое приложение, и даже на двух компах в локалке удалось запустить, а вот одолеть NAT не получилось. Вернее, проблема даже не в нате, у меня просто пакеты не проходят через роутер. Пробросил порты, но это не помогло. В приложении я пробовал сокеты, потом перекатился на UdpClient и TcpClient - оба они не могут из одной сетки в другую перейти. Что может быть не так?
Аноним 25/12/19 Срд 04:51:53 155615522
>>1555703
>Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском)

2014-2015 - по новее что-нибудь есть?
Аноним 25/12/19 Срд 08:13:19 155621423
>>1555984
В винформс это говно тоже есть, да?
мимо-ньюфаг
Аноним 25/12/19 Срд 08:16:15 155621524
Аноним 25/12/19 Срд 08:17:22 155621625
>>1555961
Это только чтобы быть удостоенным права прийти на собеседование.
Аноним 25/12/19 Срд 08:18:44 155621726
>>1556214
Есть, но в впф это легче делается и быстрее
Аноним 25/12/19 Срд 08:22:32 155621927
>>1556216
Могу сделать за тебя, всего 5к возьму по-братски-аноновски. Сам посуди, ты эти деньги за пару часов на этой работе отобъешь.
Аноним 25/12/19 Срд 08:25:17 155622028
>>1556219
Ты шо, совсем нищеблядок, за 5к что-то делать? Я думал ойтишники пятерками жопу вытираюст после сранья.
Аноним 25/12/19 Срд 08:26:37 155622129
>>1556217
А в формочках этих ебаных никакого замла нету что ли? Как дизайнить формочку, просто контролы тягать мышкой штоле? Где гриды, где все? Что за хуйня?
Аноним 25/12/19 Срд 08:39:30 155622430
>>1556221
Да, деды тягали и ты тягай. Про MVVM вообще молчу, в формсах это сущий ад.
Аноним 25/12/19 Срд 08:47:53 155622831
>>1556224
Я как-то давно их ковырял, потом перешел на впф, год уже примерно. И сейчас вот эта залупа с тестовым заданием. Причем на собес то я в любом случае не пойду, лол.
Аноним 25/12/19 Срд 09:17:20 155623832
Хотите шок контента?
Параметры.ДолгПо = ПредыдущийМесяц( Параметры.Месяц, Число( Параметры.@МесДо ) + 1 );
Параметры.ДолгС = 01.01.1900;
Параметры.Кредиторы = Отчеты_ОрганизацияВОтчет( Параметры.@ДержателиДолга );
Параметры.ВыводитьВсех = Параметры.Флаги;
Параметры.МесяцДолга = ПредыдущийМесяц( Параметры.Месяц, 1 );
Параметры.@Раздел = 'Список лицевых';
КатегорияПостВОтчет = Извлечь( Параметры.@КатегорияПоставщиков, "" ) == "" ? -1 : Число( Параметры.@КатегорияПоставщиков );
ПоставщикВОтчет = Извлечь( Параметры.@Поставщик , "" ) == "" ? -1 : Число( Параметры.@Поставщик ) ;
КатегорияВОтчет = Извлечь( Параметры.@КатегорияУслуг, "" ) == "" ? -1 : Число( Параметры.@КатегорияУслуг );
УслугаВОтчет = Извлечь( Параметры.@Услуга, "" ) == "" ? -1 : Число( Параметры.@Услуга );
УКВОтчет = Извлечь( Параметры.@УК, "" ) == "" ? -1 : Число( Параметры.@УК );
Параметры.МояДата = ПредыдущийМесяц( Параметры.Месяц, 3 );
Аноним 25/12/19 Срд 09:49:04 155624733
>>1556215
потому что неткор появился, разор и прочее
Аноним 25/12/19 Срд 09:56:10 155625034
>>1556238
А на человеческом языке можно? Или они анально заставляют писать на собачьем?
Аноним 25/12/19 Срд 10:23:44 155625535
>>1556250
Я это не пишу, я пытаюсь разобраться в этой параше. У нас стоит купленная софтина, и местами работает не так, как нужно, поэтому приходится править. Я вообще не очень понимаю, зачем так извращаться, если сама софтина написана на джаве. Зачем этот птичий язык было изобретать, может кто-то объяснить ньюфагу?
Аноним 25/12/19 Срд 11:10:05 155628936
Мне надо как-то поработать с ORM, у меня есть проект WEB API c MVC, нашёл фреймвор для работы - linq2db, а куда писать код вообще не понял. В моделс создать класс из дб, а в хом контроллере реализовать запросы ?
https://github.com/linq2db/linq2db
Аноним 25/12/19 Срд 11:24:16 155629637
Работа в КАШЕМИР И ШЕЛК – это неравнодушное отношение к своему делу, сочетание профессионализма с поиском нестандартных решений, движение вперед - несмотря на преграды, и быстрое реагирование на вызовы рынка. Вместе с нашими клиентами коллектив компании образует настоящий клуб единомышленников, частью которого можете стать и Вы.
Наш слоган: СЧАСТЬЕ БЫТЬ ВМЕСТЕ.
Аноним 25/12/19 Срд 11:26:04 155629938
>>1556255
да это же свинособачий 1С язык. Enjoy it, my friend
Аноним 25/12/19 Срд 12:43:44 155634239
Если бы это был один эс, то я бы хоть мануалов бы нашел каких. А это вообще неведомая хуйня, пиздец. Меня уже выворачивает от этих буковок.
Аноним 25/12/19 Срд 12:54:25 155635340
>>1556342
Parametry.DolgPo = PredydushhijMesjac( Parametry.Mesjac, Chislo( Parametry.@MesDo ) + 1 );
Parametry.DolgS = 01.01.1900;
Parametry.Kreditory = Otchety_OrganizacijaVOtchet( Parametry.@DerzhateliDolga );
Parametry.Vyvodit'Vseh = Parametry.Flagi;
Parametry.MesjacDolga = PredydushhijMesjac( Parametry.Mesjac, 1 );
Parametry.@Razdel = 'Spisok licevyh';
KategorijaPostVOtchet = Izvlech'( Parametry.@KategorijaPostavshhikov, "" ) == "" ? -1 : Chislo( Parametry.@KategorijaPostavshhikov );
PostavshhikVOtchet = Izvlech'( Parametry.@Postavshhik , "" ) == "" ? -1 : Chislo( Parametry.@Postavshhik ) ;
KategorijaVOtchet = Izvlech'( Parametry.@KategorijaUslug, "" ) == "" ? -1 : Chislo( Parametry.@KategorijaUslug );
UslugaVOtchet = Izvlech'( Parametry.@Usluga, "" ) == "" ? -1 : Chislo( Parametry.@Usluga );
UKVOtchet = Izvlech'( Parametry.@UK, "" ) == "" ? -1 : Chislo( Parametry.@UK );
Parametry.MojaData = PredydushhijMesjac( Parametry.Mesjac, 3 );
Аноним 25/12/19 Срд 12:56:21 155635541
Аноним 25/12/19 Срд 13:09:01 155638142
image.png (1011Кб, 900x540)
900x540
Напишите правильный, современный стек для .Net Core 3.
Нужен ли asp MVC, что такое Razor (это часть MVC? или Отдельно). Что брать для базы данных. Чего нет для веб разработки в net core?
Аноним 25/12/19 Срд 13:11:56 155638843
>>1556381
зачем тебе стэк мертвого языка?
Аноним 25/12/19 Срд 13:17:59 155640044
Аноним 25/12/19 Срд 13:18:28 155640345
>>1556388
Я о си-шарпе, а не о джаве.
Аноним 25/12/19 Срд 13:19:42 155640746
>>1556400
>Воскресить его.
В таком случае твой стэк это MSIL и его компилируемые элементы. Когда воскресишь, приходи. Посмотрим, что получилось.
Аноним 25/12/19 Срд 13:29:40 155643947
image.png (306Кб, 480x360)
480x360
>>1556388
>зачем тебе
Скажи лучше, зачем ты сидишь в треде языка в которого не веришь. Тебя обижали шарп разработчики?
Аноним 25/12/19 Срд 13:37:02 155644648
BolvarLichKingC[...].jpg (324Кб, 801x1000)
801x1000
>>1556439
молодых оберегаю. Я как Болвар Фордрагон, хранитель засохшего на трусах говна
Аноним 25/12/19 Срд 13:43:28 155645549
Аноним 25/12/19 Срд 13:48:56 155646350
>>1556289
ниже есть Get started. https://linq2db.github.io/ - сходу нашел.
Хуй знает, как вы осваиваете язык, если вы даже нагуглить банальных вещей не можете
Аноним 25/12/19 Срд 13:50:01 155646851
>>1556463
Чел, ты... Блять, иди в пизду умник ебучий, я в курсе что там написано, поэтому и спросил куда код писать. Покажи мне, где тут написано об этом?
Аноним 25/12/19 Срд 13:50:41 155647052
>>1556463
Пиздец, нагуглил он нахуй, в ридми эта хуйня написана. Уёбок
Аноним 25/12/19 Срд 13:57:49 155647953
>>1556468
всмысле блять куда код писать? В IDE/CL не?
>>1556470
Так ты уебище тупенькое? Или тебе пальцем тыкнуть нужно, куда код копипастить?
Аноним 25/12/19 Срд 13:58:29 155648054
>>1556479
Ты жопой читаешь, уёбок?
> у меня есть проект WEB API c MVC, нашёл фреймвор для работы - linq2db, а куда писать код вообще не понял. В моделс создать класс из дб, а в хом контроллере реализовать запросы ?
Аноним 25/12/19 Срд 13:58:50 155648255
>>1556446
>молодых оберегаю
Лол, я думаю я даже старше тебя.

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

Хз что тебе от шарпа бомбит, высри нам свою историю боли, мы послушаем. в замен могу высрать про жабу и пузырь раздутый вокруг сие говна
Аноним 25/12/19 Срд 14:16:38 155650856
>>1556482

Ну так себе альтернатива, есличестно, в случае многотабличных интырпрайзных крудов та же херня со вкусом говна, только еще и с испорченным телефоном-балластом в виде команды фронтэнд-макак и девопса, с которыми вместо пяти секунд хуяк-хуяк на JSF+PF нужно совместно фичу делать.
Аноним 25/12/19 Срд 16:07:40 155673457
>>1556482
лол, я тоже с джавы вынуждено перекатился на шарп
Аноним 25/12/19 Срд 16:15:57 155674158
>>1556482
>А с 5 версии у них вообще все кроссплатформенно будет
Шел 2к19, в решетках 8 версия, а у тебя все 5. Если ты про кроссплатформенность, то это Core.
Энивей, все что ты высрал - твое субъективное мнение, которое != требованиям рынка. Открывай HH, language rate и чекай. ASP.NET 3.0+ я думаю в скором будет поддерживать какой ни будь новомодный язык с динамической типизацией без промежуточной перекомпиляции. Нужно же идти в ногу со временем. intelisense заменяет ошибки компилятора, не то что, как раньше.
>>1556480
>а в хом контроллере реализовать запросы
>реализовать запросы
>в хом контроллере
у тебя мать жива? Если все еще да, то после таких вопросов у меня для тебя плохие новости.
Твой вопрос был, захуярить ли интерфейс с БД в контроллер или создать отдельный класс? С кем я диалог веду, с табуреткой?
Для таких как ты, уебищь тупорылых, сыновей хуйни, делают GetStarted, где ПОШАГОВО расписывают, как применять интерфейс взаимодействия фреймворка к твоей свестелке-перделке.
Уровень программирования 2ch/pr, лучше удали нахуй
Аноним 25/12/19 Срд 16:16:27 155674259
>>1556734
>вынуждено
ты вынужден перекатиться в помойку, извини
Аноним 25/12/19 Срд 16:21:43 155674760
Аноним 25/12/19 Срд 16:40:17 155676361
>>1556741
Дебил путает версию Шарпа и дотнет но пытается пояснять за программирование на них
Ор
Аноним 25/12/19 Срд 16:42:24 155676462
>>1556747
Воу воу, вот это открытие, открывайте скорее шампанское. Ты думаешь индусятине с корпорации зла нужно было 17 лет, чтобы накатить .NET на Linux? Скорее всего просто WS сливают и IIS вместе с ним
Аноним 25/12/19 Срд 16:43:52 155676663
>>1556763
>Тем более сам си-шарп в разы удобнее как инструмент. А с 5 версии у них вообще все кроссплатформенно будет.
смотря в каком контексте читать. Я забываю, что двачеры мыслят сумбурно и не только временами не умеют читать, но и перескакивают с мысли на мысль.
Аноним 25/12/19 Срд 16:48:13 155677164
Привет парни, поясните неопытному пожалуйста, пишется ли на шарпике ну или что там из технологий .net/Asp.net ??? что-то подобное крудов на джанго? Или веб на шарпе это всегда большие ентерпрайз штуки и микросервисы???
Аноним 25/12/19 Срд 17:08:30 155678865
>>1556764
Ну все, пошло обострение, заговоры и прочее.

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

Сейчас мелкомягкие решились расширить свое участие на рынке, от чего вкуснятина посыпется на разработчика. Что как бы и не плохо.
Аноним 25/12/19 Срд 17:11:10 155679066
>>1556788
>Что как бы и не плохо.
Конечно, если ты не шизик красноглазый из нулевых.
Аноним 25/12/19 Срд 17:23:05 155679867
image.png (37Кб, 1040x378)
1040x378
image.png (26Кб, 1106x298)
1106x298
Он не видит в коннекшн стринге BookShop или не может подключиться к бд?
Аноним 25/12/19 Срд 17:29:17 155680068
>>1556798
Видимое первое, хотя не ясно почему
Аноним 25/12/19 Срд 17:34:25 155680269
Аноним 25/12/19 Срд 17:47:57 155680670
Я разобрался как устроить как сделать JWT аутенфикацию-авторизацию в API шном ASP NET приложении, работал с ним вручную через постмана. А как я могу прикрутить её к обычному ASP NET сайту, если в роли клиента у нас выступает браузер. Надо его как то заставить сохранить у себя токен и цеплять к каждому запросу к сайту или что?
Аноним 25/12/19 Срд 18:02:05 155681371
>>1556742
мне похуй че там думает какой-то анонизмус с двачей
если завтра все эти шарпы-джавы закроются и востребованными станут быдлокодеры на фортране, то я и туда вкачусь
лишь бы деньги платили
а то мне нужно на что-то путешествовать, игори для плойки покупать и шлюх ебать
Аноним 25/12/19 Срд 19:37:11 155686672
Поясните. Вот есть сервак, он принимает сообщения от устройств, что-то пишет в базу что пришло. Нужно сделать SPA чтобы с пришедшими данными что-то делать. Как будет правильнее, добавить уже к этому серваку всякую веб-фигню, либо же запилить отдельным проектом, на базе ASP.Net и просто обращаться к этой же БД, ну и остальные штуки крудовские запилить там?
Аноним 26/12/19 Чтв 01:24:14 155719073
quote-microsoft[...].jpg (42Кб, 850x400)
850x400
>>1556788
>ради своей выгоды и симулирует добро
Как молод ты и глуп и не видал больших залуп. Как давно ты знаком с продуктами той самой корпорациии? Ты блять историю Windows 95 почитай, про судебные дела, про EE 1.0, про скандал с Xerox
>решились расширить
сынок, хоть бы не пердел из под парты такую дичь. Мелкомягкие - это монополист условный в IT секторе. Она захотят туда, куда захотят, если это будет приносить профитаныч. Такие наивные блять, как дети
>>1556813
>мне похуй че там думает какой-то анонизмус с двачей
И тем не менее ты ему отвечаешь
>если завтра все эти шарпы-джавы закроются
гей-шлюхи предпологаю востребованы, вкатывайся туда
>шлюх ебать
С этого вообще проиграл. Видимо решетки только инфантилы и студентота задрачивает. Жаль вас.
Аноним 26/12/19 Чтв 01:51:59 155722774
>>1557190
> гей-шлюхи предпологаю востребованы
кто о чем, а вышивый о бане
Аноним 26/12/19 Чтв 02:32:03 155725375
>The C# Player's Guide
Слышал очень резкие отзывы, говорят книга - хуйня и учит порочным практикам, так ли это?
Аноним 26/12/19 Чтв 05:27:22 155730176
image.png (995Кб, 1600x2684)
1600x2684
>>1557190
Тебе то что с этого, ты был директором ксерокса?
Я в курсе EEE, но я так же в курсе оракла и какую подлянку гугл делал. И что мне теперь, как дурачок "воевать" с ними, нести святой флаг красноглазых? Просто почитай как делали не айти компании и приятно удивишься, что это такая вот обыденность в мире большого бизнеса.

Этот маня-мирок был прикольным в девяностых и нулевых, когда ты был студентотой, юным и глупым, была идеология противостояния, прям чуть ли не как в звездных войнах (вот тебе империя зла, вот тебе сопротивление). Но сейчас, когда ты большой и взрослый лоб, это кажется идиотизмом (и так оно и есть, потому что мир работает чуточку по другим правилам).
Аноним 26/12/19 Чтв 09:04:33 155734177
15596309320370.png (820Кб, 800x615)
800x615
Привет, Мир C# - тред.
Прошу анона помочь с такими вопросами:
Нужно объяснение на пальцах таких моментов:
1. в чем разница между делегатом и событием в плане использования?
Насколько я вижу сейчас - событие всегда можно заменить вызовом делегата, если не так - буду рад увидеть кусок кода с опровержением и пояснениями.
Т.е. я как бы понимаю, что делегат - это ссылка на функцию, и клиент может вызывать там что угодно с подходящей сигнатрурой, а события - механизм вызова делегатов, и добавление/удаление событий осуществляется через lock (по умолчанию), но мы можем кастомизировать "геттер" и "сеттер" события через add/remove. В этом вся разница? Как отвечать когла спросят?

2. Dependency Injection
Я понимаю принцип, но в до конца в голове никак не уложится.
Суть в том, что клиент перестает зависеть от конкретного класса и начинает зависеть от интерфейса/абстрактного класса, что позволяет нам переиспользовать клиент, например, для тестрования, подсовывая ему любую хуйню, лишь бы реализовывала интерфейс? Правильно я понимаю? Был бы рад куску кода с пояснениями.
3.Dependency Inversion - в чем разница с Dependency Injection? В чем проявляется именно inversion

P.S. Также приветсвуются ссылки на related - статьи/гитхабы etc.
Заранее благодарен.
Аноним 26/12/19 Чтв 09:23:09 155734778
>>1557253
Троелсена и Рихтера уже прочитал? А Шилдта?
Аноним 26/12/19 Чтв 10:47:01 155737679
>>1557341
> в чем разница между делегатом и событием в плане использования?
В плане использования событие может быть вызвано только из класса, содержащего его.
>всегда можно заменить вызовом делегата
В принципе можно. Просто тебе дали уже готовую реализацию паттерна паблишер/сабскрайбер.
>клиент может вызывать там что угодно с подходящей сигнатрурой,
Чет коряво. Есть делегат - ссылка на метод, она может ссылаться на метод с подходящей сигнатурой (учитывая ковариантность/контрвариантность). Делегат можно вызвать и будет вызван метод (или группа методов в случае мультикастделегата).
>а события - механизм вызова делегатов
Механизм вызова делегата, это скорее Invoke, а событие в шарпе, повторюсь, это реализация паблишер/сабскрайбер (основана на делегатах плюс еще чуть-чуть).>>1557341
>добавление/удаление событий осуществляется через lock (по умолчанию), но мы можем кастомизировать "геттер" и "сеттер" события через add/remove.
Да Только не через lock, а Interlocked.CompareExchange.
>>1557341
>2. Dependency Injection
>3. Dependency Inversion
Довольно скользкая тема, injection можно считать вариантом реализации inversion. Лучше почитай Боба Мартина «Принципы, паттерны и методики гибкой разработки на языке C#». Там весь солид неплохо разобран, с кодом схемами и прочим. Еще есть классный блог Сергея Теплякова http://sergeyteplyakov.blogspot.com/2014/11/di-vs-dip-vs-ioc.html
Аноним 26/12/19 Чтв 11:04:20 155738580
>>1556806
Да, хранишь в куках токен. Для авторизации запросов подписываешь им их.
Аноним 26/12/19 Чтв 11:34:54 155739481
bill-gates-pie-[...].jpg (45Кб, 600x314)
600x314
>>1557301
посвещать себя мелкомягким технологиям, как показала практика - вырванные годы. У них 2 альтернативы развития и обе агресивные:
1. Создали уникальный продукт - давим по всем фронтам;
2. Не создали уникальный продукт, а создали фейк ему и пытаемся вывести его вперед за счет приятных "плюшек", "сахарка", монотехнологичности
Решеточки то все знают, откуда взялись.
Насчет войны - это все бул щит в 2к19, когда все в опенсоурсе, даже мелкомягкие начали .NET core на гит выкладывать следовать мировым тенденциям, спустя лет так N-цать, ага И все, что делается у них - это путь стратегии №1 или №2.
Выпустили WebAssembly - Мелкомягкие - "Подержите мой Dhal, да у нас же Blazor"
Javascript всея, везде - Мелкомягкие - "Да у нас же TypeScript, ребята"
Мертвые технологии от мертвых душой продаванов.
Аноним 26/12/19 Чтв 12:19:27 155742282
>>1557376
Ситуация постепенно проясняется, спасибо тебе.
Аноним 26/12/19 Чтв 13:20:17 155749383
>>1557341
>в чем разница между делегатом и событием в плане использования?
В том, что event это модификатор, который создает проперти для делегата. То есть это как автоматические проперти с { get; set; } Компилятор генерирует приватное поле с делегатом и 2 метода для добавления и удаления обработчика.
Это нужно для инкапсуляции. Если просто сделать публичный делегат, то его может заменить, например, кто угодно. И все подписки проебутся.
Аноним 26/12/19 Чтв 13:45:37 155753684
>>1557341
>Dependency Inversion - в чем разница с Dependency Injection?
Ни в чем. Это ебанутые названия. Это то же самое, что strategy pattern.
Аноним 26/12/19 Чтв 15:24:27 155764685
>>1557347
Нет, я нюфаг, потому и спрашиваю.
Аноним 26/12/19 Чтв 16:26:34 155769586
>>1557646
Тогда начинай с Троелсена, потом читай Рихтера, потом можешь пройтись по Альбахири
Аноним 26/12/19 Чтв 16:31:48 155769887
>>1557695
>Троелсен
C# 6.0 and the .NET 4.6 Framework?
>РихтераCLR via C#
Аноним 26/12/19 Чтв 16:32:45 155770088
>>1557698
Блджад, самоотправилось. если это они, пойду читать тогда, спасибо
Аноним 26/12/19 Чтв 16:41:22 155770589
>>1557646
>я нюфаг
беги, глупец. Беги не оглядываясь
Аноним 26/12/19 Чтв 16:41:50 155770690
>>1556482
Поясни за жабу, сейчас сам начинаю вкатываться вот и думаю куда. Шарп мне представляется наиболее оптимальным вариантом для входа в IT.
Аноним 26/12/19 Чтв 16:45:15 155770991
Аноним 26/12/19 Чтв 16:57:28 155771792
Аноним 26/12/19 Чтв 17:11:56 155772993
>>1557698
Троелсена есть 7 на русском (на торрентах не искал, потому что читал на английском), Рихтер тот, главное последней редакции.
Аноним 26/12/19 Чтв 17:16:38 155773394
>>1557729
Спасибо. С английским проблем нет
Аноним 26/12/19 Чтв 17:19:00 155773795
Как быстро вкатиться с крестов в шарп? Открыл проект, а там main внутри класса, который внутри пространства имён, я охуел просто
Аноним 26/12/19 Чтв 17:22:36 155774096
>>1557737
>Как быстро вкатиться с крестов в шарп?
Также как с ассемблера в кресты. Также как с питона в шарп. Т. е. если с крестами сложностей не было и ты их действительно знаешь, то шарп должен показаться лёгким.
>Открыл проект, а там main внутри класса, который внутри пространства имён, я охуел просто
А выше идёт еще AppDomain который внутри процесса.
Аноним 26/12/19 Чтв 17:23:49 155774397
Capture.JPG (13Кб, 410x90)
410x90
>>1557729
Оно? Смущает конечно немного "Pro", потому как я совсем не про, но похоже ничего другого нет.
Аноним 26/12/19 Чтв 17:30:24 155775098
JGbeS4Pgwt0.jpg (8Кб, 216x84)
216x84
Сап, я только вкатываюсь в C# - объясните пожалуйста простым языком для чего нужны эти строчки: namespace, class и самое непонятное static void Main(string[] args) (пикрил). Не трольте, я просто глупенький новичок (я гуглил, но там слишком заумно). Из верстки хочу вкатиться в шарпы, очень интересным этот язык показался. Всем печенья и хорроров на Юнити.
Аноним 26/12/19 Чтв 17:39:51 155776099
>>1557743
Да, оно. Pro за счёт того что там рассматривается IL (то во что компилируются языки .Net платформы) и другие подробности, но при этом не детально. В остальном вполне для новичков подходит.
Аноним 26/12/19 Чтв 17:47:55 1557762100
Аноним 26/12/19 Чтв 17:53:35 1557765101
>>1557750
Сиди в своей верстке и жс, зачем тебе тяжеловесный бэкенд-язык энтерпрайза. Аргументы командной строки это аргс, неймспейсы нужны для разрешения конфликтов именования, класс это свалка переменных и функций
Аноним 26/12/19 Чтв 17:56:38 1557766102
>>1557765
Пойми, хочу перейти на новую ступень эволюции, а то сидеть в верстке - не хайпово
Аноним 26/12/19 Чтв 18:03:18 1557770103
>>1557750
>namespace, class
Для того чтобы изолировать переменные, методы и другую часть кода от того, что находится за ними. За namespace находятся другие namespace, все они являются частью AppDomain, который в свою очередь является частью Process, за процессом уже лежит система. За class находятся другие классы и все они лежат в одном namespace.
Вот и получается у тебя пирог вида:
Process
AppDomain
Namespace
Class
Делается это в основном для того чтобы можно было использовать свои и чужие классы в чужих и своих программах. Вот создал ты свою программу, у тебя есть в ней SomeClass, потом ты нашел другую программу и в ней есть нужный тебе класс, но название у него такое же SomeClass, при этом оно взаимодействует с другими классами в этой программе, т. е. просто переименовать его у тебя не получится, так как надо будет переименовать везде. А иногда у тебя вообще нет доступа к переименованию. Вот здесь и полезны пространства имён (namespace), ты просто пишешь using OtherSomeClass = OtherProgramm.SomeClass; и никаких конфликтов не происходит.
Также это позволяет не парится с выдумыванием новых имён для классов, достаточно придумать новый namespace и в нём продублировать нужное название. Либо вложить его в уже существующий класс.
В целом, всё это добавляется для большей гибкости и возможности использовать код повторно. Но сильно тоже нельзя увлекаться, потому что можно легко наплодить спагетти из пространств и классов.
>static void Main
А как по твоему компилятор узнает, с чего начинать твою программу? Вот для этого и существует такая условность, что точкой входа в программу будет являться статичный метод Main, если таких методов у тебя два, то при компиляции нужно указать, какой именно должен являться точкой для входа. Если такого метода нет, то это уже не программа, а библиотека с набором классов и методов.
>string[] args
Это параметры запуска, т.е то что ты вводишь в командной строке после .exe Или в свойствах ярлык. В коде ты можешь перебрать этот массив и в зависимости от ключей, выполнить какой-либо код или поставить какие-нибудь флаги.

Возможные виды данного метода можешь здесь посмотреть:
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/main-and-command-args/
Аноним 26/12/19 Чтв 18:05:30 1557773104
>>1557740
> А выше идёт еще AppDomain который внутри процесса.
Ну пиздец. Какое то ооп головного мозга
Аноним 26/12/19 Чтв 18:14:30 1557781105
>>1557770
Читаю книженцию по шарпу, мне дальше там же расскажут про это все?
Аноним 26/12/19 Чтв 18:15:30 1557782106
>>1557781
Я ебу какую ты читаешь ? Про это вкратце в начале обычно говорят, потом отдельно про AppDomain рассказать могут.
Аноним 26/12/19 Чтв 18:18:49 1557785107
image.png (488Кб, 579x818)
579x818
Аноним 26/12/19 Чтв 18:19:33 1557786108
>>1557785
Там в начале об это говорится, а про AppDomain отдельно.
Аноним 26/12/19 Чтв 18:58:34 1557819109
>>1557341
> чем разница между делегатом и событием в плане использования?
Событие удобнее использовать, при этом оно имеет ясный юзеркейс, делегаты же это как бы более общая фигня и использовать их можно по всякому. По сути, событие - сахарок, чтобы тебе в юзеркейсе было удобнее реализовывать штуки.
> Dependency Inversion
> В чем проявляется именно inversion
В том что у тебя класса высокого порядка не зависят от нижестоящих. Инжекшены это вариант инверсии, но ты можешь ее и иначе реализовывать.
Аноним 26/12/19 Чтв 19:05:22 1557822110
Аноним 26/12/19 Чтв 19:06:32 1557825111
>>1557822
Не троллю, хочу реально вкатиться
Аноним 26/12/19 Чтв 19:06:35 1557826112
Ребятки, узнал про такую штуку как Pipe, ту что в System.IO.Pipelines. Вроде интересно и захотел попробовать, но в туториалах показывается пример, где Socket в методе ReceiveAsync принимает в качестве аргумента Memory, но ведь ни в одной из перегрузок он не принимает Memory. Что за фигня? Или в .net Core несколько сокетов? Где искать тот что нужен, чтобы пайпу опробовать?
Аноним 26/12/19 Чтв 19:08:00 1557828113
>>1557825
Тогда не получится. Здесь тебе не бесплатная помощь как написать хеллоу ворлд.
Аноним 26/12/19 Чтв 19:08:35 1557829114
>>1557828
Тем более на таких вещах. Что будет дальше, страшно подумать.
Аноним 26/12/19 Чтв 20:11:33 1557911115
>>1557826
У тебя не тот сокет, очевидно же.
Аноним 26/12/19 Чтв 20:20:39 1557933116
>>1557911
Так а где тот взять? Я вот загуглил, таки есть расширение где сокет принимает Memory, вроде как он все равно в неймспейсе System.Net.Sockets, но студия упорно мне говорит, что нет такой перегрузки. Что я делаю не так-то?
Аноним 26/12/19 Чтв 20:24:23 1557945117
>>1557933
Не показываешь код.
Аноним 26/12/19 Чтв 20:54:40 1558031118
>>1557945
Хм... Сейчас в vscode попробовал и все есть, только перед этим я сокеты нугетом подтянул. Но буквально утром в универе не было, хотя там тот же неткор 3.1, правда не вскод, а студия 2019. Странно.
Аноним 27/12/19 Птн 10:11:25 1558520119
>>1555702 (OP)
>Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.

Что ж, синтаксис шарпа побогаче, чем в жабке, да. Вот только если джава проверена временем и доказала свою пригодность для энтерпрайза, то про шарп никто ничего не знает. Соответственно, будет сложнее найти ответы на вопросы и более вероятно наткнуться на недоработку платформы. Возможно, когда-нибудь шара взлетит.э, но сейчас перспективы у него ну очень туманные.
Аноним 27/12/19 Птн 10:44:51 1558528120
>>1558520
Это что, новая мантра жабадаунов перед новым днём разгребания легасидерьма? Жаба никому не нужна, она живёт только потому что на ней написаны тонны дерьма, которые сложно переписать на что-то хорошее, на шарп, например. Переписывается только малая часть, остальная продолжает гнить и обрастать новым говнокодом. Жаба не обновляется, обновляются только фреймворки, которые созданы для разгребания дерьма, такими же рукожопами, которое это дерьмо плодили.
Над "сложнее найти ответы" можно только посмеяться, зайдя на постоянно обновляющийся https://docs.microsoft.com/, не говоря о стаковерфлоу и тонны годной литературы сконцентрированной на шарпе.
Аноним 27/12/19 Птн 11:06:53 1558540121
>>1558528
как молод ты и глуп

мимо другой анон
Аноним 27/12/19 Птн 11:08:21 1558543122
>>1558540
Не отвлекайся, дед, таски сами себя не закроют, костыли сами себя не запилят.
Аноним 27/12/19 Птн 11:37:23 1558558123
>>1558543
проигрываю с анонов, которые хватаются за решетки, как утопающий за соломинку
Ты посмотри, какие вопросы задают в треде - тут одна студентота и вкатывальщики. Кроме шараг и курсов твои решетки никому не нужны
Аноним 27/12/19 Птн 11:52:31 1558569124
>>1558558
>одна студентота и вкатывальщики
Конечно, потому что все знающие уже давно освоили docs.microsoft и stackoverflow, которые содержат исчерпывающую информацию на все виды вопросов.
> хватаются за решетки, как утопающий за соломинку
Ага, вакансии с зарплатой 120к+ тому подтверждение, да? Уже 8 версия вышла, а всё еще "утопающий за соломинку" лол.
Аноним 27/12/19 Птн 12:06:30 1558580125
>>1558569
Не копротивляйся ты так, а то студентота в этом треде прочтет и реально захочет вкатываться в решетки в 2к20 удачи им, лол
Аноним 27/12/19 Птн 12:12:17 1558584126
>>1557706
Что именно тебя интересует?
Тонна легаси разных форматов, от самоделок, до EE и выдрюченного магией спринга. Все это низкокачественные продукты многолетней индустрии "хуяк-хуяк и впродакшен". Чтобы там на конференциях тебе не продавали, джава абсолютный кобол. Ничего не развивается, всем насрать. Вечно пытаешься нятнуть одну хрень на другую, все падает или жутко жрет ресурсы (в том числе и твое время).

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

JVM действительно хорош, с оговорками.
Аноним 27/12/19 Птн 12:14:13 1558587127
image.png (75Кб, 1029x610)
1029x610
У меня есть в дб куча XML, надо от туда взять дату и количество денег. Как можно десериализовать ХМL, ща читаю про это на метаните, написано что надо создать слишком много вещей, только для того чтобы десериализовать, мне тут 1000 хмл надо отфильтровать, в цикл эти 2 юзинга если запихну, то комп ахуеет. Есть другой способ?
Аноним 27/12/19 Птн 12:15:03 1558588128
>>1558580
Чому нет?
Как бы .net ни был говном, это все равно хоть какая-то платформа с заготовленными педалями
Порог входа низкий, придумывать ничего не нужно
Некоторым и такого гребства за 120к достаточно
Аноним 27/12/19 Птн 12:19:10 1558592129
>>1558588
>ни был говном
До .NET 3.0 это был ад, уж поверь.
>Порог входа низкий
относительно чего? Тем более это не критерий успеха языка
Никому на рыночке срань мелкософта не нужна
Аноним 27/12/19 Птн 12:21:18 1558594130
image.png (50Кб, 790x348)
790x348
image.png (25Кб, 478x279)
478x279
>>1558587
Десериализовал, на консоль ничего не выходит, нихуя не понятно
Аноним 27/12/19 Птн 12:24:35 1558597131
image.png (38Кб, 662x375)
662x375
Аноним 27/12/19 Птн 12:31:13 1558604132
South-Park-Comc[...].gif (2077Кб, 640x480)
640x480
>>1558594
>All2
ММММММММММММ, ВКУСНОТИЩА

Петров, садись. Это 2
Аноним 27/12/19 Птн 12:33:29 1558607133
>>1558604
Мне надо затестить метод и я переименую.
Аноним 27/12/19 Птн 12:42:30 1558613134
>>1558607
Студент - да мне затестить
Jun - да мне перед код-ревью
Mid - да мне перед мерджем
Sen - да мне перед релизом
Аноним 27/12/19 Птн 12:43:12 1558614135
>>1558613
Очень важная информация
Аноним 27/12/19 Птн 12:44:37 1558618136
>>1558614
Для вас, студентоты подзалупной - важнее вашей десериализации и велосипедов
Аноним 27/12/19 Птн 12:46:29 1558621137
>>1558618
Быдлокодер, ты видимо кроме как буковки как писать в названиях нихуя не умеешь, я всегда придерживаюсь регламентов и пропаганды майкрософт
Аноним 27/12/19 Птн 12:54:50 1558628138
source.gif (5150Кб, 630x350)
630x350
>>1558621
>All2
>надо затестить метод и я переименую.
>студент называет быдлокодером
ММММММММ, ВКУСНО
Аноним 27/12/19 Птн 12:56:04 1558629139
Аноним 27/12/19 Птн 13:00:29 1558634140
lnww-andiam-com[...].png (137Кб, 500x281)
500x281
>>1558629
Заовнил дауненка-студентика. Мелочи, а приятно
ММММММММ
Аноним 27/12/19 Птн 13:01:16 1558635141
>>1558634
>Заовнил
Школодотер, ты?
Аноним 27/12/19 Птн 13:02:04 1558636142
А потом прибегают вкатывальщики - "ДА ТУТ УЖЕ 16 ТРЕД, ЯЗЫК НЕ МОЖЕТ БЫТЬ МЕРТВЫЙ". То срач, то решение школьных задачек.
Аноним 27/12/19 Птн 13:12:37 1558651143
Gtbe+me+45yo+fo[...].jpg (26Кб, 500x372)
500x372
>>1558635
я тот, кто осилил ангельский, чтобы не задавать столько тупорылые вопросы на борде, а найти ответ на SOF
МММММ, КАКОЙ ВКУСНЫЙ ХЛЕБУШЕК
Аноним 27/12/19 Птн 20:04:04 1559082144
>>1558528
Так-то двачую. Вот буквально недавно на моей галере поручили переписать добро что было на джаве на шарпец, сам-то проектик небольшой, всего 25к строк кода на джаве, только вот на шарпе это вообще вышло в 7к строк, при этом производительность возросла в разы(конечно тут не совсем корректно про это писать, потому что я тупо переписывал на шарп, а просто тот же функционал реализовывал, но все же)
Аноним 27/12/19 Птн 20:11:18 1559088145
Мне интересно, чем же местного жабашизика так Шарп обидел
Тем временем Шарп и Аспнет с каждый годом растет в популярности лол
Аноним 27/12/19 Птн 22:55:25 1559181146
>>1558588
А где тогда высокий порог? В плюсах?
Аноним 27/12/19 Птн 23:02:30 1559187147
>>1559181
В крестах, например.
Аноним 27/12/19 Птн 23:08:37 1559192148
>>1559181
асм + c/c++ реверс
хаскель + c/c++ хайлоад
хтмл + цсс вебсайты
Аноним 27/12/19 Птн 23:29:49 1559215149
1.PNG (182Кб, 1771x925)
1771x925
2.PNG (87Кб, 1564x1012)
1564x1012
Я на новый рабочий комп поставил новую Visual Studio и понял как она обновилась за два года. На скринах 2017 и 2019.
Стоит ли переходить на домашнем компьютере на неё же? Есть какие-то косяки совместимости, какие-то скрытые камни и так далее.

В целом MSVS использую только для одного рабочего проекта, который не запускается под IntelliJ Rider. Также хочу поиграться с Xamarin, не знаю как у него работа с Райдером, возможно придётся писать код в MSVS.

MSVS говно, им нельзя пользоваться после того как попользовался Idea хотя бы недельку. Но она, MSVS, мне всё равно нужно
Аноним 27/12/19 Птн 23:59:35 1559246150
>>1559215
Главный косяк новой студии в том что эта менюшка создания проектов уродлива что пиздец.
Аноним 28/12/19 Суб 02:11:41 1559311151
>>1559246
работаю 2 года - ни разу не создавал новый проект
Аноним 28/12/19 Суб 06:59:39 1559358152
image.png (121Кб, 299x168)
299x168
Узнал что раст написан на юнити и подъофигел. Я думал там какие-то инди ковырялки пишут.
Шарп рулит.
Аноним 28/12/19 Суб 09:30:03 1559389153
D36823042AD2A17[...] (265Кб, 1920x1080)
1920x1080
>>1559358
Nы точно играл в раст? там баг на баге на каждом шагу. Вот другое дело Rimworld, этот Шедевр тоже на юнити сделан, тоже на шарпах(и на них же можно моды к нему пилить).
Аноним 28/12/19 Суб 11:10:21 1559425154
>>1559415
>Смотрите на меня я долбоеб
>Чел, ты долбоеб
>хаха я только притворялся земля пухом

Пиздец, зарепортил жирноту
Аноним 28/12/19 Суб 11:13:33 1559427155
>>1559415
Как же хочется что бы можно было на шарпах делать плагины для майнкрафта......
Аноним 28/12/19 Суб 12:26:09 1559465156
Блин, чё-то заебался уже. Остановился на вкате после обучения ORM , событий, обобщений. Дальше влом учиться. Дропнуть хочется. Либо я уже близок к вкату и могу найти работу, либо ещё дохуя чего учить. Если второе, то впизду, лучше во фронтенд пойду
Аноним 28/12/19 Суб 12:26:27 1559466157
>>1559465
Фронтенд как-то легче во много раз
Аноним 28/12/19 Суб 12:52:14 1559481158
>>1559465
> Либо я уже близок к вкату и могу найти работу
Только если поломойкой.
Аноним 28/12/19 Суб 13:14:48 1559491159
>>1559425
жирнота - это писать про процветающие решетки еще и отдельно asp.net указывать - вообще жир
>>1559465
>близок к вкату
ага, близок нет
>лучше во фронтенд пойду
можешь начинать учить, без него на решетки все равно не берут
>>1559481
двачую адеквата
Аноним 28/12/19 Суб 13:24:50 1559497160
image.png (26Кб, 803x443)
803x443
image.png (16Кб, 779x302)
779x302
Аноним 28/12/19 Суб 14:28:43 1559548161
Аноним 28/12/19 Суб 14:45:55 1559556162
>>1559548
То есть жаба сосет и весь шум вокруг нее это чистой воды хайп.
Аноним 28/12/19 Суб 14:52:33 1559565163
Аноним 28/12/19 Суб 17:17:22 1559700164
>>1559548
>Я не знаю что это за ресурс и насколько достоверно он собирает статистику.
>Стаковерфлоу
>Я не знаю что это за ресурс
Пиздец. И это хуйло что-то поясняет в треде кому-то.
Аноним 28/12/19 Суб 17:17:47 1559702165
>>1559700
А, блядь
Окей, я обосрался
Аноним 28/12/19 Суб 19:24:46 1559843166
>>1559556
Жаба кодер зарабатывает больше шарписта. На жабе написано много библиотек, часть из которых тупо 1 в 1 скомуниздили на шарп.

А так, в целом, и жаба, и жаба кодер сосут.
Аноним 28/12/19 Суб 19:44:49 1559862167
>>1559843
>Жаба кодер зарабатывает больше шарписта
И реально много там?
Надо еще среднее значение по определенному количеству посмотреть, а не только топ "прайсы".
Но да,у джависта больше ебли, он заслуживает это.
Особенно легаси на джаве, самое токсичное что я видел. Эта работа не стоит никаких надбавок.
Аноним 28/12/19 Суб 19:47:25 1559866168
>>1559843
>часть из которых тупо 1 в 1 скомуниздили на шарп.
Хорошие решения вообще надо унифицировать.
Аноним 28/12/19 Суб 20:08:22 1559884169
>>1559843
> Жаба кодер зарабатывает больше шарписта
Это было раньше, когда шарп был приколочен к винде и M$ стеку. На данный момент уже не так.
> На жабе написано много библиотек
На питоне тоже много библиотек, даже больше чем на джаве, давай будем считать что питон теперь ванлав и вообще в любых задачах всех уделывает.
> часть из которых тупо 1 в 1 скомуниздили на шарп
Не скомуниздил, а позаимствовал удачные решения. Так-то, вообще смешно это слушать, учитывая историю джавы и M$, когда мелкомягкие вложились в развитие жабы, а та их опрокинула через жопу, вполне имеют моральное право.
Аноним 28/12/19 Суб 21:05:07 1559909170
>>1559884
>На данный момент уже не так.
По результатам опроса Stack Overflow за 2019 жаба на дне по зарплатам. Но лучше смотреть по секторам применения. Например, банковская сфера и богомерзкие жаба аплеты, которые работают на определенных минорных версиях IE 11 и каком-то древнем Firefox, всё еще живы. Т.е. безопасность и всякие хайлоады, а не мобилки и автотесты. Удачи заставить переписать всё это легаси говно, которое уже работает и приносит деньги.

Потом, я привёл лишь один из доводов, которые мне приводят знакомые жаба кодеры в пользу жабы. Дорогие языки из той таблицы, как F#, Rust, WebAssembly не просто так ведь дорогие: попробуй еще найди вакансию на этих языках и обычно это узкая направленность. Другое дело Scala и Kotlin, на которые жаба кодеры активно пересаживаются в промышленных масштабах и с умным видом задвигают про всякие аппликативные функторы. Кстати, туда же Go, на который активно пересаживаются пхписты и которые рекламируют его из всех щелей как манна небесная.

>На питоне тоже много библиотек
У каждого языка своё применение. Например, питон отлично заходит в AWS стеке, потом идет нода. Шарп проигрывает питону и ноде в производительности. Возможно, когда появится 3.1 на AWS, это исправит положение, так как рантайм F# обгоняет любой другой язык, чуть-чуть от него отстает C#.

>Не скомуниздил, а позаимствовал удачные решения
Это заслуга независимых разработчиков, а не мелкомягких. Например, если взять то же машинное обучение, благодаря которому питон стремительно развился в последнее время, то поделие от мелкомягких (https://github.com/dotnet/machinelearning) в значительной мере всирает TensorFlow.NET, который вообще пародирует конвенции питона и выглядит очень чуждо на C#.
Аноним 28/12/19 Суб 21:50:47 1559926171
Почему сокеты быстрее чем TcpClient+TcpListener? Вообще в чем смысл-то вторых, если они, по сути, ничего сверх удобного не дают?
Аноним 28/12/19 Суб 22:09:57 1559939172
>>1559926
Спорно, что быстрее. TcpClient и TcpListener - это просто обертки над Socket, с целью упростить работу с TCP сокетами. Класс Socket поддерживает другие протоколы и более тонкую настройку работы.
Аноним 28/12/19 Суб 22:54:27 1559960173
>>1559939
Ну, как-бы я проверил просто: принимаю клиента, асинхронно читаю и шлю то что пришло обратно, закрываю подключение. На 10к подключений, сокетом смог больше принять-обработать-отослать, чем связкой TcpListener+TcpClient. Правда я в случае с сокетами не делал никакого стрима для чтения, а писал в Memory методом ReceiveAsync, а клиент, как я понимаю, создает стрим, и ему пришлось ReadAsync создавать за кулисами, пусть и получал я в ту же Memory. Так вот, тех кого принять не смог, соответственно не смог создать сессию, у сокета в разы меньше.
Аноним 28/12/19 Суб 23:11:17 1559971174
>>1559926
>>1559960

Смысл в том, что в реальных проектах, если ты хочешь использовать только Socket, тебе придётся реализовать всё то, что есть в TcpClient+TcpListener и в итоге у тебя либо получится также, либо хуже. Может и лучше получится, но тогда твой инструмент будет направлен на что-то конкретное, в нём не будет универсальности TcpClient+TcpListener.
Аноним 28/12/19 Суб 23:12:33 1559972175
>>1559358
Escape from Tarkov на Unity написан.
Аноним 28/12/19 Суб 23:31:32 1559990176
bump
Аноним 28/12/19 Суб 23:35:59 1559993177
Хм, а у шарпика есть маскотик? Какая-то анимедевочка или еще что-то? А то у всех есть хотя бы в виде змеюки какой-то либо чашки кофе, а у шарпа что?
Аноним 28/12/19 Суб 23:39:28 1559996178
Аноним 28/12/19 Суб 23:43:01 1560000179
>>1559996
Ну, такой себе потомок. Ни обратной совместимости с обоими, ни такой же простоты стрельнуть себе в ногу на ровном месте, все обернуто в безопасный код, чтобы словить утечку памяти - нужно постараться. Да даже синтаксис только на первый взгляд похож, при повтором взгляде уже заметно слишком много различий.
Аноним 28/12/19 Суб 23:47:37 1560003180
18C0661B-86F1-4[...].png (59Кб, 500x491)
500x491
Аноним 29/12/19 Вск 00:27:39 1560040181
CSharp-tan.png (1061Кб, 1000x1413)
1000x1413
>>1559993
Был официальный маскот. Какой-то Andy (Anders Hejlsberg): https://twitter.com/pjf/status/1154285137040826369

Аниме девку при желании можно найти на что угодно, пикрелейтед, набор стикеров за бакс.
Аноним 29/12/19 Вск 01:04:53 1560060182
чем объясняется горячее желание выебать персонификацию языка программирования?
Аноним 29/12/19 Вск 09:41:21 1560133183
image.png (19Кб, 259x224)
259x224
>>1560060
Глубокой любовью к языку, конечно же.
Аноним 29/12/19 Вск 09:54:28 1560136184
Аннотация 2019-[...].png (157Кб, 1301x875)
1301x875
2.png (25Кб, 432x282)
432x282
Котаны, не могу собрать все сообщения с мыла, что за херня? Я же индексы даже не использую. Использую это
ActiveUp.Net.Mail
Или посоветуйте, как лучше было бы все собрать с мыла яндекса. Так как вторым способом собирается пиздец долго.
Аноним 29/12/19 Вск 11:46:51 1560168185
>>1560060
Тем, что ты не можешь выебать язык программирования без его персонификации.
Аноним 29/12/19 Вск 12:02:49 1560173186
>>1560136
> Я же индексы даже не использую.
Откуда ты знаешь что там внутри библиотеки используется? Читай документацию и думай, что у тебя не так пойти могло.
Аноним 29/12/19 Вск 12:28:13 1560188187
https://youit.pro/map/dotnetweb#csharp нашел тут roadmap. Что скажете? Это реально столько знаний нужно для джуниора? Мне кажется я за всю жизнь и половины этого не изучу.
Аноним 29/12/19 Вск 12:38:58 1560196188
>>1560188
Выучи всё что со знаком трейни, а остольное учи по мере необходимости. Если ты всё подряд читать будешь, то пока до практики дойдёшь, уже все знания улетучатся, так и попадёшь в вечный цикл чтения и изучения. Без практики никакого смысла в обучении нет.
Аноним 29/12/19 Вск 12:41:34 1560201189
g.DrawImage(bmp, new Point((int)(resolutionOfArray - bmp.Width) / 2, (int)(resolutionOfArray - bmp.Height) / 2));
Bitmap dd = new Bitmap(150, 150,g);
dd.Save("thi.bmp");
Почему сохраняется просто белое изображение? Если сохранять bmp, то все нормально
Аноним 29/12/19 Вск 12:47:09 1560205190
>>1560196
Чего я точно понял, это то что моих 1-2 часов в день практики и изучения(и не каждый день к тому же) точно недостаточно, нужно уделять намного больше времени.
Аноним 29/12/19 Вск 12:51:59 1560212191
>>1560205
Цель то у тебя есть? Если нет проекта в планах, то и нет смысла что-либо учить.
Аноним 29/12/19 Вск 12:54:52 1560215192
>>1560212
есть проект, пока реализую его в консольном виде, потом хочу реализовать в виде web приложения и telegram бота, и желательно это все связать между собой.
Аноним 29/12/19 Вск 13:19:48 1560236193
Можно ли Visua Studio container tools как-то использовать с Docker Toolbox? Docker Desktop у меня не устанавливается.
Аноним 29/12/19 Вск 13:59:08 1560301194
>>1559556
>>1559843
как же проигрываю со студентов(в лучше случае джунов) рассуждающих о рынке и о том, кто там у кого сосет
вы же просто дегенераты ебанные
вас на реальной работе за людей считать не будут, если вы слух будете подобные вещи говорить

а если по теме - то джава и шарп это языки близнецы, с + - одинаковыми зарплатами, одинаковыи проектами и одинаковы кол-вом вакансий
и оба языка еще очень долгое время будут востребованными на рынке труда
Аноним 29/12/19 Вск 14:16:11 1560312195
Аноним 29/12/19 Вск 14:44:37 1560332196
>>1560301
>а если по теме - то джава и шарп это языки близнецы, с + - одинаковыми зарплатами, одинаковыи проектами и одинаковы кол-вом вакансий
Если ты так рассуждаешь, то ты вебмакака, которая не чем не лучше студента или джуна.
Аноним 29/12/19 Вск 15:53:16 1560410197
>>1559311
Ты не пишешь код для себя? Вон из профессии.
Аноним 29/12/19 Вск 17:19:35 1560457198
>>1559246
Однажды создал шаблон, теперь пишу dotnet new прокидываю его. Брат жив, зависимость есть.
Аноним 30/12/19 Пнд 06:50:28 1560821199
где используется C# ? поясните нюфане-вкатывальщику
Аноним 30/12/19 Пнд 10:37:14 1560870200
>>1560821
В бэкенде и десктопе.
Аноним 30/12/19 Пнд 11:58:58 1560891201
>>1560821
ыааа как гуглить ыаа
Аноним 30/12/19 Пнд 12:13:47 1560894202
>>1560821
Кровавый энтерпрайз.
Аноним 30/12/19 Пнд 12:37:21 1560905203
>>1560821
пет проджекты студенты делают и в шарагах изучают
Аноним 30/12/19 Пнд 13:58:49 1560962204
Аноним 30/12/19 Пнд 14:50:11 1561005205
Аноним 30/12/19 Пнд 15:11:11 1561017206
>>1560891
действительно, а давайте лучше хуклить, вместо того, чтобы спросить в соответствующем треде ыааа ыаа

топ решение
Аноним 30/12/19 Пнд 15:15:45 1561026207
>>1560870
>>1560894
>>1561005

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

А во что из этих двух сортов говна приятнее нырять?
30/12/19 Пнд 15:19:13 1561030208
>>1561026
оба говно, оба жутко не приятны
лучше и не начинай, всё равно ничего у тебя не получится ;)
Идеи для курсача Аноним 30/12/19 Пнд 15:55:23 1561052209
Сап, аноны, накидайте несколько хороших идей, что написать на курсовую работу. Второй курс, предмет - ООП, на шарпе.

Желательно не слишком сложное и не слишком простое, у меня пока есть две идеи: ftp-клиент и vnc-клиент.
Аноним 30/12/19 Пнд 17:00:53 1561143210
>>1561052
Записную книжку для хранения заметок.
Аноним 30/12/19 Пнд 17:42:03 1561202211
>>1561052
фтп клиент - хорошая идея
Аноним 30/12/19 Пнд 18:08:42 1561228212
>>1561026
>А во что из этих двух сортов говна приятнее нырять?
Ну в бекенд, наверное. Вакансий больше, конкуренция, я думаю, поменьше относительно геймдев разрабов (но это не точно)
Аноним 30/12/19 Пнд 22:22:34 1561506213
>>1561026
>во что из этих двух сортов говна приятнее нырять
судя по посту - ныряй туда, где больше вакансий. Те, кому прет, те не спрашивают куда им
Аноним 30/12/19 Пнд 22:45:37 1561530214
Есть с два десятка разных форматов файлов (Format). Каждый формат читается и записывается по-разному.
Логики чтения/записи довольно много, поэтому решил вынести её в отдельные классы (Reader/Writer).
Внешний пользователь работает только с классом Format и его производными.
Для единообразия апи классов Reader/Writer использованы интерфейсы.
Вопрос: оправдано это или нет? Или лучше будет удалить интерфейсы (IReader/IWriter) и использовать паттерн шаблонный метод?
Кто бы как реализовал данную задачу?

https://pastebin.com/Vkgd5QH2
Аноним 30/12/19 Пнд 22:48:33 1561534215
>>1561530
Шаблонный метод нужен там где есть метод-шаблон
А у тебя типичная стратегия
Аноним 30/12/19 Пнд 23:25:42 1561578216
>>1561534
>А у тебя типичная стратегия
Все дело в том, что пользователь не будет на лету заменять реализацию IReader/IWriter. Он даже не будет знать про их существование.
Они что-то вроде внутреннего апи получаются. Пока не знаю, будут ли эти классы выходить наружу и использоваться отдельно от класса Format.

Корректно ли спроектированы классы? Или нужно что-то изменить?
Аноним 30/12/19 Пнд 23:38:59 1561585217
>>1561534
>>1561530
Вообще это больше к команде чем к стратегии.
Аноним 31/12/19 Втр 00:32:59 1561607218
>>1561530
более менее нормально

я бы попробовал избавиться от производных классов Format, иметь только один формат класс и передавать ему в конструктор IReader & IWriter

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

интерфейсы немного поковырять, что бы была понятна разница между парами Reader/Writer и Format
Аноним 31/12/19 Втр 02:24:17 1561665219
>>1561530
О, это ж Service Locator. Знавал я несколько проектов, пропитанных этой гадостью. Какая же боль поддерживать это говно. Сразу хочется перерезать горло той тваре, которая это говно добавило, особенно, если ещё додумалось сделать его статическим классом аля синглтоном.

Dependency Injection, описанная выше, нормальная (читай привычная) замена, пока конструктор не начнёт принимать огромное число зависимостей. Додумаешься до контекста и сделаешь кое-что страшнее Service Locator. Лет через 5-10 поймёшь, что не надо плодить сущности без надобности, нет универсального решения и существуют подходы, лучше DI, например Dependency Rejection.
Аноним 31/12/19 Втр 02:40:16 1561672220
Аноним 31/12/19 Втр 02:51:59 1561674221
>>1561052
Ещё есть варианты у уважаемых сисярп господ? Я пока всё ещё склонен к VNC клиенту, уже начал rfc читать
Аноним 31/12/19 Втр 03:02:37 1561675222
>>1561672
FormatFactory - это нехуя не фабрика, а Service Locator, у него есть определенные свойства, которые его сразу выдают. Например, это говно вообще не поддается тестированию в месте использования, в отличии от фабрики. По ссылке одна из его вариаций реализации.
Аноним 31/12/19 Втр 03:55:48 1561681223
Аноним 31/12/19 Втр 08:18:39 1561700224
Блять, заебали меня эти ваши параллельности вонючие. Как с ними работать то нормально? Ну есть у меня функция, которая тянет за собой еще штук 5 других, ну создаю я таску, запускаю. Теперь надо остановить ее. Мне нужно передать в эту функцию канцелейшен токен и везде проверять, не изменилось ли значение? Да это же хуйня какая-то. У меня там дохуя функций и в каждой циклы, и исполняться же может в любом месте, когда я нажму на стоп. Т.е. оно может не тормознуть сразу а сделает еще какое-то действие, которое все мне нахуй испортит. Заебало блять.
Аноним 31/12/19 Втр 12:24:59 1561743225
>>1561700
>сделает еще какое-то действие, которое все мне нахуй испортит.
Значит проблема не в параллельности, а в архитектуре твоей говнопрограммы.
Аноним 31/12/19 Втр 13:13:46 1561760226
>>1561743
Не могу исключать такой вероятности. Тогда объясни, если я нахожусь внутри цикла и что-то там делаю и в этот момент хочу остановить таску, что тогда произойдет? Она же сразу не выйдет из цикла, да?
Аноним 31/12/19 Втр 14:35:27 1561784227
>>1561585
>Вообще это больше к команде чем к стратегии.
Это ты относительно IReader и IWriter?

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

>и передавать ему в конструктор IReader & IWriter
С этим пунктом всё понятно.

>далее, я бы попробовал объединить пары Reader и Writer классов в один класс, так как они наверняка будут семантически связаны и проще иметь все эти правила в одном месте
Reader и Writer безусловного связаны семантически, так как действия противоположные друг другу. Класс Format как раз и объдиняет их.

>интерфейсы немного поковырять, что бы была понятна разница между парами Reader/Writer и Format
С этим пунктом тоже не очень ясно.

Можешь набросать пример, как ты это видишь?

>>1561607
>О, это ж Service Locator
>>1561675
>FormatFactory - это нехуя не фабрика, а Service Locator
Самая обычная фабрика. Пробегает по списку форматов и находит тот, который соответствует расширению файла.

https://pastebin.com/Jpr3NCLQ
Аноним 31/12/19 Втр 14:46:54 1561787228
>>1560410
Задрот, я через пару лет стану твоим менеджером-начальником и буду ебашить тебя кнутом по спине и ебать за проебанные дедлайны. Ты будешь молчать как терпила, а на выходных "изливать боль" на анонимных параша вроде двача или ебаного.ит
Аноним 31/12/19 Втр 14:52:02 1561788229
.jpg (216Кб, 1200x817)
1200x817
Короче, где почитать про DI с примерчиками на шарпе, где берутся не чужие реализации DI и используются, а пилится
Аноним 31/12/19 Втр 15:01:31 1561792230
>>1561787
Неужели так все жестко в этом вашем ойти? Начальники такие пидоры штоле?
Аноним 31/12/19 Втр 15:24:51 1561800231
seemann.png (2699Кб, 2213x2775)
2213x2775
Аноним 31/12/19 Втр 15:45:59 1561810232
>>1561787
Долбоеб вкатывающийся в менеджмент через программирование через пару лет может расчитывать только на позицию junior cocksucker.
Аноним 31/12/19 Втр 15:50:40 1561811233
>>1561800
У вас нет нормально DI
Аноним 31/12/19 Втр 16:03:07 1561816234
>>1561810
Как раз наоборот - большинство нормальных менеджеров которых я встречал были бывшии разрабами, а вот "успешные успехи", никогда кода в жизни не нюхавшие или хотя бы тестировавшие - это поголовный сброд с которым работать неудобно.
>>1561792
Люди бывают разные и ситуации тоже. Если сравнивать с другими сферами, то в айти охуенное начальство + у рядового гребца вполне есть возожность самому дорасти до начальника.
Аноним 31/12/19 Втр 17:59:34 1561883235
Господа, чего бы почитать по шарпу, чтобы стать охуенно востребованным, чтобы можно было на собеседовании загнобить синьера своими знаниями?
Аноним 31/12/19 Втр 18:01:54 1561886236
Аноним 31/12/19 Втр 18:04:28 1561890237
143049638445395[...].jpg (53Кб, 550x825)
550x825
Аноним 31/12/19 Втр 18:04:39 1561891238
>>1561883
>31
>чего бы прочитать по шарпу
Можешь не напрягаться, на собеседовании тебя загнобят вопросом "Как вы отметили Новый Год?"
Аноним 31/12/19 Втр 18:10:15 1561898239
>>1561883
По факту, тебе нужно хорошо знать и понимать предметную область в которой будешь работать. Программист в вакууме первый год это одни расходы и берут их на вырост. Если бы бухгалтеры и прочие были чуть более обучаемы, кодеры бы были работодателям не нужны.
Т.е. план следующий: Ты изучаешь основы кодинга, т.е. синтаксис, базовые алгоритмы и прочее; затем изучаешь основы ООП, опять же, базовые вещи про инкапсуляцию, наследование, полиморфизм; затем выбираешь область в которой хочешь развиваться, идешь туда обычным работником, работаешь годик, потом говоришь что умеешь кодить и хотел бы в отдел автоматизации пойти и тебя без лишних вопросов туда отправят, если ты со своей работой справляешься нормально.
Я сейчас пьян, новый год же, но суть: работодателя не ебет как ты делаешь то что ты делаешь, хочешь хоть на ассемблере ебашь, важно чтобы было в срок и выполняло все требования. Всё. Не больше и не меньше. Если ты понимаешь как предметная область работает изнутри, то с вероятностью 95% тебе не нужно будет объяснять, чего бухгалтер там хочет получить, почему ты сделал хуйню, хотя работал по ТЗ и т.д. и ты сделаешь все нормально. Это то что хочет работодатель, на технологии, архитектуру и прочее он срать хотел с высокой колокольни: Есть бизнес задачи и их нужно решить, если ты знаешь как их решать, то тебе всегда будут рады в любой сфере, если ты просто умеешь писать код, то тебя придется учить -> ты должен конкурировать с кучей других таких же ебланов, которые только код писать умеют.
Аноним 31/12/19 Втр 18:10:41 1561899240
Аноним 31/12/19 Втр 18:17:43 1561906241
>>1561898
Понял, спасибо, учту. Я в муниципалочке работаю, я уже писал где-то выше, кодирую хуйню, которая тут никому не нужна. Ну, т.е. и без нее справляются, так что кодирую больше для себя. Только одну хуйню написал, без которой тут никак в силу того, что ввели обязательные онлайн-кассы и в них нужно выгружать инфу по платежам, понятно, не вручную. Зачем-то начал изучать впф, хотя, насколько я понял, сейчас востребованнее асп и всякие ентити фреймворк, вебапи и еще другие хуйни, которых я пока не знаю. Сейчас, вот, решил выдрочить сам язык как следует, а дальше, наверное, полезу в асп, благо работка есть, которая худо-бедно кормит и позволяет что-то изучать.
Аноним 01/01/20 Срд 05:36:17 1562263242
Сап, шарпач. Поясните, чём с точки зрения разработчика отличается просто дотнет и коре. Я к чему. Хочу вкатиться в asp, но все книги и учебники про старый дотнет.
Аноним 01/01/20 Срд 11:57:50 1562314243
>>1562263
Ну вкатывайся в обычный асп, на коре мало кто сейчас разрабатывает, это всё в будущем
Аноним 01/01/20 Срд 12:01:17 1562316244
Аноним 01/01/20 Срд 19:56:55 1562566245
Аноним 01/01/20 Срд 20:07:13 1562575246
Есть клиентская форма для заполнения полей. Условно для клиента доступно заполнение 2 необязательных полей и 1 обязательное. Как реализовать метод, через 4 метода, где 1 будет реализован через все 4 заполненных метода, а 3 остальные с комбинациями полей? Или все в один метод с If-else?

На пальцах: POCO:
public class User{
[Required]
string Name {get; set;}
string LastName {get; set;}
string Position {get; set;}
}

public class UserUI{
public void GetData(string name, string lastName, string position)
{
User user = new User();
user.Name = name;
user.LastName = lastName;
user.Position = position;
db.Add(user);
db.Save();
}
public void GetData(string name, string lastName)
{
this.GetData(name, lastName, null)
}
ETC...

Или
public class UserUI{
public void GetData(User user)
{
if(user.Name!=null){
db.Add(user);
db.Save();
}
}
Аноним 01/01/20 Срд 20:47:52 1562586247
>>1562575
клиент создаёт объект UserDTO, он передаётся в GetData (хуёвое кстати название) и там уже копируешь из DTO в User
Аноним 02/01/20 Чтв 01:45:29 1562670248
Еще вопрос. Возможно ты >>1562586
знаешь ответ.
Есть DAL уровень. В него входят CRUD методы на каждую POCO entity. Но если у меня для UI помимо обычного Create есть еще проверки на другие условия - можно ли это отнести к Business logic? К примеру - приход на склад с проверкой количества больше 0. Или проверка на уже существующее название? Что обычно на уровене DAL, exception, проверки?
Аноним 02/01/20 Чтв 02:45:16 1562687249
>>1562670
dal тонкая обёртка/адаптер над нижележащей персистентностью, будь то sqlserver, dynamodb или завтра вообще .txt файлы
реализаций dal-ов в проекте может быть несколько
поэтому твои проверки лучше держать в другом месте
Аноним 02/01/20 Чтв 02:49:17 1562688250
>>1562687
понял, спасибо. Еще вопросы, если не влень отвечать. В классах business logic нужно ли делать DI контейнеры на все сервисы, типо automapper, DAL, messageService, loggers? Я по привычке все реализовываю через интерфейсы создаю класс, под него делаю интерфейс и реализовую в классе, потом передаю не класс, а интерфейс.
По сути врядли будет подмена другой реализации через интерфейс, но это хорошая практика на сколько я знаю писать на абстрактном уровне. С другой строны - подвязывать кучу зависимостей в Ninject.
Что скажешь?
Аноним 02/01/20 Чтв 03:07:38 1562693251
>>1562688
dal, messaging, всякие third party api лучше прятать за интерфейсами и делать DI, иначе например будет сложно писать тесты или
экспериментировать с инфраструктурой
Аноним 02/01/20 Чтв 03:54:31 1562706252
>>1562693
у меня всегда болит голова от архитектурных решений. Вот сейчас - только 9 сущностей с половиной функционала, а уже куча DI привязанных и функционал раскидан по сборкам. Еще вопрос, я его уже раньше задавал в треде (этом или 15 не помню).
Делаю CRM на Core, где должна проходить регистрация всех действий пользователя. Соответственно в уровень выше от DAL идет реализация методов с входящим параметром ClientDTO. В каждый метод передается интерфейс IMessageService с реализацией MessageService, где есть только 1 метод, который регистрирует класс, в котором происходит изменение, дата и Client Id.
Правильно ли это? Или лучше через события как то реализовать?
Для наглядности - вот кусок кода:

https://gist.github.com/Hotriden/57d52bc0f0f13ed7969765c61113422b
Аноним 02/01/20 Чтв 14:51:23 1562982253
image.png (35Кб, 696x531)
696x531
>>1562706
что внутри messageService?

событие создания нового supplier следует публиковать сразу после того как он сохранён в базе, остальные вызовы убрать
logging следует отделить от messageService, в messageService идут только объекты событий которые издаёт supplier/каталог

на картинке [ скобкой обведен возможный баг - логгируешь дважды

> Правильно ли это? Или лучше через события как то реализовать?
лучше пока так
Аноним 02/01/20 Чтв 15:02:52 1562989254
>>1562706
suppier'а своего проверь на null перед тем как обращаться к его свойствам
Аноним 02/01/20 Чтв 15:05:32 1562991255
>>1562706
Говно, а не код. Стопиццот иф элс. Инкапсулируй логику кажлого блока в отдельных методах, так повысишь читабельность
Аноним 02/01/20 Чтв 15:07:36 1562992256
>>1562982
Нет граничных операторов, код свалится в NRE
Аноним 02/01/20 Чтв 15:12:24 1562998257
>>1562991
>>1562991
> Инкапсулируй логику кажлого блока в отдельных методах, так повысишь читабельность
вряд ли будет лучше

> suppier'а своего проверь на null перед тем как обращаться к его свойствам
supplier создаётся контроллерем, я так понимаю. поэтому перепроверять на null не нужно
Аноним 02/01/20 Чтв 15:12:27 1562999258
>>1562982
>что внутри messageService?
>с реализацией MessageService, где есть только 1 метод, который регистрирует класс, в котором происходит изменение, дата и Client Id.
спасибо, пофиксил
>Стопиццот иф элс
не такая насыщенная бизнес логика, чтобы разбивать на методы (имо). Но насчет If-else - согласен, не удобно читается, тем не менее - нужна проверка
Аноним 02/01/20 Чтв 15:26:37 1563013259
>>1562998
>supplier создаётся контроллерем, я так понимаю. поэтому перепроверять на null не нужно

У тебя публичный метод, в него можно передать null и получить ошибку, больше никаких условий для добавления проверки на null не нужно.
Аноним 02/01/20 Чтв 15:48:44 1563052260
image.png (29Кб, 648x538)
648x538
>>1563013
все эти null-проверки это лишний мусор для глаз
если каталог вызывается контроллером, то туда не будет передаваться null
возможно стоит только проверить что каталог не существует (db.GetById(suppier.SupplierId) == null)

но это всё мелочи, я кажется понял что он делает с clientDto, лол
трудно прикинуть как это лучше реализовать не видя остального кода
Аноним 02/01/20 Чтв 16:05:41 1563080261
>>1563052
>если каталог вызывается контроллером, то туда не будет передаваться null
Значит нужно как минимум заменить модификатор доступа public на internal. Но всё равно это не безопасно, потому что ты можешь использовать этот метод в другой части кода, там ты не сделаешь проверки на null и в итоге получишь NRE.
Аноним 02/01/20 Чтв 16:20:19 1563106262
>>1563080
пускай валится с NRE, это куда лучше чем стопиццот проверок на null
Аноним 02/01/20 Чтв 16:26:52 1563111263
>>1563106
Нужно привыкать к хорошему коду, а не делать отмашки и валиться с NRE.
Аноним 02/01/20 Чтв 16:36:30 1563120264
>>1563111
в хорошем коде NRE контролируется юнит тестами и Anti-Corruption layer, а не костылями вида if (input != null) размазанными по всему проекту
Аноним 02/01/20 Чтв 16:38:40 1563122265
>>1563052
C var result - обосрался, это должен быть маппинг сущности ClientDTO в Client
>эти null-проверки это лишний мусор
Я уже выше спрашивал насчет проверок. Я никогда в реальных проектах не участвовал, поэтому задаюсь вопросом на каком уровне делаеть NRE проверки и Exceptions.
>трудно прикинуть как это лучше реализовать не видя остального кода
Я скоро выкину весь проект целиком на борду под предлогом опенсорса для всех желающих
Аноним 02/01/20 Чтв 16:39:19 1563123266
>>1563120
>Anti-Corruption layer
С этим не знаком, спасибо за наводку
Аноним 02/01/20 Чтв 16:46:16 1563132267
>>1563120
Так он и не пройдёт юнит тесты, если в нём не будет проверок на null в таких местах. Anti-Corruption layer это скорее для случаев когда две взаимодействующие системы разрабатываются независимо друг от друга.
Аноним 02/01/20 Чтв 16:57:33 1563159268
>>1563132
пройдёт, передача null не должна даже компилироваться
https://docs.microsoft.com/en-us/dotnet/csharp/nullable-references

в примере выше например, db.GetById(suppier.SupplierId) должна возвращать объект типа 'Supplier?', потому что он действительно может отсутствовать by design
тогда мы проверим на null и продолжаем дальше
Аноним 02/01/20 Чтв 17:03:18 1563168269
>>1563122
> на каком уровне делаеть NRE проверки и Exceptions
некоторые проверочки - часть "бизнес логики"
другие - костыли на случай обосрамса программистов
мешать их лучше очень осторожно
Аноним 02/01/20 Чтв 17:22:58 1563190270
>>1563159
>пройдёт, передача null не должна даже компилироваться
Вот только проблема в том, что не всё можно предвидеть на этапе компиляции, особенно если у тебя выполняются запросы к бд и другим ресурсам.
>C# 8.0
Это ты так пошутил? Или ты всерьез думаешь, что кто-то будет переписывать тонны кода?
Аноним 02/01/20 Чтв 17:30:08 1563197271
>>1563190
ничего не нужно переписывать
и да, случаи отсутвия объектов можно предвидеть, nullable ref types как раз для этого
во многих функциональных языках уже давно (десятилетия) есть Optional типы (и нет null вообще), option<T> в F#, Maybe в хаскеле и тд
Аноним 02/01/20 Чтв 19:07:36 1563256272
карт.jpg (919Кб, 1913x2776)
1913x2776
С этой книги норм начинать знакомство?
Аноним 02/01/20 Чтв 19:10:22 1563258273
Аноним 02/01/20 Чтв 19:12:34 1563259274
>>1563256
>от типов и переменных до операторов и массивов
Лол, что же сразу не до хеллоу ворлда?
мимо
Аноним 02/01/20 Чтв 19:42:27 1563270275
>>1563256
>российский
Моча съела говно. Выкинь в урну
Аноним 02/01/20 Чтв 20:17:29 1563300276
Изменял название солюшена. В пространстве имен до изменения привязанны классы к старому названию которого уже нет. Когда добавляю функционал - добавляет новое название. Как такое фиксить?
Аноним 02/01/20 Чтв 21:06:55 1563378277
>>1563300
Поменять в коде старое на новое
Аноним 02/01/20 Чтв 22:16:51 1563428278
Продёте?
Аноним 02/01/20 Чтв 22:38:09 1563444279
>>1563256
начинал с метанита, потом, как устал хавать кал перешел на рихтера. все доходчиво и глубоко разъясняет.
Аноним 03/01/20 Птн 00:04:09 1563499280
>>1563300
Только вручную, увы
Аноним 03/01/20 Птн 00:04:56 1563500281
>>1563259
А ты хочешь, чтобы в книгах для начинающих Razor давался?
Аноним 03/01/20 Птн 03:45:27 1563568282
Шарпаны, как надо писать операторы преобразования как в сторону "класс" => "число", так и в "число" => "класс"? Вот тут https://docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/operators/user-defined-conversion-operators покрывается только первая половина, а я хочу писать хуйню постоянно.
Например,

public class StringField
{
protected string name;
public string value;

public StringField(string name)
{
this.name = name;
}
public override string ToString() => this.value;

}

StringField sas = new StringField("supB");

Я хочу, чтобы можно было написать что-то типа sas = "kek"; sas = sas + " kok";
Но не могу, в шарпе нету перегрузки оператора=
Аноним 03/01/20 Птн 03:46:41 1563569283
и если строки хотя бы пытаются сами приводиться, то если у меня будет int или какой-нибудь float, то тут-то я и сосну
Аноним 03/01/20 Птн 03:50:12 1563572284
и если у меня будет
StringField sas1 = new StringField("supA");
StringField sas2 = new StringField("supB");
то я хотел бы, чтобы sas1 = sas2 не перезаписывал параметр name
Аноним 03/01/20 Птн 04:17:34 1563577285
Аноны, 4е издание рихтера для вкота подойдёт? или есть проверенная роадмап?
Аноним 03/01/20 Птн 11:21:48 1563628286
>>1563577
бляяяяяяяяяяяяяяяяяяяять
Да пойдёт
Аноним 03/01/20 Птн 11:49:29 1563633287
>>1563568
>>1563569
>>1563572
Реализуй при помощи методов.
>чтобы sas1 = sas2 не перезаписывал параметр name
Оператор "=" нельзя перегружать.
Аноним 03/01/20 Птн 12:07:13 1563648288
>>1563256
>>1563572
>>1563577
время охуительных вопросов
>4е издание рихтера для вкота
Какая хуй разница, какое издание? Книга эта с 4 версии .NET дописывается парой строк. Для вкота - нет, обосрешься причем жидко
>то я хотел бы
Ты оператор присвоение решил оверлоадить? Ты хоть сам понял, что ты высрал?
>С этой книги норм начинать знакомство?
В просторах сети есть 2 авторитетных учебника для подзалупных студентов (с переводом и без). Зачем тебе какая то %NONAME% писака косплеящий Шилтда?
Аноним 03/01/20 Птн 13:37:09 1563699289
Аноним 03/01/20 Птн 13:41:52 1563701290
>>1563699
открой Рихтера, почитай первую главу и реши сам. Осилишь - флаг в руки и пиздуй куда ни будь, точно не на галеру или собес, тебе еще тонны данных нужно обработать и запомнить
Аноним 03/01/20 Птн 15:07:33 1563786291
>>1563699
В кратце - если всё поймёшь, то изучай сразу с Рихтера, если нет, то возьми попроще что-нибудь, типа Троелсена или Шилдта, потом Рихтера всё равно лучше изучить.
Аноним 03/01/20 Птн 15:14:23 1563791292
>>1563699
Рихтера форсит фанат-шизик уровня фаната метанита. Рихтер сильно углубляется, новичок просто не сможет переварить всю эту информацию и усвоит максимум 5-10%. Для новичка лучше подойдет Троелсен, которыйвдается в подробности только там где это нужно и фокусируется на базе, либо Шилдт. Потом уже можно читать Рихтера, и интересней будет, и информации больше усвоишь.
Аноним 03/01/20 Птн 15:15:45 1563793293
Аноним 03/01/20 Птн 17:44:58 1563909294
Поясните, что за мода пошла хейтить свойства? Типа кого в интернете не встречу говорят что не нужны и используйте публичные поля.
Блядь, а ничего, что я в проперти можно запихнуть проверку какую-то, добавить какую-то логику, вызов событий и т.д., либо просто предоставить удобный интерфейс для получения данных, например у меня в классе время храниться в миллесекундах и каждый раз делить их чтобы получить час - заеб. Нет, блядь, какой-то питух сказал, что не нужны и мы будем за ним повторять как дауны.
Аноним 03/01/20 Птн 17:53:27 1563919295
>>1563909
>мода пошла
>какой-то питух сказал
иди обратно в свою петушарню, тут элитные господа сидят, использующие свойства
Аноним 03/01/20 Птн 18:53:37 1563957296
>>1563909
Не знаю из какого сельского форума ты вылез, но как в книгах, так и в продакшене уже все давно используют свойства.
Аноним 03/01/20 Птн 19:17:20 1563971297
>>1563909
Это петушиное говно не нужно в ООП-языке.
Аноним 03/01/20 Птн 19:17:59 1563972298
>>1563971
Вообще-то оно существует из-за ООП, а именно инкапсуляции.
Аноним 03/01/20 Птн 19:19:16 1563973299
Поясните, пожалуйста, за Dependency Injection в .net core.

Вот я создал контекст базы данных, зарегистрировал его
services.AddDbContext(hostContext.Configuration);

потом я создал класс, реализующий интерфейс IService
public class SomeService : IService
{
private readonly AppDbContext _dbContext;

public SomeService(AppDbContext dbContext, string something)
{
_dbContext = dbContext;
}
}

Первый параметр конструктора передается через di, а как передать второй параметр?
И вот как этот сервис с параметризованным конструктором зарегистрировать?

Это не работает:
services.AddScoped<IService>(s => new SomeService(""));
Аноним 03/01/20 Птн 20:11:34 1564036300
>>1563973
Ты не правильно понял суть DI. Интерфейс передается в класс полем, который конструктром типа инициализируется классом, реализующим этот интерфейс. Будет типо такого:
public class SomeService
{
private readonly IService;

public SomeService(IService service)
{
IService = service;
}
}

Под этот IService в конструкторе можно подложить любую его реализацию
03/01/20 Птн 20:23:47 1564048301
image.png (17Кб, 692x190)
692x190
>>1563973
я не помню как точно это делать
но как минимум, ты можешь взять свой
services.AddScoped<IService>(s => new SomeService(""));
и зарезолвить db внутри лямбды

что то типа:
var serviceProvider = services.BuildServiceProvider();
services.AddScoped<IService>(s => new SomeService(serviceProvider.GetService<AppDbContext>(), "string something"));

гугли
https://stackoverflow.com/questions/32459670/resolving-instances-with-asp-net-core-di
Аноним 03/01/20 Птн 20:23:51 1564049302
>>1563791
ИМХО, часть рихтера еще и НИНУЖНА. То есть нужна конечно - C# вообще бессмысленных конструкций не держит, но эта информация в первое десятилетие работы может не пригодиться, а книгу новичкам советуют...
03/01/20 Птн 20:28:37 1564058303
свойства правда подванивают
но публичные голые поля, конечно же, дриснища наилютейшая
Аноним 03/01/20 Птн 21:03:29 1564120304
WPF вообще хоть где-то в продакшне используется, или мертвая тема?
Аноним 03/01/20 Птн 21:13:55 1564137305
>>1564120
Мертвая хуйня, все нормальные конторы на формах сидят.
Аноним 03/01/20 Птн 21:16:23 1564142306
>>1564120
Зайди на hh.ru да посмотри, чего тупой то такой.
Аноним 03/01/20 Птн 21:31:47 1564162307
>>1564058
Зависит от задач. Есть принцип (закон Парето), который гласит, что 20% кода выполняется 80% времени. Т.е. оптимизировать необходимо ТОЛЬКО критические для производительности места в кода, а не всё подряд. Например, нет ничего плохого в том, чтобы написать свою версию урезанного LINQ для таких мест, которая будет работать на массивах и не использовать тормозной IEnumerable, замыкания, лямбды и аллокацию памяти на любой чих. Или использовать уже готовый nuget-пакет, но обычно своё кастомное решение лучше, так как имеет узкую направленность.

С другой стороны, есть области, где это оправдано и используется повсеместно, например, гейдев: https://youtu.be/L_uwDygZe48

>>1564120
В кровавом тырпрайзе обычно используется в качестве вспомогательных утилит к какому-то куску системы. В сообществе есть неосиляторы WPF, потому не редкость встретить и WinForms или, в запущенном случае, сразу обе технологии.
Аноним 04/01/20 Суб 08:11:23 1564396308
Большая разница между asp.net core 2 и 3 версии? Если буду изучать 3 версию по "ASP.NET Core MVC 2 с примерами на C# для профессионалов" слишком геморно будет?
Аноним 04/01/20 Суб 09:40:41 1564403309
>>1564396>>1564396
Загугли блять изменения, тупоголовая обезьяна
Аноним 04/01/20 Суб 10:02:44 1564410310
Почему в C# так много школьников?
Аноним 04/01/20 Суб 11:57:56 1564449311
Аноним 04/01/20 Суб 13:32:34 1564547312
>>1564410
Потому что оптимальный язык для того чтобы распробовать все это дело. Ведь школьники почему-то дюже не любят консольку и почему-то уверены, что весь серьезный софт должен работать нажиманием кнопочек, чтобы бегал прогрессбар и вот это вот все, а на шарпе ОЧЕНЬ просто сделать оконное приложение, даже не разбираясь что там под капотом, те же винформы это очень легко делать позволяют.
В большинстве других языков(не дотнетовских), чтобы то же окошко сделать приходится больше усилий приложить и это очень сильно отталкивает.

бывший школьник, который в школе именно шарпик начал учить
Аноним 04/01/20 Суб 15:22:56 1564713313
Что думаете про OpenCL? Кто-нибудь пользовался?
Аноним 04/01/20 Суб 15:58:09 1564730314
Понимаю что наверное это совсем не тема треда, но что за мувисерчер о котором все говорят и почему о нем все говорят?
Аноним 04/01/20 Суб 16:07:03 1564741315
>>1564730
Наверно какой-то типовой проект, следующий шаг после хлловорда.
Аноним 04/01/20 Суб 17:33:43 1564839316
c7V5GDT[1].png (18Кб, 847x376)
847x376
fC52FUy[1].png (19Кб, 841x385)
841x385
Есть 2 класса задач. Во всех двух классах все методы практически идентичны, заменен только консольный вывод. Для реализации замены вывода я сделал абстрактный класс и от него наследую классы с разными методами. Меня беспокоит то, что здесь слишком много идентичного кода. Каким образом можно реализовать замену только консольного вывода в методе? В голову приходит только реализация отдельных методов для вывода, может вы чего подскажете попроще? И еще, а считается ли нормальным иметь в абстрактном классе не абстрактный метод?
Аноним 04/01/20 Суб 17:49:23 1564848317
>>1564839
Делаешь массив ["день", "месяц"] и в зависимости от выбора, берешь из него соответствующий индекс, после чего добавляешь данные из массива в консоль.
Аноним 04/01/20 Суб 18:18:23 1564882318
.png (12Кб, 658x428)
658x428
.png (22Кб, 553x389)
553x389
.png (10Кб, 603x375)
603x375
>>1564839
Можно как-то так, например.
Аноним 04/01/20 Суб 18:25:10 1564891319
>>1564839
Так запили общий метод в базовый класс, принимающий строку которую надо вывести, а в наследниках просто вызывай его с нужной строкой.
04/01/20 Суб 19:17:33 1564929320
>>1564839
IDictionary<Duration, IList<Task>>
оба класса удаляй
Аноним 04/01/20 Суб 20:07:12 1564961321
>>1564882
>>1564929
Я еще не изучил интерфейсы и коллекции xD Обязательно займуксь в ближайшее время.
Аноним 04/01/20 Суб 22:33:16 1565053322
large4cc3b41d6b[...].jpg (54Кб, 500x500)
500x500
Что скажете про эту книгу для вката? С одной стороны подача материала со всякими рофлянками меня отталкивает, с другой стороны сами авторы во введении обещают, что книга вполне себе серьезная.
Аноним 04/01/20 Суб 22:47:00 1565064323
>>1565053
>VS 2012
>ноунейм авторы
>4.5 фреймворк

Ты серьезно?
Аноним 04/01/20 Суб 22:55:56 1565070324
>>1565053
Книги есть в шапке, в чём проблема их взять почитать?
Аноним 04/01/20 Суб 22:56:17 1565071325
>>1565064
Да, блять, серьезно. Почему у вас 0 инфы в шапке по версиям вашей хуйни? Я ебу что ли, что там актуально сейчас.
Аноним 04/01/20 Суб 22:59:05 1565072326
Как можно нормально переписать это код?
(++userNumber == randomNumber || (userNumber - 2) == randomNumber)
-2 потому что при инкременте число изменяется. Как прибавить или отнять, но только для сравнения, чтобы еще одну переменную не делать?
Аноним 04/01/20 Суб 22:59:26 1565074327
>>1565070
Проблема в том, что, как обычно, везде у каждого свое мнение о том, что нужно прочитать ньюфагу. А ньюфагу, в свою очередь, хочется выбрать что-то, что позволит изучить язык с минимальными трудозатратами относительно других вариантов.
Аноним 04/01/20 Суб 23:07:10 1565079328
Ух, вроде разобрался с IEnumerable и IEnumerator, я молодец?
Аноним 04/01/20 Суб 23:08:05 1565081329
>>1565079
Только если еще знаешь про утиную типизацию.
Аноним 04/01/20 Суб 23:08:40 1565083330
>>1565081
Я на шарпе через dynamic и вар только кодю
Аноним 04/01/20 Суб 23:17:11 1565097331
>The C# Player's Guide
>Очень хорошая книг для начинающих. Все изложено в четкой логической последовательности и в том объеме, который необходим.
>Абсолютно несогласен, книга - отстой, никому не советую для начала. В сишарп стартер паке ей делать нечего, не тратьте время зря.
Классика
Аноним 04/01/20 Суб 23:21:12 1565101332
what.png (30Кб, 240x240)
240x240
Аноним 04/01/20 Суб 23:22:00 1565102333
>>1565101
Я больше не знаю никаких ваших типизаций, мне оно не нужно
Аноним 04/01/20 Суб 23:31:47 1565109334
>>1565071
>в шапке
Шапка устарела лет 5 назад. По одной книге язык не выучишь. Толку от знания только языка мало.
Аноним 04/01/20 Суб 23:49:32 1565113335
>>1565074
Не видел чтобы кто-то говорил, что Троелсен и Шилдт плохи для новичка.
Аноним 04/01/20 Суб 23:50:31 1565114336
>>1565072
(userNumber + 1 == randomNumber || userNumber == randomNumber)
Аноним 04/01/20 Суб 23:51:33 1565116337
>>1565097
Троелсен и Шилдт - хороши для новичка. Тоже классика, но ты почему-то выбрал то что тебе хочется и исходишь из этого.
Аноним 05/01/20 Вск 00:26:37 1565142338
>>1565116
>>1565113
Я пока ничего не выбрал. И между прочим книга из вашей шапки. Собственно, если не найду что-то меньшим объемом, то буду читать Троелсена. Его книга, по крайней мере, не устаревшая + есть на русском.
Аноним 05/01/20 Вск 00:27:50 1565143339
>>1565072
почему нельза переменную?

new[] { randomNumber - 1, randomNumber + 1 }.Contains(userNumber++);

Math.Abs(randomNumber - userNumber++) == 1

Аноним 05/01/20 Вск 00:30:17 1565148340
>>1565142
>на русском
Без английского все равно нечего делать в ойти.
Аноним 05/01/20 Вск 00:39:14 1565169341
>>1565148
Знание знанием, но на русском информация тупо легче и быстрее усваивается.

мимо
Аноним 05/01/20 Вск 00:41:08 1565172342
>>1565142
Шапка создана поехавшим анимешником и давно не обновлялась. Единственное, что годное с ней случилось - убрали метанита.
Аноним 05/01/20 Вск 00:41:37 1565173343
>>1565143
Создавать массив, еще и использовать Contains. Надеюсь ты так троллишь.
Аноним 05/01/20 Вск 00:49:46 1565174344
>>1565172
>убрали метанита
Почему его в последнее время начали хейтить? Ведь сайт существует уже очень давно.
05/01/20 Вск 00:51:56 1565177345
>>1565173
говно вопрос - говно ответ
Аноним 05/01/20 Вск 00:59:56 1565181346
>>1565174
К сожалению, годы существования сайтов не исправляют опечатки и кривость повествования. Он всё также создаёт ощущение поделки студента, который просто попытался пересказать Троелсена, при этом делал это небрежно и с изрядной долей похуизма.
Аноним 05/01/20 Вск 01:14:13 1565196347
>>1565181
Всё так. Но хейтить его начали недавно по тем помойкам, где я лажу. Этот сайт что 10 лет назад, что сейчас в выдаче гугла может и не появиться вовсе. professorweb очень редко проскакивал, но все же намного чаще метанита. Тот, на котором был майнер одно время.
Аноним 05/01/20 Вск 01:32:04 1565213348
>>1565196
Может, раньше просто никто про метанит не слышал, и только недавно аноны его увидели, посмотрели и сказали "говно"?
Аноним 05/01/20 Вск 01:32:50 1565215349
>>1565213
Скорее всего так и есть. Мне был сам источник интересен.
Аноним 05/01/20 Вск 10:49:36 1565317350
>>1565172
Я хотел обновить шапку оп этого треда, но не уверен, что изменения понравятся, поэтому решил оставить
Аноним 05/01/20 Вск 11:00:41 1565319351
>>1565213
как для студента, быстро найти что то и сделать по аналогии, годный, но в качестве обучающего ресурса, так себе. Слишком уж в сжатой форме материал.
Аноним 05/01/20 Вск 11:05:29 1565321352
>>1565317
Не отвечай этому дебилу, ему вообще все шапки не нравятся, что бы ты не делал, оп предыдущих 20 тредов.
Аноним 05/01/20 Вск 11:10:53 1565322353
>>1565321
К слову изначально в шапку я ставил просто C# картинки и шапка состояла из "C# тред", без гайдов и этого всего. Ему это тоже не нравилось, так что просто забей.
Аноним 05/01/20 Вск 11:22:18 1565325354
>>1565114
Спасибо! А как это работает?
Аноним 05/01/20 Вск 12:05:27 1565340355
>>1565325
Все, понял там не приравнивается значение.
Аноним 05/01/20 Вск 12:38:33 1565359356
>>1565325
получается число из единицы и userNumber и сравнивается с randomNumber. Приоритет выполнения у оператора + выше чем у ==, поэтому сначала произойдёт сложение.
Аноним 05/01/20 Вск 12:42:00 1565361357
архитектор хайлоуда в треде , задавайте вопросы
Аноним 05/01/20 Вск 13:13:02 1565395358
Аноним 05/01/20 Вск 14:49:45 1565496359
Аноним 05/01/20 Вск 14:51:10 1565499360
>>1565496
Сколько хуёв? Каковы их размеры?
Аноним 05/01/20 Вск 14:57:35 1565512361
>>1565499
распределённый хайллуд пайплайн, до миллиарда километров хуёв в секунду
Аноним 05/01/20 Вск 15:00:07 1565517362
>>1565512
Пропускная способность сосатора?
Аноним 05/01/20 Вск 15:04:18 1565520363
>>1565361
ЗП? Опыт? Как дошел до такой жизни? В СНГ живешь или уехал уже? Что посоветуешь молодым-шутливым и вкатывальщикам?
Аноним 05/01/20 Вск 18:15:14 1565626364
Аноним 05/01/20 Вск 18:19:00 1565628365
2727c482dde74f3[...].jpg (56Кб, 512x768)
512x768
Аноним 05/01/20 Вск 18:30:36 1565639366
image.jpg (249Кб, 1080x866)
1080x866
Аноним 05/01/20 Вск 18:38:46 1565647367
>>1565639
странная аналогия на пикче. Она больше человек, чем зверь.
Аноним 05/01/20 Вск 19:39:59 1565713368
У меня есть интерфейс-маркер (без методов) IResult<T> и классы Success<T> и Error. Хочу реализовать этот интерфейс в обоих классах.
Проблема в том что если с конструкцией "class Success<T> : IResult<T>" всё хорошо, то классу Error параметр типа T нахуй не нужен, но вот написать "class Error : IResult<T>" компилятор не позволяет.
Я хотел было сделать класс Unit, как в любимой функциональщине, и написать class Error : IResult<Unit>, но тогда если из функции нужно вернуть IResult<string>, то ошибку из него вернуть уже не получится, т.к. IResult<string> это не IResult<Unit>. IResult делать ковариантным и писать class Error : IResult<object> - тоже не вариант, мне ковариантность нахуй не нужна.

Есть готовые паттерны для таких случаев?
Аноним 05/01/20 Вск 20:25:20 1565753369
>>1565713
функциональщина под капотом добавляет <Т> к классу Еггог
так что добавь и ты
Аноним 05/01/20 Вск 20:33:32 1565760370
>>1565713
>интерфейс-маркер (без методов)
Ужас.
>Есть готовые паттерны для таких случаев?
А зачем так усложнять?
class Result<T>
...bool Successfull {get;} //ну или HasError
Если это все крутится внутри проги используй эксепшоны, или try методы: bool TryDoSmthg(out result)
А еще лучше описывай решаемую задачу, а не тот способ который ты придумал, может найдутся варианты получше.
Аноним 05/01/20 Вск 21:34:27 1565812371
>>1565760
> Ужас.
Ну можно и абстрактный класс.
> А зачем так усложнять?
Ошибка - вернули один класс, всё ок - вернули другой, а дальше паттернматчингом разобрали. Нам switch на спидах завезли чтобы мы по старинке всё в один общий класс пихали а потом проверяли его поля?
Я просто параллельно фшарп ковыряю и попытался заюзать тип-сумму, но видимо придется действительно по старинке с IsError
Аноним 05/01/20 Вск 21:48:54 1565821372
>>1565812
>>1565760
Похуй, сделаю примерно как тут https://habr.com/ru/post/267231/
Чсх когда делал через единый класс, Result так и выглядел, но показалось что хуйня
Аноним 05/01/20 Вск 22:35:23 1565850373
>>1565395
нэт. Ты можешь сумма сойти с таких сумм , стать жирным или спиться
Аноним 05/01/20 Вск 22:36:12 1565851374
>>1565496
нэт. На разговаривал с трапиком (HR мэнеждер в одной компании был(а))
Аноним 05/01/20 Вск 22:42:32 1565856375
>>1565520
зп 300к + (но основные деньги от инвестирования)
до жизни очень просто , заметил что вижу как надо делать с первого раза в это включая очень легкую и предполагаемую мутацию системы для бизнеса .

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

Молодым очень просто : сделать клон понятной хайлоуд системы. Вроде Ютуб, твитер.
Аноним 06/01/20 Пнд 03:19:33 1566046376
В ASP.NET razor вообще юзают? Мне чего то кажется, что все крутиться от web api и надевается на него фронт под GET/POST requests/response. Кто в реальных проектах на MVC/Core педалил, что скажете?
Аноним 06/01/20 Пнд 07:05:09 1566073377
>>1566046
На легаси пердолил некоторое время не так давно. С какой-нибудь либой расширений (типа Kendo), и для приложений, которым не требуется быть SPA - вообще хорошо живется. Хуяк-хуяк интерфейс за 10 минут и дальше бек пилить.
Аноним 06/01/20 Пнд 11:30:21 1566101378
>>1565639
Мне так нравится как очередной нормис врывается в тред всякий раз когда ктонибудь постит на 100 км отдалённо напоминающее фурятину и такой "Ух какие вы все извращуги, я вот не такой, а вы такие, я вот прям смотрите какой я нитакой как вы. Видите? Я вот не люблю этих вот всех, вот почитайте моё мнение по этому поводу."
Какой-то симбиоз вниманиеблядка и пониёба. Никогда этого не понимал. Мне тоже много чего не нравится в интернете, Если бы я каждый раз отвечал в такой духе я 24 на 7 сидел бы в инете без продыху.
Аноним 06/01/20 Пнд 14:58:09 1566208379
>>1566073
я думаю есть такие проекты, которые забили болт на UI и пилят все на ASP.NET. Но мне все же интересна общая тенденция, юзают ли его или все через Web api?
Аноним 06/01/20 Пнд 20:50:35 1566428380
>>1566208
>которые забили болт на UI и пилят все на ASP.NET
Спешите видеть, у зумеров все что не спа то "забили болт на UI", лол.
> Но мне все же интересна общая тенденция, юзают ли его или все через Web api?
Тебе сказали уже, ты какого ответа ждешь, что мы тут с тобой вместе поцокаем языком и порассказываем какой razor говно?
Аноним 06/01/20 Пнд 23:21:54 1566504381
>>1566428
>у зумеров
манямир, все кто спрашивают в тред зумеры
>все что не спа то "забили болт на UI"
я у людей с интепрайза спрашивал, а не у вкатывальщиков или студентоты подзалупной
>вместе поцокаем языком
нет, только ты и в том месте, откуда начинается разработка View в ASP.NET
>какой razor говно
Я реально спрашивал, "это" вообще кто то использует? И зачем он вообще нужен, если интерфейс взаимодействия на любой технологии backend-to-frontend это Web api?

У меня походу дела назрел другой вопрос - все .NET-тчики это full-stack? Типо везде пишут в required JS+Framework (vua/react). Типо зачем нанимать фронта, если .NET-тчик все сам сделает?
Аноним 07/01/20 Втр 00:01:43 1566515382
>>1566504
>Интирпрайз
Лол, ты же сам обоссаный вкатыш
Энтерпрайз это место наибольшей концентрации легаси, а легаси на асп это почти всегда разор
На твой вопрос ответил?

Год стажа в трёх разных тырпрайз конторах
Аноним 07/01/20 Втр 00:18:14 1566524383
>>1566515
>обоссаный вкатыш
>Год стажа
>в трёх разных конторах
да ты опастный перец хоть бы не позорился такое писать
ты пишешь, что razor говно, хотя это всего лишь компилируемая оболочка класса с DOM html страницы. Жаль тебя
>Энтерпрайз это место наибольшей концентрации легаси
в твоем селе, где нет продуктовых и все на аутсорсе - так и есть

бампаю вопрос
Аноним 07/01/20 Втр 00:29:09 1566535384
>>1566524
>Ты пишешь что разор говно
Ты совсем тупой какой-то
>Энтерпрайз где нет продуктовых
Ой блядь, ты бы хоть мемы выучил перед тем как быть баттхертом
Энтерпрайз у него не продуктовый на автомате, пиздец
>В твоём селе
Лол блядь, шизоид, скажи мне где тырпрайз НЕ легаси
И как раз таки в аутсорсе обычно его меньше
Ты вообще значение слов которые пишешь понимаешь?
Аноним 07/01/20 Втр 00:46:52 1566543385
>>1566535
>ты бы хоть мемы выучил
>мемы
>выучил
Вся суть вопросов в /pr/. Какой то малолетний долбоеб, который вчера только вкатился на галеру засирает ленту. Не знаю даже, нахуя я таким отвечаю
Аноним 07/01/20 Втр 01:02:28 1566549386
>>1566543
Ясно, это троллинг тупостью. Если не спа то похуй на UI. Если легаси то не энтерпрайз. Если энтерпрайз то не продуктовая контора. Если сказали что разор хорош в смеси с либами расширения, то сказали что разор говно.
Действительно хуй знает зачем ты это продолжаешь.
Аноним 07/01/20 Втр 05:53:16 1566623387
>>1566535
>где тырпрайз НЕ легаси
эм... только что вылупившийся?
Аноним 07/01/20 Втр 11:49:10 1566666388
что лучше nlua или neolua?
Из требований быстрое создание нового экземпляра стэйта и малый жор оперативы и что бы из луа шарповые функции вызывались как можно быстрее. Особо тяжёлой и замудрённой логики там не будет
Аноним 07/01/20 Втр 19:34:05 1567034389
14877766204370s.jpg (12Кб, 213x250)
213x250
Ваша параша умеет под линухом уже работать?
Аноним 07/01/20 Втр 20:01:04 1567070390
>>1567034
Умеет, но до уровня других языков ещё далеко.
Аноним 07/01/20 Втр 20:45:59 1567106391
>>1567070
> до уровня других языков ещё далеко
Что это значит?
Аноним 07/01/20 Втр 21:41:35 1567160392
>>1566504
>все .NET-тчики это full-stack
Как правило да, есть исключения, например, если проект очень большой.
В целом же, на большинстве проектов, на одном только бэке делать нечего.
Аноним 07/01/20 Втр 21:52:46 1567169393
Аноним 07/01/20 Втр 22:08:13 1567183394
>>1566666
сам себе отвечаю. neolua на базовых вещах просто рвёт nlua т.к. первый это полностью шарповая реализация и единоразовый компил скрипта в дерево выражений
Аноним 08/01/20 Срд 09:04:04 1567354395
>>1567034
>Вот тебе приятный и быстрый язык с лучшим на свете компилятором под винду
>Не, я хочу говна поесть дайте мне говна.
Аноним 08/01/20 Срд 11:11:14 1567385396
Сап, аноны.
Решил вкатиться в программирование и выбрал шарп как первый язык для изучения. Так вот, немного почитав, я узнал, что разработка на шарпе для юнити и разработка на обычном шарпе очень сильно различаются. Поэтому, у меня появился вопрос. Куда, по-вашему, перспективнее и лучше пойти: вебдев/геймдев? Хелпаните плез.
Для справки: знаю html и немного css. Недавно изучал, до того как узнал о шарпе.
С юнити знаком лишь поверхностно, для сравнения.
Аноним 08/01/20 Срд 14:47:06 1567478397
>>1567354
Предлагаешь держать сервера на винде?
Аноним 08/01/20 Срд 14:58:31 1567483398
>>1567385
Делать игры в промышленных масштабах мало кому нужно, веб повостребованнее будет.
Аноним 08/01/20 Срд 15:29:21 1567503399
>>1567354
Я пытаюсь дальше развиваться, в с, и крестах освоился давно, захотелось человеческого ООП, в яву ступать не хочеца
мимо1567034-
Аноним 08/01/20 Срд 15:32:51 1567506400
>>1567385
сап анон, хуйня это все. Сейчас пашу, что лось ASP.NET full webstack dev-ом. Заебало все - овертаймы, больничный - без оплаты ЗП, 14 (10) дней отпуска. IT в 2к20 это дно, на просторах СНГ - так точно.
После работы переучиваюсь на слесаря-автомеханника. Вот это я понимаю работа. Похуй, что в тасоле, зато руками работаю, да и ЗП у хорошего спека не меньше, чем у Senior dev-a. Задумайся лучше над этим.
Аноним 08/01/20 Срд 15:34:31 1567507401
>>1567506
Украина? Какая галера? У нас отпуск/больничний по цене середней зп за последниеее 6 месацав в день
Аноним 08/01/20 Срд 15:49:11 1567514402
>>1567507
Да, название называть не буду (подписывал бумажки об конфиденциальности этого бадишопа). Отпуск - 10 дней рабочих (14 календарных), больничные - не гребешь, не платим. Сижу сейчас с соплями и кашлем, без компенсаций, когда выйду - пойдет гора тасков. Ебал короче ваше погромирование, за эти же деньги (мидла так точно) можно найти другую менее напряжную и более развязную работу.
Аноним 08/01/20 Срд 15:52:25 1567515403
>>1567514
И какой рейт тебя? Мидл где-то 10-16?
Аноним 08/01/20 Срд 15:55:25 1567516404
>>1567515
У меня не по rate/hour - ставка месячная. Если берешь отгулы делят на КОЛИЧЕСТВО РАБОЧИХ, НЕ КАЛЕНДАРНЫХ КАРЛ и снимают с ЗП. Сколько с меня получают, я хз, думаю в пределах 20
Аноним 08/01/20 Срд 15:58:12 1567519405
>>1567516
Вопрос сколько у тебя в месац. Есть $20/час, то хуй кем столько мог поднять
Аноним 08/01/20 Срд 16:03:03 1567524406
>>1567519
>в месац
~1.5-2k
Для контраста - сменить сайлентблоки, тормозные диски, развал-схождение, ТО - это $500-600, из которых комплектующих если на $250-300 набереться, то это уже дорого. Поэтому маня мир погроммирование трескается тогда, когда узнаешь, что есть полно другой работы, за которую можно получить те же деньги при меньших усилиях.
Продаваны, которые не на ставке, а на сделке думаешь 3к не поднимают?
Аноним 08/01/20 Срд 16:41:07 1567558407
> Слесарь без любви к программированию самому по себе вкатился в говноконтору на хуевые условия, сгорел и теперь жалуется в треде сишарпа о том что кодинг говно, программисты не шарят за рынок
Проблема в тебе, не воняй.
Аноним 08/01/20 Срд 18:23:57 1567647408
>>1567558
пускай воняет, может отпугнёт немного ньюфагов - среди них ещё попадаются конкуррентноспособные
Аноним 08/01/20 Срд 18:28:49 1567651409
>>1567647
может долбоебам с борды прийдет в голову не форсить свой стэк
Аноним 08/01/20 Срд 18:34:23 1567657410
ryzen.png (239Кб, 500x290)
500x290
Что не так с плеерами? Понадобилось накидать простое приложение-видеоплеер. Сешарп для меня язык вспомогательный, и я мог проебать какие-то нубские моменты. Но не настолько нубские, как тестить производительность в дебаг-сборке или вообще сканпелять под не ту архитектуру.
Сначала попробовал дефолтный MediaElement. Всякие мелкие видосы гоняет хорошо, но 1440p@50fps@10.5Mbps заметно подлагивает.
Поставил FFME - эта штука использует FFMPEG. Все равно результат такой себе. Ну, конечно, на моей GTX1080 все ОК, но на ноуте с Гиперпнем образца 2016 - боль.
Подумал, неужто встройка ноута совсем плоха? Но почему тогда дефолтный виндовый плеер тащит? А потом вспомнил, что в Winforms можно вставить тот самый дефолтный плеер. И вставил. И он тащит! С ним все прекрасно!
Что за херня? Ошибка в ДНК, или в Сешарпе и вправду нет нормального видеоплеера, исключая винформовый AxWindowsMediaPlayer?
Аноним 08/01/20 Срд 18:47:04 1567665411
>>1567524
Тогда вопрос почему в айти? Вошел из-за денег?
Аноним 08/01/20 Срд 23:36:12 1567830412
>>1567657
Возможно потому, что wpf работает поверх directx, а формы на gdi
Аноним 08/01/20 Срд 23:37:49 1567831413
>>1567830
И что с этим делать? Есть какие-то варианты получить нормальную производительность плеера, не переключаясь на допотопные классы, которые написал еще мой дед в окопах Сталинграда?
Аноним 09/01/20 Чтв 00:36:12 1567854414
Где скачать VS 2017?
Аноним 09/01/20 Чтв 00:38:34 1567857415
>>1567854
Ты двач с Гуглом перепутал
Аноним 09/01/20 Чтв 00:42:44 1567858416
>>1567857
Нет, я определенно на сайте Двач.
На сайте майкрософт есть только VS 2019, где мне найти 2017?
Аноним 09/01/20 Чтв 00:45:30 1567861417
>>1567858
>лезет в программирование
>не осилил сайт майкрософт

Ты уверен?
Аноним 09/01/20 Чтв 00:47:07 1567862418
Ладно, я нашел. Никакого толку от вас.
Аноним 09/01/20 Чтв 00:48:03 1567863419
>>1567862
Как посрать соберешься, не забудь спросить здесь - "где туалетная бумага?".
Аноним 09/01/20 Чтв 01:41:30 1567896420
>>1567863
он и не вытирается
2017-блядок же
Аноним 09/01/20 Чтв 04:26:53 1567937421
image.png (23Кб, 800x600)
800x600
image.png (23Кб, 300x300)
300x300
Нужно будет писать на линуксе, что выбрать vs code или Rider для шарфика?
Аноним 09/01/20 Чтв 10:25:48 1568000422
Привет, шарпаны. Я тут вчера почитал про Entity Framework. Это же охуенная штука, да? Я еще не юзал ее, вчера только узнал.
мимо-ньюфаг
Аноним 09/01/20 Чтв 11:04:49 1568005423
>>1568000
Хуета которая генерит хуевые запросы. Норм пацыки юзают Dapper.
Аноним 09/01/20 Чтв 11:24:53 1568011424
>>1568005
Ни разу в вакансиях не видел этого слова. Читаю про него, пишут, что пиздатый. Спасибо за инфу.
Аноним 09/01/20 Чтв 12:41:00 1568039425
image.png (2022Кб, 1518x1075)
1518x1075
народ как бы мне сделать так что бы при изменении источника например изменении картиночки в папке страница автоматически обновляла картиночку на новую
Аноним 09/01/20 Чтв 12:43:54 1568040426
>>1568039
FileSystemWatcher и подписка на ивент.
Аноним 09/01/20 Чтв 13:08:05 1568067427
image.png (7338Кб, 2048x1705)
2048x1705
>>1568040
спасибо тебе бро, угощайся
Аноним 09/01/20 Чтв 15:26:59 1568153428
>>1568005
> Норм пацыки юзают
linq2db, ado.net
Аноним 09/01/20 Чтв 19:51:00 1568498429
4eab7736fefe10b[...].jpg (35Кб, 512x512)
512x512
>>1568153
>ado.net
Легаси элита в треде
Аноним 09/01/20 Чтв 20:18:13 1568529430
Аноним 09/01/20 Чтв 20:21:11 1568535431
Аноним 09/01/20 Чтв 20:21:13 1568536432
>>1568529
нет проблем для легаси-богов кроме ковыряния в говне На самом деле проблема большенства девов, когда смотришь в требования, а там EF, .NET 4.5+, Core 2.2
А по факту приходишь, а тебе дают хуйню хуйни, но т.к. в офере пункта такого нет, то месишь глину, пока не сдохнешь закончится офер
Аноним 10/01/20 Птн 09:40:55 1568942433
Аноны, вопрос с работой, конечно же.
В общем работаю я на технической работе, но она никак не связана с программированием. И образование соответствующее. Но программирование всегда нравилось, и последние лет 7 учил шарп как хобби. Знаю его достаточно неплохо, писал несколько весьма полезных для себя приложений, и даже весьма приличную игру, но не дописал, завис в балансе и рефакторинге. Хотя есть вполне приличная демка. Знаю также на некотором уровне unity, как то начинал учить html, яваскрипт, уверен что без проблем освою любой другой язык.
Так получилось, что моя текущая работка загибается.
Есть мне шансы вкатиться куда-нибудь на зарплатку мидла? Совсем уж с джуниуров начинать неохота, хотя если там зп будет 100к не в дс, или от 200к в дс - то можно всё таки мне не 20 лет.
И может быть посоветуете что делать для этого? Гитхаб не юзаю, хоть и знаком, взять и написать пяток прог и выложить на гитхаб? Или подучить что то ещё?
Аноним 10/01/20 Птн 10:47:21 1568960434
Короче, решил перекатиться с двух плюсов на четыре, скачал Албахари, начал читать.
Если закрыть глаза на излишние пристрастие автора к сахару, книга ультрагодная, без излишне глубокого мозгоебства, но с указанием всяких тонкостей и неочевидных мест.
И все шло заебись, пока не наткнулся на вариативность в универсальных интерфейсах и делегатах. Инфы, почему оно так работает дается крайне мало. Просто: "делай так. и будет заебок".
Решил глянуть, что по этому поводу говорит Троелсен, вроде он обычно по любому чиху приводит кучу ненужных подробностей и промежуточного кода. А там вообще эта тема не затрагивается.
Так вот вопрос, где об этом можно подробно прочитать?
Аноним 10/01/20 Птн 14:01:21 1569032435
Сколько времени потребуется вкатиться в C# WEB джуном, база небольшая языка есть ( чуть ООП парадигмы)
Аноним 10/01/20 Птн 14:02:16 1569033436
>>1569032
Конечно вопрос индивидуальный, поэтому поделитесь вашим опытом, сколько у вас заняло времени?
Планирую 4 часа уделять
Аноним 10/01/20 Птн 14:02:34 1569034437
>>1569033
>Планирую 4 часа уделять
в день*
Аноним 10/01/20 Птн 14:08:06 1569037438
Объединю пару последних вопросов, может кто примерно сказать, какие обязанности у C# джуна и мидла?
Насколько сложный код надо писать?
Аноним 10/01/20 Птн 16:35:15 1569113439
>>1568960
>Албахари
>ультрагодная, без излишне глубокого мозгоебства
сразу за инвариантность, ковариантность и контрвариантность подумал, хыыыыы
>А там вообще эта тема не затрагивается.
Тролсен - для щеглов, уровень - begginer. Албахари - Middle/Senior
Где искать материал? В интернете не осилившему гугл хороший совет имо
>>1568942
>Совсем уж с джуниуров начинать неохота
есть дебичи, которые за бесплатно готовы работать, а ты тут выебываешься. Не хочешь быть погромистом что ли? Они же 300к/сек рубят
>>1569037
>какие обязанности у C# джуна и мидла?
Фиксить баги, допиливать функционал, писать тесты, пить кофе, пиздеть, что сильно загружен и оверхард таски, просить деньги
>Насколько сложный код надо писать?
Пиздец какой сложный, что то на уровне ракетостроения или даже выше Погугли тему из вопроса про Албахари - ты охуеешь
Аноним 10/01/20 Птн 16:42:48 1569115440
>>1569037
Джунов отправляют ковырять VBA.Net ado.net ASP
Миддлам разрешают на чем-то поновее писать.
Аноним 10/01/20 Птн 18:53:25 1569164441
>>1567831
Так что, опытные шапреры, есть идеи? Я даже попробовал либу, делающую плеер с DirectDraw (пакет WPFmediaKit), и стало лучше, но все равно результат работает тупее, чем ебаный винформовый плеер.
Внимание! Важный вопрос! Аноним 10/01/20 Птн 19:03:27 1569168442
computercat.jpg (36Кб, 500x508)
500x508
Эй, шарпаны, поясните, как лучше учить ASP.NET. Я немножко знаю сам шарп, а про асп не знаю ничего. С чего начать? Есть ли какое-то онлайн-дрочилово по этой теме? Нужны ли мне будут всякие джаваскрипты? Хтмл и цсс будут нужны полюбому, да? Помогите ньюфагу.
Аноним 10/01/20 Птн 19:18:23 1569175443
>>1569113
> Где искать материал? В интернете не осилившему гугл хороший совет имо
Ну блин, не ужели ты думаешь, что я бы пришел сюда спрашивать, предварительно не погуглив? В большинстве своем там объяснения уровня "вот пример вариативности, вот контрвариативности, запомните и пользуйтесь". Если и есть попытки объяснить это на пальцах, то все их веселые аналогии с животными мгновенно идут по пизде при объяснении контрвариативности, потому что она контринтуитивна.
Единственно годное объяснение я нашел в архивном блоге мсдн от разработчика языка. Но оно от 2007 года для 3ей версии шарпа. Там вариативность параметров универсальных делегатов только в планах.
Аноним 10/01/20 Птн 19:42:45 1569204444
>>1569168
Завтра идешь и покупаешь ASP.Net in action 5th edition,
похуй если ничего не поймешь.
Аноним 10/01/20 Птн 19:57:51 1569208445
>>1569204
А можно я скачаю и распечатаю на казенной бумаге?
Аноним 10/01/20 Птн 20:01:47 1569212446
Аноним 10/01/20 Птн 20:13:25 1569221447
>>1569208
Картридж черный canon 1200 стоит, рассчитан (официально) на 140 стр. Лучше купить книгу.
Аноним 10/01/20 Птн 21:39:25 1569268448
>>1569212
4 года в шараге по 2-3 часа в день в среднем только на шарп тратил. Могу кинуть собственной какахой в монитор только. Буду рад если с книгой будет по-другому
Аноним 10/01/20 Птн 21:43:51 1569272449
>>1569268
>4 года в шараге по 2-3 часа в день в среднем только на шарп тратил
Понял. Я просто в ахуе с челов, которые пишут что за полгода в айти вкатиться можно. Я от этого комплексую, потому что за полгода я совсем базовые вещи только освоил
Аноним 10/01/20 Птн 21:59:16 1569283450
>>1569221
> 140 стр
Ну у вас и картриджи в 2020. Поживу-ка пока в 2010.
Аноним 10/01/20 Птн 22:05:31 1569290451
>>1569272
я где-то так же даже подольше, но вот меня недавно "осенило" поставить зонд-трекер и я охуел: внезапно оказалось что большая часть моего времени тратится на бесполезную херню вроде серфинга двачей и прочего интернета
т.е. даже если я на бумаге уделяю, допустим, шесть часов на что-нибудь полезное вроде решеточки, над собственно решеточкой я реально работаю не больше часа, остальное просто сливается в трубу нахер.
что с этим делать пока не ясно, но по крайней мере теперь знаю в чем скорее всего заключается проблема моего херового обучения.
Аноним 10/01/20 Птн 22:51:32 1569325452
>>1569208
Все казенное. Плотют мало, зато могу невозбранно печатать книжки, на которые не хватает денех. Такой пидораший симбиоз.
Аноним 11/01/20 Суб 03:25:35 1569433453
Какое же убожество ваш сишарп после Питона
Аноним 11/01/20 Суб 03:34:33 1569446454
Аноним 11/01/20 Суб 10:08:48 1569516455
>>1569433
Пошел нахуй динамопетух
>>1569446
А этому два чаю, жаль на скале работы мало, и то по большей части или мл или скала-как-лучшая-жава
Аноним 11/01/20 Суб 12:35:36 1569538456
>>1569433
Зато даже студия не такое лагучее дерьмо как пуйчарм, вниманиеблядь, свали в свой тред.
Аноним 11/01/20 Суб 12:35:39 1569539457
>>1555702 (OP)
Посоветуйте либу, чтобы выводить frameless-видеозапись на экран, в идеале на все мониторы.
Аноним 11/01/20 Суб 12:44:39 1569545458
>>1569433
Я, как пистонодрочер, оффициально заявляю, что его преимущество в возможности возвращать массив различных типов:
def a():
...
-return intValue, strValue, listValue, tupleValue, neboValue, allahValue


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

В пистоне приходится костылить это стрелочками справа от параметра.
Аноним 11/01/20 Суб 13:51:56 1569631459
>>1569545
В шарпе тоже можно, просто ты неосилятор тупой.
Аноним 11/01/20 Суб 14:04:57 1569644460
>>1569545
> Я, как пистонодрочер, оффициально заявляю, что его преимущество в возможности возвращать массив различных типов:
> def a():
> ...
> -return intValue, strValue, listValue, tupleValue, neboValue, allahValue


Вернуть object[] можно. Да, придётся проверять тип при работе с элементами этого массива, но возможность возвращать массив различных типов существует
Аноним 11/01/20 Суб 14:09:52 1569652461
>>1569644
Можно кортеж возвращать.
Аноним 11/01/20 Суб 14:37:03 1569739462
>>1569644
Просто макака не понимает, что в его петухоне делается всё тоже самое, просто за кулисами.
Аноним 11/01/20 Суб 14:54:39 1569779463
Что значит пробрасывать исключения вверх? Ну я обычно пишу если трай кетч throw, но само понятие "вверх" мне не очень понятно.
Аноним 11/01/20 Суб 14:58:21 1569790464
>>1569779
Значит выше по коду. Если у тебя где-то есть
try
{
SomeMethod();
}
catch
{
}

При этом в SomeMethod() у тебя есть:

SomeRequest();

Который может вызвать эксепшен, то он пробросится вверх, а если ты сделаешь так:
try
{
SomeRequest();
}
catch
{
}
То вверх ничего не пробросится, а проглотится внутри SomeMethod()
Аноним 11/01/20 Суб 14:58:30 1569791465
>>1569739
А нахуя вникать в ненужное говно, когда за тебя все машина делает? Вот ты страдаешь хуйней, определяешь массив с конкретными типами, а я просто взял и получил с ходу не определенный мною за ненадобностью массив. Ты, наверное, из тех петухов, у которых "Не прогал в ассамблере - не разраб! Не нопесал свой собственный игродвижок - неполноценный геймдев!"
Аноним 11/01/20 Суб 15:05:24 1569808466
>>1569791
Для того чтобы предоставить больше возможностей. Для того чтобы предотвратить говнокод. Петухонщик не будет думать, а не хуйню ли он делает, возвращая столько разных типов из одного метода, он просто сделает. В то время как программист увидит, что делает хуйню и переделает этот перегруженный метод в несколько. Но если этого сделать нельзя, то использует либо object[], либо кортеж, либо создаст отдельную структуру/класс для этого.
Аноним 11/01/20 Суб 17:50:57 1570061467
>>1569545
на самом деле, то что ты описал скорее недостаток пайтона, нежели плюс.
Когда ты возвращаешь массив различных типов, тем самым ты:
1. Подрываешь механизм строгой типизации;
2. Переполняешь ресурсы возвращая одним методом то, что должно вернуться несколькими;
3. Плодишь кашу в коде, который поддерживает N+ человек. Тут писали про методы из 20к строк, вот как раз возвращать любые типы - это из той оперы.
Так или иначе, вернуть массив разных типов в решетках тоже можно используя кортежи или класс-оббертку.
Я не фанат решеток и хотя этот язык умирает, он во многом совершенен.
Аноним 11/01/20 Суб 21:11:18 1570239468
>>1570061
Не совершенен - нет множественной диспетчеризации например. Скорее жс сдохнет, чем шарп.
Аноним 12/01/20 Вск 21:13:29 1571063469
У меня проект (CRM), где нужна полная регистрация действий пользователя. Целесообразно ли добавлять в DAL сущность юзера в каждый метод? Или лучше это сделать на BLL уровне?
Аноним 12/01/20 Вск 21:37:24 1571086470
>>1570239
>Скорее жс сдохнет, чем шарп
Это само собой, Blazor к этому идет.
Аноним 12/01/20 Вск 21:40:24 1571088471
Есть небольшой гайдик по создании инди игры(платформера например) на чистом сисярп? Хочу понять как вообще графоний делается и спрайты
Аноним 12/01/20 Вск 23:01:44 1571183472
image.png (10Кб, 451x257)
451x257
ахахах
Аноним 12/01/20 Вск 23:36:48 1571210473
Аноним 13/01/20 Пнд 00:00:33 1571246474
Аноним 13/01/20 Пнд 00:02:04 1571248475
Аноним 13/01/20 Пнд 01:01:56 1571313476
Аноним 13/01/20 Пнд 01:19:15 1571319477
>>1571313
В каких именно задачах альтернатива?
Аноним 13/01/20 Пнд 01:48:48 1571324478
Аноним 13/01/20 Пнд 06:36:22 1571381479
Аноним 13/01/20 Пнд 08:25:12 1571396480
>>1571088
Тебе нужно что-то, что будет выводить твою графику. Теоретически можно сразу работать с директ иксом, но ты повесишься, пока разберёшься.
Либо выводи через WPF (на нём тоже написано несколько игр, погугли. Там есть встроенная анимация), либо не еби мозги и учи параллельно юнити, как и все делают.
Аноним 13/01/20 Пнд 08:32:01 1571399481
Аноним 13/01/20 Пнд 08:35:01 1571400482
>>1571399
Джава не прижилась на десктопе, так что не совсем.
Аноним 13/01/20 Пнд 10:26:53 1571461483
Аноним 13/01/20 Пнд 10:27:26 1571463484
>>1571381
Жаба говно, там надо устанавливать везде его движок тупой
Аноним 13/01/20 Пнд 10:36:02 1571468485
Есть гайд по сертификации приложений? Как то можно делать это бесплатно? Что б если ты написал десктоп прогу - она не отображалась у всех как потенциально опасное приложение.
Аноним 13/01/20 Пнд 10:46:38 1571481486
>>1571463
Шарп говно, там надо устанавливать везде его framework тупой
Аноним 13/01/20 Пнд 10:47:47 1571482487
>>1571400
Да нахуй кому десктоп нужен? Ты еще скажи системного программирования нет. JNI
Аноним 13/01/20 Пнд 10:48:02 1571483488
>>1571481
>>1571468
Да, тоже интересно. Без предустановки вижуалки, ни один экзешник не запустится. Кроме консоли, разве что
Аноним 13/01/20 Пнд 10:50:36 1571485489
>>1571483
Да нет, всё запускается отлично, даже экзешник скопированный с папки debug если ты, конечно, с библиотеками и версией шарпа не проебался, но пишет что на ваш страх и риск.
Аноним 13/01/20 Пнд 11:16:20 1571497490
>>1571482
Конечно, не нужен. Нужна пара десятков приложений, не работающих без Интернета.
Аноним 13/01/20 Пнд 11:35:49 1571509491
>>1569168

Джаваскрипты, хтмл и цсс тебе нахрен не нужны, на шарпе бекомакаки пишут бэк с апихой (rest, graphql).

Вся гуйня пишется на фронте фронтомакакми.

Разделение труда.
Аноним 13/01/20 Пнд 11:40:18 1571514492
>>1571497

Если нет интернета, значит ты страна третьего мира в которой или сам диктатор отключил своим рабам интернет или это диктатору Белые Бваны Демократии отключили интернет и прямо сейчас бомбят на стелс-истребителях F-35 и гиперзвуковых ракетах его города.

В противном случае не может такого быть что бы не было интернета.
Аноним 13/01/20 Пнд 11:41:41 1571515493
>>1571183
не пости такое, сейчас мочератор прибежит, начнет посты тереть, банами трясти. Вкатывальщики и студентота не верит, точнее не хочет верить
Аноним 13/01/20 Пнд 13:18:04 1571579494
Бля, котаны, завтра меня будут собеседовать по скайпику на должность джуна. Никогда не собеседовался. Так волнуюсь, что коленки трясутся. Ох, чую, обосрусь я завтра, лол. Подбодрите меня.
Аноним 13/01/20 Пнд 13:20:52 1571581495
>>1571579
Как пройтись по графу лучше всего? А по бинарному дереву?
Аноним 13/01/20 Пнд 13:20:54 1571582496
Аноним 13/01/20 Пнд 13:21:23 1571584497
>>1571579
Волнуешься ты потому что не веришь в то, что обосрёшься. Если бы ты действительно в это верил, то и страха бы не было.
Ничего, завтра ты обосрёшься по полной, будешь краснеть и потеть, мямлить что-то невнятное, впадать в минутные паузы после вопросов на которые ты ответить не можешь. Потом всё будет как снежный ком, волнение и стыд не дадут тебе отвечать даже на элементарные вопросы, в итоге собеседующий будет смотреть на тебя как на дерьмо, а также не скрывать презрения, ведь ты потратил его время, которое он мог потратить на достойного кандидата, а не на какого-то придурка, который захотел войтивайти потому что много платят.
Аноним 13/01/20 Пнд 13:21:51 1571585498
Аноним 13/01/20 Пнд 13:22:28 1571586499
>>1571579
Анон, выложи, плиз, вопросы что тебя спросят. Оч прошу
Аноним 13/01/20 Пнд 13:25:37 1571594500
Одни вкатывальшики.
Аноним 13/01/20 Пнд 13:26:12 1571595501
Аноним 13/01/20 Пнд 13:27:41 1571596502
>>1571594
Логично что кто уже работает по теме - здесь особо топ ответ не получишь. Да и есть другие места, где можно искать ответы на серьёзные вопросы. Здесь такое вот самое начальное только.
Аноним 13/01/20 Пнд 13:28:22 1571598503
У меня пикчей нормальных нет для переката, а второй раз с Курису не хочу. В общем сами как-нибудь
Аноним 13/01/20 Пнд 13:31:38 1571600504
Аноним 13/01/20 Пнд 13:32:25 1571601505
Аноним 13/01/20 Пнд 13:33:56 1571603506
Аноним 13/01/20 Пнд 13:34:32 1571605507
>>1571598
Всем похуй на твои пикчи и твои перекаты, долбоеб.
Аноним 13/01/20 Пнд 13:36:05 1571608508
Аноним 13/01/20 Пнд 13:36:27 1571609509
>>1571605
Тогда почему тебе не похуй что я написал?
Аноним 13/01/20 Пнд 13:36:52 1571610510
>>1571585
Не ебу, что это за хуйня.
Аноним 13/01/20 Пнд 13:38:50 1571612511
>>1571608
>>1571610
Ну это базовые вещи. Ты можешь сказать чем абстрактный класс отличается от интерфейса и где что лучше использовать?
Аноним 13/01/20 Пнд 13:41:28 1571617512
>>1571609
Потому что между похуизмом по отношению к тому, что ты написал, и похуизмом на картинки и перекаты, нет никакой связи.
Аноним 13/01/20 Пнд 13:42:58 1571620513
>>1571617
Есть связь, тема переката и картинок, это связующее. Ты тупой?
Аноним 13/01/20 Пнд 13:45:27 1571625514
>>1571612
Могу сказать, чем отличаются. Ну, это паттерны проектирования, насколько я понимаю, да? Я их слегка касался только. Сейчас почитаю.
Аноним 13/01/20 Пнд 13:45:58 1571627515
Аноним 13/01/20 Пнд 13:45:59 1571628516
>>1571620
>есть связь я так скозал!!!

Опять выход очередной серии твоего любимого маняме задержали, дебилёныш?
Аноним 13/01/20 Пнд 13:46:28 1571631517
Аноним 13/01/20 Пнд 13:48:28 1571633518
>>1571628
>Нет связи, я так скозал!1
Я доедаю свою пиццу флорентино, пока я параллельно кодю и отвечаю вкатывальщикам, а ты и дальше сиди и перди, неосилятор, возмещающий обиду токсичностью
Аноним 13/01/20 Пнд 13:51:34 1571638519
>>1571612
В абстрактном классе можно реализовать методы и инициализировать поля, интерфейс это всего лишь обложка, схема.
Абстрактный класс нужно использовать для создания основы иерархии классов, т. е. если у тебя будут как минимум два класса, которые связаны между собой, то следует всё общее из этих классов вынести в абстрактный класс и наследовать его в этих производных классах.
Интерфейс нужно использовать для связывания различных иерархий классов, которые не связаны между собой общим классом, но имеют что-то общее.
Аноним 13/01/20 Пнд 13:53:18 1571639520
>>1571638
>Интерфейс нужно использовать для связывания различных иерархий классов
Зачем, если интерфейс это всего лишь обложка? Почему без него нельзя обойтись?
Аноним 13/01/20 Пнд 13:54:01 1571640521
>>1571638
Добавлю ещё что интерфейсы допускают множественное наследование, а классы, даже абстрактные - нет.
>>1571639
Собственно поэтому
Аноним 13/01/20 Пнд 13:54:05 1571641522
>>1571638
Ну да, примерно это я и хотел сказать. Ты просто меня опередил.
Спасибо
Аноним 13/01/20 Пнд 13:55:37 1571643523
>>1571514
Ок, не может быть так не может.
Аноним 13/01/20 Пнд 13:55:51 1571644524
>>1571641
Короче, дело такое. Пидоров мы не принимаем.
Аноним 13/01/20 Пнд 14:00:11 1571648525
>>1571639
Потому что ты можешь наследовать сразу несколько интерфейсов, но не можешь наследовать сразу несколько классов. При этом, интерфейс обязывает тебя реализовать все свои методы, а класс не обязывает этого делать. Т. е. в случае с интерфейсом, каждый кто его наследует, должен предоставить реализацию методов интерфейса. Это удобно потому что предотвращает путаницу, которая может возникнуть из-за того, что кто-то наследовал класс, реализовал в нём какой-то конкретный метод, а остальные остались неизменными, но при этом для правильной работы эти методы необходимо реализовывать для каждого класса по своему.
Т. е. интерфейс используется еще и тогда, когда каждый метод этого интерфейса нужно в классе, который будет его наследовать, реализовать по своему.
Аноним 13/01/20 Пнд 14:00:20 1571649526
Аноним 13/01/20 Пнд 14:00:39 1571650527
Аноним 13/01/20 Пнд 14:09:34 1571661528
>>1571649
Тогда можем вам предложить вакансию в HR отделе. Также, одному из наших топ-менеджеров требуется помощница, но там фигурируют отдельные условия, которые необходимо обговаривать в более приватной обстановке, если вы понимаете о чём я ехидно улыбается
Аноним 13/01/20 Пнд 14:22:16 1571670529
>>1571661
>которая может возникнуть из-за того, что кто-то наследовал класс, реализовал в нём какой-то конкретный метод, а остальные остались неизменными
А виртуальными их нельзя в абстрактном классе объявить?
Аноним 13/01/20 Пнд 14:22:23 1571671530
>>1571603
Нет, он прав. Надо готовиться к худшему, иначе восторженный манямирок лопнет с треском.
Аноним 13/01/20 Пнд 14:24:22 1571672531
>>1571670
И? Это не обяжет его перезаписывать, а только предоставит такую возможность у класса-наследника.
Аноним 13/01/20 Пнд 14:25:31 1571673532
>>1571671
Ну я сегодня-завтра почитаю вопросы к собесу. Ну они мой говно-гитхаб смотрели, поэтому, думаю, знают, что я из себя представляю. Могу из-за волнения начать городить хуйню и даже не ответить на вопросы, на которые знаю ответы.
Аноним 13/01/20 Пнд 14:27:20 1571674533
>>1571672
Ага, да. Я не знал просто.
Аноним 13/01/20 Пнд 14:39:45 1571682534
А вообще, если даже я облажаюсь, что скорее всего и произойдет, для меня это будет полезным опытом.
Аноним 13/01/20 Пнд 14:42:50 1571684535
Аноним 13/01/20 Пнд 14:43:46 1571685536
>>1571684
Обязательно, братишка.
Аноним 13/01/20 Пнд 14:47:18 1571689537
>>1571682
Как попал на собеседование вообще?
Аноним 13/01/20 Пнд 14:48:01 1571690538
>>1571689
У меня есть подозрения, зашла на хх и кинула резюме.
Аноним 13/01/20 Пнд 14:53:51 1571693539
Я тоже скоро джунить буду. Но не на сярпе, слава б-гу.
Аноним 13/01/20 Пнд 15:03:28 1571700540
Visual Studio Community 2019, как пофиксить знаки вопроса вместо русскоязычных символов в полях баз данных, тип — nvarchar, text тоже не помогает.
Аноним 13/01/20 Пнд 15:06:00 1571701541
>>1571594
фо, серьезно? Хм, а как же ты заметил? Может задачи с перестановками строк тебя на это натолкнули? Хм, или какие книжонки почитать? Каждый тред это пишу, пока моча не банит и не тред посты.
>>1571596
>особо топ ответ не получишь
проиграл с дауна
>есть другие места, где можно искать ответы на серьёзные вопросы
дважды
>>1571649
всем похуй, хуй сосать готова за оффер? Нет? На выход
>>1571693
на решетках еще берут джунов? Земля им пухом
Аноним 13/01/20 Пнд 15:08:08 1571703542
>>1571701
Да иди ты нахуй пидор ебаный, маму твою ебал.
Аноним 13/01/20 Пнд 15:12:41 1571707543
Аноним 13/01/20 Пнд 17:45:49 1571887544
Допустим есть MVC приложение, можно ли запихнуть в одно приложение два entity db context с разными схемами? Я знаю, что multi context возможен, и я его юзаю, но мне нужно что бы условный ControllerX1 обращался к Χ1 entity context, а ControllerX2 к Χ2, при чем у Χ1 и Χ2 одна и та же таблица имеет разную схему.
Аноним 13/01/20 Пнд 17:47:35 1571889545
Аноним 13/01/20 Пнд 17:48:00 1571890546
>>1571889

Это же пиздец, процедурное программирование.
Аноним 13/01/20 Пнд 17:56:34 1571892547
>>1571673
Скинь гит плиз. Тоже завести хочу, а надо понять хоть как выглядит это все. Фейкомыльцо xofamip413@clsn.top
Аноним 13/01/20 Пнд 20:16:57 1571992548
>>1571892
Ты похитишь мою интеллектуальную собственность.
Аноним 13/01/20 Пнд 20:20:30 1571998549
Я тут почитал интернеты, оказывается к собесу надо готовиться. А я думал можно не готовиться. А до завтра я не успею подготовиться. Кажется, меня завтра обоссут.
Аноним 13/01/20 Пнд 20:23:15 1572004550
>>1571998
К собесу надо готовиться всю жизнь.
Аноним 13/01/20 Пнд 20:35:05 1572015551
Аноним 13/01/20 Пнд 20:37:06 1572020552
>>1572015
По твоему люди, которые ходят 3 раза в неделю в зал, не живут? Живут, просто тратят 3 часа в неделю на занятие спортом. Столько же нужно тратить программисту для того чтобы всегда быть готовым к собесу.
Аноним 13/01/20 Пнд 20:49:05 1572034553
Посоны, если хотите, попробуй в скайпике записать, как меня обоссут. Надо, нэ?
Аноним 13/01/20 Пнд 20:49:35 1572035554
>>1572034
>попробуй
могу
быстрофикс
Аноним 13/01/20 Пнд 20:52:38 1572040555
Аноним 13/01/20 Пнд 21:27:57 1572077556
>>1571887
Разберись сначала в том, как создать контекст не используя асп и конфигурационный файл. Потом поймешь насколько тупой вопрос задал.
Аноним 13/01/20 Пнд 21:52:22 1572107557
С помощью oledbdataAdapter подключаюсь к бд.
После добавления ограничений внешнего ключа не могу добавлять новые записи в таблицу(до точно работало все), т.е. прямо в datagridview просто пропадает запись, не попадает в dataset. Как поправить?
Аноним 13/01/20 Пнд 22:10:16 1572123558
Аноним 13/01/20 Пнд 22:12:49 1572125559
>>1572123
Да я на плюсах делаю, но в том треде не любят c++/CLI. Да и код там формируется автоматически из коллекции relations у dataSet, я неправильно ключи что ли задал?
Аноним 13/01/20 Пнд 22:38:26 1572146560
>>1572125
>Тред Шарпа

>Помогите с кодом
>Ну так покажи код
>Он на плюсах, не покажу

Ты совсем тупой?
Аноним 13/01/20 Пнд 22:51:26 1572151561
>>1572146
Ну откровенно говоря, да.
Просто объясни как правильно настраивать отношения между таблицами, если не трудно. У меня их всего 3, одна с книгами, вторая с читателями, а третья их соотносит в виде учета.
Я выставил их родительскими, а третью дочерней, связал по ключам соответствующим, но не работает.
Аноним 13/01/20 Пнд 23:00:19 1572160562
>>1572151
Ты блядь думаешь что если тебе в плюсотреде не помогли с плюсами то помогут в шарптреде?
Аноним 13/01/20 Пнд 23:03:41 1572162563
>>1572035
пили, поучишься на своих ошибках, заодно анону поможешь
Аноним 13/01/20 Пнд 23:04:53 1572163564
>>1572160
Да тут дело не в плюсах, а в компоненте dataset библиотеки .net. Это ведь и шарповская вещь, верно?
Аноним 13/01/20 Пнд 23:22:08 1572186565
Ну таблички нарисуй в паинте и покажи как ты их склеил
Аноним 13/01/20 Пнд 23:26:39 1572196566
В первой айди первичный, потом имя автора, во второй тодже айди первичный, потом просто название кники, в третьей айди первичный, потом айди автора внешний указывает на первичный в таблице с авторами и айди книги тоже внешний указывает на первичный таблицы с книгами.
Аноним 14/01/20 Втр 00:40:32 1572246567
Безымянный.jpg (52Кб, 943x543)
943x543
>>1572196
Ну я так и делаю по идее. Я все удалил и по-новой им прописал эти свойства, но программа выкидывает исключения при запуске.
Я кстати заметил что foreignkey почему-то unique, я думал только primary должен быть уникальным?
Там просто есть коллекция relations и еще в коллекции tables можно contraints задавать, может конфликт какой-то происходит если не в том порядке настраивать свойства? Может какой-нибудь мануал/видео есть с простеньким приложением, использующим таблицы со связями?
Аноним 14/01/20 Втр 09:20:47 1572368568
Привет, ребят, пишу после переката, как можно в асп в конфигах (xml которые) сослаться через configSource на файл, который лежит в директории, которая на уровень выше, чем та, где я храню свой конфиг?
Аноним 14/01/20 Втр 09:31:13 1572371569
Безымянный.jpg (23Кб, 668x273)
668x273
>>1572246
Вообще так делается обычно
Аноним 14/01/20 Втр 09:32:04 1572372570
>>1572246
Что пишет то в исключении?
Аноним 14/01/20 Втр 09:32:55 1572373571
>>1572246
ФК ссылается на ПК, который должен быть уникальным жи.
Аноним 14/01/20 Втр 09:44:05 1572376572
>>1572246
код покажи хоть на крестах и текст исключения
Аноним 14/01/20 Втр 10:35:14 1572414573
1420760494903.jpg (43Кб, 640x640)
640x640
Спасибо за отзывчивость!
Я походу понял ошибку, надо заполнять сначала родительские таблицы в обработчике загрузки формы. Вроде теперь работает все. Чувствую себя как пикрелейтед. Еще раз спасибо, аноны.
Я вот думаю может в шарп перекатиться и продолжить в студии сидеть, потому что на qt что-то все закручено делать интерфейс графический. А плюсы походу из студии выживают с каждым годом, у меня вижуал студия 2008 и то там повырезаны некоторые возможности, в новой версии я слышал вроде даже winforms шаблона нет по умолчанию для плюсов.
Аноним 14/01/20 Втр 10:40:56 1572417574
>>1572414
>надо заполнять сначала родительские таблицы в обработчике
>вижуал студия 2008
>в шарп перекатиться
тут своих обезьян хватает, спасибо не надо
Аноним 14/01/20 Втр 10:44:52 1572422575
>>1572417
Это должно быть очевидно, да. Но я сначала делал без связей и там было похуй как заполнять dataset, я не обратил поэтому внимание на обработчик, думал дело именно в отношениях/ограничениях. В книжке, по которой я пытался разобраться была вообще одна таблица, а все подводные камни вылезают в процессе как правило.
Ну а для шарпа естественно обновил бы студию, хотя для лаб в принципе и старой хватает.
Аноним 14/01/20 Втр 10:47:10 1572423576
15043362609970.jpg (114Кб, 960x948)
960x948
>>1572422
>Но я сначала делал без связей
Аноним 14/01/20 Втр 12:52:13 1572475577
Почему майкрософт сделали Razor UI library только для .NET Core MVC, а не для .NET Framework MVC?
Аноним 14/01/20 Втр 14:33:05 1572563578
image.png (199Кб, 600x577)
600x577
Где возможно применение (в принципе) C# и какое его основное направление в сферах разработки?
Аноним 14/01/20 Втр 15:02:00 1572580579
>>1572563
> Где возможно применение (в принципе) C# и какое его основное направление в сферах разработки?

>>1571889
Аноним 14/01/20 Втр 15:06:08 1572585580
>>1572563
в бурсах курсовые пишут и вкатыши pet project пишут. Вроде всо
Аноним 14/01/20 Втр 18:03:54 1572723581
>>1572580
>>1572585
И все?
Я сейчас изучаю микроконтроллеры, но параллельно игры стали интересны, в частности унити, вот и интересуюсь.
Аноним 14/01/20 Втр 18:50:24 1572760582
Аллюр, арестанты!

Тут люди интересуются за актуальность Рихтера (CLR via C#) в эпоху .NET Core. Что скажете?
Аноним 14/01/20 Втр 18:58:26 1572762583
>>1572760
Всегда актуально, но не для книги с которой нужно начинать, а для закрепления и углубления.
Аноним 14/01/20 Втр 19:25:24 1572779584
>>1572762
то есть фичи из книги применимы для CLRCore?
Аноним 14/01/20 Втр 19:34:33 1572782585
>>1572779
Нет, блять, они всё с нуля написали.
Аноним 14/01/20 Втр 19:39:37 1572788586
>>1572782
Почему ты такой агрессивный?
Аноним 14/01/20 Втр 19:42:21 1572792587
>>1572788
Ты здесь недавно? Почему не на пикабу? Опять карма в минус ушла и постить не разрешают?
Аноним 14/01/20 Втр 21:13:39 1572862588
>>1572792
Раз в год с 2010, постоянно с 2016, но сидел в других досках. Вроде мало где так агрессивно себя ведут, если пишешь не про политоту/биопроблемы/тупуюхуйню, а нормально задаешь вопрос.
Аноним 14/01/20 Втр 21:15:43 1572864589
>>1572862
Это не нормальный, а тупой вопрос. Никто в здравом уме не будет переписывать то, что делалось несколько лет. Очевидно, что цлркоре это тотже цлр только с уклоном на мультиплатформенность.
Аноним 15/01/20 Срд 08:20:48 1573004590
>>1571889

Я одного не пойму.

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

То есть по идее - всё это должно решаться evysv коньпелятором, который должен под капотом превращать AoS layout в SoA layout.

И тут я такой смотрю вот эти видосы этого сычевского и, что бы вы думали, ОНИ ЗАПИЛИЛИ СВОЙ КОНЬПЕЛЯТОР, С БЛЕКДЖЕКОМ И ШЛЮХАМИ (Burst compiler, если я правильно понел), но написать в него эту самую кеш-локальность забыли и декапсулированные структуры и процедуры по прежнему надо писать с использованием вот этих вот анальных трюков из вот этих вот видосов.

Что за хуйня, объясните.
Аноним 15/01/20 Срд 09:02:33 1573024591
>>1572862
Тут же чсвшное быдло собирается, каждый считает себя самым охуенным.
Аноним 15/01/20 Срд 09:29:01 1573037592
Ребатишкисы, при шифромании через командную строку в асп шифруются все файлы с расширением config или только web.config?
Аноним 15/01/20 Срд 12:22:26 1573077593
Есть два стула вопроса:
1. Обработка статус кодов и различного рода ошибок - В каком из слоев приложения хранить? DAL/BLL/UI (asp.net core)?
2. Холиварный вопрос уровня /pr/бугурт тред. Есть HTTP (транспортный протокол). Как обрабатываются статус коды? В моем понимании - если запрос обработан (200 ок), то в зависимости от аутентификации пользователя вывалывать ту или инную стараницу. Или же - запрос обработан, аутентификация упала - 403 forbidden?
С меня как обычно мог бы и не чекать, про "нихуя" и сам знаешь
Аноним 15/01/20 Срд 13:33:15 1573186594
>>1573077
На том коде, который зовет BLL.
Аноним 15/01/20 Срд 14:03:48 1573210595
>>1573186
а что, насчет статус кодов?
Аноним 15/01/20 Срд 14:21:14 1573220596
>>1573210
Хотя в зависимости что у тебя за приложение, можно больше детелей, что делает твой BLL, а что UI?
Аноним 15/01/20 Срд 14:30:48 1573225597
>>1573220
CRM, где каждый пук чих регистрирует действия пользователя. BLL - вытягивает из DAL по UOF паттерну CRUD функции и дальше делает ряд проверок, расчетов и т.д.
UI - берет данные из BLL и передает в View через контроллер
Аноним 15/01/20 Срд 14:34:51 1573231598
>>1573225
Ошибоки на BLL и все такое тамже. А тепер зачем тебе статус код?
Аноним 15/01/20 Срд 14:42:39 1573241599
>>1573231
если юзер не прошел аутентификацию, должно ему высрать 403 ошибку. Возник вопрос - через 200 статус + View об ошибке, или сразу 403 статус код вывалить?
Аноним 15/01/20 Срд 14:45:49 1573245600
>>1573241
UI должен обработать тогда.
Аноним 15/01/20 Срд 14:58:25 1573251601
>>1573245
он то обработает, каким образом это делать? Статус код 200 или 403, если клиент не аутентифицирован? Еще помимо View выход на Web Api (все эндпоины будут писать отдельно)
Аноним 15/01/20 Срд 15:05:42 1573255602
Аноним 15/01/20 Срд 15:09:33 1573258603
>>1573255
Какие еще статус коды, кроме 200, 403 и 404 посоветуешь запилить? С вебом мало знаком, не хочу говно лепить.

Энивей, спасибо.
Аноним 15/01/20 Срд 15:13:24 1573263604
Аноним 15/01/20 Срд 15:52:32 1573327605
Аноним 16/01/20 Чтв 02:08:42 1573911606
Аноним 16/01/20 Чтв 07:40:11 1573953607
Аноним 16/01/20 Чтв 11:28:52 1574053608
Это нормально что я не догоняю, что такое WEB API? По мне так это какая-то штука, которая имеет какие-то запросы ( гет пост, пут, делит), обращаться к ней можно из браузера или postmana. Правильно я понял? Но всё равно как-то не очень понимаю зачем это нужно.
Аноним 16/01/20 Чтв 11:55:20 1574069609
>>1574053
Верно думаешь.

Для API по REST
Аноним 16/01/20 Чтв 13:09:53 1574116610
>>1574053
Вот есть у тебя мобильная апка, допустим тотже телеграм. Нужно послать или получить сообщение. База в клауде, собственно нужен к ней доступ с моб. девайса. Доступ к базе есть с сервера, клиенту нельзя ибо не секюрно.
Сообствено сервер общается с мобилой через http(s) протокол. Также как и браузер, только браузер юзает в основном GET/POST, и получает в еблет html код и показивает юзеру. А вот в слачаее с мобилой не нужен html, а только дата, для етого и есть REST сервиси, только там есть еще методи: PUT, PATCH, DELETE, HEAD.
Аноним 16/01/20 Чтв 13:30:55 1574130611
unnamed.jpg (14Кб, 300x300)
300x300
>>1569539
>>1567657
пасаветуйте либу для трича, хачу стрэмить майнкамфкрафт шобы тупа все в паток в хай квалити
Аноним 16/01/20 Чтв 13:45:22 1574140612
Аноним 16/01/20 Чтв 14:00:01 1574147613
>>1574130
моча, не могу удержаться запостить такую дичь, когда вижу очередной вопрос по курсовой/лабы. Как не вращение строчек, так кодеки/видеоплееры в решетки тащат, ну что за уебища :(
Аноним 16/01/20 Чтв 14:31:27 1574184614
В прошлом треде уже спрашивал, но чет так толкового ответа не получил, потому спрошу еще раз.

Ковыряю MVVM с WPFом. Подвязываюсь вьюшкой через вьюмодел к модели, все как по учебнику, так сказать. Но проблема в том что при присвоении модели данные на вьюшке не обновляются.

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

В общем, как ПРАВИЛЬНО сделать чтобы оно работало? Или у меня вообще подход неверный и модель не должна присваиваться?

Для небольшого контекста - аппка общается с некоторым веб апи посредством рестшарпа, получает Json, который автоматом конвертится в объект, являющийся, по сути, моделью.
Аноним 16/01/20 Чтв 15:14:37 1574221615
>>1574147
Это тред для ньюфагов. Если ты не ньюфаг или не готов отвечать на ньюфажные вопросы, то упездывай отсюда.
Аноним 16/01/20 Чтв 15:39:33 1574236616
>>1574221
>тред для ньюфагов
Где это указано? Мне давали очень годные советы, как не щелчку. Почему я должен читать залупню, которая гуглится по счелчку пальца? Или в шапку нужно дописать в инструментарии гугл, а то не могут догадаться?
Аноним 16/01/20 Чтв 15:45:22 1574246617
>>1574184
>Но тогда получается что вьюшка видит модель напрямую, а значит ломается сам MVVM

А как ты по-другому инициализируешь ViewModel? В этом и вся суть, ты инициализируешь ViewModel, как свойство в View, после чего во XAML View в качестве контекста даты указываешь это свойство ViewModel.
Далее делаешь всё через команды и биндинги. В итоге получаешь хорошо структурированную модель, которую удобно просматривать, редактировать и дополнять.
Можешь даже сделать в одном проекте отдельное окно, которое не реализует паттерн MVVM, а потом через неделю-две, вернутся к этому проекту и сравнить, как быстро ты разберешься в той части что без MVVM и в той части, что с MVVM.

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

Чтобы данные обновлялись, нужно чтобы типы этих данных поддерживали интерфейс INotifyPropertyChanged, т. е. ты либо реализуешь это интерфейс самостоятельно, либо используешь уже готовые классы, например, ObservableCollection, BindingList и т. п.
Аноним 16/01/20 Чтв 15:47:49 1574251618
>>1574236
>Где это указано?
Шапку почитай.
Аноним 16/01/20 Чтв 15:59:44 1574263619
>>1574251
>Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.
Почитал. Вопросы ака "Есть input "Hui, hizda", должен быть output "adzih ,iu" или "Pizda, hui". Вопросы с встраиванием плееров, кодеков, драйверов - зашквар, ибо решетки - интерпрайз язык (чуть более, чем весь). Так что можешь сказать своему преподу, что не решил лабу, т.к. послали нахуй на борде и не осилил гугл.
Аноним 16/01/20 Чтв 16:03:05 1574265620
>>1574263
Тебе и задают самые острые вопросы, как видишь. Собственно, в шапке ответы на совсем ньюфажные вопросы + список литературы для вката, что как бы должно тебе намекать какая ЦА у треда.
Аноним 16/01/20 Чтв 16:06:03 1574268621
>>1574265
Да, ЦА - вкатывальщики, которые задают вопросы относящиеся к языку и тому, что в литературе им не совсем понятно. При чём здесь студенты с лабой1? Которые не могут встроить плеер, не нашли кодек и т. п., потому что им лень гуглить и шарп им нахуй не всрался, их в шараге заставили на нём хуйню писать.
Аноним 16/01/20 Чтв 16:12:44 1574278622
>>1574268
Ясно. Странное у тебя разделение вкатавальщиков.
Аноним 16/01/20 Чтв 16:18:19 1574282623
>>1574268
помимо ЦА сидят по фану вкатыши и помогают (иногда ебучим объезьянам, гугля за них). По остальному - true
>>1574265
такие вопросы гугляться, а отвечать на это зашквар впринципе. С такими вопросами любой (адекватный) ментор пошлет нахуй гуглить. Ответить на вопрос про особенности архитектуры/технологии, выбор между А и Б, какой то свежак в технологии - для этого имо тред.
Возможно я перегибаю и мне просто нехуй делать на РАБоте, раз пишу все это, но блять, зачем приучать даунов есть с ложки? У меня вообще каждый раз горит, когда помогают решить даунские вопросы (ЗОЧЕМ???77)
Аноним 16/01/20 Чтв 16:19:36 1574285624
>>1574278
>Странное у тебя разделение вкатавальщиков
Блять да потому, что вкатывальщик - это тот, кому это интересно, а не тот, кто будет задавать вопрос, чтобы скопипиздить и забыть
Аноним 16/01/20 Чтв 18:02:04 1574419625
какие у вас есть аргументы, чтобы в 2к20 году учить c#, а не java?
Аноним 16/01/20 Чтв 18:07:03 1574431626
>>1574419
В Java нет оператора goto

/Thread
Аноним 16/01/20 Чтв 18:10:02 1574436627
>>1574431
В java нет блазора.
/Thread
Аноним 16/01/20 Чтв 19:54:12 1574529628
>>1571579
Ну что, как поплавал пособеседовался?
Аноним 16/01/20 Чтв 22:28:35 1574684629
Как жопой трудотнетовец зарабатывает на си шарпе?
Я вкатываюс.
Аноним 16/01/20 Чтв 22:51:06 1574722630
>>1574431
Прям как в том преколе: "Паскаль лучше Си тем, что на Си вы можете написать так: ... На Паскале вы этого сделать НЕ можете".
Аноним 17/01/20 Птн 00:03:30 1574870631
>>1574529
или вскрылся или дали оффер. Обещал тут записать свой факап и пропал, вот же мудила
Аноним 17/01/20 Птн 00:53:09 1575001632
>>1574419
Шарпик поприятнее в плане написания кода. То что на жаве занимает 10к строк, на шарпике можно в 1к уместить. Плюс теперь не так привязан к M$. Да и многие штуки что предоставляет .Net/.Net Core можно без всяких фреймворков брать и использовать, в джаве же помимо самой стандартной джавы еще и куча фреймворков, которые не особо лучше PHP и JS зоопарка. А, ну и конкуренция поменьше, при сопоставимых ЗП.
Аноним 17/01/20 Птн 04:19:56 1575076633
>>1574246
Ты меня немного не понял. Сейчас объясню кодом.

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

<TextBlock Text="{Binding SomeText}" />

Есть вьюмодель с этой пропертью, ссылающейся на поле в модели. INotify... естественно реализован.

private MyModel _mymodel;

public SomeText
{
.get => _mymodel.modelText;
.set
.{
.._mymodel.modelText = value;
..OnPropertyChanged(nameof(SomeText));
.}
}


При этом если я меняю значение проперти напрямую SomeText = "123";, то все нормально обновляется, что очевидно.

Но если я присваиваю модели другой объект, где значение modelText другое _mymodel = someOtherModel;, то ничего не обновляется.

Я понимаю почему оно не работает, но я не знаю как сделать чтобы оно заработало.

>>1574184 дополню

Аноним 17/01/20 Птн 07:39:03 1575111634
Поясните за следующую ситуацию:
Правильно ли я понимаю, что если я решу юзать SOA, то для общения между сервисами я должен запиливать еще один сервис к которому будут обращаться сервесы выполняющие работу? Скажем, вот у меня есть сервис который служит для взаимодействия с БД, есть сервис который от пользователя читает ввод, и чтобы записать в БД правильным решением будет отправить сообщение сервису что пишет в БД, либо же это неправильно с точки зрения SOA?
Аноним 17/01/20 Птн 07:51:02 1575115635
Почему это говно такое безумно сложное после пистона?
Срсли, сидишь и охуеваешь тупо от ебли с нугет-пакетами. Особенно охуенно, когда тебе нужна библиотека, она есть в коробке, но ее нужно включить в настройках нугетов, и при этом ОНА ПО-ДРУГОМУ НАЗЫВАЕТСЯ. То есть, блять, вот как я должен догадаться?

Почему в пистоне я тупо ставлю пипом через батник либу и сразу начинаю с ней работать, а тут какое-то блядство натуральное? Проект, блять, только создал, уже миллион каких-то говнофайлов создалось.
Против одного, ОДНОГО py-файла.
Вообще охуеть.
Аноним 17/01/20 Птн 07:58:51 1575118636
>>1561760
Твоя таска СДОХНЕТ В МУКАХ, если токен заканселится.
Аноним 17/01/20 Птн 08:04:13 1575119637
Аноним 17/01/20 Птн 08:08:56 1575122638
>>1569037
> какие обязанности у C# джуна
Ебать мозги ментору, писать тесты, фиксить баги, учиться.

> какие обязанности у C# мидла
Ебать мозги аналитикам, пму, тестировщикам, Аллаху; писать код.
Аноним 17/01/20 Птн 08:10:37 1575123639
>>1569545
В шарпе тоже можно много значений возвращать. Вэлью тапл, ёбана.
Аноним 17/01/20 Птн 12:24:51 1575238640
>>1575115
Так-то в петухоне тоже куча всякой хуйни создается, если ты проект в пайчарме создаешь. С другой стороны тебя никто не заставляет создавать проект в сишарпе, можешь создавать отдельные файлы и вручную компилировать.
На счет библиотек ++++. Просто пиздец какой-то, почему нельзя былт по-человечески сделать.
тоже щупаю сишарп после питухона
Аноним 17/01/20 Птн 12:45:15 1575264641
>>1575076
Ну сделай _mymodel свойством, при назначении которого SomeText будет меняться на value.modelText.
Но у тебя какая-то херня получается всё равно.
Аноним 17/01/20 Птн 12:50:48 1575269642
>>1564882
Добрался до этой задачи(никогда не заводите себе тянку, аноны, все время сжирают) реализовал как тут подсказано, действительно так удобнее. Но не понял один момент: как ты сделал List<ITask>? Я заменил абастрактный класс на интерфейс, но каим образом сделать чтобы List<ITask> хранил string значения?
Аноним 17/01/20 Птн 13:02:04 1575281643
>>1575115
Потому что решётка всех переиграла.
Аноним 17/01/20 Птн 13:03:56 1575283644
>>1575115
>безумно сложное
А я то думал, что решетки даже дети-даунов осилят но снизу постучали
Аноним 17/01/20 Птн 13:46:23 1575320645
>>1575115
Спешите видеть, ебобо не может вместо пипа использовать нюгет, которые блядь вообще одинаковые нахуй.
Срсли, нахуй ты такой тупой? Учил питон, знаю шарпы, никаких сложностей нет вообще. Хер знает как ты умудрился в чистом поле найти дерево и уебаться об него головой.
Аноним 17/01/20 Птн 14:36:04 1575376646
>>1575264
Твой вариант подходит если проперть SomeText одна. Но их же много, и вручную перебирать их как-то не комильфо. К тому же, если, в теории, потом еще дополнять модель другими полями, то их надо будет туда же в проперть прописывать, а это тоже какие-то там принципы ломает, в общем НЕПРАВИЛЬНО получается. А я хочу наоборот.
Аноним 17/01/20 Птн 14:53:00 1575394647
>>1575376
Так у тебя изначально хуёвая архитектура получается, раз тебе нужно модель каждый раз менять. И почему у тебя привязка идёт к отдельному свойству, а не сразу к модели?
Аноним 17/01/20 Птн 15:20:04 1575430648
>>1574130
Запости те, что тащат. ЧСХ, попытка подъебнуть в анскилльности довольно уныло смотрится с учетом того, что я сразу же написал, что в области разбираюсь чуть более, чем никак.
Аноним 17/01/20 Птн 16:22:53 1575528649
Где найти пример программы на сишарпе для диплома бакалавра, там основная работа с базой данной чтобы допилить можно было
Аноним 17/01/20 Птн 16:35:13 1575549650
>>1575528
Погугли CRUD для ASP net/ wpf/winform в зависимости от того что нужно.
Аноним 17/01/20 Птн 16:36:53 1575552651
Аноним 17/01/20 Птн 18:49:18 1575665652
Это снова я. Соскучились?
Короче, у моего TCP сервера довольно странная проблема: Принимает клиентов он быстро, памяти жрет мало, НО, когда клиент отключается, почему-то выделяется примерно 25МБ и отключаются сессии довольно медленно, т.е. если 5к клиентов создается за 1 секунду, то отключаются они где-то секунд 40, при этом вроде как все асинхронно. И это не то чтобы проблема, просто я не понимаю в чем дело.
Аноним 17/01/20 Птн 19:03:26 1575675653
>>1575665
Да, 25МБ не на каждого клиента, а всего +-25МБ, но этот скачек удивляет. Я вижу в дебагере что почему-то создаются потоки, но хуй знает почему, я же просто когда вываливается эксепшн - убиваю сокет, закрываю его и удаляю из словарика активных сессий.
Аноним 17/01/20 Птн 21:05:19 1575785654
Недавно начал изучать C#, т.к отдел разработки пишет на нём, соотв. путь наименьшего сопротивления для вката. С удалённой работой как дела обстоят? Достаточно заказов на фрилансе?
Аноним 17/01/20 Птн 23:19:51 1575974655
Двач на тебя вся надежда.
Как создать переменную/массив/объект с именем которое содержится в переменной?
Например я ввожу в консоли слово "xyina" и вот мне нужно создать масcив xyina. Как это сделать?
Аноним 17/01/20 Птн 23:22:19 1575978656
Аноним 17/01/20 Птн 23:26:22 1575986657
>>1575978
Ну вот хотелось бы знать о такой функции, как это сделать.
По сути незачем конечно.
Но вот например для такой хуйни как создать много масивов в цикле
for (int i = 0; i < 1000; i++)
{
int[] (list+i) = new int[10000];



}
И типо дохуя массивов list1 list2 list3 list4 и тд
но хз как сделать
Аноним 17/01/20 Птн 23:44:43 1576023658
Спрошу тут, потому что кодю на шарпе.
В общем, есть ли какой-то профит в том, чтобы не самых ресурсоемких объектов создавть пул этих самых объектов заранее? В каких случаях это может быть полезно? Просто я только один сценарий придумал, это какие-то ограничения, скажем NPС в игре, нам не нужно будет тратить время на создание, мы просто достаем из пула объект, инициализируем его новыми данными, и пользуемся этими NPC, пока игрок в зоне находится, потом игрок далеко убежал, мы NPC что за зоной обработки находятся почистили и положили в пул. Но это же детский пример. Как в реальных проектах, если исключить пул потоков, используются эти самые пулы объектов? Когда их надо использовать, а когда правильнее создать новый объект?
Аноним 17/01/20 Птн 23:47:31 1576029659
Аноним 18/01/20 Суб 00:25:05 1576067660
>>1575986
Глупо, ибо не смошеь етим пользоваться.
Аноним 18/01/20 Суб 01:02:28 1576122661
>>1575986
Открой для себя двумерные массивы, вкатыш
Аноним 18/01/20 Суб 10:44:54 1576214662
>>1575394
>И почему у тебя привязка идёт к отдельному свойству, а не сразу к модели?
Так потому что MVVM же. VM идет как прослойка, вот туда и вяжусь.
>Так у тебя изначально хуёвая архитектура получается
Ну вот я и спрашиваю как сделать ее нормальной.
Аноним 18/01/20 Суб 16:06:35 1576491663
Хай гёрлзс энд бойс. Кто мне может пояснить по правильной вложенности иерархических объектов? Есть иерархия классов, условно - нижний уровень - это реализации, листья выше - группировка реализаций. Каждую реализацию обязываю реализовывать обобщенные интерфейсы (К примеру, если это CRUD реализация, то интерфейс ICRUD<T>, где T - Entity). Теперь у меня затык - как это все собрать в одну структуру, чтобы обратившись к одному HEAD (условно так назовем) интерфейсу можно было пройти по иерархии и выбрать интерфейс, который мне нужен?
Я могу сделать через жесткую привязку - в конструктор запихивать классы, а не интерфейсы, но это не подходит, т.к. в любой момент реализация может поменяться.
Выпилить этот обобщенный интерфейс? Так добавится с 30+ дополнительных интерфейсов с одинаковой сигнатурой.
Как быть то блять? Нужен код - могу залить github.
Аноним 18/01/20 Суб 19:25:45 1576684664
>>1576491
> могу залить github.
Запили.
Аноним 18/01/20 Суб 20:43:14 1576774665
Предположим у меня в голове возникла такая задача: Я хочу файлики в папке "Загрузки" сортировать по разным папочкам, в зависимости от расширения. Я написал на старом дотнете программулину, которая с этим справлялась отлично. Все устраивало, кроме того, что необходимо было ее вручную включать периодически. Я почитал и узнал что существует такая штука как сервисы, сделал свой сервис, оторый раз в час смотрел нет ли новых файлов и если они есть - сортировал в фоне. Все отлично - замечательно.
Теперь я решаю сделать аналогичную фиговину под линукс, net core это, вроде как, позволяет по крайней мере если верить статьям. Ну так вот, все классы что исполняют эти задачи у меня есть, но в этот раз я хочу не полностью запуск и прочее мутить, а воспользоваться IHostBuilder'ом. Ну так вот, я выделил интерфейсы, внедрил скопы, как теперь мне запускать это? Не делать же имплементацию IHostedService? Просто если пользоваться IHostedService, получается какая-то залупа, типа я уже внедрил зависимости в билдер, потом передаю их в свою имплементацию и она просто используется для того чтобы стартануть другие классы, которые работой занимались, мне кажется это какое-то уродство и наверняка как-то иначе нужно делать. Только вот как?
Аноним 18/01/20 Суб 21:45:38 1576851666
.png (24Кб, 481x565)
481x565
.png (12Кб, 820x320)
820x320
.png (3Кб, 396x74)
396x74
>>1576491
> как это все собрать в одну структуру, чтобы обратившись к одному HEAD (условно так назовем) интерфейсу можно было пройти по иерархии и выбрать интерфейс, который мне нужен?
Что значит "пройти по иерархии"? Ты можешь просто проверить с помощью рефлексии какие интерфейсы имплементируются классом же.
Аноним 18/01/20 Суб 22:03:18 1576893667
Здорова, пидоры.
Учу я сишарп ентот ваш, со скрипом, но продвигаюсь. Но есть проблема - мне не хватает практики.
То, что читаю в литературе не закрепляется в голове, потому что примеров очень мало, в основном лишь сухая выжимка и я не понимаю как и зачем мне использовать те или иные фичи языка, кроме базовых. В видосах вообще пиздос какой-то, либо хуйня для совсем даунов, где по часу размусоливают чем int от float отличается, либо какие-то индусы задры в 30 минутном туториале высирают тысячи строк кода, вообще никак не объясняя почему они делают ту или иную хуйню, а тебе лишь приходится копипастить и реверсинжинирингом заниматься пытаясь понять что и почему.
tldr есть ли что-то типа школьных задачников по математике/физике, где на каждую тему у тебя есть задачи которые надо решить? Если есть, то ткните ебалом или хотя бы дайте направление для гугла

Ещё есть мысль брать проекты на гитхабе и пробовать в них ковыряться, только хз как не скатиться в тупой копипастинг. Тем более, что я не смогу отличить код здорового человека от кода макаки
Аноним 18/01/20 Суб 22:22:18 1576940668
>>1576893
зачем решил изучать шарп? должны быть какие-то цели наверное кроме абстрактного 300кк/наносек?
Аноним 18/01/20 Суб 22:29:22 1576948669
>>1576893
Идешь на CodeWars и решаешь задачки.
А вообще, проще придумать свой проект, описать на листочке что ты от него хочешь, скажем:
Hex редактор с подсветкой и выгрузкой по ftp, возможностью загружать файлы размером до 60ГБ, довольно интересная задача, особенно в последнем пункте, вот садишься и делаешь, ловишь грабли, гуглишь и продолжаешь делать, пока все пункты не будут выполнены.
Аноним 18/01/20 Суб 23:08:35 1577042670
345523.jpg (52Кб, 829x417)
829x417
>>1576851
>Что значит "пройти по иерархии"?
Пикча. Мне нужно передать в реализацию один класс-матрешку, через которую получать доступ к любой из реализацией, но есть одно но, корректно ли передавать в интерфейс экземпляры классов в иде свойств?. Вот так:

public interface ISupplyCatalogue
{
ReceiptCatalogue ReceiptCatalogue { get; }
SupplierCatalogue SupplierCatalogue { get; }
WareHouseCatalogue WareHouseCatalugue { get; }
}
Аноним 18/01/20 Суб 23:23:57 1577069671
Посоны, я рисую текст на картинке, но дело в том, что шрифты могут не содержать некоторые буквы и тогда он не отрисовывает букву, как можно пофиксить?
Аноним 18/01/20 Суб 23:39:34 1577092672
>>1576940
Мне интересно погромирование, в идеале хотел бы иметь работу в этой сфере. Если удастся поучаствовать в крупном проекте, вообще круто будет.
Именно деньги меня интересуют в последнюю очередь, лишь бы на пожрат хватало. Хочу заниматься тем, к чему душа лежит. Для меня программирование - как для ребенка конструктор Лего. Создавать что-то сложное, используя простые кирпичики это круто. Ещё из плюсов, кстати, то что за несколько месяцев я подтянул английский лучше чем за 11 лет в школе и 4 годах в вузе, лол
О конкретике же говорить пока сложно, я только в начале пути. Главное же, что я достаточно аутист, чтобы не забросить это всё через неделю или после первой неудачи.

Почему именно сишарп? Так получилось. Сейчас у ньюфага огромный выбор, глаза разбегаются, не знаешь как подступиться. Я просто начал пробовать всё подряд.
PHP, HTML пробовал, в принципе не сказать что слишком сложно, но веб не моё. Питон прикольный, но не покидало ощущение, что это больше дополнительный инструмент.
Вкатываться с нуля в си и кресты отговорили на двоще, попробовал шарп, понравился, на нём и остановился.

>>1576948
Спасибо за совет, попробую. Добра и тонны нефти тебе
Аноним 19/01/20 Вск 04:59:15 1577227673
Asp.net core и net core это не одно и тоже?
Давече узнал что в ноябре будет объеденение net framework и net core в net 5.
Вот вопрос не пойдут ли мои старания по изучению языка по пизде через год? Чем вообще грозить это объединение?
Аноним 19/01/20 Вск 05:21:19 1577230674
Аноним 19/01/20 Вск 09:40:11 1577256675
>>1577227
>Чем вообще грозить это объединение?
.NET 5 - это четвертая версия .NET Core. В Core нет ASP.NET Web Forms, WCF и это плохо: много легаси говна написано на этих двух технологиях, особенно на последней, и переписывать обычно заказчик не горит желанием, потому будет лок на каком-нибудь Framework 4.5, повезет если 4.8. https://devblogs.microsoft.com/dotnet/introducing-net-5/
Аноним 19/01/20 Вск 09:52:40 1577257676
>>1577230
VM может содержать другую VM, любое количество, любая вложенность. Для всего говна работы с моделью делаешь отдельную VM, а на основной VM нотифаешь как проперти только обновление ссылки на дополнительную VM.
Аноним 19/01/20 Вск 10:44:35 1577274677
Такой вопрос, как происходит запуск веб-приложения, например, ASP.NET, на сервере? Вот на локальной машине тупо вызывается метод Main при запуске, а как и когда этот метод вызывается, если приложение куда-то задеплоить, на какой-нибудь Azure там и т д?
Аноним 19/01/20 Вск 10:59:21 1577278678
img.jpg (19Кб, 236x330)
236x330
>>1577042
ISupplyCatalogue - это фасад. Без рефлексии, на основе иерархии интерфейсов, при условии, что одна сущность может реализовать несколько интерфейсов, может разруливаться композицией + паттерн матчингом: https://pastebin.com/40cbzk3r
Аноним 19/01/20 Вск 11:08:25 1577286679
>>1577274
Точно так же.
Кор - запускает Main.
Фреймворк - через рефлексию ищет начальную точку: наследник HttpApplication, наличие атрибута StartUp, еще какая хуйня.
Аноним 19/01/20 Вск 11:13:01 1577292680
>>1577286
так как происходит запуск приложения на удаленном сервере, где-то прописывается команда dotnet run или как? или при деплое оно автоматически эту команду выполняет?
Аноним 19/01/20 Вск 11:14:50 1577294681
>>1577292
В зависимости от типа той хуйни, куда деплоишь: может само прописать run, на виртуалке - самому надо писать или хостить на той же IIS.
Аноним 19/01/20 Вск 11:31:39 1577300682
>>1577257
А если вместо этого вызывать OnPropertyChanged(null);? Просто VM в VM выглядит как доп. ебля.
Аноним 19/01/20 Вск 11:40:32 1577303683
Аноним 19/01/20 Вск 12:12:07 1577318684
>>1577300
Дополнительная ебля - это делать как делаешь ты: создать окно ЯМогуВсёИСратьСтояWindow, вместо того, чтобы окно разбить на кастомные контролы или даже окна, каждый из которых будет со своим/своими VM.
Аноним 19/01/20 Вск 12:37:24 1577344685
>>1577318
Ну вообще нет. У меня несколько страниц, где каждая отвечает за что-то свое. Просто мне непонятен вот именно этот момент, когда апи мне возвращает объект, который у меня является моделью для страницы и если я напрямую его присваиваю, то ничего не обновляется.
Аноним 19/01/20 Вск 12:44:14 1577353686
>>1577344
>Ну вообще нет.
Да, иначе бы не было проблемы с дублированием кода как выше.

>мне непонятен вот именно этот момент
Непонятен, потому что архитектура приложения у тебя говно: нарушение единственной ответственности + вьюха какого-то хера знает про модель и пытается ее отобразить. Потому декомпозиция - единственное нормальное решение. Нет правильного решения, есть решение, которое подходит в данной ситуации.
Аноним 19/01/20 Вск 12:51:42 1577358687
>>1577353
>вьюха какого-то хера знает про модель
Да лол, как раз-таки она не знает про модель. Вьюха у меня вяжется на свойство в вм, которое зависит от модели. Конечно, может это и называется "видит модель", тогда я неправ, да.
Аноним 19/01/20 Вск 13:08:52 1577376688
>>1577358
>Конечно, может это и называется "видит модель", тогда я неправ, да.
>К тому же, если, в теории, потом еще дополнять модель другими полями, то их надо будет туда же в проперть прописывать, а это тоже какие-то там принципы ломает
Изменение модели (добавление полей, переименование) не должно ломать отображение, изменяется только VM при необходимости, т.е. тупо изменяется маппинг данных из модели в VM. Вьюха ничего не знает про модель.

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

Так вот, в нормальной архитектуре у тебя компонент с элементами - это список из VM. А когда пользователь выбирает элемент из списка, то выбранный VM присваивается к компоненту для отображения/редактирования, или, еще лучше, выполняется бизнес логика, которая по id элемента ищет элемент в базе данных и создает совсем другой тип VM на базе полученной модели, который присваивается компоненту или просто маппит свойства (если ты не в состоянии занотифаить ссылку на VM).
Аноним 19/01/20 Вск 13:16:21 1577388689
>>1577376
Ага, ну вроде я сообразил, спасибо, хорошо расписал.

У меня, тем временем, еще вопрос появился. Как правильно зашерить дату между страницами, например? Сейчас я просто запилил объект в ресурсах и туда все пихаю, но не уверен что это, опять же, правильно.
Аноним 19/01/20 Вск 13:44:32 1577426690
>>1577388
Данные шарятся одним источником: база данных, АПИ, общая память, еще какая херня.

Например, в MVVM Light есть Locator (Service Locator), который умеет создавать все типы родительских VM при обращении к его свойствам, используя IoC. Locator существует в одном экземпляре, создается в App.xaml, доступен всем страницам. Чтобы на странице использовать какую-то VM, она достается как свойство из Locator, а данные в VM передаются в конструкторе. Данные для конструктора предоставляются самим IoC (с синглтон лайфтаймом - т.е. жив на протяжении жизни всего приложения) или тупо как приватное поле на какой-то класс в Locator. https://www.c-sharpcorner.com/article/getting-started-with-mvvm-light-with-wpf/

Другой способ: передавать данные из родительского окна в дочерние явно, родительское окно создает VM для дочерних и передает необходимые данные в конструктор VM.
Аноним 19/01/20 Вск 13:47:36 1577433691
>>1577426
Во, спасибо тебе огромное, анон, пойду переписывать.
Аноним 19/01/20 Вск 15:57:57 1577631692
Аноним 19/01/20 Вск 16:01:58 1577635693
Аноним 19/01/20 Вск 19:49:59 1577847694
Блядкое говно, книжен нигде нахуй на русском нет для изучения.
Как вы учите C#? По видео? По книгам? Каким?
Аноним 19/01/20 Вск 19:57:55 1577859695
image.png (3Кб, 309x105)
309x105
Как ОНО понимает, что нужно вернуть нужную вьюшку?
Аноним 19/01/20 Вск 20:09:51 1577870696
>>1577859
Хардкод + рефлексия: метод View из базового класса, используя дефолтную реализацию WebFormViewEngine, ищет в определенных местах вьюху по имени метода, который вызывает метод View. Движок можно свой написать и искать как и где хочется или передать строку в View, явно указав место.
Аноним 19/01/20 Вск 20:15:51 1577881697
>>1577870
Переопределить можно?
Аноним 19/01/20 Вск 20:23:10 1577889698
>>1577847
Чел, в погромировании без английского вообще нехуй ловить. Он тебе нужен будет постоянно. Я уже не помню, когда в последний раз в коде встречал кириллицу
Аноним 19/01/20 Вск 20:27:28 1577890699
>>1577889
Ну и где например он будет нужен?
Аноним 19/01/20 Вск 20:29:46 1577895700
>>1577847
Одна книга от Шилдта в далеком прошлом и всё, всяких Рихтеров, Петцольдов и тому подобных Скоттов или поверхностно просмотрел пару глав и забыл или скачал книгу и забыл о её существовании.

Обычный день сеньёра-помидора:
1. Прочитать таску.
2. Нехуя не понять.
3. Заебать вопросами составителя таски.
4. Оценить, если не оценено, или переоценить.
5. Загуглить "как сделать <хуйня нейм>", обычно кидает на Stack Overflow, пишу-то на инглише.
6. Отчитать 8 часов и пойти домой.
7. Вернуться к пункту 1, пока таска не будет выполнена или, если таска выполнена, заниматься хуйней, чтобы попасть в заранее накрученный эстимейт и потом хвастаться как заебись точно оцениваешь + работа-то почасовая: если работать слишком быстро, то будут вопросы "хули так медленно начал работать" или наваливать еще больше тасков до бесконечности, платя тебе столько же.

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

Зарплата зависит от прокаченности уровня пиздежа и количеству лычек.
Аноним 19/01/20 Вск 20:31:38 1577898701
Аноним 19/01/20 Вск 20:36:05 1577902702
>>1577890
Ты неправильно ставишь вопрос
Где он не нужен?
Документация, гитхаб, стаковерфлоу, индусы на Ютубе, поездки на конференции и семинары, банальное общение с работодателем и т.д. да бля, даже банальное комментирование строк.
Аноним 19/01/20 Вск 20:38:14 1577905703
>>1577902
Я не собираюсь где либо РАБотать с ним и тем более на какие-то семинары ездить, че за пиздец, лол?
Аноним 19/01/20 Вск 20:39:18 1577907704
>>1577895
Кстати, ещё один важный момент: обычно таски составляются такими же распиздями на отъебись, т.е. для выяснения деталей таска составитель идёт его выяснять у кого-то ещё, который тоже важен архиважными делами (пинанием хуёв), который так же составлял на отъебись, не зная всех деталей (тоже идёт у кого-то выяснять), и так через несколько кругов "эффективного менеджмента".

Ну, а ты в это время с умным лицом "анализируешь" таску и пинаешь хуи. Забавно, но обычно так должно пройти несколько циклов, когда ты наконец сможешь приступить к выполнению таски.
Аноним 19/01/20 Вск 20:39:34 1577908705
>>1577898
спасибо, хз как проморгал
Аноним 19/01/20 Вск 20:42:03 1577913706
>>1577905
Так а нахуя тогда тебе вообще шарп учить? Для того чтобы поиграться тебе и Бейсика хватит
Аноним 19/01/20 Вск 20:43:36 1577916707
>>1577907
Вот поэтому работа в рашкоконторах это ёбаный цирк.
Аноним 19/01/20 Вск 20:46:24 1577919708
>>1577916
Забавно, но я описал 3 ыврейские и 1 литовскую продуктовые компании, в которых я работал по удалёнке.
Аноним 20/01/20 Пнд 07:45:17 1578303709
Такое дело:
Читаю строки из файла .ReadLine()
Файл заканчивается, как мне снова начать их читать с начала и не закрывая поток? Просто переместить так сказать каретку в 0 позицию.
Аноним 20/01/20 Пнд 10:02:11 1578368710
Народ, как, если у меня класс наследуется от одного абстрактного и еще реализует методы интерфейса, di сделать? как не пытаюсь, все время проблема с IMapper и IRepository
Аноним 20/01/20 Пнд 11:00:22 1578405711
>>1578368
разобрался, в компании по конски все написали, пришлось перелопатить
Аноним 20/01/20 Пнд 12:35:08 1578512712
>>1577847
Троелсена последнее издание есть на русском
Аноним 20/01/20 Пнд 12:40:07 1578515713
Сделал приложение первое на asp core, написал самопальный контроллер, пытаюсь к нему подрубиться - нихуя, почему?
Аноним 20/01/20 Пнд 12:51:02 1578523714
>>1578515
найс, теперь не могу методы вызывать, возвращает 404
Аноним 20/01/20 Пнд 13:02:03 1578530715
>>1578523
Ты код показал бы, вкатывальщик мамкин
Аноним 20/01/20 Пнд 13:09:11 1578539716
>>1578530
да там и код показывать не надо, все дело в атрибуте Route было
Аноним 20/01/20 Пнд 13:12:28 1578546717
>>1577919
в бугурт треде зеленый сидит, который пишет, что могут выгонять на мороз гребцов толпами, типо у работодателя есть выбор, кого нанимать (сам проиграл в голос него). И дауненки хавают. Там такое рассписал, что охуеваешь от толстоты - таски по четко регламентному времени даюто, если не успеешь - минус бонус, не успеешь второй раз - нахуй с галеры
Аноним 20/01/20 Пнд 15:07:03 1578645718
Аноним 20/01/20 Пнд 16:46:04 1578734719
>>1577890
У тебя и с логикой проблемы. Или это >>1577847 не твой пост?
Аноним 20/01/20 Пнд 16:59:56 1578752720
>>1577890
ты спрашиваешь, где нужен ангельский? Ебать ты долбоеб, земля тебе пухом
Аноним 20/01/20 Пнд 17:08:05 1578756721
Аноним 20/01/20 Пнд 18:21:09 1578833722
Уже даже в ссаной жаве рекорды завозят, а Шарп все ещё заставляет писать тонны бойлерплейта
Кажется это впервые когда в жаву завозят нужную вещь раньше чем в Шарп, бтв
Аноним 20/01/20 Пнд 18:59:32 1578859723
image.png (308Кб, 648x605)
648x605
>>1578756
Проблема в том, что я не могу найти.
Аноним 20/01/20 Пнд 18:59:57 1578860724
>>1578734
Помимо книг, ибо учить язык чтобы читать книги - хуйня хуйнёй.
Аноним 20/01/20 Пнд 19:00:24 1578861725
>>1578752
Конкретно в коде где он нужен, мне - сычу, который будет сидеть дома?
Аноним 20/01/20 Пнд 19:01:46 1578864726
>>1578859
>Не может найти в Гугле книгу
>Агрессивно высирается на мимоанонов
Ребенок психованный, борда 18+, съеби
Аноним 20/01/20 Пнд 19:02:36 1578865727
>>1578861
Это троллинг тупостью? Тебе уже сказали где нужен будет, не согласен твои проблемы
Аноним 20/01/20 Пнд 19:05:55 1578870728
>>1578865
Где будет нужен вам, а не мне.
Большинство из перечисленных я смогу заебашить в гугл переводчик, либо найти аналоги на русском.
Вопросы?
Аноним 20/01/20 Пнд 19:15:01 1578883729
>>1578860
Тогда жри устаревшее говно и не вякай.
Аноним 20/01/20 Пнд 19:51:43 1578911730
Есть асп нет вебапи приложение и фронт на реакте, поясните что курить за деплой? Чтоб соединить это все и запустить в интернете. Нихуя про это не знаю.
Аноним 20/01/20 Пнд 20:43:15 1578956731
Короче, ребятки, я не совсем понимаю сценарий работы с этими вашими внедрениями зависимостей через IHostBuilder.

Вот написал пример.
https://ideone.com/uJR03Z

Типа я правильно понимаю, что если у меня есть два(три, четыре...) класса, которые выполняют в фоне разную работу, именно такой сценарий и является наиболее правильным, чтобы обеспечивать общение между ними, не завязывая один на другом я должен буду делать вот такую вот очередь или правильно было бы сделать как-то по другому?
Аноним 20/01/20 Пнд 21:12:09 1578976732
>>1578870
> смогу заебашить в гугл переводчик
заебешься транслейтить, тем более жидко обосрешься на особенностях перевода
Без ангельского в пограммировании делать нехуй (от слова совсем). Не хочешь или не можешь - тред 1С рядом.
Аноним 20/01/20 Пнд 21:12:46 1578977733
>>1578645
на рутрекере лежит, сам буквально пару дней назад скачал
Аноним 20/01/20 Пнд 21:21:39 1578985734
>>1578976
Да мне всё это говно не надо будет, поверь. Если вдруг понадобится, и если вдруг буду РАБотать, то подтяну английский - проблем не будет.




Бляять, я хуею с токсичности этого треда, все так налетели на моё незнание английского, я хуею.
Аноним 20/01/20 Пнд 21:27:37 1578991735
>>1578985
так тебе правду говорят, дебик. Ты когда окунешься в гугление вопросов и сравнишь ответы на ru.stackoverflow и на английском ресурсе - разница огромная. Книги - тоже самое, опенсоурс проекты. Не занимайся самообманом и если пишешь по фанчику для себя (как я когда то), то возможно ангельский и не нужен (больше времени будешь терять на поиск проблем). Все, что дальше - без английского нахуй пошлют.
Аноним 20/01/20 Пнд 21:37:44 1579005736
>>1578859
Тогда у тебя с башкой проблемы, айти не твоё
Аноним 20/01/20 Пнд 21:41:10 1579013737
Аноним 20/01/20 Пнд 21:44:41 1579017738
>>1578991
Ой блядь, не приувеличивай. Чтобы копипастить с стэковерфлоу достаточно уровня английского: Ландан из зэ кэпитал оф грэйт британ!
Аноним 20/01/20 Пнд 21:55:40 1579027739
>>1579017
>я хуею с токсичности этого треда
> Чтобы копипастить с стэковерфлоу достаточно уровня английского: Ландан из зэ кэпитал оф грэйт британ!
Пошел нахуй отседова, петушок
Аноним 20/01/20 Пнд 22:02:48 1579037740
>>1579027
Ай, няша, у меня C1 и вообще мимо, я просто поясняю, что ваши выебоны просто смешны. Все что нужно среднему кодеру это уметь когда ошибка выскочила выделить ее и вставить в гугл, а потом копипастнуть со стэковерфлоу, если не заработало то копипастнуть вторую ссылку в гугле и так пока не заработает. А основы можно и на русском почитать, разницы особой для ньюфага не будет.
Аноним 20/01/20 Пнд 22:09:38 1579040741
>>1579037
ты тупой или зеленый, третьему не дано. Так или иначе, тебе путь один - нахуй
Аноним 20/01/20 Пнд 22:09:49 1579041742
>>1578833
>в ссаной жаве рекорды завозят, а Шарп все ещё заставляет писать тонны бойлерплейта
1. Рекорды в шарп хотели завезти еще хуй знает когда, что-то не поделили в синтаксисе - детали не помню.
2. В жабе всё еще нет пропертей.
3. В тырпрайзе ты не увидишь рекордов еще хуеву тучу лет.
4. Жди лагерь болезненных (как вот этот https://habr.com/ru/post/484700/ индивид), которые не понимают разницу между рекордами и алгебраическими типами. Да и вообще не понимают нахуй эти рекорды нужны.
Аноним 20/01/20 Пнд 22:15:21 1579048743
>>1578911
Покупаешь 1 инстанс на Azure или AWS. Потом деплоишь туда своё говно вручную - и реакт, и асп. Ждешь какое-то время. На основе полученных результатов задаешь конкретный вопрос.
Аноним 20/01/20 Пнд 22:24:50 1579058744
>>1579037
>копипастнуть со стэковерфлоу
Мне хватить С1 копипастнуть https://stackoverflow.com/a/1732454 решение?

Вот, я вставил в гугл транслейт и нехуя не понял:

Вы не можете разобрать [X] HTML с регулярным выражением. Потому что HTML не может быть проанализирован с помощью регулярных выражений. Regex - это не инструмент, который можно использовать для правильного разбора HTML. Как я уже много раз отвечал на вопросы HTML-и-регулярных выражений здесь, использование регулярных выражений не позволит вам использовать HTML. Регулярные выражения - это инструмент, который недостаточно сложен, чтобы понимать конструкции, используемые HTML. HTML не является регулярным языком и, следовательно, не может быть проанализирован с помощью регулярных выражений. Запросы Regex не оборудованы для разбиения HTML на его значимые части. так много раз, но это не до меня. Даже расширенные нерегулярные регулярные выражения, используемые Perl, не справляются с задачей анализа HTML. Ты никогда не заставишь меня взломать. HTML - это язык достаточной сложности, который не может быть проанализирован регулярными выражениями. Даже Джон Скит не может анализировать HTML с помощью регулярных выражений. Каждый раз, когда вы пытаетесь разобрать HTML с помощью регулярных выражений, нечестивый ребенок плачет кровью девственниц, а русские хакеры набивают ваше веб-приложение. Разбор HTML с помощью регулярных выражений вызывает испорченные души в мир живых. HTML и регулярные выражения идут вместе, как любовь, брак и ритуальное детоубийство. <Центр> не может удержать это слишком поздно. Сила регулярных выражений и HTML в одном и том же концептуальном пространстве разрушит ваш разум, словно водянистая замазка. Если вы анализируете HTML с помощью регулярных выражений, вы уступаете им и их богохульным путям, которые обрекают нас всех на нечеловеческий труд для Того, чье Имя не может быть выражено на Основном Многоязычном Плане, он придет. HTML-plus-regexp будет разжижать нервы чувствующего, пока вы наблюдаете, как ваша психика увядает от натиска ужаса. HTML-парсеры на основе регулярных выражений - это рак, убивающий StackOverflow. Уже слишком поздно, слишком поздно. Мы не можем спасти переход ребенка, который гарантирует, что регулярное выражение поглотит всю живую ткань (за исключением HTML, которого нет, как предсказывалось ранее), дорогой лорд Помогите нам, как кто-нибудь может выжить в этом бедствии, используя регулярное выражение для анализа HTML, обрекало человечество на вечность ужасных пыток и дыр в безопасности, используя регулярное выражение в качестве инструмента для обработки HTML, устанавливает разрыв между этим миром и ужасной сферой опасных сущностей (таких как объекты SGML). (но еще более испорченный), если взглянуть на мир регулярных парсеров для HTML, он действительно перенесет сознание программиста в мир непрекращающихся криков, он приходит, ядовитая слизистая регулярная выраженная инфекция уничтожит ваш HT ML синтаксический анализатор, приложение и существование на все времена, такие как Visual Basic, только хуже, когда он приходит, он приходит, не думайте, что он - единственное, радикальное излучение, разрушающее все силы, HTML-тэги, которые вы услышите, песня регулярного анализа разбора отклика поглотит голоса мрачного человека из sp здесь, я могу видеть, что вы можете видеть, как это красиво. Он окончательно понюхает ложь человека Все, что я потерял, все, что я потерял пони, он приходит, он приходит, он приходит, или пронизывает все МОЕ ЛИЦО, МОЕ ЛИЦО, боже, нет, НЕТ, НЕТ, О, НЕТ, остановите * gles are n от rèal ZALGΌ IS҉ TOƝȳ THË PO NY HȨ COMȆS

>среднему кодеру
Хвала богам я не средний и не кодер.
Аноним 20/01/20 Пнд 22:33:33 1579065745
>>1578956
>если у меня есть два(три, четыре...) класса, которые выполняют в фоне разную работу
gRPC, орлины, акка...

>правильно понимаю
нет

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


>я должен буду делать вот такую вот очередь
Нет, используешь готовое решение: rabbitmq, zeromq и так далее mq.
Аноним 20/01/20 Пнд 22:37:36 1579067746
>>1578956
>выполняют в фоне разную работу
Я тут подумал ровно нехуя: где здесь работа в фоне? Для такого рода говно можно использовать serverless решения: AWS лямбды/степ функции, Azure функции.
Аноним 20/01/20 Пнд 22:42:07 1579070747
>>1579058
слезок решил автор напустить, лол
по сабжу - не доказывай ничего этому С1 дауненку
Аноним 20/01/20 Пнд 22:51:43 1579078748
>>1579041
А что, рекорды это не тип-произведение по твоему?
Аноним 20/01/20 Пнд 22:56:29 1579079749
>>1579078
>по твоему?
По моему нет смысла вводить рекорды без всего остального. Будешь сидеть и довольствоваться своими однострочными поко. Или как они в жабе называются? Пожо? Ахаха.
Аноним 20/01/20 Пнд 22:59:10 1579080750
>>1579078
И да, забыл сказать, тип-произведение - кортеж, а не рекорд.
Аноним 20/01/20 Пнд 22:59:49 1579081751
>>1579080
Ой, прости, в жабе же нет велью тайпов.
Аноним 20/01/20 Пнд 23:01:19 1579082752
>>1579065
Я, блядь, студент, сука. Я пишу курсач, который проебал чутка. На кой ляг мне тащить это говно в курсач, где надо сделать TCP-сервер в виде демона на сокетах, который просто принимает сообщения длиной до 1КБ и передает их если нужно другому клиенту(клиентам), а если пришел слишком длинный пакет - шлет отправителя нахуй. Пиздос. Так и представляю, как твой сына спросит как решить квадратное уравнение, а ты предложишь ему на вольфрамальфе вбить либо тащить суперкомпьютер, чтобы он за него все решил. Охуеть вы там в своих тырпрайзах поехали уже с готовыми решениями.
Аноним 20/01/20 Пнд 23:04:28 1579084753
>>1579082
>Я пишу курсач
Так это даже хорошо. Копипастишь хелоуворлд с документации той же акка и в половину курсоча гугл транслейтом вставляешь документацию с официального сайта. Вон, можешь у знатока С1 спросить как гугл транслейтом пользоваться. Потом этот проект мутируешь в бакалаврскую работу с минимум изменений, затем в магистерскую.
Аноним 20/01/20 Пнд 23:09:34 1579090754
>>1579082
>надо сделать TCP-сервер в виде демона на сокетах
А с другой стороны, ты такое не напишешь, потому что знать надо дохуя, реально дохуя. Это только кажется простым. Например можешь почитать про NAT.
Аноним 20/01/20 Пнд 23:14:03 1579091755
>>1579082
Ты, блядь, уебан, сука, тупорылый, а не студент
Ты приходишь в тред за советом, тебе дают, ты начинаешь срать на ответивших что тебе не подходит т.к. задача не в этом и ваще это курсач. Так блядь откуда по твоему анон должен понять что тебе свой велосипед нужен по заданию, имбецил тупой? Опять в твоём ПТУ обоссали, пришел злость вымещать? Пиздуй нахуй с треда, агрочмоня
Аноним 20/01/20 Пнд 23:23:05 1579098756
>>1579084
Я хочу разобраться же. Блин, я же и проебался только потому что решил модно-молодежно следовать всем этим солидам-хуелидам, SOA и прочему говну, из-за этого сейчас у меня прием этих пакетов до 1кб выглядит как:
Слушатель(Хост)
-Сессии
--Стетмашина(проверяет что пришли именно мои байтики а не какие-то левые)
---Хендлеры(парсят если стейтмашина сдетектила пакет, сделал еще свой мидлварь)
----Програмный уровень(сюда уже доходит сообщение в понятном виде, т.е. что за пакет, какое содержимое, вообще и т.д.)
БД

Блядь, 10к строк кода, чтобы принять 1КБ, а могу бы просто не ебаться и в мейне ебануть просто слушателя и пустить по кругу стрим с байтами. Вышло бы строк на 500 от силы.
Вот я и решил уже раз начал, то сделаю чтобы с внедрением зависимостей и модным хостбилдером.
Аноним 20/01/20 Пнд 23:30:10 1579100757
>>1579091
а зачем ты ему помогаешь? я давно уже скрыл дауненка
>>1578833
проигрываю со всяких маня ака C# 8.0 туплы, рекорды etc. Да вас на первой же работе посадят за легаси и вы забудите про все фичи и сахарок в первый день
Аноним 20/01/20 Пнд 23:31:50 1579101758
>>1579098
Код неправильный показал:
- лонг раринг таски в асп - плохая затея
- где работа с сокетами? а там самое весёлое: ебля с портами, со стримами (это когда кусок сообщения обрезается, или слипаются сообщения, или всё вместе), с протоколом парсинга сообщений
- ConcurrentQueue - плохой и медленный класс
- ConcurrentQueue<(double, double)> - привет боксинг/анбоксинг и куча мусора в GC
- нет поддержки горизонтального масштабирования
- код обосрётся, если добавить базу данных
И так далее...
Аноним 20/01/20 Пнд 23:37:07 1579104759
>>1579098
>следовать всем этим солидам-хуелидам, SOA и прочему говну
Вроде где-то в самом начале курса должны были сказать, что лепить бездумно эти все эти базворды в приложение, потому что стильно и молодежно - очень плохая идея. Хотя для курсоча сгодится, пофиг какую фигню вешать на уши преподавателю, правильно ведь говорят: не умеешь программировать, иди учить программировать.
Аноним 20/01/20 Пнд 23:47:03 1579111760
>>1579101
> где работа с сокетами?
Работа с сокетами на уровне хоста - там серверный сокет; И на уровне сессии. Там клиентский.
Я решил что нафиг эти стиримы и использую Memory и передаю куски памяти хендлеру, не заметил проблем с таким вот решением.
> ConcurrentQueue - плохой и медленный класс
Понятно. Буду еще пилить свой потокобезопасный сортированный список.
> лонг раринг таски в асп - плохая затея
Почему? Хотя наверное понимаю почему. Как я понял там куча стейтмашин и всех этих эвейтеров создается. Поэтому? И если плохая, то получается лучше с потоками делать? Что тогда лучше - каждой сессии по потоку или пул потоков?
Аноним 20/01/20 Пнд 23:54:13 1579113761
>>1579111
>Работа с сокетами на уровне хоста
Ахахаха, так используй тогда нормальный WebAPI или HTTP, это тоже обертка над TCP. Зачем мозги ебать? Там тебе и лонг раннинг таски не нужны, и всякие Concurrent коллекции.

>не заметил проблем с таким вот решением
Билли, где сокеты?
>TCP-сервер в виде демона на сокетах
>на сокетах

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

>И если плохая, то получается лучше с потоками делать?
Обычное консольное приложение или библиотека, а не ASP.
Аноним 21/01/20 Втр 00:19:19 1579120762
>>1577689 (OP)
>>1578799 (OP)
Это же гениально, когда C# треда нет в ленте и каждый создает свою тему.
Аноним 21/01/20 Втр 00:35:15 1579126763
>>1579113
Мне кажется у нас расхождение в терминах.
Я под хостом в данном случае понимаю свою личную сущность, что запускается, биндится к порту который передан с конфигм(называю так, потому что в книгах что читал так называли и в примерах кода видел, конечно чаще видел Server, но мне кажется, что сервером лучше все в целом называть а не отдельный класс) и начинает ожидать входящие соединения, попутно ведя статистику полученного-отправленного, и имея торчащие наружу куски для управления подключенными сесиями, типа убить сессию по ID, почистить сессии которые долго ничего не присылали и которым ничего не отправляли, посмотреть список сессий и т.д. Тут как раз и есть серверный сокет, в конструкторе конфигом передаем порт на который биндиться, если порт занят - кидаем эксепшн, если не занят - биндимся и начинаем прием входящих соединений, рожаем клиентов и пихаем их в сессии.
Под сессией - класс который занимается приемом-отправкой клиентских сообщенией. У каждой сессии - клиентский сокет.
Вот и сокеты.

Никаких ASP я и не использовал. Я вроде как и не писал что использовал.
Аноним 21/01/20 Втр 00:57:37 1579140764
>>1579126
>Никаких ASP я и не использовал
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-3.1&tabs=visual-studio

>Я под хостом в данном случае понимаю
>TCP-сервер в виде демона на сокетах
Ну~, я деталей задания не знаю. Но если в задании фигурирует слово "сокет", я бы ожидал, что студент будет ебаться с перекладыванием байтов на самом низком уровне (класс Socket или его производные). А не использовать абстракции более высокого уровня как в статье выше.

Задание покрывает самый обычный ASP.NET. Ведь, о боже, HTTP/2 - это тоже сокеты. Подключения, сессии и так далее уже реализовано из коробки.

Потом, для фоновых задач и коммуникации M$ рекомендует использовать gRPC, вместо почившего WCF, а не вот эту ересь, что ты пытаешься на коленке сделать.

Какой смысл делать так, как делаешь ты? Никакого: как все это работает на низком уровне ты так и не поймешь, как это пишут нормальные люди - тоже не поймешь, так не пишут - это велосипед. Тебе банально знаний и времени не хватит реализовать это правильно (про NAT уже почитал? а ведь это только айсберг). Потому делай так, как считаешь нужным, и вешай лапшу преподу при сдаче курсового.
Аноним 21/01/20 Втр 01:00:14 1579142765
Виват вкатившимся и работающим. Нужен ваш совет (ведь я знаю, что я по адресу). Пришло время осваивать JS (oh no), а учить чистый js как по мне как то зашкварненько после шарпов. Я поскролил учебник до середины и понял, что все интуитивно понятно (даже такие вещи, которые по мнение JS макак - что то на уровне Высоцкого или даже выше к примеру замыкания).
Но не об этом вопрос. Какую библиотеку лучше всего поюзать? В вакансиях #-web в required пишут VUE/React/Angular/AngularJs. Какой из этих 4 выбрать? И нужен ли jquery в 2к20? Все, что я знаю по этим 4 либам:
1. Vue - много китайской документации, не очень популярна на non-asia;
2. React - пожалуй самая популярная (по моему мнению, влень гуглить топы) либа, где в любой кусок html страницы можно запихнуть целую среду JS кода с отдельными функциями приминимыми к DOM;
3. Angular - пожалуй самая привлекательная (для меня) либа из всех. Почему? TypeScript. Синтаксис очень похож на #, да и все от тех же ребят.
4. AngularJs - MVC библиотека Js-a. Часто обновляется. Когда то читал GetStarted, дальше дело не дошло.
Я знаю, что по JS-у спрашивать в C# треде не ок, но вы то сами знаете рыночек, что без JS-a в вебе делать нечего.
Какие еще советы дадите по вебу для C#? Есть опыт в MVC5, Core2.2, RESP-Api ну и базовый набор верстальщика (последнее не очень зашло).
Спасибо за ответ.
Аноним 21/01/20 Втр 01:23:42 1579149766
>>1579142
1. jQuery изучается за час, максимум за два часа. Нужен для легаси говна и частичного понимания Angular.
2. React сам по себе примитивен и очень легко и быстро изучается. Проблема в обросшем говне вокруг него, на изучение которого надо проебать дохуя времени. Писатели на React обмазываются функциональным программированием, но на уровне макаки, поэтому базовые понятия знать необходимо.
3. Svelte - это такой себе React 2, где код максимально примитивен, очевиден и императивен. Крайне низкая популярность.
4. Angular - очень похож на C# с его ASP.NET MVC. Знаешь Angular, значит знаешь TypeScript, хотя, при желании, можно писать и без него. TypeScript действительно очень похож на C#, но пока там не начнут появляться костыли языка и замашки функционального программирования, которые могут сорвать мозг обычному обывателю C# без подготовки.
5. AngularJS до 1.5-1.6 - страшное легаси дерьмо, беги, сука, с этого проекта.
6. AngularJS 1.6+ - легаси говно, похожее на Angular. Соглашаться только на большие рейты.

Итого, знать надо Angular или React, чтобы быть востребованной фронтенд макакой. Знать сразу оба не обязательно.

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

>Я поскролил учебник до середины и понял, что все интуитивно понятно
Ой, зря ты так думаешь, зря-зря. JavaScript - какая-то аномальная индусская хуйня (представь ту картинку, где сравнивают Golang 1 и Golang 2, вот JS - это 2).
Аноним 21/01/20 Втр 01:29:19 1579151767
>>1579142
Забыл про Vue - что-то среднее между React и Angular. Больше ничего про него можно не знать из-за очень низкой популярности. При желании, все тонкости Vue изучаются за неделю, но это актуально пока не вышла новая версия Vue.
Аноним 21/01/20 Втр 01:34:23 1579154768
>>1579149
>замашки функционального программирования, которые могут сорвать мозг обычному обывателю C# без подготовки
Например https://ngrx.io/ - это еще что-то приближенно нормальное, что можно встретить в типичном Angular, хотя выглядит как какая-то сложно читаемая хуйня.

Вообще там идея, что Angular пиздит идеи у React, а React - у Angular. Vue пиздит идеи у Angular и React, такой себе мутант.
Аноним 21/01/20 Втр 01:49:02 1579159769
>>1579082
блять это на пиздоне делается за 2 сука минуты, чо за кипишь блять
Аноним 21/01/20 Втр 01:49:50 1579160770
И еще один класс здоровых приложений:
AngularJS 1.5+ в симбиозе с Angular, используя ng-upgrade (статический или динамический). Охуителен тем, что:
- надо знать AngularJS 1.5+ и Angular
- AngularJS может одновременно использовать и JavaScript, и TypeScript
- компоненты AngularJS и контроллеры AngularJS могут быть в перемешку, контроллеры крайне сложно мигрировать в Angular
- статический или динамический ng-upgrade нахуй меняет весь код
- код Angular в Angular 1.5+ - это новый язык как в html, так и в TypeScript
- код Angular 1.5+ в Angular - это тоже новый язык как в html, так и в JavaScript
- очень много хардкода и строковых литералов
- очень много непонятно как подписанных и как вызванных событий
- глобальные переменные, объявленные непонятно где и изменяющиеся непонятно как
- библиотеки AngularJS не работают в Angular и наоборот, нужно все оборачивать в врапперы
Ладно, я устал, тонкостей очень много. А видел такое не один раз.
Аноним 21/01/20 Втр 01:52:31 1579161771
>>1579159
Сколько можешь держать активных соединений на одной машине? Больше 500 слабо?
Аноним 21/01/20 Втр 01:57:17 1579164772
.png (22Кб, 959x407)
959x407
.png (16Кб, 551x554)
551x554
.png (16Кб, 692x463)
692x463
>>1579140
> А не использовать абстракции более высокого уровня как в статье выше.
Так я и не использовал их в готовом виде, блин. Создал пустой проект. Объявил интерфейс ITcpHost с методами: StartAccept(), StopAccept(), GetSessing(Guid id), StopSession(Guid id), GetSessionCount(), свойства для чтения SendingBytes, ReceivedBytes и т.д. Имплементировал это ITcpHost в классе TcpHostBase, который принимает ISessionBuilder(Вынес в интерфейс чтобы обеспечить поддержку разных протоколов не меняя сессии, а только стейтмашину и хендлер) в конструкторе, внутри TcpHostBase одно из полей Socket _acceptor, в конструкторе класса передается IConfiguration из которого мы берем порт на котором будем ожидать клиентов. _acceptor методом AcceptAsync() получает сокет клиента, этот сокет передается билдеру и в засисимости от билдера что был передан в конструкторе делаем сессию конкретного типа, сохраняем в конкурентный словарик вида <Guid, ISession>, запускаем процесс сессии, в котором методом ReceiveAsync(Span,SocketFlags) получаем что пришло от клиента, отдаем хендлеру который помещает в стейтмашину то что пришлом и затем с случае если в стейтмашине будет обнаружен пакет подходящий под мой протокол - создаем объект ClientMessage в который помещаем инфу что хендлер извлек во время парсинга пакета моим мидлварем; полученный пакет уже отдаем на уровень приложения, там происходит всякая магия с записами в БД, пересылкой и прочим. Это все внутри библиотеки.
Теперь я хочу это собрать в одну кучу с помощью внедрения зависимостей, чтобы модно-молодежно, для этого создал новый консольный проект, добавил nuget с майкросовтовским IHostBuilder'ом и хочу чтобы сервер из него стартовал.
Почему это не сервер на сокетах-то? Где тут какие-то высокие абстракции, кроме моих?
Аноним 21/01/20 Втр 02:15:07 1579165773
>>1579164
>Почему это не сервер на сокетах-то?
Вот теперь я вижу сервер на сокетах. Вот только если ты изменяешь те две переменные из разных потоков, то у тебя это не будет работать на многоядерном процессоре в релизе - гуглится "memory barrier c#". И мне не видно как ты обрабатываешь сообщения. Я же сказал, что сообщения умеют обрезаться и склеиваться?

>Теперь я хочу это собрать в одну кучу с помощью внедрения зависимостей, чтобы модно-молодежно
Напиши юнит тесты и попробуй покрыть 80%+ кода, если получится и у тебя не нарушается еще и DRY, значит правильно. Могу сразу сказать, что вижу нарушение SOLID. Внедрение зависимостей нужно для юнит тестов, а не для чистоты кода: код без внедрения выглядит читабельнее, но сложнее поддерживать.
Аноним 21/01/20 Втр 02:15:58 1579166774
>>1579165
>если ты изменяешь те две переменные из разных потоков
Твой вайл тру на втором и третьем изображении.
Аноним 21/01/20 Втр 02:35:33 1579170775
>>1579164
Кстати, в диспозе сокета тоже есть особенности, например, надо обрывать сокет с параметром Both, иначе с другой стороны будет висеть мертвый сокет (не дернется метод Receive).
Аноним 21/01/20 Втр 02:49:53 1579172776
>>1579165
> И мне не видно как ты обрабатываешь сообщения
У хендлера есть стейтмашина с двумя буфером, хендлер передает Action<ReadOnly<byte>>(можно конечно было бы событие использовать но я не люблю их использовать когда получатель только один предполагается), все что приходит добавляется в буффер, когда стейтмашина находит границы пакета она передает у часть у которой задетекчен конец пакета, через делегат, затем из этих байт с помощью обычной реализации конвеера обработки(постил тут пример своей реализации, по сути оказалось что за меня MS это давно придумали и назавали middleware, только у них это для каких-то других целей используется вроде) мы собираем уже нормальный класс сообщения, в котором вместо байт удобные для чтения поля-свойства. Там все опять же байтиками и оффсетами делано. Люблю я побайтойбствовать знаешь ли.
>>1579170
Это я знаю. Метод StopReceiving как раз сначала пристреливает сокет в оба направления, потом закрывает его.
Аноним 21/01/20 Втр 06:23:41 1579202777
image.png (65Кб, 759x875)
759x875
Если поле RefA типа C не может быть null, то почему не возникает ошибки?
Аноним 21/01/20 Втр 08:33:43 1579227778
>>1579202
Проверяет только в области действия nullable директивы. Проверка - рекомендация компилятору, а не строгая проверка, легко обойти.
Аноним 21/01/20 Втр 09:00:47 1579230779
>>1579149
>чтобы быть востребованной фронтенд макакой
я себя позиционирую как бэка, но в вакансиях везде нужен фронт, типо фул стэка (чуть более, чем во всех). Вот пример:
— 1+ year experience in .NET software developing
— Excellent knowledge of JS
— Experience with any of ReactJS / AngularJS / VueJS
— Experience in creating Restful API
— Intermediate English communication skills (oral and written)
— Very good problem-solving skills
И это вакансия в разделе .NET (lulwat), особенно доставляет эта строка "Excellent knowledge of JS". Причем Angular даже нет. Я в этом или предыдущем треде спрашивал за применимость Razor в ASP/Core приложениях, хотя по сути везде все пишется через webAPI + js
Аноним 21/01/20 Втр 09:18:50 1579235780
>>1579227
В рантайме вообще не влияет?
Аноним 21/01/20 Втр 10:43:10 1579289781
>>1579160
мутно это все
>>1579149
>>1579151
>>1579160
спасибо за ответы, для себя решил, что буду ковырять палкой React - концептуально мне нравится JS контейнеры для любого куска DOM элемента. Хотя как то это по дебильному блять - учи C#, знай ORB, знай принципы работы (тонкости), знай ООП, знай паттерны, знай ASP.NET MVC5/Core/WebApi. Когда вроде выныриваешь из всего этого, тебе еще под нос html+css+js+еще и блять фреймвок суют. Типо вот еще маст хев. А ну да, еще же ангельский, куда же без него. Пиздец короч
Аноним 21/01/20 Втр 10:50:25 1579299782
>>1579289
Зато платить будут реально достойно, если не ступишь и не будешь просить мало.

Мимо действующий фронт наслушавшийся от коллеги о дотнетчиках-фронтах-фулстаках
Аноним 21/01/20 Втр 11:05:44 1579311783
>>1579299
меня сам по себе фронт не очень цепляет - я когда пет на ASP.NET MVC делал, для меня View это был какой то пиздец. Там страница не тянется, там кнопка упала, тут футор не скролится. Мне ближе какие то архитектурные решения, ООП и т.д.
спасибо за совет
Аноним 21/01/20 Втр 12:22:36 1579357784
Аноним 21/01/20 Втр 12:33:18 1579363785
>>1579357
Object reletion MODEL - ORM (ошибся)
Аноним 21/01/20 Втр 12:33:39 1579364786
Аноним 21/01/20 Втр 13:01:39 1579381787
>>1579363
Зачем он, если есть LINQ ?
Аноним 21/01/20 Втр 13:05:44 1579387788
>>1579381
всмысле зачем? А через что ты будешь к БД подключаться? LINQ - это язык запросов (Sql внутри #), а ты должен знать интерфейс взаимодействия с MsSql (хотя бы)
Аноним 21/01/20 Втр 13:26:25 1579400789
>>1579387
Ну через драйвер базы данных.
Аноним 21/01/20 Втр 13:27:27 1579401790
Столкнулся с неприятной проблемой: при использовании Assembly.Load() всегда возникает Exception file not found, при этом Assembly.LoadFrom() работает отлично. Кто-нибудь сталкивался с такой бедой?
Аноним 21/01/20 Втр 13:33:36 1579406791
548.jpg (40Кб, 460x318)
460x318
>>1579400
>Ну через драйвер базы данных.
>через драйвер
>базы данных
Аноним 21/01/20 Втр 13:35:32 1579407792
>>1579401
не сталкивался, но по логике - LoadFrom имеет путь к сборке, а Load - нет. Это что ты рефлектишь?
Аноним 21/01/20 Втр 13:40:04 1579411793
Снимок.PNG (8Кб, 957x101)
957x101
>>1579407
Вначале пытаюсь загрузить через Load, используя имя в директории программы, затем через LoadFrom, указывая путь
Аноним 21/01/20 Втр 13:47:27 1579416794
>>1579411
я это понял, смотри конфиг Load и default path (если он есть). Я просто не могу понять, зачем тебе это? Какую ты задачу хочешь решить?
Аноним 21/01/20 Втр 13:59:07 1579424795
>>1579416
Я не понял какой конфиг, но своих не создавал. У меня нет особой задачи, просто изучая язык и платформу наткнулся на эту проблему.
Аноним 21/01/20 Втр 14:06:18 1579426796
Аноним 21/01/20 Втр 14:10:49 1579428797
>>1579426
Там есть вариант перезагрузки со строкой в параметрах, которая является названием сборки без расширения, которая находится в директории ./bin/debag/core3/app/
Аноним 21/01/20 Втр 14:23:23 1579435798
image.png (31Кб, 602x365)
602x365
как фиксить?
Аноним 21/01/20 Втр 14:51:04 1579461799
Аноним 21/01/20 Втр 15:24:50 1579494800
>>1579461
>There are language specific drivers such as JDBC, ODBC, OLE DB where the driver interface is implemented according to the language specifications
И зачем ты это в .NET тред тянешь? Ок, даже возьмем низший уровень реализации ORM какой ни будь OLE DB от мелкософта - это тоже самое, что создавать самодельную педаль для велосипеда, когда продают уже в готовом виде.
Если такой любитель велосипедов, то нахуя тебе драйвер? Пиши самописный драйвер от БД, к которой будешь обращаться, но на одной БД никогда дело не остановится
Аноним 21/01/20 Втр 15:27:07 1579495801
Есть ли разница:
-доступ к полю класса внутри класса напрямую
-доступ к полю класса внутри класса через свойство
?

https://pastebin.com/Jc1JAUY4

Причина тупого вопроса - отсутсвие значимых знаний работы CLR, компилятора и т.д.
Аноним 21/01/20 Втр 15:42:50 1579505802
>>1579494
А вот и напишу как пет-проект. Все эти ваши ORM пиздец как тормозят и глючат в любом языке.
Аноним 21/01/20 Втр 15:48:17 1579509803
just-stop-your-[...].png (90Кб, 500x400)
500x400
>>1579505
>эти ваши ORM
Ну давай, пиши. Расскажешь потом, как твое говно будет работает быстрее
спойлерю - твои навыки работы с ДБ через "драйвер" нужны чуть более, чуть нигде
Аноним 21/01/20 Втр 15:56:36 1579518804
>>1579495
Нет, компилятор умеет такое оптимизировать.
Аноним 21/01/20 Втр 16:06:14 1579529805
>>1579509
>спойлерю - твои навыки работы с ДБ через "драйвер" нужны чуть более, чуть нигде
А вот и мышление корпоративного раба-макакена.
Аноним 21/01/20 Втр 16:07:55 1579532806
Аноним 21/01/20 Втр 16:39:48 1579570807
>>1579509

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

Ну давай, манька, запилила мне на ORM хитровыебанный отчет с этими хуитками к завтра на миллионнострочных таблицах:

https://oracle-base.com/articles/misc/rank-dense-rank-first-last-analytic-functions

И что бы без нытья прокупить четырехголовый сервак за стопицот миллиардов и без нытья про "заплатить стопицот миллиардов за амазон"
Аноним 21/01/20 Втр 16:46:14 1579576808
>>1579532
как? я не знаю как, я не вижу нигде параметра который отдельно задает цвет для текста в таких подсказках!
Аноним 21/01/20 Втр 18:27:33 1579633809
image.png (4Кб, 470x77)
470x77
image.png (2Кб, 422x37)
422x37
Почему мы вызываем create не передавая туда ничего, и все равно все работает?
Аноним 21/01/20 Втр 18:38:59 1579642810
maxresdefault.jpg (68Кб, 1280x720)
1280x720
>>1579570
>хитровыебанный отчет с этими хуитками
манька так порвалась, что забыла определения?
>на миллионнострочных таблицах
это по твоему много?
И что тебя так испугало, DENSE_RANK - расчетное поле в миллионной таблице?
Аноним 21/01/20 Втр 19:38:31 1579687811
>>1579642
Это ты справа говоришь.
Аноним 21/01/20 Втр 20:17:13 1579729812
>>1579406
Найс ты сам на себя поссал, дебил
Аноним 21/01/20 Втр 20:28:48 1579749813
>>1579406
ORM-дебилоид обосрался на весь тред.
Аноним 21/01/20 Втр 20:33:21 1579756814
>>1579687
круто сМаняврировал
>>1579687
>>1579729
>>1579749
это один дебич пишет или сегодня в Non_ORM бурсе день открытых дверей?
Аноним 21/01/20 Втр 20:34:38 1579761815
Короче, вроде как дописал свой охуенный супер-пупер ТиСиПи сервер, завтра понесу преподу можете открывать шампанское, я больше тут не появлюсь. Как теперь проверить нормально? На локальной же машине не получится как раз все подводные камни потрогать с одной стороны, а с другой сокеты могут закончится же, если и клиент и сервер - на локалхосте висят.
Аноним 21/01/20 Втр 20:42:53 1579775816
>>1579756
Ты победил всех. А теперь сходи пососи.
Аноним 21/01/20 Втр 21:22:38 1579853817
Аноним 21/01/20 Втр 21:43:36 1579900818
>>1579230
Это нормально видеть жс в шарпе. Это или маленький проект, или распил бабла, т.е. на фулстеках пытаются экономить бабки: средняя вебмакака зарабатывает больше среднего бекендера или фулстека, фулстек зарабатывает ниже среднего мидла.

Я например вижу себя как фулстек: могу спокойно уволиться и найти работу на сеньёра-помидора онли в шарп, angular, angularjs, angular + angularjs, react или node. Так как уебал много времени и было много проектов разной свежести, чтобы все это говно хорошо выучить.

Лучше забить хер на такие вакансии или на собеседовании говорить, что типа "да знаю, но буду писать онли бек, или платите мне минимум х1.5 за жс". Т.е. зп от 4-5к как сеньёру, при этом быть со знанием мидла в каждой технологии.

Если мне не веришь, советую пообщаться с веб макаками. У них знать сразу реакт, ангулар и вью, все равно, что беку знать C#, Java, Python и переключаться между языками между проектами. Знают только одну технологию на фронтенде и только фронт, никаких беков на ноде, при этом зп 3-4к $. А hr, которые лезут со своим ангуларом к реакщику (или наоборот), вежливо посылают нахер.

Razor - поддержка легаси, где тебе не будут даже давать шанс сделать все по красоте. Застрянешь на допотопном фреймворке и будешь страдать от написанного до тебя кода, при этом получая упреки за низкую скорость работы. WebAPI + JS - это только старт нового проекта.
Аноним 21/01/20 Втр 21:53:21 1579921819
>>1579633
Потому что это тег "a" в html, где ты проперти класса Tovar передаешь через query string. Нехуя не передашь - будет пустой класс, асп под капотом разруливает это за тебя, используя рефлексию.
Аноним 21/01/20 Втр 21:55:19 1579925820
>>1579761
>Как теперь проверить нормально?
Заваливаешься в аудиторию, где лабы на компах сдают, и втихаря проверяешь перед/на/после пары.
Аноним 21/01/20 Втр 21:59:38 1579939821
>>1579925
Я же имею ввиду как проверить на необычные случаи, типа той самой склейки пакетов. Не смогу же я из аудитории на домашнюю машину стучаться(потому что IP динамический плюс внутри сети провайдера, а тот большую часть пакетов просто фильтрует, опять же еще и вузовская сеть фильтрует пакеты)
Аноним 21/01/20 Втр 22:05:52 1579955822
>>1579939
>Я же имею ввиду как проверить на необычные случаи, типа той самой склейки пакетов.
Интеграционные тесты, которые запускаются на 2+ машинах, где теми же thread/task слипами тестировать разные ситуации.

Можно эти тесты и на одной машине запускать, но это будут слишком синтетические тесты.

>я из аудитории на домашнюю машину стучаться
VPN и вообще, достаточно занять 2 машины в аудитории, обычно все машины связаны по сети и есть выход в тырнет.
Аноним 21/01/20 Втр 22:22:25 1580009823
>>1579756
Хуй знает кто там твои протыклассники, я просто тебе в рот за компанию ссу. Твой любимый энтити фреймворк тоже требует драйвера бд, к слову, стажёр тупорылый
Аноним 21/01/20 Втр 22:24:49 1580019824
>>1579900
>Razor - поддержка легаси, где тебе не будут даже давать шанс сделать все по красоте. Застрянешь на допотопном фреймворке и будешь страдать от написанного до тебя кода, при этом получая упреки за низкую скорость работы.
Хотя, фронт у таких проектов еще страшнее: ванильный жс, жквери и плагины жквери, работающие хуй пойми как. Там блядь страшно в тот жс лезть и что-то трогать, чтобы все нахер не сломалось.
Аноним 21/01/20 Втр 22:49:54 1580081825
706769ab0ff453e[...].jpg (117Кб, 514x465)
514x465
>>1580009
>любимый
>энтити фреймворк
>стажёр тупорылый
Хуй знает, как то зашкварно после такого вылезать из readonly. Я помнимаю, что тут сидят окатыши и студенты бурс, но блять иногда такую хуету несут. Один через LINQ к бд коннектиться, другой сам провайдеры к драйверу пишет "БЫСТРЕЕ ЧЕМ ЭТИ ВАШИ ORM", третий вообще какое то быдло не осиливший чтение. Сагану пожалуй, что еще делать
Аноним 21/01/20 Втр 23:52:50 1580177826
>>1579900
я может чего то не понимаю, но не будет ли им - Бэк+фронт? На Пыхах я знаю это нормальная практика, но как обычно что бэк, что фронт - это саппорт какого то говенного проекта или старючего легаси. Чувак знакомый (пхпшник) говорит - сидел на бенче, помогал .NETчикам (хз, что он там помогал правда), а так в порядке вещей что то на WP дописать, что то RANDOM_FRAMEWORK поковырять. Ну и говнище, этот веб
Аноним 22/01/20 Срд 00:02:30 1580189827
>>1580177
Нормальная практика - это когда есть разделение задач. А не бека заставляют писать фронт и наоборот. Всё остальное - попытки наебать на бабки.

На галерах, если хорошие отношения с прорабом, можешь попробовать спросить сколько за тебя платит заказчик и сравнить с тем, сколько ты получаешь. И не редкость, когда джунов/мидлов такие бодишопы продают как сеньеров, отдуваться все равно не прорабу надо. Или работают под чужими фамилиями.
Аноним 22/01/20 Срд 00:19:22 1580201828
>>1580189
вот про того пыхаря, за которого я писал берут $40/h. На руки платят 1.5к :)
Вообщем я хуй знает, что это за вакансии такие в разделе .NET, где 80% required связана с JS
Аноним 22/01/20 Срд 08:24:12 1580367829
>>1579576
И как по тому скриншоту можно было догадаться, что тебе цвет не нравится? Нормально вопросы задавай и нормально будет.
Аноним 22/01/20 Срд 09:53:04 1580433830
>>1580367
а то что белый текст на белом фоне не видно не очевидно по пикрилу? на пикриле же больше ничего кроме этого факапа ет
Аноним 22/01/20 Срд 10:26:37 1580450831
Народ, кто-нибудь знает, как можно объект отправить в get запросе?
Аноним 22/01/20 Срд 11:15:02 1580470832
Как по нормальному можно переименовать корневую папку в проекте? Если я переименую, то все немспейсы останутся, приходится вручную всё переписывать. Через vs нажал на проект и переименовал, но папка осталась с тем же названием.
Аноним 22/01/20 Срд 11:32:57 1580480833
>>1580433
Аааа, так там еще и текст, который не видно, но нужно догадаться что он там есть и должен быть виден. Пиздец.
Аноним 22/01/20 Срд 12:04:16 1580513834
>>1580470
Пиздец я сгорел с этой хуйни, почему майкрософт такие хуесосы блять нормально ничего не могут сделать, ебал я в рот их
Аноним 22/01/20 Срд 12:23:45 1580540835
image.png (18Кб, 610x161)
610x161
Аноним 22/01/20 Срд 12:24:43 1580545836
>>1580513
с той же хуйней сталкивался (спрашивал не так давно в этом треде) - пришлось ручками хуярить. Но вроде как через решарпер можно порешать, но я им не пользуюсь
Аноним 22/01/20 Срд 12:36:48 1580557837
Я недавно начал заниматься программированием. Какая есть команда перехода к определённой строчке?
Например, у меня идёт
1. - ...
2. - ...
3. - ...
4. - ...
5. - ...
6. - ?
Как перейти с 6 строчки к первой или к следующим? Нигде не нашёл
Аноним 22/01/20 Срд 12:56:53 1580576838
Аноним 22/01/20 Срд 13:10:14 1580585839
>>1580545
ctlr+shift+f и солюшн ещё пришлось пересоздать. Пиздос конечно
Аноним 22/01/20 Срд 15:10:59 1580706840
Какие в шарпе есть перегруженные операторы?
Аноним 22/01/20 Срд 15:14:44 1580713841
>>1580557
goto
Пользуйся осторожно, это инструмент богов программирования и в неумелых руках влечет за собой хаос.
Аноним 22/01/20 Срд 15:45:37 1580786842
>>1580557
В 6 строчке обращение к методу, который находится на первой строчке))))))))))))))))))))000
Аноним 22/01/20 Срд 15:46:54 1580788843
>>1580786
>>1580557
Ещё циклы же есть. Но нахуя тебе это всё? Главное чтобы программа корректно работала, а работает она читая код сверху вниз
Аноним 22/01/20 Срд 16:07:20 1580801844
Сап /pr
Каким образом вы освежаете в памяти прочитанную ранее информацию? Я к примеру давно (1-2 года назад) прочитал Шилда, Метанит, MSDN почитывал, но если меня прямо сейчас вызовут на собес - мало что вспомню, нужно хоть раз глазами пробежать.
Перечитывать 1к страниц Шилда влень, какие еще есть варики за 1-2 дня освежить данные в голове?
Аноним 22/01/20 Срд 16:35:52 1580826845
>>1580576
>>1580713
>>1580786
>>1580788
switch case это ведь то же самое, что и оператор if, как понял? Только можно сделать goto к предыдущим разделениям?

Аноним 22/01/20 Срд 16:42:32 1580829846
>>1580826
Жаль нет каких-то простых перенаправлений
Аноним 22/01/20 Срд 16:42:53 1580830847
Аноним 22/01/20 Срд 16:43:55 1580831848
>>1580826
>switch case это ведь то же самое, что и оператор if
Принцип тот же - условие-действие
>goto
хуйня, которая никем и нигде не используется в ООП, она нужна функциональщикам. Забудь за нее.
Аноним 22/01/20 Срд 17:09:43 1580852849
>>1580831
В языке не должно быть goto
Аноним 22/01/20 Срд 17:50:57 1580882850
image.png (173Кб, 862x613)
862x613
>>1580852
Как избежать в данном случае? Надо чтобы после /admin продолжился код
Аноним 22/01/20 Срд 18:01:43 1580887851
>>1580882
что такое Exit? Если это функция, то ее вызывать можно без goto
Аноним 22/01/20 Срд 18:35:26 1580906852
>>1580887
>что такое Exit?
Ты метку в конце проги не видишь? Пчел...
Аноним 22/01/20 Срд 20:33:02 1580968853
>>1580882
Что это за говнокод?
Первый if лишний. Достаточно поднять вверх то условие что в while. Вместо goto написать функцию.
Аноним 22/01/20 Срд 20:42:19 1580971854
>>1580906
Exit: - что это за синтаксис? Тут вообще не нужен goto
Аноним 22/01/20 Срд 20:52:33 1580976855
>>1580971
Блядь, до чего же ты тупой.
Exit это метка к которой скаканет goto.
Пиздец, выросло поколение интерпразеров, базовые конструкции языка не знают
Аноним 22/01/20 Срд 21:09:52 1580985856
Аноним 22/01/20 Срд 21:13:01 1580989857
.png (29Кб, 622x883)
622x883
>>1580882
Ну, можно так, например. Я правда не знаю что у тебя там за код в целом.
Аноним 22/01/20 Срд 21:14:00 1580990858
Аноним 22/01/20 Срд 21:17:39 1580996859
>>1580985
Которая примет после себя код, который у тебя после метки Exit
Аноним 22/01/20 Срд 21:18:12 1580997860
>>1580996
>Которая примет после себя код, который у тебя после метки Exit
Одна функция примет весь код дальнейшей программы? ...
Аноним 22/01/20 Срд 21:18:53 1580999861
>>1580831
>она нужна функциональщикам
Вот только в фукциональных языках нет goto.
Аноним 22/01/20 Срд 21:27:36 1581010862
Зато goto есть в голанге.
Аноним 22/01/20 Срд 21:28:21 1581011863
>>1580997
Кто ж знал, что ты долбоеб, который весь код программы в функцию Main суёт, еще и goto подправляет? Разбивай код на функции и классы, их как раз для этого придумали.
Аноним 22/01/20 Срд 21:28:33 1581012864
>>1580831
> хуйня, которая никем и нигде не используется в ООП
Я использую в работе коменитрую каждый раз либо: "Узнаешь когда пройдешь", либо ")))". На самом деле оч удобно и жалко что нельзя в произвольные точки проекта прыгать, а только внутри области видимости.
Аноним 22/01/20 Срд 21:37:45 1581018865
zxspectrum.jpg (111Кб, 709x1110)
709x1110
>>1581012
>нельзя в произвольные точки проекта прыгать
Вот, у меня есть в двух томах физически, все страницы стали желтые и разлезлась по швам. В конце книги есть листинги, где кунг-фу goto мастер написал игры, где как раз можно прыгать в произвольные места и вызывать асм.
Аноним 22/01/20 Срд 21:47:11 1581030866
>>1580976
Хуясе порвало
>Блядь, до чего же ты тупой.
ты вообще вкурсе, что твои два if нахуй в твоем говне не вперлись? Твое обоссаное goto (метка Т_Т) заменяется условными операторами. Покажи такую "метку" в интерпрайзе, тебя мочой пометят
Аноним 22/01/20 Срд 21:48:36 1581032867
image.png (82Кб, 841x627)
841x627
>>1581030
Лол, там другой анон про это написал
Аноним 22/01/20 Срд 21:49:43 1581033868
>>1581030
И первый if нужен чтобы сразу перейти к админскому коду, а не два раза ненужный код смотреть
Аноним 22/01/20 Срд 21:51:13 1581035869
>>1581033
Так подними вверх тот if что у тебя в while, чего ты тупой то такой?
Аноним 22/01/20 Срд 21:52:31 1581039870
>>1581035
>Так подними вверх тот if что у тебя в while
>одинаковые if
Ладно, забей
Аноним 22/01/20 Срд 21:53:16 1581041871
Аноним 22/01/20 Срд 21:57:54 1581046872
Аноним 22/01/20 Срд 21:58:49 1581047873
>>1581030
Конечно порвало. Ты, блядь, синтаксиса языка базового не знаешь, а лезешь с советами к человеку который только учится и не поймет, что ты хуйло безмозглое и тебя слушать вредно. Вредитель как он есть, блядь.
Аноним 22/01/20 Срд 22:03:20 1581055874
Аноним 22/01/20 Срд 22:22:30 1581064875
>>1581055
Блядь, ты серьезно такой тупой? Притащил обычные функции как пример какого-то необычного синтаксиса. Небось в жизни unsafe код не писал и совсем в осадок выпадешь, когда в аргументах функции увидишь какой-нибудь int*, будешь судорожно гуглить, а потом подумаешь что в шарпе можно куски сишного кода вставлять. Боюсь спорсить, ты хоть знаешь что '<<' делает? Небось при этом из адептов "ВУЗы не нужны! Можно по метаниту выучится!"
Аноним 22/01/20 Срд 22:23:52 1581067876
>>1581064
Это безопасный код.
Аноним 22/01/20 Срд 22:25:43 1581068877
>>1581064
Все, отличное от WriteLine и Main, это не функции, а ключевые слова.
Аноним 22/01/20 Срд 22:30:02 1581075878
>>1581064
>Небось в жизни unsafe код не писал и совсем в осадок выпадешь
Я соавтор поехуда.
Аноним 22/01/20 Срд 22:30:34 1581077879
>>1581064
>Небось при этом из адептов
Кони-лебеди, иго-го.
Аноним 22/01/20 Срд 22:48:06 1581096880
>>1581064
>ВУЗы не нужны!
Ну почему же, я умею в опенмп благодаря вузу. Впрочем, когда только вышел с++14, почитал луну и захерачил домик не в лоуполи с анимацией открытия/закрытия дверки по клику, динамическим освещением, тенями и свободной камерой на винфоне 8 в стабильные 60 фпс за полдня.
Аноним 22/01/20 Срд 22:49:46 1581098881
>>1581064
>ты хоть знаешь что '<<' делает?
Две треугольные сиси?
Аноним 22/01/20 Срд 22:51:40 1581100882
Аноним 22/01/20 Срд 23:33:27 1581146883
15796028167630.jpg (32Кб, 460x318)
460x318
>>1581047
кста да, 2 года пишу на решетках, первый раз синтаксис goto увидел, т.к. сразу скипаю, когда вижу эту операцию
>а лезешь с советами к человеку который только учится
сразу написал за switch, goto лучше и не знать
>что ты хуйло безмозглое и тебя слушать вредно. Вредитель как он есть, блядь.
такой токсик пиздец, это не ты случайно провайдеры к JDBC писал?
Аноним 23/01/20 Чтв 07:34:54 1581254884
>>1581146
Это не я. Но в шарпе нужен билдер нативных запросов. Хотя бы к сиквел серверу.
Аноним 23/01/20 Чтв 08:06:38 1581258885
В сисярпе есть работающий goto? Орнул с прокаженных.
Явабог
Аноним 23/01/20 Чтв 08:10:09 1581261886
>>1581258
У вас тоже псевдоgoto есть
break <label>
continue <label>
Аноним 23/01/20 Чтв 08:15:34 1581266887
>>1581261
Это, блять, в любом языке и это именно что нативно правильно работающая схема организации циклов.
Аноним 23/01/20 Чтв 08:24:51 1581269888
>>1581266
Думаю, они goto оставили просто как винтажный экспонат, видимо дядюшка Гейтс вспоминал те времена, когда впервые сделал шаг к богатству, написав интерпретатор бейсика для альтаира.
Иначе непонятно, зачем они до сих пор тянут VB ради офиса гыы, пайтон же нельзя прикрутить к ворлду, сложна.
Аноним 23/01/20 Чтв 08:35:20 1581272889
>>1581269
Тащемта, встроенный в офис VBA к VB.NET из VS имеет мало отношения, кроме синтаксиса. К VB6 имеет, но кто сейчас помнит про VB6? Поэтому, думаю, что тянут исключительно ради обратной совместимости дохуилиона уже написанных скриптов.
Аноним 23/01/20 Чтв 08:37:48 1581273890
>>1581272
А в самых новых офисах тоже скрипты на VB ?
Аноним 23/01/20 Чтв 08:43:18 1581276891
>>1581272
VB6 - это не VBA. Для офиса подойдет любой COM-совместимый язык, не только VBA.
Аноним 23/01/20 Чтв 08:46:01 1581278892
>>1581273
Конечно. И в Office 365 онлайновом - тоже VBA. Вот какой язык надо было выбирать, как писали на нём в 1995, так и в 2020 продолжают.

>>1581276
> VB6 - это не VBA
Я знаю, просто имел ввиду то, что к дотнетной херовине с VB-подобным синтаксисом VBA имеет ещё меньше отношения, чем к VB6.
Аноним 23/01/20 Чтв 10:16:20 1581314893
Привет анон.
Подскажи пожалуйста, почему может не работать программа после сборки через ilasm ?
Т.е. я сперва делаю ildasm sample.exe
Потом делаю ilasm sample.il
Но программа не запускается, хотя ошибок не выдает при сборке
Аноним 23/01/20 Чтв 11:01:47 1581339894
Как живется на языке для вебни?
Аноним 23/01/20 Чтв 11:19:16 1581349895
>>1581314
смотри в консоль, читай сообщения, читай сообщения после запуска сборки -> гугли
>>1581339
какой сейчас язык не в вебе? 95% вакансий веба
Аноним 23/01/20 Чтв 11:48:00 1581372896
>>1581349
>какой сейчас язык не в вебе
c++
Аноним 23/01/20 Чтв 12:27:00 1581404897
Аноним 23/01/20 Чтв 12:29:07 1581410898
>>1581404
У него работа c DOM узкое горлышко перфоманса.
Аноним 23/01/20 Чтв 12:52:29 1581431899
>>1581372
++ как и C - пожалуй исключение из правил. Есть еще ряд языков, которые как и ++, с - не пользуються большим спросом и находятся в нише Non-Web. Но рыночек все решает. Завтра будет прорыв связанный с Desktop (к примеру) все быстро перекочуют на него.
Я когда начинал с решеток тоже надеялся, что не буду в вебе, но получилось так, что убил двух зайцев (и повезло)
Аноним 23/01/20 Чтв 15:30:47 1581575900
Зачем майки продвигают электрон на десктопе? А как же .net core?
Аноним 23/01/20 Чтв 19:44:23 1581772901
Виват бывалым. У меня проблема, нужен совет по ее решению. Я пишу (довольно продолжительный период времени) всякие pet-project-ы. Недавно взялся за .NET Core и решил не смотреть в сторону Razor-view, а слепить через WebApi (спасибо анонам из постов выше, которые растолковали по этому вопросу). Не буду долго размусоливать, вообщем выбрал ReactJS для визуализации приложения и тут началась проблема. Я раньше когда писал на ASP.NET MVC - для меня View это был страх и ужас. Html+Css я когда то, что то читал, интуитивно разобрался как и что сделать. Но вот адаптивный макет - это был страх и ужас, поэтому Front - для меня был просто страх и ужас.
Но когда я начал читать документацию по ReactJS - у меня почему то привстал. Все эти контейнеры, легкий рендеринг, Babel, сборочка Webpack-ом.
MMMMM, кайф. Обычно после работы, когда возвращаюсь домой я падаю в кресло и начинаю смотреть всякие смешнявочки на ютубе, а тут начал смотреть "Get started ReactJS". В какой то момент я понял, что со мной что то не так, схватил CLR via C# Рихтера и начал читать громко и вслух первую главу про манифесты и сборки, молясь чтобы отпустило. Когда начал вспоминать все то, что было затерто временем по решеткам, мысли про React немного усели. Но утром повторилось тоже самое.
Не знаю теперь что делать. Помогите советом.
Аноним 23/01/20 Чтв 19:47:53 1581777902
Что есть хорошего-годного почитать по архитектуре клиент-серверных приложений, если приложение не ограничивается : принял запрос - послал ответ, попутно записал что-то в БД?
Аноним 23/01/20 Чтв 19:49:30 1581781903
>>1581404
Много ли вакансий по васму?
Аноним 23/01/20 Чтв 20:42:52 1581823904
>>1581575
>Зачем майки продвигают электрон на десктопе?
Дешево, справится макака, кроссплатформа.

>А как же .net core?
Декстоп онли на винде, а кроссплатформу менеджмент не знает как писать (с) офф ответ
Аноним 23/01/20 Чтв 22:13:39 1581882905
Поясните за кесрел.
Аноним 23/01/20 Чтв 23:51:21 1581943906
>>1581882
The feature comparison of IIS web server vs Kestrel web server is:-

Similarity

Both have static files.
Both allow web application compression to some extent.
Differences

IIS web server only supports Windows while kestrel web server supports all platforms.
IIS web servers have HTTP access logs which is not the case in kestrel.
IIS allows port sharing/multiple apps running at the same time while kestrel doesn’t.
IIS has SSL certificates while kestrel only works with internal SSL traffic between the reverse proxy web servers and .Net.
IIS has windows authentication while kestrel doesn’t.
IIS has a management console which isn’t there in kestrel.
Process activation is there in case of IIS web servers while it isn’t there in kestrel.
IIS allows application initialization while kestrel doesn’t.
IIS has configuration API while kestrel doesn’t.
IIS allows request filters and limits while kestrel doesn’t.
IIS has IP and domain limitations while kestrel doesn’t.
IIS follows HTTP redirect rules while kestrel doesn’t.
IIS allows WebSocket protocol while kestrel allows middleware.
IIS does response output caching while kestrel doesn’t.
IIS has FTP servers while kestrel doesn’t.
Аноним 24/01/20 Птн 08:39:20 1582047907
Почему использование goto считается плохим тоном?
Это же пиздец какая удобная штука, лепить конечно ее не стоит куда попало но иногда она очень облегчает задачу.
Вот к примеру чек на символ, с goto я сразу понял как сделать, а без него чет туплю.
Console.WriteLine("Введите символ на Английском языке:");
char ch = '0';
link1:
try
{
ch = Convert.ToChar(Console.ReadLine());
}
catch (Exception ex)
{

}

if ((ch >= 65 && ch <= 90)||(ch >= 97 && ch <= 122))
{
Console.WriteLine("Правильный символ ");

}
else {
Console.WriteLine("Хуйню ввел, попробуй еще разок ");
goto link1;
}


Console.ReadLine();
Аноним 24/01/20 Птн 08:48:27 1582054908
>>1582047
У тебя в коде сразу работа с представлением, валидация, бизнес-логика. Т.е. наговнил. Конечно, с goto лапшу теперь проще разруливать.

Сделаешь декомпозицию этого говна по простым функциям: вместо goto будешь использовать вызов функции.
Аноним 24/01/20 Птн 08:50:15 1582055909
>>1582054
Вот это сложно пиздец для меня, я делаю парсер подсказок для гугла и чета ваще не врубаюсь куда что писать, просто делаю портянку кода, а потом на следующий день хуй помню что там ваще и как работает(((
Аноним 24/01/20 Птн 09:00:58 1582058910
>>1582047
>>1582055
>пиздец какая удобная штука
>на следующий день хуй помню что там ваще и как работает
Аноним 24/01/20 Птн 09:06:22 1582061911
image.png (273Кб, 1581x824)
1581x824
>>1582058
Ну не из за него я не помню)
Я раньше делал програмки в ZennoPoster, а сейчас решил перекатится полностью в C#. А в зинке там все табличками для даунов, и стрелочками.
Пикрил корочи
Аноним 24/01/20 Птн 09:29:24 1582071912
>>1582047
Пизда рулю.


Console.WriteLine("Введите символ на Английском языке:");
char ch = Console.ReadKey().KeyChar;
while (!char.IsLetter(ch) || ch > 0x7f)
{
Console.WriteLine("Хуйню ввел, попробуй еще разок ");
ch = Console.ReadKey().KeyChar;
}
Console.WriteLine("Правильный символ ");
Аноним 24/01/20 Птн 09:35:25 1582076913
>>1582061
Пиздец какой.
Мы в школе тоже программировали стрелочками в LabVIEW. Ебать, как давно это было, и как ущербно.
Аноним 24/01/20 Птн 09:36:57 1582077914
>>1582071
Крутяк.
Это .KeyChar делает так что после нажатия на кнопку сразу жмется Enter?
Аноним 24/01/20 Птн 09:38:25 1582079915
>>1582077
Нет, это ReadKey считывает непосредственно последнюю нажатую кнопку. А ReadLine читает строку, что в твоём случае нахуй не надо
Аноним 24/01/20 Птн 19:01:35 1582442916
>>1582047
Потому что один хуй в древние времена, когда с goto можно было в любое место прыгать, сказал что получается "спагети код", т.к. этот хуй был вроде как уважаем в то время, многие его послушали причем для тех времен это было вполне валидно.
Сейчас, когда goto в 99% нормальных языков ограничивается областью видимости, не используют goto просто потому что ебланы тупые без капли своих мозгов, ведь в середине прошлого века, когда даже IDE не было, один хуй сказал, а раз сказал, давайте в куче вложенных циклов делать метки, давайте для каждого случая пилить стейтмашину и т.д. лишь бы без goto, ведь стейтмашина на 200 строк это намного понятнее и удобнее, сразу посмотрел и понял, не то что if(zalupa) goto Pizda;
По факту, сейчас любой проект без goto и так спагети код. Ты никогда не читаешь его сверху вниз из-за того что все давно перешли на ООП, а компиляторы умеют разбирать код в любом порядке, а не как в какой-нибудь сишечке, где если ты не объявил сверху, то все, пизда, код не откомпилируется, беги в правильном порядке объявления расставлять; он(код проекта) всегда разбит на неймспейсы, файлы, модули и тебе в любом случае придется прыгать по всему коду и пара goto внутри скопа никак не усложняет тебе жизнь.
Аноним 24/01/20 Птн 19:46:00 1582458917
>>1582442
Нет, не поэтому. А как раз из-за >>1582047 таких долбоебов никто не рекомендует использовать goto. Эти долбоебы видят goto и начинают лепить там, где он совсем не нужен, превращая свой код в говно.
Аноним 24/01/20 Птн 20:47:06 1582487918
>>1582458
> А как раз из-за >>1582047 таких долбоебов никто не рекомендует использовать goto. Эти долбоебы видят goto и начинают лепить там, где он совсем не нужен, превращая свой код в говно.
А что, ты скажешь что решение >>1582071 лучше?
Аноним 24/01/20 Птн 22:14:51 1582524919
>>1582487
Так и не только я скажу.
Аноним 24/01/20 Птн 22:35:51 1582539920
>>1582442
>Потому что один хуй в древние времена
Может стоит хотя бы понять, почему его послушали? И с появлением структурного программирования, начиная со всяких оберонов/паскалей, нашли и доказали минимальный набор конструкций языка, который полностью исключает необходимость использовать goto. Он остался как наследие, с целью поддержать обратную совместимость с уже написанным кодом.

>когда goto в 99% нормальных языков ограничивается областью видимости
В новых языках нет goto. Даже в расте нет. Наличие goto в новых языках - признак некомпетентности проектировщика (привет голенгу и долбаебам, которые на него дрочат, воистину язык макак для макак).

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

>не используют goto просто потому что ебланы тупые без капли своих мозгов
Он оправдан только если:
- ты у мамы херов оптимизатор, и то ЕСЛИ ты умнее компилятора, который постоянно меняется, в чем я очень сомневаюсь
- автогенерация кода
- в языке нет конструкций, которые позволяют сделать тоже самое без goto, например в асме

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

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

>По факту, сейчас любой проект без goto и так спагети код
Нехуя, поскольку это зависит от кривых рук того, кто этот код написал: в продуманном коде тебе не надо лезть в реализацию, а в продуманном языке тебя компилятор еще и палкой бьет, если хуйню напишешь при использовании. Всякие объекты, функции были придуманы для сокрытия реализации, чтобы ты, тупая макака, с нижнего уровня поднималась на уровень выше (или сверху вниз) в манипуляциях между абстракциями. Т.е. не фор в 50 строк, который делает хуй пойми что, а функция "найти сумму логарифмов" в одну строку. Улавливаешь разницу, макака?

>все давно перешли на ООП
Я понимаю, ограниченность ума сказывается, но есть еще кое-что отличное от ООП, что практикуют.

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

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

>>1582524
>Так и не только я скажу.
Нарушение DRY. Легко прослеживается при добавлении еще одного параметра, который надо прочитать.
Аноним 25/01/20 Суб 21:55:07 1583021921
изображение.png (18Кб, 432x632)
432x632
Вроде очень тупая и простая задачка, но я все равно умудрился обосраться.
Подскажите где я налажал, на каком-то сампл тесте выдает true, а у меня false.
Код на пике.
Вот задача: https://www.codewars.com/kata/54da539698b8a2ad76000228/train/csharp
You live in the city of Cartesia where all roads are laid out in a perfect grid. You arrived ten minutes too early to an appointment, so you decided to take the opportunity to go for a short walk. The city provides its citizens with a Walk Generating App on their phones -- everytime you press the button it sends you an array of one-letter strings representing directions to walk (eg. ['n', 's', 'w', 'e']). You always walk only a single block in a direction and you know it takes you one minute to traverse one city block, so create a function that will return true if the walk the app gives you will take you exactly ten minutes (you don't want to be early or late!) and will, of course, return you to your starting point. Return false otherwise.
Note: you will always receive a valid array containing a random assortment of direction letters ('n', 's', 'e', or 'w' only). It will never give you an empty array (that's not a walk, that's standing still!).
Аноним 25/01/20 Суб 22:10:43 1583030922
>>1583021
Массив map по дефолту весь false, это не плюсы. В свиче какая-то ересь.
Массив map не нужен, возвращаешь true, если длина walk равна 10, x = 4, y = 4.
Аноним 25/01/20 Суб 22:13:46 1583034923
>>1583030
И даже похуй, что n - это север, а у тебя запад. Все равно работать будет.
Аноним 25/01/20 Суб 22:15:39 1583035924
>>1583030
>Массив map по дефолту весь false
Спасибо.
>В свиче какая-то ересь.
Я уже увидел, я не менял х, у.
>возвращаешь true, если длина walk равна 10, x = 4, y = 4
Ты точно читал задание?
>>1583034
>что n - это север, а у тебя запад
Схуяли у меня запад? Ты перевернутую карту смотришь?
Аноним 25/01/20 Суб 22:19:02 1583038925
>>1583035
>Ты точно читал задание?
Не люблю, когда в задаче графомания. Суть же в том, что ты должен через 10 шагов оказаться там, откуда начал?

>Схуяли у меня запад?
Ну не я же на "n" делаю x - 1. Или у тебя x - это движение по вертикале? Ахаха.
Аноним 25/01/20 Суб 22:22:53 1583040926
>>1583038
>должен через 10 шагов оказаться там, откуда начал
Да и шагов тоже должно быть именно 10.
>Или у тебя x - это движение по вертикале? Ахаха.
Ты толстишь или ты тупой?
Алсо я уже его сделал, там все было правильно, просто я проебался и не сохранял изменения в координатах.
Аноним 25/01/20 Суб 22:33:50 1583042927
coords.jpg (6Кб, 382x301)
382x301
pic.jpg (18Кб, 492x368)
492x368
>>1583040
>все было правильно
На том сайте очень легко подобрать сет правильных ответов даже не решая задачу.
Аноним 25/01/20 Суб 22:42:37 1583044928
>>1582539
двачую адеквата, все четко разложил
Аноним 25/01/20 Суб 23:56:06 1583075929
>>1583042
>пик 1
Ну а я что написал? Выведи в сонсоле массив 10 на 10 и походи по нему в разные стороны.
>очень легко подобрать сет правильных ответов даже не решая задачу
Задачи и нужно решать чтобы они откладывались в голове. Просто просмотр правильных ответов практически не делает тебя умнее.
>пик 2
Я и не говорю что я пиздато написал, да на пике решение намного лучше.
Аноним 26/01/20 Вск 00:33:47 1583087930
>>1583075
>Выведи в сонсоле массив 10 на 10 и походи по нему в разные стороны.
https://dotnetfiddle.net/62yCM8
https://dotnetfiddle.net/gFYx5k
Разница в том, что я не использую x для вертикали.

>Задачи и нужно решать чтобы они откладывались в голове.
Сомнительной полезности твои задачи. Программировать ты на них не научишься.
Аноним 26/01/20 Вск 06:33:17 1583130931
Безопасно/надёжно ли проводить аутентификацию по сертификату, что берётся из Request.ClientCertificate в контроллере путём сверки пришедшего отпечатка с теми, что хранятся в БД, при условии, что реквест приходит только по https? Возможно ли просто подделать реквест и подложить произвольное значение отпечатка?

Может пора перекатиться? А то пришлось минуту скроллить до сюда.

Аноним 26/01/20 Вск 07:28:51 1583132932
>>1583087
А как научиться? Если еще синтаксис осваиваю только?
другугой анон
Аноним 26/01/20 Вск 09:45:31 1583151933
9020624bfbaa45f[...].png (602Кб, 1450x1080)
1450x1080
Аноним 26/01/20 Вск 09:55:59 1583154934
1555966146932.png (1646Кб, 3840x2160)
3840x2160
Аноним 26/01/20 Вск 10:24:23 1583161935
Аноним 26/01/20 Вск 13:26:51 1583218936
mrlovenstein-Ко[...].jpeg (36Кб, 338x334)
338x334
Привет, аноны. Такая дилема. Год назад перекатился в программирование, уже год успешно работаю (очень нравится в сравнении с предыдущей специальностью юриспруденцией), но на старом фреймворке, бэк которого на шарпе, а фронт на JS. В этом году планирую сделать шаг вперёд, задача-минимум: писать на бэк на asp.net, фронт на react.

Но есть альтернатива: Unity3d, хочу попробовать себя в геймдеве. Дело в том, что моя жена хочет перекатиться в 3d-моделирование, Zbrush, Blender, вот это всё. Сможем вместе погружаться в эту тему.
Но я боюсь, что в геймдеве спрос меньше, больше кранчей, всё такое.
Аноним 26/01/20 Вск 13:40:39 1583237937
source.gif (471Кб, 500x266)
500x266
Поясните за Migration в либе, когда нет StartUp. Все сущности, DbContext - находится в отдельной BLL сборке, которую нужно использовать по цепочке в другую либу, а уже потом в ASP.NET Core. Как такое сделать? Проблемы у меня в следующем:
В той самой либе с DbContext при добавлении миграции вываливается эта залупа:
No database provider has been configured for this DbContext. A provider can be configured by overriding the DbContext.OnConfiguring method or by using AddDbContext on the application service provider. Гуглил - говорят типо конструктор нужен - добавил
public MyContext(DbContextOptions options) : base(options) { }
Добавил так же конструтор без параметров (чтобы можно было использовать этот контекст). Все равно выебывается и пишет ту же ошибку. Я гуглил по SOF и Github - там пишут добавлять в services этот контекст. Но блять, у меня же либа, какой тут нахуй StartUp.
Что я делаю не так?
Аноним 26/01/20 Вск 13:52:15 1583241938
>>1583237
А конекшн стрингу откуда берешь?
Аноним 26/01/20 Вск 14:44:15 1583274939
>>1583161
Я им и пользуюсь. У меня проблема в том, что мне аутентификацию по сертификату нужно прикрутить только к одному контроллеру, а в остальных - аутентификация по паролю или winauth. А по твоей ссылке вроде глобальное решение, но я еще почитаю тщательнее
Аноним 26/01/20 Вск 14:47:03 1583276940
>>1583237
>добавлять в services этот контекст. Но блять, у меня же либа, какой тут нахуй StartUp.
services.AddDbContext<MyDbContext>(options => options.UseSqlServer(myConnectionString));

Или ты заворачиваешь в промежуточной либе контекст в враппер и намерен его использовать?
Аноним 26/01/20 Вск 15:59:17 1583309941
>>1583241
бля, вот я дебил
>>1583276
>в промежуточной либе контекст в враппер
без враппера, просто сборка отдельная с Entities и соответственно с DbContext (разделение, так сказать). У меня идет 3 сборки:
1. DataLayer (библиотека) - Все сущности, DbContext, Repositories, UOW.
2. BusinessLogicLayer (библиотека) - Из DataLayer идут все базовые CRUD функции для работы с БД, перерабатываются (handler's всякие и внутреняя логика) и передаются дальше в виде врапера над всеми сущностями типа UOW от DLL. Дальше ->
3. WebUI - Обычное Asp.net Core application - Из BLL в контроллеры идет враппер, типо UOW.
Вот у меня сейчас задача - создать миграцию и начать создавать взаимодействие WepAPI (юзера) и базы данных.
Что я делаю не так?
Аноним 26/01/20 Вск 16:23:16 1583337942
>>1583309
>просто сборка отдельная с Entities и соответственно с DbContext (разделение, так сказать)
Зачем? Почему тогда каждый класс в отдельную сборку не запихнешь?
>Что я делаю не так?
Наворачиваешь все эти нахуй не нужные UOW и репозитории. Плодишь сущности просто потому что какие то индусы на юдеми тебе затирали про то, как паттерны это охуенно и давай мы сейчас вместо ста строк кода сделаем тысячу, которые будут делать ровно то же самое. В EF core бизнес логику обычно держат в сервисах, которые через DI запихивают в контроллеры.

А по поводу миграций - оно всё должно работать так: В Startup'е веб приложения добавляешь services.AddDbContext и подкидываешь свой контекст. В самом контексте добавляешь конструктор с DbContextCreateOptions и сразу :base(options), сам конструктор пустой.

Потом открываешь nuget консоль через alt - v - e - o и вбиваешь ADd-Migration. Всё должно работать.
Аноним 26/01/20 Вск 16:23:43 1583339943
>>1583337
Бля забыл дописать, в nuget консоли в выпадающем списке сверху выбираешь проект с DbContext
Аноним 26/01/20 Вск 16:25:10 1583341944
>>1583337
>Зачем? Почему тогда каждый класс в отдельную сборку не запихнешь?
Алсо тут тоже проебался, думал ты DbContext в отдельном от классов модели проекте хранишь.
Аноним 26/01/20 Вск 16:40:40 1583353945
>>1583341
https://metanit.com/sharp/mvc5/23.7.php
типо такого у меня, казалось (и сейчас кажется), что всему свое место. Доступ к БД? Сборка. Бизнес логика? Сборка. UI? Сборка. Разве не так?
Аноним 26/01/20 Вск 16:51:45 1583364946
>>1583353
Так. А репозитории и uow тут причем? Ты предполагаешь переезд с EF на другую ОРМ? asp.net имеет свои гайдлайны, чтобы ты таким не заморачивался - инжектируемые сервисы. Классы сервисов храни пожалуйста в отдельном проекте, но репозитории с uow ты сам знаешь зачем тебе?
Аноним 26/01/20 Вск 16:58:47 1583367947
>>1583364
>uow ты сам знаешь зачем тебе?
Враппер всех сущностей. Разве нет?
Я нашел решение, не знаю подойдет ли - из либы сделать обычный проект и кинуть через него reference к либе BLL и дальше в Web UI.
Аноним 26/01/20 Вск 17:12:19 1583375948
>>1583367
>Враппер всех сущностей. Разве нет?
Разве да. Но зачем? Просто чтобы было? Какую проблему ты решаешь этим?
Аноним 26/01/20 Вск 17:16:24 1583382949
>>1583375
>Какую проблему ты решаешь этим?
Собираю в пучек все сущности и могу легко маннипулировать ими через добавление 1 интерфейса в конструктор.
>>1577042 - это мой пост, когда то спрашивал. Разве так не удобнее, чем каждый раз жонглировать разными контекстами?
Энивей, пересоздавать DAL, как Core проект, а не либа - это гемор пиздец. Может есть всетки другие способы реализации? Или же можно превратить библиотеку в ASP.NET Core project?
Аноним 26/01/20 Вск 17:23:17 1583388950
>>1583382
>Собираю в пучек все сущности и могу легко маннипулировать ими через добавление 1 интерфейса в конструктор.
В какой пучок? У тебя уже есть этот пучок - сам твой контекст. Какая разница между DbContext.MyEntities.Add(new MyEntity()) и entitiesRepository.GetEntities<MyEntity>().Create(new MyEntity) если в конечном счёте у тебя всё равно делается ровно то же самое, но за двумя врапперами?

В какой конструктор? В конструктор контроллера?

>Разве так не удобнее, чем каждый раз жонглировать разными контекстами?
На одну БД один контекст. Куда ты ими там жонглировать собрался?
Твой DAL-проект может быть обычной .net standard library.
>Или же можно превратить библиотеку в ASP.NET Core project?
Если сейчас у тебя другой тип - можешь выгрузить проект (vs2017-) или просто в солюшн эксплорере один раз нажать по проекту и в открывшемся текстовом представлении .csproj поменять net472 на netstandard2.0 или как то так, за этим подробнее в гугл, но это точно можно сделать и это точно легко гуглится
Аноним 26/01/20 Вск 17:45:03 1583400951
image.png (2Кб, 403x33)
403x33
Вкатился пару месяцев назад, вопрос можно ли в консоль вывести сразу все значения массива, а не по одному через цикл? И ещё вопрос в чем проблема, почему нельзя так вывести минимальное и максимально значение?
Аноним 26/01/20 Вск 17:46:57 1583402952
>>1583388
>Какая разница
У меня условно есть 4 сущности - склад, финансы, доходы и персонал. Я буду передавать по цепочке или 4 отдельно сущности или 1, как враппер
>В конструктор контроллера?
Да, забыл добавить
>На одну БД один контекст
У меня в UI уже есть один контекст для аутентификации, туда же нужно запихнуть еще один - для логики в ту же БД
>быть обычной .net standard library.
ты имеешь ввиду Class library .net core? Так там нет StartUp, куда service добавлять?
Спасибо за ответы
Аноним 26/01/20 Вск 17:52:31 1583407953
>>1583402
>Я буду передавать по цепочке или 4 отдельно сущности или 1,
Каво? Куда? Что ты собираешься таким образом передавать?

>ты имеешь ввиду Class library .net core? Так там нет StartUp, куда service добавлять?

Ты под DAL подразумеваешь проект, где твои врапперы дёргают db context, так? Зачем им там в проекте свой StartUp?
Аноним 26/01/20 Вск 18:08:57 1583420954
Как правильно обрабатывать запросы кестрелом? Вот типа я решил что буду им получать не HTTP, а что-то еще. Я добавил свой ConnectionHandler, переопределил метод OnConnectedAsync там цикл который читает байтики из ConnectionContext. Я создаю асинхронный метод, что обрабатывает эти байтики формирует из них объект сообщения в котором содержится информация которую я прочитал. Что делать дальше? И вообще должен ли я в этом классе сообщения хранить ConnectionContext из которого читал байтики, чтобы отправлять ответ или это не правильно? Да, еще, как обрабатывать ситуацию, когда мне отправляют не то что я ожидаю получить?
Аноним 26/01/20 Вск 18:17:09 1583429955
>>1583407
>Каво? Куда? Что ты собираешься таким образом передавать?
Цепочка такова - DAL - Передает базовый функционал (CRUD) для работы с БД. Далее - BLL - используя уровень DAL делает всяческого рода проверки - Занесли накладную, количество должно быть больше 0 (типо такого). Далее - Web UI (ASP.NET Core app) - используя BLL передает в контроллер инкапсулируемые бизнес процессы (чтобы контроллер не раздувать и не передавать по 4 контекста). Но не в этом вопрос был.
>Зачем им там в проекте свой StartUp?
Для миграции с БД. DAL уровень должен быть нижней прослойкой для работы с базой данных.
Аноним 26/01/20 Вск 20:36:45 1583525956
изображение.png (1176Кб, 1240x1169)
1240x1169
Аноним 27/01/20 Пнд 01:07:25 1583777957
image.png (117Кб, 1856x746)
1856x746
image.png (141Кб, 1346x800)
1346x800
Привет товарищи. Делаю задания по шарпам и вот охуел на одном моменте уже второй день не могу понять в чем соль.

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

В общем вроде понятно что делать. Но вот одно но не могу проверить все папки в подпапках что то залип есть кусок кода и там вроде все норм но выдает Exeption подскажите что за херня и как боротся. Таску решать не надо только подсказать с рекурсией где у меня пиздец. Что не так указал весь путь должен E:\Testing\gg\th получается последнюю папку не видит
Аноним 27/01/20 Пнд 01:12:40 1583778958
Аноним 27/01/20 Пнд 04:53:54 1583806959
>>1555702 (OP)
Предлагаю шарпистам помочь допилить в НАНОБОРДЕ: https://github.com/username1565/nanoboard
сервер для хостинга наноборды в TOR'e.

Как я себе это вижу?
Отдельный сервер поднимается, и при помощи редактирования файла torrc,
пробрасывается на порт 80 onion-домена, сгенерированного програмой Garlic:
https://github.com/Artifact0/Garlic
После этого, наноборда доступна через TorBrowser.
Здесь: http://nboardn46ay6ycdi.onion/
вы можете видеть поднятую в TOR'e наноборду карасика: https://github.com/karasiq/nanoboard
но это не то.

Что там можно, а что нельзя делать на общедоступном сервере?

Можно:
1. Можно постить и подтверждать посты каптчёй, прямо на сервер, заходя по onion-адресу.
2. Можно репортить другие, чужие посты (например вайп), с указанием причины, как здесь.
3. Можно удалять посты локально (для себя) и/или скрывать их (хэш прописывается в LocalStorage).
4. Можно генерировать PNG-контейнеры и паковать посты туда (как случайные, так и избранные).
При этом, для постинга контейнера, должна бы выдаваться только одна ссылка лишь на один из тредов из списка.

Нельзя:
1. Нельзя запускать collect PNG c тредов на других бордах, чтобы не было DDoS'a.
2. Нельзя изменять треды в настройках, а лучше даже не видеть их, а получать одну ссылку, когда сгенерирован контейнер.
Лучше вообще не видеть настройки и не иметь доступ к ним.
3. Нельзя получать доступ к основному серверу по API и дёргать его за методы, окольным путём.

Не знаю что ещё добавить, что убрать, как бы сделать это оптимальным, код открытый и свободный, в общем гляньте сами.
В идеале, хотелось бы перепилить всё это на p2p-борду без мочерации, так как FreeNet не могу запустить на Windows XP.
Аноним 27/01/20 Пнд 14:18:29 1583964960
>>1583806
Жирнота какая.
1. Наноборд карасика - Scala
2. Где сорсы Garlic? Зачем тут кому то запакованная в exe сборка?
3.
>но это не то.
Почему не то? Уже запилили твою идею, ты хочешь переписать под .NET? Возвращаемся к пункту 2.
4. p2p freenet - ага, уже запилил свою борду с блекджеком и запрещенным проном
5.
>код открытый и свободный
Это толстота уровня /pr/? I didn't get...
Аноним 27/01/20 Пнд 14:21:09 1583967961
2bdrxa.jpg (26Кб, 768x432)
768x432
>>1583806
Дополню >>1583964
Я когда жирнил с толпами вкатышей - моча сразу бан отписала, тут же челик хочет в онионе борду без цензуры поднять и кидает гит с экзешником типо - "А ну глянь, что там" - пост висит пол дня. Logic?
Аноним 27/01/20 Пнд 14:37:55 1583974962
>>1583777
> но выдает Exeption
UnauthorizedAccessException? Или StackOverflowException? Или YouAreAnIdiotException?
Аноним 27/01/20 Пнд 19:22:16 1584195963
>>1583964
>1. Наноборд карасика - Scala
Я знаю, но выше ссылка на наноборду, на C#.
>2. Где сорсы Garlic? Зачем тут кому то запакованная в exe сборка?
Где-то тут: https://garlic7ravilyupx.onion.ly
>3. >но это не то.
>Почему не то?
Потому что по onion-ссылке там я поднял наноборду карасика, а она на Scala.
>Уже запилили твою идею, ты хочешь переписать под .NET?
Где запилили? Да, хочу.
> Возвращаемся к пункту 2.
Сорцы Garlic я уже дал. Если ты имел в виду пункт 1, то я не знаю Scala, я работаю над бордой на C#.
>4. p2p freenet - ага, уже запилил свою борду с блекджеком и запрещенным проном
А что тебя смущает? Freenet не стаёт у меня, точнее запускается, но не коннектится.
Можно просто вакабу поднять в onion, как тут: http://nichank62kpkrxvg.onion/
>код открытый и свободный
>Это толстота уровня /pr/? I didn't get...
Это значит, что код открытый и свободный, в отличие от копирастических хуйней патентованных.
>>1583967
Не нравится идея - просто скрой и нахуй иди.
Или будешь репортить, чтоб удалили скорее, да, подсос мочерской?
Мочерация - явление дегенеративное, так как препятствует протеканию конструктивных дискуссий научных,
ИМХО, это явление должно быть исключено в принципе,
так как цензура и мочерация нарушает основополагающие права человека,
в частности статью 19 "Всеобщей декларации ООН о правах человека":
https://www.un.org/ru/documents/decl_conv/declarations/declhr.shtml
>Статья 19
>Каждый человек имеет право на свободу убеждений и на свободное выражение их;
>это право включает свободу беспрепятственно придерживаться своих убеждений и свободу искать,
>получать и распространять информацию и идеи любыми средствами
>и независимо от государственных границ.

Именно поэтому, мудрый анон валит в дарквебы и пилит решения, гарантирующие СВОБОДНОЕ ОБЩЕНИЕ,
вместо того, чтобы сидеть в ссанине с ублюдочной и невменяемой мочерацией.
Аноним 27/01/20 Пнд 19:24:08 1584196964
>>1583964
>4. p2p freenet - ага, уже запилил свою борду
Да, и ещё, в том же ZeroNet'e можно имиджборду поднять.
Аноним 27/01/20 Пнд 19:38:27 1584206965
>>1584195
>2. Где сорсы Garlic? Зачем тут кому то запакованная в exe сборка?
>Где-то тут: https://garlic7ravilyupx.onion.ly
Там хоть и есть сорцы, но там только x64 версия
>not a valid Win32 application
а по ссылке здесь:
>>1583806
>https://github.com/Artifact0/Garlic
x86 exe-шник запускается нормально. Только сорца не нашёл.
Аноним 27/01/20 Пнд 19:59:32 1584225966
Вкатился
Аноним 27/01/20 Пнд 21:10:02 1584295967
>>1584206
>x86 exe-шник
Ща бы 32битные программы делать в 2к20.
Аноним 27/01/20 Пнд 21:36:31 1584329968
Аноним 27/01/20 Пнд 21:38:56 1584336969
Аноним 27/01/20 Пнд 21:51:22 1584356970
Если в геттерах и сеттерах нельзя прописывать дополнительную логику, то как делать например проверку ввода при инициализации значения у поля?
Аноним 27/01/20 Пнд 21:53:48 1584359971
>>1584356
1. В геттерах и сеттерах можно прописывать дополнительную логику.
2. Нормальные программисты создают отдельный класс-валидатор. Говнокодеры прописывают валидацию в геттерах/сеттерах или в конструкторе.
Аноним 28/01/20 Втр 01:43:14 1584466972
>>1584295
>>1584329
>Ща бы 32битные программы делать в 2к20.
Зато они обратно-совместимы с x64
Аноним 28/01/20 Втр 02:17:33 1584470973
>>1555702 (OP)
Как запустить одновременно два разных HTTPServer'a два привязанных к ним TCPServer'a на разных портах, и начать их прослушку?
Дело в том, что при запуске сервера создаётся новый экземпляр HTTPServer'a,
внутри метода создаётся новый экземляр TCPServer'a, и прослушка происходит в цикле только для одного сервера,
а для второго не происходит, пока цикл не закончится, то есть пока первый сервер не вырубится.
Аноним 28/01/20 Втр 05:45:15 1584493974
>>1583806
>Предлагаю шарпистам помочь допилить в НАНОБОРДЕ: https://github.com/username1565/nanoboard
>сервер для хостинга наноборды в TOR'e.
Блядь, там столько notif'ов пиздует. Тебя задудосят нахуй запросами, даже через TOR.
Ты Long Polling ещё не запилил?
Аноним 28/01/20 Втр 07:44:01 1584503975
Всем снова здравствуйте. Я говорил что вы больше меня не увидите. Видимо немного соврал.
В общем, я защитил все дела, преподу понравилось, но в процессе защиты произошел маленький обосрамс: Сервер я делал полностью на async, так вот, там был отдельный HttpListener, который нужен был чтобы небольшой интерфейс в браузере отобразить. Ну вот в чем и проблема, когда я запустил перед преподом программку которая эмулировала кучу обращений на регистрацию, регистрация-то шла, но из-за большого числа клиентов(я сразу ебанул 100к обращений единовременно, куча посыпались из-за того что портов не хватило либо истекало время ожидания ответа, из тех кого успел принять за 10 секунд только 1к зарегистрировались) мой запрос из браузера пару раз получал таймаут и только когда я закрыл эмуляцию и все кто успели зарегистрировались удалось отрисовать табличку зарегистрированных.
Собственно в чем вопрос: Как этого избежать-то? Типа как я понимаю, это что-то с потоками связанное, но не совсем понимаю как оно должно работать. Если бы я в классе WebInterface, запихнул Thread и потом после старта приложения, в этот Thread запихнул бы прием и асинхронную обработку HTTP запросов, это было бы нормально и тогда бы не было того обосрамса? Или таки был-бы? Может кому-то не сложно на пальцах объяснить?
Аноним 28/01/20 Втр 09:03:54 1584523976
>>1584503
>https://ru.wikipedia.org/wiki/Список_портов_TCP_и_UDP
>Количество портов ограничено с учётом 16-битной адресации (2^16=65536, начало — «0»).
>Все порты разделены на три диапазона — общеизвестные (или системные, 0—1023),
>зарегистрированные (или пользовательские, 1024—49151)
>и динамические (или частные, 49152—65535).
Ты же ебанул 100к регистраций сразу на одной машине, и ещё удивляешься тому что куча запросов пошла на разных портах?
Ты просто заDDoSил машину с клиентами.
>либо истекало время ожидания ответа
Гугли Long Pooling. Там что-то вроде стека формируется на сервере, и запросы стают в очередь, и повисают, пока сервер не ответит.
Аноним 28/01/20 Втр 09:46:44 1584538977
resharper юзаете? Покпной чи крякнутый?
Аноним 28/01/20 Втр 10:29:22 1584553978
Аноним 28/01/20 Втр 11:44:03 1584600979
>>1584538
Я без задней мысли после месяца триала сразу пересел на лицензионный Rider. Зависимость есть.
Аноним 28/01/20 Втр 15:25:21 1584805980
>>1584600
Денег нет но я держусь
Аноним 28/01/20 Втр 15:25:22 1584806981
image.png (389Кб, 570x480)
570x480
предположим у меня есть как-нибудь деятельность, например тест, при загрузки страницы я устанавливаю дату начала теста, как теперь сделать постоянную ежесекундную проверку что бы когда пройдет ровно 60 минут пользователя переадресовало на другую странницу?
Аноним 28/01/20 Втр 15:29:06 1584807982
.jpg (112Кб, 500x375)
500x375
Народ, меня поставили в тупичок. Есть тупой вопрос с непонятной целью, а именно:

Как избавиться от всех IFs и получить тот же результат в коде ниже? (switch/case НЕ вариант)

if(s == "car")
{
Writeln("some logic here");
} else if(s == "truck")
{
Writeln("something else here");
} else if(s == "train")
{
Writeln("of course I need more than just Writeln");
}

Меня мысль уводит в сторону dynamic assembly в .net core, но это явно не то, что они имели в виду. Туплю.
Аноним 28/01/20 Втр 15:31:02 1584809983
>>1584807
where( s == "car").firstOrDefault(); ?
Аноним 28/01/20 Втр 15:33:28 1584812984
>>1584806
Просто в HTML укажи переадресацию через 3600 секунд, тебе не нужна ежесекундная проверка.
Аноним 28/01/20 Втр 15:34:26 1584813985
>>1584812
дело в том что по идеи пользователь может закрыть вкладку и открыть позже, или вообще на другом устройстве
Аноним 28/01/20 Втр 15:35:32 1584815986
>>1584812
кроме того в любом случае я должен посчитать за сколько пользователь справиться, тоесть акакой-то таймер/секундомер нужен
Аноним 28/01/20 Втр 15:37:53 1584816987
>>1584807
я думаю они имели ввиду что базы никто через иф елсы не обслуживает
Аноним 28/01/20 Втр 15:38:15 1584817988
>>1584813
Тогда у твоего теста должен быть уникальный номер сессии, который ты передаешь клиенту при начале теста? Тогда тебе на серверной части надо хранить структуру из

Test
{
TestID: GUID;
TestStartDate: DateTime;
TestExpires: DateTime;
}

при загрузке страницы теста находи в массиве тестов или в базе данных этот тест, и устанавливай редирект через число секунд, которое осталось до TestExpires. Если хочешь проверку по интервалу - тебе нужен ScriptManager и Ajax UpdatePanel, с обновлением по таймеру.
Аноним 28/01/20 Втр 15:40:27 1584820989
>>1584817
хорошая идея спасибо!
Аноним 28/01/20 Втр 15:40:58 1584821990
>>1584816
Но это не база данных. Представь себе 3 функции, запускаемые в зависимости от выбранного значения в dropdown list. Их не устраивает if, нужен другой метод. Видимо, намёк на паттерн, вроде strategy pattern, или ещё какую-то хуйню с созданием объекта.
Это вопрос собеседования, к слову, а не практическая задача.
Аноним 28/01/20 Втр 15:44:48 1584825991
>>1584821
dropdown list это лист, по отношении к нему можно юзать where результат тот же? тот же! ифы используются? нет, условия полностью выполнены? да! а если они иммели ввиду что нибуть другое то это уже их косяк, ты получил задачу и ее выполнил согласно условиям
Аноним 28/01/20 Втр 15:48:58 1584829992
>>1584821
аа постой, where используется только при присвоении, так что не подходит
Аноним 28/01/20 Втр 16:31:38 1584863993
Аноним 28/01/20 Втр 16:40:54 1584870994
>>1584863
Всё равно же потребует if?
Аноним 28/01/20 Втр 16:42:02 1584872995
>>1584870
что у тебя за собеседование такое когда на вопрос можно отвечать пол часа?
Аноним 28/01/20 Втр 16:43:57 1584875996
>>1584872
Там всего три вопроса, и можно отослать ответ хоть завтра, хоть послезавтра. Но это и правильно, в конце концов так погромист может показать, на что он способен. На два вопроса я ответил, но здесь я тупо не понимаю что от меня хотят.
Аноним 28/01/20 Втр 16:49:37 1584883997
>>1584870
Зойчем? Ключ - твоя строка, значение - метод.
myDictionary["truck"]();
Аноним 28/01/20 Втр 16:54:00 1584890998
>>1584875
>погромист может показать, на что он способен
сидеть на сосаче?
Аноним 28/01/20 Втр 16:56:52 1584893999
>>1584890
Это была моя основная работа несколько лет, да.

>>1584883
Падажжи, можно добавить метод как значение в словарь? Впервые о таком слышу.
Аноним 28/01/20 Втр 16:58:59 15848951000
Аноним 28/01/20 Втр 17:01:34 15848971001
>>1584895
Да, сейчас как раз методом тыка разбираюсь, спасибо.
Аноним 28/01/20 Втр 17:14:40 15849141002
>>1584895
>>1584897
Вот, что получилось.

var transportTypes = new Dictionary<string, Action> {{"car", () => Console.WriteLine("some logic here")}, {"truck", () => Console.WriteLine("something else here")}, {"train", () => Console.WriteLine("of course I need more than just Writeln")}};
var x = transportTypes as Action;
x();

Думаю, это сработает, спасибо!
Аноним 28/01/20 Втр 17:30:40 15849241003
Посоны, какие годные конторы в Питере посоветуете, где дотнетчики нужны?
Аноним 28/01/20 Втр 17:40:26 15849311004
image.png (12Кб, 1107x92)
1107x92
че он от меня хочет?
Аноним 28/01/20 Втр 17:42:56 15849361005
>>1584931
Чтобы ты объявил DateTime как nullable тип.
Аноним 28/01/20 Втр 17:44:44 15849401006
>>1584931
Ты пытаешься неявно присвоить наллабл значение не наллабл переменной. либо объяви end_time как DateTime?, либо присваивай какое-то значение по умолчанию, если game.end_date == null.
Аноним 28/01/20 Втр 17:48:02 15849441007
Аноним 28/01/20 Втр 19:13:56 15850151008
>>1584914
>var x = transportTypes as Action;
>Думаю, это сработает
Нет, не сработает. Как ты вообще додумался идти на собес с нулевыми знаниями?
Аноним 28/01/20 Втр 19:19:49 15850201009
>>1585015
Почему не сработает, блядь?
Аноним 28/01/20 Втр 19:19:55 15850211010
>>1584523
> Ты же ебанул 100к регистраций сразу на одной машине, и ещё удивляешься тому что куча запросов пошла на разных портах?
Про число портов я знаю.
Я просто надеялся что оно быстро работать будет же. Думал хотя бы 10к успеет принять-обработать-зарегистрировать и послать ответ. Дома больше соединений успевал обработать. Вот.
> Гугли Long Pooling
Погуглил. Спасибо. Хотя я сам что-то подобное придумывал но потом отказался от идеи т.к. думал что и так должно работать нормально будет.
Аноним 28/01/20 Втр 19:21:33 15850221011
>>1585020
Потому что ты кастишь к дикшинари к экшону. У тебя там всегда налл будет.
Аноним 28/01/20 Втр 19:24:44 15850251012
.png (14Кб, 584x223)
584x223
Аноним 28/01/20 Втр 19:33:15 15850301013
>>1585025
>даже компилятор показывает, что долбоеб делает ненужную хуйню
>долбоеб не понимает и всё равно делает
>называет кого-то тупым

Проиграл. Объясни, нам тупым, зачем Action приводить к Action?
Аноним 28/01/20 Втр 19:34:25 15850311014
>>1585030
Просто запусти VS и попробуй не кастовать. Всё поймёшь.
Аноним 28/01/20 Втр 19:36:00 15850321015
post.png (3Кб, 296x49)
296x49
>>1585025
Ты не умеешь пользоваться макабой. А зачем ты Action приводишь к Action, умный ты наш?
Аноним 28/01/20 Втр 19:36:56 15850331016
>>1585032
Ты сейчас порвёшься.
Аноним 28/01/20 Втр 19:40:13 15850351017
15b317f5b78d804[...].png (14Кб, 783x351)
783x351
>>1585031
Я слишком тупой и не понимаю.
Аноним 28/01/20 Втр 19:41:08 15850361018
1.png (15Кб, 510x142)
510x142
>>1585031
Я не понял, объясни.
Аноним 28/01/20 Втр 19:50:44 15850401019
>>1585036
Блядь, оказывается индексатор в словарях умеет создавать новый элемент? Лол. Я думал тут как с массивом, типа если попробуешь обратиться по ключу, которого нет, выкинет эксепшни. Пиздец, 3й год работаю дотнетчиком и каждый раз пользовался Add(key, value).
Аноним 28/01/20 Втр 19:58:15 15850431020
>>1585035
> Я слишком тупой и не понимаю.
> Потому что ты кастишь к дикшинари к экшону. У тебя там всегда налл будет.
Аноним 28/01/20 Втр 20:00:08 15850471021
>>1585035
>>1585036
То есть всё работает? Тогда зачем надо было пиздеть, что не работает? Вне зависимости от кастинга, MSIL будет одинаковым. Так что нахуй.
Аноним 28/01/20 Втр 20:01:02 15850481022
>>1585047
Сравни твой изначальный код и то что ты потом написал и заскринил, тупиздень
Аноним 28/01/20 Втр 20:02:27 15850491023
>>1585047
Так нахуй с нулевыми знаниями куда-то идти? Нравится в штаны срать прилюдно?
Аноним 28/01/20 Втр 20:43:38 15850791024
>>1584914
Кстати, обязательно сломают твой код, передав несуществующий ключ. Кстати, пошел нахуй.
Аноним 29/01/20 Срд 01:35:04 15852371025
>>1585079
Юбилейный 1024-ый пост в сисярп треде можно было и как-то оригинальнее, чтоле, написать.
Аноним 29/01/20 Срд 07:08:30 15853081026
image.png (50Кб, 1529x475)
1529x475
image.png (102Кб, 1545x677)
1545x677
image.png (87Кб, 1551x697)
1551x697
image.png (93Кб, 1529x707)
1529x707
Почему ListBox не выделяет последний итем?
Следующий/предыдущий/первый выделяет, последний нет.
Аноним 29/01/20 Срд 09:18:15 15853321027
image.png (8Кб, 429x42)
429x42
может кто помочь? нужно вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от xнач до xкон с шагом dx с точностью е. Таблицу снабдить заголовком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда. Начал потихоньку делать, но не знаю как записать само уравнение.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
const int Iter = 2000;
Console.Write("Введите начальное значение аргумента: ");
double Xn = double.Parse(Console.ReadLine());
Console.Write("Введите конечное значение аргумента: ");
double Xk = double.Parse(Console.ReadLine());
Console.Write("Введите шаг dx: ");
double dx = double.Parse(Console.ReadLine());
Console.Write("Введите точность: ");
double eps = double.Parse(Console.ReadLine());
double ch, Pr, yn, y;
Console.WriteLine("| X\t| Y\t| Pr\t| Кол-во\t|");
Console.WriteLine("+---------------+---------------+---------------+---------------+");
int b;
for (double x = Xn; x <= Xk; x += dx)

Аноним 29/01/20 Срд 09:23:26 15853331028
>>1585332
Это где такое задают?
Аноним 29/01/20 Срд 09:41:35 15853381029
Аноним 29/01/20 Срд 14:23:36 15854611030
ronaldo.jpg (14Кб, 280x390)
280x390
>>1585333
>>1585338
студентота подзалупная

Моча, где перекат?
Аноним 29/01/20 Срд 14:55:32 15854721031
Шарписты на какой ступени стоят? У параши?
Аноним 29/01/20 Срд 15:11:29 15854811032
>>1585472
На верхней, в шаге от богов.
Аноним 29/01/20 Срд 16:23:59 15855601033
>>1585472
>У параши?
На параше - пофиксил
Аноним 29/01/20 Срд 18:04:23 15856321034
Я почти закончил читать C# 4.0. Полное руководство Герберт Шилдт, уже могу рассчитывать на работу в топ компании? хуй с ним, в какой нибудь шараге
Аноним 29/01/20 Срд 18:14:08 15856381035
Есть тут кто работает бекенд разрабом на удаленке? Расскажите свою хистори, как нашли первую работу, держитесь ли за свое место, что будите делать если уволят?
пхп пидоры проходят мимо, вопрос не вам
Аноним 29/01/20 Срд 18:14:29 15856391036
>>1585638
сук не то окно, делейт нахуй
Аноним 29/01/20 Срд 18:50:21 15856771037
>>1585632
Ну если прочитаешь полностью, то можешь на мидла сразу резюме кидать. На джуна хватило б четырех глав и двух видео на ютубе.
Аноним 29/01/20 Срд 18:50:23 15856781038
>>1585632
>закончил читать C# 4.0
долго ты что то читал
>уже могу рассчитывать на работу
да, в пятерочку грузчики нужны, с твоими знаниями к ним
>>1585638
>пхп пидоры
ты охуел мразь? Пыха решеткам на голову ссыт
Аноним 29/01/20 Срд 19:26:49 15857251039
Везде пишут, что ASP.Net сверх популярен и крут, может ли знающий анон отписать тут про хотя-бы пару крутых и широко известных проектов, бэк которых был написан с использованием ASP.Net. Не поймите неправильно, я без наезда, просто сам пытался гуглить, но ничего не нашел, что очень странно.
Аноним 29/01/20 Срд 19:44:08 15857381040
>>1585725
Не сидится в джава-треде?
Аноним 29/01/20 Срд 20:08:24 15857521041
Аноним 29/01/20 Срд 20:12:40 15857541042
Аноним 29/01/20 Срд 20:32:35 15857711043
at-first-i-then[...].jfif (25Кб, 334x500)
334x500
>>1585725
>ASP.Net сверх популярен и крут
В шепутиарий
Аноним 29/01/20 Срд 23:18:42 15858631044
Где находить хорошие туториалы но сишарпу? Хотел найти какой-нибудь курс по LINQ небольшой, но на ютубе ничего хорошего нет. Где искать, куда копать?
Аноним 29/01/20 Срд 23:51:45 15858751045
24a9c07b2eac018[...].jpg (470Кб, 700x455)
700x455
Аноним 30/01/20 Чтв 00:43:26 15858931046
Антоны. Я установил Монодевелоп на Линукс. Какую книгу взять чтобы изучить? Можно Троелсена?Кто пишет на линуксе?
Аноним 30/01/20 Чтв 01:16:14 15859031047
>>1585893
>Антоны
на месте
>Я установил Монодевелоп на Линукс
а я JVM в стиралку
>Какую книгу взять
Таненбаума, Кнута
>Можно Троелсена?
Что за ноунейм?
>Кто пишет на линуксе?
люди
Аноним 30/01/20 Чтв 01:19:01 15859051048
>>1585903
>а я JVM в стиралку
Ты считаешь, что писать в Линукс на Шарпе это порнография?
>Таненбаума, Кнута
Знаю про них. Танненбаум в смысле ОС, Архитектуры или Сетей?
>Кто пишет на линуксе?
>люди
что ты хотел этим сказать?
Аноним 30/01/20 Чтв 01:37:08 15859191049
Аноним 30/01/20 Чтв 02:17:46 15859341050
Аноним 30/01/20 Чтв 02:34:18 15859381051
Аноним 30/01/20 Чтв 07:07:33 15859611052
>>1585863
Зачем тебе LINQ? Мертвая технология. Все нормальные люди в цикле перебирают, и ты так делай.
Аноним 30/01/20 Чтв 07:20:13 15859641053
Шарпаны, такой вопрос, сделал свой менеджер паролей, потому что не доверяю всяким пидорам, которые предлагают свои услуги. Так вот, программочка маленькая-консольная на неткоре, без всяких автовводов, просто указываешь логин и название сайте-приложения где пароль нужен, программка его дает, но меня заебывает каждый раз после перезагрузки винды и линупса включать ее, вводить логин-пароль и это все. Я подумал о том, чтобы она была демоном из-за того что демон - охуенно звучит, ну серьезно, моя программа - ебучий демон из ада, классно же. И я чет погуглил-погуглил, для винды есть возможность прикрутить к какую-то херовину, но это какой-то хостбилдер надо использовать, для линупса какой-то системд, что это вообще такое? Может быть можно как-то без них это все организовать, чтобы просто загрузился мой дебиан и оно само включилось, как-то проверило что я один раз уже вошел и сразу заработало?
Аноним 30/01/20 Чтв 08:45:42 15859781054
>>1555702 (OP)
Есть Dictionary с комментами для картинок:
>var comments = new Dictionary<string, List<strings>>(); //hash картинки, список с комментами.
Задача, отсортировать его по количеству комментов в списках.
КАК?
Аноним 30/01/20 Чтв 09:03:25 15859841055
Аноним 30/01/20 Чтв 09:38:07 15859971056
>>1585984
Спасибо, работает. С типами разобрался уже, и привёл результат c с типа OrderedEnumerable - снова к Dictionary.
А то там разные типы. Вот тут - наглядно: https://rextester.com/YDIGVV28057
Аноним 30/01/20 Чтв 09:49:55 15860041057
Аноним 30/01/20 Чтв 09:52:49 15860051058
Аноним 30/01/20 Чтв 11:48:34 15860411059
image8627091600[...].gif (481Кб, 500x280)
500x280
>>1555702 (OP)
>>1586005
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: https://2ch.hk/pr/res/1586030.html
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030 (OP)
ПЕРЕКАТ: >>1586030
ПЕРЕКАТ: >>1586030
Аноним 08/02/20 Суб 00:36:46 15948821060
сап, архитекторы, помогите недоджуну, вот у нас есть программный стек, везде говорится, что в верхнем фрейме хранятся именно локальные переменные метода, но что насчёт атрибутов класса, в котором этот метод определён? к ним можно получить доступ прямо из метода, не передавая их в качестве параметров, получается, они тоже хранятся в верхнем фрейме?
1059 101 188
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов