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

Ответить в тред Ответить в тред
Check this out!
C#/Сишарп/.NET Тред #25 /csharp/ Аноним 24/04/21 Суб 12:29:01 20065961
16106592120820.png 47Кб, 941x1025
941x1025
Прошлый тред: >>>>1910324 (OP)

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

1. Ресурсы:
https://dotnet.microsoft.com/learn
https://docs.microsoft.com/ru-ru/dotnet/csharp/
https://metanit.com/

2. Онлайн-компиляторы:
https://ideone.com/
https://dotnetfiddle.net/

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, но функциональность там достаточно сильно урезана.

6. С# для мобильной разработки
https://dotnet.microsoft.com/apps/xamarin

Новые возможности C# 9.0: https://devblogs.microsoft.com/dotnet/c-9-0-on-the-record/

Текст шапки: https://pastebin.com/pbK8CGqw
Аноним 24/04/21 Суб 12:29:25 20066002
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.

17. Я не умею читать, что посмотреть?
— C# Fundamentals: Development for Absolute Beginners — https://goo.gl/meyyxO
— Набор курсов по C# от O'Reilly Media (28 часов, на английском) — http://rutracker.org/forum/viewtopic.php?t=5082978
— Канал по C# IAmTimCorey (на английском) — https://www.youtube.com/user/IAmTimCorey
Аноним 24/04/21 Суб 15:53:44 20069433
Аноним 24/04/21 Суб 15:57:19 20069534
Что писать в резюме если ты вкатывальщик после завода и все изучал сам?
Писать ли что ты раньше работал на заводе и паралельно занимался хуету на подобии создание говносайтов сео хуео?
Аноним 24/04/21 Суб 17:31:54 20070895
Сколько занимает вкат в дотнет с нуля если не надрываться и не геройствовать?
Аноним 24/04/21 Суб 18:38:40 20072116
>>2007089
Двачую. Есть возможность заниматься кодингом по 3 часа каждый день. Сколько при таком режиме уйдет времени на вкат. И не перспективнее ли в плане трудоустройства вкатиться в java/kothlen
Аноним 24/04/21 Суб 19:03:30 20072657
>>2007211
Никто тебе не подскажет за сколько что ты сможешь освоить, все от тебя самого зависит
По поводу переспективней или нет, тупо смотришь есть ли вакансии по языку-нейм в твоем городе.
Аноним 24/04/21 Суб 20:03:52 20073228
Блин, на обеде лазил по студии и случайно нашел кнопочку и включилась хуйня как в райдере, когда тип и имя переменной подсвечиваются.
Хочу так же дома сделать, но не могу найти ту менюшку где включается.
Кто-нибудь знает?
Аноним 24/04/21 Суб 21:35:17 20074269
>>2007089
>не надрываться и не геройствовать?
Что это значит? Очень странный вопрос. Если интереса нет - ни сколько, нахуй оно тебе надо? Если интерес есть - такой вопрос бы не задавал. Лучше даже не начинай
>>2007211
>Сколько при таком режиме уйдет времени на вкат
зависит от степени понимания, вовлеченности. Если полный ноль - думаю минимум месяцев 6 после написания пары +- маленьких пет проектов
>вкатиться в java/kothlen kotlin
гугли предложения на рыночке и смотри. Java все еще на голову выше решеток в плане спроса, зависит от локации, какие стэки на локальном рынке. Не смотри на то, что .NET типо под все, это далеко не так. .NET это только веб и unity, за все остальное забудь, оно мертво
Аноним 24/04/21 Суб 22:57:42 200751710
>>2006953
Пиши, в нормальных местах на это похуй, главное каким-либо образом убедить, что ты адекватный/обучаемый за собеседование, тогда будет глубоко похуй где ты начинал и работал
Аноним 24/04/21 Суб 22:59:08 200752211
Ор
Аноним 24/04/21 Суб 23:00:21 200752412
>>2007089
Если есть мозги и IT-бэкграунд (универ, например), то месяца 3-4 регулярной дрочки, если нет, то года пол, но мозги все равно желательны.
>>2007211
Джавы больше, джава дороже. В среднем. Но в целом всегда есть опция переката Java <--> C#. Работает правда от мидлов и выше и далеко не во всех компаниях.
Аноним 25/04/21 Вск 00:59:19 200764313
Сап аноны, появилась задача - преобразовать текст в звук на c#, библиотеки использовать нельзя и System.Media.SoundPlayer тоже.
Есть ли еще какие-то другие способы? А то гугол не выдает то, что нужно.
Аноним 25/04/21 Вск 01:18:10 200767414
бля почему не работает System.ComponentModel.DataAnnotations ?
Я указываю в моделе
[Key]
public int UserId;
А мне пишет хуй вам.
The entity type 'User' requires a primary key to be defined. If you intended to use a keyless entity type, call 'HasNoKey' in 'OnModelCreating'.

Почему не работает?
Аноним 25/04/21 Вск 01:21:25 200768015
>>2007674
Миграция всмысле не происходит.
Аноним 25/04/21 Вск 01:36:13 200768716
Аноним 25/04/21 Вск 02:27:35 200773217
Есть ли у textbox этакий белый список символов, чтобы можно было вводить только разрешённые символы?
Аноним 25/04/21 Вск 02:59:56 200774418
Аноним 25/04/21 Вск 04:16:33 200776219
>>2007744
When you primary key does not follow that convention you can use the [Key] to indicate what propierty is you entity key

У меня указан кей.
Это консольное приложение.
Аноним 25/04/21 Вск 08:00:01 200779220
>>2007732
Нету. Ивент textpreview и регулярка.
Аноним 25/04/21 Вск 10:14:02 200784021
Есть ли аналог прямого обращения к форме ( Form1 mainform = ((Form1)Application.OpenForms["Form1"]); ) для UserControls? winforms
Аноним 25/04/21 Вск 11:15:26 200786322
Как с еф кор я могу получить последние N постов из блогов? Дело в том, что я использую Postge как основную базу, и in-memory SQLite для тестов сервисов. Так вот, если я делаю так (упрощенно):
var posts = context.Blogs.Where(b => ...).Select(b => b.Posts.Take(2).ToArray()).ToArray();
то генерируется запос с outer apply, который не поддерживает SQLite. Если написать так:
var posts = context.Blogs.Where(b => ...).Select(b => b.Posts.Take(2)).ToArray();,
то все работает, но запрос идет через patrition row number, что делает запрос невероятно медленным. Как можно сделать, что бы это рабтало нормаьно, например через обычный подзапрос (select .... limit N)? Ну или еще как.
Аноним 25/04/21 Вск 11:53:58 200788823
>>2007426
>Что это значит?
Я имею в виду, что куча залетных пишет мол: "уволюсь с работы, готов сидеть по 16 часов в день, смогу за 2 месяца вкатиться?" - понятно, что это хуета, нужен более продолжительный срок. Это как научиться водить, за неделю не получится, даже если 16 часов в день ездить. Вот я спрашиваю, сколько времени займет, если учиться "адекватно": 4-5 часов кодинга + 3-4 часа "вокруг" (на просмотр видосов, чтение книг, статей, документации, повторения пройденного и т.д.) ежедневно?
>>2007524
>Если есть мозги
Закончил физмат класс топ школы региона, одной из топ-10 РФ, отучился на инженера, несколько лет работал конструктором. Щас уволился и сел на толстую родительскую шею, начинаю вкатываться. Больше года не хочу сидеть вот и спрашиваю.
Аноним 25/04/21 Вск 12:16:44 200791324
изображение.png 8Кб, 452x295
452x295
изображение.png 7Кб, 424x270
424x270
изображение.png 13Кб, 862x194
862x194
Как обрабатывать случай с отсутствием символа в textbox на какой-то позиции, но наличием попытку эту позицию прочитать? На снимке с ошибкой я удалил из textbox весь текст.
Аноним 25/04/21 Вск 12:22:48 200791925
>>2007863
Что-то типа:

var posts = ctx.Posts.Where(p=> p.BlogId == id).OrderByDescending(p=>p.PostedDt).Take(n).ToArray();
Аноним 25/04/21 Вск 12:25:05 200792326
Аноним 25/04/21 Вск 13:03:49 200794427
>>2007923
А как выбрать последний введённый символ в textbox? Мне нужно проверить последний символ, чтобы нельзя было вводить более одного ,+-/* подряд.
Аноним 25/04/21 Вск 13:09:35 200794928
Аноним 25/04/21 Вск 14:00:48 200796929
>>2007919
Не то. Мне надо для нескольких блогов, а так я получу знаменитый n+1 запрос.
Аноним 25/04/21 Вск 14:33:31 200799230
Анон, есть ли готовые решения, которые позволят из OpenAPI в рантайме сделать клиент? Допустим, у вебапи есть ендпоит, который отдает свое OpenApi, я его получаю и в конструктор передаю и могу затем выполнять запросы, не генерируя классов для OpenApi клиента.
Аноним 25/04/21 Вск 14:42:08 200799831
Аноним 25/04/21 Вск 14:57:22 200800532
>>2007998
Не понял что я не так спросил.
Если непонятно:
Вот у меня консольное приложение.
Вот есть веб-приложение, которое отдает свое апи в формате OpenAPI.
Я посылаю запрос из консольного приложение, получаю json в котором описаны пути, параметры, схема и т.д.
Теперь я хочу то что получил использовать. Допустим я узнал что api/v1/Users должен вернуть коллекцию пользователей в виде: [{userName:string, email:string},...] ну, собственно я это делаю и получаю эту коллекцию, при этом я не создавал своих классов для описания полученного результата или запросов. А сделал что-то типа:
OpenApiClient client = new OpenApiClien(openApiDocument);
var response = await clien.Send(webAppAddress,"api/v1/Users");
Аноним 25/04/21 Вск 15:27:34 200802633
Как сделать так, чтобы textbox позволял вводить символы только начиная с последнего, чтобы пользователь не мог изменить символы перед последним символом?
Аноним 25/04/21 Вск 15:55:12 200805334
9999.png 121Кб, 1201x677
1201x677
>>2007992
Ну, т.е. чтобы было понятно. Что-то вот типа прикриплейд мне нужно, но не написанное не за 5 минут, а нормально и нормальными людьми, которые побольше меня в этом разбираются.
Аноним 25/04/21 Вск 16:05:14 200807535
>>2008026
Сохранить предыдущее значение и если новое значение изменилось не после последнего символа - возвращать предыдущее.
Что-то типа:
public string GetStringValue(string oldValue, string newValue)
{
return newValue.StartsWith(oldValue) ? newValue : oldValue;
}
Аноним 25/04/21 Вск 16:12:26 200808636
>>2008075
Да, сразу уточню, это решение не сработает, если будешь удалять символы.
Если их нужно удалять, то это будет что-то типа:
public string GetStringValue(string oldValue, string newValue)
{
if(newValue.Length<oldValue.Length) return newValue;
return newValue.StartsWith(oldValue) ? newValue : oldValue;
}
Аноним 25/04/21 Вск 16:23:01 200811237
>>2008075
>>2008086
Что за говнокод? Почему нельзя просто написать, как сделать как в стандартном виндовсовском калькуляторе? Там как раз нету каретки и ввод технически возможен только с последнего символа, так же и удаление там возможно только с конца строки. Я хочу у себя сделать так же.
Аноним 25/04/21 Вск 16:25:24 200811838
Аноним 25/04/21 Вск 16:50:02 200815039
>>2007863
Bump. Я не хочу запрос через оконную функцию, который отрабатывает ~700ms, хочу как на пике, который отрабатывает за ~9ms. Неужели EF настолько хуевый?
Аноним 25/04/21 Вск 17:19:34 200817940
sql.png 15Кб, 462x428
462x428
Аноним 25/04/21 Вск 18:14:05 200823141
>>2008150
Да, хуевый. Бери адонет и пиши нативные запросы.
Аноним 25/04/21 Вск 19:27:41 200833542
>>2008118
Спасибо, помогла строка
tbPositionCursor.Select(tbPositionCursor.Text.Length, 0);
Но как отключить отображение курсора в textbox? Именно чтобы мигающий курсор вообще никак и никогда видно в текстбоксе не было.
Аноним 25/04/21 Вск 19:51:41 200835343
И ещё, как получить ASCII код символа в textbox? Например, который находится на позиции textbox.Text.Last().
Аноним 25/04/21 Вск 19:58:08 200835844
И ещё вопрос: Как сделать так, чтобы кнопка delete удаляла весь текстбокс, а не символы за кареткой? В виндосовской калькуляторе тоже так, я и у себя это повторить хочу.
Аноним 25/04/21 Вск 20:01:35 200836645
>>2006596 (OP)
Можете, пж, вкратце пояснить различие между разработкой на дотнет и дотнет кор? Или асп нет и асп нет кор. Там прям какие-то концептуальные различия есть? Или я просто учу дотнет и асп нет, а затем осваиваю особенности разработки на кор?
Аноним 25/04/21 Вск 20:08:23 200837446
>>2008358
texrBox.SetValue(TextProperty, String.Empty) ?
Или забиндить текст и обнулить его в вьюмодел.
Я бы так сделал

>>2008335
Ты про каретку? Там есть где то свойство CaretBrush, ставь в транспарент и должен исчезнуть
Аноним 25/04/21 Вск 20:14:20 200838347
изображение.png 11Кб, 806x159
806x159
>>2008374
>texrBox.SetValue(TextProperty, String.Empty) ?
Нету такого.
Аноним 25/04/21 Вск 20:33:39 200840848
image.png 20Кб, 640x157
640x157
image.png 20Кб, 1216x78
1216x78
WPF-зелень итт.
Блатные, не судите по закону ментовскому, а раскидайте по укладу впфскому, почему шквартися метод, возвращая Null, если в хате MainWindow.MainFrame есть блатной с погонялом "Browser", на второй маляве видно. Почему авторитетов не видит и не боится шкварится?
Аноним 25/04/21 Вск 20:47:58 200842649
>>2008366
Немного поменялись интерфейсы. Немного изменились зависимости. Неткор пытается в солид, в то время как старый дотнет делался по принципу: Ну, хуячим функционал, и похуй что у нас 10 разных колоров, поинтов и брашей.
Ну, т.е. прям принципиальной разницы на деле нет - большая часть основных классов те же и работают примерно так же. Если ты писал на дотнете - перейти на кор - не составит особого труда, концепции конкретных штук старались оставить теми же.
Проблемы будут с миграцией обычного дотнет приложения на неткор, потому что из-за смены интерфейсов и выпила некоторых классов - придется много чего переделывать.
Аноним 25/04/21 Вск 20:56:07 200844150
>>2008408
Порешал епты бля этого фраерка, по району двигался не правильно и базару не умел вести - ведь всем известно, что страницы - петушинная забава, поэтому без нее нужно своц базар нести.
Аноним 25/04/21 Вск 21:13:07 200846451
>>2008408
каждый раз, когда захожу в этот тред проигрываю с подливой. Отчасти от того, что месят глину в том, что мертво, отчасти, что контингент валенков. И кто сказал, что между Java и сисярпом есть легкий переход? По синтаксису разве что, но это пыть.
Я бы посмотрел, как такие перекатятся в Java со своим сисярпом и десктопными причудами, а есть то все равно захочеться...
Аноним 26/04/21 Пнд 04:38:45 200879552
Аноним 26/04/21 Пнд 06:04:15 200881053
>>2008408
Потому что нужно руками заинитить браузер?
Аноним 26/04/21 Пнд 09:46:02 200885054
>>2007888
Такая же тема, отучился на ПГСе, устроился конструктором, но там такая хуйня прокнула, что применительно к строительной проге начал скрипты писать сначала на питоне, а потом на шарпы пересел, по итогу пару небольших пет проектов вебовских замутил, уже чувствую силы устроиться на какую-нибудь галеру шарповскую. На всё про всё ушло чуть больше года, но я особо и не гнал как ебанутый. Была возможность просто совмещать это с работой, хоть и по сути не айтишной. Важно понимать, что между устройством на первую работу в айти и началом пути находится не только сам язык, придется потрогать базу данных как минимум, кое-какие моменты типа общих практик(паттерны основные, SOLID и т.д.), мб даже базово js понимать(в большинстве вакансий на хх наблюдаю такую картину - C#+JS). В общем без хуйни с нуля это плюс минус год для чела со средней обучаемостью.
Аноним 26/04/21 Пнд 14:43:47 200915655
bc5764383004292[...].png 299Кб, 800x454
800x454
Четыреждыблядская ярость
Есть одно wpf приложение у которого есть файл настроек типа "settings.xml" которое создаётся и хранится вместе с екзешником (по задумке). Также это приложение умеет открывать файлы определенного формата.
Проблема начинается когда в шинде 10 тыкнуть галку открывать моим приложением эти файлы по дефолту - приложение начинает создавать файл настроек не в директории с екзешником, а в директории с открываемым файлом. Есть идеи как фиксить это говно кроме того как выносить настройки в папку с документами?
Аноним 26/04/21 Пнд 21:45:34 200957656
Как заблокировать кнопку delete в textbox или изменить её поведение на полное удаление содержимого texboxа при однократном нажатии в любом месте?
Аноним 26/04/21 Пнд 23:34:18 200966957
Что есть нынче из харкорного свежачка? Что то на уровне Рихтера или даже выше. Когда он уже зарелизит под Core обновление?
И кто щупал Скита? Стоит ли платить за эту книге деньги?
Аноним 26/04/21 Пнд 23:34:32 200967058
G1iMgmfB8M2wPek[...].jpg 22Кб, 306x436
306x436
boocover.jpg 16Кб, 200x282
200x282
Бля, уже новое издание.
Я с какого-то седьмого облизываюсь на неё и хочу обмазаться, а они всё хуярят и хуярят.
Что самое интересное, один из первых моих айтишных кирпичей в нулевых был как раз её первое издание руснявое.
Аноним 27/04/21 Втр 07:03:20 200983559
Такой вот вопрос.
Хули все так с lock(this) - бомбят? Вот мне нужен именно List<T> потокобезопасный. Читать из него все равно пока я ищу там элемент для удаления - нельзя, чет удалять, пока я перебираю все элементы - тоже нельзя, да и вообще как-то модифицировать его нельзя. Ну введу я объект который буду для синхронизации использовать вместо lock(this), ну и что поменяется-то?
Аноним 27/04/21 Втр 07:08:27 200983760
>>2008464
> как такие перекатятся в Java со своим сисярпом
Перекатился за месяц без особых проблем. Поработал на джаве год, проблевался и вернулся обратно. В хуй не уперлась эта джава. Единственное что мне в джаве нравилось, так это охуенные Enum, в то время как в шарпе хуевый enum. В остальном - джава та еще параша, а кодят на ней в массе те еще мудаки.
Аноним 27/04/21 Втр 09:05:13 200985661
Как сделать так, чтобы кнопка button передавал свой символ в KeyChar текстбокса? Или если у меня ввод анально завязан на KeyCharах, то для бутонов придётся отдельный ввод придумывать?
Аноним 27/04/21 Втр 13:53:42 201010762
Аноним 27/04/21 Втр 17:48:03 201049663
Какие более-менее open-source проекты, порекомендуете новичку (на шарпах, естественно)?
Аноним 27/04/21 Втр 18:21:22 201055664
Аноним 27/04/21 Втр 18:48:12 201058565
>>2009856
Засунь бутоны себе в задницу и скинь в тред фото
Потом может чего и подскажем

Алсо, почитай может про Regexp если с вводом работаешь
Аноним 27/04/21 Втр 22:05:52 201073766
>>2009837
>Перекатился за месяц т.к. ПМ сказал, что или я иду Java богам баги фиксиль или иду нахуй
>Поработал на джаве месяц, пока не нашли настоящего джависта и вернулся обратно
пофиксил
Аноним 27/04/21 Втр 22:18:31 201075467
>>2009837
>джава та еще параша, а кодят на ней в массе те еще мудаки
Так про любой язык можно сказать тащем-то. Но на жабе рынок ожидаемо больше в крупных городах, чем на шарпе.
Аноним 27/04/21 Втр 22:20:07 201075668
>>2009835
А в шарпе нет конкурентных коллекций, как в джаве например? Шобы под капотом уже было лок фри на атомиках или что-то в этом духе.
Аноним 27/04/21 Втр 22:25:17 201076469
Аноним 27/04/21 Втр 22:27:34 201076770
>>2010756
Есть словарь конкурентный, очередь, стек, bag и блокинг коллекш. Но нет листа, дескать все эти пиздец какие охуенные, а лист так с локфри - хуй сделаешь, а потому либо бери что есть. А мне именно нужна хуйня которая по интерфейсу - лист, но потокобезопасный. Я конечно могу одну из этих обернуть и заебись типа, но проще локать лист.
Аноним 28/04/21 Срд 16:55:06 201165471
1619618182071.jpeg 17Кб, 1920x39
1920x39
Я знаю что мне хуй кто ответит по моему вопросу, но все же попытаюсь - юзаю по совету одного анона пару тредов назад AdonisUi на wpf'e. Я юзаю один всратый (в плане его результатов) обфускатор под назаванием SmartAssembly и он даже без настроек проекта заворачиватет адонисовское окно на фуллскрине в белую рамку. Кто нибуть знает, можно ли это как-то пофиксить в msil'e? Или подскажите может кто знает бесплатный обфускатор с шифрованым хранилищем строк как в смартассе (можно даже без обфускации как таковой)?
Аноним 28/04/21 Срд 22:04:29 201202172
999999.png 40Кб, 945x780
945x780
На прикриплейде - хороший код?
Аноним 28/04/21 Срд 23:14:21 201205673
Ребяты а как удалить все данные из таблицы в Entity Framework ?
Аноним 28/04/21 Срд 23:49:49 201207274
>>2012056
Разобрался.

Но вот поясните зачем ввели db.SaveChanges(); ?
Почему бы сразу не вносить изменения?
Аноним 28/04/21 Срд 23:53:58 201207475
>>2009670
Опа, а может известно кто будет и будет ли переводить на могучий?
Аноним 28/04/21 Срд 23:59:21 201208476
Всё думал вернуться в шарп, но это чудо https://github.com/migueldeicaza/gui.cs прям смотивировало меня. тащусь от консольных интерфейсов
Решил что для начала это будет что то не сложное, например вытягивание инфы о железе. Так вот, с чего начать? Хочу своё приложение сделать мульти-платформенным, это как то будет влиять на то, как нужно будет строить консольное приложение?

Может подкините идей на тему какого нибудь кроссплатформенного консольного приложения?
Аноним 29/04/21 Чтв 00:39:31 201214777
>>2012084
ТГ клиент в консоле.
Аноним 29/04/21 Чтв 01:21:48 201220878
image.png 33Кб, 441x593
441x593
https://github.com/simplcommerce/SimplCommerce

Бля ребят, эта такая хуйня творится в интерпрайзе?
Как в таком пиздеце можно разобратся то?
Я даже не могу найти где там контролер который обрабатывает запрос первый(
Аноним 29/04/21 Чтв 03:22:51 201227579
>>2012021
Отформатируй код и приведи к нормальному стилю.
Аноним 29/04/21 Чтв 04:26:01 201228180
image.png 50Кб, 864x693
864x693
image.png 56Кб, 1073x610
1073x610
Анон, надежда на тебя. Вопрос по WPF.

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

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

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

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


И все равно оно проперживается. Что тут можно сделать? У меня мало опыта..
Аноним 29/04/21 Чтв 12:23:21 201262481
Как, блять, узнать кто вызывает поле? В ссылках уже всё посмотрел - никто данные не передаёт, но при этом при запуске интерфейс вызывает это самое поле, а внутри данные лежат, сука, при том, что в set программа не заходит. Как, нахуй?
Аноним 29/04/21 Чтв 13:45:33 201268682
Аноны вкат на C# без вышки возможен ? просто язык корпоративный, там в вакансиях часто вышка указана, поэтому спрашиваю. Сам 30 лвл, боюсь жидко обосраться на фоне студентоты.
Аноним 29/04/21 Чтв 13:53:52 201268883
>>2012281
Делаешь обычный текстбокс где будет строка по которой искать будешь
Коллекцию, которую вяжешь к датагриду оборачиваешь в CollectionView.
Прикручиваешь к CollectionView экземпляр делегата на фильтр.
Фильтрация будет делаться на лету отфильтровывая лишнее.

Почитать можно тут
https://www.wpftutorial.net/DataViews.html
Аноним 29/04/21 Чтв 13:57:39 201269584
>>2012686
Ну зависит от вакансий
У меня на работе спец образование, только у меня и есть из всех программистов.
Аноним 29/04/21 Чтв 14:06:06 201270585
>>2012695
И что вы там программируете?
Аноним 29/04/21 Чтв 21:39:56 201322686
>>2009670
>2 пик
Годная книженция для начинающих или нет? А то я сдуру купил ее на озоне за 350р, может зря?
Аноним 30/04/21 Птн 02:49:13 201348187
>>2012688
Но в комбобокс очень удобно подставляется название улицы - я ввожу первые буквы, а оно сразу подставляет близкое... или в текстбоксе тоже можно такое сделать?

(после нескольких тестов я понял что проблема вообще магическая - когда запускаю и ввожу руками название - быстро находит. Но стоит нажать раскрытие списка комбобокса, вот после этого любым способом тормозит)
Аноним 30/04/21 Птн 03:00:23 201348488
Test
Аноним 30/04/21 Птн 03:20:52 201349089
>>2013226
Она же из начала нулевых, там всё поменялось сто раз за это время.
Аноним 30/04/21 Птн 04:38:19 201351490
Бля шо делать то?
Резюме писать на англицком?
Денег осталось хуй да нихуя.
Надо уже начать вкатываться только вот хуй знает как.
Читаю описание вакансий ну и что то знаю что то не очень знаю. Пробую вот это вот все sql asp net linq ef, но бля все на уровне хелоуворлдов. Я просто не могу это узнать на хорошем уровне без практики написания кода, я пишу там типо взять юзеров из бд, записать юзеров в бд, в циклах все это, смотрю сколько времени занимает запись и чтение, корочи хуйней занимаюсь. Надо какой то проект делать а я хуй знает что делать.
Корочи в ближайшее время планирую спарсить мейлы всех ит и около-ит компаний и проспамить им свое резюме с пометкой возьмите на работку позязя junior net developer фио. Вот только хз правильно ли так сделать, если вдруг хуй кто ответит что тогда? Ждать пол года, обновлять резюме и снова писать?
Как обстоя дела с вкатом в Украине? Сам то я из Беларуси но если бы был вариант работы в Киеве то изи бы поехал.У меня просто тут очень высокие шансы присесть на бутылку.
Аноним 30/04/21 Птн 08:24:27 201354591
>>2013514
>возьмите на работку позязя
не катит. Сколько лет ком. опыта? Если 0, то у меня для тебя плохие новости
>Как обстоя дела с вкатом в Украине?
хуево. На джуна нужно 0.5-1 год комерческого опыта с канбанами/скрамом/ватерфлоу и нужно весь бизнес флоу знать
>Резюме писать на англицком?
английский B1/2+ кста. Без ангельского ты нахуй никому не нужен
Аноним 30/04/21 Птн 08:45:58 201355492
>>2013545
>хуево. На джуна нужно 0.5-1 год комерческого опыта с канбанами/скрамом/ватерфлоу и нужно весь бизнес флоу знать
А новые джуны с опытом берутся откуда?
Аноним 30/04/21 Птн 08:46:47 201355693
>>2013545
>>2013554
И вообще какой в пизду джун с 1 годом опыта? Джун-алигофрен?
Аноним 30/04/21 Птн 08:48:21 201355794
>>2013556
>алигофрен
Можно подумать ты далеко от олигофрена ушел. Лел.
Аноним 30/04/21 Птн 08:52:36 201356295
>>2013557
Ну ушел же ведь. Хоть и не далеко.
Аноним 30/04/21 Птн 08:53:50 201356396
>>2013554
>А новые джуны с опытом берутся откуда?
Из стажеров, либо из ниоткуда. Рыночек шарпа потихоньку сдувается последние несколько лет, по крайней мере в РФ так.
Аноним 30/04/21 Птн 08:54:14 201356697
>>2013562
>не далеко
На пол шага буквально.
Аноним 30/04/21 Птн 08:59:23 201357598
>>2013563
ну дак а я и не про рф то спрашиваю, либо РБ но лучше Украина.
В Беларуси например больше net вакансий чем java.
Нахуй ваще писать про рф на не рф борде?
Аноним 30/04/21 Птн 10:16:10 201362199
>>2013481
Ну если нравится комбокс можно то же самое но с ним сделать.
Подвязав текст комбобокса к свойству вью модели и на изменении вызывать фильтрацию CollectionView
Аноним 30/04/21 Птн 10:19:12 2013624100
>>2013566
Ну че ты такой суровый.
Не все в русскоязычных школах Крыма учились.
Аноним 30/04/21 Птн 12:27:56 2013767101
>>2012021
Ну и нахуя ставить _ для private readonly? Вы чё там ахуели?

Я понимаю в питоне ставить _ или __ потому что нормальное ООП и типы не завезли, но в C# - это шизо, от которого я устал.
Аноним 30/04/21 Птн 12:31:53 2013774102
Единственное логичное объяснение я знаю из своего опыта - это когда деды-С++ хуярят .NET с классами по 3-7к строк, где уже непонятно что к чёму относится, где всё дергается отовсюду внутри самого класса.

>>2013767-анон
Аноним 30/04/21 Птн 13:22:58 2013845103
>>2013774
> .NET с классами по 3-7к строк, где уже непонятно что к чёму относится,

Жизнено
Работаю с таким дедом
Ваяет только такие классы, наполненные статическими методами, в которых только он может разобраться.
Когда спрашиваю хули ты так делаешь ответ всегда один МНЕ ТАК ПРОЩЕ.
Аноним 30/04/21 Птн 13:25:14 2013847104
>>2013845
Ну и классический вопрос: почему ты с ним еще в одной конторе/команде/etc
Аноним 30/04/21 Птн 13:27:32 2013850105
>>2013554
Джун с опытом 1 года должен стать мидлом или выкатываться нахуй из айти.
Джуны с опытом берутся из стажировок/галер/практик, больше неоткуда.

>>2013563
Рынок себя неплохо чувствует, спасибо
Просто последний год у стажеров/интернов/джунов проблемы с трудоустройством еще сильнее чем обычно по понятным причинам
Аноним 30/04/21 Птн 13:31:53 2013854106
>>2013850
>Джуны с опытом берутся из стажировок/галер/практик, больше неоткуда.
Ну вот вопрос то и был как правильно нужно устраиваться на галеры.
Аноним 30/04/21 Птн 13:40:09 2013865107
>>2013854
Ищешь тырпрайз в своем городе, ищешь стажировки/практики/вакансии младших без опыта, там даже платят. Иногда.

Подаешь во все сразу
Проходишь пару собесов
В мухосрансках с этим проблемы
В миллионниках реально

Если тырпрайзов нет, то ищи галеры. Там скорее всего будут мемы вида: сынок, у тебя испытательный срок три месяца без бабла и оформления, потом три месяца без бабла, но с оформлением. Потом тебя нахуй пошлют с очень пиздатой вероятностью или возьмут на ЗП уборщика, но свои полгода опыта ты получишь и сможешь вкатиться в место поприличнее.
Аноним 30/04/21 Птн 13:52:59 2013877108
>>2013865
Стоит ли пробовать в вкатываться на дикое легаси ради опыта? Или забить хуй и сразу пытаться в .net core?
мимо
Аноним 30/04/21 Птн 13:59:19 2013883109
>>2013847
Та вот я собираюсь уволиться, правда собираюсь уже довольно давно.
До этого на другом проекте работал, там было все ок.
Тут еще проблема в том, что я не веб-разработчик, поэтому вакнасий в десятки раз меньше
Но они все-такие есть, так как живу в большом городе.
Аноним 30/04/21 Птн 14:00:27 2013884110
>>2013877
Net.core тоже легасаи, уже .NET 5 есть :)
Аноним 30/04/21 Птн 14:11:40 2013896111
>>2013877
Лучше вкатываться в новье, но поверь, в тырпрайзах не любой мидол понимает разницу между всем этим.
Лучше вкатиться хоть куда, потом уже будет боярином с тырпрайз опытом и сможешь выбирать куда хочешь.
Аноним 30/04/21 Птн 14:41:21 2013909112
>>2013896
Вот этот боярин правильно говорить, вкатываться надо хоть куда-то.

Мимо вкатился в адовое легаси на пыхе, спустя год перекатился на нормальную работу не-на-пыхе
Аноним 30/04/21 Птн 17:35:29 2014131113
>>2013545
>>2013514
Кек, Плохо вам. Я с РФ. Устраивался просто после вуза, 0 лет опыта, A1 ангельский, и то со словарем, ну и про канбаны, скрамы и прочее только на парах рассказывали. Вкатился на изи. Сейчас 5 лет опыта. Хорошо однако.
Аноним 30/04/21 Птн 17:37:51 2014135114
>>2013767
Чтобы не писать this. Что ты как тупой? Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this. Эта залупень - раздражает, проще для полей - добавлять _. Даже мелкомягкие в своих современных гайдлайнах прогнулись и так же советуют писать, просто зайди и посмотри их гитхаб.
Аноним 30/04/21 Птн 17:39:41 2014138115
>>2014131
я три года назад так же вкатывался
сейчас таких дохуя и больше, а вакансий раз-два и досвидос
Аноним 30/04/21 Птн 18:28:12 2014179116
16093642405100.mp4 1025Кб, 716x720, 00:00:07
716x720
Пацаны, есть условно интерфейс, который выдает сервисы под типу:
IServiceProvider.Get<T>();

А как называть интерфейс, через который можно задать эти сервисы? Так норм:
IServiceContainer.Add<T>(T instance);
Аноним 30/04/21 Птн 18:35:55 2014191117
>>2014135
>Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this
Кек, это вообще пушка. Использую this исключительно где требуется.

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

>Даже мелкомягкие в своих современных гайдлайнах прогнулись и так же советуют писать, просто зайди и посмотри их гитхаб.
Ясно, я хоть и .NET девелопер, и вижу что Майки делают дохуя хорошего, .NET5.0 или F# например, но тем не менее нужно относиться критично и не жрать всё говно подряд.

>Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this
Ну ещё раз добавлю, это вообще пиздец.
Аноним 30/04/21 Птн 18:40:31 2014194118
>>2014179
Не делай такой хуйни.
Сделай метод расширения и назови его как-то связанно с областью которую решаешь и просто используй его.

Допустим, у тебя есть есть охуенный формат: zalupа. Это специальный формат данных, который только ты знаешь как сериализовать-десериализовать. Допустим, тебе в каком-то классе надо сериализатор иметь, а в каком-то десериализатор.Так вот. Ты делаешь метод расширения UseZalupa(), в нем уже все что надо прописываешь и в нужных сервисах достаешь IZalupaSerializer.
Аноним 30/04/21 Птн 18:56:56 2014225119
>>2014191
> Кроме конструктора this нигде писать не нужно, в случае оверлапов, а вот если у тебя везде происходят оверлапы и нужно постоянно прописывать this - то наверно это у тебя хуевый дизайн класса получился.

Вот у тебя класс. Point описывающий в двумерное положение точки в декартовой системе координат.
Есть метод SetPoint(int x, int y), просто потому что иногда удобнее сразу две точки сразу задать.
Давай сравним
void SetPoint(int x, int y)
{
this.x = x;
this.y = y;
}

void SetPoint(int x, int y)
{
_x = x;
_y = y;
}

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

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

Да блядь, попробуй коммит сделать не по гайдлайнам в ветку core мелкомягких. Тебя пошлют. Даже если там будет полезный фикс. Я понимаю, что местные чмони-вкатывальщики в жизни ничего сложнее хелловорлда не писали, а коммерческий опыт им только снится, но если однажды ты, по воле случая, попадешь в реальную разработку - поймешь, какую же несусветную хуету ты сейчас несешь.
Аноним 30/04/21 Птн 19:52:10 2014273120
>>2014225
Мудло, в твоем примере у тебя будет:

public int X { get ; private set; }
public int Y { get ; private set; }

void SetPoint(int x, int y)
{
X = x;
Y = y;
}

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

То есть _ дебилы даже property не умеют юзать в классах, что и требовалось доказать.
Аноним 30/04/21 Птн 20:10:09 2014305121
>>2014273
В примере не было проперти. Ты, дебила кусок, изменил интерфейс класса.
Ну, что говорить - еблан, что привык только хелловорды у себя дома. То что этим ты мог сломать код коллег в 90000000 мест - тебя, еблана не волнует, ведь сложнее хелловрлда ты ничего не писал.
Попробуй, блядь, хотя бы в опенсорс проекте поучаствоват, мудень, вместо того чтобы срать про то что тебе какой-то кодстайл не нравится. Принят и принят. Удобен? Да. Иначе бы он давно помер, как венгерская нотация.
Аноним 30/04/21 Птн 20:16:58 2014309122
>>2014305
Ладно, но я правильно понимаю что _ фанатики, пускай и в лице мелкомягких, считают что ambiguous cases как в твоем примере и подобные лучше решать с помощью naming conventions по типу питоновских, чем через this компилятора?
Аноним 30/04/21 Птн 20:20:35 2014318123
>>2014309
Да, потому что это лучше чем было раньше, когда писали вот так:
m_FieldName
p_PrivatePropertyName
Уж лучше просто _ будет. А, как я уже скаазал, если ты начал this использовать - будь добр использовать везде, чтобы не было разночтений и человеку не приходилось водить мышкой чтобы узнать это поле или переменная.
Аноним 30/04/21 Птн 20:22:14 2014326124
>>2014305
Более того, naming conventions от microsoft не покрывают _ vs this вопрос, так что не надо пиздеть, что это стандарт. Так что давай ссылку от мягких где покрывается этот вопрос.

И да, в стандартах проекта dotnet действительно юзают _. Но у майкрософта не один проект dotnet на C#.
Аноним 30/04/21 Птн 20:26:01 2014334125
>>2014318
>Уж лучше просто _ будет.
Да, я с этим согласен. Ну я считаю что _ - это тоже всё оттуда идёт.

>А, как я уже скаазал, если ты начал this использовать - будь добр использовать везде,
Я использую this только в конструкторах. Никогда в других методах я не делаю название аргументов одинаковым с названием fields, поэтому у меня и не возникает таких проблем.

Пример с point притянут за уши, так как это изначально кейс где имена филдов состоят из одной буквы.
Аноним 30/04/21 Птн 20:47:02 2014351126
>>2014326
> naming conventions от microsoft
https://github.com/ktaranov/naming-convention/blob/master/C%23%20Coding%20Standards%20and%20Naming%20Conventions.md#c-coding-standards-and-naming-conventions
Да, там не говорится, что обязательно именно так писать, но это же просто вопрос удобства. Вот серьезно. Что тебе проще в иде _ написать и увидеть все поля или писать this? Плюс, с _ код получается единообразный, в отличии от того что ты вот тут this пишешь, там не пишешь; когда у тебя класс в котором пара методов в 3к строк - держать в голове все поля так себе получается(ыыыы, плохой код, ну да, но что поделать - писал не ты, тебе нужно поддерживать, хули поделать?) и хорошо бы их визуально отличать, this в данном случае проигрывает просто потому что он длиннее и просто отнимает полезное место монитора.
Аноним 30/04/21 Птн 21:04:06 2014375127
>>2014351
>пара методов в 3к строк
Ясно. Ну я так и думал, поэтому переобуюсь в воздухе - _ действительно решает проблему non-SOLID говнокода в пару тысяч строк.
Аноним 30/04/21 Птн 21:08:13 2014382128
>>2014375
Алсо, стандарты это палках о двух хуях.

Например, майки пишут в пункте 27:
>// Avoid
>DoSomething("someString", 1);
>// Correct
>DoSomething(foo: "someString", bar: 1);

Когда по факту нигде такой конвенции кроме где есть optional arguments нет.
Аноним 30/04/21 Птн 21:10:43 2014385129
>>2014382
Хотя мне лень выяснять это методичка от майков или нет. Но вот аргументация

>Why: consistent with the Microsoft's .NET Framework and easy to read. In Named Arguments, we do not need to pass the parameters in order as defined on method definition, so we can pass the arguments in any order on method calling.

Щас бы в 2к21 фреймфорку энтерпрайзному следовать и аргументы миксовать где не нужно.
Аноним 30/04/21 Птн 21:31:45 2014405130
>>2014382
ХЗ. Вроде как в своих гайдлайнах, когда я читал, они писали что наоборот вся эта хуйня с именованными аргументами была придумана исключительно для COM-объектов, когда там может быть дохуища параметров, половина из которых - необязательный.
Аноним 01/05/21 Суб 00:08:50 2014546131
>>2013554
с трейни
>>2013556
не поверишь, но есть джуны и с 5-6 годами опыта
>>2014131
лолкекчебурек. Вообще похуй, что там у вас. Я говорю, как есть. На одно место трейни 30 человек, сито очень жесткое. Выше писали про стэк требований на джуна с GC, b-tree и хотя бы одним фреймворком - это чистой воды правда. Будут песочить на собесе так, что из жопы кефир полезит, ибо рыночек не резиновый, а желающих много
Аноним 01/05/21 Суб 15:07:02 2015023132
index.jpg 4Кб, 225x225
225x225
>>2006596 (OP)
Покажите примеры того, чем вы занимаетесь на работах с C#
Над чем работаете, сколько пишите в день кода, и как происходит процесс. Хочу вкатится в офисную работу.

Но у самого за плечами 10 лет разработки всякого говна за стабильные 1-1.5к баксов в месяц, в самых разных областях но по мелочи. Ну как по мелочи, были проекты и на пол года, и на год, и на вечер, и на месяц. Решал самые разные задачи, но не на С#, а комбинацией из того, что было, для достижения необходимого результата, но так получилось, что об вашем "ойти" нихуя не знаю.

Чем вы вообще занимаетесь на работах с точки зрения занятий.
Ну вот у тебя работа с 10 утра, до 18:00. С обедом.

Как происходит ваш день?
Можете поэтапно расписать?

Типа:
10:00 пришел на работу, у нас планерка
нам объясняют что мы сегодня должны делать
нам дают задания, задания выглядят вот приблизительно так (желательно пример).
Это я должен сделать. Если не сделаю, то... Если сделаю все задания раньше, то...
Дальше я сижу пержу в гугле, и в доках, и пытаюсь наскребать по сусекам один экран кода в фунции. Вот уже и обед.
После обеда допиливаю свой метод, класс, похуй что.
Иду домой. Дома допиливаю ещё до нужной кондиции.
Прихожу на следующий день. Каким образом вы отчитываетесь о проделанной работе?

Как считается ваша оплата труда?
При этом сколько реально вы ебашите в месяц часов?
Сколько +- строк\экранов кода пишите в месяц?

Вот у меня был проект на пол года, около 2к строк кода написал.
Это если поделить грубо на дни, получится около 10-20 строк кода в день ебашил. Ну фунцию какую-нить, либо в дебагере сидел, либо что-то нахуярил прям быстро быстро, потом переписал.

Как у вас происходит разработка?
И чем она отличается от фриланса?

(опыт фриланса имеется).
Просто я вот понимаю, когда я лично разговариваю с заказчиком.
Типа : "привет хуй, я хочу сделать ХХ, за УУ времени, у меня есть ЗЗЗ хуйня"
- "ок, дай посмотрю что можно сделать, скажу что можно предпринять". "Ок, посмотрел я, короче хуй знает сколько по времени, но смогу сделать, за ХХХ прайс"
И погнал ебошить работу и частенько возвращаться к заказчику с результатами и приемом предложений пожеланий по улучшению продукции.

У меня нет "менеджеров" хуенеджеров, договоров, и так далее.
А вы там чем занимаетесь?

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

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

Спасибо.
И о каких framework вы говорите?
О глобальных .net, xamarin, и для веба?
Или о чем-то другом о чем я блядь не слышал?

Короче ответьте. Спасибо!
Аноним 01/05/21 Суб 15:40:17 2015074133
>>2015023
>Покажите примеры того, чем вы занимаетесь на работах с C#
Ага, щас прям корпо репу солью


>>2014546
>не поверишь, но есть джуны и с 5-6 годами опыта
Земля им стекловатой
Аноним 01/05/21 Суб 15:49:09 2015090134
>>2015074
примеры блядь покажи, у меня есть опыт разработки.
Но я не работал на кого-то, на дядю за оф. зарплату в офисе.
Я не знаю как это вообще. Я спрашиваю эти детали.

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

При этом меня не пугает проект, если я на него согласился.
Так как я уверен в себе, что я его завершу..

Но блядь, когда я открываю требования к разрабам - это же какой-то ебанный ад. Нахуя все эти требования? Что это блядь вообще такое? Кто им блядь нужен?

Нахуя им паттерны проектирования и алгоритмы, если эти долбоебы делают обычные сайтики, и по всей видимости 24\7 сидят в гугле.

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

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

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

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

Что у вас вообще происходит в IT?
Вы там ебанулись нахуй?

Аноним 01/05/21 Суб 19:47:14 2015507135
>>2015090
>>2015023

Ты специально такие длиные посты написал, чтобы их никто не прочел?
Аноним 01/05/21 Суб 21:56:36 2015779136
1534982515582.png 20Кб, 1657x97
1657x97
>>2006596 (OP)
Сука, меня уже трясёт. Какого хуя? Он траллит? С & тоже не работает, блять.
Аноним 02/05/21 Вск 00:15:50 2015906137
>>2015779
Возможно нет доступа и запрос возвращает пустой ответ, в котором всё фальсе и он радостно сообщает, что хиддэн фальсе. Хотя должен выкидывать исключение, что нет доступа. Проверь.
Аноним 02/05/21 Вск 01:05:58 2015927138
Почему без автосвойств { get; set; } в моделе не работает анотация [Key], ошибку пишет мол я не пометил кей.
И вообще нахуя в моделе автосвойства?
Ну да можно делать проверку веденых данных, но вот такие пустые свойства ваще нихуя не делают, что они есть что их нет один хуй.
Аноним 02/05/21 Вск 14:49:43 2016351139
А можно как то заставить студию в случае ошибки не просто волнистой линией подчеркивать место ошибки а менять задний фон текста?
Аноним 02/05/21 Вск 15:00:36 2016360140
>>2015927
>что они есть что их нет один хуй.
Ну нет. Вон у тебя код не работает из-за того, что ты автосвойства не использовал. И 99% фреймворков, который используют рефлексию будут работать именно со свойствами.
Аноним 02/05/21 Вск 15:50:40 2016404141
Есть метод, который по заданным параметрам выдает сущность из бд. При этом для этого метода нормальная ситуация, если нет записи с запрошенными параметрами. Посему у меня есть 2 стула:
вернуть налл или использовать bool TryGet(out). Какой выбрать? Казалось бы TryGet лучше, но меня смущает то, что от TryGet обычно ожидают, что он не бросает исключения, а я не хочу скрывать исключения, если там что с бд или еще какой эксепшн вылетит.
Аноним 02/05/21 Вск 19:09:27 2016652142
>>2015927
Потому что фреймыворку нужны эти проперти чтобы замапить данные из бд к твоей модели.
Не хочешь делать их - форкни фреймворк и мапь как-то иначе либо хуяч нативные запросы и делай все ручками.
Аноним 02/05/21 Вск 19:30:09 2016708143
1.png 7Кб, 247x339
247x339
>>2015023
> Покажите примеры того, чем вы занимаетесь на работах с C#
Ну, если как пример, то пик. Если именно что там в конкретных App1,App2 - что скажут, то и делаю. Вот, блядь, не устроил кролик чем-то нашего тимлида - пилил свою, очередь сообщений. Одного из коллег на прошлой неделе - заставили пилить сервис что должен был по SOAP - команды из старых клиентов конвертировать в рест и передавать куда нужно, ну и прочая залупистика.
> Чем вы вообще занимаетесь на работах с точки зрения занятий.
Ну, опишу день. Пришел в оффис. Врубил ПК, проверил почту и меседжер. Открыл студию, первым делом прошелся по TODO что вчера оставил, потом полез в файлик с TODO где лежит глобальный список фич которые еще не допилил. К обеду - делаю пул-реквест, на обеде - либо статьи читаю, либо книжки. Потом - если нет никаких совещаний/митингов/митапов - допиливаю что успею. Иду домой.
Обычно у нас какой процесс работы: конец месяца - смотрим что из глобального готово, что нет, что успеваем, что нет, в зависимости от этого на людей вешаются задачи. Контроль за выполнением идет в своем трекере задач, задача считается выполненной, если тимлид - принал пул-реквест. Если не принял - он пишет замечания и ты допиливаешь пока не примет.

Как-то так.
Аноним 02/05/21 Вск 21:09:25 2016864144
>>2016708
А вы чтоли жирой какой-нибудь не пользуетесь?
Я просто по жире тупо делаю задачи на версию, а потом иногда занимаюсь рефакторингом или читаю всякое.
Аноним 02/05/21 Вск 21:26:12 2016880145
>>2016864
Не пользуемся. В этой конторе вообще только в этом году на гит перешли, до этого в SVN все пилилось. Вместо жиры - самописный трекер задач, но он такой кривой, что его только для глобального трекинга используют, чтобы менеджеры какое-то представление имели, обычные задачи, которые разделены между несколькими кодерами - проще выходит самим порешать кто что когда пилит.
Аноним 03/05/21 Пнд 13:57:23 2017495146
yrWVTx-Vxfo.jpg 190Кб, 960x960
960x960
Хочу писать код. Поэтому вопрос. Есть ли специализированные ресурсы для ньюфагов, предлагающие разные задачи и их решение на c#?
Аноним 03/05/21 Пнд 14:02:54 2017497147
Вазап, возник вопрос, можно ли как-нибудь в впфе запихнуть в объект элемент Grid, который содержит в себе некоторые формы?
Аноним 03/05/21 Пнд 14:05:14 2017500148
image.png 2Кб, 306x35
306x35
>>2017497
То есть возможно ли вот в фигурных скобках указать содержимое грида?
Аноним 03/05/21 Пнд 14:09:25 2017504149
>>2017495
Пора бы уже знать что первична задача и под нее выбирают язык.
https://www.codewars.com/
https://www.codingame.com/start
На данных сайтах есть только проверка синтаксиса языков.

https://phpqt.ru/ И на php можно писать программы с графическими интерфейсами но надо ли ?

Вобщем определись зачем писать код а потом уже выбирай язык.
Аноним 03/05/21 Пнд 16:10:43 2017623150
Анончики, вкотился в погромирование в конце прошлого года. Начал с JS. Все давалось супер-легко. Сдал ментору "экзамен" по базовому синтаксису, объектам, функциям, прототипам, наследованиям, классам, промисам. Все задания выполнил с первого раза. На Hexlet 100% выполненных заданий - решил всё сам без каких-либо подсказок.

То есть мне интересно было обучаться. Сейчас, когда столкнулся с реальными проектами (опенсорс + задания), вдруг понял, что просто ненавижу ебанную верстку. Ебал в рот эти html, css, bootstrap и т.д. Ненавижу клепать ебанные сайты. Я думал, что этим будут заниматься верстальщики. А сейчас всем нужен фуллстэк. И еще ненавижу ебанный линукс.

Поэтому возник вопрос: что из себя представляет работа на C#? Да, я знаю, есть статьи, но они нихуя не раскрывают сути.

Дополню, что у меня нулевые знания математики, потому что в школьные годы забил хуй из-за постоянных драк. IQ 127 по Менсу.
Аноним 03/05/21 Пнд 19:21:21 2017821151
image.png 35Кб, 818x401
818x401
Бля пытаюсь в бд добавить модель, не добавляет.
Как отследить где затык происходит?
Еще может быть мб винда не дает изменять файлы? Как запусить проект от имени администратора?
Аноним 03/05/21 Пнд 19:30:46 2017831152
>>2017821
db.SaveChanges();
Точно сука блять ебаны рот нахуй(
Аноним 03/05/21 Пнд 19:36:11 2017841153
Аноним 03/05/21 Пнд 21:03:19 2017964154
>>2017623
Пошел на хуй отсюда, чмо.
Аноним 03/05/21 Пнд 21:42:54 2018027155
>>2017623
Чтоб я тебя больше здесь не видел, псина химкинская!
Аноним 03/05/21 Пнд 21:50:25 2018032156
Просто обновил Visual Studio до последней версии, поставил превьюху .net 6 и прописал в проекте и все работает, ОС Win7x32. Хз зачем, но кайф, я на острие технологий. А у других вечно что-то не работает, еще и билдов под 32 разрядные оси нет.
Аноним 03/05/21 Пнд 22:06:44 2018063157
>>2017623
Сука, только попробуй зайти в этот тред снова, и я поломаю тебя как щепку, тварь.
Аноним 04/05/21 Втр 00:22:11 2018253158
>>2018063
двачую адеквата, шлю нахуй вронтенд макаку
Аноним 04/05/21 Втр 05:54:27 2018488159
1620096862439.mp4 509Кб, 1280x720, 00:00:03
1280x720
>>2018032
> Win7x32
> острие технологий
Аноним 04/05/21 Втр 12:48:36 2018835160
>>2018488
сам проиграл с дауна
Аноним 04/05/21 Втр 14:39:43 2018961161
image.png 7Кб, 424x191
424x191
image.png 4Кб, 374x90
374x90
Поясните дауну плз.
Вот можно в студии создать проект с реактом. Там будут пикрилы, и всё будет работать заебись, можно будет на фронте писать fetch('/api/...') без всяких локалхостов и т.д. Если сделать просто обычный бэкенд без этого всего, и обращаться к серваку с фронта, то повылезает всякое говно типа CORS.
И вот вопросы, можно ли например в докере соединить отдельный фронт и отдельный бек, чтобы он работал так же как шаблон студии? Или это нахуй не надо и все в реале делают UseSpa? В гугле видел всякие реверс прокси через nginx, а как я понял nginx нахуй не нужен, у нас есть kestrel, и видел собственно когда UseSpa юзают и все на этом. Ну или соответственно подрубают CORS, но я думал без него обойтись...
Поясните короче за best practice.
Аноним 04/05/21 Втр 14:53:10 2018976162
3dquestionmark.jpg 69Кб, 640x427
640x427
Пиздец. Рынок реально переполнен. Попытался пройти на стажировку, попытался попасть на стажирову.
150 Кандидатов, 10 человек выберут по результатам тестов, из них после стажировки на джуна берут только 3.
150 - 3. Соискателей в 50 раз больше, чем рабочих мест. На двух других вакансиях даже рассматривать не стали, сказали, что уже набрали штат.
Аноним 04/05/21 Втр 14:54:35 2018978163
>>2018976
от безысходности аж два раза написал
Аноним 04/05/21 Втр 14:59:56 2018985164
>>2018976
150 человек - это еще по-божески. Почитай блог Яндекса, где они из 1600 человек взяли 7 джунов.
Аноним 04/05/21 Втр 16:46:51 2019177165
5.jpg 70Кб, 1898x950
1898x950
>>2006596 (OP)
Аноны кто знает openGL? Есть проблема со stencil. Есть пирамида, которая вращается в ней нужно цилиндром вырезать отверстие. Отверстие вырезал, но получается следующее.
Код: https://pastebin.com/7piKW6kG
Аноним 04/05/21 Втр 16:55:39 2019183166
>>2018976
>>2018985

если все так плохо почему они джунов взяли а не мидлов?
Аноним 04/05/21 Втр 17:48:30 2019269167
>>2019183
1. Джуны никуда не дергаются в течение 1 - 1.5 лет.
2. Джунам можно платить копейки.
3. Человек, который вырос как программист в среде компании, будет намного полезнее, чем более опытный человек, пришедший с другим коммерческим опытом.
4. Джуны - своеобразная подушка безопасности. Этот пункт вытекает из твоего очка первого пункта. Если миддлы съебутся, то джуны будут сидеть на своих местах дольше.
5. На джунов можно переложить много рутинных задач. Повышается качество работы у миддлов.
6. Джуны, в целом - это лояльные КАЛЛЕГИ.

Такие дела.
Аноним 04/05/21 Втр 17:49:45 2019272168
Аноны, C# и фриланс - несовместимы?
Аноним 04/05/21 Втр 18:19:53 2019329169
>>2019272
Если с юнити - то совместимы.
Аноним 04/05/21 Втр 18:22:28 2019336170
>>2019272
90% заданий на фрилансе, не касающихся вебдева - это написать парсер/постер/заливщик/автоматизатор, как правило под винду и с гуём. C# идеально подходит для этих целей.
Аноним 04/05/21 Втр 19:14:00 2019395171
>>2019336
Кому ты пиздишь? Кому ты пиздишь, чмоня?
Аноним 04/05/21 Втр 19:52:23 2019425172
>>2019183
>>2019269
Да ты попробуй еще этих мидлов найти на рынке, это джунов можно через три сита просеивать, а вот мидлов нормальных уже хуй найдешь.
Аноним 04/05/21 Втр 23:35:47 2019693173
>>2018961
Бест практис - nginx как риверс-прокси, фронт - в своем контейнере с еще одним nginx'ом, апи в своем уже с кестрелом.
В реале - никто не делает UseSpa в проектах которые минимально рассчитаны на масштабирование.
Оно норм, когда ты монолит хуячишь или только учишься, но сейчас почти все отказываются от монолитов. Для изучения - норм, но хуйня в том что если ты решаешь поправить апи, то начинается хуета с развертыванием фронта, что замедляет сборку.
В общем, я бы советовал прочитать про докер и как им пользоваться. Разверни пару контейнеров, настрой сетку между ними нормально.
Аноним 05/05/21 Срд 02:46:43 2019813174
>>2006596 (OP)
Есть где-то норм open-source GUI редактор SQLite БД на шарпе, чтобы просто работал с либой System.Data.SQLite.dll и не ебал мне больше мозги?
Аноним 05/05/21 Срд 12:53:30 2020204175
>>2019336
Еще раз попытаешься так обмануть пользователей ресурса "2ch", и тебя ждет плохой конец.
Аноним 05/05/21 Срд 14:42:49 2020334176
image.png 10Кб, 754x79
754x79
>>2006596 (OP)
Wpf зелень на связи.
Как можно на уровне кода дать программе возможность взаимодействовать с формой (допустим TabItem), через событие Click MenuItem'а ContextMenu, который принадлежит данной форме. В моем случае по нажатию правой кнопкой мыши по элементу, вылазит контекстное меню, где есть вкладка "удалить" и по нажатию на этот айтем, элемент, владеющий данным ContextMenu должен удаляться.

Помогите пажаласта, вот пытался так, но я думаю это неправильно, тк наверное необходимо задавать вручную свойство Parent?
Аноним 05/05/21 Срд 14:58:02 2020373177
image.png 11Кб, 822x96
822x96
>>2020334
Починил, мб кому интересно:
Аноним 05/05/21 Срд 16:09:58 2020495178
>>2019395
>>2020204
Поясните ньюфагу, в чем соль? Сам юзаю сисярп + селениум для веб автоматизации в личных целях, почему для фриланса это не актуально?
Аноним 05/05/21 Срд 16:49:39 2020539179
1620222655480.jpeg 48Кб, 307x327
307x327
Открываешь проект, а там пикрил, твои действия? Что мне с ней делать?
Блять, нахуй нужна эта ваша 22 студия, почините ебучий нугет, это просто пиздец - полезешь туда что-то ставить/менять - 95% что-то пизданется/отвалится/не станет.
Аноним 05/05/21 Срд 16:55:48 2020547180
>>2019425
разве джуны через год-два не должны ставать мидлами?
еще пять лет назад джунов было жопой жуй, значит сейчас должна быть ухева туча мидлов а в реальности мидлов почему-то только меньше, какого хера? куда джуны деваются, хуле они в мидлов не превращаются?
Аноним 05/05/21 Срд 17:34:21 2020592181
>>2020539
Ставь rider и .net sdk версии, совпадающей с версией проект.
Аноним 05/05/21 Срд 17:45:57 2020616182
>>2020495
Потому что на C# минимум работы на фрилансе. Повезет, если ты найдешь постоянного заказчика. Это не считая того, что на шарпе даже в офисах работы меньше - в 2-3 раза меньше, чем на Java и в 3-5 раз меньше, чем на JS.

Если ты выбрал C#, то ты выбрал язык для души. У меня все знакомые перекатились на JS или Java, потому что заебались доедать последний хуй с солью.

А что самое забавное, к C# (со стандартным стеком) тебе в обязательном порядке нужны еще какие-то языки и технологии - как правило, это SQL, JS, React, Redux, ts и т.д.

И возникает вопрос: нахуя вообще этот C# нужен, если какая-то рандомная веб-макака зарабатывает в 2 раза больше, затрачивая при этом в несколько раз меньше сил?

Напрашивается очевидный ответ (как и писал выше) - для души. Если хочешь зарабатывать - выбирай другое направление.
Аноним 05/05/21 Срд 17:52:52 2020635183
>>2020616
Шарп дешевше для РАБотодателя..
Аноним 05/05/21 Срд 19:03:41 2020707184
>>2020616
Насчет ЗП кстати не сказал бы что разница есть особая. Но список технологий который нужно знать, чтобы вкоиться - действительно больше.
Другое дело - шарп же охуенен. Просто божественен. Я не понимаю как можно попробовав шарп - всерьез выбирать что-то кроме плюсов.
Аноним 05/05/21 Срд 19:14:51 2020720185
>>2020707
>Насчет ЗП кстати не сказал бы что разница есть особая
Учитывая количество технологий, разница большая - ебать себе мозги приходится в несколько раз больше. Не считая того, что вкатиться на шарпе сложнее (это еще мягко сказано). В вроттендеры (или даже фуллстекеры) можно условно за полгода вкатиться. С C# такая хуйня не пройдет.

>Я не понимаю как можно попробовав шарп - всерьез выбирать что-то кроме плюсов.
Ну вот это и есть "для души". По правде сказать, нахуй бы забыл про перехайпленный среди погромиздов линукс-хуинукс, если бы этого не требовал кабанчик (хули, стек слишком большой).
Аноним 05/05/21 Срд 21:05:12 2020819186
image.png 57Кб, 792x693
792x693
Аноним 05/05/21 Срд 21:07:08 2020822187
>>2020819
ок, допустим другая функция не может видеть что внутри другой функции, тогда мне лучше выше мейна это запихнуть всё, а в мейне только результат функции?
Аноним 05/05/21 Срд 21:46:01 2020852188
>>2020547
Потому что часть джунов тупые
Потому что часть джунов получают 80-100к и им норм
Потому что часть джунов перекатывается в тестирование/аналитику/etc
Потому что рынок растет адскими темпами и скорость пережевывания мидлов выше, чем скорость их появления
Аноним 05/05/21 Срд 21:59:05 2020874189
>>2020852
Этот шарит. Ещё куча джунов перегорает, и никакие деньги в перспективе им не интересны. Это не считая того, что в данном моменте они получают копейки.
Аноним 05/05/21 Срд 22:03:13 2020877190
>>2020616
> SQL, JS, React, Redux, ts и т.д.
Кроме решеток знаю только СУБД и не сказать, что как бог.
Проблем с поиском нет.
>>2020720
> В вроттендеры (или даже фуллстекеры) можно условно за полгода вкатиться. С C# такая хуйня не пройдет.
Вкатился за месяца три без особого напряжения.

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

Аноним 05/05/21 Срд 22:14:25 2020887191
>>2020877
>Вкатился за месяца три без особого напряжения.
А до этого работал дворником и компьютеры в глаза не видел. Все очень просто: учишь и получаешь работу через 3 месяца! Забудьте сказки, что нужен какой-то технический бэкграунд - это всё в прошлом. Покупайте любой курс и вкатывайтесь за один семестр!

300кк/наносек ждут вас!
Аноним 05/05/21 Срд 22:16:23 2020890192
>>2020887
хуйню из головы не выдумывай
Аноним 05/05/21 Срд 22:26:28 2020899193
>>2020890
Ну ответь честно: способен ли новичок, который не имел никакого опыта в программировании, вкатиться в C# за 3 месяца и найти работу? У кого еще из нас хуйня в голове?
Аноним 05/05/21 Срд 23:38:29 2020950194
gj4385j483523.jpg 189Кб, 880x1100
880x1100
Аноны бекендером можно стать без знания вузовской математики ? Как не открою книжку по алгоритмам там сразу пиздецкие формулы идут начинаю комплексовать. Пытаюсь понять как оптимально подойти к изучению. Я бумер и пердеть пару лет в стул изучая матан у меня времени нет. Только если как то параллельно наверстывать по вечерам я хз.
Аноним 06/05/21 Чтв 00:03:05 2020979195
>>2020899
Да.

Понятно, что не таксист.

А технарь - изи
Аноним 06/05/21 Чтв 00:04:35 2020981196
>>2020950
Да в тырпрайзе ты будешь JSON-ы между апи перекладывать, всем похуй на алгоритмы, если это не узкоспециализированная хуита типа поиска, распознания, ну или какого-нибудь хуйлоада
Аноним 06/05/21 Чтв 08:55:20 2021133197
>>2020979
Лол. С таким же бэкграундом технарь в 2 раза быстрее вкатится в веб. И не пизди, что это не так.
Аноним 06/05/21 Чтв 09:39:37 2021160198
20210506093626.jpg 54Кб, 1022x402
1022x402
В треде есть энтити гуру?
В приложении есть 2 варианта подключения к базам, либо sqlite либо mysql. Можно ли использовать как нибудь один и тот же ентити контекст, т.е. по входящей строке определить передавать в base SQLiteConnection или MySqlConnection чтобы не плодить контексты и код?
Аноним 06/05/21 Чтв 09:40:54 2021161199
Блядь пиздец, джуном нереально устроиться. Где блядь этот ебучий опыт брать?? Требуют фуллстек знания, да ещё и нахуй не берут. Ойти ойти, нехватка кадров, пидоразы блядь. Как бесит это, в ебало давать надо всем этим пиздоболам.
Аноним 06/05/21 Чтв 09:50:13 2021166200
>>2021161
А ты что думол. Если ты хочешь вкатиться в C# ДЖУНОМ, то вообще забудь. Потратишь минимум 1,5-2 года на вкат. По сути шарпист-джун чаще всего это Junior+. То есть должен иметь опыт в 3-6 месяцев.
Аноним 06/05/21 Чтв 09:57:23 2021170201
>>2021166
какие тогда варианты, пыхпых, или вронтенд?
Аноним 06/05/21 Чтв 10:13:02 2021186202
>>2021170
>пыхпых, или вронтенд?
Ты сам ответил на вопрос. Это очевидные варианты. Вакансий в 5 раз больше, ЗП выше, стек требуется меньше, полно работы на фрилансе.
Аноним 06/05/21 Чтв 10:24:59 2021200203
>>2021186
вронтенд, по-моему хуй влезешь, овердохуя желающих, но js в любом случае требуется
Аноним 06/05/21 Чтв 11:56:21 2021326204
>>2006596 (OP)
Смотри, вот БД test.sqlite3, есть .NET Framework 4.0, и есть System.Data.SQLite.dll

Как с ней работать-то, чтобы было попроще?
Аноним 06/05/21 Чтв 12:11:53 2021354205
>>2021326
Нарыл вот такое вот API: https://github.com/donet5/SqliteSugar
Вроде робит.
Кто-нить сможет пришпандорить его в наноборду? А то я ваще рукожоп.
Аноним 06/05/21 Чтв 12:55:20 2021413206
сап, подскажите, я и мой друг сейчас изучаем С# есть задача реализовать подобие интернет магазина с базой данных которая содержит пользователей, товар и заказ. Как сделал я, я создал класс DB, конструктор которого принимает любой SQL запрос который я храню в SqlCommand, так же есть метод для добавления SqlParameter и метод Exec который выполняет подключение и команды SQL запроса. В классе например товара я могу создать объект DB, скормить ему SQL запрос добавления нового товара и всё работает отлично. Как поступил мой друг, он для каждой таблицы базы создал классы взаимодействия с ней, которые наследует от абстрактного класса который представляет из себя некий CRUD. Как по мне это не очень правильно потому что например в будущем для добавления нового функционала например сортировки таблицы по каким-то параметрам придётся писать реализацию этого метода, когда я могу просто написать SQl запрос и ничего не поломается и всё будет работать хорошо, рассудите нас плиз
Аноним 06/05/21 Чтв 13:12:02 2021438207
image.png 78Кб, 1324x507
1324x507
Можно ли тут как-нибудь изъебнуться и конвертировать тип object в тип имеющая переменная BluePrint?
Аноним 06/05/21 Чтв 14:30:22 2021537208
>>2020874
>>2020852

>Потому что часть джунов получают 80-100к и им норм
так выше же писали что джунов сейчас через три просева принимают на работу за еду
Аноним 06/05/21 Чтв 14:44:11 2021563209
>>2021413
Freeman от корки до корки пройди, все вопросы отпалут
Аноним 06/05/21 Чтв 14:46:01 2021568210
>>2021537
На старте да,
через полгода они почему-то начинают хотеть деняг и некоторые даже начинают получать
Аноним 06/05/21 Чтв 14:52:47 2021585211
>>2020852
А тупойй джун, это какой?
Аноним 06/05/21 Чтв 15:18:53 2021658212
>>2021563
как это читать? куча нелепых картинок, куча каких-то человечков с предложениями в облачках, нет ничего по этой теме написанного в более строгом стиле?
Аноним 06/05/21 Чтв 15:29:33 2021683213
Аноним 06/05/21 Чтв 15:44:44 2021709214
Screenshot20210[...].png 161Кб, 1332x469
1332x469
>>2020547
>разве джуны через год-два не должны ставать мидлами?
А каким образом джуны должны становиться мидлами, когда они вообще ничему не учатся? Местные двачеры доказали, что они могут 3.5 года джейсоны перекладывать и считать себя при этом синьорами, которые обсираются от двух алгоритмических задачек. Зато гонору, ебать, "бизнес-задачи" ("Вань, надо прототип написать, сделой!" (делает в конце спринта за пять минут и потом ещё месяц ковыряется в носу без дела, воображая себе что это и есть карьерный рост)).
Аноним 06/05/21 Чтв 17:35:43 2021830215
>>2021658
Я писал про Adam Freeman - Pro Asp Net Core 3, ты видимо что-то другое нашел
Аноним 06/05/21 Чтв 17:57:21 2021870216
metanit достаточно для старта в шарпах, или ещё книги нужны?
Аноним 06/05/21 Чтв 19:04:06 2021993217
>>2020819
Блин, чел, вот ты прям мне настроение поднял.Всю неделю бомблю с того что у меня говнокод, но посмотрел на твой и сразу легче на душе стало. Спасибо.
Аноним 06/05/21 Чтв 19:11:16 2022010218
>>2021160
Если ты под одним контекстом подразумеваешь один и тот же класс - да, можно. Делается это с помощью DbContext(DbContextOptions) в опциях задаешь провайдера. Если ты хочешь у уже созданного объекта менять провайдера, считай что нельзя.
Чтобы было проще пользоваться - сделай себе класс фабрику для контекстов.
Аноним 06/05/21 Чтв 19:40:54 2022064219
121.png 31Кб, 826x698
826x698
>>2021160
Можно так. Например.
Можешь написать парсер(скорее пару регулярок, лол) который по строке догадается какой правайдер нужен.
Аноним 06/05/21 Чтв 22:29:55 2022211220
>>2021870
МСДНом заполируй и норм будет.
Аноним 06/05/21 Чтв 22:43:51 2022226221
>>2021870
Кури CLR via C#. Эта хуйня - обязательна. Попадешь на мой собес и хотя бы один раз запутаешься в кишочках - затроллирую до смерти.
Аноним 06/05/21 Чтв 23:06:29 2022242222
Аноним 07/05/21 Птн 00:19:33 2022334223
turned-on.gif 2077Кб, 640x480
640x480
Аноним 07/05/21 Птн 00:39:27 2022373224
>>2022064
Паттерн матчинг не завезли вам чтоли?
Аноним 07/05/21 Птн 05:36:25 2022460225
Аноним 07/05/21 Птн 10:10:50 2022553226
>>2021413
Есть пример кода, чтоб на .NET 4.0 завелось? Заебался уже гуглить.
Аноним 07/05/21 Птн 10:29:22 2022569227
>>2019395
>>2020204
Что за обострение?
Зайдите на любую фриланс биржу.
Там вебдев (в основном PHP запилить форму обратной связи/модуль оплаты) и написание тех самых парсеров/автоматизаторов/заливщиков.
Аноним 07/05/21 Птн 13:14:54 2022882228
1620382605860.jpeg 134Кб, 1280x465
1280x465
Вы шяс охуеете какую я хуиту словил.
.net 4.5.2, wpf, в окне есть винформ хост с датагридом (больше нихуя нету с винформ). Ловлю пикрил эксепшн при, внимание, попытке заскринить окно шиндоусом (win+shift+s). Ловлю из-за датагрида (в эксепшене пишет что он приходит с system.windows.forms).
Там на датагриде какие-то дефолтные хоткеи есть или что?
Аноним 07/05/21 Птн 13:26:26 2022892229
Причем тригериться эксепшн как-то вообще рандомно, но именно после трех кнопок, на две любых остальных кнопки все норм.
>>2022882
Аноним 07/05/21 Птн 13:52:31 2022907230
>>2022553
что тебя конкретно интересует?
Аноним 07/05/21 Птн 14:13:48 2022934231
20210507141343.jpg 106Кб, 918x597
918x597
Включил отладку машинного кода, я правильно понимаю что это баг шинды? Спасибо дядь Билл, задеплоил приложуху.
>>2022892
Аноним 07/05/21 Птн 14:23:05 2022942232
20210507142446.jpg 7Кб, 374x84
374x84
>>2022010
>>2022064
Бля, спасибо конечно что отписали но я легаси холоп.
Аноним 07/05/21 Птн 18:48:19 2023312233
>>2022907
>что тебя конкретно интересует?
Конкретно, интересует то, как работать с базой данных с через этот System.Data.SQLite.dll, и как вообще его юзать на шарпе.
Пример работы с базой, короче, нужен, рабочий.

Надо какое-то апи или класс для него написать, отдельно, чтобы попроще всё это было там,
и чтобы там были простые методы были для работы с данными.
Ну там, создание/переименование/удаление таблицы, добавление/изменение/удаление поля, перестановка полей местами в таблице,
добавление строки, изменение ячейки в строке, обновление строки, обновление ячейки,
поиск по таблице, SQL-запросы всякие, удаление данных, изменение типов данных в столбцах,
работа с разными типами, возврат текста строкой, возврат блоба в виде байт,
возврат строки списком значений столбцов,
возврат таблицы или Dictionary, из view'a скажем, или в результате SQL-запроса, где возвращается таблица,
переиндексация таблиц в бд и бд вцелом, возврат схемы базы данных,
создание view'а с SQL-запросом, короче вот это вот всё,
чтобы было отдельными методами, возвращающими соответствующие значения,
и чтобы записывались они, в результате формирования ACID-транзакции,
помещаясь сначала в очередь, а затем одной транзой, хуякс и либо вписываются, либо не вписываются.
Потому что одновременное чтение там есть, а одновременная записи нет, и надо повторять каждый раз, пока не запишется,
проще одной транзакцией записать, которая либо запишется, либо не запишется и повторится через время.
И чтобы не городить каждый раз конструкции с using, и чтобы не открывать каждый раз соединение с базой данных этой, для каждого действия.
И чтобы Vacuum там был и backup и repair, и вся хуйня эта вот, для полноценной работы,
а то я ебу как юзать эту System.Data.SQLite.dll, просто длл-ка какая-то, а что там внутри - хз, непонятно нихуя, оно какие-то кракозябры в блокноте показывает.
Аноним 07/05/21 Птн 21:28:16 2023438234
Блядь, вот как бороться с неуверенностью в себе в плане кода?
Я вот написал когда только пришел на работу решение. Оно работает, оно всех устраивает и его пустили в прод. Суть дела была в том, чтобы запилить телекоммуникационный сервер. Ну так вот, тогда я нахуячил на TcpListener-TcpClient. Ну так вот, прошел год, я посмотрел и охуел с того что за говно написал. И втихаря переписал, беря за основу архтектуру кестрелла, потому что мне понравилось в свое время то как там вся эта хуйня сделана. Тимлид увидел и сказал, что я хуйней маюсь, дескать работает - и заебись, нихуй лезть, ну и откатил все что я там неделю втихаря лил. И с какой-то стороны он же прав, типа никто не жаловался и работает нормально. Но бля, почему-то же сами майки не на основе TcpListener-TcpClient решили хуячить. А может они просто так же хуйней страдают. Я не знаю, но чувствую себя все время говном.
Аноним 07/05/21 Птн 21:43:13 2023446235
>>2023438
>прошел год
>И втихаря переписал
Какой же ты дегенерат, господи Иисусе. Я бы на месте тимлида просто к хуям тебя уволил в тот же день. Не захотел бы увольняться по соглашению сторон - нашел бы регламент на согласование изменений и вписал бы нарушение в твою ебанную трудовую книжку.

Как же мне горит с таких ПЕРФЕКЦИАНИСТАФФ))00))-ебланов.
Аноним 07/05/21 Птн 21:54:28 2023458236
>>2023446
А с чего у тебя горит-то, лол? Тот проект я делал соло. Оценивали мою работу по факту того, что оно делает то что от этой хуйни ожидают, не падает, не проседает по перформансу и не течет как сука. И никто, кроме меня, не знает как оно работает. Я переписал, почитав умных книжек, разбил на слои, убрал синглтоны со статикой, добавил тестов и вообще сделав все как книжках советуют. Для потребителя - ничего не поменялось внешне - оно так же работает и делает все то же самое, внещшний апи, поменялась внутренняя часть.
Аноним 07/05/21 Птн 22:21:27 2023487237
>>2023458
> А с чего у тебя горит-то, лол?
Ты мог бы круто подставить всю контору, если бы твоя новая перфекционистская версия забаговала бы. Ведь ты в тихаря лил в прод неоттестированнй код. Втихаря. В прод.
мимо другой анон, тоже уволил бы тебя нахуй, вредитель-неадекват, иди лечись в дурке, перфекционист, бля

И кстати, твой сегодняшний код через год тебе тоже говном покажется.
Аноним 07/05/21 Птн 22:22:39 2023490238
>>2023458
Еблан ты тупой, потому что ты наемный рабочий, который выполняет задачи бизнеса. Выполнил задачу? Все работает? Все довольны? Не трогай, блядь! Из-за одного такого же дегенерата нашему отделу пришлось слышать ор директора, которого выебал в жопу недовольный заказчик, поймавший баги в "ОПТИМИЗИРОВАННОМ КОДЕ".

Хочешь свободы и творчества? Пиздуй в свободное плавание и пили свои проекты.

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

Я завидую терпению твоего тимлида. Представляю, как у него сгорела жопа.
Аноним 07/05/21 Птн 22:38:20 2023496239
>>2023438
>>2023458
АХАХАХАХ. Анон, я очень надеюсь, что это жирный вброс, иначе я потеряю верю в циничных двачеров. Но ЕСЛИ это все же правда и произошло недавно, то извинись перед тл и скажи, что осознал свою ошибку - скажи, что посмотрел на ситуацию со стороны. По крайней мере, хоть ультрадураком в глазах тл перестаешь быть.

>>2023487
>>2023490
Очевидные вещи пишите, анончики.
Аноним 08/05/21 Суб 08:55:50 2023747240
>>2023490
>>2023490
Я не лил в прод, лол. Я же не совсем дебил. У нас просто есть репозиторий для промежуточных версий, в который я и лил, потом, если поступает требования запилить новую полноценную версию, оно допиливается и эти промежуточные версии переносятся в альфу, альфу отдают на внутренние тесты отделу тестирования, когда внутренние тесты прошли - отправляют лояльным заказчикам на бета-тесты, в прод льется только когда все замечания бета-теста исправлены, и в прод идет только то что все это прошло и замечания устранены.
Да и не забаговало бы, я первым делом сделал тесты и покрыл ими весь код что собирался менять.
Аноним 08/05/21 Суб 09:11:01 2023751241
>>2023438
>И втихаря переписал
Я заскриню этот пост, чтобы показывать неофитам на работе, как делать не надо. Как тебе это вообще могло в голову прийти?
Аноним 08/05/21 Суб 09:13:44 2023752242
>>2023751
Очевидно как. Я работал над другим проектом. Мне все нравилось. В один из дней на обеде решил сравнить с тем как писал раньше. Охуел и решил переписать.
Аноним 08/05/21 Суб 09:22:05 2023753243
Аноним 08/05/21 Суб 10:18:55 2023792244
Аноним 08/05/21 Суб 10:25:54 2023797245
>>2023792
Имеет ли смысл закрывать соединение с базой каждый раз и открывать ег снова, при каждом действии, или однин раз открыть его и оставить его открытым, пока работает прога?
Аноним 08/05/21 Суб 10:54:36 2023815246
Screenshotselec[...].png 262Кб, 518x430
518x430
Пчёлки, есть беда, я дегенерат, тяжело задачки даются, как исправить? порой вроде понимаю задачу но хожу во круг неё и не могу решить, как решать?
Аноним 08/05/21 Суб 11:15:31 2023839247
>>2023815
Смотри как решают похожие задачи другие и перенимай опыт.
Чтобы высирать решения быстро - нужно опыт иметь.
Допустим, я вот упарывался олимпиадами еще со школы, и верчу алгоритмы на хую, но когда меня просили в качестве тестового - запилить консольное приложение, что должно файл по рестапи отправлять, я бсод поймал и начал с написания реализации HTTP, все по спецификации, хуячил с сокетов, в итоге таки за неделю нахуячил отправку файла, а мне сказали - что я хуйню сделал и нужно было просто взять HttpClient и отправить ебучий файл по апи. Ну или другой пример подобного бсода - попросили сделать для крестиков-ноликов серверную часть, ну, я-то у мамы умный - одномерный массив для хранения состояний, хуяк-хуяк и готово за полчаса, и меня послали, дескать - а вот мы захотим делать трехмерные крестики-нолики или вдруг нужно не поле 3x3 использовать, а 10x10, а у тебя там все гвоздями приколочено. В общем, я много раз обсирался, прежде чем первую работу нашел, и просто после фейла - лез смотреть как подобное нормальные люди делают, ну и таки в определенный момент решил не выебываться и таки начать читать книжки типа Совершенный код и прочую, казалось бы, залупистику, которая почти не поясняет за технологии, а скорее философией является.
Короче, к чему я. Опыта набирайся. Смотри как другие люди решают задачи, не копируй их решение, а попытайся понять, почему они так сделали, какие минусы и плюсы такого подхода, что тебе в нем нравится, а что - нет. Если само решение не понимаешь - трать время на наращивание базы.
Ну и да, порешай на кодфорсе-кодварсе-литкоде задачки, пользы коммерческой не особо много, но там много интересных задачек, над которыми можно посидеть-подумать, плюс ты делаешь свое, потом можешь посмотреть как другие делают и спиздить понравившиеся техники, ну или сравнить со своим решением и потешить чсв, что ты сделал пизже.
Аноним 08/05/21 Суб 11:27:06 2023857248
Screenshotselec[...].png 337Кб, 568x494
568x494
>>2023839
спасибо пчелик, попытаюсь щас по твоей инструкций сделать, как рас много времени имею, выходные + в понедельник не надо на работу , если получится что нибудь отпишу в тредисе
Аноним 08/05/21 Суб 18:26:55 2024473249
В .NET 6 будут какие-то большие изменения и есть смысл ставить превью и вкатываться в си шарп в нем? Или хватит .NET 5?
Аноним 08/05/21 Суб 19:11:11 2024543250
>>2024473
Тебе что бы вкатится и фреймворка 2.0 хватит
Аноним 08/05/21 Суб 20:02:08 2024621251
Сап ананасы! Имеет ли смысл откликаться, на вакансий которые требуют опыт работы, хотя бы год? Если нихуя опыта нет. Или это бессмысленно?
Аноним 08/05/21 Суб 20:39:54 2024658252
>>2024621
Да. У меня 3/4 собесов были как раз на вакансиях с 1-3 годами опыта на хх. И все 4 джунские. На стажёров или сразу отказы или после тестового в виде теста/расскажи о себе, хуй знает почему.
В резюме все честно - "без опыта". Но есть вышка кста, если это роляет.
Аноним 08/05/21 Суб 20:46:50 2024672253
>>2024658
блядь у меня вышки нет, а давно ты устраивался джуном, на такие вакансий?
Аноним 08/05/21 Суб 20:48:25 2024676254
>>2024658
я правильно понял, без опыта, подавался, на вакансий с требованием 1-3 года опыта работы?
Аноним 08/05/21 Суб 20:52:17 2024681255
Аноним 08/05/21 Суб 21:04:11 2024696256
>>2024681
рад за тебя, в каком стеке? сишарп?
Аноним 08/05/21 Суб 21:08:27 2024703257
>>2024621
ну а ты сам то как думаешь ? что чуйка подсказывает ?
Аноним 08/05/21 Суб 21:16:49 2024712258
>>2024681
>в этом году 2021.
Эдик ты ?
Аноним 08/05/21 Суб 21:19:30 2024714259
>>2024703
думаю сишарп, ну мб и что другое, поэтому и интересуюсь
Аноним 08/05/21 Суб 21:22:07 2024717260
Аноним 08/05/21 Суб 21:30:20 2024720261
>>2024717
спасибо за ответ, буду знать
Аноним 09/05/21 Вск 02:26:37 2025059262
>>2006596 (OP)
Возможно не туда пишу, но как мне авторизоваться в аккаунте телеграм, используя файлы? C#
Аноним 09/05/21 Вск 06:50:08 2025135263
Аноним 09/05/21 Вск 10:02:06 2025226264
В чем разница инициализации переменной до вызова конструктора и внутри него? Нахуя вообще такой дублирующий друг друга функционал?
Аноним 09/05/21 Вск 15:28:48 2025721265
image.png 92Кб, 815x1036
815x1036
Пишу класс-обертку для аналитики игры. И мне не нравится, что нет единого стиля. С одной стороны методы, которые как бы реагируют на какое-то событие(OnBuyCoinPack, OnGetLivesFromReward), с другой стороны методы, которые прямо указывают, что отправляют данные(SendRoundsPerRoom, SendPlayerLifetime). Каждый метод отправляет 1 единственное событие на сервер.

Как бы это все привести к единому стилю?
Аноним 09/05/21 Вск 15:36:47 2025737266
>>2025721
Дженерики скорее всего. Если конечно Я правильно понял твое слово "стиль".
Аноним 09/05/21 Вск 15:39:37 2025746267
>>2025737
В плане именования методов. Думаю, их нужно все привести к виду "SendЧто-тоТам".

OnGetCoinsFromCoinPack -> SendCoinsGotFromCoinPack
OnBuyChargesPack -> SendPurchasedChargesPack
Аноним 09/05/21 Вск 15:56:36 2025768268
Аноним 09/05/21 Вск 16:18:26 2025797269
>>2025721
Зачем тебе такой толстый интерфейс? Ты уверен, что его нельзя разбить на более мелкие?

Чисто попытка на кофейной гуще гадать.

Ну, банально, вот то что ты в region вынес - вынести в отдельные интерфейсы.
Потом. Я вот вижу, что сигнатура методов OnBuyCoinViaXXX отличается только наличием Signature. Эта сигнатура всегда разная и ее нельзя как поле/свойство класса GoogleCoinBuyer хранить?
Просто мое видение всего этого монстра заключается таки в том, что тебе нужно сделать флюент-билдер в нем собирать нужный для конкретной платформы сервис аналитики.
Что-то типа:
IAnalyticService service = AnalyticServiceBuilder
.SetUserId(id)
.UseGoogleBehaviour()//тут бы бы выставлялся IGoogleAnalyticService
.SetSignature()
.Build();

Ну и дальше - с экономикой, тоже как-то странно. Я бы вынес в интерфейс:
IResourceAnalytic<TResoirce, TSource> в котором был бы однин метод OnGet(int amount). PackId бы билдером задовал в случаях, где он нужен, как и остальные штуки.


В общем. Я бы как-то так сделал:
IBuyResourceAnalyticSerice<TResource>{ void OnBuy<TResurce>(string packId);}
IEconomyAnalyticService<TResource,TSource>{ void OnGet<TResource,TSource>(int mount);}
IGameSender<TEventType>{ void Send(); }

Затем пара фабрик, пара билдеров и если уж так нужно такой вот интерфейс иметь - фассадированием это все делать.
Аноним 09/05/21 Вск 18:40:23 2025930270
def.png 4Кб, 334x110
334x110
Не будет ли это ошибкой?
Аноним 09/05/21 Вск 18:59:10 2025942271
Аноним 09/05/21 Вск 22:23:10 2026150272
Я бы вкатился, но в моём городе всего 1 вакансия и то только для помидора.
Аноним 09/05/21 Вск 22:25:51 2026153273
>>2026150
Вкатывайся сразу на сеньера.
Аноним 09/05/21 Вск 22:28:31 2026158274
>>2025746
>Думаю, их нужно все привести к виду "SendЧто-тоТам".
Для eventHandlers я лично всегда пишу приставку On*. Но как анон выше сказал я бы разбил интерфейс на несколько исходя из регионов.
Аноним 09/05/21 Вск 22:43:06 2026175275
>>2025797
В целом - энтерпрайзом запахло.

Каким образом класс, который должен предоставить handlers к каждому отдельному eventу будет делать маппинг к твоим generic'ам, когда интерфейс в данном случае нужен чтобы убедиться что класс который его имлементирует предоставляет handlers для каждого и каждого event'a игры/движка?

То есть если у тебя 350 event'ов в игре, через твой дизайн у тебя будет в фулл классе 350 наследований и ебанутый поток факторис.
Аноним 09/05/21 Вск 23:14:58 2026209276
>>2026175
> Каким образом класс, который должен предоставить handlers к каждому отдельному eventу будет делать маппинг к твоим generic'ам, когда интерфейс в данном случае нужен чтобы убедиться что класс который его имлементирует предоставляет handlers для каждого и каждого event'a игры/движка?

Примерно так же как у тебя мапятся запросы к контроллерам в случае работы ASP.Net (core).
Я бы сделал атрибут который бы описывал, за какой эвент отвечает конкретный хендлер. Что-то типа EventTypeAttribute. Затем бы класс EventHandlersMapper, который бы собирал из сборки все обработчики, у которых есть конструктор принимающий 1 аргумент типа EventContext из этого бы составлялся словарь вида: <EventType, Func<EventContex, EventHandlerBase>>, и затем в зависимости от евента - проверял бы наличие нужного хнедлера и создавал инстанс, в случае наличия, ну а обработчики бы наследовались от какого-нибудь абстрактного EventHandlerBase, который принимает в конструкторе EventContext в котором уже все что нужно для обработки любого возможного эевента находилось. В общем как-то так.

> То есть если у тебя 350 event'ов в игре, через твой дизайн у тебя будет в фулл классе 350 наследований и ебанутый поток факторис.
С чего? Зависимости - может быть, а наследования тут каким местом? И это при том что такой класс нужен только в случае если вот такой вот фассад действительно нужен, иначе - нахуй его.
Ну и да, сам подумай, вот у него будет 350 эвентов, все это в одном монструозном файле, а скорее всего это будет какая-то ЙОБА с partial, когда ты нихуя не понимаешь и боишься просто тронуть чтобы не сломать, и потом у тебя в логике обработки какая-то ошибка, ты не знаешь, можешь ли трогать этот метод или нет.

Может быть я не прав. Какое ты бы решение предложил?
Аноним 09/05/21 Вск 23:21:38 2026210277
>>2026209
Да, моя хуйня не учитывает возможность передать хендлерам параметры в конструкторе. Но я не это решение за 5 минут накидал.
Аноним 10/05/21 Пнд 03:56:12 2026300278
Наверное, платина, но спрошу. Что посоветуете почитать для джависта, желающего перейти на шарп? Многие вещи похожие, потому не хотелось бы тратить время на то, что уже понятно.

Алсо, еще удивило обилие вакансий фуллстеков с шарпом на бэке. Почему так? Наверное, делит первенство с нодой и пыхой. Джавы там меньше, например. Шарп не настолько энтерпрайзнутый исторически и больше используется в малых/средних проектах с вебом?
Аноним 10/05/21 Пнд 10:32:04 2026362279
>>2026153
Без опыта то, конечно, можно.
Аноним 10/05/21 Пнд 15:39:02 2026545280
Думал, что C# охуенный кроссплатформенный язык, и что уж на любой Win10 он точно заработает. Писал себе код в .Net 5, пользовался по работе.
Возникла потребность обеспечить коллег одной своей прогой, а оказалось, что рантайма .Net 5 нихуя ни у кого не установлен ни в Вин10, ни в Вин7, и админских прав ни у кого нет, и оказалось, дотнетовский екзешник ни у кого не работает, кроме меня.
Только Net Framework 4.8.
Есть ли в студии опция автоматически даунгрейдить весь код с нет5 в фреймворк 4.8? Весь код мой. Либ, кроме стандартных, не использую.
И когда кстати Вин10 у всех автоматически проапгрейдятся с добавлением свежего рантайма?
Аноним 10/05/21 Пнд 16:07:20 2026561281
>>2026545
хы, да кому нахуй из нормисов нужен, твой .NET5. По сабжу - нужно было не говно на десктопе месить, а как белый человек деплоить в облако или хотя бы на виртуалку
>>2026300
>джависта, желающего перейти на шарп
ебнулся, парень? Одумайся и беги
Аноним 10/05/21 Пнд 18:43:33 2026724282
>>2026545
Коллеги кто по професси? Если программисты, то сразу посылай нахуй, а лучше сам иди в пизду оттуда.

А если они нормичи, то измени в .csproj TargetFramework с net5.0 на net48.

А ещё лучше, измени TargetFramework на <TargetFrameworks>net48;net5.0</TargetFrameworks>, и быдлу скидывай 4.8.

Более того, при чём тут кроссплатформенность если речь про отсутствие нужной версии на машине.
Аноним 10/05/21 Пнд 19:04:32 2026768283
>>2026561
>ебнулся, парень? Одумайся и беги
Щито так? Там все плохо?
Аноним 10/05/21 Пнд 19:09:53 2026783284
>>2026545
поставь Self-contained в настройках деплоя
Аноним 10/05/21 Пнд 19:25:42 2026828285
>>2026768
Нет, он врёт, но конечно в .NET oche много говна.

Например я на работе до сих пор разгребаю легаси WinForms 2003 года. Много всякого bloat'a и старья в экосистеме накопилось, например ебаные ASP NET WebForms, который иногда тоже нужно поддерживать.

Но с другой стороны, мне удалось одурманить кабанов и пропихнуть F# в энтерпрайз, а это вин я щитаю, учитывая что в моем городе НИ РАЗУ не было замечено ФП вакансий, разве что Scala проскакивала, да F# не взлетел у масс, и вряд ли появится что-нибудь.

Тут же .NET5.0/.NET6.0 пилю, которые наконец решают многие проблемы экосистемы.

По десктопному UI есть WPF для небыдла, который я тоже юзаю. Потом в MAUI буду смотреть.

В целом, я думаю 5/10 вакансий - легаси, 4/10 - бэк или фулл-стэк, что неплохой вариант, 1/10 - как у меня, где в принципе есть всё со своими минусами и плюсами ЗАТО ШВАБОДА.

Джаву не юзал почти, но осуждаю.
Аноним 10/05/21 Пнд 19:33:21 2026848286
>>2026828
Кароче если хочешь нормальный .NET - сразу смотри чтобы в вакансии было мало десктопного говна/.NET Framework'а.

.NET Core/.NET5.0 + Linux - детектор небыдла/хипстеров в мире .NET, эти ребята шарят. Умеют выжимать из Майков хорошие соки, а мусор, которого много, оставлять на свалке. И что сука характерно, не платить ни бакса Майкам.

Гнилой энтерпрайз такой стэк себе не поставит, не осилят.
Аноним 10/05/21 Пнд 20:22:21 2026909287
>>2026768
обычно с .NET в java перекатываются, ты видимо исключение. Не смотри на вот таких долбоебов, как >>2026828
>Нет, он врёт
>Джаву не юзал почти, но осуждаю.
>на работе до сих пор разгребаю легаси WinForms 2003 года
>пропихнуть F# в энтерпрайз
Они тебе тут расскажут, что на .NET можно в космос улететь. Смотри вакансии в своем регионе и смело дели .NET на 3, если не хочешь говно жрать с юзлес парашей, как ПОЦиент выше.
Не хочу разводить холиваров насчет .NET vs Java, но java - это как стандарт качества. Все остальное - завидный пердежь со стороны параши.
Аноним 10/05/21 Пнд 20:53:19 2026946288
Анон, есть где-нибудь списочек заданий для тренировки основопологающих вещей, типа работы с Деревьями выражений/делегатами/потоками/линк/тд. Буду очень благодарен.
Аноним 10/05/21 Пнд 20:59:28 2026953289
>>2026946
Напиши препроцессор, компилятор и линковщик си на шарпе. Базарю, и про деревья выражений и делегаты и линк с потоками узнаешь.
Аноним 10/05/21 Пнд 20:59:30 2026954290
>>2026909
И что-что WinForms? На жабе там говна ещё больше легаси говна поддерживать, а .NET5.0 - пофикшенный дот-нет, это наше всё.

>но java - это как стандарт качества
Хаха, пиздос, java на 5 лет отстает от отсталого C#. Более того, со Скалой то чмони обосрались, никому она нахуй не нужна, а F# в своей нише живет и спокойно соседствует с C#-легаси в продакшене.

>обычно с .NET в java перекатываются
Ещё раз, ты долбаеб в любом случае, ибо Java и C# - это легаси ебаное, поэтому только долбаебы в Java перекатываются в 2к21, C# туда же.
Аноним 10/05/21 Пнд 21:02:05 2026955291
Всем привет. Надумал вкатиться в разработку. Ранее был версталой, далее manual qa. Пробовал себя везде абсолютно, даже кладовщиком когда-то в яндексе поработал, лол. Короче осознанно пришёл к выводу, я вижу себя онли в разработке.
Выбрал c#, т.к. интересно работать с десктоп + есть опыт в вебе, если что, туда скакну.

Выбрал книгу - Язык программирования C# 7 и платформы .NET и .NET Core Троелсен, Джепикс. Что можете о ней сказать?
И ещё, в 26 лет вкатываться поздно или нет?
Аноним 10/05/21 Пнд 21:06:35 2026960292
>>2026953
Я пока что зеленый, настолкьо, что CLR не прокурена, лишь пара-тройка уроков с ютуба + фундаментальные знания с шараги.
Не думаю, что такая работа сейчас мне по плечу
Аноним 10/05/21 Пнд 21:12:44 2026965293
>>2026955
Вкатываться никогда не поздно, друг-анон, главное - упорный труд и мой тебе совет - обучение возможно лишь при выходе из зоны комфорта, поэтому ты свернешь все горы, если поставишь цель, удачи)
Аноним 10/05/21 Пнд 21:20:06 2026972294
>>2026960
Та там нет ничего сложного на самом деле. Простую версию ты бы, я думаю, просто прочитав спецификацию языка - смог бы запилить без особых проблем.

Ну да ладно. Тогда вот тебе другой советик: иди на CodeWars и решай задачки оттуда, но чтобы усложнить задачу - делай к задачкам гуй простой, например на формах или ВПФ.
Аноним 10/05/21 Пнд 21:22:45 2026977295
Эх. А я так хотел чтобы мне пояснили что я не так спроектировал в этих вот своих маняфантазиях:
>>2026209
>>2025797

Я-то сам - студент обычный и было интересно послушать как сеньеры-помидоры пояснят мне, что я говно. А не пояснили(((
Аноним 10/05/21 Пнд 21:23:12 2026980296
>>2026954
>И что-что WinForms?
есть ли смысл дальше спорить с этим? Ладно, сегодня хорошее настроение
>java на 5 лет отстает
иследование анонов с 2ch?
>F# в своей нише живет
3% - F#, 97% - python. Зафиксировали нишу
>в Java перекатываются в 2к21
А кто говорил, что нужно в Java перекатываться? Сейчас есть по перфомансу и спросу лучше языки, поэтому их спрос и падает
>>2026955
>интересно работать с десктоп
он мертв, забудь
>>2026960
сто раз задумайся, прежде чем слушать двачера. Тут зеленых 90% сидит, они тебе еще не такого насоветуют. А копни глубже - сидит 16 летняя чмоня, которую в шараге деды дрочат низкоуровневые реализации воплощать в жизни. Проскроль выше, там и TCP свои пишут и колеса изобретают
Аноним 10/05/21 Пнд 21:44:40 2027003297
java.png 124Кб, 1250x803
1250x803
aspNetCore.png 183Кб, 1250x803
1250x803
>>2026980
WinForms - умирающее говно, но которое до сих пор встречается на проектах просто потому что оно было популярно и активно юзалось. И я сказал, что точно так же в жабовской экосистеме. Новые проекты на формах уже никто не делает, да и в основном новое сейчас пишут на линуксе для веба на .NET5.0.

Лучше объясни мне почему ваше говно-поделие жрет ресурсов в 10х нет кора, а перфоманс средненький то, и не дотягивает до майков.
Аноним 10/05/21 Пнд 21:45:48 2027004298
>>2027003
Синий на пике - ASP NET CORE
Фиолетовые - Java Spring / Tomcat.
Аноним 10/05/21 Пнд 21:46:20 2027005299
>>2026980
А зачем тогда щас шарп нужен? Для веба? А какую роль он в вебе играет? Есть же php, python, go
Аноним 10/05/21 Пнд 21:51:47 2027007300
>>2027005
Потому что нихуя больше нет.

Самый топ - это Go.
После него NET Core / NET5.0.

Всё остальное моча.

>php, python
Я лучше на Java буду писать, чем на этих двух говнах.

Ладно, дам Java/Scala третье место, ок, не говномоча.

Итого: Go > .NET > Java/Scala > говномоча > всё остальное.
Аноним 10/05/21 Пнд 21:54:33 2027012301
А мне говорили Го как первый язык это пиздец говнище
Аноним 10/05/21 Пнд 21:54:43 2027013302
>>2027007
Ну нахуй ваше го с его кодами ошибок. Говно мамонта какое-то.
Аноним 10/05/21 Пнд 21:55:04 2027014303
>>2027005
Все просто. Попробовав писать для веба на шарпе - ни один здоровый на голову человек - не захочет писать на ПХП, а уж тем более питоне или го.
Собственно - вся суть. Шарп - охуенен в плане ощущений от написания на нем кода. Все удобно, все отлично, и перформанс и безопасность и инфраструктура.
Долгое время единственное что останавливало кабанов от использования шарпа - ебля с запуском на линуксах и вся эта хуйня что тянулась вместе с шарпом, но, к счастью, с появлением core - это перестало быть проблемой.
Аноним 10/05/21 Пнд 21:55:24 2027015304
>>2027012
>>2027007
Да и го к тому же щас актуальность теряет, он типа похайпил и всё
Аноним 10/05/21 Пнд 21:56:43 2027018305
>>2027012
Да, синтакс говнище, и до сих пор дженерики вроде не завезли, я бы его не юзал вообще, но для веба-бэка он архитектурно самое-то.

>>2027007
Аноним 10/05/21 Пнд 22:01:39 2027024306
Я пишу на .NET только, но Go - это concurrency по типу Эрланговской + перфоманс NET Core, а вот всё остальное не очень.
Аноним 10/05/21 Пнд 22:11:20 2027038307
Зачем нужны автогеттеры и автосеттеры? В чём их смысл? Это же просто бойлерплейт на всякий случай, который в 99% случаев никогда не пригождается. Карго-культ какой-то ебать рот.
Аноним 10/05/21 Пнд 22:26:33 2027054308
>>2027038
Для структур, чтоб не писать бойлерплейт. Сам же сказал.
Аноним 10/05/21 Пнд 22:30:44 2027059309
Окей, если по вашему все языки нахуй умирают, то че учить то?
Аноним 10/05/21 Пнд 22:32:57 2027063310
Аноним 10/05/21 Пнд 22:37:58 2027074311
>>2027038
В том, что выставляя наружу поле - ты открываешь реализацию класса. Это, как минимум, небезопасно. К тому же - внутренняя структура класса - может меняться довольно активно, в то время как интерфейс должен оставаться неизменным. Если, допустим, ты вынес возраст в публичное поле - ты, по идее - не должен иметь возможности потом заменить его на свойство, а если ты не можешь заменить его на свойство, то ты не имеешь возможности затем добавить банальную валидацию в муттаторе, в итоге - долбоеб-вредитель возьмет и укажет возраст человека отрицательный, у тебя какая-то остальная логика, что завязана на возрасте пойдет по пизде и потом ты заебешься это все искать и править.
Это не говоря о том, что у тебя может быть так, что наружу торчит одно, а не деле там какая-то хитрая логика.
Аноним 10/05/21 Пнд 22:44:26 2027082312
Аноним 10/05/21 Пнд 22:53:21 2027093313
Сап, нужны ваши самые большие говняки, которые вы встречали на собесах. Небольшое превью - завтра нужно будет собеседовать чела, который уволился с прошлого места, т.к. ему не дали сеньера. Нужно ему указать его место под солнцем, загнав самыми задроченными вопросами. Quiz и вопросы по самому языку - думаю для него будет плевыми, вот мой список критериев:
1. Из .NET только # (спрашивать по F или десктоп - имо тупо, т.к. проект на MVC/Core);
2. Моя часть - только #, но нужны вопросы глубокие, на уровне CLR/CLS с MSIL (только не вопросы по командам IL, это тупо);
3. Чем свежее, тем лучше. Спрашивать по асинхронным паттернам .NET 3.5 тоже не торт.
У меня в мыслях - это любимая асинхронщина с TAP паттерном, рефлексия в рамках рантайма приложения и какой ни будь вопрос по созданию своего Value type.
Подкиньте самые каверзные вопросы, которые вам задавали студентота и джуны лесом
Аноним 10/05/21 Пнд 22:57:42 2027096314
>>2027093
Попроси его сложить два числа и начни его хуярить, что неправильно делает.
Если сломается - нахуй таких слабых.
Аноним 10/05/21 Пнд 23:18:09 2027113315
>>2027093
Ну, для примера, спроси его про финализаторы. Можешь хоть в лоб: почему при создании своего финализатора - время на создание объекта увеличивается в разы, как избежать, что происходит. Можешь этот вопрос завуалировать.
А вообще - если вам он не нужен как сеньер - так и скажи: нам нужен крепкий мидл на такую-то вилку. Пытаться как-то там принизить, а в результате попасться на какого-то задрота, который действительно тебя опустит - тебе же хуже, потому что ты себя чмом как в его глазах, так и своих выставишь, это не говоря о коллегах, которые будут видеть, что ты срешь себе в штаны, а в конце весь обосранный говоришь, что человек не подходит.
Аноним 10/05/21 Пнд 23:35:23 2027126316
>>2027113
>про финализаторы
полу сеньера собесить будем, а не джуна, чтобы такое спрашивать
>так и скажи
я ничего говорить не буду, кто нам нужен. Для этого есть ПМ и HR, мое дело - отсобесить. Сказали придет сильный чел из известной конторы, нужно спросить "что нужно". В том то и проблема, что я не могу спросить какую то дичь из спецификаций, нужно брать что то из жизни. Но твой вопрос с GC в диспоузе натолкнул на хорошую мыль - спросить по marshal class - для чего, зачем? InteropService в целом, как оборачивать management в unmanagement. Вопрос по structLayoutAttribute тоже пойдет. На закуску будут лики - чем и как ловить, что создает. Как раз есть блоки Unmanagement кода на проекте, пусть скажет, как с ними работать.
Какого говняка еще подкинете?
Аноним 11/05/21 Втр 00:14:52 2027149317
>>2027126
Чел, извини, но мне кажется он тебя в говно размажет судя по твоим познаниям .NET и того что ты на дваче спрашиваешь советов. Отдай собес людям более опытным.
Аноним 11/05/21 Втр 00:19:31 2027155318
>>2027126
Если задача - чтоб чел не пошел к вам на работу - спрашивай IL парашу, которую ты и хотел спрашивать. Нормальные люди увидят такое собеседование и сами скажут "спасибо, пошли вы нахуй".
Аноним 11/05/21 Втр 00:22:13 2027156319
>>2027126
Более того, я таких говен нахавал с интеропом, что мне хочеться просто взять и уебать, и если ты несёшь интероп в продакшн в 2к21 - поздравляю - ты джун энтерпрайзный. Не позорься.
Аноним 11/05/21 Втр 00:24:04 2027158320
Бля, только сильнее запутался. Может и не стоит с жабы соскакивать, хуй знаает.
А вообще, у дотнетчиков энтерпрайза очень много?
>>2026300
Аноним 11/05/21 Втр 00:29:36 2027162321
>>2027149
>>2027155
>>2027156
я писал о том, чего бы спросить, а получил размазанные сопли по капоту. Напрягите извилины и выдайте, что нибудь стоящее. Я же знаю, что тут не только студенты и джуны сидят.
Аноним 11/05/21 Втр 00:31:47 2027164322
>>2027162
Напряги извилины и дай ему алгоритмическую задачу на листке бумаги , все остальное - вода.
Аноним 11/05/21 Втр 00:44:00 2027181323
>>2027093
Попроси его написать на листке бумаги колоночную СУБД. Дай ручку без чернил и каждые 30 секунд хмыкай и делай недовольное лицо. Базарю, так ты сразу попустишь зазнавшегося и покажешь его место.
Аноним 11/05/21 Втр 00:58:00 2027193324
>>2027162
Если челик шарит в high-perfomant .NET, то по .NET его подъебать будет очень сложно, скорее он себе ещё десятку зелени накинет, если прощупает незнание со стороны кампании.
Аноним 11/05/21 Втр 01:10:29 2027196325
уже сам пожалел, что задал тут вопрос
>>2027164
в чтение умеешь? >>2027093
>Из .NET только #
>>2027181
как и другие мывамперезвоним, которые перданули выше
>студентота и джуны лесом
>>2027193
его будет по архитектуре сложно подъебать или по каким ни будь высокоуровневым конструкциям, поэтому я за говняк по собесам и спрашивал
>десятку зелени накинет
>незнание со стороны кампании
какой еще "кампании"? Я выше писал, как будет собес проходить. И про какую десятку речь? Ты вилки мидла-сеньера не знаешь?
Пиздец тут комьюнити сидит.
Всем идиотам с инкрементом хромосомы - вы сути собеса не понимаете или никогда не собесили. Если человека приглашают пособеседоватся - это повод, что нужен человек и его хотят взять на работу. Я и сам иногда прохожу собесы, чтобы узнать, что могут интересного спросить или предложить.
Всем обиженным, которые не прошли на место из N человек - оставьте свои всхлипы при себе.
Отвечать на подобного рода посты не вижу больше смысла, если подкинете чего годного и интересного - буду благодарен.
Аноним 11/05/21 Втр 01:16:51 2027199326
>>2027196
Когда ты собеседуешь - ты и есть представитель всего хорошего и плохого что есть в кампании. А почему 10к тебя удивляют? Senior .NET 5+ лет работы - уже человек вполне может за бугор работать, а там спокойно 30-70k$/year вилка, особенно для как ты сказал из известной конторы. Конечно, если ты не из ДС, то извини.
Аноним 11/05/21 Втр 01:19:50 2027201327
>>2027199
Уже не говоря что в ДС зарплат сеньйоров меньше 25k$/year ПРОСТО НЕТ.
Аноним 11/05/21 Втр 02:32:44 2027243328
Если вам выделили угол - то сидите спокойно и не орите. Почему я должен слышать голос со стороны параши? Рты позакрывали. Ещё одна падла вылезет отсюда и протечёт в Java тред - будут приняты меры. Свободны.
Аноним 11/05/21 Втр 08:35:19 2027290329
>>2006596 (OP)
Как скомпилировать это https://github.com/moneymanagerex/System.Data.SQLite/tree/master/SQLite.Interop
в System.Data.SQLite.dll (содержащий SQLite.Interop.dll внутри себя),
производя компиляцию на linux, с помощью mono xbuild/msbuild ,
и сделать это так, чтобы на выходе, была windows-длл-ка,
первые байты которых, начинаются с MZђ , а не с ELF ???

Этот файл: https://github.com/moneymanagerex/System.Data.SQLite/blob/master/Setup/compile-interop-assembly-release.sh
выдаёт ELF, под названием SQLite.Interop.dll

Но это не виндовая либа System.Data.SQLite.dll (с SQLite.Interop.dll внутри),
которая генерится на windows, cmd-файлом:
>set fdir=%WINDIR%\Microsoft.NET\Framework
>set msbuild=%fdir%\v4.0.30319\msbuild.exe
>%msbuild% System.Data.SQLite\System.Data.SQLite.Module.2010.csproj
>%msbuild% SQLite.Interop\SQLite.Interop.2010.vcxproj
>pause

Хочу, чтобы mono выдало мне именно этот файл System.Data.SQLite.dll который многовесный, и который с интеропом этим, внутри, и чтобы win32 он был.
Какие флаги задать нужно? Или может что-то поставить нужно в линуксе, дополнительно?
Аноним 11/05/21 Втр 09:31:26 2027309330
20210511093139.jpg 17Кб, 381x219
381x219
Убернеофитовый вопрос. Можно ли как-то в винфорсмовском датагриде поменять серый бекграунд (тот что за ячейками)?
Аноним 11/05/21 Втр 09:34:18 2027310331
Как получить погоду за определенный день? кто-нибудь знает какую-нибудь бесплатную апи?
Аноним 11/05/21 Втр 09:57:17 2027322332
Аноним 11/05/21 Втр 10:20:23 2027334333
>>2027074
> В том, что выставляя наружу поле - ты открываешь реализацию класса

А когда я пишу {get; set} я не открываю реализацию класса? Вредитель всё ещё может поменять его.

> ты, по идее - не должен иметь возможности потом заменить его на свойство

Почему? Что это за ментальная гимнастика?
Аноним 11/05/21 Втр 11:24:53 2027359334
Сап, шарп.
Есть код - шифратор Цезаря из файла.
Как мне записать полученное слово в новый файл допустим, "4.txt"?
Пробовал через СтримВрайт, но так и не понял, как он работает

Сам код


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n =1, key = 1;
string s = @"C:\Users\user\Desktop\1.txt"; var arr File. ReadA11Text(s); Console.WriteLine("Введите ключ:"); key - Convert. ToInt32(Console.ReadLine());
string s1 ="";
string alfphabet - "абвгдежзийклмнопрстуфхцчщъыььюя";
int m = alfphabet.Length;
for (int i =0; i arn. Length; i++)
for (int j = 0; alphabet.Length; j++)
if (arr = alphabet
1)
int temp = j * n+ key;
while (temp temp >=
m)
temp -=m;
s1 - s1 alphabet[temp];
Console.WriteLine("Зашифрованное слово:" s1);
Console. ReadLine();
Аноним 11/05/21 Втр 11:31:40 2027369335
Аноним 11/05/21 Втр 12:10:18 2027413336
999.png 9Кб, 628x232
628x232
>>2027359
> Как мне записать полученное слово в новый файл?
Это если тебе хочется ебаться с байтами.
Аноним 11/05/21 Втр 13:05:52 2027471337
>>2027413
ну можно с помощью ксмл но там ведь больше еботни будет, чем тебе байты не нравятся?
Аноним 11/05/21 Втр 13:22:15 2027486338
>>2027322
Ты взят на java.lang.org.pring.КАРАНДАШ(), будь осторожен!
Аноним 11/05/21 Втр 13:24:43 2027489339
>>2027334
>А когда я пишу {get; set} я не открываю реализацию класса? Вредитель всё ещё может поменять его.

Ну так сделай валидации в сеттере или вообще сделай его приватным, доступ через методы.
Ну и опять же, что там у тебя в get; set; только ты знаешь, может у тебя там динамика какая-то или генерация на лету например, так что про реализацию ни слова - только контракт
Аноним 11/05/21 Втр 13:49:30 2027502340
Аноним 11/05/21 Втр 14:20:22 2027542341
Ананасы, подскажите пожалуйста. Что указывать в графе образование, при отклике, на вакансию джуна/стажёра (в hh). Если, у меня нихуя не профильное, гуманитарное средне-специальное образование?
Аноним 11/05/21 Втр 14:22:59 2027548342
Аноним 11/05/21 Втр 14:23:54 2027549343
>>2027196
>Всем идиотам с инкрементом хромосомы - вы сути собеса не понимаете или никогда не собесили.
Расскажи о сути собесов, мне интересно тебя послушать.
Аноним 11/05/21 Втр 17:22:06 2027700344
>>2027290
Короче, блядь. Как же я наебался с этим сиквелайтом. Вот нормаьный сорец с ентити, блекджеком и шлюхами: https://github.com/username1565/System.Data.SQLite
А тот full-сорец отсюда: https://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
какой-то неполный, ошибки бьёт, блядь.

mono так и не разбрался, но dll-ка System.Data.SQLite.dll и её сорец есть уже.
Можно пришпандорить всю эту поебнятину в наноборду, терь.
Аноним 11/05/21 Втр 17:42:31 2027707345
>>2027700
>mono
Но зачем, если можно пилить .NET5.0 и не париться?
Аноним 11/05/21 Втр 17:51:01 2027715346
У меня БОТФОРТЫ от программирования под .net на маке. Сука, какая же это параша. VS for mac - переделка моно, еле справляющаяся с задачами. VSCode - багованная пиздота, которую раз в час нужно перезагружать.

Всё заебало, пришел в айти отдел, поставил виртуалку с виндой и человеческой студией. Нахуй нам маки закупили? Пиздец блять.

У меня всё.
Аноним 11/05/21 Втр 18:49:13 2027761347
>>2027707
>.Net 4.5, но это не поддерживается для XP
>бла-бла-бла
Значит не обратно-совместимое говно копирастическое, которое только x64 чтобы специальные процы покупать для этого, и чтобы кейгены и кряки не работали.
Аноним 11/05/21 Втр 20:06:59 2027821348
>>2027761
Как вам там живется, в прошлом тысячелетии?
Аноним 11/05/21 Втр 20:25:50 2027830349
>>2027715
Ну так юзай райдер.

>Нахуй нам маки закупили? Пиздец блять.
Дык владелец галеры-то не виноват, что вы, макаки, к шиндовсу пришиты яйцами.
Аноним 11/05/21 Втр 20:31:15 2027833350
yoba.jpeg 8Кб, 225x225
225x225
Аноним 11/05/21 Втр 21:53:21 2027888351
Поясните что такое вообще using var?
Конструкция вида
> using var client = new HttpClient();
Я думал using это аналог import из других языков, ну типа подключать пакеты сторонние.
Аноним 11/05/21 Втр 22:06:02 2027901352
>>2027888
using - это обертка для автоматического disposal of unmanaged resource после того как CLR поймет что объект больше не нужен.

Другое вариант - это определить scope такого объекта используя using { }.

Третий вариант - это не использовать using, а в ручную прописывать client.Dispose(), после того как тебе он не нужен.

В случае неиспользования using и отсутствия вызова Dispose(): объект остается в памяти и его ресурсы будут очищены только при вызове фаналайзера, если он определен, но существуют много причин по которым фаналайзер не будет вызван и ресурсы объекта будут сидеть в памяти до конца жизни процесса.
Аноним 11/05/21 Втр 22:07:48 2027903353
image.png 8Кб, 274x223
274x223
>>2027888
то же самое что и пикрелейтед
Аноним 11/05/21 Втр 22:08:34 2027904354
>>2027888
using System.Collections; и т.д. - это ДРУГОЕ, это понимать нужно это аналог import.

>>2027901
Аноним 11/05/21 Втр 22:42:21 2027938355
Анон, вот учусь я на программиста, сами знаете что такое образование в нашей священной.
Учусь уже много не мало - год, но знаю чистые фундаменталы и во многом виню себя, что мало знаю.
Сам сижу на видеоуроках + метаните, но пока что мой максимум это Linq/Делегаты/обобщение + работа с разметкой нахуй никому не нужной xaml, и тд.
Что порекомендуешь в такой ситуации? Хочу курить классику CLR VIA C#, думаю смогу осилить.
Алсо пилите сторисы, как вас учили в шараге, если такое было.
Алсо, посоветуйте что-нибудь по бдшке пожалуйста, желательно легонькое на MySQL
Аноним 11/05/21 Втр 22:47:42 2027940356
>>2027359
using (BInaryWriter название = New BinaryWriter(File.Open(ваш_путь, FileMode.(тут специфично, ide подскажет какой тебе нужно)))
{
название.Write(Твоя стринговая переменная с шифром)
}

Эт всё, чтобы считать файл юзай следующее

using (BinaryReader название = New BinaryReader (File.Open(ваш_путь, FileMode.(тут специфично, ide подскажет какой тебе нужно)))
While(reader.Peekchar()>-1) // <- Тип берет последний символ после позиции считывания, если конец файла, то выходи из цикла
{
var Stroka = Reader.ReadString()
}
Аноним 11/05/21 Втр 22:59:25 2027948357
>>2027830
> к шиндовсу пришиты яйцами
Как ловко макопедик проигнорировал неудобные факты:
>>2027715
> VS for mac - переделка моно, еле справляющаяся с задачами. VSCode - багованная пиздота, которую раз в час нужно перезагружать.
Аноним 12/05/21 Срд 01:08:17 2028069358
>>2027948
А при чём тут мак-то, маня? Это мс выкупила замарин студию и перестала её развивать, чтобы не выпускать тебя из анального рабства шиндовса.

Хотя учитывая твою спермоворскую фиксацию на студии понятно, что ты из этого рабства выходить и не хочешь. Жидбраинсу надо было назвать райдер жид-студией — чтобы мартышки видели заветное слово.
Аноним 12/05/21 Срд 03:53:02 2028122359
Пацаны, пацаны. Эту хуйню учить для юнити поделок? Сколько потребуется времени для вката 30лвл дисигнера в шарп с нуля?

Заебался зависеть от украинских быдлокодеров, хочу сам навернуть говнеца с кодом.
Аноним 12/05/21 Срд 06:17:27 2028153360
На мариюдб вообще существует .нет фреймворк конектор+энтити контекст?
Аноним 12/05/21 Срд 07:09:05 2028159361
>>2027888
Короче, проще считать, что using - контекстуально зависим.
Когда эта хуйня перед/внутри неймспейса, это аналог import, когда эта хуйня внутри метода - это значит: вызови Dispose когда я выйдешь из скопа.
На деле, там просто разделяется деректива using и инструкция.Директива - импортирует, инструкция - указывает на то что объекту нужно вызвать Dispose. Почему они не сделали 2 слова - я хуй знает, видимо боялись что если будет import что-то - слишком на жаву будет похоже.
Аноним 12/05/21 Срд 07:16:58 2028162362
>>2027938
Самый лучший способ научиться - начать что-то пилить свое. Банально, сделай себе на шарпах блог с комментариями и авторизацией через гугл. Из менее банального - сделай движок для 2д игры со своей физикой. Если хочешь более тырпрайзное - сделай свой сериализатор какого-нибудь SOAP, чтобы по тестам показывал сравнительный перформанс и фич было не меньше чем у уже существующих решений, ну и на его базе сделай простенький сервер отчетов с прикрученной БД, естественно серверную часть сам реализуй, а не бери готовый движок, начинай с сокетов, типа тебе клиент шлет запрос: сформируй отчет такого вида - ты формируешь и отдаешь ему в сериализованном виде.
Аноним 12/05/21 Срд 11:41:57 2028288363
image.png 19Кб, 1241x158
1241x158
image.png 55Кб, 985x639
985x639
Чому не работает нихуя? Передаю bool параметр же.
Аноним 12/05/21 Срд 12:17:12 2028328364
Бамп
Аноним 12/05/21 Срд 12:28:51 2028339365
Аноним 12/05/21 Срд 12:32:27 2028344366
>>2028122
Сам шарп учить - неделю. Там всего десяток ключевых слов.
Гораздо дольше научиться мыслить программистски. На это нужны годы. Без этого у тебя будет лагучее говно.
Аноним 12/05/21 Срд 12:34:37 2028347367
Аноним 12/05/21 Срд 12:49:34 2028369368
>>2028344
Звучит как нечто ахуительное.
Аноним 12/05/21 Срд 14:16:14 2028451369
Я правильно понимаю, что вкатываться в впф = обречь себя на сложности поиска работы? На АСП.НЕТ в четыре раза больше вакансий нахуй. Мне неважно куда, я вкатун. Вкатиться бы просто
Аноним 12/05/21 Срд 14:48:43 2028518370
>>2028451
Впф быдло не осилило, поэтому многие на формах сидят. Лучше вообще в десктоп не вкатывайся.
Аноним 12/05/21 Срд 19:19:39 2028839371
>>2028518
Удвачиваю. Быдлу надо штоб компоненты, как в дельфи Ильхама Зюлькорнеева. Вёрстка хамлом их вводит в ступор.
Аноним 12/05/21 Срд 19:42:09 2028857372
>>2028518
>>2028839
ХЗ что там осиливать. Как по мне оно вело себя более предсказуемо чем та же связка HTML+CSS. Другое дело, что из-за того что специфичная технология - постоянно все пилить самим - ну такое, а не все конторы готовы башлять деньги всяким девекспресам и прочим пидорам.
Аноним 12/05/21 Срд 20:40:56 2028900373
Стоит ли выносить статику и прочие служебные штуки в отдельные классы?
Ну, допустим, вот мне не нравится писать DateTime.Now. Разумно ли будет запилить интерфейс вида:
ITimeProvider
{
DateTime Now{get;}
}
и единственную реальную имплементацию:
TimeProvider
{
DateTime Now => DateTime.Now;
}
?
Ну, просто с одной стороны - да, вроде выглядит как ненужная хуйня. НО ВДРУГ Я КОГДА-НИБУДЬ БУДУ ТАКИ ПИСАТЬ ТЕСТЫ? И тут можно будет замокать этот вот провайдер и получать одно и то же время. Ну и вообще, разве не лучше что это отдельный объект а не непонятная статика?
Аноним 12/05/21 Срд 20:43:29 2028904374
Аноним 12/05/21 Срд 20:57:42 2028915375
Я немного тупой.
В общем. Смотрите, хочу свой логгер. Проблема существующих - уровни логгирования прибиты насмерть. Везде это: Trace,Debug,Info,Warn,Error,Critical. А я вот хочу: Trash, Trash2, SomUserTrash, Wow, BadThingHappened, Dead. Ну, это как пример. Суть я думаю вы уловили.
Ну так вот, я как думал-то: просто хуячим поток, хуячим очередь, метод Log - просто в очередь кидает то что просят залоггировать, поток смотрит в очереди что есть - достает и хуячит все что в ней в писак, писаки - уже знают: в консоль, в файл или еще куда. Ну и тут загвоздка случилась. Если я делаю Thread.Sleep(1) после того как очередь очистил - и хуячу бесконечный цикл записи в лог - очередь оч быстро заполняется. Пиздец как быстро. За пару секунд у меня студия показала что 16 гигов выделелось. Это как-то не круто.
Ну, я убрал очередь, Но тут проблема - тогда получается что если какой-то из писак дюже медленный или кидает исключения - то логирование будут тормозить все это дело.
Помогите баке пожалуйста. Что я делаю не так? Ну, т.е. да, в реальных условиях не будет такой вот хуйни с бесконечным циклом, но все равно эти выделения памяти смущают, а как без них - я хз.
Аноним 12/05/21 Срд 21:21:55 2028940376
>>2028915
У тебя есть три стула:
1) писать без очереди, но это чревато охуительными тормозами во время вызовов логирования
2) иметь бесконечную очередь и оптимизировать производительность логирования (батчинг-хуятчинг, например)
3) иметь кольцевой или другой буффер ограниченной вместимости и при переполнении буффера терять логи

Что именно выбрать - зависит от тебя.
Аноним 12/05/21 Срд 21:27:15 2028944377
>>2028904
Разница в том, что конструктор вызывается после инициализации полей. В остальном однохуйственно. Что использовать зависит от стиля кода проекта.
Аноним 12/05/21 Срд 21:29:27 2028946378
>>2028900
Классика, как мокать DateTime.Now
Ответ - принимать везде где можно уже сконструированный DateTime
Аноним 13/05/21 Чтв 01:27:22 2029134379
Есть какие книги по сишарпу для нуфагов на русском? В ОП одни справочгики и английский.
Аноним 13/05/21 Чтв 08:29:17 2029257380
>>2029134
Ты пойми. Книги это не путеводитель. Там не будут разжевывать тебе темы по правильному порядку. Скачай какой-нибудь курс скиллбокса в интернете, для нуфагов самое то. Но там знаний как таковых недостаточно для трудоустройства, поэтому потом уже подключишь книги и справочники
Аноним 13/05/21 Чтв 09:58:06 2029283381
3 года опыта работы, хочу перекатиться в загнивающий запад. Вообще не знаю как обстоит ситуация с рынком на западе, но насколько сложно найти работу с релокацией?
Аноним 13/05/21 Чтв 11:05:03 2029347382
>>2028940
>>2028915

А как же философия микросервисов? Можно же логер сделать как микросервис и он не будет влиять на производительность основного проекта
Аноним 13/05/21 Чтв 14:49:32 2029549383
Профилирую через dotMemory одно приложение жрущее много памяти (до падения из-за нехватки), оно мне пишет что на пустые строки ("") потеряно (wasted) 167мегабайт. Это как понимать, всего было так много пустых строк или они в памяти одновременно висят?
Аноним 13/05/21 Чтв 14:51:55 2029551384
>>2029347
>А как же философия микросервисов? Можно же логер сделать как микросервис и он не будет влиять на производительность основного проекта
В сферическом вакууме может быть и не будет. На практике - если ты каждый вызов логгера превращаешь в сетевой вызов - это пиздец сколько ресурсных затрат: установка соединения, аунтификация, сериализация лога, шифрование, тупо время на то чтоб электрончики дошли до места назначения, десериализация на стороне микросервиса, отправка ответа микросервиса и т.д..

К тому же доступ к сетевому ресурсу на порядки медленнее записи в память. Из-за этого тебе с вероятностью 98% придется делать батчинг и очереди (чтоб логгер не захлёбывался от нагрузки), что ведет тебя обратно к той же проблеме, что у тебя была изначально.
Аноним 13/05/21 Чтв 14:53:12 2029553385
>>2029551
Микросервисы это кал.
Аноним 13/05/21 Чтв 14:58:16 2029558386
>>2029553
Микросервисы это инструмент. Другое дело, что они решают проблему, которой на самом деле в вашем проекте нету. При этом они добавляют кучу головной боли в виде поддержки инфраструктуры.
Аноним 13/05/21 Чтв 15:13:55 2029569387
Есть один текстовый файл. Каким наиболее быстрым способ можно удалить заранее указанные не закрытые строки в этом файле? Например & & &.
Аноним 13/05/21 Чтв 15:15:07 2029572388
Аноним 13/05/21 Чтв 16:15:41 2029621389
image.png 377Кб, 604x339
604x339
>>2029551
ах ну да, нужно же обязательно все в память а то вдруг логгер запишет лог на 5 наносек, это же катастрофа, поэтому лучше все фигачить в асинхронную очередь и забивать озу что бы администратор на 5 наносек быстрее увидел лог а то все рассыпется,

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

>>2029553

что бы ты понимал микросервисы это вообще сейчас мета, все эти кремневые хипстеры фигачат сейчас все что попало на микросервисах, это конечно тоже перегиб, но говорить что такой мощный инструмент это кал может либо супер сеньор с синдромом утенка коим ты не являешься ибо тупой либо полный нуб коим ты являешься но еще умудряешься и носом воротить
Аноним 13/05/21 Чтв 16:16:28 2029623390
>>2029558
Вот именно для логгера микросервисы хорошо подходят
Аноним 13/05/21 Чтв 16:20:11 2029625391
>>2029558
Вот именно для логгера микросервисы хорошо подходят,
требований к латентности нет поэтому ок,
автономность есть, нет привязки к главному сервису и даже если он упадет логер продолжить работу
можно подключить эти вот ваши всякие модные дашборды,
логер часто масштабируется и изменяется и как микросервис его развернуть и масштабировать гораздо проще, а про какие-то электронны я вообще не понял, микросервес же можно развернуть на локальном хосте
Аноним 13/05/21 Чтв 16:31:16 2029630392
>>2029621
Просто ты ебанько начитавшееся хипстерской хуеты. Микросервисы это кал и всегда им был.
Аноним 13/05/21 Чтв 16:32:02 2029631393
>>2029621
>мета,

Зумерок, не употребляй слов смысла которых не знаешь. Или в словарике проверяй.
Аноним 13/05/21 Чтв 16:50:54 2029646394
image.png 14Кб, 677x180
677x180
>>2029631
В текущем контексте применительно к микросервисами философия архитектуры проектов которая сейчас считается заслужено мейнстримом, ибо микросервисы хорошо себя показывают, и вообще будущее за интернетом вещей поэтому даже вебмакака которая умеет в микромервисы в прекрастном сша будуйщего не останется без работы
О чем ты вякнуть хотел
Аноним 13/05/21 Чтв 16:58:33 2029654395
>>2029646
Они хорошо себя показывают только в плане продаж книжек или курсов авторов индусской националльности для ЦА в виде дебилов, т.к. это действительно всего лишь философия, т.е. пиздёж ГСМ дебилов ни о чем.
Аноним 13/05/21 Чтв 17:16:20 2029665396
>>2029621
Логгер где-то в сети - уже давно попробованный варинат. Логстеш с эластиком и кибаной - стандартная технология уже лет 10 как. В реальных проектах ты его юзать будешь именно так: через внутренний логгер, который поддерживает батчинг, с очередями и прочими перделками. Иначе производительность решения падает раз в 10 если не больше, вплоть до того, что им становится невозможно пользоваться.

Уже пройдено всё это, и не по разу. И да, иди нахуй со своими переходами на личность.
Аноним 13/05/21 Чтв 18:46:34 2029781397
>>2029347
Ну вот допустим мне нужно чтобы приложение работало как в облаке, так и на железке китайской за 50рублей и флешкой на 2 гига, которая вообще не знает что такое интернет.
Для этого я и придумал всю ту хуйню с пистелями: захотим - будем на другой сервис срать, захотим - в базу будем хуячить, а захотим - в консоль или файл.
Вся -то хуйня в том, что классический логгер что ILogger - не поддерживает кастомные логи со своими уровнями и прочим.
Вот в железке - линуксом настроено: папка Trace - чистится когда в папке больше 100МБ. А вот папка - Errors - не чистится, специально чтобы если все пошло по пизде - можно было отследить ошибки, но в контексте Error - нужны отдельные уровни: Ожидаемые ошибки; непредвиденные; системные, которые не относятся к работе этого приложения. Вот и ILogger не позволяет такие вот уровни сделать и возможность это нормально фильтровать после - ебись с тем что есть, либо все в один уровень хуяч, а потом разбирайся.
Вся же проблема - в том что если использовать очередь без ограничений - вся оперативная память железки засирается в случае если мы без остановки хуячим в лог.
Аноним 13/05/21 Чтв 20:56:20 2029885398
Какие подводные камни от использования ThreadPool.QueueUserWorkItem? Типа где не смотрел - ну есть и есть. Допустим я хочу async void туда запихнуть и пока не завершится приложение что-то там делать. В тестах пока что вроде работает, но хуй знает какие подводные. Поясните, если не сложно.
Аноним 13/05/21 Чтв 21:01:25 2029889399
>>2029885
>async void
побойся б-га.
Аноним 13/05/21 Чтв 21:03:52 2029891400
>>2029781
ILogger поддерживает EventID, в которые ты можешь класть что угодно: хоть твою мамашу, хоть небо, хоть аллаха.
Аноним 13/05/21 Чтв 21:07:43 2029895401
>>2029891
Поддерживает, но я не могу написать так: Logger[Errors].MinimumLevel = SystemErrors; и при этом Logger[Trace].MinimumLevel = Information. А я пиздец как хочу. Просто не представляешь.
Аноним 13/05/21 Чтв 21:11:51 2029898402
>>2029895
ЗАПИХИВАЕШЬ ЭТОТ КОД В ILoggerProvider
@
ЮЗАЕШЬ СТАНДАРТНЫЙ ILogger
@
НЕ ИЗОБРЕТАЕШЬ ВЕЛОСИПЕДОВ
Аноним 13/05/21 Чтв 21:17:36 2029901403
Аноним 14/05/21 Птн 00:24:47 2030006404
>>2006596 (OP)
Что надо знать по авторизации, чтобы сделать сервер для сайта с регистрацией и личным кабинетом?
Всякие там basic HTTP autentification, Sessions, Cookies, HTTPListener. TCPListener, GET-POST, и вот это вот всё.
Заебало гуглить уже, есть примеры?
Аноним 14/05/21 Птн 05:04:17 2030097405
>>2030006
Что это за хуйня: https://github.com/microsoft/referencesource/blob/5697c29004a34d80acdaf5742d7e699022c64ecd/System/net/System/Net/HttpListener.cs#L862
выдаёт throw, с этим кодом:
https://docs.microsoft.com/en-us/dotnet/api/system.net.httplistener?view=net-5.0
Мол файл занят другим процессом,
когда запускается
>listener.Start();
Какого хуя, там, внутри, добавляются префиксы эти ебучие,
если префиксы добавлены в коде ещё до вызова .Start() , из кода во второй ссылке,
и ещё и добавляются они - как-то криво:
>AddAllPrefixes();
Как эту парашню вызвать, чтобы не было всякой забагованности?
Или это и есть баг? Я так понимаю, эта хуйня в самой либе, и надо переконпелировать какую-то dll-ку ебучую?!!
Пиздец просто, какой-то ёбанный ад блядь. HTTPServer не работает нихуя, кучу серверов перепробовал,
в итоге запилил кривой HTTPServer на TCPListener,
и хуй знает как туда теперь пришпандорить сессии-хуессии и куки-хуюки, чтобы эту регистрационную форму блядскую, конями ебанную, вкодить уже нах, безо всей этой мозгоебли придурошной.
Аноним 14/05/21 Птн 06:54:50 2030106406
Как работает Channel<T>? Просто выглядит как ЙОБА какая-то. Я вот заменил Pipe в своем наколеночном Tcp-сервере и вроде удобно пользоваться, не нужно ебаться с тем чтобы двигать буффер, а мне настолько экономичным быть и не нужно было, можно после парсинга удобно использовать для того чтобы организовать уже обработку готовых сообщений. Да и судя по выделениям памяти - оно нормально работает. В общем, пока потыкался и удобно, но что-то подозреваю, что я что-то не знаю, иначе почему про эту штуку мало где пишут? Я, по сути, видел только пару статей про нее и то: Смотрите, можно одновременно писать и читать и не нужно как в пайпах ебаться со сдвигами буфферов.
Аноним 14/05/21 Птн 10:25:52 2030173407
я одного не пойму, если дот нет и линукс это опенсорс тогда как можно развернуть на линуксе ентерпрайз приложение? например мы продаем программы для кафешек, инсталлируем новый дот нет кор на линукс у клиента, тогда у него будут все исходники они полетят в сеть и мы обанкротимся потому что мы не опенсорс компания, в чем смысл тогда дот нет кора если с# это ентерпрайз язык
Аноним 14/05/21 Птн 10:50:53 2030202408
>>2030173
Думаешь кому-то нужен твой кал?
Аноним 14/05/21 Птн 11:08:39 2030211409
>>2030202
Конкурентам, не знаю, не важно, в чем смысл вообще опенсорса для дотнеткора?
Аноним 14/05/21 Птн 11:34:49 2030232410
>>2030173
Исходники у них будут только если вы предоставите их. Декомпилировать можно, но это полная неподдерживаемая хуета получится. Если вы очень анальные, можете обфускатор заюзать.

Проблема стара как мир - любой жбапидор с такой херней сталкивается. Решение простое: продавайте не только программу, но и сервис.
Аноним 14/05/21 Птн 13:05:36 2030317411
>>2030232
Так если дотнет и линукс опенсорсные разве у них не будет открытого исходного кода? а на линуксе вообще можно запускать скомпилированные проекты? я думал на линуксе только опенсорс работает, чем он тогда глобально отличается от то же винды за исключением того что он бесплатный и у него нет поддержки
Аноним 14/05/21 Птн 13:55:05 2030373412
>>2030317
Можно запускать что угодно. У дистрибутивов линукса как раз есть поддержка, и она часто платная
Аноним 14/05/21 Птн 14:16:06 2030400413
>>2030373
Так если линукс создается сообществом тогда кто поддерживает?
и в чем тогда разница от винды? винда же во всем будет лучше тогда
Аноним 14/05/21 Птн 15:10:26 2030450414
Аноним 14/05/21 Птн 15:25:44 2030472415
>>2030400
1) работники из больших компаний (интел, хуявей, нвидия, гугл и т.д.)
2) сотрудники компаний, ответственных за конкретный дистрибутив
3) энтузиасты

При чем энтузиастов мало, процентов 6-10 от всех контрибуторов.

Разница от винды в том, что линукс бесплатен для пользования, и в том, что в случае чего ты можешь допилить его напильником так, как тебе надо. В это же время за серверную винду надо платить очень много денег. К примеру, лицензия на двухпроцессорный сервер на AMD Epyc gen 2 на винде выйдет тебе в 40-50к зелени.
Аноним 14/05/21 Птн 16:29:22 2030583416
>>2030006
>>2030097
>>2030450
Блядь, глядя на этот вот код:
https://github.com/username1565/nanoboard/blob/8f0edd8d02b9f680f7ce1f70ddd29b8f7c367110/nanodb.exe-source/Server/HttpServer.cs#L47
очевидно, что здесь запускается TCPServer, который работает через TCPListener, а не через HTTPListener.
Он принимает байты, HttpServer трансформирует их в HTTPRequest,
затем выдаёт какой-то HTTPResponce, и отправляет в виде байт на TCPServer, клиенту подключённому.

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

Судя по гуглу, можно как-то, но там какие-то System.Web, ASP, SDK, хуй знает что ещё,
всякие слова непонятные, капирастические, корпоратокративные и проприетарные пиздец какие.
Аноним 14/05/21 Птн 18:43:33 2030732417
Аноним 14/05/21 Птн 18:55:29 2030738418
>>2029898
Угу.
Ну давай на секунду я опишу тебе сценарий использования.
Нужна возможность удаленно - отключить какой-то из логгеров, добавить во время выполнения нового писателя, причем добавление должно происходить просто добавлением нужной dll, нужна возможность вывести по коду лога и уровню записи из диапазона, при этом, мать твою, логгер - на железке что где-то в сиббири находится и канал связи там - компорт, а памяти - 128МБ, а потому основной логгер - должен хуячить байтиками.
Да, я понимаю, что кому-то может показаться странным, но сейчас во встройках, для всякого некретичного ПО вполне себе используют шарпы.
Аноним 14/05/21 Птн 19:02:52 2030754419
>>2030738
Что из этого невозможно сделать с дефолтными логгерами и логгер провайдерами?
Аноним 14/05/21 Птн 22:50:55 2031026420
1.png 36Кб, 1002x752
1002x752
2.png 50Кб, 669x863
669x863
3.png 40Кб, 829x670
829x670
4.png 26Кб, 764x509
764x509
Да что блин я делаю не так-то?
Аноним 15/05/21 Суб 12:09:02 2031295421
image.png 19Кб, 538x242
538x242
Этот кусочек кода можно как-то сократить фичами из новых версия сисяп?
Аноним 15/05/21 Суб 12:17:05 2031299422
sharedData ??= CreateSharedData();
return sharedData;


Похоже вот так можно. Но нахуй надо.
Аноним 15/05/21 Суб 12:17:53 2031300423
image.png 9Кб, 786x47
786x47
А, не. Даже так тогда.
Аноним 15/05/21 Суб 15:37:02 2031434424
>>2031295
get => shareddata ?? CreateSharedData();
Аноним 15/05/21 Суб 19:00:54 2031572425
Аноним 15/05/21 Суб 20:21:11 2031636426
>>2031572
В зависимости от того какие технологии ты применяешь
Но общая суть. На беке у тебя просто есть метод:
[HttpPost(nameof(IsUsernameAvailable))]IsUsernameAvailable(string username){...}

он лезет в базу и проверяет, отвечает да или нет в зависимости от доступности. На фронте - при снятии фокуса с ввода - отсылаешь запрос на это апи, в зависимости от результата что-то там делаешь.
Аноним 15/05/21 Суб 20:23:26 2031642427
>>2031572
Насчет посимвольно - все то же самое, но остылаешь запрос при каждом изменении, дропаешь ожидание если строка изменилась.
Аноним 15/05/21 Суб 20:27:54 2031648428
>>2031636
А, всё, понял.
Там надо было просто вот так сделать:
>oninput="checkAvailability()"
чтобы при вводе КАЖДОГО СИМВОЛА,
отправлялся POST-запрос аяксом,
на специальный проверочный URL.

Когда этот URL детектится в запросе, на беке,
формируется ответ (заголовки, плюс строчка для генерации которой - запускается метод, проверяющий наличие юзера по базе и возвращающий строчку эту, которая затем, на клиенской стороне, принимаясь аяксом - просто лезет в div.
Аноним 15/05/21 Суб 20:48:21 2031659429
Бля, а хули такое выражение не работает?

nullable<T> = boolean ? T : null;

Пишет, что работает только начиная с 9.0
Аноним 15/05/21 Суб 20:52:54 2031661430
>>2031659
>nullable<T> = boolean ? T : null;
Ясно. Надо, блять, тип прописывать.
nullable<T> = boolean ? T : (T?)null;
Аноним 16/05/21 Вск 04:51:11 2031943431
>>2006596 (OP)
Опять я взъебу вас, ёба-авторизацией.
Как реализовать это:
https://www.cyberforum.ru/php-network/thread786824.html
?

>Клиенту вместе с формой логина/пароля отправляется одноразовый ключ, который запоминается на сервере в сессии.

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

Что если это браузер, стучится на сервер, как TcpClient, на TCPServer, ведь HTTPServer работает на TcpListener,
какие могут быть сессии-хуессии, блядь, в TCP-соединении,
если каждый раз, при обновлении страницы, шлётся новый запрос на серв, и каждый раз, с новым запросом - тупо срабатывает AcceptTcpClient()?
Это ж блядь, что получается? Надо в куки-хуюки прописать ебучий - одноразовый ключ, штоле? Чтобы по этим кукам его брать извнутри самого запроса?
А если его спиздят из кук? И как его запомнить, на бекенде? Как его к клиенту привязать, блядь?
Аноним 16/05/21 Вск 07:00:09 2031957432
Ребята, инфоцыган ITVDN пойдет для вката? Есть хоть один анон, который с него начинал?
Аноним 16/05/21 Вск 07:22:27 2031962433
>>2031943
Сервер отправляет клиенту случайный, сгенерированный ключ.
Нужно запомнить этот ключ на сервере, и связать его с конкретным клиентом.
Проблема в том, что для каждого запроса, создаётся новый клиент,
и когда клиент отправит форму - это уже будет новый клиент, а не тот.
Как сделать норм эту хуйню - хз.
Аноним 16/05/21 Вск 07:45:49 2031965434
>>2031943
>>2031962
А надо просто для каждого нового клиента,
на бекенде - сгенерировать новый ключ,
отправить его в ответе с формой входа,
затем добавить ключ в массив.

Клиент, отправляет логин, хэш пароля с ключем, и внезапно - сам ключ.

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

Профит.
Аноним 16/05/21 Вск 08:41:40 2031983435
Таки вопрос хлопцы.
Модели используются только для связи с бд?
Например есть модель User и мне в представлении надо вывести юзера, можно ли использовать эту модель в представлении или создать ViewUserModel и в ней продублировать поля?
Аноним 16/05/21 Вск 08:47:20 2031986436
>>2031957
Пиздец как воду льют.
Хотя все воду льют.
Просто найди себе канал/книгу/курс/сайт/статьи/ментора/2ch.hk/pr и изучай в своё удовольствие.
Вот например на ютабе есть лысый хуй который записал часовые видосы и пиздит там про C#, меня например пиздец как бесит такая подача, но люди смотрят, им нравится. А я не могу, мне очень медленно.
Аноним 16/05/21 Вск 10:21:12 2032031437
Просто жопа полыхает ебанным огнем. 1,5 года учил C# с стандартным стеком. Запилил два проекта. Один из последних - "мини-бухгалтерия" (заполнение декларации, расчет налогов, оплата страховых взносов, уменьшение налоговой базы и т.д. - то есть нормально работающая десктопная программа для мини-кабанчика).

Пытаюсь устроиться в ДС. Везде посылают на хуй. Никому чистый C# не нужен. В половине случаев просят js. Там, где не нужны другие языки, просят Unity. А мне он нахуй не сдался. В последнем месте попросили js, ts, html/css.
Аноним 16/05/21 Вск 14:04:59 2032278438
>>2032031
Прояви фантазии, возможно судьба дала по яйцам для того, чтобы ты щас начал свои скиллы юзать правильно. Есть пути легальные, серые, нелегальные. Ты же литерально можешь любую хуйню написать на кудахтер. Просто пораскинь мозгами.
Аноним 16/05/21 Вск 14:05:40 2032283439
>>2032031
Понимаю. Ну, что поделать, тут выше чел писал, что шарпы - для души.
Иди на завод, там от шарпанов только шарпы просят, базарю.
Аноним 16/05/21 Вск 14:07:31 2032286440
как можно юзая EntityFramework и MySQL сделать авторизацию пользователя? Готовая форма есть, нужно сделать проверку на кнопку входа и считывание вводимой инфы. база данных ужже подключена локалхостом и сделана таблица с одним юзером
Помощь в Xamarin Аноним 16/05/21 Вск 14:17:12 2032301441
Сап, аноны.

Пилю кросс-читалку на мобилку, с локальными книжками разобрался, а вот из интернета нет. Собственно, а как мне из интернета их брать. Была мысль, взять парсер и из условной флибусты книги брать, но есть ли альтернативные варианты?
Аноним 16/05/21 Вск 17:02:21 2032478442
>>2032301
Ну, если сайт не дает тебе открытый апи чтобы получить книжку, то только парсить. Можешь правда свой сайт поднять, но с этим гемора выше крыше, тем более из-за правовых вопросов, ведь я не думаю что ты только книжки без правообладателей туда выложить бы хотел.
Аноним 16/05/21 Вск 17:03:58 2032481443
>>2032478
насчет "правовых вопросов" пофиг, ибо это обычный курсач и одновременно для личного пользования, пускать в открытый доступ не планирую
Аноним 16/05/21 Вск 17:19:34 2032497444
>>2032481
Можешь просто сделать поиск по той же флибусте/либгену. Еще я помню в нескольких читалках на iOS был какой-то свой протокол для общения с серверами с книгами, хз как назывался и чет не гуглится уже.
Аноним 16/05/21 Вск 17:27:32 2032508445
Аноним 16/05/21 Вск 19:38:31 2032679446
>>2031434
get => shareddata ??= CreateSharedData();

пофиксил за тебя
Аноним 16/05/21 Вск 21:31:49 2032769447
Аноним 17/05/21 Пнд 02:16:45 2033026448
Насчет курсов от КоробкиУмений Skillbox, вредно ли их смотреть новичку, естественно с рутрекера? Слышал просто что это наебалово.
Аноним 17/05/21 Пнд 05:10:20 2033054449
>>2033026
Ну не только коробки, а вообще любых курсов. Там же наебки одни.
Аноним 17/05/21 Пнд 07:08:00 2033063450
>>2033026
Не вредно. В таких курсах в массе пересказывают документацию и то что гуглится по Язык нейм для новичков.
Другое дело что пользы особой нет. Всю эту хуету можно освоить за неделю. Чтобы ее закрепить - пойти на какой-нибудь кодварс и решать задачки до посинения.
А вот когда начнется продвинутый уровень - там у таких вот кренделелй - действительно все плохо, потому что большая часть лекторов - максимум преподы из вуза, а зачастую даже не они, а какие-то хуи, что чуть кодить умеют, т.е. реально полезные фишки, объяснение что как почему так - хуй кто даст, перескажут доки, перескажут пару туториалов - все, продвинутый, беги стучаться во все двери.
Аноним 17/05/21 Пнд 09:40:57 2033114451
>>2030738
В серьёзных проектах никто этот кал не поддерживает, просто съеби.
Аноним 17/05/21 Пнд 16:59:12 2033519452
В универе задали проект на миллион крудов, под сотню запросов в бд наберется. Я в фронте/разоре нихуя не шарю, как это сделать максимально быстро? Учитывая, что веб интерфейс это просто хуета для ввода и вывода результатов из бд, мне ведь не нужен реакт и spa? На разоре быстрее выйдет наформошлепить?
Аноним 17/05/21 Пнд 19:18:46 2033731453
>>2033519
Для крудов - просто разоровские контроллеры нахуяч автогенерацией.
Аноним 17/05/21 Пнд 19:23:59 2033734454
>>2033114
Ты-то кто такой, чтобы мне говорить съебать? Нечего сказать - просто проходи мимо. Нет, блядь, уебище, которое даже не может предложить как логгер для контроллера реализовать более оптимально - будет мне тут пиздеть что-то. Пиздец, нахуй. Тфу, блядь. Никчемный хуесос. Злости на таких вот уебков не хватает.
Аноним 17/05/21 Пнд 22:26:29 2033975455
mp4.mp4 56Кб, 288x164, 00:00:03
288x164
Сап, есть не очень молодые, но шутливые? Мне нужно один софт высрать специализированный, отснифать некоторое количество запросов и слепить нужное, если конечно это возможно будет. Милости прошу в общем.
телега @bitardenka133
Аноним 18/05/21 Втр 04:38:19 2034085456
Кто-нибудь изучал шарпы, написанием проектов, сразу, без теории.
Аноним 18/05/21 Втр 07:13:18 2034098457
16140195530150.jpg 121Кб, 709x1000
709x1000
>>2034085
Да. Лол. Я. Ну как, у меня был опыт в плюсах хреновенький но был, ну, база в общем: основные конструкции, ООП, шаблоны, это вот. Ну, я решил реализовать modbus. Начал на плюсах, заебался с указателями(это не сложно, но когда ты кодишь, что говорится, без плана, просто вот представляешь примерно что надо, но нет четкого понимания как это делать - ты постоянно же что-то меняешь, а потом - блядь, забыл освободить память, эта хуйня висит в памяти и ты замечаешь это когда уже перешел куда-то дальше и забыл где ты там не освободил указатель), психанул, взял шарпы, за неделю сделал, понял что люблю шарпы, после этого написал простенький веб-сервер ну и т.д. только когда начал искать работу - стал смотреть книжки и всякие туториалы, до этого - только справочку на MSDN читал.

Ну и по поводу этого вот метода. Не самый эффективный на самом деле. Т.к. некоторые вещи неочевидны. Вот например - я бы без книжек - сам бы до солида хуй дошел, я про использование событий, делегатов, методов расширения и прочие штуки - узнал уже после того как начал пытаться искать работу и попадался на этой хуйне на собесах. Так что советовал бы таки каких-нибудь книжек - почитать, как минимум про всякие паттерны, солиды и это вот.
Аноним 18/05/21 Втр 09:18:35 2034129458
>>2033734
Ты заебал со воим логгером бегать тут как опущенный, эмбед и управляемые среды вещи не совместимые. Если бы ты не был малолетним деюилом тебе бы и в голову такое спиздануть не пришло, так как даже не являясь спецом в этой области можно догадаться по общим вводным.
Аноним 18/05/21 Втр 09:44:55 2034149459
Аноним 18/05/21 Втр 10:38:30 2034175460
image.png 48Кб, 1066x507
1066x507
image.png 632Кб, 1090x545
1090x545
Посмотрите на этот код, правильно ли я понимаю что теперь эти три вызова "isAdmin" "IsMobile" и "getAllUla" будут выполняться синхронно то-есть одновременно и время обработки гета страницы сократиться в 3 раза? то-есть я сделать что-то типа второго пикрила?
Аноним 18/05/21 Втр 10:47:47 2034182461
>>2034175
>синхронно то-есть одновременно
Блять

Еще и код из 2005 года, К А Й Ф
Аноним 18/05/21 Втр 10:55:00 2034192462
>>2034182
Я конечно же имел в виду асинхронное программирование, но суть ты понял не понимаю зачем к словам придираться, а вообще если есть что по факту сказать то говори, нет? Тогда сам все понимаешь
Аноним 18/05/21 Втр 11:29:10 2034232463
>>2034192
Да, конечно, прочитай что-нибудь про асинхронщиу за последние лет десять, а не из прошлого века.
Тогда сам все понимаешь
Аноним 18/05/21 Втр 11:31:46 2034243464
>>2034232
по факту можешь сказать что не так в коде? а не пустые балабольствоания?
Аноним 18/05/21 Втр 11:59:35 2034289465
>>2034243
Может он имеет в виду Task'и и async/await.
Аноним 18/05/21 Втр 12:06:58 2034295466
>>2034289
Может быть, спасибо я почитаю об этом
Аноним 18/05/21 Втр 18:36:33 2034917467
>>2034289
> Task'и и async/await
Ебучая хуйня, так и не понял их, сколько не пытался. По старинке юзаю класс Thread, мьютексы и лок, если нужно какие-то действия параллельно запустить.

Но я не программист и не собираюсь, мне простительно. Хотя, может кто подкинет статейку какую-нибудь, где всё максимально разжёвано. Хочу ещё разок попытаться понять.
Аноним 18/05/21 Втр 19:05:31 2034958468
>>2034129
> эмбед и управляемые среды вещи не совместимые
Диван, успокойся. Сейчас не 90е. У нас в девайсах аппач был до недавнего времени, сейчас на nginx переходим постепенно, вебморда у девайса - на ебучем реакте. В планах было даже в новую линейку запихнуть полноценный постгрес, но из-за скачка цен на всю электронику - решили сэкономить на памяти. А ты мне рассказываешь про то что управляемая среда - несовместима со встройками. Охуеть можно. В 2015 значит писали себе нормально на джаве, а теперь вдруг с дотнетом стало нельзя.
Аноним 19/05/21 Срд 00:07:08 2035238469
Как гуглить алгоритмы без линкью? Блять, буквально хочу найти имплементацию того же реверса списка, 3 страницы гугла буквально "дохуя текста list.Reverse() дохуя текста".
Можно ли форичем итерироваться по "строкам" 2д-массива? Хау ту?
Как правильно сравнить массивы без SequenceEqual? мне просто до сих пор не понятно в каких случаях появляется эта еботня с ссылками
Аноним 19/05/21 Срд 00:32:20 2035250470
123.png 10Кб, 330x216
330x216
>>2035238
>Как гуглить алгоритмы без линкью?
А нахуя собственно?
Впрочем, тогда надо не гуглить, а читать всякие классические книжки по алгоритмам, там дохуя примеров на все случаи жизни.
>Хау ту?
Например так, если правильно тебя понял
Аноним 19/05/21 Срд 01:11:23 2035266471
>>2035250
> нахуя
Так повелевает тикет.
> читать
Логично + справедливо. Еще периодически литкод открывать. Но я просто ленивая жопа и шарпы не мой праймари лангуаге не то, чтобы хоть какой-нибудь из яп был моим основным, хочу копипастнуть код и не морочить голову себе оптимальным подходом.
> например так
Бля, а если у меня int[,] a = { {1,2}, {3,4} } ?

у джетбрейнс есть иде для шарпов?
Аноним 19/05/21 Срд 11:41:53 2035420472
Может кто с C++ в C# перевести? Мне небольшую хуйню на unity нужно сделать.
https://pastebin.com/DaReXnrr
Аноним 19/05/21 Срд 12:00:57 2035434473
>>2035266
>у джетбрейнс есть иде для шарпов?
Ну ты попробуй погугли, вдруг найдешь
да есть, блять
>int[,] a = { {1,2}, {3,4} }
Тогда пиши for, foreach пройдет по нему последовательно просто.
Аноним 19/05/21 Срд 15:10:01 2035571474
Так челы. Тут вопрос возник по поводу метанита из шапки. Я тут гадаю это или я всё таки глупый или что-то не то тут.
Вторая глава(первая введение). Буквально первая же строка по тексту:
>Базовым строительным блоком программы являются инструкции (statement).
Но так уж получилось что у меня перед глазами есть книжка албахари и там цитирую
>Фундаментальным строительным блоком в c# является инкапсулированная единица данных и функций называющаяся типом.
И дальше что шарп имеет унифицированную систему типов и все типы в конечном счёте разделяют базовый тип. примитивные или бизнес объекты разделяют базовый набор функциональности.
Ну окей я подумал еще, мало ли может это ДРУГОЕ
Но буквально через одну страницу(статью) речь заходит о литералах и он их называет:
>Литералы представляют неизменяемые значения (иногда их еще называют константами)
В то время как албахари пишет:
>Литералы это элементарные порции данных, лексически встраиваемые в программу
Т.е просто числа. И я в принципе понимаю как дошло до того что метанит назвал их константами видимо рассуждая на уровне что 1 это 1 и это не поменять поэтому это постоянное значение. Но называть это константами когда в языке и так существуют КОНСТАНТЫ. Это по моему тупость какая-то, не?
Аноним 19/05/21 Срд 17:39:50 2035703475
>>2034958
Речь о промышленных разработках а не любительских или никому не нужных проектах на коленках.
Аноним 19/05/21 Срд 19:02:20 2035747476
>>2035703
Я на заводе работаю. Ну да ладненько, спорить с людьми, которые про встройки знают только то что там байтики перекладывают, я не особо хочу.
Аноним 19/05/21 Срд 19:14:47 2035750477
Двач, ну подскажите, как векторы в массив записать? Я из C++.
List<Vector3> positions = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}};
Аноним 19/05/21 Срд 19:19:09 2035752478
>>2035750
List<Vector3> positions = new()//если у тебя 9 версия, иначе new List<Vector3>()
{
new Vector(0,0,0),
new Vector(0,0,0),
new Vector(0,0,0)
};
Аноним 19/05/21 Срд 19:26:31 2035755479
>>2035750
шарп не умеет инферрить, сочувствую
Аноним 19/05/21 Срд 21:23:09 2035855480
>>2035571
Касательно первого пункта это действительно ДРУГОЕ, в метаните идет речь про лексическое строение исходного кода, а Албахари говорит про структуры данных, которыми оперирует C# и которые существуют в рантайме, тобишь типы.
По второму пункту метанит дает хуевое определение, знающему конечно понятно о чем идет речь, но новичка это действительно может ввести в заблуждение, у Албахари правильнее сказано.
Аноним 19/05/21 Срд 21:56:49 2035897481
>>2035571
В шарпе, по факту, нет констант. То что пишется как const float Pi = 3.14159 - именованный литерал.
Аноним 20/05/21 Чтв 05:04:14 2036117482
image.png 6Кб, 298x211
298x211
image.png 20Кб, 905x285
905x285
Ребят, тема такая.
PostgreSQL БД в ней таблицы пикрил1
А вот такие модели мне создало Scaffold-DbContext
public partial class Cat
{
public string Name { get; set; }
public int? TailLength { get; set; }
public int? WhiskersLength { get; set; }
}


public partial class CatsStat
{
public decimal? TailLengthMean { get; set; }
public decimal? TailLengthMedian { get; set; }
public int[] TailLengthMode { get; set; }
public decimal? WhiskersLengthMean { get; set; }
public decimal? WhiskersLengthMedian { get; set; }
public int[] WhiskersLengthMode { get; set; }
}


public partial class CatColorsInfo
{
public int? Count { get; set; }
}

И вот такой контекст https://pastebin.com/MzfTENDE

И чета меня терзают смутные сомнения что мне создало шота не то. Загвоздка в енум типо в пикрил2 я не понимаю как его юзать.
В MSSQL енум это NVARCHAR, а в постгрес как? В модели катКолорсИнфо мне не создало еще одно поле хотя оно есть.
И как вообще будет взаимодействие? так типо db.CatColorsInfo.Where(x=>x.color == "black").ToList(); ?
Аноним 20/05/21 Чтв 07:46:20 2036158483
>>2036117
Так у тебя в классе Cat нет свойства Color, как ты будешь цвета считать и записывать в CatColorsInfo. У каждого кота должен быть указан его цвет.
Так же в CatColorsInfo должно быть 2 свойства: Color и Count.
Аноним 20/05/21 Чтв 08:01:32 2036169484
Реально за год подтянуться до базового уровня или хотя бы семи уровня?
Аноним 20/05/21 Чтв 11:04:21 2036285485
Чем джуниор отличается от мидла? есть какие-то объективные параметры по которым можно отличить мидла од джуна? я например считаю что я мидл но платят мне как джуну аргументируя тем что я все еще джун несмотря на то что я уже давно работаю над проектами один и мне никто не помогает

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

о опыте работы прошу не писать, счас бы на полном серьезе уравнять год сидения и ковыряния в носе отлынивая от работы и год упорной работы и саморазвития
Аноним 20/05/21 Чтв 11:45:12 2036340486
>>2036285
Интерфейсы что такое мидол?
Аноним 20/05/21 Чтв 12:03:30 2036369487
Я не он, но навскидку из головы: это тип языка, который позволяет объявить некую функциональность, тобишь контракт, который затем смогут реализовывать конкретные классы и структуры. Нужно это для реализации полиморфизма, то есть везде где нам потребуется функциональность, объявленнная в интерфейсе можно будет использовать любой объект, который этот интерфейс реализует без знания его конкретного типа.
Аноним 20/05/21 Чтв 12:04:10 2036371488
Аноним 20/05/21 Чтв 12:20:42 2036392489
>>2036340
>Интерфейсы что такое мидол?
Пытаюсь разобраться с вашим C# после небольшого опыта с С и микроконтроллерами. Какая-то антинаучная хуйня. Нихуя непонятно. В треде какие-то названия нечеловеческие. Брошу я это дело наверное.
Аноним 20/05/21 Чтв 12:59:56 2036430490
>>2036392
Ну бля ООП это ж совсем другая парадигма, я когда только начинал программирование изучать тоже долгое время не понимал что это за параша и интерфэйсы энти ваши нам нахой не нужны.
Аноним 20/05/21 Чтв 13:17:19 2036449491
>>2036285
Тем что получает ЗП мидла.
По факту основное требование к мидлу - способность самостоятельно делать типовые/несложные задачи, либо сложные под присмотром синьеров/лидов.

Если ты работаешь в одного и все еще джун, то либо ваш проект по сложности, как крестики нолики, либо твои господа не хотят плотить тебе деньги.

Самый простой способ чекнуть так это или нет - сходить на пару собесов на мидла и посмотреть, что тебе скажут и какие деньги предложат.
Аноним 20/05/21 Чтв 13:53:58 2036510492
>>2036449

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

не уволившись? как-то не порядочно за спиной ходить по собесам всяким, и вообще получается что я буду просто тратить время рекрутеров так как у меня нет намерения поменять работу, а ходить с таким намерением.. ну это такое, получается что я заблаговременно был готов подставить коллектив, старших программистов, я же один проектом занимаюсь, в нем будет сложно разобраться после моего ухода не хочу подложить такие подлянки
Аноним 20/05/21 Чтв 14:02:24 2036528493
>>2036510
Ну так скажи руководству прямо что либо пересматриваем зарплату либо я ухожу.
Аноним 20/05/21 Чтв 14:16:51 2036548494
>>2036510
>не уволившись?

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

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

>я же один проектом занимаюсь, в нем будет сложно разобраться после моего ухода не хочу подложить такие подлянки
Ты менеджер/CEO/держатель акций?
Почему это тебя ебет?
То что у фирмы на каком-то проекте сидит один человек, которого тяжело заменить на нищенской зп -- не тови проблемы.
Да и почему ты собственно считаешь справедливым, что тебя не апают, но считаешь не справедливыми шаги с твоей стороны по апу своего положения за рамками текущего места.
Аноним 20/05/21 Чтв 16:31:17 2036706495
>>2036528
>Да и почему ты собственно считаешь справедливым, что тебя не апают, но считаешь не справедливыми шаги с твоей стороны по апу своего положения за рамками текущего места.
я не считаю справедливим что меня не апают, поэтмоу я и написал, но вот кидать обидки тоже не хочу, в конце концов я подставлю не директора, ему то убдет пофиг, а своих колег программистов потому что он просто скинет работу на них а они буудт потом с этим ебаться и вспоминать меня плохим именем каждый раз когда что-то у них убдет не работать
Аноним 20/05/21 Чтв 16:31:45 2036707496
>>2036528
>Да и почему ты собственно считаешь справедливым, что тебя не апают, но считаешь не справедливыми шаги с твоей стороны по апу своего положения за рамками текущего места.
я не считаю справедливым что меня не апают, поэтому я и написал, но вот кидать обидки тоже не хочу, в конце концов я подставлю не директора, ему то будет пофиг, а своих коллег программистов потому что он просто скинет работу на них а они будут потом с этим ебаться и вспоминать меня плохим именем каждый раз когда что-то у них будет не работать
Аноним 20/05/21 Чтв 17:31:59 2036825497
>>2036707
Вот сколько люди не уходили, никогда обид не держал, наоборот радовался, что челы дальше идут или расстраивался, потому что пиздатые чуваки ливают.

Алсо, если люди дают в себя впихивать невпихуемое - то это их выбор
Аноним 21/05/21 Птн 00:25:35 2037123498
image.png 10Кб, 484x175
484x175
Аноним 21/05/21 Птн 02:44:08 2037143499
Ребяты, вот искал отзывы о конторе Itransition и наткнулся на статью https://tech.onliner.by/2019/07/31/check
В этой конторе есть вакансии в моем городе, вот думаю туда отправить резюме что бы вкатится.
Но вот меня пиздец как смутила эта статья. 28к бакинских за
мобильную приложуху и сайт и 3 года разработки. А по факту вышло 56к бакинских за нихуя.
И вот хотелось бы спросить, часто ли находятся такие ебланы которые платят такие деньги?
Я хз че там на рыночке конечно но бля 56к ебаны рот. Я думал ну за 56к можно заказать разработку ну к примеру почтового сервиса ну или сайт сервис типо diagrams.net или гугл таблиц. Да и то хуй знает 56к это 56к.
Просто не укладывается в голове как так то нахуй. Интересно было бы посмотреть сколько строк кода ему дали, что бы посмотреть сколько в день писали.

Ну вот у меня вопрос, неужели это типичные задачи на галерах? Сделать сайт говностартапу за 56к, и 10 человек 3 дня обсуждают контролер, потом 1 день пишут один экшен, потом день они проводят код ревью а потом начинаю писать его [HttpPost] версию? Так штоле?

Я так то думал что будут задачи ну скажем систем учета водителей где нибудь, где нужно оперативно обрабатывать запросы, стремится что бы не было задержек. Или писать бекенд сервисы где пользователь загружает свои данные, сервис данные обрабатывает и выдает пользователю результат, где задача стоит в том что бы найти компромисс между скоростью и затратами ресурсов на задачу.
Ну или на крайний случай сайт который делает мир лучше, например сайт приюта для животных, где за донат можно с котами поиграть лазарной указкой онлайн. Сайт+ардуино+конструкция в помещении.
Корочи пиздец, я не хочу писать контролеры которые выдают на страницу инфу о какое сегодня число(
Аноним 21/05/21 Птн 04:33:33 2037154500
>>2006596 (OP)
Как вкодить сессию на HTTP-сервере,
если он использует TcpListener,
а потом парсит байты запроса?

Если генерировать идентификатор для каждого TcpClient,
то при каждом запросе будет новый идентификатор,
даже когда загружается favicon.ico
Из-за этого число клиентов равно числу запросов, блядь.
Я знаю, что в PHP есть PHPSESSID хранящаяся в куках на клиенте и в суперглобальной переменной $_SESSION на сервере.
Хотелось бы, чтобы не для каждого запроса, а для каждого уникального клиента был один ключ. Как это сделать?
Желательно ещё и секретный ключ, потому что куки могут перехватить и если по кукам входить в аккаунт на сервере, то перехват кук может дать возможность залогиниться, не зная пароля, при вводе которого, эти куки генерируются.
Аноним 21/05/21 Птн 07:01:54 2037185501
>>2037143
> Ну вот у меня вопрос, неужели это типичные задачи на галерах? Сделать сайт говностартапу за 56к, и 10 человек 3 дня обсуждают контролер, потом 1 день пишут один экшен, потом день они проводят код ревью а потом начинаю писать его [HttpPost] версию? Так штоле?

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

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

И последнее, оперативная обработка и низкие задержки это не то что нужно стартапу на начальном этапе, это задача которая появляется после того как был получен пруф оф ворк, привлечены иневесторы и получена клиентская база. На начальных этапах важно наращивание функционала, похуй как, похуй что кривовато, нужно просто проверить, что оно вообще кому-то нужно и будет приносить в дальнейшем прибыль, потому если галера имеет дело со стартапом, там обычно спринтами по 2 недели хуячат пачку фич, потом заказчик это аппробирует, присылает правки, замечания, аналитику и хучячат дальше. В случае с челом, очевидно, что он считал что ему просто сделают заебись, не мог нормально пояснить что хочет, что нужно, а контора решила его подоить.
Аноним 21/05/21 Птн 07:10:36 2037186502
>>2037185
Да, на всякий. Похуй и подоить это то что сейчас называется: Клиентоориентированность, когда клиент не понимает что хочет, просто приходит и говорит: хочу вот это; через неделю: не хочу, хочу то, а менеджер вместо того чтобы ткнуть носом в ТЗ, пояснить, что план работ уже назначен и вообще это будет сдвигать сроки - улыбается и просто наваливает работу кодерам: платят и заебись, это приводит к тому, что решения заложенные прошлой хотелкой могут довольно сильно конфликтовать с новой, но менеджеру-то похуй, его цель - не клиенту сделать основу для его охуитительного бизнеса, а на своей работе показать что деньги заказчик приносит.
Аноним 21/05/21 Птн 07:45:15 2037190503
Ребяты, сделайте пожалуйста код ревью.
Я вкатывальщик, вот написал хуету что бы было хоть что то на гитхабе что бы показать.
На фронтенд внимания не обращайте, я хочу вкатится в бек, от фронта просто тошнит.
https://github.com/Datakda/CatalogFilms_test
Аноним 21/05/21 Птн 09:42:19 2037210504
>>2035747
>Я на заводе работаю.

Руки в масе, жопа в мыле - мы работаем на ЗИЛе?
Аноним 21/05/21 Птн 10:46:09 2037246505
>>2037190
Я бы вынес логику из контроллеров, у тебя там и бизнес и работа с БД и авторизация - в тырпрайзах для всего этого делают отдельные слои, кода становиться больше, но в случае изменения работы с БД ты будешь править только один слой, а не разматывать весь свой код

Ну еще очень_старнный_нейминг_неймспейсов
Аноним 21/05/21 Птн 11:02:48 2037262506
image.png 43Кб, 1085x475
1085x475
>>2037246
А можно пример как куда выносить?
Создать папку Servise и там уже создать классы с методами?
Просто я ваще не представляю как это сделать.
К примеру вот метод из пикрила.
Если так сходу посмотреть то я могу придумать создать класс с меттодом который бы проверял является ли юзер овнером фильма или нет.
И метод который бы создавал ВьюМодел фильма принимая id фильма.
Правильно мыслю?
Аноним 21/05/21 Птн 11:26:34 2037303507
image.png 18Кб, 503x381
503x381
>>2037262
Погугли слоистую/луковую архитектуру.
Смысл в том, что у тебя есть несколько слоев (кол-во и разнесение зависит от тебя), но в целом это будет выглядеть как пикрил.

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

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

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

Единственное и важное: это все провоцирует появление тонн бойлерплейтов и фубаров, так что надо четко понимать нахуя и что ты делаешь.
Если это приложение-однодневка, mvp, то похуй вообще. Если это что-то, что будет поддерживаться, то лучше потратить немного времени и вложится в зачатки архитектуры.
Аноним 21/05/21 Птн 11:41:42 2037334508
>>2037303
>Если это приложение-однодневка, mvp, то похуй вообще. Если это что-то, что будет
Ну это мне для того что бы показать потенциальному работодателю.

Просто если сейчас начну переделывать еще месяц колупаться буду.
Мне это все трудно для понимания.
Так то я думаю что вот по ТЗ я выполнил задачу. Ну типо джун так и должен делать, он хуй знает в ваши архитектуры и как их строить. Я понимаю что лучше бы все сделать грамотно но бля я уже пол года дрочу хуй, надо уже пытаться устроится куда то.
Аноним 21/05/21 Птн 12:08:33 2037367509
>>2037334
Ну смотри сам, для вкатыша норм, но я бы наверное все равно начал бы дрочить тебя на тему того, а как лучше сделать/какие недостатки есть в этом коде.

Да и вкатышей сейчас овердохуя и больше.
Аноним 21/05/21 Птн 13:15:20 2037426510
>>2037334

Хочешь даром поРАБотать с реальным проектом в качестве стажёра?

Будет что нормальное показать работодателям, а не эти вот твои формоТаски, формошлепством сейчас никого не удивить, формошлепством может и вордпрессочервь заниматься а я подкину задачек по алгоритмам
Аноним 21/05/21 Птн 13:32:59 2037443511
>>2037426
Ну да есть такое желание.
Я правда не обещаю что впрягусь и буду как бык тянуть но взял бы не сложную таску которая не горит. Я не спал уже сутки, хочу снова войти в график человеческий и начать спать ночью а не днем.
телега напиши плиз https://t.me/dddd1233324 или свою скинь
Аноним 21/05/21 Птн 14:55:42 2037531512
>>2035897
А про NAN +-бесконечность -0 int.maxvalue и другие видимо нужно забыть? Уволились еще вчера?
А то что хранятся все эти литералы(по сути переменные со значениями) что так легко записали в константы хранятся в стеке в то время как константы находятся в куче тоже забыть нужно?
Аноним 21/05/21 Птн 17:41:52 2037758513
image.png 10Кб, 848x110
848x110
Есть один код на C#. Он не срабатывает по причине:
System.Net.WebException: "Удаленный сервер возвратил ошибку: (403) Запрещено."

Я пытался добавлять Headers. Добавлял пароль и логин. Ни то, ни то не помогло. Что нахуй не так? Почему я не могу загрузить ебаное изображение?
Аноним 21/05/21 Птн 18:24:39 2037816514
Как лучше создать json (JObject) через dynamic? Точнее свойство-массив (JArray). Обычное свойство легко через имя инициализировать, а как быть если надо запихнуть массив структур динамически? Отдельный тип структуры создавать неохота.
Аноним 21/05/21 Птн 19:04:08 2037860515
>>2037190
Оки.
Контроллер Account

1. Используешь else
2. Ненужные комментарии
3. Сама аутентификация должна происходить в отдельном сервисе
4. Поля которые не планируешь изменять должны быть readonly
5. Форматирование

Контроллер Films:

1. Используешь var там, где тип неочевиден.
2. Инициализация через
obj.PropertyName = propertyValue;
вместо
ObjectType obj = new ObjectType {PropertyName = propertyValue}
3. Короткие атрибуты лучше объединять в один
4. Форматирование.
5. Синхронные методы для IO-операций
6. Конкатенация строк. Вот этого вообще не понял. Работает медленно, плюс создаешь кучу строк.
7. В If засовываешь длиннющий код, вместо того чтобы в if засунуть короткий код а дальше идти без него
8. Куча повторяющегося кода, который можно было бы вынести в отдельный метод
9. Используешь строковые литералы в коде, вместо того чтобы делать nameof или хотя бы константы
10. В контроллере указываешь размер страницы
11. Вся логика работы с базой должна быть вынесена в репозиторий
12. Поля которые не планируешь изменять должны быть readonly

Контроллер Home

1. Смешивание стилей
2. Создание IndexHomeModel лучше вынести в отдельный класс фабрику и инжектить ее в конструкторе
3. Передаешь логер которым не пользуешься

Вьюмодели
1. После "Пожалуйста" - нужна запятая.

Startup - почти не трогал как я погляжу.

Форматирование конечно пиздец. Что тебе мешает автоформатирование на сохранение сделать, если сам не хочешь красивенько делать? И настроить правила именования для полей, чтобы оно ошибкой подсвечивалось.

В общем. Обычный код человека что по туториалам делает и делает недавно.
Аноним 21/05/21 Птн 19:44:58 2037907516
Аноним 21/05/21 Птн 21:51:49 2038036517
Такой вот тупой вопрос.
Смотрите. Есть три сущности. По сути они на данный момент отличаются только тем из какой таблицы взять данные и что сделать после выполнения некой общей логики. Ну так вот, стоит ли действительно выделять это в три разных сущности? Ведь в теории в будущем логика может начать отличаться более значимо. С другой стороны на данный момент создается впечатление, что проще сделать просто делегат Completed и передавать туда что делать в зависимости от того какую "сущность" хотят вызвать.
Чтобы было понятно. У меня есть класс: рассылатель. Есть рассылатель, который умеет рассылать по СМС, есть который по мылу, есть, который рассылает пуш уведомления, конфигурирование происходит из базы каждому своя таблица, но логика составления сообщения - одна, ну а сам алгоритм рассылки у меня передается в виде стретегии. Вот и получается, что алгоритмы идентичны, но тут я беру из таблицы А, тут из таблицы Б, потом использую какой-то канал рассылки, но все остальное - одно и то же. Не знаю как сделать более правильно.
Аноним 21/05/21 Птн 21:54:44 2038045518
Аноним 21/05/21 Птн 22:13:19 2038057519
>>2038036
>Чтобы было понятно
Может я конечно не так понял из написанного, но у меня сложилось впечатление будто ты про интерфейсы и не слыхивал никогда.
Аноним 21/05/21 Птн 22:45:41 2038076520
>>2037758
токен мб ожидает в хедере
Аноним 21/05/21 Птн 22:58:24 2038083521
>>2038045
И как я массивы через словарь определю? С простыми свойствами как раз понятно, массивы составных структур надо компактно определить.
Аноним 22/05/21 Суб 01:10:55 2038172522
>>2037860
Большое спасибо!
Буду переделывать.
Аноним 22/05/21 Суб 01:15:17 2038184523
Помогите придумать название для 4-го состояния. Есть api дружбы. У дружбы есть 4 разных состояния:
- Friended: игрок в друзьях у текущего игрока
- Ignored: игрок добавлен в черный список
- Invited: текущий игрок отправил приглашение в друзья
- И 4-е состояние: игрок отправил запрос на дружбу с текущим игрок
Аноним 22/05/21 Суб 01:17:45 2038188524
Хм, наверное Requested будет логично.
Аноним 22/05/21 Суб 07:41:39 2038302525
>>2038172
Ты учти, что там вагончик субъективщины был
Аноним 22/05/21 Суб 11:16:04 2038352526
Аноним 22/05/21 Суб 13:32:05 2038458527
>>2006596 (OP)
Хуле UTF-8 херово декодируется, а latin-1 норм? https://rextester.com/XGAT98683
Думал байты строкой на сервер отправить, а они хуёво декодируются потом, если утфом декодить.

И ещё какие-то кракозябры выдают в консоли, какие-то бубны, сердечки, пики и смайлы и оно начинает пищать динамик какого-то хуя.
Аноним 22/05/21 Суб 14:59:29 2038611528
Почему в BinaryReader/Writer нельзя указать последовательность байт? Что это вообще за хуйня-то? Почему в джаве из коробки это все можно, а тут я должен городить свои велосипеды?
Аноним 22/05/21 Суб 16:00:22 2038697529
>>2038611
В смысле нельзя? Всё можно.
Аноним 22/05/21 Суб 17:16:36 2038833530
>>2038697
Почему тогда гугля я вижу велосипеды вида:
public override int ReadInt32()
{
var data = base.ReadBytes(4);
Array.Reverse(data);
return BitConverter.ToInt32(data, 0);
}
?
Или всякие шаманства с битовыми сдвигами. Да и на сайте майков написано что нужно проверять какая архитектура, чтобы в случае чего - развернуть. А вот решения вида: ReadInt32(endian.Big) - не вижу что-то.
Аноним 22/05/21 Суб 19:32:00 2038980531
>>2038833
А, ты про это (я думал мемористрим не смог в памяти развернуть и засунуть в ридер).

Лол, да, лет 15 назад я тоже ёбся с этим, в дот нете походу все эти остроконечности не определены и зависят от железки. В итоге плюнул и оставил по умолчанию, все равно там платформ были вин 32 да CE, можно один раз отладить и забыть, всё равно архитектура не поменяется. Ну щас разве что андроид добавился, но там тоже конечность такая же.
Аноним 22/05/21 Суб 20:05:02 2039009532
>>2037123
Потому что changeEntity переменная это просто ссылка на объект, вначале она указывает на объект в таблице, а после присвоения ей person она стала указывать на переданный в метод объект person. Объект в таблице при этом ни как не изменился.
Аноним 22/05/21 Суб 21:39:10 2039120533
>>2038980
Ну, просто у меня есть протокол, в котором передаются данные в смешанном формате: что-то в big, что-то в little и мне казалось что нагляднее будет не брать массивчик байт и разворачивать, а использовать BinaryReader/BinaryWriter. Видимо придется хардкодом байты доставать.
Аноним 22/05/21 Суб 23:54:28 2039239534
>>2038057
А ведь он вероятно где-то работает. И даже говорит что знает ООП и что такое полиморфное поведение
Аноним 23/05/21 Вск 00:41:40 2039283535
Как можно выгрузить DataGrid (wpf) в Word или Excel?
Аноним 23/05/21 Вск 00:58:08 2039293536
>>2038611
BinaryPrimitives мб попробуй
Аноним 23/05/21 Вск 07:41:13 2039387537
Пацаны, если в интерфейсе коллекции возвращаются как IReadOnlyList, но реализация интерфейса внутри себя изменяет список, то считается ли это ошибкой? Я хочу предоставить доступ к списку без возможности его изменять извне. Но с другой стороны, если я возвращаю IReadOnlyList, то я как бы говорю, что список вообще не изменяется, хм. Как быть?
Аноним 23/05/21 Вск 08:48:50 2039404538
А стоит ли записываться на курсы Skillfactory или лучше самому корпеть над учебниками?
Аноним 23/05/21 Вск 10:39:33 2039459539
1000064909.jpg 28Кб, 200x303
200x303
>>2039404
>лучше самому корпеть над учебниками?
В 100 раз лучше. И нужно не просто повторять примеры из учебников, но и импровизировать. Для самых новичков пикрелейтед лучшая книга, но её можно достать только с рук, примерно за 1к.
Аноним 23/05/21 Вск 10:42:36 2039466540
>>2039404
> Skillfactory
Ну анон, ты чего? Даже распоследний школьник сейчас знает, что скиллфактори и подобные курсы - объёб на деньги. Т.е. они тебя конечно чему-то научат, но за дичайший оверпрайс и по бесплатным материалам, которых в интернете тонна, и которые ты можешь взять и учить сам.
Аноним 23/05/21 Вск 12:21:09 2039561541
unsafe.png 84Кб, 1311x1003
1311x1003
Есть господа сеньоры в треде? Налетайте.
На пикче упрощённый пример структуры, которую я использую.
Я добавил ей интерфейс перечисления.
Но C# считает недопустимым использование unsafe в итераторе, и выдаёт ошибку.
>unsafe code may not appears in iterator

Вопрос №1. Почему? Чем ему любой unsafe не угодил? Почему везде в принципе можно, а именно в итераторе нельзя?

Я бы на этом и остановился, не очень то и нужен этот IEnumerable. Но самое ужасное в данной ситуации то, что если я перепишу проблемный код, и сделаю вместо вот этого:
>yield return raw_values;
вот это (т.е. буду обращаться к буферу не напрямую, а через индексатор):
>yield return this;
то всё работает, всё компилируется.

И вот теперь я не понимаю, стоит ли бояться некорректной работы программы? Вдруг просто компилятору не удалось отследить ошибку из-за опосредованного обращения к ансейфу, но делать так всё равно не стоит?

Вопрос №2. Можно ли оставить вариант с return this и не бояться трудно уловимого бага?
Аноним 23/05/21 Вск 13:27:08 2039631542
Аноним 23/05/21 Вск 13:59:53 2039681543
>>2039387
Интерфейс == контракт, который указывает что у класса есть методы с данной сигнатурой и что эти методы у него корректно должны работать. Если кто-то начинает всякую хуергу с ним творить - это не твои проблемы.
Если в реализации у тебя обычная коллекция, при этом она наружу не торчит, то опять же не твоя проблема что кто-то что-то там не так делает, если со стороны это все равно выглядит как IReadOnlyList.
Ошибкой это не считается. Это как: я явно указал что ожидаю объект типа Item, а мне какой-то еблан впихнул null или какого-то кривого наследника, который кладет хуй на LSP. Ты не можешь и не должен засирать свой код проверкой всего и вся, не можешь и не должен все возможные кейсы покрыть, твой метод в данном случае должен работать в ситуации, если контракт соблюдается и с расчетом что клиент не еблан, который подкидывает реализацию, которая хуй пойми как работает.
Аноним 23/05/21 Вск 16:37:43 2039847544
>>2039387
если ты возвращаешь IReadOnlyList, то это просто вариант явно сказать "не мутируйте возвращаемый список по ссылке, блядь". То, что ты там делаешь с инкапсулированными данными внутри класса перед тем как его вернуть никого не должно волновать. Если только на вход метода тоже не было IReadOnlyList (но это выглядит максимально тупо)
Аноним 23/05/21 Вск 20:07:28 2040129545
Заранее извиняюсь за тупую формулировку вопроса, я просто даже хз как и куда гуглить. WPF, есть одна иконка для приложения, на панели задач / окне приложения отображается она нормально, но например в листбоксе (image) с такими же самими размерами эта иконка выглядит "всрато". Пробовал скармливать image'у и ico и png, менять размеры и изображения и image'a - никакого эффекта. Всратость заключается в отрисовке тонких белых линий - в впф'е она отрисовывается как-то кусками (где линия на пару пикселей грубее).
Хотел бы кинуть скрин, да только деанон-травля.
ConfigurationManager.AppSettings Аноним 24/05/21 Пнд 01:24:16 2040408546
двачик, изучаю C# и получил задание, если коротко, сохранить введённые данные в настройках и потом отобразить. Так вот, в методичке разбирается пример на .net framework 4.7.2, а в core 3.1 всё ваще по другому делается. Метанит и docs.microsoft мне особо ничего не дали. Может подскажете статьи или гайды на эту тему?

Аноним 24/05/21 Пнд 09:45:26 2040539547
Аноним 24/05/21 Пнд 09:50:33 2040547548
>>2040408
Всмысле по другому? От версии к версии мало что меняются не особо критические вещи что бы не заработал код.
Консолье врите лайн, консоле реад лайн, юзинк стрим врайт, юзингк стрим врид консоль врителайн.
Давай метадичку, посмотрим шо там.
Аноним 24/05/21 Пнд 11:02:55 2040669549
Аноним 24/05/21 Пнд 12:19:57 2040818550
>>2040129
Прочитай про RenderOptions
Аноним 24/05/21 Пнд 18:06:56 2041447551
Какой же C# божественный ЯП... Ни на что его не променяю. Никогда.
Аноним 25/05/21 Втр 10:09:28 2042112552
>>2041447
Язык отличный, тоже люблю всей душой. Но вот ушел я в ПМы, и теперь проектом на голанге рулю. И рядом с шарпом не стояло по языковым фишкам.
Аноним 25/05/21 Втр 11:00:06 2042165553
Блять простой сука вопрос, как в форме передать без костилей данные инпутов а так же айди элемента из модели, казалось бы таск типичнее типичного какое же было моё удивление когда Я НАХИЯ НЕ НАШЕЛ КАК ЭТО ДЕЛАЕТСЯ

КАК СУКА!?

это что так сложно что передачу данных из модели в форму для поста надо делать через дикие костили как скрытые инпуты? как блять сделать это без костылей?
Аноним 25/05/21 Втр 11:41:14 2042238554
>>2042165
Ничего не понял. Для начала, речь о winforms или wpf?
Аноним 25/05/21 Втр 11:49:20 2042247555
>>2042238
mvc, я в модель передаю ид елемента с которым работаю, а потом в форме данные но не могу передать это айди которое я получаю с модели , по крайней мере без костылей вроде скрытого импута, но для меня это не надежный вариант так как я работаю с деньгами и отправляю формой данные пользователя, скрытый ипут что бы передать идентификатор пользователя это абсурд но ничего лучше я не нашел, был еще вариант с returnurl но это вообще пиздец
Аноним 25/05/21 Втр 15:37:39 2042480556
Вопрос. Делаю UI для хуйни которая должна делать инстансы классов. Хочу чтобы через любого сорта метаданные я мог добавить типу класса какую-то дополнительно информацию. Например если я жму пкм > сделать инстанс > какой-то сорт метаданных для сортировки добавляемый вручную > типы. Как добавить такие метаданные? Я понимаю что есть System.Attribute, но мне хотелось бы чтобы он был обязательным, а не опциональным.
Аноним 25/05/21 Втр 21:35:53 2043026557
>>2042247
Пожди. Ты про веб-хуйню? Зачем тебе вообще скрытый инупт? Смотришь клеймы, достаешь оттуда id пользователя, используешь.
Аноним 26/05/21 Срд 09:01:36 2043339558
>>2043026
Так мне же наджо не по айди пользователя а по айди штуки пользователя
Аноним 26/05/21 Срд 10:31:39 2043404559
Есть одно впф окно в котором хостятится винформовский датагридвью (<WindowsFormsHost><winforms:DataGridView>).
Вопрос: могу ли я захостить как-то свой кастомный датагридвью унаследованный от винформовского?
Аноним 26/05/21 Срд 10:34:21 2043406560
>>2040818
Спасибо анончик, мне нужно было RenderOptions.BitmapScalingMode="HighQuality". Почему майки поставили говеное качество по дефолту?
Аноним 26/05/21 Срд 10:59:47 2043421561
изображение.png 304Кб, 478x574
478x574
Всем хай. Нужна помощь с винформами. При наведении на кнопку по ей левой и правой границам появляются белые полосы. Как сделать, чтобы не появлялись?
У кнопки FlatAppearance.BorderSize = 0
FlatStyle = FlatStyle.Flat
событие MouseMove пустое
Аноним 26/05/21 Срд 11:15:48 2043432562
Есть несколько методов, которые выгружают кучу данных из базы данных. Если их попытаться в поток засунуть, то отваливается полпрограммы, потому что им эти данные нужны. Как быть? Как оптимизировать? Можно ли как-то запустить интерфейс проги без части загруженных данных, а потом уже обновить его, когда они дозагрузятся или что-то типа того? Прога на впф.
Аноним 26/05/21 Срд 11:22:38 2043443563
>>2043421
UPD, долго над этим сидел, не мог понять. Отчаялся и решил попросить помощи тут, и почти сразу же нашёл решение сам. Крч, эти белые полосы - та часть кнопки, которая не занята пикчей. Пофиксил тем, что поставил цвет фона кнопки такой же, какой у фона формы, а не траспарент. Тогда полосы при наведении исчезли, но появлялись при нажатии. Пофиксил включением Stretch вместо Zoom
Аноним 26/05/21 Срд 16:29:09 2043812564
Понимаю дебильный вопрос. Насколько я понимаю, с .Net работают серьезные компании. И вопрос таков, высока ли вероятность отказа в трудоустройстве челу без прописки (бомжу)? Помогите советом.
Аноним 26/05/21 Срд 16:30:46 2043818565
>>2043812
Пысы, я нихуя без опыта, это усложняет всё. Ну хотелось бы знать, как смотрят на это в серьезных компаниях. А то глядишь, даже стажёром не возьмут, при прочих равных.
Аноним 26/05/21 Срд 18:23:00 2044083566
Ну смотрите, вы мне советовали не изобретать велосипед, а взять Hangfire. Ну так вот, взял. В итоге, мне приходит требование: задачи должны выпоняться определенное число раз, нужно следить за програсом, нужно иметь возможность отменить их в процессе выполнения. Я сделал велосипед: сделал свою БД, там для задачи лежит флаг отмены, флаг того что задача стартанула(хенгфаер оказывается не умеет понимать что кому-то отдал уже задачу и просто скрывает ее на время и если задача, допустим, час выполняется - он подумает что ее абортировали и попробует ее заново запустить), лежит информация о прогессе, есть свои типы задач. Ну так вот, это очевидный костыль. Как без него сделать - не совсем понимаю. Давайте, раз уж продали мне hangfire - свои решения по тому как эти вот кейсы делать чтобы не так костыльно было.
Еще и это говно на самом деле не в состоянии точно следить за временем запуска, оно считает что важнее исполнить задачу, чем исполнить тогда когда сказали(кажется неважно, н допустим если задача - синхронизация времени устройств - проебанная минута накапливается на задержки по сети и время исполнения команды устройством, а все эти протоколы по выставлению устройству времени принимают отклонение эталона от того что отправило устройство), мой велосипед, который был до - с точностью до милесекунды триггерился, если не совсем пиздец с нагрузкой был.
Аноним 26/05/21 Срд 19:20:55 2044169567
>>2043432
Грузишь данные асинхронно, заполняешь по мере поступления.
Если грузишь в фоновом потоке, запускаешь в главном потоке через Dispatcher.Application.Invoke тот код который заполняет интерфейсную часть.
Если это данные в какой-то грид, то нужно подумать про пагинацию, а не грузить все скопом.
>>2043812
Эм, странный вопрос, у нас на 30+ человек со мной в отделе работает из них из того же города, да еще и с пропиской только я и еще человека 3.
Никогда не слышал чтобы это было проблемой.
Аноним 26/05/21 Срд 21:01:59 2044257568
>>2006596 (OP)
Привет, погромисты.

Кто-нибудь интегрировал в приложение winForms или WPF окно консоли?
То есть чтобы как в ИДЕ каком-нибудь у тебя прям внутри программы был терминал.
Я нагуглил ConsoleControl, это чувак напердолил поверх RichTextBOx обёртку и получился контрольный элемент, имитирующий cmd, но там пиздец как много проблем, а больше ничего нагуглить не получается.

Может я опять что-то упускаю и какими-то не теми словами гуглю.
Аноним 26/05/21 Срд 21:30:03 2044289569
>>2044257
Если тебе просто для дебага консоль нужна - можешь просто в дебаг-сборке собирать как консольное приложение и туда все что нужно выводить. Если хочешь таки на формах/впф - то просто стилизуй текстбокс/ричтекстбокс.
Аноним 26/05/21 Срд 22:54:42 2044352570
Аноним 27/05/21 Чтв 16:31:33 2045209571
Аноним 27/05/21 Чтв 16:51:33 2045254572
Хочу написать первое оконное приложение на C#, опыт Шарпа немаленький. Окошки больше 10 лет назад делал на Делфи.
Приложение ориентировано на Windows. Может быть когда-нибудь портирую его на Linux (это несложно).

Что использовать? WPF (и ждать MAUI) или сразу пытаться на MAUI?
"Universal" сразу мимо, это говно какое-то.

Приложение будет бесплатным с открытым кодом — гуишная обёртка над бесплатной консольной утилитой. Нужен будет выбор папок/файлов, поэтому не хочу делать GUI через сайт
Аноним 27/05/21 Чтв 18:19:15 2045384573
>>2045254
Если тебе просто быстро накидать и не принципиальна кроссплатформенность - бери формы. Лучше - ничего не придумали, по сути. Быстро, просто, куча готовой хуйни. Да, так красивенько как в WPF не сделаешь, но если это утилитарная вещь, еще и с открытым исходным кодом - то, ИМХО, формы самое то.
Аноним 28/05/21 Птн 04:36:41 2046044574
15212270054340s.jpg 4Кб, 219x220
219x220
Илитарий подскажи как вкатится в MVC на winforms. Скачал пару проектов как примеры и просто каша в Голове.

Аноним 28/05/21 Птн 04:48:52 2046046575
Что использовать для написания мультиплатформенного (Windows, Mac OS) десктопного приложения на шарпе с GUI?
Аноним 28/05/21 Птн 04:56:51 2046047576
Аноним 28/05/21 Птн 04:59:30 2046048577
>>2046046
-Xamarin.Forms
-Framework Avalonia (Xaml,MVVP)
Аноним 28/05/21 Птн 08:45:32 2046080578
>>2043812
Всем (почти) похуй.
У нас работает куча людей без военников, дипломов и прочего
Аноним 28/05/21 Птн 12:04:48 2046263579
20703.jpg 69Кб, 790x790
790x790
Коллеги, подскажите по деплою. Всю жизнь ковыряю десктопные приложения и легаси-говно, веб-функционал складывал в папочку, откуда её забирают девопсы.

Сейчас хочу написать бота для телеги на ASP, посмотреть хоть что это.
Как мне задеплоить сервер на Azure, чтобы он реагировал на GET/POST запросы? Как это хотя бы называется? VPS? Виртуальный хостинг?
Аноним 28/05/21 Птн 12:07:09 2046265580
>>2043812
Может смутить каких-нибудь долбоёбов из крупных компаний с большим количеством низкооплачиваемых должностей (всякие гипермаркеты, заводы, логистика).
Там IT исключительно обслуживает бизнес, но проверки для всех сотрудников одинаковые.

Чисто айтишным компаниям наплевать абсолютно.
Аноним 28/05/21 Птн 12:09:32 2046266581
>>2045254
>>2045384

Как-то грустненько, что до сих пор удобнее всего формы. Они устарели лет 10 назад.
Я бы на WPF сделал.
Аноним 28/05/21 Птн 13:56:04 2046432582
пик1.png 146Кб, 772x812
772x812
пик2.png 107Кб, 1106x608
1106x608
Смотрите, есть сервис IMessagingService, который управляет каналами сети. И есть Listener's, через которые можно получать сообщения из каналов. Один класс может реализовать несколько таких Listener'ов. Вопрос, как удобнее всего сделать подписку на эти каналы.

Пока я думаю просто передавать ссылку на object, а внутри делать проверку, как на пик2.
Аноним 28/05/21 Птн 14:28:36 2046484583
Сап помогач, на работке дали задачу с эстимейтом в неделю написать с нуля веб-приложение с аутентификацией и крудом пользователей. Вроде базовая хуйня, но я с asp.net'ом, как и в принципе с шарпом не работал. Можете подкинуть видеоуроков или гайдов по теме? обещаю как закончу прочитать книгу и переписать чтобы было красиво
Аноним 28/05/21 Птн 14:29:33 2046487584
15683921024310.webm 483Кб, 500x494, 00:00:09
500x494
>>2046484
>я с asp.net'ом, как и в принципе с шарпом не работал
Аноним 28/05/21 Птн 15:20:56 2046579585
Аноним 28/05/21 Птн 15:36:43 2046622586
>>2046263
Для тебя уже больше 3 года есть видео на ютубе на русском.
Аноним 28/05/21 Птн 16:18:33 2046702587
В шарпах много легаси, в сравнении с остальными технологиями?
Аноним 28/05/21 Птн 17:52:22 2046848588
>>2045254
Если не заморачиваться с кроссплатформенностью, делай на аналоге WPF - наиболее гибко и удобно: AvaloniaUI Есть баги и прочие детские неожиданности, но вцелом работает.

Хочется реальной кроссплатформенности - Electron.NET и поверх него Angular, но тут на любителя - веб все же.
Аноним 28/05/21 Птн 18:42:13 2046885589
>>2046622
Что за видео, анон? Дай ссылочку
Можно и не на русском.
Аноним 28/05/21 Птн 23:00:22 2047309590
Здарова бандиты. Кто ни будь писал кастомные сортировки? Мне нужно массив стрингов отсортировать по правилам Enum - к примеру Hui - 0, Jopa - 1 и т.д. Orderby должен матчить стрингу со значением Enum и сортировать согласно нумератору. Есть какие ни будь идеи? У меня в мыслях только писать свой Compare<Enum>, может есть что попроще?
Аноним 29/05/21 Суб 10:51:40 2047710591
>>2046885
Блять, ну загугли, я же тебе тонко намекнул.
Аноним 29/05/21 Суб 13:17:22 2047811592
Не, всё-таки у VS 2019 топовый дизайн редактора. Посидел месяцок на тёмной теме в Райдере и как-то вообще не зашло. Плохо фокусируешь и шрифт мне не зашёл, хотя я его пробовал менять, но это траблы на уровне редактора с ним. И как же прекрасна белая тема ВС студии, божечки.
Аноним 29/05/21 Суб 15:08:13 2047981593
image.png 18Кб, 992x124
992x124
Сап двач.
WPF.
Есть Listbox, хранящий в себе исключительно объекты типа object, которым в форме присваивается карточка с изменяемым Template.
Есть какие-нибудь способы записать все элементы с формы в бинарный файл? Тип, вот будет у меня 5 карточек в listbox, нужно записать в файл его данные или разметку, чтобы из считывания после можно было восстановить форму.
Аноним 29/05/21 Суб 15:18:05 2047999594
>>2047981
Разобрался, всем спасибо
Аноним 29/05/21 Суб 15:28:23 2048017595
>>2047999
а нет, не разобрался
Аноним 29/05/21 Суб 15:38:08 2048035596
Аноним 29/05/21 Суб 16:38:12 2048131597
image.png 40Кб, 749x279
749x279
А насколько нормально изменять значение параметра метода? Помню, читал, что так лучше не делать. В данном случае мне нужно объявить:
var correctAmount = amount;
получается?
Аноним 29/05/21 Суб 16:41:43 2048133598
Или всё же это зависит от контекста? Если метод большой и какие-то вещи неочевидны, тогда трогать параметры не стоит.
Аноним 29/05/21 Суб 16:45:35 2048139599
image.png 29Кб, 551x251
551x251
Или вот ещё пример.
Аноним 29/05/21 Суб 16:51:47 2048144600
>>2048131
Зависит от парадигмы в которой ты хуйню делаешь.
Я бы просто кидал исключение. Но я вообще на каждый чих люблю кидать исключения так-то.
Аноним 30/05/21 Вск 12:37:26 2048964601
image.png 21Кб, 865x171
865x171
Сап двощ, есть кнопка b.
При клике на другую кнопку, она должна присваивать код xaml кнопки с другим цветом(очень важно делать это именно через присваивание xaml, просто так надо и всё).
Но при клике, как она была фиолетовая, так и остается, но если выводить через MessageBox ее Background, то он принимает значение Aquamarine. Как починить так, чтобы кнопка поменяла цвет не только "логически", но и видимо, на форме?
Аноним 30/05/21 Вск 14:39:08 2049139602
Аноним 30/05/21 Вск 18:47:57 2049588603
Сап.

Кто какие решения использует для интеграции браузера внутрь винФорм/ВПФ?
Аноним 30/05/21 Вск 19:00:30 2049598604
>>2049588
Пишу свой браузер. Очевидно же.
Аноним 30/05/21 Вск 22:40:53 2049977605
>>2049598
Бля, как смешно. Я обосрался от смеха, прочитав твой ответ. Серьёзно. Ты в дотнет-разработку, случайно, не из стендапа вкатился?
Аноним 31/05/21 Пнд 00:34:18 2050045606
Обсуждайте асп.нет!
Аноним 31/05/21 Пнд 09:44:28 2050191607
>>2049588
>>2049598
Есть дефолтный контрол webbrowser как на впфе, так и на винформах. Чтобы управлять/редактировать html код в нем - Microsoft.mshtml, HtmlAgilityPack.
Аноним 31/05/21 Пнд 13:51:04 2050441608
>>2050191
Да только там интернет эксплорер 7.0, который не способен открыть панель тензорборда.
Ну я уже присмотрел CEFsharp.
Аноним 31/05/21 Пнд 16:06:57 2050687609
image.png 20Кб, 403x339
403x339
image.png 3Кб, 330x83
330x83
Ради всего святого, скажи мне кто-нибудь в чем вообще смысл от SignalR ??!!
делал как на пикрилах хочу с сервера что-то отправить пользователю возвращает Clients is null
А КАКОГО ХРЕНА?

Когда я тригерю те же методы из клиента тогда они уже не нулл, какая-то односторонняя хуйня получается этот сигналР, совершенно не юзабельная так как с клиента сервер можно затригерить и обычным ажаксом, нахуя он вообще тогда нужен хз
Аноним 31/05/21 Пнд 16:25:32 2050731610
Есть свойство LoggedIn, которое говорит о том залогинился ли юзер. Понадобилось добавить события на ЛогИн и ЛогАут - как их назвать?

Можно переименовать свойство в IsLoggedIn, а события назвать LoggedIn и LoggedOut. Но хз.
Аноним 31/05/21 Пнд 16:28:58 2050743611
Хм, судя по коду микрософтов можно это свойство назвать Authenticated и будет заебись.
Аноним 01/06/21 Втр 01:35:16 2051469612
Шарпист-сама, подскажи можно ли на C# реализовать десктопное приложение для Windows и Linux (желательно с заделом под мобилки). Если возможно, то какой фреймфорк/технологии? Заранее благодарю тебя, мудрейший.
Аноним 01/06/21 Втр 01:39:15 2051474613
>>2051469
Смотри Avalonia UI для десктопа
Xamarin Forms для мобилок
Аноним 01/06/21 Втр 01:41:36 2051476614
>>2051474
Аригато, шарпист-сама! Яростно благодарю тебя за ответ!
Аноним 01/06/21 Втр 12:55:00 2051762615
День добрый аноны работаю в престижной спорно по меркам моего города международной уже как месяц IT компании 1С программистом сначала думал не на долго пока денег нет и всё такое. Теперь чувствую, что с ростом ЗП начинаю вязнуть в этой клоаке.
В общем я прочитал весь Player's Guide и у меня большое желание трогать web. Пока только простенькие игры в Unity делал и консольные задания из книги. Скажите куда мне дальше копать.
А и ещё в компании есть возможность перекатиться в C# как определить что мне уже не стыдно стучать на собеседование. А то приду такой бе-ме я там книжечку прочитал и вот у меня квадратики в Unity двигались возьмите за еду работать пожалуйста я больше не хочу бухгалтерии. Скажут ещё, что я дебил и надо минимум 2-4 года опыта, а мне там ещё работать. Стыдно же будет
Аноним 01/06/21 Втр 14:07:12 2051859616
>>2051762
Нихуя не понял. Ты хочешь в свою же компанию собес пройти, но на сисярп-девочку? И боишься, что тебе откажут и назовут дебилом, пушто у них (у вас) берут с опытом от 2-4 лет?
1. Почему тогда не чекнешь открытые вакансии компании, чтобы посмотреть какие там требования?
2. У вас есть ресурсный менеджер? Есть контакт с кем-то из шарпистов в компании? Если да, то обкашляй этот вопрос сначала с ними. на крайняк хрюше напиши, что хочешь съебаться со своей хуйни на другую хуйню

Я в свою компанию пришел питонистом, но по факту нюхал csv и yaml файлы дрочил. Через 4 месяца написал ресурснику, что это все хуйня и я хочу либо выучиться на новую технологию и проект сменить (если на пистоне нет и не предвидится), либо съебать с компании до окончания контракта. Вот так перекатился на дотнет.
Аноним 01/06/21 Втр 14:25:56 2051879617
>>2051859
>Ты хочешь в свою же компанию собес пройти, но на сисярп-девочку?
Да
>И боишься, что тебе откажут и назовут дебилом, пушто у них (у вас) берут с опытом от 2-4 лет?
Да
>1. Почему тогда не чекнешь открытые вакансии компании, чтобы посмотреть какие там требования?
Я чекнул требования охуевшие типо 2-4 года мидл опыт разработки знание PHP, HTML JAVA других языков программирования и т д.
Поэтому спрашиваю какие в целом предъявляют требования чтобы вкатиться в +/- нормальную контору. Может мне стоит менять компанию раз такие дела. 2 Года разработки с нихуя не появляются.
>У вас есть ресурсный менеджер?
Они говорят сейчас на должность ученика вакансий нет. Я такой ага это типо я должен сидеть тупить и ждать вакансию? Нет уж спасибо сам учиться буду лучше съебусь от вас если что.
Мысли примерно такие.
>Есть контакт с кем-то из шарпистов в компании?
Нету и они не особо общительны, но в теории могу любому руководителю группы на почту написать типо так и так вам дурочок в команду не нужен, но я стесняюсь как-то.
Хелпа с Xamarin Аноним 01/06/21 Втр 15:23:33 2051948618
изображение.png 4Кб, 484x203
484x203
Сап, аноны

Пишу читалку на мобилку на Xamarin. И вот столкнулся с бедой :(
Нужно через приложение открывать нужный файл(книгу), но в xamarin нет встроенного OpenFileDialog, что подскажете аноны?

У кого-нибудь было похожее?
Аноним 01/06/21 Втр 15:28:10 2051954619
Аноним 01/06/21 Втр 15:36:18 2051965620
>>2051954
Устаревший пакет :(
Аноним 01/06/21 Втр 15:54:16 2051980621
Аноним 01/06/21 Втр 16:24:22 2052015622
>>2051980
>
ДА! Работает. Спасибо огромное)
Аноним 01/06/21 Втр 18:53:31 2052286623
Есть один exe, который лежит в сетевой общей папке. Если один пользователь запускает прогу, то всё нормально, если пытается ещё один запустить, то она не запускается. В чём может быть проблема и проблема ли это вообще с прогой или серваком?
Аноним 01/06/21 Втр 20:38:58 2052425624
Какой метод отсортирует мне одномерный массив от меньшего к большему? Array.Sort не работает.
Аноним 01/06/21 Втр 21:54:19 2052539625
>>2052425
for(int i = 0; i < array.Length-1; i++)
{
for(int j = i+1; i < array.Length; j++)
if(array>array[j])
{
var temp = array;
array = array[j];
array[j] = temp;
}
}

Держи. Можешь не благодарить.
Аноним 01/06/21 Втр 21:55:32 2052543626
>>2052539
блядь, ебучий спеллчекер спрятал во втором цикле ошибку. Там должно быть j < array.Length
Аноним 01/06/21 Втр 21:56:42 2052549627
>>2052543
Плюс еще я еблан в свапе забыл дописать. Пиздец. Как представлю что на собесе нужно будет на листочке это писать.
Аноним 01/06/21 Втр 22:36:47 2052626628
Хм. Допустим у меня в приложении уже устоялась структура базы и она меняться больше не будет. Но вот сами базы - возможно. Так вот, какими механизмами можно свои запросы что я ручками писал прокинуть? Ну, допустим в MS SQL - ограничение на число записей делается TOP а в MySql - LIMIT, что мне нужно как разработчику сделать чтобы мой сложный запрос, выполнился и там и тут одинаково, кроме как проверять какой провайдер используется EFCore'ом?
Аноним 02/06/21 Срд 02:06:59 2052748629
>>2052549
В пизду такие собесы.
Аноним 02/06/21 Срд 02:18:35 2052751630
>>2050441
Чет он, правда, весит дохуя.
Аноним 02/06/21 Срд 10:06:55 2052841631
>>2052286
Ебать ты неофит, это совсем платина которая уже была понятна где-то 1947 года (если я не проебался с последней цифрой).
Аноним 02/06/21 Срд 11:56:00 2052947632
1.PNG 6Кб, 303x229
303x229
2.PNG 5Кб, 276x189
276x189
3.PNG 5Кб, 297x189
297x189
D4rBByH2Njo.jpg 799Кб, 1920x1080
1920x1080
необходимо знать и уметь копошиться в устаревшем UI говне(winforms/wpf)

необходимо знать и уметь копошиться в проприетарном говне(t-sql/ms sql server)

*вакансий на чистом .NET вообще около нихуя

Подумой анончик, оно тебе надо?
Но если ты молодой и шутливый то можешь учиться играя в новый Gmod2 на Source 2 https://sbox.facepunch.com/about/
Аноним 02/06/21 Срд 13:03:41 2053054633
image 33Кб, 329x516
329x516
image 40Кб, 406x531
406x531
>>2052947
Хули ты название своего говносайта скрыл?

Касательно языка: сорт ов говна. Пара первых вакансий в java тоже не блещут креативностью: андроид параша, легаси код, ноджс, спринг.
Аноним 02/06/21 Срд 14:36:40 2053181634
>>2052947
А что ты хочешь единственный тред где в шапка оправдание.
>4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?
>Неправда. C# активно развивается, недавно вышел .NET 5 и С# 9.0. Дотнет стал полностью опенсорсным и кроссплатформенным. В том же энтерпрайзе он очень даже востребован.
Аноним 02/06/21 Срд 19:27:48 2053806635
С чего начать, метанит или троелсен? У Андрюши цифры какие-то не модные шарп 7, дотнэт 4... плюс есть подозрение, что у метанита с упражнениями получше дело обстоит
Аноним 02/06/21 Срд 20:50:49 2053967636
>>2053806
Похуй с чего, если вообще не кодил. На таком этапе главное закрепить основы: работа с переменными, циклами, массивами, потоками, создание методов(функций). Когда это уже освоил - гуглишь ООП, паттерны и солид. Потом шлефуешь это многопоточностью, асинхронностью, LINQ. После этого - пробуешь что-то свое начать пилить, не сильно большое, хватит 10к строк. Когда запилишь - можешь пытаться искать работу.
Аноним 02/06/21 Срд 20:52:29 2053971637
Аноним 02/06/21 Срд 21:26:51 2054009638
>>2053967
> После этого - пробуешь что-то свое начать пилить, не сильно большое, хватит 10к строк.
Калькулятор. Как раз в десяточку уместится.
Аноним 02/06/21 Срд 21:37:53 2054024639
>>2053967
Та я в курсе за роадмэп. Ладно понял, посмотрю шевчука...
Аноним 02/06/21 Срд 21:39:58 2054028640
>>2054009
Я калькулятор на основе обратной польской и интерфейсом на формочках в 900 строк уместил в свое время. Поддерживал все стандартные операции(плюс-минус-умножить-разделить, скобочки, возведение в степень), работу с дробными и отрицательными числами. ХЗ что нужно чтобы оно в 10к строк вылилось.
Аноним 02/06/21 Срд 23:36:50 2054221641
Поясните как вы ходите на собесы при работе в офисе?
Ну на удаленке понятно, как просто проебланили в рабочее время. А офлайн как? Часто ходите?
Аноним 03/06/21 Чтв 07:57:11 2054365642
Аноним 03/06/21 Чтв 11:49:49 2054548643
>>2054221
Пацаны, сегодня у меня личные дела в городе в середине/конце дня, буду недоступен с XX на три часа.
Аноним 03/06/21 Чтв 12:10:32 2054606644
помогите подыскать курсы, где бы разбирались конкретные задачи под C#. Например, сегодня мы пишем крестики-нолики, завтра пишем змейку, потом пишем простенькую игрушку с базой данных. Большинство видео-курсов разбирают одну лишь голую теорию, и я никак не могу найти курс, который основывался бы на практическом написании небольших, но полезных программ, которые наглядно показывали бы пользу от тех же делегатов или интерфейсов или еще от чего либо.
Аноним 03/06/21 Чтв 12:12:07 2054611645
>>2054548
Я несколько раз просто запирался в переговорке с ноутом и все. Потом просто говорил, что собеседовался. Всем похуй.
Аноним 03/06/21 Чтв 12:48:18 2054701646
>>2054028
> ХЗ что нужно чтобы оно в 10к строк вылилось.
Воля нужна и желание трудиться.
Аноним 03/06/21 Чтв 15:36:41 2055018647
>>2052947
> знать и уметь копошиться в устаревшем UI говне(winforms/wpf)
Что там знать и уметь, дегрод?

>>2052947
>на чистом .NET вообще около нихуя
ЧТо значит "на чистом дотнет"?

Вообще очень странно выглядит, что человек влетает в тред про одну технологию, странным путём сравнивая её с другой и отговаривая вкатываться.

Ты дотнет-стажёр, который хочет себе конкуренцию снизить?
Аноним 03/06/21 Чтв 16:15:03 2055063648
>>2054606
Как же я вас блять всех ненавижу читайте книжки.
Учитесь переваривать информацию, да 90% решений на проблемы с которыми ты столкнешься в жизни можно найти в интернете, но и головой тоже иногда думать надо.
Аноним 03/06/21 Чтв 16:33:23 2055105649
>>2054606
Придумай сам практическую полезную задачу и решай её, используя имеющиеся теоретические знания. В чём проблема? Ты думаешь, если "сырая" теория тебе не помогла, тебе поможет сырая практика в виде создания нахуй тебе не упавших змеек?
Аноним 03/06/21 Чтв 17:03:46 2055174650
Аноны, помогите с небольшой архитектурной проблемкой. Есть класс, который работает с аккаунтами бекенда. Мобильный аккаунт может быть привязан к Фейсбуку, чтобы входить не по логин/паролю.

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

И тут вопрос, как реализовать работу с конфликтом в API? Хотелось бы скрыть какие-то детали внутри класса.

public enum LinkLoginResult { Failure, Success, Conflict }
void LinkFacebookLogin(Action<LinkLoginResult> callback);
void KeepCurrentAccount(Action<bool> callback);
void SwitchToConflictAccount(Action<bool> callback);


Вот думаю, может вместо enum возвращать ещё и всю информацию о конфликте? И там же объявить методы для решения конфликта, а не хранить их в общем интерфейсе:

public class LinkLoginResult
{
public LinkLoginStatus Status { get; }
public LinkLoginConflict Conflict { get; }
}
public class LinkLoginConflict
{
public UserData CurrentAccount { get; }
public UserData ConflictAccount { get; }

void KeepCurrentAccount(Action<bool> callback);
void SwitchToConflictAccount(Action<bool> callback);
}

void LinkFacebookLogin(Action<LinkLoginResult> callback);
Аноним 03/06/21 Чтв 18:15:46 2055358651
>>2054606
Открой на ютубе любое видео аля пишет флапи бердс на шетемеле. И уже через 10 минут ты нихуя не поймешь что тебе говорят.
Читай книги/статьи, решай примитивные задачи.
Аноним 03/06/21 Чтв 18:28:09 2055386652
Подкиньте туторов по asp.net web api, а то на мсдн заканчивается на самом интересном. Если еще там будет гайд по структуре (типа вот эти лееры данных, контроллеров), то буду премного благодарен.
Аноним 03/06/21 Чтв 19:34:18 2055483653
Поясните как правильно должен работать TCP-сервер, а то все примеры это какая-то наколеночная хуета.
Ну, вот допустим - везде берут и просто в цикле принимают соединения. Почему-бы не сделать несколько потоков которые бы пытались бы принять и начать обрабатывать соединение? Плсю, нигде не показано, как нормально остановить сервер, просто в консольном приложении жмакаем кнопочку, ну, слушателя мы убиваем, а что там с теми кто уже принят будет? Как их-то теперь убить, если, допустим, у меня приложение на формах и я хочу иметь возможность перезапустить сервер или остановить его, что-то еще поделать и запустить заново.
Короче, где посмотреть нормальные примеры этого вот, а не хелловорлды наколеночные.
Аноним 03/06/21 Чтв 23:08:49 2055677654
>>2055063
>Как же я вас блять всех ненавижу читайте книжки.
На говно ты исходит можешь, а подсказать кто лучше метанит или Троелсен нет. Ясно
Аноним 04/06/21 Птн 07:22:17 2055886655
Аноним 04/06/21 Птн 18:27:02 2056706656
Как EF'ом сделать:
select ID +1 From Table t1
where not exists (select * from Table t2 where t1.id +1 = t2.id);
Аноним 04/06/21 Птн 21:19:21 2056968657
изображение.png 36Кб, 1024x680
1024x680
изображение.png 40Кб, 1022x706
1022x706
Как создать этот некий "юнит тест"?
Аноним 04/06/21 Птн 21:25:43 2056977658
Пожалуйста, ответьте на вопрос без подъёба. Я понимаю, что скорее всего тупые индусы или наши васяны как обычно всё не правильно перевели. Ну не знаю и не понимаю я этого вашего дебильного англиского и люто бешено его ненавижу!
Аноним 04/06/21 Птн 23:40:31 2057286659
>>2007089
С С++ я вкатывался 2 месяца. В С++ два года
Аноним 04/06/21 Птн 23:41:43 2057288660
>>2007643
из-под винды есть Console.Beep(); Бери текст в бинарное виде и засовывай туда
Аноним 04/06/21 Птн 23:43:27 2057291661
Аноним 05/06/21 Суб 03:40:01 2057539662
Что годного, актуального почитать/посмотреть по asp? инбифо метанит/ютуб если других советов не будет, с них и начну
Аноним 05/06/21 Суб 06:07:05 2057565663
Аноним 05/06/21 Суб 10:39:46 2057682664
>>2007517
Двачую, так и вкатился. Конечно не работа моей мечты - занимаюсь улучшением нашей BPM, сайтами, которые на php + laravel в которых я мало чего понимаю (ну ничего, разберусь). Но для первой работы в IT сойдет, каждый день узнаю что-то новое, и главное набираюсь опыта. Если пройду испытательный поработаю тут еще годик и съебусь куда получше.
Аноним 05/06/21 Суб 14:37:25 2057914665
>>2056977
MSTests, NUnit, xUnit - библиотеки для создания любых видов тестов.
Unit tests переводится как модульные тесты, это только одна из разновидностей тестов.

>>2056706
https://pastebin.com/nYADuHUz

>>2055483
>все примеры это какая-то наколеночная хуета
TCP - это низкоуровневая хуета, которую можно использовать как вздумается. Если тебе надо несколько потоков, то например мне только 1 с очередью сообщений.

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

>как нормально остановить сервер
Сделай обертку над соединениями и реализуй IAsyncDisposable. Потом создай volatile bool и завершай цикл по ней. После цикла убивай соединения как хочешь, отправь им "пока" например. В конце выкинь все и перепиши как надо.

>возможность перезапустить сервер
Нужен объект синхронизации. Начни с мьютекса.

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

>>2055174
>callback
Ты из жс вылез? Даже там такой хуйни не пишут. И с хренали он bool принимает? На кой хрен в классе свойства? Failure - не объясняет причину ошибки. Пусть фронт зовет другое API с намерением заменить аккаунт и передает временный токен нового аккаунта, используя авторизацию фейсбука.
Аноним 05/06/21 Суб 19:45:39 2058273666
Чуваки. я чет не понимаю. листаю значит плеер гайд эдишен 3. тут такая тема.

double.TryParse("3.14", out double newValue)

у меня оно возвращает 0. И стало работать "как задумано" только когда я написал 3,14 и возвращает оно соответственно 3,14. Но ведь там по правилам должна быть точка, а не запятая не?
Аноним 05/06/21 Суб 19:59:17 2058304667
>>2058273
По правилам используется дефолтная локаль системы и загоняется в статический класс треда/треда юи.
Аноним 05/06/21 Суб 23:04:25 2058581668
изображение.png 85Кб, 1928x1048
1928x1048
изображение.png 76Кб, 1928x1048
1928x1048
Помогите.
Аноним 05/06/21 Суб 23:26:55 2058603669
>>2058581
Ссылку на проект добавил?
Аноним 05/06/21 Суб 23:27:44 2058604670
>>2058581
Плюс, т.к. метод статичный - тебе не нужен экземпляр. Но т.к. ты не пометил его паблик - он не будет виден.
Аноним 05/06/21 Суб 23:28:25 2058605671
>>2058581
Да. У тебя класс Program еще и приватный
Аноним 05/06/21 Суб 23:30:49 2058607672
изображение.png 63Кб, 1928x1048
1928x1048
>>2058603
>>2058604
>>2058605
Думал, получится вот так, но вот так теперь другая проблема.
Аноним 05/06/21 Суб 23:34:16 2058610673
>>2058607
Тьфу! Всё, не надо, сам разобрался.
Аноним 05/06/21 Суб 23:35:52 2058611674
изображение.png 74Кб, 1928x1048
1928x1048
Всё же я не разобрался...
Аноним 05/06/21 Суб 23:37:25 2058612675
изображение.png 65Кб, 1928x1048
1928x1048
Фух. Как же хорошо, что это анонимная доска и ИРЛ никто не узнает, кто это тут такой слепой.
Аноним 05/06/21 Суб 23:38:03 2058614676
111.png 54Кб, 1444x672
1444x672
222.png 59Кб, 1525x661
1525x661
Аноним 06/06/21 Вск 00:08:22 2058643677
изображение.png 117Кб, 1928x1048
1928x1048
изображение.png 789Кб, 720x580
720x580
Ну пиздец.
Аноним 06/06/21 Вск 00:10:55 2058646678
>>2058643
Ты перенес тестируемый класс внутрь проекта с тестами. Оно должно быть отдельно. Ну и раз объявил переменные - используй их, а не руками вбивай.
Аноним 06/06/21 Вск 00:12:59 2058648679
111.png 11Кб, 550x245
550x245
222.png 15Кб, 807x573
807x573
>>2058643
Да, На случай если ты не знаешь как добавить ссылку на проект
Аноним 06/06/21 Вск 00:23:28 2058659680
изображение.png 84Кб, 1908x1017
1908x1017
изображение.png 68Кб, 1928x1048
1928x1048
>>2058648
Я так и сделал сейчас. Всё равно та же хуйня.
Аноним 06/06/21 Вск 00:39:02 2058684681
>>2058659
Program - сделай публичным и добавь using Юнит_тест
Аноним 06/06/21 Вск 10:49:03 2058851682
Аноним 06/06/21 Вск 11:04:29 2058860683
>>2058851
Потому что там неймспейс вида:
ABC - тестируемый класс
ABC.Test - тестирующий
Так вообще неймспейсы устроены: ты можешь обращаться к элементам неймспейса более высокого уровня из низкого, но не наоборот. Т.е. если у тебя будет нейсмпейс Data.Db - ты сможешь без юзингов из Data.Db обратиться к элементам Data, но чтобы обратиться к Data.Db из неймспейса Data - нужно будет таки using использовать.
Так вот, у тебя тестирующий класс находится в другом неймспейсе. Потому либо измени его, либо используй using/
Аноним 06/06/21 Вск 11:54:56 2058899684
изображение.png 40Кб, 1024x680
1024x680
>>2058860
Почему-то у меня то же самое не прокатывает с "Библиотекой классов". Просто не видит Program, хоть убейся. И ссылку подключал, и юсинг не помогает, ничё не помогает. Выбираю проект как на картинке, в душе не ебу, что выбирает автор видео.
Аноним 06/06/21 Вск 11:58:32 2058902685
изображение.png 89Кб, 1928x1048
1928x1048
Вот это можно считать успехом в изучении юнит тестов? Это просто пустой проект. Если сделать его public, то не может найти точку входа, а если static, то публик методы нельзя в нём использовать. Пришлось оставить маин пустым.
Аноним 06/06/21 Вск 13:48:03 2059021686
>>2058902
Ты не понимая базы, полез в тесты.

1. Для тестов нужны публичные или дружественные классы/интерфейсы/... с публичными методами.
2. К статическому методу можно обратиться через имя класса. К не статическому, через экземпляр класса.
3. В консольном проекте обязан быть статический метод Main. Может быть хоть в классе ВасяПупкин. В библиотеке метод Main не нужен.
Аноним 06/06/21 Вск 14:47:57 2059103687
изображение.png 88Кб, 1928x1048
1928x1048
>>2059021
Спасиьр, я понял. Создал в Main переменную типа Program и всё получилось.
А при наличии более одного тестов, который успешно проходят, зелёная галка так и должна быть с единицей? Количество успешных тестов надо узнавать только по консоли снизу?
Аноним 06/06/21 Вск 14:51:29 2059109688
>>2059103
Число показывает количество тестов в группе. Если хотя бы один тест упадет, то галка поменяется на крест. Обычно генерируют цветастые html репорты + % покрытия тестами.
Аноним 06/06/21 Вск 14:55:59 2059113689
>>2059109
А почему у меня 1/2 в галке?
Аноним 06/06/21 Вск 15:03:13 2059124690
>>2059109
Ладно, я потыкал кнопки и разобрался. Метод теста не добавился почему-то.
Аноним 06/06/21 Вск 15:49:56 2059211691
T1MCLiZIrJI.jpg 15Кб, 609x48
609x48
Может кто-нибудь подсказать как это сделать на уровне студента 1 курса? Я уже неделю парюсь.(Массивы)
Аноним 06/06/21 Вск 16:29:29 2059305692
Где можно прочитать про то, как отделять поток GUI от потоков с обработкой несвязанных с GUI данных? Я не смог правильно загуглить.
Аноним 06/06/21 Вск 17:49:24 2059486693
>>2057682
Не понял, на пыху вкатился? В шарпы не собираешься переходить?
Аноним 06/06/21 Вск 19:19:41 2059668694
image.png 51Кб, 591x692
591x692
бля мужыки, извиняйте за ньюфажный вопрос, но почему оно не компилится? вроде код верно написал
Аноним 06/06/21 Вск 20:22:38 2059787695
>>2059668
На 17 строчке перепутан return с result и какого-то фига на 20 строчке выводится Nums, а не result.

>>2059305
Ты его и спрашиваешь в треде непонятно:
Если архитектурное разделение UI говна от логики, то MVC, MVP, MVVM, MVU.
Если ты пытаешься глобально разделить говнокод, то 3-tier architecture, onion, ddd и так далее к еще большему пиздецу человеческой мысли по типу акторов.
Если ты пытаешься изменить UI говно из другого потока, то это всякие BeginInvoke, диспетчеры или банальный async-await.
Аноним 06/06/21 Вск 20:52:40 2059848696
>>2059668
Так тут вроде почти только ньюфаги и сидят и друг другу вопросы задают и друг другу отвечают.
Аноним 06/06/21 Вск 21:48:16 2059909697
111.png 32Кб, 676x385
676x385
>>2059211
Выбирай что нравится
Аноним 06/06/21 Вск 23:04:16 2059974698
>>2059909
Спасибо за ответ, но не понимаю что значит "начало".
Аноним 06/06/21 Вск 23:05:15 2059979699
>>2059974
Кусок массива с 0 по k
Аноним 07/06/21 Пнд 08:06:52 2060163700
image.png 10Кб, 343x263
343x263
>>2059979
Не получается. Ошибка: не удается применить индексирование.
Аноним 07/06/21 Пнд 11:54:40 2060304701
>>2060163
Ты переменную x неправильно создал. Чел выше через .. создал кусок массива.
Аноним 07/06/21 Пнд 11:58:46 2060308702
>>2060304Смиренно, прошу пример, бо у меня не получилось через .. создать
Аноним 07/06/21 Пнд 12:17:19 2060340703
>>2060308
var x = a[0..k];
Если не скомпилируется, значит ты используешь старый C#.
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/configure-language-version#defaults
Если твоя IDE не старье, открой в редакторе csproj и вставь тег LangVersion с значением 8.0, по ссылке пример как выглядеть должно.

Или перепиши создание x на более старый C#. Этот оператор тупо создает массив размером k и копирует все значения от 0 до k-1 из массива a.
Аноним 07/06/21 Пнд 13:20:26 2060453704
>>2060340
Не могу я найти csproj
Аноним 07/06/21 Пнд 14:03:38 2060533705
Привет. Аноны. Работаю в банке, пилю доработки на CRM Террасофт. ЗП хорошая, но хочется в свободное время развиваться. Может быть, поработать на фриласе за валюту (если за годик заработать тысяч тридцать, закрою ипотеку чисто из подработочных деняк).
В сущности, вижу ровно два направления.
1.Core 5. Тут все просто: энтерпайз, перспективная технология.
2. Unity3d. Геймдев. Может быть даже запилю свою фирму в будущем (работал юристом,умею немного в бизнес, умею в рисунок немного, в свое время написал нон-фикшн книгу и хочу попробовать себя в художественной прозе).
Какое из направлений предподчительнее? Геймдев дыра или нет?
Аноним 07/06/21 Пнд 14:42:01 2060602706
>>2060533
Геймдев дыра. Либо ты вкатываешься в безденежные инди стартапы и сосёшь хуи в нищете, либо ты вкатываешься в мобилопарашу и перестаёшь себя уважать в принципе, либо ты уже опытный юнитиразраб и в таком случае у тебя есть какие-то перспективы, но это не твой случай.

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

Я бы рекомендовал-таки энтерпрайз на дотнет 5 (и 6, когда выйдет).
Аноним 07/06/21 Пнд 14:52:47 2060621707
>>2060602
тырпрайз, попасть ещё надо
Аноним 07/06/21 Пнд 15:02:50 2060645708
>>2060453
У твоего проекта файл с расширением csproj. Раз не можешь найти, значит переписывай строку на старье C# 7.3.
Аноним 07/06/21 Пнд 15:40:18 2060676709
image.png 1171Кб, 860x1280
860x1280
После прочтения вот этой статьи если честно немного недоумеваю, разве линукс принадлежит гугл? андроид же на линухе работает, что мешает тем же лг или самсунг просто провести хуем по губах гуглу и выпустить свои версии андроид где не будет анальных зондов или софт гугла будет вообще запрещен к установке? почему так никто не делает? и вообще реально ли самому допилить андроид что бы удалить оттуда все анальные зонды?
Аноним 07/06/21 Пнд 15:58:14 2060696710
>>2060676
Ничего не мешает. Делают. Реально.
Почему не популярно? Потому что производителям это не нужно. В чём им профит ставить палки в колёса гуглу и самим ебаться со сборкой и последующим апгрейдом собственных версий андроида? Это нужно всяким помешанным на анонимности и приватности красноглазикам, которые собственно этим и занимаются, пиля собственные прошивки.
Аноним 07/06/21 Пнд 16:02:20 2060700711
>>2060696
А где такие ос можно найти тогда? Или есть форум какой-то где мне более детально пояснят?

>>2060696
а нельзя делать так типа выкатили ос, протестировали все ок деплой и забили, вот блекбери так делает, у них на каждую новую генерацию телефонов новая ось, и ничего вроде, живут
Аноним 07/06/21 Пнд 16:04:26 2060704712
>>2060700
>Или есть форум какой-то где мне более детально пояснят
4pda

>вот блекбери так делает, у них на каждую новую генерацию телефонов новая ось, и ничего вроде, живут
Ты сейчас про какой блекбери говоришь? Последние модели на почти стоковом андроиде, у них изменений не больше, чем у других производителей, в основном просто предустановленный софт.
Аноним 07/06/21 Пнд 16:09:01 2060714713
>>2060704
Нет, я говорю о тех которые на BlackBerry OS выходили

>4pda
Спасибо
Аноним 07/06/21 Пнд 16:12:25 2060719714
>>2060714
>Нет, я говорю о тех которые на BlackBerry OS выходили
И где они сейчас?
Аноним 07/06/21 Пнд 16:28:35 2060733715
image.png 38Кб, 933x226
933x226
image.png 5Кб, 892x22
892x22
image.png 9Кб, 769x85
769x85
image.png 8Кб, 1026x52
1026x52
Я только вкатываюсь, не понимаю как подключать базы данных, я пробую вот так и update-database на одном компьютере это работает на другом нет, в чем причина?

Среда: Нет 5
Аноним 07/06/21 Пнд 16:31:38 2060735716
>>2060719
Ну так не модно почему-то, раньше иметь свою ос была престижно и почетно, хвалились еще тем какие у них ос безопасные, но это желание везде присобачить кнопочки все нивелировало а потом выкатили андроид и сдохли вообще нахрен, а ведь когда-то под 20% рынка держали
Аноним 07/06/21 Пнд 16:35:38 2060738717
>>2060735
Ну так это всё взаимосвязано. Раньше нужно было тратить ресурсы на разраотку и поддержку своей ОС, а теперь то всё можно свалить на гугл с его андроидом и заниматься тем, что приносить прибыль.
Аноним 07/06/21 Пнд 17:03:21 2060766718
image.png 10Кб, 341x93
341x93
Этот код можно сократить до 1й строки?
Аноним 07/06/21 Пнд 17:15:48 2060782719
>>2060766
Что этот код вообще делать должен? Что лежит в onceGoogleAuthCode? Зачем ты это переприсваиваешь другой переменной и вручную обнуляешь первую (у тебя сборщик мусора есть, если что).
Давай пояснение своего кода, потому что сейчас я не вижу причин, почему нельзя написать просто callback(onceGoogleAuthCode);
Аноним 07/06/21 Пнд 17:18:55 2060784720
>>2060602
Есть ли смысл пилить индипарашу для души в свободное время, или за рамки хобби это не выйдет?
Аноним 07/06/21 Пнд 17:21:25 2060785721
>>2060784
Даже если не выйдет за рамки хобби, то это всё равно имеет смысл.
Аноним 07/06/21 Пнд 17:23:35 2060792722
Есть какие-то книги по C# с заданиями? Чтоб не просто теория была, которая вылетает из головы через два дня, но и практика.
Можно на английском но лучше на русском, можно не совсем для начинающего в программировании но лучше для начинающего.
Аноним 07/06/21 Пнд 17:26:08 2060799723
>>2060792
Конкретно книг не припомню, но существует полно сайтов с заданиями разного уровня сложности.
Аноним 07/06/21 Пнд 17:26:28 2060800724
Аноним 07/06/21 Пнд 17:27:14 2060803725
>>2060784
Есть смысл пилить мобилки. Одна мобилка может приносить больше, чем ты заработаешь на топовой позиции в Москве.
Аноним 07/06/21 Пнд 17:34:57 2060819726
Аноним 07/06/21 Пнд 17:53:45 2060852727
Аноним 07/06/21 Пнд 18:06:17 2060878728
>>2060733
Проверь руками есть ли база.
Аноним 07/06/21 Пнд 18:59:17 2060937729
>>2060819
> В подборку нет кодварс
Феееее. Вот зачем ты так?
Аноним 07/06/21 Пнд 19:40:01 2060975730
У вас есть какой-нибудь компилятор, кроме встроенного в ide? и чтобы винформочки поддерживал
Аноним 07/06/21 Пнд 19:53:36 2060988731
Аноним 07/06/21 Пнд 20:02:05 2060993732
Аноним 07/06/21 Пнд 23:09:03 2061185733
image.png 84Кб, 890x550
890x550
Пацаны, как думаете, стоит ли юзать #if или лучше просто возвращать NotSupportedException в зависимости от платформы. То есть уже внутри метода использовать #if, чтобы сам интерфейс оставался чистым? Пример на картинке. В некоторых других сервисах есть похожие методы и свойства.
Аноним 07/06/21 Пнд 23:48:23 2061214734
>>2061185
Я тебе говорил как лучше: вынеси специфичное поведение в стратегию и при билде под разные ос фабрикой/билдером получать нужное. Нет, не хотим, хотим нахуячить деректив, регионов, а интерфейс сделать толстым как жопу мамаши. Охуенное ООП, товарищи. Просто 11/10.
Аноним 07/06/21 Пнд 23:55:44 2061221735
3012rd.jpg 50Кб, 600x424
600x424
>>2061214
>Я тебе говорил как лучше
У тебя энтерпрайз головного мозга.
Аноним 08/06/21 Втр 00:00:09 2061224736
>>2061221
Ты посмотри что за хуйня там выше. Это же пиздец. Я понимаю, если #if используют когда нужно обеспечить поддержку легаси-фреймворка, моно, это вот, но блядь, в юнити опредеять андроид или айос. Пиздец.
Ладно, не буду никого учить. Хотите жрать говно - ваше дело. Когда половина кода будет состоять из деректив, будто вы в ебучем си и вас заебет эта хуйня - сами дойдете до этого, если больше одной извилины имеете.
лаба anonimus 08/06/21 Втр 12:09:12 2061518737
1.png 7Кб, 263x67
263x67
2.png 4Кб, 251x57
251x57
3.png 1Кб, 80x45
80x45
Сап ,анонимы. Помогите ,пожалуйста, сделать лабу, нужно найти темп роста V(i)
Формулы и свои наработки прикрепляю
https://pastebin.com/Y9pgrkqR

Спасибо за ранее.
Аноним 08/06/21 Втр 20:12:56 2062252738
Сорри за тупой ебаный вопрос. Короче начал web api проект, поставил галочку на создание докерфайла, вынес модели в отдельный проект, в основной добавил референс. Написал docker-compose.yml с тремя сервисами: mysql (база данных), minio (хранение файлов на s3), app (само приложение). Билд фейлится на последнем с ошибкой, что тип или неймспейс Data не найден (вы что, забыли добавить референс?). Подскажите как правильно это все делается? вообще за советы и ссылки по докеру буду благодарен
Стоит ли выносить приложение в отдельный контейнер и настраивать между ними нетворк?
Как скаффолдить контроллеры, если у меня mysql только в докере? при генерации контроллера, который with Entity Framework пишет, что не найден MySql nuget пакет pomelo mysql установлен в обоих проектах
Аноним 08/06/21 Втр 20:38:07 2062278739
>>2059486
Работал на заводе, учил шарпы. На вакансиях где чисто веб разработка на шарпах в моем мухосранске требования высокие, я даже не пытался. Но я стал ходить по другим собеседованиям, где стек отличается. Даже к 1Сникам заглянул, дали тестовое я попробовал сделать, не понравилось вообще и сказал что доделывать не буду. В итоге нашел себе вакансию разработки под CRM, плюс у них кучу сервисов на шарпах написано и на пыхе всякого дерьма много. Туда и вкатился, со временем конечно собираюсь перейти на полноценные шарпы, но для первой работы в IITи так сойдет
Аноним 08/06/21 Втр 20:42:09 2062284740
>>2062252
Прочитай, блядь, как работает докер.
Охуеть, блядь. Ну серьезно, это во второй статье на сайте самого докера рассматривается. Я понимаю, когда ты погуглил, потыкался, и что-то неясно начинать спрашивать, но это же основа. Давай, спроси как переменную объявить.
Аноним 08/06/21 Втр 21:10:39 2062312741
>>2062284
Чел ты. Тыкни на ту самую "вторую" статью на сайте докера, потому что я перечитал документацию и, не поверишь, потыкался самостоятельно, прежде чем вопрос тут задавать
Аноним 08/06/21 Втр 22:51:17 2062449742
Аноним 08/06/21 Втр 23:29:25 2062486743
Хм. Хм.
В контексте всех этих IOC- плохо ли делать что-то типа:
class Notifier<TType>
{
public event EventHandler EventName;
public void PingEventEventName(object sender, EventArgs e);
}
?

Ну, допустим, у меня есть куча каких-то короткоживущих объектов, в них могут нужные события происходить, я, допустим, хочу при их срабатывании что-то во многих местах делать. Делаю этого Notifier - синглтоном, те кто хотят сообщить о событии - вызывают метод, в нем просто кидается эвент. Те кто хотят послушать - подписываются уже на эвент из этого Notifier.
Ну, банально, вот в у меня есть мобы, я хочу чтобы при событии СМЕРТЬ - игрок получал опыт, спавнилка понимала что нужно нового моба заспавнить через n секунд, а компаньон говорил: Да, так их. Игрок, спавнилка и компаньон - будут жить долго, скорее всего будут синглтонами, а вот мобы возможно будут жить всего пару секунд, если не меньше.
В общем. Не знаю. Как лучше-то прокидывать события между объектами, чтобы не создавать лишней взаимосвязи.
Аноним 09/06/21 Срд 00:24:42 2062543744
Сап, аноны, накидайте годных уроков для XAML. С меня как обычно.
Аноним 09/06/21 Срд 08:44:16 2062714745
>>2062486
Используй entity component system. Синглтонами он собрался хуярить.
Аноним 09/06/21 Срд 12:20:44 2062827746
Screenshot2021-[...].png 341Кб, 822x619
822x619
>>2059787
>На 17 строчке перепутан return с result и какого-то фига на 20 строчке выводится Nums, а не result.

сяп за ответ, жаль народу на доске мало и я и сам уже успеваю написать код ещё рас и обдувать что бы вышло без ошибокм чем кто то ответит
Аноним 09/06/21 Срд 12:57:36 2062861747
>>2062827
Просто тред в бамплимите и уже на самом дне, его никто не видит.
Аноним 09/06/21 Срд 21:26:47 2063668748
>>2062861
тогда что, нужен перекот?
Аноним 09/06/21 Срд 21:38:04 2063677749
1621080317466.png 295Кб, 501x443
501x443
Аноним 10/06/21 Чтв 10:57:37 2063996750
image.png 52Кб, 496x596
496x596
Аноним 10/06/21 Чтв 10:58:14 2063997751
image.png 30Кб, 385x364
385x364
Аноним 11/06/21 Птн 10:04:28 2065072752
Есть вот такой конфиг для log4net
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="MyLogFile."/>
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date"/>
<datePattern value=".yyyy.MM.dd_hh.mm.lo\g" />
<param name="StaticLogFileName" value="false"/>
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
</layout>
</appender>

Можно как-то сделать, чтобы в имя файла писалось utcdate, а не время на компьютере? Или только кастомный аппендер писать?
Аноним 11/06/21 Птн 13:17:55 2065250753
>>2006596 (OP)
Сап.

Кто-нибудь реализовывал интеграцию cmd внутрь WinForms или WPF или находил такие реализации?

Нашёл сторонний контрол https://github.com/dwmkerr/consolecontrol но он жутко кривой: если запустить что-то по-сложнее стандртной команды cmd, аутпут ломается к хуям.

Аноним 11/06/21 Птн 15:37:53 2065438754
Сап двощ.
Пишу консольное приложение, которые использует другие dll. Подключаются через
AppDomain.CurrentDomain.AssemblyResolve += AssemblyResolve;
И вот когда у меня выполнение программы доходит до return, то она продолжает висеть в процессах.
Как можно отследить (ProcessExplorer не дает нужной инфы), что где еще выполняется, чтобы убить потоки, которые продолжают где-то висеть.
Была попытка просто топорным способом сделать System.Diagnostics.Process.GetCurrentProcess().Kill(); и да, программа завершилась и все круто. Но в таком случае другая программа, которая ждет завершение работы моей программы получает код завершения (-1 если не ошибаюсь), который мне не нужен. Пошуршав немного интернеты в поисках как изменить этот статус ответа на нужный мне через kill() не нашел.
Аноны, какие есть идеи и предложения?
Аноним 11/06/21 Птн 16:06:49 2065462755
>>2065438
А там нет метода Dispose?
Возможно тебе следует вручную очищать используемые ресурсы.
Аноним 11/06/21 Птн 18:39:31 2065652756
>>2065250
Нет, мод на волосатые женские ноги еще не завезли.
Аноним 11/06/21 Птн 18:40:54 2065656757
Аноним 11/06/21 Птн 18:46:51 2065661758
>>2065462
Пробовал, но не помогло. Но направление думаю правильное, нужно капать дальше там.
Аноним 11/06/21 Птн 19:03:27 2065675759
image.png 58Кб, 1163x680
1163x680
>>2065250
Сам сделал через винапи.
Хз, зачем чувак какой-то контрол пердолил с транляций стд-потоков
Аноним 11/06/21 Птн 20:39:51 2065782760
Объясните, какого хуя:
lock(_locker)
{
db.Set<DbItem>().Add(item);
db.SaveChanges();
}
работает в разы быстрее чем:
while(concurrentQueue.TryDequeue(out var item))
{
db.Set<DbItem>().Add(item);
db.SaveChanges();
}
?
Я вот не понимаю. Вроде же все эти конкурентные штуки с локфри должны быть быстрее по перформансу. Просто поясню проблему. В БД - есть поле, которое должно быть без пропусков, при этом логику выдачи поля нельзя на базу перекладывать, потому нужно как-то на уровне приложения проверить пропуски и если есть - заполнить поле пропущенным значением. Так вот, я думал - ну, локфри, вся хуйня, сделаю очередь на добавление, там просто буду в бесконечном цикле, пока программа не завершится доставать и будет заебись, а потом запустил - и хуйня какая-то. Ок, пробуем с lock - все на несколько порядков быстрее, да, какое-то время появляется скачок по нагрузке на проц, но потом он не такой страшный.
Короче, что я не знаю-то? Почему так происходит? Что я как программист должен с этой хуйней делать?
Аноним 11/06/21 Птн 22:03:32 2065819761
Аноним 11/06/21 Птн 22:31:07 2065840762
Двощь на тебя вся надежда.
Как передать datetime пост запросом в контролер net5 mvc ?
Вот вью
<div>
<label asp-for="FirstDate"></label><br />
<input type="datetime-local" asp-for="FirstDate" />
<span asp-validation-for="FirstDate"></span>
</div>

В контролер приходит 01.01.0001 0:00:00
Как пофиксить?
Аноним 12/06/21 Суб 12:59:41 2066132763
>>2065840
Какое вообще основное отличие .net 6 от .net 5?
Думал, стоит ли перенести пет проект на нет6, но что-то вообще не пойму, какие там преимущества?
Аноним 12/06/21 Суб 17:50:17 2066359764
Мне нравится ставить in около аргументов функции, чтобы указывать, что они не будут изменены.
Однако, помимо такой гарантии, аргумент, помеченный "in" передаётся по ссылке.
Могут ли с этим быть проблемы производительности, если помечать так примитивные типы, например int, float, double?
Аноним 12/06/21 Суб 18:43:17 2066399765
Аноним 13/06/21 Вск 00:47:04 2066706766
>>2066359
Да будут проблемы.
Передача через in эффективна только для структур больше определенного размера, цифру не подскажу так как наизусть не помню, а еще там вроде от ЦП зависит.
Плюс передача через in не readonly структуры создает копию структуры для безопасности от чего ты только теряешь.
Но если ты передаешь readonly через in и при этом еще создаешь ее в момент вызова, а затем нигде не хранишь и она ниже Х размера, то это разгружает GC так как все это дело живет только на стэке.
Для большего понимания читай Pro .NET Memory Management от Konrad Kokosa
Аноним 13/06/21 Вск 07:04:38 2066769767
>>2006596 (OP)
Что означает символ @ перед строкой, в CSharp?
Вижу, что строка изменяется.
Как её назад декодировать, в прежнюю?

Можно как-то сделать такое же, и конечно - обратное преобразование в JavaScript?
Аноним 13/06/21 Вск 09:22:00 2066792768
>>2066769
Как на шарпе унескапнуть вербатим стринг
чтобы было заебись но не только для '\n' а для всех эскапнутых вербатимумом символов?

>Console.WriteLine((@"Hello,\n World!" == "Hello,\\n World!")+",\n"+@"Hello,\n World!".Replace("\\n","\n")); //try to unescape
Аноним 13/06/21 Вск 09:58:10 2066799769
>>2066792
Вроде в глаза никогда не долбился, и на тебе:
>Regex.Unescape(@"Hello,\n ОПхуй!")
Аноним 13/06/21 Вск 10:00:38 2066801770
>>2066799
Regex.Escape(String) - это и есть вербатим, или не?
Аноним 13/06/21 Вск 10:05:03 2066803771
Аноним 13/06/21 Вск 11:47:56 2066844772
>>2066803
Как эскапнуть этим вербатимумом (@) - ёбанные двойные кавычки?!?!!!?!?!

>Console.WriteLine(@("\b\f\n\r\t\"\\".Replace("\"", "\"\""))); //При использовании verbatim, " надо заменить на ""
выбивает какую-то хуйню по-английскому.
Аноним 13/06/21 Вск 12:09:38 2066851773
>>2066706
>передача через in не readonly структуры создает копию структуры
Передача не readonly структуры и без in создаёт её копию, так-то.
Аноним 13/06/21 Вск 12:15:22 2066859774
Аноним 13/06/21 Вск 12:17:07 2066860775
>>2066859
Правда, хрен поймёшь, что ещё эскапает этот регесп, помимо всего прочего. Походу, надо просто цепь из реплейсов написать, и не ебать мозг.
Аноним 13/06/21 Вск 12:34:14 2066866776
>>2066860
>Правда, хрен поймёшь, что ещё эскапает этот регесп, помимо всего прочего.
А вот же: >>2066803
>Походу, надо просто цепь из реплейсов написать, и не ебать мозг.
Там всего 7 символов надо проэкранировать.
Должно бы работать: https://rextester.com/KYACNF79246
Аноним 14/06/21 Пнд 00:10:24 2067495777
А как сделать юнит тестирование с файловым вводом тестовых значений? Использую VS2019.
Аноним 14/06/21 Пнд 03:40:43 2067559778
>>2063677
И нахуя? Ещё не в бамплимите.
Аноним 14/06/21 Пнд 03:42:33 2067560779
>>2067559
А, теперь бамплимит 500 постов? Понятно.
14/06/21 Пнд 03:51:33 2067565780
Аноним 14/06/21 Пнд 12:52:38 2067741781
Аноним 28/06/21 Пнд 20:04:14 2083101782
подскажите может есть какой ресурс или ещё что-то, хочу uniti изучить и не знаю с чего начать
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов