3. WinForms или WPF? Зависит от задачи. Для небольших проектов, скорее всего, будет достаточно винформочек. В случае, если разрабатываемое приложение достаточно серьёзное, то возможно его стоит писать с использованием WPF. WPF очень хорошо работает с паттерном MVVM ( https://ru.wikipedia.org/wiki/Model-View-ViewModel ), и позволяет пилить очень кастомизированные интерфейсы с помощью XAML, что в случае с WinForms делать намного сложнее.
4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить? Неправда. C# активно развивается, недавно вышел .NET 5 и С# 9.0. Дотнет стал полностью опенсорсным и кроссплатформенным. В том же энтерпрайзе он очень даже востребован.
5. Какую IDE выбрать? Для Windows самым очевидным вариантом будет Visual Studio ( https://visualstudio.microsoft.com/ru/downloads/ ). Бесплатной Community-версии более, чем достаточно для большинства задач. Также есть версия для macOS. Кроссплатформенный полуредактор/полуIDE VS Code ( https://code.visualstudio.com/ ). Кроссплатформенный IDE Rider ( https://www.jetbrains.com/rider/ ). Также существуют C#-плагины для Atom и Sublime Text, но функциональность там достаточно сильно урезана.
7. Что почитать? — The C# Player's Guide, третье издание (RB Whitaker) — отличная книга для ньюфагов, всё расписывается довольно подробно, очень много примеров кода. — C# 9 and .NET 5 – Modern Cross-Platform Development (Mark Price) — подойдёт для ознакомления с платформой. Затрагивает все технологии, имеющиеся в .NET (веб, мобильная разработка, машинное обучение), ни во что не углубляясь. — C# 8.0 in a Nutshell (Joseph Albahari и Eric Johannsen) — огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином. — C# 8.0 Pocket Reference (Joseph Albahari и Ben Albahari) — просто выжимка из книги сверху, можно всегда держать рукой. — Pro C# 8 with .NET Core 3 (Andrew Troelsen) — 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
8. Более хардкорный материал — CLR via C# (Jeffrey Richter) — это классика, это знать надо. — C# in Depth (Jon Skeet) — написана в виде истории версий C#, начиная с C#1.0. Описываются возможности, которые были добавлены в определенной версии и далее достаточно хардкорно и подробно эти возможности расписываются. — Writing High Performance .NET Code (Ben Watson) — отличная книга. Фокусируется на методах оптимизации приложений, профилировании. Крутейшая и достаточно детальная глава по GC. Рассматриваются достаточно известные проблемы вроде "for vs foreach", "класс vs структура", кастинг, боксинг, перфоманс регулярок, коллекций, исключений. Короче всё, что нужно, чтобы вам перезвонили.
9. Литература по WPF — Pro WPF 4.5 in C# (Matthew MacDonald) — Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)
10. Литература по ASP.NET — Pro ASP.NET Core 3 (Adam Freeman) — Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)
11. Литература по асинхронности и параллелизму — Concurrency in C# Cookbook (Stephen Cleary) — книга, написанная в формате "проблема - решение". Кроме базовых вещей, вроде асинков и параллелизма рассматриваются TPL Dataflows, Rx (реактивные расширения), тестирование всего этого асинхронного добра, ну и работа этого всего на более низких уровнях абстракции. — Multithreading with C# Cookbook (Eugene Agafonov) — в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная. — Pro Asynchronous Programming with .NET (Richard Blewett, Andrew Clymer) — опять же, интересного немного, но неплохие главы про асинхронность + UI и анализ дампов памяти в windbg.
12. Литература по мобильной разработке — Creating Mobile Apps with Xamarin.Forms (Charles Petzold) — Xamarin.Forms Projects (Johan Karlsson, Daniel Hindrikes) — Mastering Xamarin.Forms (Ed Snider)
13. Литература по машинному обучению — Introduction to Neural Networks for C# (Jeff Heaton) — изучение нейронных сетей с примерами кода на шарпе. Под конец пишем программу для распознавания символов и нейроботов. — Machine Learning Using C# Succinctly (James D. McCaffrey) — довольная коротенькая книга на тему машинного обучения с примерами кода на C#. Ничего особого: k-средние, классификация, наивный байес, но с кодом, который всегда можно поразбирать, если что неясно.
14. Разработка игр Unity-тред в /gd/
15. Но я не знаю английский, как я буду это все читать? На некоторые из перечисленных книг есть переводы, которые можно найти на том же рутрекере, однако зачастую эти переводы неактуальны и/или содержат неточности. Кроме того, переводы обычно пилятся только для нескольких самых популярных книг, более-менее серьёзный материал не переводят. Всегда можно сесть со словарем и понемногу читать, переводя непонятные фрагменты. Это очень полезно, так как в любом случае в программировании без знания английского делать нечего. Если очень хочется, то гуглить по запросам: "C# 7.0. Справочник. Полное описание языка", "C# для профессионалов. Тонкости программирования", "Программирование на платформе Microsoft .NET Framework 4.5 на языке C#".
16. Что еще нужно знать, чтобы взяли работать за еду? — Базы данных — подойдет любая книга по MSSQL/MySQL/PostgreSQL. DDL, DML. Джойны, индексы, нормализация. В контексте шарпа еще ORM: Entity Framework, Dapper. — Системы контроля версий — обычно гита достаточно: add/commit/push, merge, rebase, checkout, remote, diff, разрешение конфликтов. — GitHub — issues, пулл-реквесты, теги, релизы, Actions. — Алгоритмы — сортировка, поиск, оценка сложности алгоритмов, рекурсия, алгоритмы на строках. — Структуры данных — связанные списки, деревья (бинарные, красно-чёрные, b-деревья), хеш-таблицы, графы. — Если идти в веб — HTML, CSS, JavaScript, веб-сокеты, REST, JS-фреймворки (Angular, React, Vue). — Паттерны проектирования, стиль кода, архитектура приложения, внедрение зависимостей, MVVM (если хочется в WPF), SOLID.
Анон, я работаю с блазором с клиент вебасембли и беком который хоститься на в сервере. у меня проблема подключить к этому сигналР, насколько я понимаю они все так же коммуницируются через сигнал р как и обычний блазор, только вот он у меня не работает с коробки, я понял как с вебасембли отправить сигнал на сервер но мне нужно еще с сервера тригернуть вебасембли, кто работал с такой архитектурой, можете подсказать куда рыть?
>>2176773 Что-то тут обсуждают или дедовские декстгпы или хипстоблейзоры. Что стало с этим миром, где няшный асп? Где вы вообще проекты на блейзорах находите? Ладно декстоп- легаси махровое поддерживать надо
>>2176798 очень просто, халява, сказал шефу что если делать все на блазоре тогда весь код будет выполнятся на устройствах пользователя и можно экономить на серверах. у него аж глаза загорелись вот и сказал мне учить теперь блазор, вот сижу теперь лениво пинаю двачь.
>>2176775 мань, я таких ответов могу сколько хочешь дать, и даже не будучи експертом, вот смотри, не понимаешь квантовую механику? иди четах квантмех, не понимаешь достоевского? иди читай литературу, хочешь разобраться в орбитальной механике? ну ты понял куда тебе, а теперь угадай куда тебе надо пойти с если ты не знаешь что по существу сказать? правильно, тебе нахуй!
>>2176773 в общем пикрил пробую отослать что-то на хаб, второй пикрил хаб которому хочу отпарвить тертьий пикрил то что должно выполнятся после ответа хаба
>>2176819 Тогда какую книжку читать? Фримен А. - ASP.NET Core MVC Фриман А. - ASP.NET Core MVC 2 Сандерсон С - ASP.NET MVC3 Джеффри Палермо - ASP.NET MVC 4
Я так понимаю, что надо по порядку читать или можно сразу с MVC 4 начинать? Стоит ли ждать MVC 5 или MVC 6?
>>2176818 Хз какой ты ответ ожидаешь. Оно работает ровно так, как я описал: принял коннекшен, отправил меседж когда захотел на сокет. Сигнал р - это про открытое постоянное соединение.
>>2176831 вот такого >>2176826 ответа я ждал, сказал же что не открывается это соединение
>>2176826 в общем весьма резонное замечание, работать правда не начало но ошибка поменялась поэтому движение в правильном направление, сейчас ошибка такая, я понятие не иммею что это значит, первый раз такое вижу
>>2176830 устройся стажером, у меня друг устроился стажером вообще без знания программирования, даже без вышки по специальности. Вкатиться можно легко просто будь готов что по началу работать будешь за еду
>>2176837 Я думал что это распостраненная проблема, потому что изначально в вебАсембли не прикручен сигналР, без сервера он не нужен же, я ставил его вручную через нугет, потому и спросил как народ это делал потому что есть подозрение что я в чем-то простом налажал
>>2176847 Мне наоборот сказали, что программисты все работают на удаленке и не надо ни куда переезжать. И получают дофига, что в моей мухосрани за год не заработаешь.
>>2176846 этот >>2176847 верно говорит, безссмыслено брать джуна на удаленку, причем и для тебя тоже безмысленно искать удаленку, тебе надо сеньйора под рукой что бы он тебе давал задачи, контролировали и учил
в общем вопрос был решен благодаря этому посту >>2176826 после этого я понял в чем облажался, у меня в место ппервого пикрила был творой, из за чего он и ругался, сейчас все работает, спасибо анонам, если бы не этот пост >>2176826 я бы не нашел так быстро
>>2176690 → Чел, ты троллишь? Ты абсолютно так же можешь на любом языке хуячить программы любой сложности. Никакого деления на десктопные-консольные-веб-мобильные нет. > Извините, а если мне нужно вычислять непрерывный процесс и параллельно визуализировать его результаты Ты точно троллишь. Я просто не поверю что чел даже уровня джун такую хуйню сморозить мог.
>>2176951 1. Накатываешь SP1 на свой кусок говнашиндовс 7. 2. Скачиваешь и устанавливаешь точка нет 5 3. Копируешь скопиленый асп нет коре на шиндовс 4. Пишешь в консоль дотнет рун моя.прога.длл
>>2177030 От проекта зависит. Если слишком много слоев, очень быстро заебешься вручную мапить яблоки в бананы. Из вменяемых альтернатив: ручной маппинг и сорс генератор/т4, но с последним будут сложности при сложном маппинге.
>>2177034 > сорс генератор А есть уже решения? Видел какое-то говно, но оно платное. Тип кста люто обсирает автомапер. Я вообще думал в этих ваших новых код генераторах это сделать и ебошить как имлицит конверт в помеченные классы. ПОка н епредставляю себе обьем задачи.
>>2176850 >Мне наоборот сказали, что программисты все работают на удаленке и не надо ни куда переезжать Все правильно тебе сказали. Только ты то ещё не программист, сечешь? Сначала нужно стать программистом, а потом - устраиваться на удаленку.
>>2177184 AutoMapper >>2177261 Объясняю как работает программирование. 1. Заходишь в гугл 2. пишешь "C# capitalize first letter of word". 3. Просматриваешь первые 1-5 результатов и выбираешь наиболее подходящий 4. если надо правишь детали под свою задачу. 5. ... 6. PROFIT!
>>2176736 (OP) Помогите мне! Пишу расширение для VS. Нужно автоматизировать создание комментариев к коду. Установил СДК, создал проект, а дальше что? В гайдах создают toolwindow но я понимаю, что он мне не нужен. Какой extensible element взять из пикрилов? Туплю уже какой час... Спасибо если поможете!
Поясните за положение WPF в 2к21? Сам я трогал конюшни-легаси WinForms, ну и привык, что это дефолтный стэк до сих пор во многих шопах и может соседствовать со всяким VueJS, а с WPF что?
Вот объективно, хорошая ли это технология для шиндоус UI?
У меня самого один маленький проект на нём есть, ну я так и не понял, годнота или нет, точнее есть ли профит юзать вместо форм.
>>2177298 >Объясняю как работает программирование. >1. Заходишь в гугл Напрягся >2. пишешь "C# capitalize first letter of word". Выгорел >3. Просматриваешь первые 1-5 результатов и выбираешь наиболее подходящий Между каждым просмотром сбегал покурить и чекнуть тиктоки. >4. если надо правишь детали под свою задачу. Догорел >5. ... Устроился сархитектором и только рисую кортинки.
>>2177790 Эх. Забавно во всем этом то, что пока учился в вузе - считал впф - топовой хуйней. Но как пришел работать и поработал примерно годик бекендером - винформы такой-то охуенной няшей стали. Вот буквально - нужно какую-то тулзу быстро написать - хуяк-хуяк и тулза готова. Замарин - пиздец отвращение после первого места работы вызывает, после тесного знакомства с ним. Просто потому что на 2016 год - шаг влево-варпаво от чего-то стандартного - все, пизда. UWP - потрогал, вроде как WPF только уродливый. MAUI - не понравился, плюс как слышал там под капотом замарин, а замарин все еще флешбеки вызывает. Короче, топ - формы. ВПФ - не топ, но там стандартизация и ксстомизация хорошие.
>>2177806 А почему WPF не зашёл? Я вот смотрю вроде XAML юзают много где, напримем всякие Noesis GUI.
Ну я собственно, как раз работал с винФормами и считал их для быдла, на небольшом проекте мог выбирать, и выбрал WPF.
У меня там был особый кейс - Bootstrapper Installer, поэтому я нихуя не понял правильно ли я MVVM там заюзал.
Конечно оверинженирингом чучуть попахивало, особенно когда нужно было highlight цвета у элементов менять дефолтные через templates.
Ещё так и не смог пофиксить через XAML очень маленькую мертвую зону у чекбокс элементов для клика (примерно 1-3% пикселей слева, вверху и снизу) внутри листа, как же я там заебался.
Есть уродский быдлокод. Он мне совсем не нравится, я его не люблю. Вот эти все ифы, повторения кода какие то некрасивые. Как можно его сократить и сделать более изящным и элегантным? Или это норма и как то так и должно выглядеть?
>>2177923 Ну во-первых надо вывести параметр в метод string type в enum. Во-вторых чтобы избавиться от if-оф можно погуглить, я чаще всего юзаю метод как на пик1
Устроился на свою первую галеру на заводе C# программистом. Мне дали задание сделать прогу которая туда-сюда гоняет реально важные документы на миллионы рублей
В целом отправлять по api какому-то хую просто, однако сами требования заказчика усложняют всю картину. Суть такова:
1. Есть папка с файлами 2. Туда работник завода кидает файлы 3. Программа отслеживает эти файлы (сканирует папку по таймеру) 4. Если файлы есть - отправляются
1. Есть чел который принимает эти файлы, он тоже может кидать в ответ какие-то файлы 2. С api я получаю эти файлы 3. Скачиваю в выбранную директорию
Так же, юзер проги может настраивать первую подпрограмму (выбирает путь до директории, таймер сканирования, сканировать ли вложенные директории)
Всё это говно логируется в программе (типа как консоль, чтобы просто смотреть состояние текущее программы, отправились ли файлы, отправляются ли в принципе, есть ли новые)
Я не понимаю, как мне правильно организовать MVVM, чтобы настраивать первую подпрограмму (необходимо открыть окно, чтобы настроить). Но ведь следуя паттерну mvvm, то viewmodel не знает о view, а значит и никакой передачи данных между окнами быть не может. Как мне правильно организовать это всё?
>>2178062 Как кайф так и организовывай. По факту, когда не знаешь КАК ПРАВИЛЬНО ОРГАНИЗОВЫВАТЬ - значит что ты не знаешь как решать задачу и считаешь что если тебе объяснят как правильно организовать - у тебя волшебным образом появится понимание того как делать задачу.
>>2178072 Отслеживание папки и логирование - это я уже сделал. Проблема в том, как всё это настроить через отдельное окно, а так же как у меня будет выглядеть VM в основном окне, в котором и будет запускаться процесс сканирования папки + отслеживания новых файлов от заказчика. Это ведь две разные вещи, а значит и две разные ViewModel. Как я могу забиндить 2 ViewModel к одной View? Правильно ли это?
В основном окне у меня "под капотом": 1. Сканирование папки + отправка исходящих файлов 2. Сканирование папки "входящие" на сайте + скачивание если появились новые 3. псевдо-логирование + вывод лога в основное окно программы. Например появились файлы в папке, в программе вывелось "новые файлы" и это же записалось в файлик который будет жить 24 часа.
Я могу сделать какую-нибудь хитровыебанную ViewModel в которой в конструкторе будет запускаться методы из разных Model (WaitDirectoryChange(), WaitIncomingFilesChange(), StartLog()). Но правильно ли это? Так помимо запуска всех этих методов, мне их еще и настроить надо через отдельное окно, а как передать данные между окнами?
>>2178101 >В чем сложность? Можно хоть 100 привязать или сделать аналог шаблона Composite. Не знаю как это сделать, я только начал изучать MVVM. Можешь пожалуйста скинуть на статью какую-нибудь где биндят несколько VM
Не хранить говно как сканирование папки и отправка файлов в VM. VM - это не управляющий элемент. А где мне всё это запустить? У меня есть Model c методами отслеживания папки. Где мне метод отслеживания запустить?
>А где мне всё это запустить? Ты нарушаешь единственную ответственность в солиде, превращая свою VM и M заодно в свалку. Создай отдельный класс/классы и вызывай его метод из VM.
Немного наверное не в тему треда. Но блин, вам не грустно от того как 11 выглядит? Просто чем дальше - тем больше у меня мыслей о том чтобы перекатиться на линукс. Тем более что там теперь можно на шарпике кодить без особых проблем.
>>2178123 Я могу данные сохранить в бд, а потом по триггеру достать их в виде модели. Это норм? В оперативке так себе хранить настройки программы, тогда они сохраняться не будут. Я правда не умею работать с триггерами.
>>2178121 Создай отдельный класс/классы и вызывай его метод из VM. Всё это говно должно запускаться всё само без участия человека. Запустил программу -> всё само уже там где-то чето там отправляется сканируется хуируется итп.
Я просто не понимаю, как мне настроить метод отправки файлов в гл. окне через окно настроек ебаных
>>2178149 >Я могу данные сохранить в бд Похуй где.
>Это норм? Нет.
>Всё это говно должно запускаться всё само без участия человека. Тебе ничего не мешает насрать все вообще в окне без MVVM. Сути это не меняет, твой код говно.
>Я просто не понимаю, как мне настроить метод отправки файлов в гл. окне через окно настроек ебаных 1. Не хранить данные в VM 2. Не хранить данные в моделях 3. Хранить данные в других классах на другом слое кода, который про твой MVVM и WPF нехуя не знает.
>>2178187 Ну блин. Чел же дурачка из себя строит. По факту - сделать обычный сервисный класс с настройками. Его заригестрировать в контейнере как синглтрон. Классы которым нужно какие-то настройки получать - в конструкторе этот класс получают. При выполнении логики просто берут актуальную на данный момент информацию. Все. Изи-бризи. Не, чел вон, бд зачем-то хочет присобачить и доставать из бд при каждом изменении настройки. Хитро, что пиздец.
>>2178200 >Не, чел вон, бд зачем-то хочет присобачить и доставать из бд при каждом изменении настройки. Хитро, что пиздец. Так если программу закрыть, то настройки не сохранятся
>>2178207 Во-первых, а может и не надо сохранять. Во-вторых, если таки надо сохранять - ты это уже в логике настройки делаешь. Какая нахуй разница клиенту как эта настройка получена и откуда она взялась?
>>2178274 Ну как. Из коробки их нет. Можно ставить нугетом. Просто если человек задает такие вопросы, то очевидно же что он не знает ни про какие IOptions.
>>2178164 >Тебе ничего не мешает насрать все вообще в окне без MVVM. Во многих случаях именно так и надо делать. Если весь твой код занимает меньше 10к строк кода, то только так. А то долбоёбы начитаются про паттерны и давай городить хуйни на трёхкнопочное приложение.
>>2178335 Мне не нужна сетевая папка. У меня 2 разные вещи 1. Входящие: файлы лежащие не на моем сервере, а на сайте какого-то говна (я с помощью апи получаю их) 2. Исходящие: файлы лежащие в папке на локальном пк, отправляю их по апи какому-то челу и они у него появляются на сайте
>>2178332 Ну например я когда-то написал код на VBA для Excel, которому уже лет 10. Который представляет из себя один единственный метод на несколько тысяч строк кода. И каким-то образом, даже далёкие от программирования люди понимают, что и как он делает, и пользуются им уже многие годы и передают другим, вносят свои правки.
>>2178363 Как ты собираешься удалять значение из ConcurrentDictionary спустя заданное время? Или как ты уменьшишь размер ConcurrentDictionary при инвалидации огромного числа записей?
>>2178366 Мб у меня на работе по даунски меморикеш юзают. Потому что в нем хранятся данные в виде memoryCache.Add("UserCacheConstant", new Dictionary<userid, User>)
Если уж зашла пляска о кешах. Как вы группируете кеш для массовой иерархической инвалидации? Допустим, мне надо инвалидировать ВСЕХ юзеров, если, например, роль какая-то удалилась или типа того. Есть какой-то годный снипет? Знаю, что через кенселейшн токены можно там наворотить, но когда прошлый раз пытался сделать красиво - где-то я завтыкнулся и бросил. Хм. А кенселейшн токены, вообще будут работать с распределенным кешем?
А на каком языке написан сишарп и дотнет? А классы внутри самого шарпа? Прочитал что все типы данных представляют собой тоже класс где-то под капотом, а на каком языке всё это написано?
Смотрите. Допустим есть ряд файликов с ASN.1(прикладываю картиночку, чтобы было понятно) описанием конфигурации разных устройств. Парсер который строит дерево с сущностями, импортами-экспортами, валидирует это все - я написал. Так вот. Что я хочу. Я хочу генерировать классы-модельки для вот таких вот документов. Ну, т.е. допустим я запускаю программулину, указываю путь к файлику, если все ок - генерируется пачка файлов( ну, типа в контексте картинки: //ModuleName.Person public enum Sex{ male = 0, female = 1 };
public sealed class Company{ public VisibleString Name {get;set;} public VisibleString Departamet {get;set;} } )
с модельками того что мы там подастовали и DLL которую я бы мог использовать по необходимости. Так вот. Я не совсем понимаю как это делать, лол. Потому буду рад любым советикам.
Такой вопрос. Есть ли более удобный способ проверить входит ли тип объекта в множество типов. Реализовал пикрелейтедом, но слишком многословная конструкция выходит.
Вопрос по поводу InMemoryCache - что именно кешируется? Стоит ли прикручивать Redis? Что можно почитать/потыкать? Студентота и прочая перхоть идет нахуй инста, нужны мнения тех, кто с этим работал. Урлы на MSDN тоже кидать не нужно, гуглить научен
>>2178863 Спасибо. Схороню. Не совсем то что хотелось бы, но на безрыбье.
>>2178859 Никакой конкретной. Просто задумался на тему, решил поспрашивать советов мудрых.
>>2178873 А в чем проблема проверок типов? Вот допустим у меня есть женерик метод который я хочу ограничить несколькими примитивными типами. Но ограничения женериков не работают с примитивами. И какие есть опции кроме проверки типа внутри метода?
>>2178866 >>базовые тупые вопросы. чекни мать, если InMemoryCache это базовый вопрос. Решеточный тред как обычно полон сопливых выпердышей, которые только тригеры кидают
>>2178884 Один ты дартаньян. Нет - ты пидорас. Исходный код - есть, сиди смотри. Пришло говно с претензиями в первом же посте с говновопросом и права качает. Пососи хуя
>>2178943 >определили у сисярп даунов раздвоение личности? И почему ты так бомбишь? Поди понимаешь, что стэк, в которым ты повяз это кусок бесполезного кала (за исключением сдачи лабы в шараге). Сочувствую, хули, такова судьба лохов. Делфи и даже паскаль адепты (внезапно) до последнего отбивались от ссаных тряпок, настала очередь сисярп даунов. Такова судьба, ничего не поделать.
Я правильно понимаю что в .НЕТ 5 на винде скомпилировать сингл екзешник невозможно. сделал dotnet publish --self-contained true -r win-x64 -p:PublishSingleFile=True -c Release и все равно куча мусора.
>>2178950 А в чём проблема с Делфи? Мы в конторе до сих пор его юзаем сайд-бай-сайд, так сказать, новый WPF и тот же старый Делфи, да тулзы может быть уже устарели чучуть на нём, но проект хороший.
>>2178954 Это папка publish? Вот так генерит только exe и pdb в ней: publish -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeAllContentForSelfExtract=true -c Release
Есть программа, заполняющая значениями из базы данных по ID...
Но там проблема, что некоторые поля опциональны (могут быть null). Если заполнять данные в контроллере, то логично, что вылетает с ошибкой. Какие варианты есть? Кроме создания двух view с разными полями?
Смотрите, няши. На работе нужно было сервис один сделать. Сервис в смысле демона. Так вот. Я сделал. Но меня вот что смущает. Вся настройка сервиса происходит через json-файлик. И вроде ничего страшного. Типа его один раз настроил и он себе запускается при старте системы. Но первый запуск для пользователя - нужно прочитать инструкцию, потом полезть в файлик и настроить как тебе надо. Я думаю о том чтобы выпросить недельку(да, беру с запасом) и сделать настройщик. Ну, простенькое винформ-приложение, которое просто откроет этот же json, пользователь настроит как ему надо, сохранит но это будет с графическим интерфейсом и типа удобнее. Стоит ли это того? Вот кто-нибудь тут для телекома пилил демоны на шарпе? Как у вас вообще поставка клиентам осуществляется? Потому что у меня это выглядело как: клиент дает доступ к виртуальной машине, я подключился, закинул все, настроил и пошел по делам, что довольно выглядит геморно если в дальнейшей перспективе смотреть.
>>2179539 >@if (Model.Something != null) ? Так ошибка вылазит прямо в контроллере
>Вообще непанятна, что тебе надо? Заполнять документ для печати. Есть хозяин, а есть доверенное лицо. Но хозяин есть всегда, то доверенное лицо может и не быть.
>>2179581 >Так ошибка вылазит прямо в контроллере Ну так в контроллере и ифай, ебана. Ну или да, как выше посоветовали маппер какйо-то заюзай. Автомаппер там или типа того
>>2179673 Ну так посылай, ебана. На вьюхе еще раз ифай. Если у тебя можно выделить несколько типов - да, отдельные вью или паршиал вью. Можешь паршиал вью с екшеном создать и уже в нем домапливать. Но все это хуита.
Чем ASP.NET лучше, чем, к примеру, Laravel для PHP? Система тяжёловесная, требует какие-то специфические хостинги, когда РНР практически везде стоит по-умолчанию. Для разработки не достаточно простого текстового редактора, а надо грузить платную ИДЕ от Микрософт. Винда онли. Если в РНР всё работает по-честному и можно самостоятельно разобраться в работе фреймворка, то в АСП присутствует магия, когда некоторые вещи работают волшебным образом за счёт скрытых механик. В РНР полная свобода творчества, а в АСП - жесткие ограничения. Одну палочку удалил и весь сайт перестаёт работать по необъяснимым причинам.
>>2180165 >Только на днищенских проектах ты все в одном лице. Ну или без понимания примитивнейших вещей. Удалил он палочку в клиенте сигналр при касте к абсолютной урле.
Кто-нибудь умеет байтовым смещением пользоваться? Вот мой пример: 1 % 2 и 1 & 1 Дают один результат почему? Как научиться пользоваться этим как господь?
>>2178133 >вам не грустно от того как 11 выглядит? Нет. >перекатиться на линукс Люди из этого порой делают пиздец какое событие. Отрезать кусок диска и накатить какую-нибудь бубунту дело получаса. Поплачешь и вернешься назад, будет весело от вида 11 >>2180220 Что за хуйню ты несешь? Есть побитовое смещении >> и <<. для битовых операций и преобразований хватит школьного учебника информатика. А вот это - 1 % 2 - остаток от деления - примерно 3ий класс.
Что вы делаете на шарпе? Сайты на асп? Игры на юнити? Десктоп приложения? Есть тут человек который реально что-то делает? Особенно интересуют пет проекты (но не уровня калькулятора)
>>2178950 Так dotnet и C# в частности это наиболее адекватное, что есть сейчас на рынке для быстрого и удобного создания каких либо сервисов и как дополнение к С++. У меня на работе в CV вычислительное ядро написано на С++, а всякие сервисы для коммуникаций на C#/F#. Очень классно, а общается это все через gRPC. А самое замечательное, что это работает на linux. Я выбирал между JVM, и даже первая версия была написана на джаве, но как я с нее плевался когда пытался скомпилировать что-то с помощью ебучего maven, это же просто пиздос. Да и Java по сравнению с C# кажется деревянной. Вот например, в сисярпе есть async/await из коробки, в ебучей джаве такого нет, даже в С++ уже завезли корутины. Так что, дотнет заебись, а ты иди нахуй от сюда, никчемная макака, максимум что клепавшая - это лабы на питоне.
>>2180408 Откуда мне знать? Вся система поделена на проекты, я их все и не знаю хотя б по названию. То, за что мы отвечаем, центральная система, к которой все обращаются и которая сама разные стейт машины запускает.
Антоны, а нужно ли мне вообще учить asp.net, чтобы устроиться на работу, я как бы не против, но там зачастую требуется фулстак. Я посмотрел на вакансии, есть и без asp.net вакансии, которые требуют только знания C#, .Net Framework и знания Solid, стоит ли туда идти или лучше получить еще?
>>2180834 В последний раз я использовал стейт машины, когда проходил туториал по написанию игр в Godot. Персонаж был представлен стейт-машиной, были такие состояния как Idle, Run, Jump, в зависимости от текущего состояния по-разному реагировал на нажатия клавиш и отрисовывал разные анимации. Можешь для начала написать примитивный консольный вариант персонажа с разными состояниями.
А ещё стейт-машины связаны с регулярными выражениями. Можешь придумать стейт-машину, которая получает строку или список на входе и каким-то образом анализирует или преобразует его.
Поцоны, что нужно было курить что бы придумать асп веб формс? Я так то асп нет кор мвц изучаю. Пытаюсь вкатится. Ну более менее изучил, простые сайты там могу написать. И думаю а дай как я посмотрю че там раньше было. Госпаде, как так то нахуй? Там же не логичный бред блять полный. Даже тот код питухона без скобок который сливается логичнее и понятнее смотрится. Я до этого всего немного пшп знал и бля его читать же проще. Я хуй знает, мб если больше времени уделить то все понятнее станет. Но вот хз что может быть лучше MVC. Все просто и логично.
Как понять готов ли я к работе? Сцу на отклики на вакансии кидать. А вдруг позовут на собес? Будут там спрашивать про к Рокет сайн а я в душе не ебу че там и как. Метанит то я весь прочел. Ну мб наследование повторить а так уже хорошо все выучил. По АСП нет кор тоже вроде хорошо знаю основы. Ну со шпаргалкой. А с гуглом дак ваще профи. Есть какая лакмусовая бумажка? Ну например написать сайт по определенному ТЗ, естественно будет говнокод но все же ТЗ будет выполнено и типо можно и джуном называтся. Или прогу просто п ТЗ. Или давайте такое ТЗ вмечте напишем.
Кста, по поводу vs2022 >.NET Framework 4.5.2 or above is required to install Visual Studio. Visual Studio requires .NET Framework 4.8 to run. If .NET Framework 4.8 isn't already installed, it will be installed during setup. Чет проиграл. Тебе нужен net framework, что бы мы могли установить тебе net framework.
>>2181108 >.NET Framework 4.5.2 или выше требуется для установки Visual Studio. Visual Studio требует .NET Framework 4.8 для запуска. Если .NET Framework 4.8 не установлен, будет установлен во время установки. >Тебе нужен net framework, что бы мы могли установить тебе net framework. Я с тебя проиграл.
>>2181160 А в чем агрессия-то? В том что тебе не разжевали и на блюдечке не подали? Ок, зумер. Я же не знаю твой уровень, что тебе не понятно анимации или ты даже про :hover не знаешь, а начинать рассказ с того что переменная это такой ящичек... желания нет. А по F12 вот тебе готовый рабочий пример со всем html и css. И подебажить и горячие изменения внести. Хз чем ты недоволен.
>>2181219 Так а че, WCF в чистом виде никто так и не повторил? Я вижу что в нугете есть и ServiceModel, и ServicemModel.Web, но последний чет протухший.
> Из самого простого Я отказываюсь в это верить, надо продолжать искать. У меня двадцать интерфейсов, которые можно использовать как экземплярами в приложении, так и удаленно, причем делать это прозрачно, не теряя контроля над связностью. А теперь мне "генерить классы для клиентов"? Это пиздец, граждане.
>>2181230 >Так а че, WCF в чистом виде никто так и не повторил? Для клиента 100% поддержка. Для сервера левым васей в глубокой альфе. Но при переходе на кор, лучше вообще уйти от WCF.
>А теперь мне "генерить классы для клиентов"? Так WCF тоже генерит классы. В чем трабла? Клиент для сваггера или грпц работает 1 в 1. Анализаторы сейчас на столько умные, что достаточно нажать кнопку билд.
Но я сказал, что это самое простое решение. Простое - не значит лучшее. Для коммуникации между серверами лучше использовать очередь или другие системы для декапла связи.
>>2181236 > Но при переходе на кор, лучше вообще уйти от WCF. Ну я пытаюсь но не вижу пока удобных альтернатив. Мне ведь еще кучу интерфейсов надо переводить.
> Анализаторы сейчас на столько умные, что достаточно нажать кнопку билд.
Но ведь эту хуйню надо будет с собой таскать везде, иначе в стоковом окружении соснешь?
>Для коммуникации между серверами лучше использовать очередь или другие системы для декапла связи.
Так WCF, при всех его минусах, сам по себе заебись развязкой был. Нахуя сломали то что заебись работало - непонятно.
> очередь Какую очередь? Жирноту типа кролика или о чем ты?
Сорян, бля, за вопросы тупые, я прост все никак не соберусь полностью перейти на кор, приходится урывками в перерывах между поддержкой наследства перемогать
>>2181241 >Но ведь эту хуйню надо будет с собой таскать везде, иначе в стоковом окружении соснешь? Я не понял. Ты не умеешь заглушки на хттп вызовы клепать? Смысл тогда использовать, например, сигналр как писали выше? На него еще сложнее затычку сделать. Так нужно еще и постоянный конекшен держать, иначе получится WebApi через жопу.
>Какую очередь? Жирноту типа кролика или о чем ты? В таких системах как твой вцф есть очень много недостатков. Я даж не знаю как описать: - не масштабируется, больше одного сервера хуй поднимешь, сразу крути лоад балансер и другие извращенные схемы для навигации - нет реагирования на падение сервера, изволь сам написать - и как ты вообще это себе представляешь? Насиловать сервер в десна, пока не поднимется?
На кой фиг нужны очереди, глянь описание например RabbitMQ. Облачные сервисы предоставляют более широкий спектр возможностей.
>>2181251 >Ты не умеешь заглушки на хттп вызовы клепать?
Ну с вцф мне это и не надо. А так-то да, это изврат.
> Смысл тогда использовать, например, сигналр как писали выше?
Вот и я понять не могу, надеюсь что итт пояснят.
> В таких системах как твой вцф есть очень много недостатков. У него действительно много недостатков, но не концептуальных а реализационных. Короче, не тех что ты описал.
> не масштабируется, больше одного сервера хуй поднимешь Почему нет-то?
> нет реагирования на падение сервера, изволь сам написать
И это нормально. Может ты еще и сетевые ошибки не хочешь сам обрабатывать? Я не понимаю сути претензий.
> Насиловать сервер в десна, пока не поднимется?
Ну да. А как это происходит в случае любого другого сетевого взаимодействия?
> На кой фиг нужны очереди, глянь описание например RabbitMQ
Ну я про него и спросил. Это его подразумевали под очередью?
>>2181257 >Это его подразумевали под очередью? Да. Но в случае с RabbitMQ есть несколько моделей поведения очереди. В других системах каждое такое поведение названо другими словами.
>Почему нет-то? Потому что изначальный подход неправильный, если нужна отказоустойчивая система. В твоем случае придется переизобретать колесо. На грабли понаступаешь, сам потом придешь к этому решению. Пока можешь игнорировать.
>У него действительно много недостатков, но не концептуальных а реализационных. Замени WCF на что-угодно, в зависимости от того, что у тебя там (tcp, soap, http...) и сделай прототип. Про WCF забудь.
>>2181264 >Замени WCF на что-угодно, в зависимости от того, что у тебя там (tcp, soap, http...) и сделай прототип. Про WCF забудь.
Я в свое время начал, но без поддержки отражений на уровне редактора (студии) все оче плохо (а их сделать нормально это совсем боль). На каждый метод приходится писать (генерировать) прокладку.
Вся красота вцф в том и была, что я тупо делаю фабрикой экземпляр класса, который реализует интерфейс. При этом фабрикой я могу возвращать в зависимости от переданных извне настроек как вцф-экземпляр, созданный самим дотнетом и работающий через сетевой стек, так и тупо экземпляр класса, созданный в оперативе. Снаружи будет вообще похуй и мне это очень нравится, я реально часто это использую. Сейчас вернуться обратно на вариант абстракции уровня "всегда сеть" - это деградация.
Правильно ли я понимаю, что ты именно это мне предлагаешь? Если нет, то прошу терпеливо пояснить еще раз.
>>2181275 >На каждый метод приходится писать (генерировать) прокладку Я тебе уже объяснил, что на свагер и на грпц иде сама генерит нужные классы. Эти классы скрывают сетевой уровень и дают типизацию. Тебе надо только создать экземпляр класса сгенерированного клиента и вызвать у него метод. Только, в отличии от вцф, клиент ты можешь херануть не только на дотнете, а например на какой-нибудь экзотической хери как Haskell.
>>2181284 > Я тебе уже объяснил, что на свагер и на грпц иде сама генерит нужные классы.
Да, я понял, повторюсь: эта фигня прикручивается к иде и должна быть в наличии на каждой рабочей машине? Она реализована в виде расширения, работающего на каких-то хуках, или как? Если я собираю проект не через иде мне сначала придется его как-то через процессор этой хуйни прогонять?
>>2181294 >В чем проблема создать хелоу ворлд и потыкать палкой как оно работает? Занятой дохуя, хочется за меньшее количество телодвижений провести водораздел между оно/не оно и копать дальше только если это оно. Я ебал каждую современную пердолю ставить и палкой тыкать.
Всем спасибо за ответы. Как оказалось, новоделы умеют только разъебывать, а как строить, так сразу вспоминают технологии древних с генерацией кода. Охуеть вообще.
>>2181190 только мне в итоге нужно коеч-то совершенно другое, чего я сделать не могу, суть в адаптивности, когда мы сидим на большом екране пикча расшинряется на всю свою величину, но когда мы начнем ее ресайзить она не будет уменшаться как показано на всех примерах респонсивных дизайнов а вместо этого она как бы маштабироваться, сохраняя при это тот же размер, и так из пикчи скажем 16 на 9 сделаетм 4 на 3 просто обрезав все остальное как в том примере, я понятие не иммею как это сделать и просто коппирование оттуда когда мне ничего не даст
>>2181082 Сиу на галере на vs22. Из проблем R# только EAP и новый модный интеллисенс, который предугадывает твою следующую строчку на таб часто делает табуляцию вместо ввода этой самой строчки.
>>2181014 >когда наводишь мышкой проигрывается анимация >>2181323 >в итоге нужно коеч-то совершенно другое Давай ты сначала подумаешь что тебе нужно, потом это четко сформулируешь и потом уже напишешь сюда. желательно с минимальным примером залитым на какой-нибудь фиддлер.
>>2181344 >анимации через jquery, позиционирование элементов через float, position, z-index. Float уже вообще не котируется? А z-index -то при чем? Как без него попапы дергать-то?
>>2181551 Есть в этом некая ирония. Чел продает свое говно 20летней давности таким баранам, которые не в состоянии прикрутить оформление на очередной вордпресс.
>>2181561 Я когда-то, когда только вкатывался, начинал с жеса, писал одному кабанчику финтифлюшки для таких "тем" на жиквери. ПРи этом я ему явно говорил: "чувак, я не шарю, только вкатываюсь", ему был опохуй лол. Тему покупали.
>>2176736 (OP) Сап программач. Я вообще не кодер ни разу, а тупая мамака, учащаяся на тестировщика. Скинули лабу, протестировать калькулятор, написанный на си, но там не обычный кулькулятор, а двух кнопочная хуйня, считающая факториал. И вот я даже нихуя не помню, что такое этот блять факториал. Вроде по кнопкам потыкал, числа повбивал, все работает корректно (За исключением отрицательных чисел, но я хуй понимаю какой ответ верный при отрицательном факториале). Двач помоги как найти баг в калькуляторе?
>>2181790 Если калькулятор не предполагает ввод букв, то он их не должен позволять вводить в принципе. И ошибки бывают нескольких видов: когда выводится юзер френдли надпись, когда пидорасит все кишки реализации, когда выводится только неясная хуйня типа Null Reference Exception. мимо
Яндередева говнят за то что у него все на if else без использоваия свичей. Но я немного не могу понять как его if else заставляют игру тормозить, она что ли на каждый кадр игры делает все эти if else?
>>2181799 Попробуй пройти несколько собесов. Тебя в никакой черный список не добавят. Максимум оставят пометку "не брать полгода-год". Только если провалишься, не спрашивай причину, ты и так уже проебал их время.
Возьми например три конторы и начни с самой хуевой.
>>2181815 Это вариант: >когда пидорасит все кишки реализации Так не должно быть + ошибка на инглише, когда интерфейс на русеке. Я описал не все виды ошибок. Это самые типичные.
>>2181815 Ошибка. Кстати, если можно в результат вводить - тоже ошибка. Отсутствие локализации - тоже. Либо все на английском, либо русском, либо выбор, а не эта хуйня вразнобой. Да, еще можешь вбить оч большое число. Если зависает - ошибка. Если выдает неверный результат - ошибка.
>>2181823 >А свич значит после того как найдет нужное значение прекращает свою работу? Я не знаю как оптимизирован свич на юнити. На нормальном шарпе до какого-то момента "большой" свич заменялся на словарь. На современном шарпе только бенчмарки писать.
В свиче и ифе нет ничего плохого, если это не hot path. Но их черезмерное количество говорит о хуевой архитектуре. Часто можно переписать код таким образом, чтобы иф вообще был не нужен. Если от ифа не получается избавиться, то иногда его можно на что-то заменить, например на шаблон состояние.
>>2181826 Спасибо анончик, попробовал вбить 99999999 тоже выдало ошибку :3 Можешь уточнить поподробнее, как описать отсутствие локализации в тест кейсе?
>>2181832 Я пока слаб в программировании, но вообще не могу представить чем можно заменить иф. Вот допустим как у яндередева у нас есть школа где школьники в определённое время занимаются разными занятиями. Как это без иф сделать?
>>2181882 Смотри. В простом случае switch - это последовательность if - else if - else if - else if... Ясное дело, если проверяющее условие где-то в жопе, то надо пройтись по всем предыдущим проверкам. И ясное дело, если нужное условие было найдено, то эта цепочка ифов прекращается.
Но! В шарпе есть дохуя различных оптимизаций, помнить которые - сойдешь с ума. Еще осложняет жизнь современный паттерн матчинг и всякие хитровыебанные оптимизации процессора (лучше вообще забудь, что они существуют). Самое простое и правильное решение - написать бенчмарк на конкретный участок кода. Любая оптимизация в принципе начинается с бенчмарка. Пох, что в случае с юнити большинство кладет хуй на тесты.
>>2181890 У тебя слишком общий вопрос. Проблемы в деталях реализации. Как правильно решить ту или иную ситуацию конкретно на его коде обсасали на многих ресурсах, в том числе на тытрубе.
Например частый говнокод. Накидали на сцену пачку объектов и дописали им текстовые теги. Потом в методе Update ищут объект по тегу и из него достают нужный компонент. В большинстве случаев, где такое говно используют, искать объект по тегу вообще не нужно. С нормальным разделением логики на классы и инкапсуляцией кишков, ссылка на нужный объект будет и ее искать не надо. А не как это обычно, насрать все в GameObject.
Потом на такой говнокод насаживается дополнительная логика по проверке тегов, чтобы описать какое-то поведение в зависимости от типа объекта. Ну а хули? Объект по тегу нашли же, продолжаем пьянку.
И в чём тогда инкапсуляция, если свойства всё равно открыты и геттеры-сеттеры стандартные и ничего не делают необычного? По сути заменили шило на мыло.
>>2182155 Ни разу не видел, чтобы кто-то писал условия. Все как макаки шлёпают get-set и всё. Тем более, чтобы условие написать, тебе нужен доступ к самой переменной, а свойство её скрывает.
Как вы учили ASP.NET? Там же какая-то мешанина миллионов файлов с кучей уже прописанного кода? Пробовал учить по книжкам, но сгораю на моменте, когда пишут что-нибудь типа "а чтобы добавить такую-то фичу, надо в файле startup.cs прописать AddGovnoMocha()". Как это всё запомнить?
>>2182161 >Ни разу не видел Значит не видел ничего кроме POCO классов. Как будешь реализовывать INotifyPropertyChanged используя поля? А? >а свойство её скрывает. Не свойство а автосвойство, почувствуй разницу. Первое - сахар, второе сахар поверх сахара. >проще написать так Прям охуеть как проще, особенно когда для свойств есть уже встроенные сниппеты. >в чём тогда инкапсуляция В том, что объект контролирует доступ к своим кишкам. >геттеры-сеттеры стандартные и ничего не делают. Напиши которые будут что-то делать. А еще фреймворки, которые используют рефлексию работают со свойствами.
>>2182209 по новым требованиям 10 нельзя, приводит к делению на 0 в блоке управления ядерным реактором и блокированию кнопки АЗ-5 @ переписали, оттестировали @ пришел джун, присвоил 10 @ джуном тормозят нейтроны @ тимлид охлаждает жопу в бассейне-барбатёре
Блдаж, почему в пистоне можно просто написать input("Введите свое говно сюда") А в шарпе надо вот такое городить Console.WriteLine("Введите свое говно сюда") Console.ReadLine()
>>2182421 Вышла RC. Студия всегда была доступна свободно для загрузки, вроде месяц без ключа пашет или даже три. В любом случае энтерпрайз ключи легко найти на варезниках.
>>2182422 У тебя вопрос дурацкий, с тем же успехом можешь вопрошать почему в экс СССР натуральные числа начинаются с 1 а не с 0.
>>2182422 Это всё фигня. Вот когда начнёшь изучать фреймворки, вот тогда офигеешь. Я сейчас изучаю APS.NET и офигел от его сложности. На тебя просто вываливают миллион файлов с уже написанным кодом и ни где толком не написано, что этот код делают. Все "учебники" учат лишь как встроить туда свой код, чтобы вывести шаблонные списки. Как делать нормальные сайты никто не пишет.
>>2182429 Как же ты заебал, вкатун. Говори спаибо, что тебе изкаробки все дают . Для таких вкатунов как ты, кста. Не хочешь- удаляй CreateHostBuilder и пердоль все сам, ну или консольку создавай сразу.
>Как делать нормальные сайты никто не пишет. Так за тебя, ебика, там в темплейте уже нормально и настроили (частично). Пиздуй в ПХП и создавай там "нормальные" сайты в один файл.
>>2182429 APS.NET Core? В MVC все просто и логично. Да много всего есть и по этому простой одностраничный сайт будет долго пилить. Но собственно технология не для этого. Надо 2 страницы делай на пшп. А если надо дохуя чего городить то выбирай асп нет коре, там еще и сигналР есть и Блейзор ваще бомбезные штуки.
>>2182417 А разве просто лигатурный шрифт выбрать недостаточно? >>2182407 Я тебя помню питоногей, ты же уже это спрашивал и получал код метода. Зачем опять тут насрал? >>2182429 Бери пустой проект и сам подключай что надо шаг за шагом. Для начала хоть по метениту. >Как делать нормальные сайты никто не пишет. А не ты ли тот шизик, которому и про впф не пишут, ни про как "писать код в событийной модели"?
>>2182447 ИМХО MVC и MVVM это кал. Всё в динамике (теряется статическая типизация), хуй проссышь что где и как работает, поэтому как дебил ловишь ошибки в рантайме перезапуская сотни раз.
>>2182455 >А разве просто лигатурный шрифт выбрать недостаточно?
Разобрался. Я думал лигатура это опция для шрифта, а оказывается надо выбирать шрифт с суффиксом CODE вместо MONO. Но остается вопрос насчет операторов --, == и -> они отображаются как обычно.
>>2182459 Какие нахуй ошибки? Поставил точку остановки на методе который тестируешь и смотришь что не так. Все логично. Одна страница, одно представление , одна вьюмодель, один контроллер и методы на каждую кнопку. Вот например каталог фильмов. Страница с фильмов. Хедер и футер подгружается с частичных представлений, вьюмодель собирается в контролере, в ней инфо о фильме и похожие фильмы. Выполняется GET метод, отдается вью модель и выводится инфа в представлении. Куда логичнее то? Все по полочкам разбито, всегда понятно где ошибка. А ты как хочешь что бы было?
>>2182488 Родные реализации ВПФ или асп поддерживаются студией и сильно помогают отлавливать динамические ошибки, на любой кастомной реализации MVVM уебешься искать опечотку в каком нибудь биндинге.
>>2182499 Я ж говорю это МС за тебя все сделал и добавил кучу хелперов под свои фреймворки. В общем случае это не так, а биндинги могут быть очерь хитрые. для всяких таблиц, списков или деревьев.
>>2182502 >МС за тебя все сделал и добавил кучу хелперов На тему качества иде. + еще и в вс хоткей Go To Definition не пашет для View, почему-то сделали другой хоткей и другое название меню. В вс код вовсе смех.
>>2182626 > Вот почему на Java написали кроссплатформенную IDE Rider Нашёл, чем гордиться. > На нашем яп снова написали говно, которое свистит, пердит и жрёт всю озу, но зато на Жабе!
>>2182713 Если бы WPF был кроссплатформенным, то тоже можно было бы писать программы под все ОС. К примеру, написать свою красявую ИДЕ и продавать её вкатунам. Им функционал не важен, главное, чтобы всё было модно, молодёжно. Вот VS вроде функциональна, но когда хочешь создать файл, а на тебя вываливается меню на 50 пунктов - сбивает с толку и побешивает.
Киньте плиз пример годно сделаного велью обжекта. Я имею ввиду что-то типа class Email or class FullName В связке - ЕФ идеально, но там типа просто .OwnsOne
Что вообще помещать в такие велью обжекты? Валидацию? Зачем они вообще?
Тоесть я хочу вместо class UserEntity { string FirstName; string LastName; string Email } иметь UserEntity { FullnameValueObj FullName; EmailValueObj Email }
Какую годную реализацию ты хочешь, если Value Object - это класс, который нельзя создать невалидным? Есть два подхода: валидация в конструкторе, либо приватный конструктор и валидация в статическом методе Create.
Почему нельзя проверять 2 decimal на равенство? Это ж не double, в котором точность залупная, а специальный тип, предназначенный для работы с высокоточными данными. Препод охуел?
>>2182900 >OwnsOne Дерьмо с строковыми литералами + NRE. У тебя модель домена запросто может не совпадать с способом сохранения.
>Инфа 100%? Тебе сложно взять книгу по ддд и прочитать ее? Или ты ожидаешь пересказ книги, полностью посвященной ддд, в посте на анонимной борде?
Value Object должны следовать нескольким правилам дизайна. Их городят на что-то мелкое, чтобы добиться помощи от компилятора. Например, есть имя юзвера, которое не может быть длиннее 50 символов и короче 1 символа. Или не дать возможность присвоить идентификатор пользователя вместо идентификатора роли.
Есть еще ряд оптимизаций. Например замена рекорда на ридонли структуру, но если у тебя руки из жопы, то производительность будет хуже, чем с классами.
>>2182914 >Дерьмо с строковыми литералами + NRE. У тебя модель домена запросто может не совпадать с способом сохранения. Строковыми литералами? Нипонел. Нормально там все типы для полей распердоливаются. Ты считаешь, что поверх ентити должна быть модель? Репозиторий должен модель или ентитю возвращать?
>Тебе сложно взять книгу по ддд и прочитать ее? Или ты ожидаешь пересказ книги, полностью посвященной ддд, в посте на анонимной борде? Да. Ну не пересказ, а объяснение "для тупых" по некоторым довольно узким вопросам.
>помощи от компилятора. Например, есть имя юзвера, которое не может быть длиннее 50 символов и короче 1 символа. Ээээ. А как компилятор нам поможет провалидировать длину строки в билд тайме?
>>2182917 Ты уже хочешь разжевывание на каждую мою реплику. Модель домена - это не модель эфа и не M в MVC. Модель домена ничего не знает про интерфейс и способ сохранения данных.
Почему не получается вывести шахматные символы в консоль? Пикрелейтед демонстрирует что проблема не в шрифтах и сами по себе символы отображаются, но вот программа выводит исключительно '?'.
>>2182982 >Пикрелейтед демонстрирует что проблема не в шрифтах и сами по себе символы отображаются УТВЕРЖДАЕТ ЧТО ШРИФТ КОНСОЛИ МОЖЕТ ВЫВОДИТЬ ЮНИКОД @ ПРУФАЕТ СКРИНОМ ИЗ РЕДАКТОРА КОДА Очередная жертва видеокурсов?
Как запушить в массив по человечески данные? Я принимаю по массиву типа [0, 1], [0,3] и мне надо чтобы в мой уже созданный пустой двумерный массив они добавлялись?
>>2183313 twoNumbers = ReadTwoNumbers(twoNumbers); array[0] = twoNumbers[0]; array[1] = twoNumbers[1]; Я пытался так, но array[][] изначально все null из-за этого нельзя взять array[0][0] и т.п.
>>2183315 Нихуя непонятно. Двумерный ([,]) или ступенчатый([][])? Ты знаешь что размеры массивов нельзя менять? Опиши задачу, уверен есть нормальный способ решения, а не твои костыли на массивах.
>>2183356 Ну если вы мне задачу решите так не интересно будет, это задачка по алгоритмам. цифры в строке это координаты массива, я на 0 0 нахожусь, нужно собирать посылки по координатам, передвигаться можно только вверх и вправо Количество строк известно
>>2183458 Да ну не общую же задачу, а конкретно ту, что ты решал тем кодом (который является твоим решением это задачи). Но я тебе уже написал тут >>2183412, это если ReadTwoNumbers выдает массив. И не надо никаких Array.Copy
Поясните за доскер. Есть у меня сайт на асп коре, который использует постгрес. Как организуется взаимодействие? БД тоже в контейнере запускать или можно стучаться в локальный сервер? Как лучше? И вот ещё сайт позволяет юзерам аплоадить файлы, я их складываю в ввврут, как это работает в случае докера, и как правильно поступать в таких ситуациях?
>>2183502 Бамп вопросу. Тоже интересует если у сайта есть бд MSSQL че с ней делать в докере? Я тренировался и делал типо каталог фильмов, бд MSSQL , все было походув одном контейнере. Но вот если я захочу обновить сайт то бд похерица при перезаливе. Я думаю что БД и сам сайт должны быть в разных контейнерах. А с файлами что делать? Ну с постерами и трейлерами к примеру?
Есть код который зависит от My.dll который загружается динамически в зависимости от условия может My1.dll загрузится, а может My2.dll интерфейсы/классы там одинаковые, различна лишь реализация, что-то типа стабильная версия и экспериментальная. Сейчас возникла необходимость получать из Assembly в которой используется My.dll ТИПЫ через GetTypes() и вот тут начало сыпать экспешены потому что My.dll на момент когда мне нужны тип он не загружен так как логика загрузки еще не обработана. И естественно срабатывает AppDomain.CurrentDomain.AssemblyResolve Проблема в том что на этой стадии я не могу знать какой именно надо грузить dll и вот тут возникает вопрос как фиксить ситуацию? Могу ли я загрузить скажем My1.dll и затем если в настройках в логике используется My2.dll загрузить и подменить ее?
Сразу скажу что никак раньше определить какую dll загружать я не могу потому что это как бы подмодуль другой dll которая так же загружается динамически и GetTypes() мне нужен для того чтобы получить тип экземпляр которого я создаю через рефлексию. Т.е ситуацию можно решить если каким-то образом получать тип экзлемпляра что хочу сделать без GetTypes(), но такого способа вроде бы не существует.
>>2183872 Если классы и интерфейсы в сборках одинаковые, можно сделать отдельный DLL-фасад, который будет сообщать остальному коду сигнатуру My.dll, My1.dll и так далее. Юзай extern class для определения.
Двачик, вот вам задачка, 1) у нас есть квадраты, у каждого квадрата есть высота, ширина которая определяется условними пунктами от плоскости на котором они находятся. 2) Они помещаются на плоскость и их позиционирование определяется количеством услонвых пунктов от плоскости. 3) Плоскость может растягиваться в осях Х и У, в таком случае услонвые пункты умножаются на степень растяжения.
А теперь вопрос, заказчик добавляет фичу с вращением квадратов на плоскости, при этом очевидно что если квадрат повернуть на 90 градусов то он потеряет свою правильную форму и размеры поскольку его высота которая расчитывалась условними пунктами умноженими на растяжение по высоте станет шириной а там могут быть совершенно другие коефициенты растяжения
>>2184157 Пункты, блять, неквадратные квадраты, блять. Нихуя не понял. Храни в квадрате его номинальные значения, а отображение в искривленном пространстве-времени получай через метод Transform.
>>2184246 Чел не может представить квадрат в виде вершин и применять к ним 3 операции: T x R x S T - матрица перемещения R - матрица поворота S - матрица масштабирования
>>2184246 я согласен я нарвеное написал непонятно и полную чепуху поэтому скину код, смотри это как сейчас, сейчас я предполагаю что поворт может быть только на 90 градусов, в таком случае я просто меняю висоту и ширину местами, это отлично работает когда плоскость не растягается, а вот когда мы попробуем растянуть плоскость например в оси Х можно заметить проблему потому что вместо растяжения квадратов в ширину они будут растягиваться в высоту, я может быть очень тупой но я не понимаю как сделать наоборот
>>2184258 я уточню есть плость, напрмиер пикча 100 на 100 сантиметров условных. они делятся на разрешение екрана, так мы поулчаем услонвые пункты плоскости
а далле мы строим квадраты умножая их размерность на эти пункты, это хорошо рабоатет если их не вращать проблема в том что пункты эти для оси Х и для оси У разные потому что присутствует растяжение по этим осям
>>2184298 >У тебя не будет проблем, если ты повернешь вершины, а не будешь подменять ширину высотой.
ты иммеешь ввиду если заюзать transform rotate? я если че его специально оставил на том скрине закомментированым, что бы как бы намекнуть что это не работать, когда прямоугольник поворачивается высота становиться шириной только вот высота расчитана с учетом растяжения по высоте и оно все так же меняется когда меняется высота а не ширина, это точно та же проблема просто теперь надо учитовать смещения после оборота. потому что когда используется transform rotate маргин устанавливается не до вершины а до точки оборота, это страшно геморно
>>2184307 А вообще меня забавляют твои большие посты, вместо того, чтобы открыть книгу по компьютерной графике и прочитать пару первых глав, включая камеру.
>>2184308 Какая камера что ты несешь? у меня рисование квадратиков в браузере, я не игру какауй нибуть делаю, я пытаюсь сделать простенькую лабу для выша
>>2184319 Компьютерная графика учится на 1-2 курсе, так что попустись, хуев геймейкер. Каждый твой пост - несусветная ересь. Тот эффект, который ты пытаешься добиться, решается через дополнительное преобразование или через камеру. Но для этого ты должен считать не через анальное отверстие.
>>2184316 Вон у тебя стосы какие-то, надо понимать там твои прямоугольники. Вот координаты их повернутых вершин и высчитывай. Потом применяй свои коэффициенты растягивания. И вуаля! У тебя координаты вершин трансформированного прямоугольника. А кстати, что за проблему ты решаешь, а то мож ты вобще не туда свернул?
>>2184322 у меня нет никаких координатов вершин, там внутри 5 параметров
высота ширина отступ свеху отступ снизу угол поворота
это все что у меня есть, нет ни координатов, ни матриц, ни камер или точек как пишут некотрые шизики, поменять структуру стосов я не могу, она не моя. получаю что получаю... плоскостью есть сетка, она может растягиваться и мне нужно что бы стосы мои растягивались пропорционально растяжению плоскости под ними не важно на какой угол они повернуты.
>>2184339 По видеокурсам учишься что-ли? Ты же даже не понимаешь о чем тебе пишут, но зато обзывать мастак. >высота >ширина >отступ свеху >отступ снизу сверху/снизу или сверху/слева? Если второе, то этого достаточно, чтобы получить вершины. x0 = (left, top) x1 = (left + width, top) x2 = (left + width, top + height) x4 = (left, top + height) Третий класс школьной математики
>>2184345 я Вроде понятным образом обяснил почему тот первый комментарий это жирный тролинг в лушчем случае, а в худшем случае человек который это написал просто тупой, и хуй он сомжет решить эту задачу "хранением гиперкоординат в квадрате трансформатора"
ну предположим у нас есть координаты вершин, дальше что? дивы по координатам не строится, нет такой команды в цсс, да и если бы была, вот мы растягиваем переворачиваем и.... и все разлезлось....
>>2184357 > дальше что? Дальше поворачивай. Формулы сам сможешь найти? >дивы по координатам не строится, нет такой команды в цсс, есть position: absolute >и все разлезлось... Я понятия не имею, что у тебя там помимо твоих фигур. Рисуй на канве. Я спрашивал, что ты там делаешь, но ты не ответил. Еще тут посмотри https://html5book.ru/css3-transform/ мож тебе и ксс хватит. И прекращай вести себя как боевой петух, если хочешь, чтоб тебе помогли.
>>2184367 С адекватами которые хотят помочь общаюсь соответственно, а школоту которая про камеры заливает я хотел бы заткнуть сразу же. что бы не отвлекали
>>2184446 У меня когда была подобная задача, я тоже такие вот формулы колхозил. А потом, когда осознал прелесть матриц, особенно что вообще любое преобразование может быть записано матрицей (как результат произведения матриц элементарных преобразований), от всякого колхоза отказался.
>>2184454 ну у меня получилось повернуть матрицу... и в итоге пшик, мля а я то думал, конечно эе это не работает, это и не могло работать но что бы так, значение настолько абсурдные что дивы даже не отобразились
Есть страница razor pages, где используется класс игрового поля и ИИ, но если их создавать как поля модели страницы, то они сохраняются до того момента, пока не придёт новый аякс-пост, который должен изменить объект игрового поля. Я наговнокодил и сохраняю объекты ИИ и игрового поля в сессию через жсон, и потом так же достаю.
Как в таком случае лучше сохранять объекты этих классов? Бтв, миллиард раз пожалел использовать razor pages для одностраничника, учитывая, что только вкатываюсь
>>2184465 эти ваши матрицы не работают, ну повернул их. а что толку? в итоге в координатах чушь полная, так далеко от успеха я еще никогда не был вообще, моим извините "колхозом" удалось получить хотя какой-то результат, а тут покруитили, покрутии назда, кинули и .... и конечно же ничего не работает
Потом рассказывают, что не нужная нормальная архитектура. Хули вы тут оверинжинирингом занимаетесь. Дак блядь писать все в одну функцию и пользоваться шаблоном ctrl + c и ctrl + v.
сделал все точно так же, сделал матрицы по вершинам, потом повернул матрицы и обратно преобразовал в отступы и размерности и в итоге все ожидаемо не работает, даже не понимаю на что я расчитывал
>>2184482 все там правильно, это даже интуитивно не работает, вот если просто представить но очевидно что это работать не будет и не может. ну и что толку что мы поменяли вершины местами? у вершин все еще останутся старые координаты и старая привязка, конечно ничего не будет отображаться, ну камон ребят просто поудмайте, ну и конечно что когда пойдет расширение все будет все так же расползаться
Сохранил в сессию, потому что так после каждого хода юзера могу достать игровое поле обратно. Если этого не сделать, модель страницы при получении аякса заново запускается и все поля создаёт заново, т.е. получается пустой объект игрового поля.
>>2184491 У меня нет такой формулы, и не уверен чтотакую формулу можно найти, и это не звучит легко вот вообще, я понимаю я ньюфег все дела, но такую формулу мне кажестя даже програмисты с опытом не напишут
если ты конечно не о том что бы Х и У местами менять
>>2184487 Так я и не трогаю поле, контроллер (наследующий PageModel) просто при каждом обращении заново запускается. Если в нём прописать поле со значением 10, потом в методе с аяксом добавлять ещё 10, то там всегда будет 20 получаться, а не 30, 40, ... Поэтому и спрашиваю как сохранять данные собственно, потому что сессия кажется нехилым костылём.
да и какая разница то? ну вот я ручкой переставил, а дальше то что??? ну мы начинаем растягивать и конечно же все идет по одному месту потому что от перестановкой блятских координат ничего не менятеся
>>2184494 >У меня нет такой формулы По ссылке есть, в книге тоже есть бтв с пояснениями. Нет в той формуле ничего сложного.
>даже програмисты с опытом не напишут Программист с опытом не будет это писать, так как есть готовое с всеми нужными оптимизациями. Касательно не напишут, в лаба2 студентам то и делают, дают задачи на матрицы.
>ну вот я ручкой переставил Сделал неправильно. Продолжишь со мной спорить, буду игнорировать.
>>2184524 я написал что это не работает, я написал КОНКРЕТНО почему, а ты мне про какие-то ссылки на какие-то страницы которых конечно же нет. и уверяешь мол я что-то сделал не правильно хотя не можешь сказать где.... ну что ж для меня тут все ясно, и конечно не продолжай отвечать, тебе ответить то нечего, ты этой глупой идеей поменять местами вершины только потртил мое время
>>2184522 Страница не перезагружается, все данные через аякс передаются. Про контроллер условно сказал - есть Index.cshtml и его .cs-файл, в котором есть класс IndexModel : PageModel. Вот этот IndexModel заново запускается при каждом аякс-посте на сервер, и это, как я понял, верное поведение, потому что http должен быть стейтлесс. Но при этом я хз как хранить объекты классов, которые в IndexModel создаются, использование сессий как костыль выглядит.
>>2184532 >и это, как я понял, верное поведение, потому что http должен быть стейтлесс На странице может быть несколько форм и каждая содержать свою модель.
>Но при этом я хз как хранить объекты классов Сделай запрос через javascript без аяксовых форм и сохраняй результат в javascript переменную.
>>2184524 Кстати похоже тот анон с который сылку кидал https://liveweave.com/P1UlEa похорже питался сделать что-то подобное что мне нужно но затих потому что понял в чем заключается вся сложность, у него это тоже не получилось
Пасаны, вопрос по Хамарину: collectionView не видит полей классов из observablecollection<Student> students. То есть здесь он биндит students: <CollectionView ItemsSource="{Binding students}" А когда я описываю внутри ItemTemplate - уже не видит: <Label Grid.Row="0" Text="{Binding Name}"/> Хамарин увидит Name, только если я напишу Binding students[0]. Name, но как-то в примерах все не так работает Пример брал здесь: https://blog.logrocket.com/getting-started-with-collectionview-in-xamarin-forms/
>>2185069 Биндинги к полям вьюмодели видит. А вот биндинги к полям класса из обсервабл - ошибка при сборке. Прикрепил пик чего я хочу - Есть готовая либа из нюгета, я с помощью неё получаю обсерколлекшн<SearchResponse>. SearchResponse - класс из либы с полем Username, которое я как раз хочу забиндить на вывод collectionview
>>2185263 1) А можно для тупого чуть объяснить что я должен сделать? Мне кажется я еще не догнал обсёрколлекшн этот вот. ------------------------------------------------------------------------------------- 2)Я сделал то же самое в другом вью и вьюмодели - и там все работает как в примерах, значит я где-то объебался с привязками SearchViewModel, но я пока не вижу где, буду искать
>>2185491 1. Обсёр колекшен следит автоматически только за обновлением коллекции. Если изменяешь ссылку на коллекцию, надо делать нотификацию. Твой дизайнер скорее всего не видит из-за этого тип элемента коллекции. 2. У тебя там еще другой метод есть, который ссылку меняет.
>>2185514 >>2185531 Проблема оказалась в хуевом касте IreadOnlyCollection в ОбсёрКоллекшон (IReadOnlyCollection<SearchResponse> r) Так нельзя: ResponseResponses = (ObservableCollection<SearchResponse>)r;
Так можно: ResponseResponses = new ObservableCollection<SearchResponse>(r);
>>2181815 Форма названа Form1 Не локализованы кнопки Порастягивай форму, вдруг поедут текстбоксы/текст Ввод должен допускаться только цифр/точек и минуса(считается ли факториал для отрицательного числа?) Проверь что запрещено копирование в значение Проверь что будет при вычислении для нуля Нажми calculate без значения Сравни что он вообще выдает, мож считает неправильно В результат ты не должен иметь возможности ничего ввести. Проверь меняется ли результат после второго вычисления
Анончик. Есть ASP.net сайтец, размещаю на IIS Есть компьютер с виндой с выделенным статическим белым айпишником от провайдера (никаких там DNS и вообще ничего - тупо айпишник)
Мои дальнейшие действия чтобы я мог свой сайт открыть в интернете?
Там все уже будет работать из коробки из IIS? Ну чтобы я запустил службу сайта и вот прям сразу все работало? Или все равно будет ебля со всякими конфигами, консолями и прочей ебедней?
Просто гуглил - но что-то не нашел ни одного гайда дальше локалхоста. Даже когда видос или статья прям написана про размещение сайта на своем серваке - все равно аутист заканчивает на локалхосте.
>>2184871 да в чем проблема понять что я хочу, проблема то ведь простая как два пальца, есть прямоугольники, есть пространство на котором они нарисованы, и вот надо что бы прямогольники растягивались пропорционально пространству, ВСЕ!
Под .net есть нормальные АПИ для работы с Bluetooth LE? Нашел только для UWP но он мне нах не нужен, нужен обычный Framework. Желательно незаоблачных версий.
>>2186513 Ну вот и мы не можем понять что у тебя за сложности. Уже все разжевали. Давай начнем с начала... Что за прямоугольники, где и ка ты их рисуешь?
>>2186575 да, но для лучшего понимания я увеличил размер красного на ф4 е4 Должно быть условно что-то такое, только заметь что то что тут высота как бы на самом деле шририна, просто он повернут на 90 градусов.
>>2186590 Ну тип 100 дивов запилить в сетке ))) >>2186587 Не не получается осознать. У тебя все прямоугольники имею размер 100х100. Почему красный вытянулся по вертикали, а зеленые нет?
>>2186632 >Ну тип 100 дивов запилить в сетке ))) квадратики это только пример, у меня более слождный код, и фигуры могут принимать каку угодно форму и угол.
>Не не получается осознать. У тебя все прямоугольники имею размер 100х100. Почему красный вытянулся по вертикали, а зелен нет, красному я сейчас для лучшей видимости задал ширину 200. но так как он повернут на 90 градусов он вытянулся в высоту.
>>2186649 знаю, только эти квадраты не мои, я их архитектуру поменять не могу, у них должны быть именно такие атрибуты и именно так заданы все размерности
>>2186701 >я не иммею понятия как правильно Так узнавай. Я то как тебе помогу, если ты не знаешь что тебе надо. >>2186703 Если да, то через трансформ в ксс
>>2186709 > если бы я знал как поворачивать я бы не сидел над этим уже 3 день, Так ты над кодом сидишь или не знаешь какой результат должен быть? Я про результат спрашиваю. По описанию тебе надо две операции повернуть и переместить (пик для прямоугольника), но ты говоришь, что угол и фигура могут быть произвольными. Вот я и спрашиваю как поворачивать-то надо.
>>2186714 насколько я понял должно в теории быть что-то типа такого, но я не уверен я уточню это, пока я поворачивал через transform rotate, и смещал на минус половина высоты блока по оси у и на минус половину ширины блока по оси х
>>2186721 >пока я поворачивал через transform rotate, и смещал на минус половина высоты блока по оси у и на минус половину ширины блока по оси х Ну примерно так это и работает. При повороте не на 90, смещение считается через синусы и косинусы.
>>2186739 Загляни сюда часов в 9 по мск. Есть идея, но сейчас кроме блокнота нет ничего. Но у меня текст будет скукоживаться вместе с полотно, такое приемлемо?
>>2187044 то-есть если просто поменять местами высоту и ширину можно достичь такого же еффекта только с меньшей нагрузкой, мне же нужно именно поворот на определенный градус, пусть и не с идеальной точностью, но все же примерно то бы пропорции сохранялись, и не слишком ли жестка задача для студентов?
>>2187050 >но 90 градусов и закостилить можно. >>2186739 >пока пусть будет только 90, хотя бы что бы 90 работало
>>2187053 > можно достичь такого же еффекта только с меньшей нагрузкой не такой же. контент не повернется. >именно поворот на определенный градус ты так и не объяснил относительно чего поворачивать. Нарисуй в пэинте поворот на 60 градусов. >но все же примерно то бы пропорции сохранялись transform rotate сохраняет пропорции > не слишком ли жестка задача для студентов? Нет. Проблема в том, что ты не знаешь что тебе надо.
>>2187050 >но 90 градусов и закостилить можно. >>2186739 >пока пусть будет только 90, хотя бы что бы 90 работало
>>2187053 > можно достичь такого же еффекта только с меньшей нагрузкой не такой же. контент не повернется. >именно поворот на определенный градус ты так и не объяснил относительно чего поворачивать. Нарисуй в пэинте поворот на 60 градусов. >но все же примерно то бы пропорции сохранялись transform rotate сохраняет пропорции > не слишком ли жестка задача для студентов? Нет. Проблема в том, что ты не знаешь что тебе надо.
>>2187089 >transform rotate сохраняет пропорции он сохраняет пропорции но вот при растягивании пропорции уже не будут сохранятся, потому что нас посчитан коэффициент на х или у а нужно тогда пропорциональное значение из этих двух. но вот это по-моему уже вообще не реально
что по поводу >ты так и не объяснил относительно чего поворачивать. Нарисуй в пэинте поворот на 60 градусов. я правда не знаю как мне поворачивать что бы область заполнилась нормально
>>2187105 >он сохраняет пропорции но вот при растягивании пропорции уже не будут сохранятся Ты тот чел, которому нужны семь красных перпендикулярных линий, нарисованных прозрачным цветом, две из которых будут синими и параллельными. >>2187108 Ты реально? Или троллишь? Там 90, нарисуй 60
>>2187115 >Ты тот чел, которому нужны семь красных перпендикулярных линий, нарисованных прозрачным цветом, две из которых будут синими и параллельными. ЛОЛ, но все же в конце он все нарисовал, а ты что не можешь? ты же программист! шучу если что. так-то этот чел который хочет 7 красных линий это препод, я сам охриневаю от задания,
>>2187124 можно же написать тогда какую-то логику которая будет считать угол поворота и чем он ближе к 90 тем сильнее смещать в право что бы на 45 градусах точка поворота была как на первом пике а на 90 градусах точка поворота была как на втором
>>2187874 Но кроме того что ты понял ты еще понял как написать, написал формулу, мне с трудом удавалось даже представить резульятат а ты все написал,!! вот бы мне быть таким же крутым программистом в будущем. У тебя наверное много лет опыта? сколько платят программистам такого же класса?
>>2187881 > с трудом удавалось даже представить резульятат а ты все написал Блокнот+карандаш = сила >быть таким же крутым программистом в будущем. Бойся своих желаний >много лет опыта? 0 >сколько платят программистам такого же класса? 0
>>2187952 >Нет, другая работа. А прогаю просто так ¯\_(ツ)_/¯ вот как... я вообще вкинул эту задачку много где, стак оверфлов, телетеграмм каналы, форумы, в общем в много различных ру тусовок, и решил пока только ты, не знаю кем ты работаешь, но это должна быть крутая профессия потому что к программированию у тебя талант, тот самый за который много платят.... любой может генерик круд операции программировать а вот решить математическую задачку с звездочкой да и с неясными и изменяющимися условиями... да это нужно иметь что-то в голове, с таким человеком я бы хотел общаться
Посоветуйте бесплатную надстройку к VS, которая позволяет как решарпер кидать всё содержимое неймспейса (во всех файлах) в любой другой произвольный неймспейс.
Сап двач, сижу с братом решаю ЕГЭ, попалась невыполнимо сложная задача:
Настя составляет 6-буквенные коды из букв Н, А, С, Т, Я. Каждая допустимая гласная буква может входить в код не более одного раза. Сколько кодов может составить Настя?
>>2176736 (OP) Сап анон, тут такое дело не могу понять почему не работает условие if (names == inputName) //не работает if (names.Contains(inputName))//не работает if (names.Equals(inputName))//не работает Точнее оно работает, пока я не включаю блок else