Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии. Литература вторым постом 1. Ресурсы:- http://stackoverflow.com/questions/tagged/c%23- http://www.tutorialspoint.com/csharp/- http://professorweb.ru- http://net-informations.com- http://habrahabr.ru/hub/csharp/ 2. Онлайн-компиляторы:- https://dotnetfiddle.net/ - возможно лучший вариант. Встроено немного убогое, но все-таки автодополнение и проверка синтаксиса.- http://ideone.com/- http://csharppad.com/- http://www.tutorialspoint.com/compile_csharp_online.php- http://rextester.com/l/csharp_online_compiler 3. WinForms или WPF?Зависит от задачи. Для небольших проектов, скорее всего, будет достаточно винформочек. В случае, если разрабатываемое приложение достаточно серьёзное, то возможно его стоит писать с использованием WPF. WPF очень хорошо работает с паттерном MVVM ( https://ru.wikipedia.org/wiki/Model-View-ViewModel ), и позволяет пилить очень кастомизированные интерфейсы с помощью XAML, что в случае WinForms, делать намного сложнее. 4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?Неправда. C# довольно активно развивается, недавно вышел новый компилятор, шестая версия шарпа, и уже активно разработывается седьмая. Весь дотнет понемногу становится опенсорсным, а ASP.NET становится независимым от платформы. В некотором смысле понемногу вымирают десктопные приложения с развитием веб-технологий, но в том же энтерпрайзе он еще очень даже востребован. 5. Какую ИДЕ выбрать?Для Windows самым очевидным вариантом будет Visual Studio (https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx). Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополненийДля мака и никсов самый юзабельный вариант - MonoDevelop ( http://www.monodevelop.com/download/ ).Для vim можно использовать OmniSharp ( https://github.com/OmniSharp/omnisharp-vim ).Кросплатформенный полуредактор/полуIDE VS Code ( https://www.visualstudio.com/en-us/products/code-vs.aspx )Также существуют плагины для Atom'а и Sublime Text, но функциональность там достаточно сильно урезана.Кроме того, в данный момент JetBrains активно пилит свою IDE для шарпа (Project Rider), вероятно в ближайшее время станут доступны первые EAP. IDE заявлена как кросплатформенная, со всем решарпер-функционалом, поддержкой отладки, моно и .net core.SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб) и опциональной портабельностью, при этом имея дизайнер WinForms и WPF, а также интеграцию с FxCop, StyleCop и прочими ништяками. Если хочется что-то по быстрому набросать, а выкачивать гигабйты нет желания, то возможно SharpDevelop будет лучшим вариантом. 6. С# для мобильной разработкиЕсли нужны инструменты для разработке под мобилы, ставь сразу VS2015 и при установке выбирай все нужные компоненты.Больше информации тут - https://msdn.microsoft.com/ru-ru/library/dn771552.aspxИз актуальной литературы- Xamarin Mobile Application Development- Xamarin Essentials 7. Дополнительные инструменты для разработки на C#LINQPad - сорт оф REPL, с возможностью быстрого подключения к БД и удобной визуализацией данныхdnSpy - декомпилятор, малоизвестный форк ILSpy, где реализована возможность модификации IL-кода прямо в EXE и DLL файлах, отладка IL-кода и много других фич для reverse engineering'а. Плюс няшные темы как в студииdotPeek - бесплатный декомпилятор от JetBrainsscriptcs - для запуска C# кода как скриптов, возможность использовать как REPL 8. Расширения для студииReSharper - одно из известнейших. Рефакторинги, умный автокомплит, настраиваемый стиль кода. Платный, но можно стянуть с торрентовSupercharger - показывает "карту" с классами, методами и всем остальным сбоку от кода с возможностью прыгать по нимIndent Guides - показывает вертикальные линии на каждом уровне отступов.Format document on Save - форматирует код каждый раз при сохранении документаCode alignment - Выравнивает код по указанным символам. Удобно, например, при инициализации словарей или в перечислениях Обзор Roslyn: https://github.com/dotnet/roslyn/wiki/Roslyn%20OverviewНовые возможности C# 6.0: https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-C%23-6 ПРИНИМАЮТСЯ ПРЕДЛОЖЕНИЯ ПО ШАПКЕ Код этой шапки: http://pastebin.com/cKKXYArs Прошлый тред тонет здесь: https://2ch.hk/pr/res/1440329.html#1451943
>>1455468 (OP)9. Что почитать?- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом. 10. Более хардкорный материал- C# in Depth (Jon Skeet) - написана в виде истории версий C#, начиная с C#1.0. Описываются возможности, которые были добавлены в определенной версии и далее достаточно хардкорно и подробно эти возможности расписываются.- Writing High Performance .NET Code (Ben Watson) - охуенная книга. В основном фокуируется на оптимизации дотнет-говна. Методы оптимизации проложений, профилирование, вот это все. Крутейшая и достаточно детальная глава по GC. Рассматриваются достаточно известные проблемы вроде "for vs foreach", "класс vs структрура", кастинг, боксинг, перфоманс регулярок, коллекций, исключений. Короче все что нужно, чтобы вам перезвонили.- CLR via C# (Jeffrey Richter) - это классика, это знать надо. 11. Хочу еще хардкорней- C# Deconstructed (Mohammad Rahman) - введение в CLR, модели памяти и выполнения в CLR, байтоебство, JIT. Книга достаточно коротенькая, менее 200 страниц, можно осилить за пару дней. Желателен опыт работы WinDbg и понимание устройства PE-формата.- Expert C# 5.0 with .NET 4.5 Framework - еще одна книга этого автора, в этот раз намного длиннее. Очень много IL, анализа и разбора стандартной либы (те же коллекции), разбор ивентов, дегегатов, асинхронности etc. на уровне байткода.- .NET IL Assembler (Serge Lidin) - ILёбство, во многих местах повторяет документацию MSDN, но при этом имеет много интересных дополнений и заметок. Кроме того все неплохо структуировано и разложено по красивым табличкам 12. Литература по WPFИз более-менее актуального можно выделить пару книг:- Pro WPF 4.5 in C# (Matthew MacDonald)- Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich) 13. Литература по ASP.NET- Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)- Pro ASP.NET MVC 5 Platform (Adam Freeman)- Beginning ASP.NET for Visual Studio 2015 (William Penberthy) 14. Литература по асинхронности, параллелизму и всему такому- Concurrency in C# Cookbook (Stephen Cleary) - книга, написанная в формате "проблема - решение". Кроме базовых вещей, вроде асинков и параллелизма рассматриваются TPL Dataflows, Rx (реактивные расширения), тестирование всего этого асинхронного добра, ну и работа этого всего на более низких уровнях абстракции- Multithreading in C# 5.0 Cookbook - в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная- Pro Asynchronous Programming with .NET (Richard Blewett, Andrew Clymer) - опять же, интересного немного, но неплохие главы про асинхронность + UI и анализ дампов памяти в windbg 15. Литература не по шарпу, но так или иначе связанная с языкомC# Game Programming Cookbook for Unity 3D (Jeff W. Murray) - разработка на шарпе под UnityIntroduction 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
Товарищи кодеры, расскажите почему вы выбрали C#? Ведь на C#/.Net вакансий значительно мало, особенно в СНГ в Америке получше, но даже там C# редко занимает рейтинги популярности . Просто стало интересно, чем вы руководствовались при выборе? если не считать низкой популярности, то с технической точки зрения шарп реально крутой язык
>>1455485Богатый удобный язык. Хорошие зарплаты у миддлов.Не гонюсь за хайпом. Язык, к тому же, хорошо развивается.
>>1455485хз, вся корпоративная среда и майкрософтовская экосистема на шарпе. Это значит что что-то более менее серьёзное это только он.А всякие руби, котлины, и прочие скалы - говно без задач для гиков.
Есть что почитать про оптимизацию Stream? Нужно максимально быстро передавать данные по цепочке. Думаю так же и о Span
Там вчера на б про плюралсайт создавал тред, кто-то в пр звал для складчины. Короче, можно бесплатно месяц подписки получить. Раньше 6 месяцев даваллиhttps://fossbytes.com/getting-pluralsight-subscription-for-free-for-6-months/
>>1455573Правда надо какую-то годноту ещё поискать, чтобы потом не жалеть. Гайд по асп нет кору мне зашёл, пока не весь просмотрел, а только первый раздел.
Аноны соре за тупой вопрос.Есть 3 класса с общими методами.Так вот сам вопрос, стоит ли "совместные" методы вынести в отдельный интерфейс или абстрактный класс при условии что мне нужно будет из коллекции с "общим" типом внутри содержащую по экземпляру от каждого класса, брать по очереди по элементу и использовать наследуемые методы. Насколько я понимаю если наследуемые методы вынести в интерфейс то я не смогу напрямую использовать наследуемые методы и мне придется приводить каждый элемент к его "настоящему" типу посредством 'as' что выглядит несколько глупо как по мне. С другой стороны, если я правильно понимаю интерфейсы созданы для наследования методов, в то время как от абстрактных классов наследуются поля. В общем посоветуй, анон, как грамотней это сделать.
>>1455715Как по мне, так ты всё неправильно понимаешь. Но я не умею красиво изъясняться, потому подождём пока кто пограмотнее ответит.
>>1455715>"совместные" методы вынести в отдельный интерфейсв интерфейсах только сигнатура методов. Нет смысла плодить одинаковые методы, если можно вынести в отдельный класс и использовать его.Дальше начал читать эту лабуду и хочу дать только один совет - учи ООП. У тебя нет понимания взаимодействия объектов.
>>1455725Вполне возможно, поэтому и прошу совета.>>1455734Я неправильно написал соре.В отдельный интерфейс/абстрактный класс вынести только сигнатуру методов а реализацию методов оставить в классах в которых они и находятся добавив только 'override'.Вопрос в том, можно ли делать генерик коллекцию с интерфейсом в качестве хранимого типа и добавить туда экземпляры классов которые наследуются от этого интерфейса, и потом по очереди вытаскивать из коллекции эти элементы и вызывать методы без приведения элемента к типу которым он, по факту, является или же вместо интерфейса следует использовать абстрактный класс. Могу быстро написать код как это в идеале выглядит в моей голове. > учи ООПЯ стараюсь анонче.
>>1455757Классы не наследуются от интерфейсов. Классы реализуют интерфейсы. Например: class Собака : Млекопитающее, IПитомецСобака унаследована от класса "млекопитающее", возможно даже от абстрактного, и реализует интерфейс "IПитомец", который указывает, что у реализующих его классов, должны быть указанные в нём члены, например, свойства ХозяинНэйм, АдресДома или метод ВернутьсяДомой()При этом!Допустим там же у нас есть класс Игуана: Рептилия, IПитомец и ещё класс Робот: Автомат, IПитомец. Казалось бы, они все унаследованы от разных классов, но благодаря интерфейсу, мы можем объединить их в один лист, перечислять, оправшивать, задавать им действия:var списокПитомцев = new List<IПитомец>() { Тузик, Зюзя, Долботрон } // Пёс, игуана, роботforeach (IПитомец питомец in списокПитомцев){ Console.Write(питомец.ХозяинНэйм);питомец.ВернутьсяДомой();}
>>1455806То есть реализовываться каждый ВернутьсяДомой() будет так как описано в конкретно классе реализующем IПитомец? Спасибо большое, анон, соре за такой тупой вопрос.Люблю, обнимаю, целую :3
>>1455825Именно так. На первый взгляд это кажется тупо, попахивает индусским кодом, где классы вынуждены подчас копипастить однотипные куски кода, но зато на интерфейсах можно сделать такую композицию, как, например:class Сундук : Фурнитура, IContainer, IMovable, IEnemy, IDestroyable // Сундук-мимик, который нападает на игрока, но которого можно таки убить и облутать.class Древень : Деревья, ICharacter, IContainer // Говорящее дерево с инвентарём из которого награду за прохождение квеста выдаёт
>>1455838Пожалуйста! Очприятно! Особенно учитывая то, что шарп я учу менее года как, а ООП, интерфейсы и всё такое знаю по дельфям, на которых кодил в нулевых.
(main){ Test x = new Test();}Class Test{}В данном случае х - это переменная, которая хранит объект? Всегда слышал что это просто объект или экземпляр класса, инстанс. Но в ньюфаг треде сказали, что не так
Нытик в тредже.Опять дизмораль, хотя не так много как в прошлый раз.А вот вчера я вообще хорошо себя чувствовал, потому что сделал одну забавную программу. Вообще-то, приложение WinForms, ну ладно.Конечно, всё это я делал, смотря Хачатура, который XpucT но всё никак не могу нормально так нырнуть в книгу Троелсона.Всё то, что он приводит в первой части, стоит того, чтобы я это выучил? Это уже и есть то самое, что я должен по полной штудировать?Отвечойте.
Почему додики смотрят всяких говно-блогеров, но игнорят самый лучший в мире канал по обучению на .NET - "Программирование это просто"?
>>1455859x - это просто ссылка на объект, под который была выделена память с помощью newТак, стоп, падажжи. А если var a = new byte();Ведь byte - это структура, следовательно, лежит в стеке. Стало быть, new выделяет память либо в стеке, либо в куче в зависимости от создаваемого объекта
>>1455872Я забыл дописать - если x это ссылка, то как назвать "а", если она хранит значение в стеке? Ссылка на стек?>>1455874Сразу видно проверенного камрада>>1455867Постепенно запомнишь, пока общую структуру этой таблицы в голову уложи - что есть целые числа, есть с плавающей запятой. Потом уже в нюансы округления и прочего дерьма влезешь
>>1455896не ну а шо сложного? Просто запомни что есть целые числа, есть числа с точкой, есть строки, символы и правда, ложь.Есть значимые типы, есть ссылочные.
Я вот ласт квесчн хотел задать.Есть такой тип данных как класс. Его можно использовать для свойств в другом классе. И как это вообще понимать? Что это за тип такой. Чем его определять.Если проигнорите - пойму. Буду тогда дальше гуглить, в ньюфаг треде сказали, что я какие-то не такие определения нахожу.
>>1455906Вообще понятия "класс" и "тип данных" это не одно и то же. Когда мы говорим "класс", это значит что идет речь об определенном типе данных, например, "класс Cat" => тип данных Cat. То есть, "класс" сам по себе - это не тип данных, это просто слово, которое мы используем для описания определенного типа данных."Создать класс Animal" => объявить тип данных Animal."Класс Cat наследует класс Animal" => тип данных Cat наследует тип данных Animal.Кроме того, в C# (и в большинстве других языков) присутствует ключевое слово class, которое как раз и используется для объявления (создания) новых типов, причем в C# это ключевое слово используется для объявления ссылочных типов (в противоположность значимым типам, которые объявляются ключевым словом struct).Объявление нового типа данных (класса):public class Dog{ ... }
>>1455906Класс - это объект, который хранит данные и методы, что ими манипулируют. Например, нам нужно описать какой то объект, который характеризует персонажа в игре. (у него есть какие то характеристики, и дейсвтия, которые он может выполнять). Мы создаем класс "Персонаж". Добавляем в него 3 поля данных. (Сила, Ловкость, Интелект)Констурктор нам нужен, что бы мы могли создавать экземпляры нашего класса. (Например, при создании экземпляра, мы могли сразу задать ему начальную силу, ловкость, интелект). Свойства нам нужны, что бы получить доступ к приватным полям класса и задать какую нибудь бизнес логику, например нельзя создать персонажа с нулевой силой, ловкостью и т .д. Ну и методы, это то что наш класс умеет делать. Например, наш персонаж может двигаться, и скорость движения может зависить от ловкости. Он может атаковать. Может кастовать какое-либо заклинание и т.д.>Его можно использовать для свойств в другом классе.Класс может наследоваться от другого класса. Например, наш новый класс "Враг", может наследоваться от класса "Персонаж", получив таким образом, доступ ко всем полям и методам "родительского" класса. Таким образом, нам не нужно в классе "Враг" заного прописывать ему методы "Ходьбы" "Атаки" и "Каста заклинания", его экземпляр сможет сразу пользоваться методами "родительского" класса. Но в классе "Враг" мы можем добавить метод, который может быть свойствован только классу "Враг".
>>1455939>Класс - это объектА объект - это экземпляр класса, то бишь класс - это экземпляр класса или объект - это экземпляр объекта.
Антоны, стоит ли юзать такую модель, как у Рихтера, если я могу отправить на сервак множество запросов?Они все будут обрабатываться один за другим или порядок может быть нарушен?Я общаюсь с серваком двумя запросами, один на загрузку файла, другой на вывод текста, как это лучше всего реализовать?
>>1456126Просто фишка в том, что второй запрос я отправляю после того, как мне сервер вышлет ответ на первый и если я отправлю сразу 3 запроса последовательно, то ответ на один из запросов может прийти раньше.
Во всех вакансиях к юнити указывается "умение писать высокопроизводительный сетевой код". Это что такое, и где можно изучить?
>>1455950Если не можешь объяснить значит закрой рот, а не учи ньюфагов неправильной терминологии, а потом выебывайся на поправки, даун.
>>1456198Ну я вот нуб. И в геймдевелоп не собираюсь вкатываться, но все равно интересно, что именно подразумевают под этим требованием. Асинхронный сервер?Минимальное количество передаваемой информации в канале для синхронизации состояния?Если так, то где про это можно почитать для общего развития
Братья котаны, подскажите плез есть две книги троельсона C# 6.0 и C# 7.0. В 7.0 в конце добавили немного про .net core, однако даже с ним почему-то страниц выходит меньше чем в шестом. какую выбрать?
>>1456202если вкатываешься, то для тебя нет разницы, разве что потом про интерполяцию строк почитаешь
>>1455871Там же мало видео и канал мертв. Вопрос в том, почему додики смотрят видео, вместо обучения через учебники?
>>1456267>мало видеоты хоть до рефлекшина осилил?>смотрят видео, вместо обучения через учебники?а что, одно другому мешает? Или у тебя с логикой проблемы?
>>1456379Сегодня тоже начал это читать, из этой хуйни ты можешь понять что есть у майкрасофт в дот нете утилита ildasm.exe которая кушает скомпилированное приложение просто ехе файл и показывает внутрянки. Если ты с нуля то не думаю что тебе нужно в это вникать прям сейчас. Можешь пропустить до установки IDE и уже вернуться к тем темам когда понадобится.
>>1456387Спасибо большое.Я всё тот же онон, смотрящий Хачатура (уже успел сделать говноприложение по его видево, меж прочим)
>>1456389Я тоже его смотрю, ещё extremecode смотрел, но сейчас на ХА переключился он ламповее что лина 15 уроке ща
>>1456392Вот я торможу, потому что паранойя не даёт его нормально смотреть. Типа, сначала текст, потом Хачатур.Но это тоже заёбывает, ес чесна.
>>1456394Ну я с видосиков начинал, слепил калькулятор. Он правда без ооп без нихуя, совсем кривой внутри. Но по функционалу как в винде обычный
>>1456398И я не понял, почему нельзя было это загуглить, чёрным по белому всё написано ясно и понятно.
>>1456407Учить винформы на C# для ентерпрайза тоже самое что учить PyQt. Формочки нужны для личного развития и небольших поделочек под себя
>>1456423В решёточках хочу чета клёвое делать. Чё там ваще делают?Там вообще что-то делают? Главное не сайты, сайты в рот ебал.А ещё можно всякое говно для старой-старой игры замутить, я думаю.
>>1456422Мне кажется что с таким хайпом будет перегруз этих вычесляторов. И если в случае с тем же JS сайтики нужны всем, то просчет вероятнотностей дяде васе с подъезда не нужон, а значит научпокеры пососут и дружно пойдут в девопс
>>1456425>На WinForm и WPF Делают програмки на твой комплютер чисто установил и радуешься.>ASP.Net и Asp.net core Ента WEB, по факту основная сфера в шарпе>ну Unity еще игоры делают А ИЩО в C# пишут что-то для Финансов и банков типа трейдботов наверн я не ебу. Но Java в этой сфере доминирует
>>1456431Почему именно WinForm и WPF?Чем отличаются? Нахуй их сделоле?Про веб не упоминай, тому что я в это говно не полезу.А про игоры: ну да, юнити-хуюнити, но есть Game Maker со своим gml, синтаксис которого схож на решётки.
>>1456435Ну типа ВинФормочки если я не ошибаюсь еще с C++ Существуют. Ну и типа они попроще и более деревянные такие. А ВПФ ето модна стильно оригинально, но иногда криво
>>1456444Ты походу сам себя переиграл, ток не йобнись тут. Ты нам еще нужен, будем с тобой поднимать сервера на ASP в Рашке
>>1456449Универсальная платформа Windows (UWP) – это специальная платформа для создания приложений на Windows 10. Вы можете разрабатывать приложения для UWP с помощью всего одного набора API, одного пакета приложений и одного магазина для доступа ко всем устройствам Windows 10 – ПК, планшета, телефона, Xbox, HoloLens, Surface Hub и других. Легче поддерживать несколько размеров экрана, а также различные модели взаимодействия, будь то сенсор, мышь и клавиатура, игровой контроллер или ручка. В основе приложений UWP лежит идея, что пользователи хотят, чтобы их работа, их задачи были мобильными через ВСЕ устройства, чтобы можно было использовать любое устройство, наиболее удобное или производительное для конкретной задачи.UWP является гибким: вам не нужно использовать C# и XAML, если вы этого не хотите. Вам нравится развиваться в Unity или MonoGame? Предпочитаете JavaScript? Не проблема, используйте все, что хотите. У вас есть настольное приложение C++, которое вы хотите расширить с помощью функций UWP и продавать в магазине? И тут все будет работать.
>>1456451>Шindoшs СтореЗвучит как тематический клуб для людей с отклонениями. Люди вообще профит с ЮВП имеют?
Бля, я смотрю на вакансии: просто нихуя нет.Тут есть люди, работающие с другими человеками в офисе на решётках?
>>1456459Ну так новая технология )0Но это реально как-то мне ничего не пояснило. Вакасний мало из-за чего?
>>1456466Во ты пользуешься виндовс стором? Я нет, я его вообще выпилил нахуй из винды чтоб не вздумал даже
>>1456471Хз мб в 21 году стрельнет Core и тогда польются вакашки на тырпрайз, но это надо подождат пока
NOPESAL PRILOZHENIE WINFORMS@СМОТРИШШ ХАЧАТУРА@ФАПАЕШ ТРОЕЛСОНАУ@В ПОРЫВЕ СТРАСТИ ЗАХОДИШЬ НА СОСАЧ@УСТРАИВАЕШЬ ШИЗОИДНЫЙ ПИЗДЕЦ В ГЛАВ.ТРЕДЕ РЕШОТОЧЕК@СХОДИШЬ С УМА, НЕ ПЫНЯМАЕШЬ, ЗАЧЕМ ВСЯ ЭТА ХУЙНЯ ВООБЩЕ НУЖНА@ПУК@СРЕНЬКкстати, на гифке моя прога ет самое даСоветуйте, чё дальше делатьещё не прочытал троелсона, ес шо
>>1456489Я НЕ ПОЙДУ БЛЯДЬ В ВЕБ НЕ ПОЙДУ В ВЕБ НЕ ПОЙДУ НАХУЙЯ НЕ МАКАКА Я НЕ МА КА КА ПОВТОРЯЮ Я НЕ МА КА КАК СУКАА
>>1456492СССССССССССССССССССССССССУКАААААААААААААААААААААААААААААААААААААААА>>1456491а нахуя?он же (рычаг) не продвинет меня в скилле ну ты понел
>>1456494Аа ты про скилл спрашивал, я думал что ты хочешь допилить свой софт, ну лана. Калькулятор уже делал? Запили тетрис в окошке, отработаешь отрисовочку
>>1456498>Не делал калькуляторЛично мне с нуля было сложно его слепить чтоб несколько действий в раз считал. >Тетрис в Visual Studio Ну так чисто по преколу, JSеры же делают змейку в бразере и ничо.Я думаю если постараться, то тетрис даже красиво выйдет.
Может начать валерьянку хуячить перед тем, как садиться Тролльсоена читать?Чёт я гиперактивен.>>1456499Я уверен, мне для этого нужно знать некоторые числа/переменные/цифры бля, ет самое, ёбана.А я ж не знаю нихуя.
>>1456500Если хочешь нудно как в школке на уроках было, то садись читать трольсона.Если хочешь попроще то видосики твой выбор. Для совсем базовой хуеты самое то.Но потом для углубления знаний один хрен читать придется что-то.Ну и гугл с ютубом в помощь. НИПОНЯТНА -ЗАГУГЛИЛ Ток в дебри всякие не лезь типа "как сделать компилятор самому за 15 минут"
>>1456502Мне неприятно читать книги бля на компе, потому что в Adobe Acrobat работает ёбанный cleartype, который НАХУЙ ВЫРЕЗАЕТСЯ СУКА БЛЯДЬНу и тёмная тема не робит, хз почему
>>1456506А на мобилку скинуть нельзя что ли?Еще можно на бумаге купить, но там цена чет ай-яй у меня в срани 3500руб книга
>>1456510ваще можно, но я такой пизданутый, что с телефона я тоже не умею читатьВ смысле, умею, но нужно закинуться валерьянкой и не сдохнуть от скукоты.ещё мешает такая хуйня: я типа не знаю, чего хочу от погроммирования, вернее от решёток
>>1456511Вот в первую очередь определись лучше и вакансии посмотри у себя в городе на шарпе чего предлагают вообще, а то потратишь год и потом будешь работать в пятерочке
>>1456514та там одно говно ёбанное, макак ищутно я прост не люблю сайты делать, это ваще унизительно, нахтаким действом жидов унижали в третьем рейхе, меж прочима ты прикинь, если в 2021 чё-та-там ёбнет и будет десять тыщ вакансий? ето же пиздец!
>>1456516Ну прям пиздец бабаха по вакансиям не будет это точно. А вообще сейчас много чего в Веб уходит считай процентов 60 в программировании это Веб, вот и подумой теперь может и не надо тебе оно совсем
>>1456534>>1456533ДВА СМЫЧКА, ИДИТЕ НАХУЙ КАРОЧЕЯ БУДУ ДРОЧИТЬ СИ ШАРП И СТАНУ ГЕЙ-ШЛЮХОЙВ РОТ ЕБАЛ ВАШ ВЕБ В РОТ ЕБАЛ В РОТ НАХУЙ В РОТ СУКАНУ ИЛИ В ЖОПУ
>>1456537Есть только по количеству программиздов вообще ну и сразу скажу что тут стат по американцам и еуропке
Поясните за базовое присвоение значений при инициализации примитивных типов. Это конструктор проводит инициализацию?
>>1456550От силы 40 постов насрали, че ты. И вообще в чем проблема? Абу квоты выдает на перекаты или что?
>>1456551Шел 2014 год, я решил вкатиться и по совету бывшего одноклассника купил учебник по PHP и начал осваивать первые страницы. Потом залез в паблик ВК "Типичный погромист" (facepalm) и увидел 10+ постов о том, что PHP мертвый язык, #скоросдохнет etc.2019 год - Ожидение - реальность
>>1456562QA = 558 пиздецPHP не мертвый, пока что, но старое переписывается если есть смысл. А новое на пхп пишут меньше чем раньше
>>1456562>>1456564Ну и забыл сказать что выгодно нанять себе дядю пхпхера который согласен на среднюю зп, вместо зумера на node.js с требованиями 300к/сек
Хеллоу анчоусы, подскажите пожалуйста, как можно посмотреть списочек доступных библиотек и фрейморков для шарпа, гуглил и не нашёл.
>>1456548посмотрел не нашелпервое окно - инициализация int i в классе Programmвторое окно - инициализация int b в методе MainНигде конструкторов типа int я не вижу
>>1456564>QA = 558 пиздецПод QA и обычных тестировщиков пишут. Сам работал как Junior QA, но по сути в ручную всё тестил
>>1456587Всё равно их так много, а ещё у тебя вакансий шарпа больше чем джавы. Ты не из РФ да? Забери меня))
>>1456585да>первое окно - инициализация int i в классе Programm>второе окно - инициализация int b в методе MainЭто работает только с примитивными типами, но ILDasm это не показывает (или я не знаю, где смотреть)
>>1456595В глаза долблюсь соре, не знаю чем тебе помочь, для чего тебе такие штуки вообще понадобились? интереснинька
>>1456490Ты придурочный какой-то, веб в 2019 это стандарт уже, вытесняющий нативные приложения на десктопе. Натив нужен только для игр, тяжёлых приложений типа Фотошопа, приложений которые ставят упор на производительность и скорость, ну и собственно всё.Можешь ещё в мобилки пойти конечно или драйвера писать, да.
>>1456624Я тут пару тредов назад искал решение UI для шарпа, кроссплатформенное. Мне и авалонию уже советовали. А вот вопрос, есть решения с веб-верствой в отдельном окне? Полагаю тоже будет кроссплатформенно же.
Добрый деньОТписался в соседнем треде, но спрошу и тут у знающих анонов.Может знаете, как обстоят дела с шарпом в европе? Через пару месяцев ждет релокация, после чего хочу дропнуться работу (~год-собственно, время для освоения) и вкатиться в backend или игры (но это слишком влажные фантазии). С погромированием знаком в целом и намерен вкатываться.Спасибоps в гугле пишут, что с джавой лучше, и что с вашим ЯП лучше пидорить в сторону США, как же
>>1456624Ты чё такое несёшь, на /b сказали, что веб-макаки это низший сорт программиста. Мне как теперь сюда вкатываться?
Знатоки ASP.NET MVC поясните за обработку исключений. Я когда писал на WPF - я создавал отдельную библиотеку типо MessageService и создавал внутри классы под каждый Exception всех сортов радуги при Windows.Forms. В VM методах в блоке Try-catch вызывал классы MessageService. А что делать с MVC архитектурой? Все методы, которые обрабатывает контроллер создавать как минимум с одним выходным параметром типо Message? Взываю к вашей силе.Валидацию модели знаю как делать, вопрос в реквестах как на пике - типо 403, 404 etc
Простая сериализация одного объекта вроде бы понятна - передать объект при сериализации, привести полученный объект к нужному типу после десериализации.А если два объекта разных типов? А если сотня? Пихать их все в один объект и его потом (де)сериализовать?Алсо, как быть с коллекцией объектов, тип которых явно реализует ISerilizable, когда объект, получаемый при десериализации, передаётся в конструктор десериализация реконструированием? ? Полученный объект ведь не проитерировать, чтобы последовательно воссоздать объекты.
>>1456624> веб в 2019 это стандарт уже, вытесняющий нативные приложения на десктопе.Электронное приложение дискорда - лаганное говно, 0,5-1гб оперативы.Обычная приложуха дискорда на qt, быстро, 19мб оперативы.Собственно по этому, веб так и останется говном собаки. Потому что работать туда идут, как правило, одни дегенераты.
>>1455468 (OP)>недавно вышел новый компилятор, шестая версия шарпа, и уже активно разработывается седьмая.Ну ты понел
>>1456808MVC изучить только в планах, сейчас SQLЯ даже не понял, что ты хочешь — исключения тупо в коде ловлю. Но сейчас у меня задача показать любой код, главное, чтобы он соответствовал ООП и был красивым. Показывать буду свою пет-какаху, которую написал на WPF. Так что мне очень интересно, о чем ты говоришь
>>1455485Вот именно потому что все хипсторы выбрали жабу и жабаскрипт и заодно зафорсили у себя в коммифорнии, что микрософт и его продукты говно - на дотнете в разы меньше конкуренция и поток людей на вакансию. Поэтому сильно проще найти работу.Плюс, шарп охуенно читабельный язык, интуитивно понятный, плюс статическая типизация. С++ и ЖС - уродливое, нечитабельное говно начиная с конвенции по написанию кода.
>>1456873так сложно загуглить?ASP.NET Core is a cross-platform, high-performance, open-source framework for building modern, cloud-based, Internet-connected applications. With ASP.NET Core, you can:Build web apps and services, IoT apps, and mobile backends.Use your favorite development tools on Windows, macOS, and Linux.Deploy to the cloud or on-premises.Run on .NET Core or .NET Framework.
Так, стоп, получается что АбстрактФактори - это тот же ФакториМетод, но с несколькими методами внутри одного класса, и ее продукты связанны логически?
>>1457015логики в контроллере нет, только экземпляры классы для реализации методов. Я вот тоже подумал об редиректе на View с ошибкой
Поясните за кошерное тестирование проекта. В TDD смотрю используют Moq, но блять Get Start сколько не читаю, вообще не отбиваю дупля.Вот пример - у меня вот такая сигнатура метода:public List<Request> GetSiteMaps(string site)как мне его проестировать? создавать фейковый лист с N объектами типа Request? НИХУЯ НЕ ПОНЯТНО
>>1457015кстати по поводу гавно-архитектуры. Context от EF выносят в отдельный класс или кидают в контроллер? Всегда интересовал этот вопрос
Если сериализовать инстанс типа с атрибутом [Serializable], то после десериализации возвращается object, который надо привести к изначальному типу, верно?Если же это будет коллекция (например List<T>), то опять же десериализация вернёт object, который надо привести к List<T>, так?А каков алгоритм десериализации коллекции типа, реализующего ISerializable? Я так понимаю, что BinaryFormatter.Deserialize() итерирует сериализованную коллекцию и последовательно создаёт новые инстансы через конструтор с сигнатурой (SerializationInfo, StreamingContext) - по крайней мере у меня так получается.И как тогда "работает" десериализация в первом случае?
>>1456823для обработки ошибок, никто не хочет видеть эксплоит у себя на странице, лучше это сделать в общей стилизации с намеком пользователю, что он что то сделал не так, как нужноВ WPF просто создаешь отдельный проект и там лупишь отдельные формы представления под каждую нужную тебе ошибку. В ASP.NET MVC, как мне от части подсказали и частично додумал сам - в каждом методе контроллера в блоке Try-catch делаешь редирект на метод для обработки ошибок
>>1457156Context от EF в идеале должен бить в своем проекте(DAL), вся логика в бизнес уровне (BLL), по отдельних проектах. Также каждий проект должен иметь свои модели, тоесть бизнес уровень ничего не знает от тго где его будуть использовать, епта.
>>1457365Еще вопрос, в т.ч. ко всем антонам, которые занимаются разработкой на ASP.NET MVC. Какой архитектурный паттерн самый популярный? (Имею ввиду Onion/Unit of Work etc)
Где можно почитать про структуру приложения? Куда сохранять, названия элементов (например названия для интерфейсов надо начинать с I).
>>1457436> названия элементов (например названия для интерфейсов надо начинать с I).Конвенции языка> Какой архитектурный паттерн самый популярный? Тото что скинул, многоуровневый шаблон.>>1457413> Откуда картинка?Загуглил.
Для антонов из /pr/ именно .NET есть предложение. Я довольно часто создаю посты по ASP.NET MVC, где обсуждаю проблемы/вопросы связанные с данной технологией. Попутно я пилю пет-проект, периодически заливая его на Git.Что насчет того, если я пасмаплю в /pr (возможно в /b/, но это сомнительно) свой пет проект, а аноны со всех щелей досок поучаствуют в таком себе опен сорс проекте, может даже сделают пару пул-реквестов и заслужат этим галочку в своем CV. Обмен опытом в реальном проекте - это обучение в х10 темпах, чем по учебниках или туторах.Для более скиловых, которые уже вкатились - повод поделиться опытом/знаниями ну или потрясти писей с другими анона и направить их на путь праведный.Ваши идеи и предложения? (Если пост наберет хотя бы 5 комментов, опишу дальнейший алгоритм взаимодействия)
>>1457401> ASP.NET MVC.>MVC>MVC>Какой архитектурный паттерн самый популярный?>>1457155>как мне его проестировать? Ну он же что-то делает? Вот и передавай ему тестовую строку и проверяй, соответствует ли результат ожиданиям. Тут мокать нечего.
>>1457129>АбстрактФактори - это тот же ФакториМетодНу как бы да, но нет. ФМ тебе выплевывает объект, АФ всю иерархию объектов>>1457305Сериализатор сохраняет всю информацию о типах и весь граф объектов. Обжект возвращается исключительно потому, что на этапе компиляции неизвестно , что именно будет десириализованою
>>1457536>MVCПод спойлером - (Имею ввиду Onion/Unit of Work etc)>тестовую строкуМетод генерирует 20+ объектов, которые включают в себя 5 полей. В Assert же не буду это совать. А проверка на null - это тухло.>Тут мокать нечегоА что мокают тогда? Вчера впервые узнал об этом фреймворке, пока не вдупляю его предназначение.
>>1457434А чому Newtonsoft JSON лучше? Я правда не понимаю. Пользовался всего один раз сериализацией, брал искоробочный вариант, просто подставив перед интересующими полями или классами [Serializable что-то там]
>>1457556>Onion/Unit of Work Это уж от проекта зависитА что мокают тогда? Зависимости класса. Например класс для получения данных использует репозиторий, который тянет данные с удаленной машины, на которой ответ генерируется на основании данных БД и лунного цикла и... Даже если твой метод Foo() написан правильно, то сбой в любом месте цепочки приведет к краху теста, да и вообще незачем тянуть всю эту лабуду для проверки Foo(). Поэтому делают мок репозитория, который гарантированно вернет заранее известные данные, бытро и без боли. >>1457556>Метод генерирует 20+ объектовМожет он дофига детает? Один метод - одно действие. Вообще TDD подразумевает сначала написание теста, а потом уже код. Если ты сначала написал код, который не тестируется, ну что ж, переписывай.
>>1457597> А чому Newtonsoft JSON лучше?Он предоставляет универсальный, быстрый и простой интерфейс для сериализации твоих объектов в современный, лаконичный, быстрый, понятный как человеку, так и машине формат JSON.Охоспаде, я пиаром чужого софта занимаюсь, лол.
>>1457498Апаю вопрос (Сириосли? Или тут все .net core дрочат? Да и к тому же практически идентичные технологии)
>>1457660Я, например, залётный из /gd/ ощутил слабость маняскриптов и начал изучать шарп, чтобы получить мощь в свои руки. Ентерпрайз ваш мне и даром не нужон.
>>1457675Или если не будет то покидайте плиз идей для пет проектов на асп коре или апи чисто гит набить, а то все вроде бы знаю а идей нету. не выкладывать же 140+ хеловорлдов где я тестил что учил.
>>1457712можете тебе еще сразу оффер кинуть?>>14576695 заинтересованных человек это условие по твоему? Для совместного проекта нужны хотя бы 2-3 человека, цифра 5 - это для отсева половины, которые только Hello World умеют писать>>1457675ты пока первый, если еще 4 человека отпишут - скину дискорд канал
>>1457727Гугли "строка подключения MS SQL server" она нужна для подключения к БД. А дальше делаешь команды или через EF или в сырых SQL-кверях.
>>1457727Теперь иди учи SQL и пиши запрос. Когда освоишься возьмешь ORM-ку и будешь работать с базой через нее, чтоб не пердолить запросы руками.
>>1457730>>1457732>>1457733Мне вот это тестовое надо сделать. Изучать теперь EF core что ли, когда я уже всё сделал?
>>1457736Да. Когда они увидят, что ты свободно оперируешь фреймворками и подключил нужную либу самостоятельно, вместо того, чтобы ебаться со старпёрским сикелем, они сразу тебя на работу возьмут.
>>1457736Ну что-то учить придется, лол. Если у тебя там ничего сложного, то за вечер разберешься. Если таблицы с хитрыми связями и нужно сделать хитрую выборку, то сорян, придется поебаться.>>1457737Тяжеловесная бандура, которую чел использует на 1%, но ресурсов сожрет наа 146%.
>>1457498Предлагай. Я только закрыл Рихтера и открыл АСП НЭТ КОРЭ ИН ДЕПТХ (с примерами, между прочим)
>>1457723>Аноны го пилить петпрожект вместе я тут делаю потихоньку>Покажи >Нет не покажу, может тебе ещё оффер...Ну и пошел нахуй имбецил
>>1457365>>1457599Блин годные советы ты дал, как раз нагуглил про DAL на метанит, сейчас буду переделывать проект с нуля (в том числе разделения функциональности объектов). Еще раз спасибо.>>1457750>>1457675До субботы сделаю рефакторинг, накидаю Task-ов на гит хаб, создам дискорд канал и скину в этот тред.
Завтра первое мое собеседование на асп дотнет, да и в целом первое было несколько формальных собеседований там, куда брали по знакомству, но там уже до встречи 80% решено было.Есть советы от опытных как пережить этот час позора?
>>1458019Так хули, чтобы переставать позориться нужно скиллы пиздежа прокачивать, а для этого надо всё равно ходить на собеседования.Город писал в прошлом треде, Екб.
По моему большая сложность в изучении .NET это в огромном количестве библиотек, https://docs.microsoft.com/en-us/dotnet/api/?view=netframework-4.8Это как если бы в вашем городе было 100 библиотек, в каждой из которых было по 50-100 не повторяющихся книг.
Читаю на метаните про 3 уровневую структуру приложения - DAL, BLL, PL (Presentation Layer) и у меня встал вопрос: Во всех трех прослойках создаются сущности (практически идентичные). Зачем это делать? Неужели нельзя сразу передать данные из одного уровня в другие? Зочем?
Шарпоёбы, что предпочтительнее в вашем языке:public override String ToString()илиpublic static implicit operator String(Classname t)?В моей любимой джаве у нас только тустринги были, выбора не стояло. Как у вас принято?
Эх, аноны, не прошел на единственную галеру в моем хохломухосранске, сказали тестовое недостаточно хорошее. Можете кому нефиг делать обосрать код, показывая где я налажал? Там небольшая консолька для мультипоточного сжатия/разжатия файлов с кастомным подобием пула потоков.Задание: https://pastebin.com/v9wm1ytXРеализация: https://github.com/Anon1457675/CompressionTestМой репорт по заданию: https://pastebin.com/Dad7LxqU
>>1458362Все ебашат тустринги. В особых случаях есть статик класс Convert с методом ToString(чотатам)
>>1458362ToString(). У этих способов разная семантика, тустринг - класс выводит информацию о себе, о своем состоянии. implicit/explicit - это преобразование типов.
>>1458383Это по твоему ООП и Dry? 0 Интерфейсов, метод меин на 100 строк с реализациями, 0 комментов, 0 тестов, раздутые методы. Где блоки Try-catch-finalize?Зачем в регионы скрывать 1 экшен хендлер или константу? Что это блять за Return 1 в методе меин? Я хз, что за какашку ты скинул, но в нее палкой можно тыкать очень долго.
>>1458236Ясно же сказано, запердолить SQL запрос. Никаких ЕФ тебе не нужно.https://www.db-fiddle.com/f/jQhknK2hPdPcPVL16ftMEZ/0И скажи, чтоб меня взяли на галеру вместо тебя.
>>1458425>0 ИнтерфейсовОни излишни там, хотя в одном месте стоило бы, действительно>метод меин на 100 строк с реализациямиТут согласен, надо было запилить что то типо UIManager'а>0 комментовКоментами не покрыты только 1 класс для хранения данных, состоящий из 2 полей и сам компрессор. Компрессор стоило бы покрыть, согласен. >0 тестовРазве тесты входят в тестовое задание если это явно не указано? >раздутые методыСамый большой метод (пикрил). Не понимаю как переписать чтобы было не раздуто? Вынести действие цикла в отдельную функцию? Общая сложность кода не поменяется, так как он по размеру меньше экрана.>Где блоки Try-catch-finalize?На пикриле. Я все ошибки перехватываю и передаю наверх вызывающему методу, а в UI они не нужны, так как невалидные данные это не исключительная ситуация.>Зачем в регионы скрывать 1 экшен хендлер или константу?Для быстрой ориентации>Что это блять за Return 1 в методе меин?Это требование к заданию, возврат программой 0/1.>>1458453А можно поконкретней? Я сюда писал не для того что бы понять что я днарь, а для того что бы понять почему.
>>1458482> экран У меня хорошо если 20 строк влезет7681368Извини, не очень шарю, нечем дополнить. Но я бы добавил внедрение зависимостей и тесты, все же это единственная вакансия
>>1458484>внедрение зависимостей и тестыНу DI здесь это стрельба из пушки по воробьям, а тесты может действительно надо будет делать к тестовым.>все же это единственная вакансияТак я ее уже просрал.
>>1458455Да я так и думал, просто как получить запрос, когда уже всё сделал - без понятия. Не переписывать же всё в ручную?Но спасибо за код ;3
>>1458489Так цель в том, чтобы выпендриться своими знаниями? В этом ведь суть таких лаконичных заданийЯ в похожем положении, так что размышляю, как лучше сделать
>>1458482>Они излишни таминтерфейсы - излишни. Зачем тебе тогда ООП вообще? Хуярь все монолитом в функциональном стиле>Разве тесты входят в тестовое заданиеКачаю я проект, первый раз вижу этот калл, как я пойму, что работает, а что нет? Или мне все строки кода вычитывать? А запуская тесты (где названия методов дают понять, что выполняет метод) я вижу, что и как работает>чтобы было не раздуто? должна быть логическая инфраструктура кода>Это требование к заданиюЧерез точку входа выдавать результат? Ты ебнутый?И как ты это говно из жопы запускал, если через дебагер VS у меня проскакивает к return 1, а при сборке эксплоит?
>>1458526> И как ты это говно из жопы запускал, если через дебагер VS у меня проскакивает к return 1, а при сборке эксплоит?Охуенный тестировщик. Пойдёшь к нам в студию?мимоэйчар
>>1458526>Через точку входа выдавать результат? Ты ебнутый?А в чем проблема? Вполне стандартный способ уведомить о результате работы программы. Даже если ты делаешь войд мэйн оно автоматом ноль возвращает.https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/main-and-command-args/main-return-valuesмимокрокодил
>>1458534>ноль возвращаетвозвращает Null и закрывает контекст выполнения приложения>>1458528тестировщики не люди
>>1458534уже дочитал - If void is returned from Main the exit code will be implicitly 0но пихуй, сути не меняет. Впервые увидел такую порнографию (в консоли только hello world писал)
>>1458526>Зачем тебе тогда ООП вообще? Хуярь все монолитом в функциональном стилеООП принципы нужно применять с умом, а не пихать интерфейсы на каждый класс.>Или мне все строки кода вычитывать?Я в репорте написал алгоритм словами, но мы не умеем читать.>Через точку входа выдавать результат? Ты ебнутый?Опять не умеем читать, ЭТО НАПИСАНО В ТРЕБОВАНИЯХ К ЗАДАНИЮ>И как ты это говно из жопы запускал, если через дебагер VS у меня проскакивает к return 1Это говно запускается через консоль и принимает аргументы оттуда же и это НАПИСАНО в описании.
>>1458571>ООП принципы нужно применять с умомТак-то да, а теперь сходи посчитай количество классов FCL, которые не реализуют интерфейсов. Они есть не просят, и лучше чтоб они были.>>1458571>Я в репорте написал алгоритм словамиТесты больше показывают как пользоваться, а не какой там алгоритм. Плюс тесты не врут, а описание может быть устаревшим. мимокрокодилИ как тебе уже намекали, от тебя хотят демонстрацию знаний ООП, о чем в задании написано, их ты и должен был показать (одно из).
>>1458571да я смотрю ты знаток ООП, знаешь где нужно его применять, а где нет. А что в колбеке от работодателя вычитал? Почему не взяли?P.S. Собрать свою какашку в Setup, чтобы получить .exe файл занимает 2 минуты. Даже если запускать с билда твоего проекта, получается как на пикеP.S.S. Только не говори, что ты это 4 дня делалhttps://github.com/Vailucory/GZipCompression
>>1458383>хохломухосранскевообще хз, нахуя я вообще тебе советы давал, если ты так свой город и страну называешь. Таким токсикам только в маке "Вiльна каса" кричать
>>1458595>А что в колбеке от работодателя вычитал?>Привет твое задание не из лучших, спасибо за попытку>получается как на пикеПроебался с валидацией. Вот и тесты вылезли. Там надо входной и выходной путь прописывать. И вместо ИЛИ прописал, позор> Только не говори, что ты это 4 дня делалДелал за день, ждал пока ответят пару дней.>>1458601А как назвать город 25К человек в Украине? Никогда не вкладывал токсичнось в слово "мухосрань" или "хохлы", зато примерно передает мое положение.
>>1458585> от тебя хотят демонстрацию знаний ООП, о чем в задании написано, их ты и должен был показать (одно из)И как он должен был показать?Реализовать абстрактный класс Compressor, от него унаследовать GZipCompressor, а потом ещё, чтобы точно перезвонили, создать интерфейс IAsyncParallelThreading в котором описать те методы, что касаются трединговой части задания и GZipCompressor чтобы реализовал этот интерфейс?мимокрок
Можно ли что-то сделать с перегрузкой для интерфейсаВот у меня одна функция для нескольких классов, но там разное кол-во параметров для его реализации (в первом классе 1 параметр, в другом классе 3 параметра).В интерфейсе мне не понятно что указать. Но я указал 1 функцию в интерфейсе, для 1 класса хорошо подходит, а для другого благодаря throw new добавил ещё 1 функцию. Не знаю, так нормально сделать или хуйня какая-то?
>>1458198Оффер дали, теперь надо переезжать из своей мухосрани.Вопросов дохуя штук 80 лол, без преувеличения, сидел полтора часа с этим, треть по базовым вещам типа инкапсуляции и боксинга, четверть где-то по скл (завалился совсем на транзакциях, но вроде похуй в целом), ещё немного по фронту спросили на всякий, ну и штук 10 по аспнету - связывание данных, хелперы разора, чуть-чуть линка ту энтитис, бандлы.Ну и несколько мелких задач на понимание. Например, типа, есть сложный алгоритм который должен по двум полям формы вставлять данные в третье поле, твои действия. Спросил важно ли скрыть детали реализации, если важно то разместить на сервере и обращаться аяксом, если нет то тупо жсом событие на форму и функцию вызывать.Вопросы про цели, последние прочитанные книги итд не упоминаю ужеВ целом на удивление адекватно, поправляли и поясняли за то что не знаю. Видимо перечитал перезвоним-треда и ожидал худшего, а может повезло, тем более собеседовали лид и другой кодер.PS чел который в контур пробовался, что там, или ещё тестовое пилишь?
>>1458819на позицию ASP.NET dev?По Js много дрочили? вообще знаешь ли его?>есть сложный алгоритм который должен по двум полям формы вставлять данные в третье поле, твои действия. Спросил важно ли скрыть детали реализации, если важно то разместить на сервере и обращаться аяксом, если нет то тупо жсом событие на форму и функцию вызывать.Их этот ответ устроил? Я думал они будут спрашивать за реализацию, а не за размещение...
>>1458822>на позицию ASP.NET dev?this>По Js много дрочили?Не очень. Скорее знаю чем нет, на вопросы ответил.>Их этот ответ устроил?Там не было самого алгоритма, именно как архитектурно это организовать. Ну там чуть глубже, спросили еще где именно функция на сервере, почему не в контроллере а в отдельном классе (потому что юниттестинг + потому что архитектура + разделение ответственности). Видимо для уровня ждуна достаточно.
>>1458825JS сам по себе по сравнению с шарпом детский сад (имо), но блять от кол-ва информации по ASP.NET (с тоннами библиотек и архитектурных прослоек) голова кругом идет.Энивей, молодец анон. Удачи пройти испыталку.
>>1458829>но блять от кол-ва информации по ASP.NET (с тоннами библиотек и архитектурных прослоек) голова кругом идет.Я думаю мало где досконально кишки спрашивают. У сеньора, возможно, и могут поинтересоваться, как бы он реализовал эту-то хуйню на 8-ом уровне абстракции, но джуну нужно уметь пилить веб-приложухи в первую очередь. Но это мой опыт и опыт знакомых, устраивавшихся ждунами на другие фреймворки-языки. В отрыве от собеседований - согласен, но это со всеми крупными фреймворками так. Пробовал спринг немного, вот там абстрактные бобы из фабричных методов синглтонами погоняют на 20 слоях архитектуры, в ужасе вернулся к изучению ASP.NET.>Энивей, молодец анон. Удачи пройти испыталку.Tnx
Антоны, есть ли какая-нибудь модификация datagridview?Я хочу, чтобы можно было менять ширину не всего столбца, а отдельной строки, как это можно делать в html таблицах.
Как вы думаете, какой язык учить следующим? Я питонщик.Меня интересует раст, классная и хайповач штука, я бы с радостью часть вебприложения на микросервисах перетащил на раст.С другой стороны, раст крут, но работы на нем нет и не предвидится. Второй кандидат эрланг, хорошо зарекомендовавший себя старичок для веба.А с третьей стороны, тянет в C#. Наконец-то кроссплатформенный, игры, настольные приложения, мобильные - все чего нельзя сделать на питоне можно на нем.
Хочу вкатится в програмирование с си Шарпа,в основном буду заниматься гейдевом(да да юняте) но хотелось бы как-то обеспечить будущее а программисты и прочие хакеры неплохо живут,киньте материала для самых тупых и маленьких с чего вкатыватся(киньте книг что-ли или чего-то подобного(желательно на руском языке))
>>1458896Троэлсен, Джепикс - Язык программирования C# и платформа .NETА вообще это всё здесь есть. >>1455469
>>1458896Если читать Троелсена, то думаю достаточно будет первые 13 глав. А дальше уже лезть в Unity API.
Антоны, статические классы же не диспозятся из памяти?Если я хочу написать класс с методом, в который я буду засовывать строку текста, отсылать ее через запрос и получая ответ оборачивать его в список, то мне статика вообще не нужна, верно?
>>1458348>у меня всталПочти одинаковые, потому что пример максимально простой. Ну а главная польза в разделении. В дальнейшем изменяя что-то в одном слое изменения не просачиваются в другие.>>1459347>не диспозятсяЗначение знаешь, аль для красного словца вставил?>>1459347>мне статика вообще не нужнаЕсли писать код нормально, то статика вообще редко нужна.
>>1459358А зачем на моем примере могут понадобиться интерфейсы?Я их только в связке со всяким БД кодом видел, если у меня класс с методом, через который я посылаю запрос, получаю ответ и оборачиваю его в лист, то интерфейсы могут понадобиться?Чет я совсем подзабыл сишарп.
>>1459358>Значение знаешь, аль для красного словца вставил?Знаю, статические классы и поля остаются в памяти?
>>1459363>ЗнаюТогда в чем смысл вопроса >статические классы же не диспозятся из памяти?>>1459361Ну смотри, у тебя есть клиент, которому нужен этот лист, вот уже можно сделать интерфейс ISomeListProvider, прикручиваешь его через DI к клиенту. Потом создав наследников интерфейса ты сможешь пенять это провайдера на ходу в зависимости от положения венеры или каких-то других условий.
>>1459510Я не он, но язык которому требуется виртуалка, байткод. Вообще не выжимает и половину потенциала железа, неэффективная трата ресурсов ПК. Раньше все писали на Си, и все было пиздато. А потому высрали ООП и все пошло по пизде
>>1459512Ты прав. Двачеры кукарекают о том, что в пикабу все следуют за стадом, но сами не замечают, как бугуртят на тех, кто не согласен с их мнением, которое построено на мнении других долбоебов, которые так же навязывают свою идиотскую точку зрения
>>1459527>Двачеры кукарекают о том, что в пикабу все следуют за стадомВсем похуй на твое пикабу, залётный>но сами не замечают, как бугуртят на тех, кто не согласен с их мнениемТочно залётный.
>>1459527>пикабуПикабу здесь вообще к чему? Как вы сюда зашли >>1459512Уходите из лучшего треда на планете, если нет вопросов по языку.
>>1459515Я вообще не макака лол. Я в гейопс работаю, мой коды это говноскрипты для базовых задач. Программирование именно си в свободное время задрачиваю, потому что дико доставляет и гораздо проще чем куча ебанутых абстракций в clr.
>>1459530>виртуалка>кто-то не может в оптимизацию?Вы теперь у нас РАЗРАБОТЧИК ВИРТУАЛЬНОЙ МАШИНЫ, который вообще не ебет что у него там происходит, там вообще ЧЕРНАЯ МАГИЯ В ЧЕРНОЙ КОРОБКЕ. Жс макаки то ладно, они животные им простительно, но походу им придется подвинуться на параше чтобы разработчики виртуальных машин рядом смогли присесть.
1. Двоичные коды - Б-жество во плоти2. Ассемблеры - Сверхразумы3. C/C++ - Архимаги4. Заклинатели виртуальных машин - плебеи, рабы5. Скриптодауны - унтерменши. Цель для пули
Хотел орнуть в голосину, но чот не смешно. Вы хотите узнать, как выглядит троян diztakun.gen по версии касперского? Смотрите же, и тряситесь!
>>1459851Хачатур говорит: "Хотите пользоваться антивирусами, пользуйтесь, но свою голову не выключайте."
Немного не по шарпам - В гите для мерджа проекта с последними апдейтами нужно все время копировать его с репозитория?
Антон, помогай! Есть сайт, который в браузере выдает Html разметку, как на 1 пике. Но блять когда получаю с помощью HttpWebRequest содержимое, качает как на пике 2. Уже перепробовал все, что можно - и юзер агента менял (на сайте в robots.txt стоит allow *, а блять без юзер агента не качает, видимо прокси у пидарасов).Как с этим бороться? Нужен именно код с первой пики
>>1459958Почему разработчик на C# должен ковыряться в веб технологиях, хз я бы принципиально отказался от такого дерьма как гойскрипт
>>1460105Потому, что Javascript IS EVERYWHEREКуда не глянь, в любой вакансии - As plus - react/angular/vua/моча/говно.Даже на позицию ASP.NET могут подрочить по JS (не шучу).А по сабжу моего вопроса - занимаюсь парсингом данных.
Привет, дотнетач, надеюсь, ты достаточно ночнойВ общем, есть одно апи, хочу поиграться с ним и сделать небольшую веб-приложуху, задеплоить её на своей впске через докер и все такое (я полоумный перекатчик с wpf/winforms). Как вообще происходит взаимодействие с чужими рестфул-апишками?Я так понимаю, мне надо получить ключик для авторизации (сделано) и каким-то образом распарсить эндпоинты апишки (есть автоматизированные средства для этого?), которые я затем буду дёргать у себя в коде как обычные методы, и затем приготовить классы-модели, которые будут забиваться из прилетающих жсонов, ну а дальше уже обычный дотнетовский код.Я всё правильно понял, или что-то упустил?Если это важно, то вот само апи:https://bungie-net.github.io/
У меня есть приложение, которое делает много однострочных вставок в бд. Иногда оно начинает захлебываться. Выяснил, что если сделать дбконтекст полем класса, а не создавать его на каждый запрос, то работает гораздо шустрее. Вопрос: можно так делать, если с бд работает только мое приложение? Или можно ускорить создание контекста?
>>1459958Снифер трафика юзаешь? Если нет - поставь обязательно, без него никогда не узнаешь, что не так (мб ты шлешь GET вместо POST или кукисов каких не хватает). Я юзаю Fiddler, брат жив, сайты парсятся
>>1460681не юзаю, обычные HttpWebRequest-ы.Нужно парсить 3 источника. В 2ух все збс, в 3ем такая шляпа, как на пике. Поковырялся и понял, что дело в прокси на этом ебучем ресурсе. И куки пытался передавать, ничего.Сейчас поставил Selenium - окно браузера бота тронул - эксплоит. Зато работаетИ жрет блять 3 окна браузера + апликуха, ищу как ебучий контент отключать
>>1460409Советую почитать про swagger судя по ишакам на жидхабе, он там есть. А дальше дело за малым.
>>1460809Нет DI библиотеки? Плюнь своему лиду в рожу. По поводу обработчика исключений, видимо какая то самописная - ViewEngine
>>1460834Есть, но внедрялась гораздо позже наделанного там пиздеца сделанного армянами лол, который переписывать никто не хочет да и бюджета на это нет.
>>1460687Тебе надо ставить cookie (_wer и _si) и браузер агент. Причём возможно куки нужно ставить каждый раз новые, которые сайт посылает. А так всё работает
>>1460860ты видел пикрил, который я отправлял ранее?>>1459958>>1.jpgЯ хз, кто писал этот код, но блять через HttpWebRequest ни в какую не хочет открыватьконечно попробую, я блять все куки засовывал и хуй
>>1460846всегда диву давал тем пидорастически-жадным пидарасам, которые то индусам, то кидайцам, то еще %RANDOM_COUNTRY% дают проект на саппорт/создание, а потом всем миром говно из под них выбирать
>>1460864Добро пожаловать в реальный мир, где щедрая душа всё раздала и сидит на голой жопе, а жадные пидорасы стоят у рулей корпораций.
>>1460864Поработав с этим заказчиком, всё стало на свои места, абсолютное не понимание сроков нужно вчера и не способность сформулировать нормальное задание да вы что по макетам не видите какой функционал нужен, но как начал работать с нами исправился и исправляется.
>>1460873PS:А ещё абсолютное не понимание, зачем нужно проектирование и почему на него уходит так много времени.
>>1460941А что нужно для митапа? Почему бы просто не кинуть клич, собрать со всех немного денег на аренду зала и газировку, а потом собраться в условленный час и Сплетаемся в объятьях братских. Крепкие руки крепкие тела обхватывают. Целуем друг друга в уста. Молча целуем, по-мужски, без бабских нежностей. Целованием друг друга распаляем и приветствуем. Джуниоры между нами суетятся с горшками глиняными, мазью гатайской полными.Зачерпываем мази густой, ароматной, мажем себе уды. Снуют бессловесные эникеи аки тени, ибо не светится у них ничего.
пилю бот для телеграмма - передача сообщений от бота передается асинхронно. После первого сихнронного метода бот падает. Что посоветуете? Все методы переделывать в асинхронные?
>>1460978не вижу связи. Группа асинхронных методов передаются без проблем, запускал с таймером. Как только добавляю синхронный метод, который блокирует поток, только тогда падает апликуха.Сейчас переписываю все синхронные в асинхронные.
>>1460875анончик, да это же работает! Спасибо большое, щастя, здоровья и всего всего! Теперь можно выкинуть ебучий селениум на помойку!
Аноны, есть один MVVM класс, и он выглядит как дерьмо. Суть в чем - есть список сигналов. Пользователь клацает "редактировать" на каком-нибудь из них, сигнал передается в новое окно. В зависимости от типа сигнала доступны различные поля, которые показываются/скрываются привязанными в классе Visibility. Но это нарушает принцип DRY, причем при добавлении нового типа сигнала придется лезть в другой кодАльтернатива - создание под каждый тип сигнала своего обработчика, но, может быть, вы знаете какой-нибудь паттерн для моего случая
>>1461272Хотя нет, не нарушает. Возможно, стоит написать какой-то удобный интерфейс к этому дерьму. Или не мучаться и сделать пять окошек
Можно еще вопрос?Решил я оттестировать генератор сигналов. Можно ли как-то передавать в TestCase( ... ) тип, который должен создаваться для тестирования?Есть родственные классы, например, синусоида и пилообразный - дочерние от HarmonicGenerator. Хотелось бы тестировать их через один метод. Например:[TestCase(тип генератора: SineGenerator, аплитуда: 1, частота: 1, фаза: 0, время: 0, ожидаемый уровень сигнала: 0)]
>>1461343А то получается по куче классов SineGeneratorTests, SawtoothGeneratorTests, в которых один и тот же метод, но с разными параметрами
Как вообще потреблять чужие рестфул-апишки? Зачем нужен сваггер? Отдельные реквесты я умею делать, конечно, но неужели надо руками создавать метод под каждый эндпоинт?
Аноны, предстоит работать с бд и вордом, нужно будет из бд создать справочник телефонов в вордовском формате. Какую либу для этого лучше использовать? Нагуглил microsoft office interop, но пишут, что она медленная, может есть какие-то альтернативы?
>>1455468 (OP)>ПРИНИМАЮТСЯ ПРЕДЛОЖЕНИЯ ПО ШАПКЕпрофессор веб давно пора нахер выкидывать из шапки, еще год назад когда он пытался за счет пользователей майнить. есть куда лучше, и с поддержкой актуальности - метанит.MVVM - для вкатывания оч удобен фреймвор Caliburn, небольшой цикл статей для вкатывания http://www.mindscapehq.com/blog/index.php/2012/1/12/caliburn-micro-part-1-getting-started/
>>1455468 (OP)ну и перетаскивай шапку на гит, чтоб и оглавление можно было запилить, и с перекатами проще, и пулреквесты на изменения.
>>1461568библиотек - куча- https://www.textcontrol.com- https://github.com/xceedsoftware/DocX- https://www.microsoft.com/en-us/download/details.aspx?id=5124То что сходу нагуглилНо я юзал>microsoft office interopэту какашку, но для Excel. Справлялась не плохо, правда поток данных был не большой.
>>1461343Помогите нахреначил однотипных тестов, но на будущее хочу знать. Кажется, пример и так понятен, поэтому код не заливал на пастебин. Если непонятно, давайте загружу
мальчики, а где искать практику или идеи для своего собственного проекта? ведь просто читать учебник не очень полезно
>>1461969Почитай Бек Кент - Экстремальное программирование. Разработка через тестирование, там наглядно достаточно. Правда примеры на java, но так как используется фреймворк для тестов - то код переносится на решетки почти один в один
>>1462228В голове. Вспомни чем ты занимаешься за компом и подумай, что из этого можно автоматизировать или сделать аналог проги, которой ты пользуешься, но в ней что-то не так. Если ты в самом начале, можешь сходить на cyberforum и порешать лабы студентикам.
>>1462377Вот сижу и думаю чем же я за компом занимаюсь..... Ну кроме программирования листаю /b/, телегу, дискорд.....ну и собственно все.... Идей для проектов тупо нет.
>>1462461я первый один из первых проект - делал парсер на WPF для контента 2ch-a. Фап треды/WEBM etc. Взял отпуск даже, чтобы проект захуячить. После недели безсонных ночей жидко закомитив (мало опыта с гитом было) снес к хуям проект. Думал вскрыться, но вспомнил, что главное опыт, а не это говно для /b/тардов.Перешел на ASP.NET, чувствую себя нормально, пульс в норме.
Анончик, докладываю ситуацию. 27 (почти 28) лвл, уже года 2 пишу на Java-C#, работаю по профилю - экономика/финансы. ЗП выше среднего, но блять все равно маленькая - 600-650 USD. Потолок - это 1к, выше не прыгнешь (только IT аналитик, там до 2к). Решил делать перекат в C# - уже намылил жопу на собесы - проекты подготовил, сейчас делаю быстрый повтор всех знаний, как перед экзаменом. Работа в моем городе реально есть по .NET, на джунов только 5+ вакансий стабильно висит. Как думаете, взлетит?
Только учу C# и возник вопрос, что лучше использовать "Интерполяцию строк" или "Строки составного формата"? Или в каких случаях использовать одно, а в каких случаях другое?
Может кто знает где раздобыть слитые курсы для шарпа со всяких skillbox и прочих? Чтоб пошагово с примерами и задачами было, а не густая теория и примеры кусками кода
>>1462745Сливал мне челик по js курсы, которые продают за 50кХуета. Просто хуета. Тягомотина. Только если под чистку картошки зайдет
Антоны, где можно прочитать про соединение кода шарпа и крестов или сишки?Я не понимаю, как это так происходит, что мы упаковываем код из крестов в библиотеку и можем вызывать функции из крестов?По идее, сам сишарп обрабатывается через компилятор jit в машинный код, сами кресты тоже в таком случае работают через jit?
>>1462748И всё таки? Мне было бы удобно разжеванное последовательное обучение от основ до уровня, когда можно будет задумываться об устройстве жуном. Хотя бы понять что к чему, как работать в VS, основы asp. Шарп немного знаю, пилил простенькие мобилки на юнити
>>1455468 (OP)Шапка хуевая. Во первых - что это за девочка? Во вторых нет ссылок на скачивовывание книг по C#.
>>1462901только такое обучение кроме копипасты старого кода тебе ничего не даст в принципе. Мозгаби надо думать а не это вот всё.
У меня есть treeview, для редактирования названия узла я использую textbox, который рисуется на его месте (потому что в обычный узел нельзя ввести больше 1000 символов), как мне отловить клик вне дерева, чтобы сбросить редактирование у узла? Уточню: не клик на пустое место в treeview, а именно вне дерева. Textbox упорно не хочет выдавать событие Leave или LostFocus, когда я открываю свою меню сверху, нажимаю на пункт меню, у меня открывается форма и я в форме что-то кликаю, даже в таком случае не срабатывают события. Только когда я закрываю ту форму, то каким-то образом, через цепочку вызовов контролов у меня все-таки приходит событие Leave
>>1463033нужные части помещай в рамку с фоном (иначе будет транспарент, и клики будут только по тому что имеет цветные пиксели), и на нее вешай обработку клика - открываешь окна и что хочешь делаешь, а на бэкграунд где расположено тривив, уже вешай обработку клика но для того чтоб сделать сброс. https://pastebin.com/C8JBCB4t
Так, поясните мне плиз. Вкатился в C#, десктоп приложения на WinForms и WPF, да и UWP как я понял нахуй не сдались по вакансиям (разве что для себя). А вот ASP.NET Core развивается жестко, но тут возникла проблемка. В моем мухосранске нет ни одной вакансии конкретно на ASP.NET Core, а вот на ASP.NET довольно дохуя. И тут вытекает вопрос -как мне лучше начать обучение? С ASP.NET Core, и потом изучить легаси которое просто ASP.NET? Или наоборот? Пока я склоняюсь к первому варианту, ибо думаю что пока я буду вкатываться пройдет 1-2 года, и вакансий на ASP.NET Core прибавится, но все же интересно мнение более шарящих людей. Плюс я слышал что в 2020 эту всю хуйню хотят объединить, но я не совсем понимаю как. Мб я вообще неправильно понял.
анончики, как вывести ошибку в исключение, есть например public static void Login(string login, string password, out string session, out int userId)можно ли ошибку cs0177 вывести в исключения?
>>1463353Так это же ошибка возможного не инициализирования out параметра. Ошибки времени компиляции нельзя просто так взять и проигнорить.
Сап шарпач, я бекенд Сисярп вкатывальщик. Ищу фронта, или просто человека, над идеей которого бы поработал совместно. Цель: опыт командной и вообще разработки, набивания гита.[email protected]
Пробую работать через ListCollectionView (добавление, редактирование, IEditableCollectionView, реализация IEditableObject) и не могу разобраться.И найти толком почитать/посмотреть не могу ничего.
>>1463416ниже анон написал, что ошибки типа cs0177 вероятно Try-catch блоком не проигнорируются>>1463427и как же быть?
>>1463619Нихуя, есть еще определенные типы ошибок, которые игнорируются блоком try catch?Где почитать?
>>1463619>Compiler Error CS0177 - The out parameter 'parameter' must be assigned to before control leaves the current method>вероятноесли не знаешь, зачем высираешь свое "вероятно"?Может на каждый copliler error высрем по посту? Их на минуточку овер 1к. Как раз на 2 треда
>>1463619>и как же быть?Ошибки cs - это ошибки компилятора. Значит ты написал невалидный код, решение только одно - написать правильно. Ты бы еще спросил "я вот написал jhfgkjdfdfguhu, почему оно не компилируется и не майнит биткоинты, может трай/кэтч добавить?".
>>1463619>>1463681кидайте примерыхотел бы посмотреть на собранный проект с ошибками компиляторатаких нет, вы долбоебы
>>1463746Естественно, любая IDE, в том числе ее билдер тебе вывалит ошибку и не скомпилирует проект (ошибка компиляции КАРЛ). См. пикрил 3Даже если ты заключишь в блок Try-Catch - сначала идет анализ всего синтаксического дерева от 1 строки до последней на наличие ошибок компилятора (блок try-catch игнорируется). См. пикрил 4не забывай, что в .NET идет 2 уровневая компиляция - C#->MSIL->commands, где все косяки ловятся на этапе преобразования C#->MSIL, т.е. чтобы выстрелить себе в ногу нужно очень сильно постараться
>>1463793>Если у тебя нет мака - считай ты уже опущенец.В этот раздел нужен мочератор, чтобы банил загульных вскукареков
Кто-нибудь использоал Xamarin в реальной работе? Принимают ли приложения в AppStore для iOS? Хочу сделать одно, не очень сложное, но на джаве писать мне тягостно (похоже на шарп из 2002), поэтому хочу сделать на Шарпе обе версии.Какой внутри Ксамарина используется язык? Я имею в виду какая версия Шарпа? Async-await завезли? Как треды в android приложении делятся на UI-поток и остальные потоки? Из UI не рекомендуется дёргать сеть, из остальных нельзя дёргать UI. Всякие нативные PageSnapHelper'ы из Андроида останутся или с Ксамарином идёт своя пачка инструментов?
>>1463819ДА почти на все.Возьми во внимание, что есть 2 замарина, один неитив, где пишеь разметку xml(на андроид) или свифтом(не помню что там отвечает за разметку), а есть формс, где гразметка XAML.
>>1463827на нейтив придётся делать две вёрстки? Делать Нейтив под Андроид и Forms под iOS это гиблое дело, да?
>>1463814Не удивлен что такие дауны в пр сидят.>>1463809Слегка набросил просто. Всегда кекаю с сисярпа.>>1463819Гиблое дело. У тебя все отвалится на ведройде Я пишу на нативе под обе платформы и мб на иосе. Да, сделать можно, какой нибудь ту ду лист.Если пойдешь дальше - то я бы выбрал flutter, если ты уж так хочешь что-то сделать.А так, лучше не лезть.
>>1463933да хуйня этот selenium. Он для эмитации дейтельности подходит, но не для парсинга точно. Мне уже анон выше помог с этой задачей.
Помогите, не могу нагуглить. Есть окно хромоподобного браузера, у него несколько процессов в памяти. Как мне получить ширину и высоту этого окна в сишарпе?
>>1464188Перебирать окна у каждого процесса, найти процесс с интересующим тебя окном, прочитать значения.
>>1455468 (OP)Приветствую. Пишу редактор для простенькой игры застрял на сохранение уровней. Сохранение записывается в обычный блокнот. Компилятор выдаёт исключение когда пытаюсь сохранить уровень с большей шириной чем изначальной. Может кто знает в чём дело? Я уже все гляделки проглядел.
>>1464233Пиздец.Пастебин в твои края не завезли? Как мы должны на скрине длиной 10 километров баги искать?
>>1464233> Компилятор выдаёт исключение, а какое - не скажу. Вот, полюбуйтесь на шакальный скриншот моего кода. Я у мамы дурачок.
>>1464233Ты бы еще фотку из тетрадки с кодом приложил.Хотя даже с пастебином этот эталон говнокода никто разбирать не станет. Я такого пиздеца давно не видел. Схороню, пожалуй.
>>1464238Я бы с радостью сделал так как ты говоришь, если бы знал как. И если бы знал, то не спрашивал бы в тематическом треде. Чуешь подвох? Если нет, то подскажу: твой совет не поможет решить проблему.
>>1464244Ты ебаное бездарное безвольное чмо. Пять секунд гугла, блядь:http://www.cyberforum.ru/csharp-beginners/thread291420.htmlhttp://www.cyberforum.ru/csharp-beginners/thread248881.htmlhttps://ru.stackoverflow.com/questions/491082/Создание-списка-окон-получение-их-handle-и-title-на-cНе перезвоним.
>>14642331. Первое, как уже сказали, залей на пастебин. Это нужно в дебагере посмотреть.2. Конвенции кода/нейминг. Не следует называть переменные в snake_case на шарпе. Также не следует злоупотреблять сокращениями. Комменты желательно учись писать на ангельском.
>>1464241> Компилятор выдаёт исключение, а какое - не скажу.Извиняюсь скрин ниже.>>1464242>Хотя даже с пастебином этот эталон говнокода никто разбирать не станет.Зря, это платный урок с вебинара на Юдеми, через который прошли за 4е года несколько сотен обучающихся.>>1464233Так чего, нет идей?
>>1464283>Зачем комментировать каждую строчку?Что бы знать для чего она. Я только с прошлой зимы начал изучать C#, поэтому стараюсь не запутаться.
>>1464288Я дико извиняюсь, но ты учишь уже минимум 8 месяцев сишарп, и тебе все ещё нужны комментарии "это переменная" и "это конструктор" чтобы не путаться?
>>1464286То что он платный, не делает его менее говнокодом.Рефы/ауты повсюду в 2019, когда все уже вроде бы осознали преимущества чистых функций.Проебы отступов, влияющие на читаемость, и ебучий снейк_кейс.Возврат null-а вместо явного эксепшна.Это только едва окинув взглядом видно.
>>1464286>Зря, это платный урок с вебинара на Юдеми, через который прошли за 4е года несколько сотен обучающихся.Либо это ты навилосипедил такую хуйню, вырывая куски из курса, либо курс делал студент-первокурсник с кафедры лингвистики и ты успешно спустил деньги в унитаз, либо ты пиздишь вероятнее всего.Ответ на твою проблему: забудь про сишарп и игры. Найди простую книжку по структурам данных и алгоритмам, потом почитаешь введение в ооп, через полгодика. Потом можешь попробовать пописать лаб0 на сишарпе.Тебе с таким понимаем надо сидеть сортировку пузырьком задрачивать на питоне и рекурсии осваивать. У тебя одни и те же шмотки кода повторяются во всех методах, лол.
>>1464300Хуевый совет на самом деле. Теорию надо параллельно практике дрочить, иначе все глаза перегорят за полгода теории и чел дропнет
>>1464300Ну, по комментариям - похоже, что таки это урок с вебинара.Алсо, непонятна причина возмущения. Посмотрел по диагонали - там обычный дельфи-стайл говнокод, какой и должен быть на этом вашем шарпе.Включая ресайз массива. Всё, как любят кузьмичи-дельфисты. Про векторы и прочие мудрёные структуры данных они ещё не знают, видимо.
>>1464303>и чел дропнетВ его случае это только на пользу.Пускай сначала хотя бы какие-нибудь коды хаффмана и поиски кратчайших путей научится писать, тем более если в геймдев вкатываться. Он даже про существование коллекций не знает.Посмотри на этот код и скажи, чтобы ты ему мог бы предложить самостоятельно запилить?
>>1464313>в геймдев Чел, он делает какую то консольную игрушку, какой в жопу гейдейв? Написать змейку или тетрис - обычное дело для большинства начинающих.
>>1464315Какая нахуй разница? Это всего остального никак не отменяет.>>1464317Вот это мощно, конечно)0))0
>>1464317> оптимизон решаетА давайте оптимизировать прежде, чем готово техническое демо? Ну давайте? Ну круто же. Будем сидеть над пустым окном студии и размышлять, на сколько микросекунд списки медленнее массивов.
>>1464259Я приду к тебе домой и обоссу тебе ебало, когда проверю и это не сработает на хроме. Выебу твою мамку и собаку в придачу.
Антоны, я чёт дико туплю, помогите.У меня есть список Rectangle, полученный путём обработки с графической либы.Так вот, я хотел бы пройтись по списку этих самых четырёхугольников и отсеять всякий мусор.Нужные мне четырехугольники упорядочены в линии вертикально, но они могут незначительно различаться в размере.Так вот, как мне взять и проверить, нет ли рядом с нужным мне четырехугольником рядом похожих?
>>1464412Это не тред помощи всяким наглым хуесосам и вообще не тред помощи, он посвящён языку, все остальное опционально.
>>1464415Я изначально дружественно написал, и сказал что не могу найти ничего конкретного в моем случае, пока какой-то хуесос не предложил гуглить. Встретил бы такое уебище вживую - переебал бы, отброс человечества, к нему хорошо а он умный блядь гуглить посылает.И да, мегамозг обоссан по факту - ни один из советов не помог, ссылки неверные, на мой вопрос не отвечает и проблему не решает. Все эти способы не дают размеров окна браузера хрома/хромиума. На скрине вивальди развернут на весь экран, а размеры выдает 160х28. Можете обтекать, чуханы. Вам не перезвонят.
>>1464300>Либо это ты навилосипедил такую хуйню, вырывая куски из курса, >либо курс делал студент-первокурсник с кафедры лингвистикиДа нет, писал слова за слово, курс называется Сакобан (Создание игрового комплекса Sokoban с редактором уровней, игровым помощником, сетевого режима.) от Магистра математики и информатики, C#, Java, PHP программиста Евгения Волосатоваhttps://www.udemy.com/course/sokoban2/learn/lecture/11134866?start=1875#questionsУ него вообще много курсов это второй курс, который я также пытаюсь осилить (кстати первый - Игры со спрайтами я так же написал, но игра отказывается работать lol)>либо ты пиздишьДа, нет.>Ответ на твою проблему: забудь про сишарп и игры. Найди >простую книжку по структурам данных и алгоритмам, потом >почитаешь введение в ооп, через полгодика.Всё так и делал по совету опытных товарищей - Рихтер Дж.Программирование на платформе Microsoft .NET Framework 4.5 наязыке C#. 4-е изд. Только через пару месяцев изучения книги, где - то на 1/3 я окончательно запутался и перестал понимать, начинал заново и уже записывая в блокнот важные вещи, но ещё больше запутался. Посоветовали изучать С# по курсам с юдеми, вот и изучаю сначала был другой преподаватель с которым я успешно написал бумбермена и тетрис, змейку, а с этим уже вторую игру не могу осилить.>В его случае это только на пользу.Мне нравится язык и программировать, просто я думаю что уже поздно вкатываюсь.>Он даже про существование коллекций не знает.Это не те что списки?>>1464294>Не получилось сохранить? Ну и лан)))0Что можно исправить?
>>1464452>от Магистра математики и информатикиВизжу нахуй в голос. Пиздец вкатывальщики непуганные, любое дерьмо едят, а МАГИСТРЫ МАТЕМАТИКИ и рады заливать им.Курсы если и смотреть, то не от мнимых магистров, а тех кто в области чем-то известен.Сто, сука, тысяч нахуй триллионов миллиардов бесплатных и качественных курсов. Не хочу, хочу смотреть говно за деньги. Вон, на https://ulearn.me/ посмотри от СКБ Контура. Только там не заходи в машлерн даже если очень захочется, сам автор курс называет устаревшим дерьмом>Это не те что списки?Это все те что находятся по запросу C# Collections. Тебе походу реально структуры данных изучить надо бы. Хотя бы базовые (листы и линкедлисты, LIFO/FIFO, хэшмэпы итд).>Что можно исправить3 варианта, может еще предложат1)Просто выкидывать исключение вместо пустого возврата2)Переименовать функцию в TrySaveLevel и возвращать из нее bool (результат сохранения, успешно или нет)3)Завести enum с кодами ошибок, также переименовать функцию и возвращать из функции код ошибки (это если что-то пойти не так может в нескольких местах и тебе важно четко разделять причину ошибки, но эксепшены не хочется юзать).Сейчас у тебя говно, которое просто говорит "ой, чет не сохранилось, я об этом никак не оповещу, пусть пользователь гадает, удалось или нет". Так не надо делать.
>>1464452> Магистра математики и информатики Тоже сиранул, вслед за аноном выше. Как говорится, кто не умеет работать, идёт учить. А этот тип даже учить не умеет, раз у тебя игры не собираются. За деньги, раз ты уж платишь деньги, он должен вживую уделять тебе время. А эти ебланские курсы оптом бесплатно на руторе есть, если ты такой любитель говна въебать
>>1464233>>1464294не знаю сишарп и вообще не понимаю что этот код делает, но выглядит что при одной из итераций z - delta оказывается меньше ноля и поэтому lines[z - delta] бросает ошибку
>>1464452Магистр твой тебе не рассказал про режим отладки? Врубай отладку, смотри какое значение индексов когда все падает. Тебе же пишет что там выход за границы.
>>1464461> но выглядит что при одной из итераций z - delta оказывается меньше ноля и поэтому lines[z - delta] бросает ошибкуЯ тоже думаю что просто получается отрицательное число вот он и выкидывает>>1464458>Вон, на https://ulearn.me/ посмотри от СКБ Контураспасибо>3 варианта, может еще предложатПонял, постараюсь что-то сделать.>>1464459>А этот тип даже учить не умеет, раз у тебя игры не собираются.Есть такое, постоянно допускаю опечатки, да и в примере выше я на 100% уверен, что где-то опять опечатался, но беда этого лектора, что он никогда не показывает свой код целиком, чтобы можно было свериться.
>>1464463Ты же понимаешь, что корочка магистра это не так уж и сложно, если осилил 4 года бакалавра, то два года магистратуры скорее всего тоже пройдешь, так что чисто хуевый выебон, для СНГ уж точно"C#, Java, PHP программист", а хули не "C#, ABC.Pascal, Perl, PHP, HTML&CSS, Javascript, Java, SQL программист", такое чувство, что они или сам не определился со сферой направленности, либо решил охватить все и сразу (ну или он скоро уйдет на пенсию, но судя по языкам, ему в районе 30), так эта широконаправленная личность еще и преподавать пошла, рофлДа и еще и платить за инфу, которая уже кучами лежит в инете, что перебирать приходиться, хуй знает
Пиздос, людям Рихтера читать сложно, вы там совсем уже? Стандартный путь - Троелсон или Шилдт, а лучше сразу двоих.Никаких курсов или видео, все хуйня. Можете метании ещё читнуть, зачастую копипаста с Шилдта
>>1464521Я анимешник. решил сделать свою игру. Пришёл в геде. Мне там говорят INSTALL UNITY. Начинаю гуглить, выясняю, что нужно знание шарпа. Иду на метанит (на самом деле нет, иду по первой ссылке в гугле на майсишарп-ру) и учу шарп. После этого вкатываюсь ИТТ и обсуждаю шарп.А мог бы игры делать.
>>1464403>>1464562Вычисляешь центр фигуры. Сортируешь по расстоянию между центрами. Затем сортируешь по размерам. Затем вводишь в программу две константы: "похожесть" и "близость". Чекаешь первые N фигур в списке по расстоянию на "близость", в списке по размерам на "похожесть".
>>1464589>Сортируешь по расстоянию между центрамиНе понял, каким образом, расстоянию между центрами от чего?
>>1464606Ну так ты нормально опиши.Что за сортировка по расстоянию между центрами, что ты под этим подразумеваешь вообще.
>>1464618Я подразумеваю длину прямой линии проложенной из центра одной фигуры к центру второй фигуры. Ты вычисляешь все эти скаляры для каждой пары фигур и записываешь в список. Затем список сортируешь по возрастанию. Таким образом у тебя будет в голове списка пара из двух ближайших фигур.
>>1464623Говорю, пасть свою заткни! Так… ну я тебе щас лекцию прочитаю. Значит, юдеми, перед вкатом в айти, а именно — Магистр математики и информатики, C#, Java, PHP программист Евгений Волосатов, задумали расхуячить джуниорские мозги во всем интернете, то, что потом вошло в историю, как катастрофа в Стак Оверфлоу. Слушай и запоминай. Командующим адмиральским флотом был программист из скиллбокса. Средний программист на самом деле, но исполнительный… исполнительный, безусловно, профессионал. Но без фантазии, у разрабов вообще людей с фантазиями было немного. Дерьмо на палочке, ничего, бл*дь, не знаешь, ничего не можешь. Чё ты вообще, блядь, на дваче делаешь?
>>1464452>Магистра математики и информатики, C#, Java, PHP программиста Евгения ВолосатоваВ небольшой прокуренной аудитории была находилось около десятка человек. Гробовая тишина создавала довольно напряженную атмосферу. Вдруг в коридоре послышались довольно громкие уверенные шаги.-Труд всей моей жизни оказался не нужен - тихо дрожащим голосом сказал старый лысеющий мужичок в очках, сидевший в самом дальнем углу. А ведь я уже переписал заново первый том под новый язык...-Мистер Кнут, я вас прекрасно понимаю. Я тоже всю жизнь посвятил написанию книг и выпустил бесплатный курс на курсере. Оказалось, что их никто не смотрит. После того, как у Евгения Волосатова, магистра математики и информатики, вышел курс трехчасовой курс по итераторам для профессионалов, я, и даже мистер Рихтер решили, что нам уже точно пора на покой -сказал так же тихо Роберт СеджвикС другой стороны тоже начали осторожно переговариваться-Странно, что я его ни разу не видел-Гарольд, он в СНГ магистром стал. Думаешь, ты смог бы его чему-то научить?-Слышал, что Кармак после того, как потратил деньги с последней проданной феррари на вступление в клуб формулистов, начал вычищать интернет от исходников дума и квейка. А ведь он всего лишь хотел посмотреть, как писать сокобан.Вдруг Эндрю Троелсен встает и быстрыми шагами выходит со словами: "Господи, я же даже джаву с пхп не знаю, я не вынесу этого позора".Тем временем по звуку шагов было понятно, что кто-то вот-вот войдет к ним. Дверь резко открывается, и стоящий в проходе высокий излучающий непоколебимую уверенность мужчина начинает говорить:"Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.После взноса 256 руб. вы получите подписку в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.Байты используются для открытия более одного урока в день, по 50 байт за урок.Стоимость 1 дня за первый месяц: всего 8 рублей.Первый взнос - 256 руб./30 дней.Через 30 дней будет списано 2,400 руб.за продление подписки в Клуб на 30 дней + подарок 512 байт.Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.Средства будет автоматически считываться с вашей карты. Вы в любой момент сможете отказаться от продления Клуба.Только ДО КОНЦА НЕДЕЛИ - -50% скидка на первый взнос, всего 256 рублей!-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.Ну что, готовый написать сокобан? Джонни уже понял, как он должен был написать свой дум на шарпах. Это не ваша митовская хуйня в открытом доступе и даже не книжки-хуижки с торрентов. Это, блять, ПЛАТНЫЕ КУРСЫ БЕЗ ОБРАТНОЙ СВЯЗИ!"
>>1464623>Ты вычисляешь все эти скаляры для каждой пары фигур и записываешь в список. Затем список сортируешь по возрастанию.Хм, а если фигур у меня 400 или еще больше?
Литералли худший тред на доске. В любом другом сидят люди, которые разбираются в вопросе и помогают разобраться ньюфагам, здесь же какие-то клоуны которые дают вредные советы и общаются текстом, а не кодом.
>>1464704>Постер закинул простыню кода картинкой>Почему у меня вылетает ексепшн?? (не говорит какой)>Скинь код на пастебин, посмотрим в отладчике>Игнор>Еще одно напоминание о пастебине>Автор поста, который учит шарп 8 месяцев, со вчерашнего дня не может посмотреть в отладчике почему у него индекс ексепшнНу и конечно срач про говнокурсы без обратной связи, когда человек заплатил деньги, а спрашивает помощи в шарпотреде.
>>1464681> а если фигур у меня 400 или еще больше? Тогда тебе лучше нанять себе программиста в помощь.
>>1464800>Скинь код на пастебин, посмотрим в отладчике>Игнор>Еще одно напоминание о пастебинеЯ просто не совсем понял, что за пастебин.Вот ниже скинул.Класс загрузки и сохранения файла (проблемный)https://pastebin.com/zTCaqHHRОсновной класс редактораhttps://pastebin.com/LJvjj45D>>1464462>Магистр твой тебе не рассказал про режим отладки? Врубай отладку, Спасибо. Благодаря этому товарищу целый день возился с отладкой выяснил что исключение происходит в уравнении lines[z - delta] получается отрицательное число.z - delta = -1 я так понимаю индекс массива не может быть отрицательным>>1464489>>1464633>>1464652>>1464680Зря вы так, человеку нравится его дело, пусть даже и коряво (даже мне понятно из предыдущих его уроков) но он пытается донести знания в массы.
>>1464865И здесь думал о 2х вариантах или сделать проверку чтобы z всегда был всегда больше delta или смотреть почему curr (это переменная состояния массива) постоянно равна 0.
>>1464865Проблема в том что только первый уровень не переписывается, не меняет размеры остальные уровни работают нормально. Более того если менять 1й уровень по одной строке и/или одному столбцу, то так же программа работает. Сейчас исключение вылетает только если я сразу захочу поменять в большую сторону несколько строк или столбцов, на уменьшение отлично работает. Но если я перепишу строку int delta = cell.Getlength(1) - height, на int delta = height - cell.Getlength(1) то первый уровень начинает сохраняться при добавлении дополнительных строк или столбцов, но теперь исключение появляется при удалении нескольких строк или столбцов.
>>1464865>он пытается донести знания в массы.За 3к в месяц учит писать хеллоуворды и объясняет копипасты из кнута и stackoverflow. Герой нашего времени.>z - delta = -1 я так понимаю индекс массива не может быть отрицательным>>1464871>И здесь думал о 2х вариантах или сделать проверку чтобы z всегда был всегда больше delta или смотреть почему curr (это переменная состояния массива) постоянно равна 0.>>1464888>Но если я перепишу строку int delta = cell.Getlength(1) - height, на int delta = height - cell.Getlength(1) то первый уровень начинает сохраняться при добавлении дополнительных строк или столбцов, но теперь исключение появляется при удалении нескольких строк или столбцов.Блять, пощади, завтра уже весь тред от смеха вымрет. Ты перебором что ли код пишешь?
>>1464865Время поста на пастебине увеличилЭто класс загрузки уровняhttps://pastebin.com/9QmwTunKОсновной классhttps://pastebin.com/h4nfR4vf>>1464892>Блять, пощади, завтра уже весь тред от смеха вымрет.Я думал вы здесь серьёзные люди.>Ты перебором что ли код пишешь?Скорее выполняю тесты, для того чтобы правильно отладить программу я смутно представляю её работу.
>>1464901Есть такая штука - словарь. Очень крутая вещь. Правда медленная. Зато удобно:var slovarie = new Dictionary<int, string>() // Такой словарь будет хранить пары инт-ключ, стринг-значение.>>1464934Рассказал. Теперь вся надежда на провидение!
>>1464901Чет сижу и вообще не понимаю логику.Если у нас есть уровень, и мы хотим просто его сохранить в файл, зачем нам его читать из файла и что то там делать с ним? Разве не должен метод LoadLevel доставать уровень из файла, а SaveLevel только записывать его обратно в файл?
>>1464946> О(1)Посрать на ваши ботанские штучки. Старый добрый массив тупа быстрее чем эти ваши ООП-классы.
Шутки шутками, но в моем вузе до диплома дотянули челики примерно в соотношении 3:1 (норм_челы:дауны), а в магу потом пошли наборот, 1:3, большинство чтобы косить ещё два года/родители заставили.Вот и думай.
>>14648992чую. Кстати, аноны, пробовал кто курсы на юдеми делать? Делов-то хуйня, берешь тот же LINQ и начинаешь говнокодить. Или там без рекламы не получится ничего?
>>1465406Нет, леплю костыли и удивился, что такое возможно и вроде даже нормально работает. Потом подумал и не нашел не одной причины почему оно не должно работать и решил спросить у двача не упускаю ли я что. Вообще через статический конструктор делал потокобезопасную инициализацию бд в еф, но что-то выглядит хуевенько, лучше сделаю руками через lock.
Я вот думаю, может приехать и отфотошопить хрюшу на спине их "тех. лида"? Боже, зачем я связался с этим ебучим айти...
>>1465492Мне кажется, это ещё по божески. Типа стажировки Потому что нет - Владение Git, Mercurial, SVN - Опыта от одного года работы с одним из UI фреймворков - ... сейчас опять бомбить начнёт, закрываю двач
>>1465573>НЕ ПРО ЭТОформулируй мысли правильно, приводи примеры. Понятно, что на досках вопросы аутисты задают, которые не осилили SOF, но старайся хотя бы
>>1465594ты меня спутал с долбоебом который пысался трайкетчем ошибки компиляции обойти. А я сказал что вы тут охуенно живете и ловите через трайкатч все исключения. вместо нормальной обработки ситуаций в коде. трайкетч это самый крайний случай, злоупотребление ими может оч знатно тормозить софт.
>>1465664ага, так еще и до октября нужно определиться. Видимо плачевный опыт после предыдущего потока.
Пацаны, я вот добавляю в код хюнитпроекты, пишу там всякую хуйню, вроде прокатывает, никто их не открывает, а как узнать он вообще проходит или нет?
>>1465670Хуйня это все, нам тоже мозги ебали про октябрь крайний срок, в итоге челики ещё в феврале-марте по темам скакали лол.
>>1465698А теперь успокойся и попробуй написать еще раз.>>1465660анонимная имиджборда с регистрацией через госуслуги
Подскажите костыль (или не костыль) ламеру - нужно подождать пару секунд при ексепшене в кетче и выдать ошибку, тред.слип очевидно не работет.
Добавлю что все действия происходит в ThreadPool.QueueUserWorkItem.Можно как-то внутри метода треда подождать?
>>1466034Спасибо, но как-то криво работает. При 6 тредпулах и задержке в 15000 - отвисает через 7 секунд и начинает якобы делиться на 2 и уменьшать отвисание. Очевидно что я что-то не понимаю.Но я уже забил хуй, оставлю без задержек.
Приблизительно что-то такое если интересно:for (int i = 0; i < threadcount; ++i){ThreadPool.QueueUserWorkItem((WaitCallback) (state =>{while (true){lock (this){if (!_running)break;}try{DelatHuinyPokaNeOstanovyat();}catch{HochuPodozhdat();}}}));}
>>1466045> Очевидно что я что-то не понимаюАсинхронный метод создаёт ещё один тред. В твоём треде. Всё по заветам икзибита.
>>1466046На этом мои знания заканчиваются. Ты уже работаешь с тредами, возможно тебе не мешало бы перекроить архитектуру и подход.
Добрый день! Подскажите есть метод NameButton сам метод возвращает все строки с БД нормально но при его вызове в StackCollection од возвращает только последнюю строку в чем мой косяк? уже всю голову сломалpublic Array NameButton() { string[] s = new string[2]; int colums = 0; using (connect = new OdbcConnection(connection)) { query = "select buttonsetting.buttoncontent from buttonsetting where buttonsetting.fk_unit= 1"; cmd = new OdbcCommand(query, connect); try { connect.Open(); dataReader = cmd.ExecuteReader(); while (dataReader.Read()) { colums= dataReader.GetValues(s); for (int i = 0; i < colums; i++) { MessageBox.Show(s.ToString()); } } //connect.Close(); } catch (OdbcException e) { MessageBox.Show("Невозможно подключится к базе данных" + e.Message); } } return s; } //Вызываю метод NameButton public ObservableCollection<Button> StackCollection { get; set; } StackCollection = new ObservableCollection<Button>(); dal = new DAL(); //string[] gg = new string[3]; //gg = dal.NameButton[0] as string[]; foreach (string s in dal.NameButton()) { MessageBox.Show(s); StackCollection.Add(new Button() { Content = s, // Content = dal.NameButton(), }); }
>>1466284Ладно, я проебался, не пустой массив. А ты в курсе вообще, что такое отладка? Ты блять код отлаживаешь мессадж боксами, это пиздец. Почитай об отладке, попробуй выполнить пошагово программу и скорее всего ты сам найдешь проблему.
Архитектурный вопрос: Создаю репозитории для работы с сущностями:1. User2. Site3. RequestИерархия такова - User 1- Site (один ко многим)- Site 1- RequestsВнимание вопрос: Нужно ли хранить внутри Site и Request идентификатор сущности уровня выше?Пример:User{int Id ;DateTime RegistrationDate;string UserIp;IList<Sitemap> Sitemaps + создание экземляра через конструктор
>>1466349Лучше нарисуй свои таблицы и связи, будет гораздо понятнее. А вообще так:1. Один к одному - А и B имеют ссылки на идентификаторы друг друга2. Один ко многим - тех кого много имеют ссылку на идентификатор одного3. Многие ко многим - через дополнительную таблицу, содержащую связи.Нужно ли хранить в С ссылку на А в случае А->B->C? Зависит от использования. Можно путем увеличения размера базы ускорить поиск соответствия C<->A, либо не хранить ссылку, тогда база будет меньше но поиск соответствия будет через джоин таблиц.
>>1455484ПЕРЕКАТ, няши!Новый тред тутhttps://2ch.hk/pr/res/1466365.htmlhttps://2ch.hk/pr/res/1466365.htmlhttps://2ch.hk/pr/res/1466365.html
>>1466363Как то так, как на пикче.Все сущности - уникальны. Даже если сайты будут повторяться, то SummaryTime будет варироваться +- секунды.Из за чего возник вопрос - в процессе деление на Data access layout (DAL), business logic layout (BLL) и UI По совету анона из метанита кста - https://metanit.com/sharp/mvc5/23.8.phpВ процессе формирования BLL уровня возник вопрос реализации GetUser/GetRequest методов репозитория, как должны хвататься сущности связанные по цепочке (Т.е. User->Sites->Requests), если BLL уровень не содержит внутри себя коллекций связанных объектов, т.е. в UserDTO (Data transfer object) уже нет коллекций, как на пике 2.Если разберешь, что я пытаюсь донести, буду очень благодарен.Не знаю, почему я так заморачиваюсь над архитектурным строением всех объектов будучи даже не джуном, но кайфую от правильно постоенного взаимодействия объектов больше, чем от их реализации.
>>1466380Так в бизнес-логике ты можешь ворочать бизнес-сущностями, у которых есть ссылки друг на друга. А в контроллер уже возвращать DTO.
В тестах на python есть @pytest.mark.parametrize @pytest.mark.parametrize('count', [1, 2, 3, 4]) @pytest.mark.parametrize('name_type', ['n1', 'n2']) def test__init__func1(count, name_type)и работает оно так, что функция вызывается с комбинацией всех вариантов параметров.Можно ли такое же в NUnit повторить, или только руками чеерз TestCase все комбинации описывать?
>>1466383Если мне нужно передать в контроллер UserDTO, на котором висят в БД другие сущности, как их привязывать, если в DTO на них нет ссылки? Если делать это отдельными репозиториями типо UserRepository - перечень юзеров, SiteRepository - перечень сайтов, то как SiteRepository поймет, какие сущности нужны для конкретного User-a?
>>1466414это я виедл. оно сопоставляет 1 к 1,а в примере выше на питоне был бы вызов тестов с сочетанием параметров:1 n11 n22 n12 n23 n13 n24 n14 n2
>>1466420Ну напиши в TestCaseSourceforeach(var a in data1)foreach(var b in data2)...yield return new TestCaseData(a, b);
>>1466435Ща прочитал статью в ссылке, что сам тебе скинул и вот:https://nunit.org/docs/2.6.4/combinatorial.htmlа ты не читал её, а-я-яй!
>>1466735Честна говоря да, ебты бля, лучше через форыч уелд)) да и вообще бнит-тесты для лохов неуверенных) У меня TDD прекрасно без них идёт
>>1466740да в планах рефакторинг, надо тесты чтоб быть увереным что ничего не проебал. только бизнеслогику покрыть важно. остальное плевать)