Этого треда уже нет.
Это копия, сохраненная 22 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
16106592120820.png47 Кб, 941x1025
C#/Сишарп/.NET Тред #25 /csharp/ 2006596 В конец треда | Веб
Прошлый тред: >>>>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
2 2006600
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
2 2006600
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
3 2006943
4 2006953
Что писать в резюме если ты вкатывальщик после завода и все изучал сам?
Писать ли что ты раньше работал на заводе и паралельно занимался хуету на подобии создание говносайтов сео хуео?
5 2007089
Сколько занимает вкат в дотнет с нуля если не надрываться и не геройствовать?
6 2007211
>>07089
Двачую. Есть возможность заниматься кодингом по 3 часа каждый день. Сколько при таком режиме уйдет времени на вкат. И не перспективнее ли в плане трудоустройства вкатиться в java/kothlen
7 2007265
>>07211
Никто тебе не подскажет за сколько что ты сможешь освоить, все от тебя самого зависит
По поводу переспективней или нет, тупо смотришь есть ли вакансии по языку-нейм в твоем городе.
8 2007322
Блин, на обеде лазил по студии и случайно нашел кнопочку и включилась хуйня как в райдере, когда тип и имя переменной подсвечиваются.
Хочу так же дома сделать, но не могу найти ту менюшку где включается.
Кто-нибудь знает?
9 2007426
>>07089

>не надрываться и не геройствовать?


Что это значит? Очень странный вопрос. Если интереса нет - ни сколько, нахуй оно тебе надо? Если интерес есть - такой вопрос бы не задавал. Лучше даже не начинай
>>07211

>Сколько при таком режиме уйдет времени на вкат


зависит от степени понимания, вовлеченности. Если полный ноль - думаю минимум месяцев 6 после написания пары +- маленьких пет проектов

>вкатиться в java/kothlen kotlin


гугли предложения на рыночке и смотри. Java все еще на голову выше решеток в плане спроса, зависит от локации, какие стэки на локальном рынке. Не смотри на то, что .NET типо под все, это далеко не так. .NET это только веб и unity, за все остальное забудь, оно мертво
10 2007517
>>06953
Пиши, в нормальных местах на это похуй, главное каким-либо образом убедить, что ты адекватный/обучаемый за собеседование, тогда будет глубоко похуй где ты начинал и работал
11 2007522
Ор
12 2007524
>>07089
Если есть мозги и IT-бэкграунд (универ, например), то месяца 3-4 регулярной дрочки, если нет, то года пол, но мозги все равно желательны.
>>07211
Джавы больше, джава дороже. В среднем. Но в целом всегда есть опция переката Java <--> C#. Работает правда от мидлов и выше и далеко не во всех компаниях.
13 2007643
Сап аноны, появилась задача - преобразовать текст в звук на c#, библиотеки использовать нельзя и System.Media.SoundPlayer тоже.
Есть ли еще какие-то другие способы? А то гугол не выдает то, что нужно.
14 2007674
бля почему не работает 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'.

Почему не работает?
15 2007680
>>07674
Миграция всмысле не происходит.
16 2007687
>>07643
Ну, не совсем ясно что подразумевается под нельзя использовать библиотеки.
А так - ну бери винапи, хуяч. Вот ссылка https://docs.microsoft.com/en-us/windows/win32/api/_coreaudio
17 2007732
Есть ли у textbox этакий белый список символов, чтобы можно было вводить только разрешённые символы?
19 2007762
>>07744
When you primary key does not follow that convention you can use the [Key] to indicate what propierty is you entity key

У меня указан кей.
Это консольное приложение.
20 2007792
>>07732
Нету. Ивент textpreview и регулярка.
21 2007840
Есть ли аналог прямого обращения к форме ( Form1 mainform = ((Form1)Application.OpenForms["Form1"]); ) для UserControls? winforms
22 2007863
Как с еф кор я могу получить последние 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)? Ну или еще как.
23 2007888
>>07426

>Что это значит?


Я имею в виду, что куча залетных пишет мол: "уволюсь с работы, готов сидеть по 16 часов в день, смогу за 2 месяца вкатиться?" - понятно, что это хуета, нужен более продолжительный срок. Это как научиться водить, за неделю не получится, даже если 16 часов в день ездить. Вот я спрашиваю, сколько времени займет, если учиться "адекватно": 4-5 часов кодинга + 3-4 часа "вокруг" (на просмотр видосов, чтение книг, статей, документации, повторения пройденного и т.д.) ежедневно?
>>07524

>Если есть мозги


Закончил физмат класс топ школы региона, одной из топ-10 РФ, отучился на инженера, несколько лет работал конструктором. Щас уволился и сел на толстую родительскую шею, начинаю вкатываться. Больше года не хочу сидеть вот и спрашиваю.
24 2007913
Как обрабатывать случай с отсутствием символа в textbox на какой-то позиции, но наличием попытку эту позицию прочитать? На снимке с ошибкой я удалил из textbox весь текст.
25 2007919
>>07863
Что-то типа:

var posts = ctx.Posts.Where(p=> p.BlogId == id).OrderByDescending(p=>p.PostedDt).Take(n).ToArray();
26 2007923
>>07913
if(Vvot.Text.Length == 0) return;
27 2007944
>>07923
А как выбрать последний введённый символ в textbox? Мне нужно проверить последний символ, чтобы нельзя было вводить более одного ,+-/* подряд.
28 2007949
>>07923
>>07944
Всё, не надо, сам разобрался.
29 2007969
>>07919
Не то. Мне надо для нескольких блогов, а так я получу знаменитый n+1 запрос.
30 2007992
Анон, есть ли готовые решения, которые позволят из OpenAPI в рантайме сделать клиент? Допустим, у вебапи есть ендпоит, который отдает свое OpenApi, я его получаю и в конструктор передаю и могу затем выполнять запросы, не генерируя классов для OpenApi клиента.
31 2007998
>>07992
Хуиту спорол
32 2008005
>>07998
Не понял что я не так спросил.
Если непонятно:
Вот у меня консольное приложение.
Вот есть веб-приложение, которое отдает свое апи в формате OpenAPI.
Я посылаю запрос из консольного приложение, получаю json в котором описаны пути, параметры, схема и т.д.
Теперь я хочу то что получил использовать. Допустим я узнал что api/v1/Users должен вернуть коллекцию пользователей в виде: [{userName:string, email:string},...] ну, собственно я это делаю и получаю эту коллекцию, при этом я не создавал своих классов для описания полученного результата или запросов. А сделал что-то типа:
OpenApiClient client = new OpenApiClien(openApiDocument);
var response = await clien.Send(webAppAddress,"api/v1/Users");
33 2008026
Как сделать так, чтобы textbox позволял вводить символы только начиная с последнего, чтобы пользователь не мог изменить символы перед последним символом?
9999.png121 Кб, 1201x677
34 2008053
>>07992
Ну, т.е. чтобы было понятно. Что-то вот типа прикриплейд мне нужно, но не написанное не за 5 минут, а нормально и нормальными людьми, которые побольше меня в этом разбираются.
35 2008075
>>08026
Сохранить предыдущее значение и если новое значение изменилось не после последнего символа - возвращать предыдущее.
Что-то типа:
public string GetStringValue(string oldValue, string newValue)
{
return newValue.StartsWith(oldValue) ? newValue : oldValue;
}
36 2008086
>>08075
Да, сразу уточню, это решение не сработает, если будешь удалять символы.
Если их нужно удалять, то это будет что-то типа:
public string GetStringValue(string oldValue, string newValue)
{
if(newValue.Length<oldValue.Length) return newValue;
return newValue.StartsWith(oldValue) ? newValue : oldValue;
}
37 2008112
>>08075
>>08086
Что за говнокод? Почему нельзя просто написать, как сделать как в стандартном виндовсовском калькуляторе? Там как раз нету каретки и ввод технически возможен только с последнего символа, так же и удаление там возможно только с конца строки. Я хочу у себя сделать так же.
39 2008150
>>07863
Bump. Я не хочу запрос через оконную функцию, который отрабатывает ~700ms, хочу как на пике, который отрабатывает за ~9ms. Неужели EF настолько хуевый?
sql.png15 Кб, 462x428
40 2008179
>>08150
А пик-то забыл
41 2008231
>>08150
Да, хуевый. Бери адонет и пиши нативные запросы.
42 2008335
>>08118
Спасибо, помогла строка
tbPositionCursor.Select(tbPositionCursor.Text.Length, 0);
Но как отключить отображение курсора в textbox? Именно чтобы мигающий курсор вообще никак и никогда видно в текстбоксе не было.
43 2008353
И ещё, как получить ASCII код символа в textbox? Например, который находится на позиции textbox.Text.Last().
44 2008358
И ещё вопрос: Как сделать так, чтобы кнопка delete удаляла весь текстбокс, а не символы за кареткой? В виндосовской калькуляторе тоже так, я и у себя это повторить хочу.
45 2008366
>>06596 (OP)
Можете, пж, вкратце пояснить различие между разработкой на дотнет и дотнет кор? Или асп нет и асп нет кор. Там прям какие-то концептуальные различия есть? Или я просто учу дотнет и асп нет, а затем осваиваю особенности разработки на кор?
46 2008374
>>08358
texrBox.SetValue(TextProperty, String.Empty) ?
Или забиндить текст и обнулить его в вьюмодел.
Я бы так сделал

>>08335
Ты про каретку? Там есть где то свойство CaretBrush, ставь в транспарент и должен исчезнуть
изображение.png11 Кб, 806x159
47 2008383
>>08374

>texrBox.SetValue(TextProperty, String.Empty) ?


Нету такого.
48 2008408
WPF-зелень итт.
Блатные, не судите по закону ментовскому, а раскидайте по укладу впфскому, почему шквартися метод, возвращая Null, если в хате MainWindow.MainFrame есть блатной с погонялом "Browser", на второй маляве видно. Почему авторитетов не видит и не боится шкварится?
49 2008426
>>08366
Немного поменялись интерфейсы. Немного изменились зависимости. Неткор пытается в солид, в то время как старый дотнет делался по принципу: Ну, хуячим функционал, и похуй что у нас 10 разных колоров, поинтов и брашей.
Ну, т.е. прям принципиальной разницы на деле нет - большая часть основных классов те же и работают примерно так же. Если ты писал на дотнете - перейти на кор - не составит особого труда, концепции конкретных штук старались оставить теми же.
Проблемы будут с миграцией обычного дотнет приложения на неткор, потому что из-за смены интерфейсов и выпила некоторых классов - придется много чего переделывать.
50 2008441
>>08408
Порешал епты бля этого фраерка, по району двигался не правильно и базару не умел вести - ведь всем известно, что страницы - петушинная забава, поэтому без нее нужно своц базар нести.
51 2008464
>>08408
каждый раз, когда захожу в этот тред проигрываю с подливой. Отчасти от того, что месят глину в том, что мертво, отчасти, что контингент валенков. И кто сказал, что между Java и сисярпом есть легкий переход? По синтаксису разве что, но это пыть.
Я бы посмотрел, как такие перекатятся в Java со своим сисярпом и десктопными причудами, а есть то все равно захочеться...
52 2008795
>>08358
Бамп! Ну, помогите.
53 2008810
>>08408
Потому что нужно руками заинитить браузер?
54 2008850
>>07888
Такая же тема, отучился на ПГСе, устроился конструктором, но там такая хуйня прокнула, что применительно к строительной проге начал скрипты писать сначала на питоне, а потом на шарпы пересел, по итогу пару небольших пет проектов вебовских замутил, уже чувствую силы устроиться на какую-нибудь галеру шарповскую. На всё про всё ушло чуть больше года, но я особо и не гнал как ебанутый. Была возможность просто совмещать это с работой, хоть и по сути не айтишной. Важно понимать, что между устройством на первую работу в айти и началом пути находится не только сам язык, придется потрогать базу данных как минимум, кое-какие моменты типа общих практик(паттерны основные, SOLID и т.д.), мб даже базово js понимать(в большинстве вакансий на хх наблюдаю такую картину - C#+JS). В общем без хуйни с нуля это плюс минус год для чела со средней обучаемостью.
bc5764383004292905ae34a45e7bcf50.png299 Кб, 800x454
55 2009156
Четыреждыблядская ярость
Есть одно wpf приложение у которого есть файл настроек типа "settings.xml" которое создаётся и хранится вместе с екзешником (по задумке). Также это приложение умеет открывать файлы определенного формата.
Проблема начинается когда в шинде 10 тыкнуть галку открывать моим приложением эти файлы по дефолту - приложение начинает создавать файл настроек не в директории с екзешником, а в директории с открываемым файлом. Есть идеи как фиксить это говно кроме того как выносить настройки в папку с документами?
56 2009576
Как заблокировать кнопку delete в textbox или изменить её поведение на полное удаление содержимого texboxа при однократном нажатии в любом месте?
57 2009669
Что есть нынче из харкорного свежачка? Что то на уровне Рихтера или даже выше. Когда он уже зарелизит под Core обновление?
И кто щупал Скита? Стоит ли платить за эту книге деньги?
58 2009670
Бля, уже новое издание.
Я с какого-то седьмого облизываюсь на неё и хочу обмазаться, а они всё хуярят и хуярят.
Что самое интересное, один из первых моих айтишных кирпичей в нулевых был как раз её первое издание руснявое.
59 2009835
Такой вот вопрос.
Хули все так с lock(this) - бомбят? Вот мне нужен именно List<T> потокобезопасный. Читать из него все равно пока я ищу там элемент для удаления - нельзя, чет удалять, пока я перебираю все элементы - тоже нельзя, да и вообще как-то модифицировать его нельзя. Ну введу я объект который буду для синхронизации использовать вместо lock(this), ну и что поменяется-то?
60 2009837
>>08464

> как такие перекатятся в Java со своим сисярпом


Перекатился за месяц без особых проблем. Поработал на джаве год, проблевался и вернулся обратно. В хуй не уперлась эта джава. Единственное что мне в джаве нравилось, так это охуенные Enum, в то время как в шарпе хуевый enum. В остальном - джава та еще параша, а кодят на ней в массе те еще мудаки.
61 2009856
Как сделать так, чтобы кнопка button передавал свой символ в KeyChar текстбокса? Или если у меня ввод анально завязан на KeyCharах, то для бутонов придётся отдельный ввод придумывать?
62 2010107
>>09856
Че?
63 2010496
Какие более-менее open-source проекты, порекомендуете новичку (на шарпах, естественно)?
64 2010556
>>10496
Quartz.Net
65 2010585
>>09856
Засунь бутоны себе в задницу и скинь в тред фото
Потом может чего и подскажем

Алсо, почитай может про Regexp если с вводом работаешь
66 2010737
>>09837

>Перекатился за месяц т.к. ПМ сказал, что или я иду Java богам баги фиксиль или иду нахуй


>Поработал на джаве месяц, пока не нашли настоящего джависта и вернулся обратно


пофиксил
67 2010754
>>09837

>джава та еще параша, а кодят на ней в массе те еще мудаки


Так про любой язык можно сказать тащем-то. Но на жабе рынок ожидаемо больше в крупных городах, чем на шарпе.
68 2010756
>>09835
А в шарпе нет конкурентных коллекций, как в джаве например? Шобы под капотом уже было лок фри на атомиках или что-то в этом духе.
70 2010767
>>10756
Есть словарь конкурентный, очередь, стек, bag и блокинг коллекш. Но нет листа, дескать все эти пиздец какие охуенные, а лист так с локфри - хуй сделаешь, а потому либо бери что есть. А мне именно нужна хуйня которая по интерфейсу - лист, но потокобезопасный. Я конечно могу одну из этих обернуть и заебись типа, но проще локать лист.
1619618182071.jpeg17 Кб, 1920x39
71 2011654
Я знаю что мне хуй кто ответит по моему вопросу, но все же попытаюсь - юзаю по совету одного анона пару тредов назад AdonisUi на wpf'e. Я юзаю один всратый (в плане его результатов) обфускатор под назаванием SmartAssembly и он даже без настроек проекта заворачиватет адонисовское окно на фуллскрине в белую рамку. Кто нибуть знает, можно ли это как-то пофиксить в msil'e? Или подскажите может кто знает бесплатный обфускатор с шифрованым хранилищем строк как в смартассе (можно даже без обфускации как таковой)?
999999.png40 Кб, 945x780
72 2012021
На прикриплейде - хороший код?
73 2012056
Ребяты а как удалить все данные из таблицы в Entity Framework ?
74 2012072
>>12056
Разобрался.

Но вот поясните зачем ввели db.SaveChanges(); ?
Почему бы сразу не вносить изменения?
75 2012074
>>09670
Опа, а может известно кто будет и будет ли переводить на могучий?
76 2012084
Всё думал вернуться в шарп, но это чудо https://github.com/migueldeicaza/gui.cs прям смотивировало меня. тащусь от консольных интерфейсов
Решил что для начала это будет что то не сложное, например вытягивание инфы о железе. Так вот, с чего начать? Хочу своё приложение сделать мульти-платформенным, это как то будет влиять на то, как нужно будет строить консольное приложение?

Может подкините идей на тему какого нибудь кроссплатформенного консольного приложения?
77 2012147
>>12084
ТГ клиент в консоле.
image.png33 Кб, 441x593
78 2012208
https://github.com/simplcommerce/SimplCommerce

Бля ребят, эта такая хуйня творится в интерпрайзе?
Как в таком пиздеце можно разобратся то?
Я даже не могу найти где там контролер который обрабатывает запрос первый(
79 2012275
>>12021
Отформатируй код и приведи к нормальному стилю.
80 2012281
Анон, надежда на тебя. Вопрос по WPF.

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

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

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

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

И все равно оно проперживается. Что тут можно сделать? У меня мало опыта..
81 2012624
Как, блять, узнать кто вызывает поле? В ссылках уже всё посмотрел - никто данные не передаёт, но при этом при запуске интерфейс вызывает это самое поле, а внутри данные лежат, сука, при том, что в set программа не заходит. Как, нахуй?
82 2012686
Аноны вкат на C# без вышки возможен ? просто язык корпоративный, там в вакансиях часто вышка указана, поэтому спрашиваю. Сам 30 лвл, боюсь жидко обосраться на фоне студентоты.
83 2012688
>>12281
Делаешь обычный текстбокс где будет строка по которой искать будешь
Коллекцию, которую вяжешь к датагриду оборачиваешь в CollectionView.
Прикручиваешь к CollectionView экземпляр делегата на фильтр.
Фильтрация будет делаться на лету отфильтровывая лишнее.

Почитать можно тут
https://www.wpftutorial.net/DataViews.html
84 2012695
>>12686
Ну зависит от вакансий
У меня на работе спец образование, только у меня и есть из всех программистов.
85 2012705
>>12695
И что вы там программируете?
86 2013226
>>09670

>2 пик


Годная книженция для начинающих или нет? А то я сдуру купил ее на озоне за 350р, может зря?
87 2013481
>>12688
Но в комбобокс очень удобно подставляется название улицы - я ввожу первые буквы, а оно сразу подставляет близкое... или в текстбоксе тоже можно такое сделать?

(после нескольких тестов я понял что проблема вообще магическая - когда запускаю и ввожу руками название - быстро находит. Но стоит нажать раскрытие списка комбобокса, вот после этого любым способом тормозит)
88 2013484
Test
89 2013490
>>13226
Она же из начала нулевых, там всё поменялось сто раз за это время.
90 2013514
Бля шо делать то?
Резюме писать на англицком?
Денег осталось хуй да нихуя.
Надо уже начать вкатываться только вот хуй знает как.
Читаю описание вакансий ну и что то знаю что то не очень знаю. Пробую вот это вот все sql asp net linq ef, но бля все на уровне хелоуворлдов. Я просто не могу это узнать на хорошем уровне без практики написания кода, я пишу там типо взять юзеров из бд, записать юзеров в бд, в циклах все это, смотрю сколько времени занимает запись и чтение, корочи хуйней занимаюсь. Надо какой то проект делать а я хуй знает что делать.
Корочи в ближайшее время планирую спарсить мейлы всех ит и около-ит компаний и проспамить им свое резюме с пометкой возьмите на работку позязя junior net developer фио. Вот только хз правильно ли так сделать, если вдруг хуй кто ответит что тогда? Ждать пол года, обновлять резюме и снова писать?
Как обстоя дела с вкатом в Украине? Сам то я из Беларуси но если бы был вариант работы в Киеве то изи бы поехал.У меня просто тут очень высокие шансы присесть на бутылку.
91 2013545
>>13514

>возьмите на работку позязя


не катит. Сколько лет ком. опыта? Если 0, то у меня для тебя плохие новости

>Как обстоя дела с вкатом в Украине?


хуево. На джуна нужно 0.5-1 год комерческого опыта с канбанами/скрамом/ватерфлоу и нужно весь бизнес флоу знать

>Резюме писать на англицком?


английский B1/2+ кста. Без ангельского ты нахуй никому не нужен
92 2013554
>>13545

>хуево. На джуна нужно 0.5-1 год комерческого опыта с канбанами/скрамом/ватерфлоу и нужно весь бизнес флоу знать


А новые джуны с опытом берутся откуда?
93 2013556
>>13545
>>13554
И вообще какой в пизду джун с 1 годом опыта? Джун-алигофрен?
94 2013557
>>13556

>алигофрен


Можно подумать ты далеко от олигофрена ушел. Лел.
95 2013562
>>13557
Ну ушел же ведь. Хоть и не далеко.
96 2013563
>>13554

>А новые джуны с опытом берутся откуда?


Из стажеров, либо из ниоткуда. Рыночек шарпа потихоньку сдувается последние несколько лет, по крайней мере в РФ так.
97 2013566
>>13562

>не далеко


На пол шага буквально.
98 2013575
>>13563
ну дак а я и не про рф то спрашиваю, либо РБ но лучше Украина.
В Беларуси например больше net вакансий чем java.
Нахуй ваще писать про рф на не рф борде?
99 2013621
>>13481
Ну если нравится комбокс можно то же самое но с ним сделать.
Подвязав текст комбобокса к свойству вью модели и на изменении вызывать фильтрацию CollectionView
100 2013624
>>13566
Ну че ты такой суровый.
Не все в русскоязычных школах Крыма учились.
101 2013767
>>12021
Ну и нахуя ставить _ для private readonly? Вы чё там ахуели?

Я понимаю в питоне ставить _ или __ потому что нормальное ООП и типы не завезли, но в C# - это шизо, от которого я устал.
102 2013774
Единственное логичное объяснение я знаю из своего опыта - это когда деды-С++ хуярят .NET с классами по 3-7к строк, где уже непонятно что к чёму относится, где всё дергается отовсюду внутри самого класса.

>>13767-анон
103 2013845
>>13774

> .NET с классами по 3-7к строк, где уже непонятно что к чёму относится,



Жизнено
Работаю с таким дедом
Ваяет только такие классы, наполненные статическими методами, в которых только он может разобраться.
Когда спрашиваю хули ты так делаешь ответ всегда один МНЕ ТАК ПРОЩЕ.
104 2013847
>>13845
Ну и классический вопрос: почему ты с ним еще в одной конторе/команде/etc
105 2013850
>>13554
Джун с опытом 1 года должен стать мидлом или выкатываться нахуй из айти.
Джуны с опытом берутся из стажировок/галер/практик, больше неоткуда.

>>13563
Рынок себя неплохо чувствует, спасибо
Просто последний год у стажеров/интернов/джунов проблемы с трудоустройством еще сильнее чем обычно по понятным причинам
106 2013854
>>13850

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


Ну вот вопрос то и был как правильно нужно устраиваться на галеры.
107 2013865
>>13854
Ищешь тырпрайз в своем городе, ищешь стажировки/практики/вакансии младших без опыта, там даже платят. Иногда.

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

Если тырпрайзов нет, то ищи галеры. Там скорее всего будут мемы вида: сынок, у тебя испытательный срок три месяца без бабла и оформления, потом три месяца без бабла, но с оформлением. Потом тебя нахуй пошлют с очень пиздатой вероятностью или возьмут на ЗП уборщика, но свои полгода опыта ты получишь и сможешь вкатиться в место поприличнее.
108 2013877
>>13865
Стоит ли пробовать в вкатываться на дикое легаси ради опыта? Или забить хуй и сразу пытаться в .net core?
мимо
109 2013883
>>13847
Та вот я собираюсь уволиться, правда собираюсь уже довольно давно.
До этого на другом проекте работал, там было все ок.
Тут еще проблема в том, что я не веб-разработчик, поэтому вакнасий в десятки раз меньше
Но они все-такие есть, так как живу в большом городе.
110 2013884
>>13877
Net.core тоже легасаи, уже .NET 5 есть :)
111 2013896
>>13877
Лучше вкатываться в новье, но поверь, в тырпрайзах не любой мидол понимает разницу между всем этим.
Лучше вкатиться хоть куда, потом уже будет боярином с тырпрайз опытом и сможешь выбирать куда хочешь.
112 2013909
>>13896
Вот этот боярин правильно говорить, вкатываться надо хоть куда-то.

Мимо вкатился в адовое легаси на пыхе, спустя год перекатился на нормальную работу не-на-пыхе
113 2014131
>>13545
>>13514
Кек, Плохо вам. Я с РФ. Устраивался просто после вуза, 0 лет опыта, A1 ангельский, и то со словарем, ну и про канбаны, скрамы и прочее только на парах рассказывали. Вкатился на изи. Сейчас 5 лет опыта. Хорошо однако.
114 2014135
>>13767
Чтобы не писать this. Что ты как тупой? Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this. Эта залупень - раздражает, проще для полей - добавлять _. Даже мелкомягкие в своих современных гайдлайнах прогнулись и так же советуют писать, просто зайди и посмотри их гитхаб.
115 2014138
>>14131
я три года назад так же вкатывался
сейчас таких дохуя и больше, а вакансий раз-два и досвидос
16093642405100.mp41 Мб, mp4,
716x720, 0:07
116 2014179
Пацаны, есть условно интерфейс, который выдает сервисы под типу:
IServiceProvider.Get<T>();

А как называть интерфейс, через который можно задать эти сервисы? Так норм:
IServiceContainer.Add<T>(T instance);
117 2014191
>>14135

>Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this


Кек, это вообще пушка. Использую this исключительно где требуется.

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

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


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

>Если ты начал с this - чисто по кодстайлам - ты должен теперь везде хуячить this


Ну ещё раз добавлю, это вообще пиздец.
118 2014194
>>14179
Не делай такой хуйни.
Сделай метод расширения и назови его как-то связанно с областью которую решаешь и просто используй его.

Допустим, у тебя есть есть охуенный формат: zalupа. Это специальный формат данных, который только ты знаешь как сериализовать-десериализовать. Допустим, тебе в каком-то классе надо сериализатор иметь, а в каком-то десериализатор.Так вот. Ты делаешь метод расширения UseZalupa(), в нем уже все что надо прописываешь и в нужных сервисах достаешь IZalupaSerializer.
119 2014225
>>14191

> Кроме конструктора 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 мелкомягких. Тебя пошлют. Даже если там будет полезный фикс. Я понимаю, что местные чмони-вкатывальщики в жизни ничего сложнее хелловорлда не писали, а коммерческий опыт им только снится, но если однажды ты, по воле случая, попадешь в реальную разработку - поймешь, какую же несусветную хуету ты сейчас несешь.
120 2014273
>>14225
Мудло, в твоем примере у тебя будет:

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

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

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

То есть _ дебилы даже property не умеют юзать в классах, что и требовалось доказать.
121 2014305
>>14273
В примере не было проперти. Ты, дебила кусок, изменил интерфейс класса.
Ну, что говорить - еблан, что привык только хелловорды у себя дома. То что этим ты мог сломать код коллег в 90000000 мест - тебя, еблана не волнует, ведь сложнее хелловрлда ты ничего не писал.
Попробуй, блядь, хотя бы в опенсорс проекте поучаствоват, мудень, вместо того чтобы срать про то что тебе какой-то кодстайл не нравится. Принят и принят. Удобен? Да. Иначе бы он давно помер, как венгерская нотация.
122 2014309
>>14305
Ладно, но я правильно понимаю что _ фанатики, пускай и в лице мелкомягких, считают что ambiguous cases как в твоем примере и подобные лучше решать с помощью naming conventions по типу питоновских, чем через this компилятора?
123 2014318
>>14309
Да, потому что это лучше чем было раньше, когда писали вот так:
m_FieldName
p_PrivatePropertyName
Уж лучше просто _ будет. А, как я уже скаазал, если ты начал this использовать - будь добр использовать везде, чтобы не было разночтений и человеку не приходилось водить мышкой чтобы узнать это поле или переменная.
124 2014326
>>14305
Более того, naming conventions от microsoft не покрывают _ vs this вопрос, так что не надо пиздеть, что это стандарт. Так что давай ссылку от мягких где покрывается этот вопрос.

И да, в стандартах проекта dotnet действительно юзают _. Но у майкрософта не один проект dotnet на C#.
125 2014334
>>14318

>Уж лучше просто _ будет.


Да, я с этим согласен. Ну я считаю что _ - это тоже всё оттуда идёт.

>А, как я уже скаазал, если ты начал this использовать - будь добр использовать везде,


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

Пример с point притянут за уши, так как это изначально кейс где имена филдов состоят из одной буквы.
126 2014351
>>14326

> naming conventions от microsoft


https://github.com/ktaranov/naming-convention/blob/master/C# Coding Standards and Naming Conventions.md#c-coding-standards-and-naming-conventions
Да, там не говорится, что обязательно именно так писать, но это же просто вопрос удобства. Вот серьезно. Что тебе проще в иде _ написать и увидеть все поля или писать this? Плюс, с _ код получается единообразный, в отличии от того что ты вот тут this пишешь, там не пишешь; когда у тебя класс в котором пара методов в 3к строк - держать в голове все поля так себе получается(ыыыы, плохой код, ну да, но что поделать - писал не ты, тебе нужно поддерживать, хули поделать?) и хорошо бы их визуально отличать, this в данном случае проигрывает просто потому что он длиннее и просто отнимает полезное место монитора.
127 2014375
>>14351

>пара методов в 3к строк


Ясно. Ну я так и думал, поэтому переобуюсь в воздухе - _ действительно решает проблему non-SOLID говнокода в пару тысяч строк.
128 2014382
>>14375
Алсо, стандарты это палках о двух хуях.

Например, майки пишут в пункте 27:

>// Avoid


>DoSomething("someString", 1);


>// Correct


>DoSomething(foo: "someString", bar: 1);



Когда по факту нигде такой конвенции кроме где есть optional arguments нет.
129 2014385
>>14382
Хотя мне лень выяснять это методичка от майков или нет. Но вот аргументация

>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 фреймфорку энтерпрайзному следовать и аргументы миксовать где не нужно.
130 2014405
>>14382
ХЗ. Вроде как в своих гайдлайнах, когда я читал, они писали что наоборот вся эта хуйня с именованными аргументами была придумана исключительно для COM-объектов, когда там может быть дохуища параметров, половина из которых - необязательный.
131 2014546
>>13554
с трейни
>>13556
не поверишь, но есть джуны и с 5-6 годами опыта
>>14131
лолкекчебурек. Вообще похуй, что там у вас. Я говорю, как есть. На одно место трейни 30 человек, сито очень жесткое. Выше писали про стэк требований на джуна с GC, b-tree и хотя бы одним фреймворком - это чистой воды правда. Будут песочить на собесе так, что из жопы кефир полезит, ибо рыночек не резиновый, а желающих много
index.jpg4 Кб, 225x225
132 2015023
>>06596 (OP)
Покажите примеры того, чем вы занимаетесь на работах с C#
Над чем работаете, сколько пишите в день кода, и как происходит процесс. Хочу вкатится в офисную работу.

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

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

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

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

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

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

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

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

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

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

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

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

Короче ответьте. Спасибо!
index.jpg4 Кб, 225x225
132 2015023
>>06596 (OP)
Покажите примеры того, чем вы занимаетесь на работах с C#
Над чем работаете, сколько пишите в день кода, и как происходит процесс. Хочу вкатится в офисную работу.

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

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

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

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

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

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

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

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

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

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

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

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

Короче ответьте. Спасибо!
133 2015074
>>15023

>Покажите примеры того, чем вы занимаетесь на работах с C#


Ага, щас прям корпо репу солью

>>14546

>не поверишь, но есть джуны и с 5-6 годами опыта


Земля им стекловатой
134 2015090
>>15074
примеры блядь покажи, у меня есть опыт разработки.
Но я не работал на кого-то, на дядю за оф. зарплату в офисе.
Я не знаю как это вообще. Я спрашиваю эти детали.

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

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

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

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

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

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

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

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

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

Ты специально такие длиные посты написал, чтобы их никто не прочел?
1534982515582.png20 Кб, 1657x97
136 2015779
>>06596 (OP)
Сука, меня уже трясёт. Какого хуя? Он траллит? С & тоже не работает, блять.
137 2015906
>>15779
Возможно нет доступа и запрос возвращает пустой ответ, в котором всё фальсе и он радостно сообщает, что хиддэн фальсе. Хотя должен выкидывать исключение, что нет доступа. Проверь.
138 2015927
Почему без автосвойств { get; set; } в моделе не работает анотация [Key], ошибку пишет мол я не пометил кей.
И вообще нахуя в моделе автосвойства?
Ну да можно делать проверку веденых данных, но вот такие пустые свойства ваще нихуя не делают, что они есть что их нет один хуй.
139 2016351
А можно как то заставить студию в случае ошибки не просто волнистой линией подчеркивать место ошибки а менять задний фон текста?
140 2016360
>>15927

>что они есть что их нет один хуй.


Ну нет. Вон у тебя код не работает из-за того, что ты автосвойства не использовал. И 99% фреймворков, который используют рефлексию будут работать именно со свойствами.
141 2016404
Есть метод, который по заданным параметрам выдает сущность из бд. При этом для этого метода нормальная ситуация, если нет записи с запрошенными параметрами. Посему у меня есть 2 стула:
вернуть налл или использовать bool TryGet(out). Какой выбрать? Казалось бы TryGet лучше, но меня смущает то, что от TryGet обычно ожидают, что он не бросает исключения, а я не хочу скрывать исключения, если там что с бд или еще какой эксепшн вылетит.
142 2016652
>>15927
Потому что фреймыворку нужны эти проперти чтобы замапить данные из бд к твоей модели.
Не хочешь делать их - форкни фреймворк и мапь как-то иначе либо хуяч нативные запросы и делай все ручками.
1.png7 Кб, 247x339
143 2016708
>>15023

> Покажите примеры того, чем вы занимаетесь на работах с C#


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

> Чем вы вообще занимаетесь на работах с точки зрения занятий.


Ну, опишу день. Пришел в оффис. Врубил ПК, проверил почту и меседжер. Открыл студию, первым делом прошелся по TODO что вчера оставил, потом полез в файлик с TODO где лежит глобальный список фич которые еще не допилил. К обеду - делаю пул-реквест, на обеде - либо статьи читаю, либо книжки. Потом - если нет никаких совещаний/митингов/митапов - допиливаю что успею. Иду домой.
Обычно у нас какой процесс работы: конец месяца - смотрим что из глобального готово, что нет, что успеваем, что нет, в зависимости от этого на людей вешаются задачи. Контроль за выполнением идет в своем трекере задач, задача считается выполненной, если тимлид - принал пул-реквест. Если не принял - он пишет замечания и ты допиливаешь пока не примет.

Как-то так.
144 2016864
>>16708
А вы чтоли жирой какой-нибудь не пользуетесь?
Я просто по жире тупо делаю задачи на версию, а потом иногда занимаюсь рефакторингом или читаю всякое.
145 2016880
>>16864
Не пользуемся. В этой конторе вообще только в этом году на гит перешли, до этого в SVN все пилилось. Вместо жиры - самописный трекер задач, но он такой кривой, что его только для глобального трекинга используют, чтобы менеджеры какое-то представление имели, обычные задачи, которые разделены между несколькими кодерами - проще выходит самим порешать кто что когда пилит.
yrWVTx-Vxfo.jpg190 Кб, 960x960
146 2017495
Хочу писать код. Поэтому вопрос. Есть ли специализированные ресурсы для ньюфагов, предлагающие разные задачи и их решение на c#?
147 2017497
Вазап, возник вопрос, можно ли как-нибудь в впфе запихнуть в объект элемент Grid, который содержит в себе некоторые формы?
image.png2 Кб, 306x35
148 2017500
>>17497
То есть возможно ли вот в фигурных скобках указать содержимое грида?
149 2017504
>>17495
Пора бы уже знать что первична задача и под нее выбирают язык.
https://www.codewars.com/
https://www.codingame.com/start
На данных сайтах есть только проверка синтаксиса языков.

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

Вобщем определись зачем писать код а потом уже выбирай язык.
150 2017623
Анончики, вкотился в погромирование в конце прошлого года. Начал с JS. Все давалось супер-легко. Сдал ментору "экзамен" по базовому синтаксису, объектам, функциям, прототипам, наследованиям, классам, промисам. Все задания выполнил с первого раза. На Hexlet 100% выполненных заданий - решил всё сам без каких-либо подсказок.

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

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

Дополню, что у меня нулевые знания математики, потому что в школьные годы забил хуй из-за постоянных драк. IQ 127 по Менсу.
image.png35 Кб, 818x401
151 2017821
Бля пытаюсь в бд добавить модель, не добавляет.
Как отследить где затык происходит?
Еще может быть мб винда не дает изменять файлы? Как запусить проект от имени администратора?
152 2017831
>>17821
db.SaveChanges();
Точно сука блять ебаны рот нахуй(
153 2017841
>>17495
ulearn.me
154 2017964
>>17623
Пошел на хуй отсюда, чмо.
155 2018027
>>17623
Чтоб я тебя больше здесь не видел, псина химкинская!
156 2018032
Просто обновил Visual Studio до последней версии, поставил превьюху .net 6 и прописал в проекте и все работает, ОС Win7x32. Хз зачем, но кайф, я на острие технологий. А у других вечно что-то не работает, еще и билдов под 32 разрядные оси нет.
157 2018063
>>17623
Сука, только попробуй зайти в этот тред снова, и я поломаю тебя как щепку, тварь.
158 2018253
>>18063
двачую адеквата, шлю нахуй вронтенд макаку
1620096862439.mp4509 Кб, mp4,
1280x720, 0:03
159 2018488
>>18032

> Win7x32


> острие технологий

160 2018835
>>18488
сам проиграл с дауна
161 2018961
Поясните дауну плз.
Вот можно в студии создать проект с реактом. Там будут пикрилы, и всё будет работать заебись, можно будет на фронте писать fetch('/api/...') без всяких локалхостов и т.д. Если сделать просто обычный бэкенд без этого всего, и обращаться к серваку с фронта, то повылезает всякое говно типа CORS.
И вот вопросы, можно ли например в докере соединить отдельный фронт и отдельный бек, чтобы он работал так же как шаблон студии? Или это нахуй не надо и все в реале делают UseSpa? В гугле видел всякие реверс прокси через nginx, а как я понял nginx нахуй не нужен, у нас есть kestrel, и видел собственно когда UseSpa юзают и все на этом. Ну или соответственно подрубают CORS, но я думал без него обойтись...
Поясните короче за best practice.
3dquestionmark.jpg69 Кб, 640x427
162 2018976
Пиздец. Рынок реально переполнен. Попытался пройти на стажировку, попытался попасть на стажирову.
150 Кандидатов, 10 человек выберут по результатам тестов, из них после стажировки на джуна берут только 3.
150 - 3. Соискателей в 50 раз больше, чем рабочих мест. На двух других вакансиях даже рассматривать не стали, сказали, что уже набрали штат.
163 2018978
>>18976
от безысходности аж два раза написал
164 2018985
>>18976
150 человек - это еще по-божески. Почитай блог Яндекса, где они из 1600 человек взяли 7 джунов.
5.jpg70 Кб, 1898x950
165 2019177
>>06596 (OP)
Аноны кто знает openGL? Есть проблема со stencil. Есть пирамида, которая вращается в ней нужно цилиндром вырезать отверстие. Отверстие вырезал, но получается следующее.
Код: https://pastebin.com/7piKW6kG
166 2019183
>>18976
>>18985

если все так плохо почему они джунов взяли а не мидлов?
167 2019269
>>19183
1. Джуны никуда не дергаются в течение 1 - 1.5 лет.
2. Джунам можно платить копейки.
3. Человек, который вырос как программист в среде компании, будет намного полезнее, чем более опытный человек, пришедший с другим коммерческим опытом.
4. Джуны - своеобразная подушка безопасности. Этот пункт вытекает из твоего очка первого пункта. Если миддлы съебутся, то джуны будут сидеть на своих местах дольше.
5. На джунов можно переложить много рутинных задач. Повышается качество работы у миддлов.
6. Джуны, в целом - это лояльные КАЛЛЕГИ.

Такие дела.
168 2019272
Аноны, C# и фриланс - несовместимы?
169 2019329
>>19272
Если с юнити - то совместимы.
170 2019336
>>19272
90% заданий на фрилансе, не касающихся вебдева - это написать парсер/постер/заливщик/автоматизатор, как правило под винду и с гуём. C# идеально подходит для этих целей.
171 2019395
>>19336
Кому ты пиздишь? Кому ты пиздишь, чмоня?
172 2019425
>>19183
>>19269
Да ты попробуй еще этих мидлов найти на рынке, это джунов можно через три сита просеивать, а вот мидлов нормальных уже хуй найдешь.
173 2019693
>>18961
Бест практис - nginx как риверс-прокси, фронт - в своем контейнере с еще одним nginx'ом, апи в своем уже с кестрелом.
В реале - никто не делает UseSpa в проектах которые минимально рассчитаны на масштабирование.
Оно норм, когда ты монолит хуячишь или только учишься, но сейчас почти все отказываются от монолитов. Для изучения - норм, но хуйня в том что если ты решаешь поправить апи, то начинается хуета с развертыванием фронта, что замедляет сборку.
В общем, я бы советовал прочитать про докер и как им пользоваться. Разверни пару контейнеров, настрой сетку между ними нормально.
174 2019813
>>06596 (OP)
Есть где-то норм open-source GUI редактор SQLite БД на шарпе, чтобы просто работал с либой System.Data.SQLite.dll и не ебал мне больше мозги?
175 2020204
>>19336
Еще раз попытаешься так обмануть пользователей ресурса "2ch", и тебя ждет плохой конец.
image.png10 Кб, 754x79
176 2020334
>>06596 (OP)
Wpf зелень на связи.
Как можно на уровне кода дать программе возможность взаимодействовать с формой (допустим TabItem), через событие Click MenuItem'а ContextMenu, который принадлежит данной форме. В моем случае по нажатию правой кнопкой мыши по элементу, вылазит контекстное меню, где есть вкладка "удалить" и по нажатию на этот айтем, элемент, владеющий данным ContextMenu должен удаляться.

Помогите пажаласта, вот пытался так, но я думаю это неправильно, тк наверное необходимо задавать вручную свойство Parent?
image.png11 Кб, 822x96
177 2020373
>>20334
Починил, мб кому интересно:
178 2020495
>>19395
>>20204
Поясните ньюфагу, в чем соль? Сам юзаю сисярп + селениум для веб автоматизации в личных целях, почему для фриланса это не актуально?
1620222655480.jpeg48 Кб, 307x327
179 2020539
Открываешь проект, а там пикрил, твои действия? Что мне с ней делать?
Блять, нахуй нужна эта ваша 22 студия, почините ебучий нугет, это просто пиздец - полезешь туда что-то ставить/менять - 95% что-то пизданется/отвалится/не станет.
180 2020547
>>19425
разве джуны через год-два не должны ставать мидлами?
еще пять лет назад джунов было жопой жуй, значит сейчас должна быть ухева туча мидлов а в реальности мидлов почему-то только меньше, какого хера? куда джуны деваются, хуле они в мидлов не превращаются?
181 2020592
>>20539
Ставь rider и .net sdk версии, совпадающей с версией проект.
182 2020616
>>20495
Потому что на C# минимум работы на фрилансе. Повезет, если ты найдешь постоянного заказчика. Это не считая того, что на шарпе даже в офисах работы меньше - в 2-3 раза меньше, чем на Java и в 3-5 раз меньше, чем на JS.

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

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

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

Напрашивается очевидный ответ (как и писал выше) - для души. Если хочешь зарабатывать - выбирай другое направление.
183 2020635
>>20616
Шарп дешевше для РАБотодателя..
184 2020707
>>20616
Насчет ЗП кстати не сказал бы что разница есть особая. Но список технологий который нужно знать, чтобы вкоиться - действительно больше.
Другое дело - шарп же охуенен. Просто божественен. Я не понимаю как можно попробовав шарп - всерьез выбирать что-то кроме плюсов.
185 2020720
>>20707

>Насчет ЗП кстати не сказал бы что разница есть особая


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

>Я не понимаю как можно попробовав шарп - всерьез выбирать что-то кроме плюсов.


Ну вот это и есть "для души". По правде сказать, нахуй бы забыл про перехайпленный среди погромиздов линукс-хуинукс, если бы этого не требовал кабанчик (хули, стек слишком большой).
image.png57 Кб, 792x693
186 2020819
187 2020822
>>20819
ок, допустим другая функция не может видеть что внутри другой функции, тогда мне лучше выше мейна это запихнуть всё, а в мейне только результат функции?
188 2020852
>>20547
Потому что часть джунов тупые
Потому что часть джунов получают 80-100к и им норм
Потому что часть джунов перекатывается в тестирование/аналитику/etc
Потому что рынок растет адскими темпами и скорость пережевывания мидлов выше, чем скорость их появления
189 2020874
>>20852
Этот шарит. Ещё куча джунов перегорает, и никакие деньги в перспективе им не интересны. Это не считая того, что в данном моменте они получают копейки.
190 2020877
>>20616

> SQL, JS, React, Redux, ts и т.д.


Кроме решеток знаю только СУБД и не сказать, что как бог.
Проблем с поиском нет.
>>20720

> В вроттендеры (или даже фуллстекеры) можно условно за полгода вкатиться. С C# такая хуйня не пройдет.


Вкатился за месяца три без особого напряжения.

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

>Вкатился за месяца три без особого напряжения.


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

300кк/наносек ждут вас!
192 2020890
>>20887
хуйню из головы не выдумывай
193 2020899
>>20890
Ну ответь честно: способен ли новичок, который не имел никакого опыта в программировании, вкатиться в C# за 3 месяца и найти работу? У кого еще из нас хуйня в голове?
gj4385j483523.jpg189 Кб, 880x1100
194 2020950
Аноны бекендером можно стать без знания вузовской математики ? Как не открою книжку по алгоритмам там сразу пиздецкие формулы идут начинаю комплексовать. Пытаюсь понять как оптимально подойти к изучению. Я бумер и пердеть пару лет в стул изучая матан у меня времени нет. Только если как то параллельно наверстывать по вечерам я хз.
195 2020979
>>20899
Да.

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

А технарь - изи
196 2020981
>>20950
Да в тырпрайзе ты будешь JSON-ы между апи перекладывать, всем похуй на алгоритмы, если это не узкоспециализированная хуита типа поиска, распознания, ну или какого-нибудь хуйлоада
197 2021133
>>20979
Лол. С таким же бэкграундом технарь в 2 раза быстрее вкатится в веб. И не пизди, что это не так.
20210506093626.jpg54 Кб, 1022x402
198 2021160
В треде есть энтити гуру?
В приложении есть 2 варианта подключения к базам, либо sqlite либо mysql. Можно ли использовать как нибудь один и тот же ентити контекст, т.е. по входящей строке определить передавать в base SQLiteConnection или MySqlConnection чтобы не плодить контексты и код?
199 2021161
Блядь пиздец, джуном нереально устроиться. Где блядь этот ебучий опыт брать?? Требуют фуллстек знания, да ещё и нахуй не берут. Ойти ойти, нехватка кадров, пидоразы блядь. Как бесит это, в ебало давать надо всем этим пиздоболам.
200 2021166
>>21161
А ты что думол. Если ты хочешь вкатиться в C# ДЖУНОМ, то вообще забудь. Потратишь минимум 1,5-2 года на вкат. По сути шарпист-джун чаще всего это Junior+. То есть должен иметь опыт в 3-6 месяцев.
201 2021170
>>21166
какие тогда варианты, пыхпых, или вронтенд?
202 2021186
>>21170

>пыхпых, или вронтенд?


Ты сам ответил на вопрос. Это очевидные варианты. Вакансий в 5 раз больше, ЗП выше, стек требуется меньше, полно работы на фрилансе.
203 2021200
>>21186
вронтенд, по-моему хуй влезешь, овердохуя желающих, но js в любом случае требуется
204 2021326
>>06596 (OP)
Смотри, вот БД test.sqlite3, есть .NET Framework 4.0, и есть System.Data.SQLite.dll

Как с ней работать-то, чтобы было попроще?
205 2021354
>>21326
Нарыл вот такое вот API: https://github.com/donet5/SqliteSugar
Вроде робит.
Кто-нить сможет пришпандорить его в наноборду? А то я ваще рукожоп.
206 2021413
сап, подскажите, я и мой друг сейчас изучаем С# есть задача реализовать подобие интернет магазина с базой данных которая содержит пользователей, товар и заказ. Как сделал я, я создал класс DB, конструктор которого принимает любой SQL запрос который я храню в SqlCommand, так же есть метод для добавления SqlParameter и метод Exec который выполняет подключение и команды SQL запроса. В классе например товара я могу создать объект DB, скормить ему SQL запрос добавления нового товара и всё работает отлично. Как поступил мой друг, он для каждой таблицы базы создал классы взаимодействия с ней, которые наследует от абстрактного класса который представляет из себя некий CRUD. Как по мне это не очень правильно потому что например в будущем для добавления нового функционала например сортировки таблицы по каким-то параметрам придётся писать реализацию этого метода, когда я могу просто написать SQl запрос и ничего не поломается и всё будет работать хорошо, рассудите нас плиз
image.png78 Кб, 1324x507
207 2021438
Можно ли тут как-нибудь изъебнуться и конвертировать тип object в тип имеющая переменная BluePrint?
208 2021537
>>20874
>>20852

>Потому что часть джунов получают 80-100к и им норм


так выше же писали что джунов сейчас через три просева принимают на работу за еду
209 2021563
>>21413
Freeman от корки до корки пройди, все вопросы отпалут
210 2021568
>>21537
На старте да,
через полгода они почему-то начинают хотеть деняг и некоторые даже начинают получать
211 2021585
>>20852
А тупойй джун, это какой?
212 2021658
>>21563
как это читать? куча нелепых картинок, куча каких-то человечков с предложениями в облачках, нет ничего по этой теме написанного в более строгом стиле?
213 2021683
>>21160
Бамп
Screenshot20210421145106.png161 Кб, 1332x469
214 2021709
>>20547

>разве джуны через год-два не должны ставать мидлами?


А каким образом джуны должны становиться мидлами, когда они вообще ничему не учатся? Местные двачеры доказали, что они могут 3.5 года джейсоны перекладывать и считать себя при этом синьорами, которые обсираются от двух алгоритмических задачек. Зато гонору, ебать, "бизнес-задачи" ("Вань, надо прототип написать, сделой!" (делает в конце спринта за пять минут и потом ещё месяц ковыряется в носу без дела, воображая себе что это и есть карьерный рост)).
215 2021830
>>21658
Я писал про Adam Freeman - Pro Asp Net Core 3, ты видимо что-то другое нашел
216 2021870
metanit достаточно для старта в шарпах, или ещё книги нужны?
217 2021993
>>20819
Блин, чел, вот ты прям мне настроение поднял.Всю неделю бомблю с того что у меня говнокод, но посмотрел на твой и сразу легче на душе стало. Спасибо.
218 2022010
>>21160
Если ты под одним контекстом подразумеваешь один и тот же класс - да, можно. Делается это с помощью DbContext(DbContextOptions) в опциях задаешь провайдера. Если ты хочешь у уже созданного объекта менять провайдера, считай что нельзя.
Чтобы было проще пользоваться - сделай себе класс фабрику для контекстов.
121.png31 Кб, 826x698
219 2022064
>>21160
Можно так. Например.
Можешь написать парсер(скорее пару регулярок, лол) который по строке догадается какой правайдер нужен.
220 2022211
>>21870
МСДНом заполируй и норм будет.
221 2022226
>>21870
Кури CLR via C#. Эта хуйня - обязательна. Попадешь на мой собес и хотя бы один раз запутаешься в кишочках - затроллирую до смерти.
222 2022242
>>22226
понял, принял
turned-on.gif2 Мб, 640x480
223 2022334
>>22064

>else if

224 2022373
>>22064
Паттерн матчинг не завезли вам чтоли?
225 2022460
>>22373
Он не нужен
226 2022553
>>21413
Есть пример кода, чтоб на .NET 4.0 завелось? Заебался уже гуглить.
227 2022569
>>19395
>>20204
Что за обострение?
Зайдите на любую фриланс биржу.
Там вебдев (в основном PHP запилить форму обратной связи/модуль оплаты) и написание тех самых парсеров/автоматизаторов/заливщиков.
1620382605860.jpeg134 Кб, 1280x465
228 2022882
Вы шяс охуеете какую я хуиту словил.
.net 4.5.2, wpf, в окне есть винформ хост с датагридом (больше нихуя нету с винформ). Ловлю пикрил эксепшн при, внимание, попытке заскринить окно шиндоусом (win+shift+s). Ловлю из-за датагрида (в эксепшене пишет что он приходит с system.windows.forms).
Там на датагриде какие-то дефолтные хоткеи есть или что?
229 2022892
Причем тригериться эксепшн как-то вообще рандомно, но именно после трех кнопок, на две любых остальных кнопки все норм.
>>22882
230 2022907
>>22553
что тебя конкретно интересует?
20210507141343.jpg106 Кб, 918x597
231 2022934
Включил отладку машинного кода, я правильно понимаю что это баг шинды? Спасибо дядь Билл, задеплоил приложуху.
>>22892
20210507142446.jpg7 Кб, 374x84
232 2022942
>>22010
>>22064
Бля, спасибо конечно что отписали но я легаси холоп.
233 2023312
>>22907

>что тебя конкретно интересует?


Конкретно, интересует то, как работать с базой данных с через этот System.Data.SQLite.dll, и как вообще его юзать на шарпе.
Пример работы с базой, короче, нужен, рабочий.

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

>прошел год


>И втихаря переписал


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

Как же мне горит с таких ПЕРФЕКЦИАНИСТАФФ))00))-ебланов.
236 2023458
>>23446
А с чего у тебя горит-то, лол? Тот проект я делал соло. Оценивали мою работу по факту того, что оно делает то что от этой хуйни ожидают, не падает, не проседает по перформансу и не течет как сука. И никто, кроме меня, не знает как оно работает. Я переписал, почитав умных книжек, разбил на слои, убрал синглтоны со статикой, добавил тестов и вообще сделав все как книжках советуют. Для потребителя - ничего не поменялось внешне - оно так же работает и делает все то же самое, внещшний апи, поменялась внутренняя часть.
237 2023487
>>23458

> А с чего у тебя горит-то, лол?


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

И кстати, твой сегодняшний код через год тебе тоже говном покажется.
238 2023490
>>23458
Еблан ты тупой, потому что ты наемный рабочий, который выполняет задачи бизнеса. Выполнил задачу? Все работает? Все довольны? Не трогай, блядь! Из-за одного такого же дегенерата нашему отделу пришлось слышать ор директора, которого выебал в жопу недовольный заказчик, поймавший баги в "ОПТИМИЗИРОВАННОМ КОДЕ".

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

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

Я завидую терпению твоего тимлида. Представляю, как у него сгорела жопа.
239 2023496
>>23438
>>23458
АХАХАХАХ. Анон, я очень надеюсь, что это жирный вброс, иначе я потеряю верю в циничных двачеров. Но ЕСЛИ это все же правда и произошло недавно, то извинись перед тл и скажи, что осознал свою ошибку - скажи, что посмотрел на ситуацию со стороны. По крайней мере, хоть ультрадураком в глазах тл перестаешь быть.

>>23487
>>23490
Очевидные вещи пишите, анончики.
240 2023747
>>23490
>>23490
Я не лил в прод, лол. Я же не совсем дебил. У нас просто есть репозиторий для промежуточных версий, в который я и лил, потом, если поступает требования запилить новую полноценную версию, оно допиливается и эти промежуточные версии переносятся в альфу, альфу отдают на внутренние тесты отделу тестирования, когда внутренние тесты прошли - отправляют лояльным заказчикам на бета-тесты, в прод льется только когда все замечания бета-теста исправлены, и в прод идет только то что все это прошло и замечания устранены.
Да и не забаговало бы, я первым делом сделал тесты и покрыл ими весь код что собирался менять.
241 2023751
>>23438

>И втихаря переписал


Я заскриню этот пост, чтобы показывать неофитам на работе, как делать не надо. Как тебе это вообще могло в голову прийти?
242 2023752
>>23751
Очевидно как. Я работал над другим проектом. Мне все нравилось. В один из дней на обеде решил сравнить с тем как писал раньше. Охуел и решил переписать.
243 2023753
>>23752
Ты болен.
244 2023792
>>23312
Блядь, так никто и не ответил. Что-то вроде такой вот хуйни https://github.com/jlsbollman/SQLiteHelper/blob/master/SQLite3Database.cs только более функциональное, есть?
245 2023797
>>23792
Имеет ли смысл закрывать соединение с базой каждый раз и открывать ег снова, при каждом действии, или однин раз открыть его и оставить его открытым, пока работает прога?
Screenshotselect-area20210419201152.png262 Кб, 518x430
246 2023815
Пчёлки, есть беда, я дегенерат, тяжело задачки даются, как исправить? порой вроде понимаю задачу но хожу во круг неё и не могу решить, как решать?
247 2023839
>>23815
Смотри как решают похожие задачи другие и перенимай опыт.
Чтобы высирать решения быстро - нужно опыт иметь.
Допустим, я вот упарывался олимпиадами еще со школы, и верчу алгоритмы на хую, но когда меня просили в качестве тестового - запилить консольное приложение, что должно файл по рестапи отправлять, я бсод поймал и начал с написания реализации HTTP, все по спецификации, хуячил с сокетов, в итоге таки за неделю нахуячил отправку файла, а мне сказали - что я хуйню сделал и нужно было просто взять HttpClient и отправить ебучий файл по апи. Ну или другой пример подобного бсода - попросили сделать для крестиков-ноликов серверную часть, ну, я-то у мамы умный - одномерный массив для хранения состояний, хуяк-хуяк и готово за полчаса, и меня послали, дескать - а вот мы захотим делать трехмерные крестики-нолики или вдруг нужно не поле 3x3 использовать, а 10x10, а у тебя там все гвоздями приколочено. В общем, я много раз обсирался, прежде чем первую работу нашел, и просто после фейла - лез смотреть как подобное нормальные люди делают, ну и таки в определенный момент решил не выебываться и таки начать читать книжки типа Совершенный код и прочую, казалось бы, залупистику, которая почти не поясняет за технологии, а скорее философией является.
Короче, к чему я. Опыта набирайся. Смотри как другие люди решают задачи, не копируй их решение, а попытайся понять, почему они так сделали, какие минусы и плюсы такого подхода, что тебе в нем нравится, а что - нет. Если само решение не понимаешь - трать время на наращивание базы.
Ну и да, порешай на кодфорсе-кодварсе-литкоде задачки, пользы коммерческой не особо много, но там много интересных задачек, над которыми можно посидеть-подумать, плюс ты делаешь свое, потом можешь посмотреть как другие делают и спиздить понравившиеся техники, ну или сравнить со своим решением и потешить чсв, что ты сделал пизже.
Screenshotselect-area20210419201840.png337 Кб, 568x494
248 2023857
>>23839
спасибо пчелик, попытаюсь щас по твоей инструкций сделать, как рас много времени имею, выходные + в понедельник не надо на работу , если получится что нибудь отпишу в тредисе
249 2024473
В .NET 6 будут какие-то большие изменения и есть смысл ставить превью и вкатываться в си шарп в нем? Или хватит .NET 5?
250 2024543
>>24473
Тебе что бы вкатится и фреймворка 2.0 хватит
251 2024621
Сап ананасы! Имеет ли смысл откликаться, на вакансий которые требуют опыт работы, хотя бы год? Если нихуя опыта нет. Или это бессмысленно?
252 2024658
>>24621
Да. У меня 3/4 собесов были как раз на вакансиях с 1-3 годами опыта на хх. И все 4 джунские. На стажёров или сразу отказы или после тестового в виде теста/расскажи о себе, хуй знает почему.
В резюме все честно - "без опыта". Но есть вышка кста, если это роляет.
253 2024672
>>24658
блядь у меня вышки нет, а давно ты устраивался джуном, на такие вакансий?
254 2024676
>>24658
я правильно понял, без опыта, подавался, на вакансий с требованием 1-3 года опыта работы?
255 2024681
>>24676
Да
>>24672
Скажу так, в этом году 2021.
256 2024696
>>24681
рад за тебя, в каком стеке? сишарп?
257 2024703
>>24621
ну а ты сам то как думаешь ? что чуйка подсказывает ?
258 2024712
>>24681

>в этом году 2021.


Эдик ты ?
259 2024714
>>24703
думаю сишарп, ну мб и что другое, поэтому и интересуюсь
260 2024717
>>24696
Фуллстак с сишарпом
>>24712
спок
261 2024720
>>24717
спасибо за ответ, буду знать
262 2025059
>>06596 (OP)
Возможно не туда пишу, но как мне авторизоваться в аккаунте телеграм, используя файлы? C#
263 2025135
>>23792
Вот какую шнягу нашёл: https://github.com/Tuahaca/SQLite_Connector/blob/master/DataAccess.cs
Вроде робит, но этого мало. Это что, всё руками хуярить, блядь?
264 2025226
В чем разница инициализации переменной до вызова конструктора и внутри него? Нахуя вообще такой дублирующий друг друга функционал?
image.png92 Кб, 815x1036
265 2025721
Пишу класс-обертку для аналитики игры. И мне не нравится, что нет единого стиля. С одной стороны методы, которые как бы реагируют на какое-то событие(OnBuyCoinPack, OnGetLivesFromReward), с другой стороны методы, которые прямо указывают, что отправляют данные(SendRoundsPerRoom, SendPlayerLifetime). Каждый метод отправляет 1 единственное событие на сервер.

Как бы это все привести к единому стилю?
266 2025737
>>25721
Дженерики скорее всего. Если конечно Я правильно понял твое слово "стиль".
267 2025746
>>25737
В плане именования методов. Думаю, их нужно все привести к виду "SendЧто-тоТам".

OnGetCoinsFromCoinPack -> SendCoinsGotFromCoinPack
OnBuyChargesPack -> SendPurchasedChargesPack
268 2025768
>>25746
Лутбоксы смотрю есть. https://habr.com/ru/company/netologyru/blog/506146/
269 2025797
>>25721
Зачем тебе такой толстый интерфейс? Ты уверен, что его нельзя разбить на более мелкие?

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

Ну, банально, вот то что ты в 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(); }

Затем пара фабрик, пара билдеров и если уж так нужно такой вот интерфейс иметь - фассадированием это все делать.
def.png4 Кб, 334x110
270 2025930
Не будет ли это ошибкой?
271 2025942
>>25930
нет
272 2026150
Я бы вкатился, но в моём городе всего 1 вакансия и то только для помидора.
273 2026153
>>26150
Вкатывайся сразу на сеньера.
274 2026158
>>25746

>Думаю, их нужно все привести к виду "SendЧто-тоТам".


Для eventHandlers я лично всегда пишу приставку On*. Но как анон выше сказал я бы разбил интерфейс на несколько исходя из регионов.
275 2026175
>>25797
В целом - энтерпрайзом запахло.

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

То есть если у тебя 350 event'ов в игре, через твой дизайн у тебя будет в фулл классе 350 наследований и ебанутый поток факторис.
276 2026209
>>26175

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



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

> То есть если у тебя 350 event'ов в игре, через твой дизайн у тебя будет в фулл классе 350 наследований и ебанутый поток факторис.


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

Может быть я не прав. Какое ты бы решение предложил?
277 2026210
>>26209
Да, моя хуйня не учитывает возможность передать хендлерам параметры в конструкторе. Но я не это решение за 5 минут накидал.
278 2026300
Наверное, платина, но спрошу. Что посоветуете почитать для джависта, желающего перейти на шарп? Многие вещи похожие, потому не хотелось бы тратить время на то, что уже понятно.

Алсо, еще удивило обилие вакансий фуллстеков с шарпом на бэке. Почему так? Наверное, делит первенство с нодой и пыхой. Джавы там меньше, например. Шарп не настолько энтерпрайзнутый исторически и больше используется в малых/средних проектах с вебом?
279 2026362
>>26153
Без опыта то, конечно, можно.
280 2026545
Думал, что C# охуенный кроссплатформенный язык, и что уж на любой Win10 он точно заработает. Писал себе код в .Net 5, пользовался по работе.
Возникла потребность обеспечить коллег одной своей прогой, а оказалось, что рантайма .Net 5 нихуя ни у кого не установлен ни в Вин10, ни в Вин7, и админских прав ни у кого нет, и оказалось, дотнетовский екзешник ни у кого не работает, кроме меня.
Только Net Framework 4.8.
Есть ли в студии опция автоматически даунгрейдить весь код с нет5 в фреймворк 4.8? Весь код мой. Либ, кроме стандартных, не использую.
И когда кстати Вин10 у всех автоматически проапгрейдятся с добавлением свежего рантайма?
281 2026561
>>26545
хы, да кому нахуй из нормисов нужен, твой .NET5. По сабжу - нужно было не говно на десктопе месить, а как белый человек деплоить в облако или хотя бы на виртуалку
>>26300

>джависта, желающего перейти на шарп


ебнулся, парень? Одумайся и беги
282 2026724
>>26545
Коллеги кто по професси? Если программисты, то сразу посылай нахуй, а лучше сам иди в пизду оттуда.

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

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

Более того, при чём тут кроссплатформенность если речь про отсутствие нужной версии на машине.
283 2026768
>>26561

>ебнулся, парень? Одумайся и беги


Щито так? Там все плохо?
284 2026783
>>26545
поставь Self-contained в настройках деплоя
285 2026828
>>26768
Нет, он врёт, но конечно в .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 - как у меня, где в принципе есть всё со своими минусами и плюсами ЗАТО ШВАБОДА.

Джаву не юзал почти, но осуждаю.
286 2026848
>>26828
Кароче если хочешь нормальный .NET - сразу смотри чтобы в вакансии было мало десктопного говна/.NET Framework'а.

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

Гнилой энтерпрайз такой стэк себе не поставит, не осилят.
287 2026909
>>26768
обычно с .NET в java перекатываются, ты видимо исключение. Не смотри на вот таких долбоебов, как >>26828

>Нет, он врёт


>Джаву не юзал почти, но осуждаю.


>на работе до сих пор разгребаю легаси WinForms 2003 года


>пропихнуть F# в энтерпрайз


Они тебе тут расскажут, что на .NET можно в космос улететь. Смотри вакансии в своем регионе и смело дели .NET на 3, если не хочешь говно жрать с юзлес парашей, как ПОЦиент выше.
Не хочу разводить холиваров насчет .NET vs Java, но java - это как стандарт качества. Все остальное - завидный пердежь со стороны параши.
288 2026946
Анон, есть где-нибудь списочек заданий для тренировки основопологающих вещей, типа работы с Деревьями выражений/делегатами/потоками/линк/тд. Буду очень благодарен.
289 2026953
>>26946
Напиши препроцессор, компилятор и линковщик си на шарпе. Базарю, и про деревья выражений и делегаты и линк с потоками узнаешь.
290 2026954
>>26909
И что-что WinForms? На жабе там говна ещё больше легаси говна поддерживать, а .NET5.0 - пофикшенный дот-нет, это наше всё.

>но java - это как стандарт качества


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

>обычно с .NET в java перекатываются


Ещё раз, ты долбаеб в любом случае, ибо Java и C# - это легаси ебаное, поэтому только долбаебы в Java перекатываются в 2к21, C# туда же.
291 2026955
Всем привет. Надумал вкатиться в разработку. Ранее был версталой, далее manual qa. Пробовал себя везде абсолютно, даже кладовщиком когда-то в яндексе поработал, лол. Короче осознанно пришёл к выводу, я вижу себя онли в разработке.
Выбрал c#, т.к. интересно работать с десктоп + есть опыт в вебе, если что, туда скакну.

Выбрал книгу - Язык программирования C# 7 и платформы .NET и .NET Core Троелсен, Джепикс. Что можете о ней сказать?
И ещё, в 26 лет вкатываться поздно или нет?
292 2026960
>>26953
Я пока что зеленый, настолкьо, что CLR не прокурена, лишь пара-тройка уроков с ютуба + фундаментальные знания с шараги.
Не думаю, что такая работа сейчас мне по плечу
293 2026965
>>26955
Вкатываться никогда не поздно, друг-анон, главное - упорный труд и мой тебе совет - обучение возможно лишь при выходе из зоны комфорта, поэтому ты свернешь все горы, если поставишь цель, удачи)
294 2026972
>>26960
Та там нет ничего сложного на самом деле. Простую версию ты бы, я думаю, просто прочитав спецификацию языка - смог бы запилить без особых проблем.

Ну да ладно. Тогда вот тебе другой советик: иди на CodeWars и решай задачки оттуда, но чтобы усложнить задачу - делай к задачкам гуй простой, например на формах или ВПФ.
295 2026977
Эх. А я так хотел чтобы мне пояснили что я не так спроектировал в этих вот своих маняфантазиях:
>>26209
>>25797

Я-то сам - студент обычный и было интересно послушать как сеньеры-помидоры пояснят мне, что я говно. А не пояснили(((
296 2026980
>>26954

>И что-что WinForms?


есть ли смысл дальше спорить с этим? Ладно, сегодня хорошее настроение

>java на 5 лет отстает


иследование анонов с 2ch?

>F# в своей нише живет


3% - F#, 97% - python. Зафиксировали нишу

>в Java перекатываются в 2к21


А кто говорил, что нужно в Java перекатываться? Сейчас есть по перфомансу и спросу лучше языки, поэтому их спрос и падает
>>26955

>интересно работать с десктоп


он мертв, забудь
>>26960
сто раз задумайся, прежде чем слушать двачера. Тут зеленых 90% сидит, они тебе еще не такого насоветуют. А копни глубже - сидит 16 летняя чмоня, которую в шараге деды дрочат низкоуровневые реализации воплощать в жизни. Проскроль выше, там и TCP свои пишут и колеса изобретают
297 2027003
>>26980
WinForms - умирающее говно, но которое до сих пор встречается на проектах просто потому что оно было популярно и активно юзалось. И я сказал, что точно так же в жабовской экосистеме. Новые проекты на формах уже никто не делает, да и в основном новое сейчас пишут на линуксе для веба на .NET5.0.

Лучше объясни мне почему ваше говно-поделие жрет ресурсов в 10х нет кора, а перфоманс средненький то, и не дотягивает до майков.
298 2027004
>>27003
Синий на пике - ASP NET CORE
Фиолетовые - Java Spring / Tomcat.
299 2027005
>>26980
А зачем тогда щас шарп нужен? Для веба? А какую роль он в вебе играет? Есть же php, python, go
300 2027007
>>27005
Потому что нихуя больше нет.

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

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

>php, python


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

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

Итого: Go > .NET > Java/Scala > говномоча > всё остальное.
301 2027012
А мне говорили Го как первый язык это пиздец говнище
302 2027013
>>27007
Ну нахуй ваше го с его кодами ошибок. Говно мамонта какое-то.
303 2027014
>>27005
Все просто. Попробовав писать для веба на шарпе - ни один здоровый на голову человек - не захочет писать на ПХП, а уж тем более питоне или го.
Собственно - вся суть. Шарп - охуенен в плане ощущений от написания на нем кода. Все удобно, все отлично, и перформанс и безопасность и инфраструктура.
Долгое время единственное что останавливало кабанов от использования шарпа - ебля с запуском на линуксах и вся эта хуйня что тянулась вместе с шарпом, но, к счастью, с появлением core - это перестало быть проблемой.
304 2027015
>>27012
>>27007
Да и го к тому же щас актуальность теряет, он типа похайпил и всё
305 2027018
>>27012
Да, синтакс говнище, и до сих пор дженерики вроде не завезли, я бы его не юзал вообще, но для веба-бэка он архитектурно самое-то.

>>27007
306 2027024
Я пишу на .NET только, но Go - это concurrency по типу Эрланговской + перфоманс NET Core, а вот всё остальное не очень.
307 2027038
Зачем нужны автогеттеры и автосеттеры? В чём их смысл? Это же просто бойлерплейт на всякий случай, который в 99% случаев никогда не пригождается. Карго-культ какой-то ебать рот.
308 2027054
>>27038
Для структур, чтоб не писать бойлерплейт. Сам же сказал.
309 2027059
Окей, если по вашему все языки нахуй умирают, то че учить то?
310 2027063
311 2027074
>>27038
В том, что выставляя наружу поле - ты открываешь реализацию класса. Это, как минимум, небезопасно. К тому же - внутренняя структура класса - может меняться довольно активно, в то время как интерфейс должен оставаться неизменным. Если, допустим, ты вынес возраст в публичное поле - ты, по идее - не должен иметь возможности потом заменить его на свойство, а если ты не можешь заменить его на свойство, то ты не имеешь возможности затем добавить банальную валидацию в муттаторе, в итоге - долбоеб-вредитель возьмет и укажет возраст человека отрицательный, у тебя какая-то остальная логика, что завязана на возрасте пойдет по пизде и потом ты заебешься это все искать и править.
Это не говоря о том, что у тебя может быть так, что наружу торчит одно, а не деле там какая-то хитрая логика.
312 2027082
>>27059
Standard ML
313 2027093
Сап, нужны ваши самые большие говняки, которые вы встречали на собесах. Небольшое превью - завтра нужно будет собеседовать чела, который уволился с прошлого места, т.к. ему не дали сеньера. Нужно ему указать его место под солнцем, загнав самыми задроченными вопросами. Quiz и вопросы по самому языку - думаю для него будет плевыми, вот мой список критериев:
1. Из .NET только # (спрашивать по F или десктоп - имо тупо, т.к. проект на MVC/Core);
2. Моя часть - только #, но нужны вопросы глубокие, на уровне CLR/CLS с MSIL (только не вопросы по командам IL, это тупо);
3. Чем свежее, тем лучше. Спрашивать по асинхронным паттернам .NET 3.5 тоже не торт.
У меня в мыслях - это любимая асинхронщина с TAP паттерном, рефлексия в рамках рантайма приложения и какой ни будь вопрос по созданию своего Value type.
Подкиньте самые каверзные вопросы, которые вам задавали студентота и джуны лесом
314 2027096
>>27093
Попроси его сложить два числа и начни его хуярить, что неправильно делает.
Если сломается - нахуй таких слабых.
315 2027113
>>27093
Ну, для примера, спроси его про финализаторы. Можешь хоть в лоб: почему при создании своего финализатора - время на создание объекта увеличивается в разы, как избежать, что происходит. Можешь этот вопрос завуалировать.
А вообще - если вам он не нужен как сеньер - так и скажи: нам нужен крепкий мидл на такую-то вилку. Пытаться как-то там принизить, а в результате попасться на какого-то задрота, который действительно тебя опустит - тебе же хуже, потому что ты себя чмом как в его глазах, так и своих выставишь, это не говоря о коллегах, которые будут видеть, что ты срешь себе в штаны, а в конце весь обосранный говоришь, что человек не подходит.
316 2027126
>>27113

>про финализаторы


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

>так и скажи


я ничего говорить не буду, кто нам нужен. Для этого есть ПМ и HR, мое дело - отсобесить. Сказали придет сильный чел из известной конторы, нужно спросить "что нужно". В том то и проблема, что я не могу спросить какую то дичь из спецификаций, нужно брать что то из жизни. Но твой вопрос с GC в диспоузе натолкнул на хорошую мыль - спросить по marshal class - для чего, зачем? InteropService в целом, как оборачивать management в unmanagement. Вопрос по structLayoutAttribute тоже пойдет. На закуску будут лики - чем и как ловить, что создает. Как раз есть блоки Unmanagement кода на проекте, пусть скажет, как с ними работать.
Какого говняка еще подкинете?
317 2027149
>>27126
Чел, извини, но мне кажется он тебя в говно размажет судя по твоим познаниям .NET и того что ты на дваче спрашиваешь советов. Отдай собес людям более опытным.
318 2027155
>>27126
Если задача - чтоб чел не пошел к вам на работу - спрашивай IL парашу, которую ты и хотел спрашивать. Нормальные люди увидят такое собеседование и сами скажут "спасибо, пошли вы нахуй".
319 2027156
>>27126
Более того, я таких говен нахавал с интеропом, что мне хочеться просто взять и уебать, и если ты несёшь интероп в продакшн в 2к21 - поздравляю - ты джун энтерпрайзный. Не позорься.
320 2027158
Бля, только сильнее запутался. Может и не стоит с жабы соскакивать, хуй знаает.
А вообще, у дотнетчиков энтерпрайза очень много?
>>26300
321 2027162
>>27149
>>27155
>>27156
я писал о том, чего бы спросить, а получил размазанные сопли по капоту. Напрягите извилины и выдайте, что нибудь стоящее. Я же знаю, что тут не только студенты и джуны сидят.
322 2027164
>>27162
Напряги извилины и дай ему алгоритмическую задачу на листке бумаги , все остальное - вода.
323 2027181
>>27093
Попроси его написать на листке бумаги колоночную СУБД. Дай ручку без чернил и каждые 30 секунд хмыкай и делай недовольное лицо. Базарю, так ты сразу попустишь зазнавшегося и покажешь его место.
324 2027193
>>27162
Если челик шарит в high-perfomant .NET, то по .NET его подъебать будет очень сложно, скорее он себе ещё десятку зелени накинет, если прощупает незнание со стороны кампании.
325 2027196
уже сам пожалел, что задал тут вопрос
>>27164
в чтение умеешь? >>27093

>Из .NET только #


>>27181
как и другие мывамперезвоним, которые перданули выше

>студентота и джуны лесом


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

>десятку зелени накинет


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


какой еще "кампании"? Я выше писал, как будет собес проходить. И про какую десятку речь? Ты вилки мидла-сеньера не знаешь?
Пиздец тут комьюнити сидит.
Всем идиотам с инкрементом хромосомы - вы сути собеса не понимаете или никогда не собесили. Если человека приглашают пособеседоватся - это повод, что нужен человек и его хотят взять на работу. Я и сам иногда прохожу собесы, чтобы узнать, что могут интересного спросить или предложить.
Всем обиженным, которые не прошли на место из N человек - оставьте свои всхлипы при себе.
Отвечать на подобного рода посты не вижу больше смысла, если подкинете чего годного и интересного - буду благодарен.
326 2027199
>>27196
Когда ты собеседуешь - ты и есть представитель всего хорошего и плохого что есть в кампании. А почему 10к тебя удивляют? Senior .NET 5+ лет работы - уже человек вполне может за бугор работать, а там спокойно 30-70k$/year вилка, особенно для как ты сказал из известной конторы. Конечно, если ты не из ДС, то извини.
327 2027201
>>27199
Уже не говоря что в ДС зарплат сеньйоров меньше 25k$/year ПРОСТО НЕТ.
328 2027243
Если вам выделили угол - то сидите спокойно и не орите. Почему я должен слышать голос со стороны параши? Рты позакрывали. Ещё одна падла вылезет отсюда и протечёт в Java тред - будут приняты меры. Свободны.
329 2027290
>>06596 (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 он был.
Какие флаги задать нужно? Или может что-то поставить нужно в линуксе, дополнительно?
20210511093139.jpg17 Кб, 381x219
330 2027309
Убернеофитовый вопрос. Можно ли как-то в винфорсмовском датагриде поменять серый бекграунд (тот что за ячейками)?
331 2027310
Как получить погоду за определенный день? кто-нибудь знает какую-нибудь бесплатную апи?
332 2027322
>>27243
Шизо, ты?
333 2027334
>>27074

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



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

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



Почему? Что это за ментальная гимнастика?
334 2027359
Сап, шарп.
Есть код - шифратор Цезаря из файла.
Как мне записать полученное слово в новый файл допустим, "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();
334 2027359
Сап, шарп.
Есть код - шифратор Цезаря из файла.
Как мне записать полученное слово в новый файл допустим, "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();
335 2027369
>>27309
Можно
999.png9 Кб, 628x232
336 2027413
>>27359

> Как мне записать полученное слово в новый файл?


Это если тебе хочется ебаться с байтами.
337 2027471
>>27413
ну можно с помощью ксмл но там ведь больше еботни будет, чем тебе байты не нравятся?
338 2027486
>>27322
Ты взят на java.lang.org.pring.КАРАНДАШ(), будь осторожен!
339 2027489
>>27334

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



Ну так сделай валидации в сеттере или вообще сделай его приватным, доступ через методы.
Ну и опять же, что там у тебя в get; set; только ты знаешь, может у тебя там динамика какая-то или генерация на лету например, так что про реализацию ни слова - только контракт
340 2027502
>>27369
Спасибо (как?).
341 2027542
Ананасы, подскажите пожалуйста. Что указывать в графе образование, при отклике, на вакансию джуна/стажёра (в hh). Если, у меня нихуя не профильное, гуманитарное средне-специальное образование?
342 2027548
>>27542
Правду указывать.
343 2027549
>>27196

>Всем идиотам с инкрементом хромосомы - вы сути собеса не понимаете или никогда не собесили.


Расскажи о сути собесов, мне интересно тебя послушать.
344 2027700
>>27290
Короче, блядь. Как же я наебался с этим сиквелайтом. Вот нормаьный сорец с ентити, блекджеком и шлюхами: 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 и её сорец есть уже.
Можно пришпандорить всю эту поебнятину в наноборду, терь.
345 2027707
>>27700

>mono


Но зачем, если можно пилить .NET5.0 и не париться?
346 2027715
У меня БОТФОРТЫ от программирования под .net на маке. Сука, какая же это параша. VS for mac - переделка моно, еле справляющаяся с задачами. VSCode - багованная пиздота, которую раз в час нужно перезагружать.

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

У меня всё.
347 2027761
>>27707

>.Net 4.5, но это не поддерживается для XP


>бла-бла-бла


Значит не обратно-совместимое говно копирастическое, которое только x64 чтобы специальные процы покупать для этого, и чтобы кейгены и кряки не работали.
348 2027821
>>27761
Как вам там живется, в прошлом тысячелетии?
349 2027830
>>27715
Ну так юзай райдер.

>Нахуй нам маки закупили? Пиздец блять.


Дык владелец галеры-то не виноват, что вы, макаки, к шиндовсу пришиты яйцами.
yoba.jpeg8 Кб, 225x225
350 2027833
>>27761

>XP


>.NET Framework


>mono


>2k21

351 2027888
Поясните что такое вообще using var?
Конструкция вида

> using var client = new HttpClient();


Я думал using это аналог import из других языков, ну типа подключать пакеты сторонние.
352 2027901
>>27888
using - это обертка для автоматического disposal of unmanaged resource после того как CLR поймет что объект больше не нужен.

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

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

В случае неиспользования using и отсутствия вызова Dispose(): объект остается в памяти и его ресурсы будут очищены только при вызове фаналайзера, если он определен, но существуют много причин по которым фаналайзер не будет вызван и ресурсы объекта будут сидеть в памяти до конца жизни процесса.
image.png8 Кб, 274x223
353 2027903
>>27888
то же самое что и пикрелейтед
354 2027904
>>27888
using System.Collections; и т.д. - это ДРУГОЕ, это понимать нужно это аналог import.

>>27901
355 2027938
Анон, вот учусь я на программиста, сами знаете что такое образование в нашей священной.
Учусь уже много не мало - год, но знаю чистые фундаменталы и во многом виню себя, что мало знаю.
Сам сижу на видеоуроках + метаните, но пока что мой максимум это Linq/Делегаты/обобщение + работа с разметкой нахуй никому не нужной xaml, и тд.
Что порекомендуешь в такой ситуации? Хочу курить классику CLR VIA C#, думаю смогу осилить.
Алсо пилите сторисы, как вас учили в шараге, если такое было.
Алсо, посоветуйте что-нибудь по бдшке пожалуйста, желательно легонькое на MySQL
356 2027940
>>27359
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()
}
357 2027948
>>27830

> к шиндовсу пришиты яйцами


Как ловко макопедик проигнорировал неудобные факты:
>>27715

> VS for mac - переделка моно, еле справляющаяся с задачами. VSCode - багованная пиздота, которую раз в час нужно перезагружать.

358 2028069
>>27948
А при чём тут мак-то, маня? Это мс выкупила замарин студию и перестала её развивать, чтобы не выпускать тебя из анального рабства шиндовса.

Хотя учитывая твою спермоворскую фиксацию на студии понятно, что ты из этого рабства выходить и не хочешь. Жидбраинсу надо было назвать райдер жид-студией — чтобы мартышки видели заветное слово.
359 2028122
Пацаны, пацаны. Эту хуйню учить для юнити поделок? Сколько потребуется времени для вката 30лвл дисигнера в шарп с нуля?

Заебался зависеть от украинских быдлокодеров, хочу сам навернуть говнеца с кодом.
360 2028153
На мариюдб вообще существует .нет фреймворк конектор+энтити контекст?
361 2028159
>>27888
Короче, проще считать, что using - контекстуально зависим.
Когда эта хуйня перед/внутри неймспейса, это аналог import, когда эта хуйня внутри метода - это значит: вызови Dispose когда я выйдешь из скопа.
На деле, там просто разделяется деректива using и инструкция.Директива - импортирует, инструкция - указывает на то что объекту нужно вызвать Dispose. Почему они не сделали 2 слова - я хуй знает, видимо боялись что если будет import что-то - слишком на жаву будет похоже.
362 2028162
>>27938
Самый лучший способ научиться - начать что-то пилить свое. Банально, сделай себе на шарпах блог с комментариями и авторизацией через гугл. Из менее банального - сделай движок для 2д игры со своей физикой. Если хочешь более тырпрайзное - сделай свой сериализатор какого-нибудь SOAP, чтобы по тестам показывал сравнительный перформанс и фич было не меньше чем у уже существующих решений, ну и на его базе сделай простенький сервер отчетов с прикрученной БД, естественно серверную часть сам реализуй, а не бери готовый движок, начинай с сокетов, типа тебе клиент шлет запрос: сформируй отчет такого вида - ты формируешь и отдаешь ему в сериализованном виде.
363 2028288
Чому не работает нихуя? Передаю bool параметр же.
364 2028328
Бамп
365 2028339
>>28288
Потому что перегрузка функции, которую ты хочешь вызвать имеет 4 аргумента, а не 3.

В твоем коде ты вызываешь эту хуйню: https://docs.microsoft.com/en-us/dotnet/api/system.string.replace?view=net-5.0#System_String_Replace_System_String_System_String_System_StringComparison_
366 2028344
>>28122
Сам шарп учить - неделю. Там всего десяток ключевых слов.
Гораздо дольше научиться мыслить программистски. На это нужны годы. Без этого у тебя будет лагучее говно.
367 2028347
>>28162
Понял, спасибо
368 2028369
>>28344
Звучит как нечто ахуительное.
369 2028451
Я правильно понимаю, что вкатываться в впф = обречь себя на сложности поиска работы? На АСП.НЕТ в четыре раза больше вакансий нахуй. Мне неважно куда, я вкатун. Вкатиться бы просто
370 2028518
>>28451
Впф быдло не осилило, поэтому многие на формах сидят. Лучше вообще в десктоп не вкатывайся.
371 2028839
>>28518
Удвачиваю. Быдлу надо штоб компоненты, как в дельфи Ильхама Зюлькорнеева. Вёрстка хамлом их вводит в ступор.
372 2028857
>>28518
>>28839
ХЗ что там осиливать. Как по мне оно вело себя более предсказуемо чем та же связка HTML+CSS. Другое дело, что из-за того что специфичная технология - постоянно все пилить самим - ну такое, а не все конторы готовы башлять деньги всяким девекспресам и прочим пидорам.
373 2028900
Стоит ли выносить статику и прочие служебные штуки в отдельные классы?
Ну, допустим, вот мне не нравится писать DateTime.Now. Разумно ли будет запилить интерфейс вида:
ITimeProvider
{
DateTime Now{get;}
}
и единственную реальную имплементацию:
TimeProvider
{
DateTime Now => DateTime.Now;
}
?
Ну, просто с одной стороны - да, вроде выглядит как ненужная хуйня. НО ВДРУГ Я КОГДА-НИБУДЬ БУДУ ТАКИ ПИСАТЬ ТЕСТЫ? И тут можно будет замокать этот вот провайдер и получать одно и то же время. Ну и вообще, разве не лучше что это отдельный объект а не непонятная статика?
374 2028904
>>25226
Бамп ВОПРОСИКУ.
375 2028915
Я немного тупой.
В общем. Смотрите, хочу свой логгер. Проблема существующих - уровни логгирования прибиты насмерть. Везде это: Trace,Debug,Info,Warn,Error,Critical. А я вот хочу: Trash, Trash2, SomUserTrash, Wow, BadThingHappened, Dead. Ну, это как пример. Суть я думаю вы уловили.
Ну так вот, я как думал-то: просто хуячим поток, хуячим очередь, метод Log - просто в очередь кидает то что просят залоггировать, поток смотрит в очереди что есть - достает и хуячит все что в ней в писак, писаки - уже знают: в консоль, в файл или еще куда. Ну и тут загвоздка случилась. Если я делаю Thread.Sleep(1) после того как очередь очистил - и хуячу бесконечный цикл записи в лог - очередь оч быстро заполняется. Пиздец как быстро. За пару секунд у меня студия показала что 16 гигов выделелось. Это как-то не круто.
Ну, я убрал очередь, Но тут проблема - тогда получается что если какой-то из писак дюже медленный или кидает исключения - то логирование будут тормозить все это дело.
Помогите баке пожалуйста. Что я делаю не так? Ну, т.е. да, в реальных условиях не будет такой вот хуйни с бесконечным циклом, но все равно эти выделения памяти смущают, а как без них - я хз.
376 2028940
>>28915
У тебя есть три стула:
1) писать без очереди, но это чревато охуительными тормозами во время вызовов логирования
2) иметь бесконечную очередь и оптимизировать производительность логирования (батчинг-хуятчинг, например)
3) иметь кольцевой или другой буффер ограниченной вместимости и при переполнении буффера терять логи

Что именно выбрать - зависит от тебя.
377 2028944
>>28904
Разница в том, что конструктор вызывается после инициализации полей. В остальном однохуйственно. Что использовать зависит от стиля кода проекта.
378 2028946
>>28900
Классика, как мокать DateTime.Now
Ответ - принимать везде где можно уже сконструированный DateTime
379 2029134
Есть какие книги по сишарпу для нуфагов на русском? В ОП одни справочгики и английский.
380 2029257
>>29134
Ты пойми. Книги это не путеводитель. Там не будут разжевывать тебе темы по правильному порядку. Скачай какой-нибудь курс скиллбокса в интернете, для нуфагов самое то. Но там знаний как таковых недостаточно для трудоустройства, поэтому потом уже подключишь книги и справочники
381 2029283
3 года опыта работы, хочу перекатиться в загнивающий запад. Вообще не знаю как обстоит ситуация с рынком на западе, но насколько сложно найти работу с релокацией?
382 2029347
>>28940
>>28915

А как же философия микросервисов? Можно же логер сделать как микросервис и он не будет влиять на производительность основного проекта
383 2029549
Профилирую через dotMemory одно приложение жрущее много памяти (до падения из-за нехватки), оно мне пишет что на пустые строки ("") потеряно (wasted) 167мегабайт. Это как понимать, всего было так много пустых строк или они в памяти одновременно висят?
384 2029551
>>29347

>А как же философия микросервисов? Можно же логер сделать как микросервис и он не будет влиять на производительность основного проекта


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

К тому же доступ к сетевому ресурсу на порядки медленнее записи в память. Из-за этого тебе с вероятностью 98% придется делать батчинг и очереди (чтоб логгер не захлёбывался от нагрузки), что ведет тебя обратно к той же проблеме, что у тебя была изначально.
385 2029553
>>29551
Микросервисы это кал.
386 2029558
>>29553
Микросервисы это инструмент. Другое дело, что они решают проблему, которой на самом деле в вашем проекте нету. При этом они добавляют кучу головной боли в виде поддержки инфраструктуры.
387 2029569
Есть один текстовый файл. Каким наиболее быстрым способ можно удалить заранее указанные не закрытые строки в этом файле? Например & & &.
388 2029572
image.png377 Кб, 604x339
389 2029621
>>29551
ах ну да, нужно же обязательно все в память а то вдруг логгер запишет лог на 5 наносек, это же катастрофа, поэтому лучше все фигачить в асинхронную очередь и забивать озу что бы администратор на 5 наносек быстрее увидел лог а то все рассыпется,

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

>>29553

что бы ты понимал микросервисы это вообще сейчас мета, все эти кремневые хипстеры фигачат сейчас все что попало на микросервисах, это конечно тоже перегиб, но говорить что такой мощный инструмент это кал может либо супер сеньор с синдромом утенка коим ты не являешься ибо тупой либо полный нуб коим ты являешься но еще умудряешься и носом воротить
390 2029623
>>29558
Вот именно для логгера микросервисы хорошо подходят
391 2029625
>>29558
Вот именно для логгера микросервисы хорошо подходят,
требований к латентности нет поэтому ок,
автономность есть, нет привязки к главному сервису и даже если он упадет логер продолжить работу
можно подключить эти вот ваши всякие модные дашборды,
логер часто масштабируется и изменяется и как микросервис его развернуть и масштабировать гораздо проще, а про какие-то электронны я вообще не понял, микросервес же можно развернуть на локальном хосте
392 2029630
>>29621
Просто ты ебанько начитавшееся хипстерской хуеты. Микросервисы это кал и всегда им был.
393 2029631
>>29621

>мета,



Зумерок, не употребляй слов смысла которых не знаешь. Или в словарике проверяй.
image.png14 Кб, 677x180
394 2029646
>>29631
В текущем контексте применительно к микросервисами философия архитектуры проектов которая сейчас считается заслужено мейнстримом, ибо микросервисы хорошо себя показывают, и вообще будущее за интернетом вещей поэтому даже вебмакака которая умеет в микромервисы в прекрастном сша будуйщего не останется без работы
О чем ты вякнуть хотел
395 2029654
>>29646
Они хорошо себя показывают только в плане продаж книжек или курсов авторов индусской националльности для ЦА в виде дебилов, т.к. это действительно всего лишь философия, т.е. пиздёж ГСМ дебилов ни о чем.
396 2029665
>>29621
Логгер где-то в сети - уже давно попробованный варинат. Логстеш с эластиком и кибаной - стандартная технология уже лет 10 как. В реальных проектах ты его юзать будешь именно так: через внутренний логгер, который поддерживает батчинг, с очередями и прочими перделками. Иначе производительность решения падает раз в 10 если не больше, вплоть до того, что им становится невозможно пользоваться.

Уже пройдено всё это, и не по разу. И да, иди нахуй со своими переходами на личность.
397 2029781
>>29347
Ну вот допустим мне нужно чтобы приложение работало как в облаке, так и на железке китайской за 50рублей и флешкой на 2 гига, которая вообще не знает что такое интернет.
Для этого я и придумал всю ту хуйню с пистелями: захотим - будем на другой сервис срать, захотим - в базу будем хуячить, а захотим - в консоль или файл.
Вся -то хуйня в том, что классический логгер что ILogger - не поддерживает кастомные логи со своими уровнями и прочим.
Вот в железке - линуксом настроено: папка Trace - чистится когда в папке больше 100МБ. А вот папка - Errors - не чистится, специально чтобы если все пошло по пизде - можно было отследить ошибки, но в контексте Error - нужны отдельные уровни: Ожидаемые ошибки; непредвиденные; системные, которые не относятся к работе этого приложения. Вот и ILogger не позволяет такие вот уровни сделать и возможность это нормально фильтровать после - ебись с тем что есть, либо все в один уровень хуяч, а потом разбирайся.
Вся же проблема - в том что если использовать очередь без ограничений - вся оперативная память железки засирается в случае если мы без остановки хуячим в лог.
398 2029885
Какие подводные камни от использования ThreadPool.QueueUserWorkItem? Типа где не смотрел - ну есть и есть. Допустим я хочу async void туда запихнуть и пока не завершится приложение что-то там делать. В тестах пока что вроде работает, но хуй знает какие подводные. Поясните, если не сложно.
399 2029889
>>29885

>async void


побойся б-га.
400 2029891
>>29781
ILogger поддерживает EventID, в которые ты можешь класть что угодно: хоть твою мамашу, хоть небо, хоть аллаха.
401 2029895
>>29891
Поддерживает, но я не могу написать так: Logger[Errors].MinimumLevel = SystemErrors; и при этом Logger[Trace].MinimumLevel = Information. А я пиздец как хочу. Просто не представляешь.
402 2029898
>>29895
ЗАПИХИВАЕШЬ ЭТОТ КОД В ILoggerProvider
@
ЮЗАЕШЬ СТАНДАРТНЫЙ ILogger
@
НЕ ИЗОБРЕТАЕШЬ ВЕЛОСИПЕДОВ
404 2030006
>>06596 (OP)
Что надо знать по авторизации, чтобы сделать сервер для сайта с регистрацией и личным кабинетом?
Всякие там basic HTTP autentification, Sessions, Cookies, HTTPListener. TCPListener, GET-POST, и вот это вот всё.
Заебало гуглить уже, есть примеры?
405 2030097
>>30006
Что это за хуйня: 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,
и хуй знает как туда теперь пришпандорить сессии-хуессии и куки-хуюки, чтобы эту регистрационную форму блядскую, конями ебанную, вкодить уже нах, безо всей этой мозгоебли придурошной.
406 2030106
Как работает Channel<T>? Просто выглядит как ЙОБА какая-то. Я вот заменил Pipe в своем наколеночном Tcp-сервере и вроде удобно пользоваться, не нужно ебаться с тем чтобы двигать буффер, а мне настолько экономичным быть и не нужно было, можно после парсинга удобно использовать для того чтобы организовать уже обработку готовых сообщений. Да и судя по выделениям памяти - оно нормально работает. В общем, пока потыкался и удобно, но что-то подозреваю, что я что-то не знаю, иначе почему про эту штуку мало где пишут? Я, по сути, видел только пару статей про нее и то: Смотрите, можно одновременно писать и читать и не нужно как в пайпах ебаться со сдвигами буфферов.
407 2030173
я одного не пойму, если дот нет и линукс это опенсорс тогда как можно развернуть на линуксе ентерпрайз приложение? например мы продаем программы для кафешек, инсталлируем новый дот нет кор на линукс у клиента, тогда у него будут все исходники они полетят в сеть и мы обанкротимся потому что мы не опенсорс компания, в чем смысл тогда дот нет кора если с# это ентерпрайз язык
408 2030202
>>30173
Думаешь кому-то нужен твой кал?
409 2030211
>>30202
Конкурентам, не знаю, не важно, в чем смысл вообще опенсорса для дотнеткора?
410 2030232
>>30173
Исходники у них будут только если вы предоставите их. Декомпилировать можно, но это полная неподдерживаемая хуета получится. Если вы очень анальные, можете обфускатор заюзать.

Проблема стара как мир - любой жбапидор с такой херней сталкивается. Решение простое: продавайте не только программу, но и сервис.
411 2030317
>>30232
Так если дотнет и линукс опенсорсные разве у них не будет открытого исходного кода? а на линуксе вообще можно запускать скомпилированные проекты? я думал на линуксе только опенсорс работает, чем он тогда глобально отличается от то же винды за исключением того что он бесплатный и у него нет поддержки
412 2030373
>>30317
Можно запускать что угодно. У дистрибутивов линукса как раз есть поддержка, и она часто платная
413 2030400
>>30373
Так если линукс создается сообществом тогда кто поддерживает?
и в чем тогда разница от винды? винда же во всем будет лучше тогда
414 2030450
>>30006
>>30097
Чё нет норм сервера на шарпеге?
415 2030472
>>30400
1) работники из больших компаний (интел, хуявей, нвидия, гугл и т.д.)
2) сотрудники компаний, ответственных за конкретный дистрибутив
3) энтузиасты

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

Разница от винды в том, что линукс бесплатен для пользования, и в том, что в случае чего ты можешь допилить его напильником так, как тебе надо. В это же время за серверную винду надо платить очень много денег. К примеру, лицензия на двухпроцессорный сервер на AMD Epyc gen 2 на винде выйдет тебе в 40-50к зелени.
416 2030583
>>30006
>>30097
>>30450
Блядь, глядя на этот вот код:
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, хуй знает что ещё,
всякие слова непонятные, капирастические, корпоратокративные и проприетарные пиздец какие.
417 2030732
>>30583
Ебать копать. С куками-пиздЮками вроде разобрался https://developer.mozilla.org/ru/docs/Web/HTTP/Cookies
Осталось теперь навернуть чё нить про сессии-пердессии. Чё посоветуете?
418 2030738
>>29898
Угу.
Ну давай на секунду я опишу тебе сценарий использования.
Нужна возможность удаленно - отключить какой-то из логгеров, добавить во время выполнения нового писателя, причем добавление должно происходить просто добавлением нужной dll, нужна возможность вывести по коду лога и уровню записи из диапазона, при этом, мать твою, логгер - на железке что где-то в сиббири находится и канал связи там - компорт, а памяти - 128МБ, а потому основной логгер - должен хуячить байтиками.
Да, я понимаю, что кому-то может показаться странным, но сейчас во встройках, для всякого некретичного ПО вполне себе используют шарпы.
419 2030754
>>30738
Что из этого невозможно сделать с дефолтными логгерами и логгер провайдерами?
420 2031026
Да что блин я делаю не так-то?
image.png19 Кб, 538x242
421 2031295
Этот кусочек кода можно как-то сократить фичами из новых версия сисяп?
422 2031299
sharedData ??= CreateSharedData();
return sharedData;


Похоже вот так можно. Но нахуй надо.
image.png9 Кб, 786x47
423 2031300
А, не. Даже так тогда.
424 2031434
>>31295
get => shareddata ?? CreateSharedData();
425 2031572
>>06596 (OP)
Как сделать нечто подобное,
https://phppot.com/jquery/live-username-availability-check-using-php-and-jquery-ajax/
но на шарпеге?

Чтобы когда вводишь посимвольно, в регистрационную форму, имя пользователя - чтобы оно проверялось на уникальность тут же, после ввода каждого символа.
426 2031636
>>31572
В зависимости от того какие технологии ты применяешь
Но общая суть. На беке у тебя просто есть метод:
[HttpPost(nameof(IsUsernameAvailable))]IsUsernameAvailable(string username){...}

он лезет в базу и проверяет, отвечает да или нет в зависимости от доступности. На фронте - при снятии фокуса с ввода - отсылаешь запрос на это апи, в зависимости от результата что-то там делаешь.
427 2031642
>>31572
Насчет посимвольно - все то же самое, но остылаешь запрос при каждом изменении, дропаешь ожидание если строка изменилась.
428 2031648
>>31636
А, всё, понял.
Там надо было просто вот так сделать:

>oninput="checkAvailability()"


чтобы при вводе КАЖДОГО СИМВОЛА,
отправлялся POST-запрос аяксом,
на специальный проверочный URL.

Когда этот URL детектится в запросе, на беке,
формируется ответ (заголовки, плюс строчка для генерации которой - запускается метод, проверяющий наличие юзера по базе и возвращающий строчку эту, которая затем, на клиенской стороне, принимаясь аяксом - просто лезет в div.
429 2031659
Бля, а хули такое выражение не работает?

nullable<T> = boolean ? T : null;

Пишет, что работает только начиная с 9.0
430 2031661
>>31659

>nullable<T> = boolean ? T : null;


Ясно. Надо, блять, тип прописывать.
nullable<T> = boolean ? T : (T?)null;
431 2031943
>>06596 (OP)
Опять я взъебу вас, ёба-авторизацией.
Как реализовать это:
https://www.cyberforum.ru/php-network/thread786824.html
?

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



>который запоминается на сервере в сессии.


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

Что если это браузер, стучится на сервер, как TcpClient, на TCPServer, ведь HTTPServer работает на TcpListener,
какие могут быть сессии-хуессии, блядь, в TCP-соединении,
если каждый раз, при обновлении страницы, шлётся новый запрос на серв, и каждый раз, с новым запросом - тупо срабатывает AcceptTcpClient()?
Это ж блядь, что получается? Надо в куки-хуюки прописать ебучий - одноразовый ключ, штоле? Чтобы по этим кукам его брать извнутри самого запроса?
А если его спиздят из кук? И как его запомнить, на бекенде? Как его к клиенту привязать, блядь?
432 2031957
Ребята, инфоцыган ITVDN пойдет для вката? Есть хоть один анон, который с него начинал?
433 2031962
>>31943
Сервер отправляет клиенту случайный, сгенерированный ключ.
Нужно запомнить этот ключ на сервере, и связать его с конкретным клиентом.
Проблема в том, что для каждого запроса, создаётся новый клиент,
и когда клиент отправит форму - это уже будет новый клиент, а не тот.
Как сделать норм эту хуйню - хз.
434 2031965
>>31943
>>31962
А надо просто для каждого нового клиента,
на бекенде - сгенерировать новый ключ,
отправить его в ответе с формой входа,
затем добавить ключ в массив.

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

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

Профит.
435 2031983
Таки вопрос хлопцы.
Модели используются только для связи с бд?
Например есть модель User и мне в представлении надо вывести юзера, можно ли использовать эту модель в представлении или создать ViewUserModel и в ней продублировать поля?
436 2031986
>>31957
Пиздец как воду льют.
Хотя все воду льют.
Просто найди себе канал/книгу/курс/сайт/статьи/ментора/2ch.hk/pr и изучай в своё удовольствие.
Вот например на ютабе есть лысый хуй который записал часовые видосы и пиздит там про C#, меня например пиздец как бесит такая подача, но люди смотрят, им нравится. А я не могу, мне очень медленно.
437 2032031
Просто жопа полыхает ебанным огнем. 1,5 года учил C# с стандартным стеком. Запилил два проекта. Один из последних - "мини-бухгалтерия" (заполнение декларации, расчет налогов, оплата страховых взносов, уменьшение налоговой базы и т.д. - то есть нормально работающая десктопная программа для мини-кабанчика).

Пытаюсь устроиться в ДС. Везде посылают на хуй. Никому чистый C# не нужен. В половине случаев просят js. Там, где не нужны другие языки, просят Unity. А мне он нахуй не сдался. В последнем месте попросили js, ts, html/css.
438 2032278
>>32031
Прояви фантазии, возможно судьба дала по яйцам для того, чтобы ты щас начал свои скиллы юзать правильно. Есть пути легальные, серые, нелегальные. Ты же литерально можешь любую хуйню написать на кудахтер. Просто пораскинь мозгами.
439 2032283
>>32031
Понимаю. Ну, что поделать, тут выше чел писал, что шарпы - для души.
Иди на завод, там от шарпанов только шарпы просят, базарю.
440 2032286
как можно юзая EntityFramework и MySQL сделать авторизацию пользователя? Готовая форма есть, нужно сделать проверку на кнопку входа и считывание вводимой инфы. база данных ужже подключена локалхостом и сделана таблица с одним юзером
Помощь в Xamarin 441 2032301
Сап, аноны.

Пилю кросс-читалку на мобилку, с локальными книжками разобрался, а вот из интернета нет. Собственно, а как мне из интернета их брать. Была мысль, взять парсер и из условной флибусты книги брать, но есть ли альтернативные варианты?
442 2032478
>>32301
Ну, если сайт не дает тебе открытый апи чтобы получить книжку, то только парсить. Можешь правда свой сайт поднять, но с этим гемора выше крыше, тем более из-за правовых вопросов, ведь я не думаю что ты только книжки без правообладателей туда выложить бы хотел.
443 2032481
>>32478
насчет "правовых вопросов" пофиг, ибо это обычный курсач и одновременно для личного пользования, пускать в открытый доступ не планирую
444 2032497
>>32481
Можешь просто сделать поиск по той же флибусте/либгену. Еще я помню в нескольких читалках на iOS был какой-то свой протокол для общения с серверами с книгами, хз как назывался и чет не гуглится уже.
445 2032508
>>32497

>не гуглится уже


OPDS
446 2032679
>>31434
get => shareddata ??= CreateSharedData();

пофиксил за тебя
447 2032769
>>32508
аноны, спасибо!
448 2033026
Насчет курсов от КоробкиУмений Skillbox, вредно ли их смотреть новичку, естественно с рутрекера? Слышал просто что это наебалово.
449 2033054
>>33026
Ну не только коробки, а вообще любых курсов. Там же наебки одни.
450 2033063
>>33026
Не вредно. В таких курсах в массе пересказывают документацию и то что гуглится по Язык нейм для новичков.
Другое дело что пользы особой нет. Всю эту хуету можно освоить за неделю. Чтобы ее закрепить - пойти на какой-нибудь кодварс и решать задачки до посинения.
А вот когда начнется продвинутый уровень - там у таких вот кренделелй - действительно все плохо, потому что большая часть лекторов - максимум преподы из вуза, а зачастую даже не они, а какие-то хуи, что чуть кодить умеют, т.е. реально полезные фишки, объяснение что как почему так - хуй кто даст, перескажут доки, перескажут пару туториалов - все, продвинутый, беги стучаться во все двери.
451 2033114
>>30738
В серьёзных проектах никто этот кал не поддерживает, просто съеби.
452 2033519
В универе задали проект на миллион крудов, под сотню запросов в бд наберется. Я в фронте/разоре нихуя не шарю, как это сделать максимально быстро? Учитывая, что веб интерфейс это просто хуета для ввода и вывода результатов из бд, мне ведь не нужен реакт и spa? На разоре быстрее выйдет наформошлепить?
453 2033731
>>33519
Для крудов - просто разоровские контроллеры нахуяч автогенерацией.
454 2033734
>>33114
Ты-то кто такой, чтобы мне говорить съебать? Нечего сказать - просто проходи мимо. Нет, блядь, уебище, которое даже не может предложить как логгер для контроллера реализовать более оптимально - будет мне тут пиздеть что-то. Пиздец, нахуй. Тфу, блядь. Никчемный хуесос. Злости на таких вот уебков не хватает.
mp4.mp456 Кб, mp4,
288x164, 0:03
455 2033975
Сап, есть не очень молодые, но шутливые? Мне нужно один софт высрать специализированный, отснифать некоторое количество запросов и слепить нужное, если конечно это возможно будет. Милости прошу в общем.
телега @bitardenka133
456 2034085
Кто-нибудь изучал шарпы, написанием проектов, сразу, без теории.
16140195530150.jpg121 Кб, 709x1000
457 2034098
>>34085
Да. Лол. Я. Ну как, у меня был опыт в плюсах хреновенький но был, ну, база в общем: основные конструкции, ООП, шаблоны, это вот. Ну, я решил реализовать modbus. Начал на плюсах, заебался с указателями(это не сложно, но когда ты кодишь, что говорится, без плана, просто вот представляешь примерно что надо, но нет четкого понимания как это делать - ты постоянно же что-то меняешь, а потом - блядь, забыл освободить память, эта хуйня висит в памяти и ты замечаешь это когда уже перешел куда-то дальше и забыл где ты там не освободил указатель), психанул, взял шарпы, за неделю сделал, понял что люблю шарпы, после этого написал простенький веб-сервер ну и т.д. только когда начал искать работу - стал смотреть книжки и всякие туториалы, до этого - только справочку на MSDN читал.

Ну и по поводу этого вот метода. Не самый эффективный на самом деле. Т.к. некоторые вещи неочевидны. Вот например - я бы без книжек - сам бы до солида хуй дошел, я про использование событий, делегатов, методов расширения и прочие штуки - узнал уже после того как начал пытаться искать работу и попадался на этой хуйне на собесах. Так что советовал бы таки каких-нибудь книжек - почитать, как минимум про всякие паттерны, солиды и это вот.
458 2034129
>>33734
Ты заебал со воим логгером бегать тут как опущенный, эмбед и управляемые среды вещи не совместимые. Если бы ты не был малолетним деюилом тебе бы и в голову такое спиздануть не пришло, так как даже не являясь спецом в этой области можно догадаться по общим вводным.
459 2034149
>>34098
спасибо анон
460 2034175
Посмотрите на этот код, правильно ли я понимаю что теперь эти три вызова "isAdmin" "IsMobile" и "getAllUla" будут выполняться синхронно то-есть одновременно и время обработки гета страницы сократиться в 3 раза? то-есть я сделать что-то типа второго пикрила?
461 2034182
>>34175

>синхронно то-есть одновременно


Блять

Еще и код из 2005 года, К А Й Ф
462 2034192
>>34182
Я конечно же имел в виду асинхронное программирование, но суть ты понял не понимаю зачем к словам придираться, а вообще если есть что по факту сказать то говори, нет? Тогда сам все понимаешь
463 2034232
>>34192
Да, конечно, прочитай что-нибудь про асинхронщиу за последние лет десять, а не из прошлого века.
Тогда сам все понимаешь
464 2034243
>>34232
по факту можешь сказать что не так в коде? а не пустые балабольствоания?
465 2034289
>>34243
Может он имеет в виду Task'и и async/await.
466 2034295
>>34289
Может быть, спасибо я почитаю об этом
467 2034917
>>34289

> Task'и и async/await


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

Но я не программист и не собираюсь, мне простительно. Хотя, может кто подкинет статейку какую-нибудь, где всё максимально разжёвано. Хочу ещё разок попытаться понять.
468 2034958
>>34129

> эмбед и управляемые среды вещи не совместимые


Диван, успокойся. Сейчас не 90е. У нас в девайсах аппач был до недавнего времени, сейчас на nginx переходим постепенно, вебморда у девайса - на ебучем реакте. В планах было даже в новую линейку запихнуть полноценный постгрес, но из-за скачка цен на всю электронику - решили сэкономить на памяти. А ты мне рассказываешь про то что управляемая среда - несовместима со встройками. Охуеть можно. В 2015 значит писали себе нормально на джаве, а теперь вдруг с дотнетом стало нельзя.
469 2035238
Как гуглить алгоритмы без линкью? Блять, буквально хочу найти имплементацию того же реверса списка, 3 страницы гугла буквально "дохуя текста list.Reverse() дохуя текста".
Можно ли форичем итерироваться по "строкам" 2д-массива? Хау ту?
Как правильно сравнить массивы без SequenceEqual? мне просто до сих пор не понятно в каких случаях появляется эта еботня с ссылками
123.png10 Кб, 330x216
470 2035250
>>35238

>Как гуглить алгоритмы без линкью?


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

>Хау ту?


Например так, если правильно тебя понял
471 2035266
>>35250

> нахуя


Так повелевает тикет.

> читать


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

> например так


Бля, а если у меня int[,] a = { {1,2}, {3,4} } ?

у джетбрейнс есть иде для шарпов?
472 2035420
Может кто с C++ в C# перевести? Мне небольшую хуйню на unity нужно сделать.
https://pastebin.com/DaReXnrr
473 2035434
>>35266

>у джетбрейнс есть иде для шарпов?


Ну ты попробуй погугли, вдруг найдешь
да есть, блять

>int[,] a = { {1,2}, {3,4} }


Тогда пиши for, foreach пройдет по нему последовательно просто.
474 2035571
Так челы. Тут вопрос возник по поводу метанита из шапки. Я тут гадаю это или я всё таки глупый или что-то не то тут.
Вторая глава(первая введение). Буквально первая же строка по тексту:

>Базовым строительным блоком программы являются инструкции (statement).


Но так уж получилось что у меня перед глазами есть книжка албахари и там цитирую

>Фундаментальным строительным блоком в c# является инкапсулированная единица данных и функций называющаяся типом.


И дальше что шарп имеет унифицированную систему типов и все типы в конечном счёте разделяют базовый тип. примитивные или бизнес объекты разделяют базовый набор функциональности.
Ну окей я подумал еще, мало ли может это ДРУГОЕ
Но буквально через одну страницу(статью) речь заходит о литералах и он их называет:

>Литералы представляют неизменяемые значения (иногда их еще называют константами)


В то время как албахари пишет:

>Литералы это элементарные порции данных, лексически встраиваемые в программу


Т.е просто числа. И я в принципе понимаю как дошло до того что метанит назвал их константами видимо рассуждая на уровне что 1 это 1 и это не поменять поэтому это постоянное значение. Но называть это константами когда в языке и так существуют КОНСТАНТЫ. Это по моему тупость какая-то, не?
475 2035703
>>34958
Речь о промышленных разработках а не любительских или никому не нужных проектах на коленках.
476 2035747
>>35703
Я на заводе работаю. Ну да ладненько, спорить с людьми, которые про встройки знают только то что там байтики перекладывают, я не особо хочу.
477 2035750
Двач, ну подскажите, как векторы в массив записать? Я из C++.
List<Vector3> positions = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}};
478 2035752
>>35750
List<Vector3> positions = new()//если у тебя 9 версия, иначе new List<Vector3>()
{
new Vector(0,0,0),
new Vector(0,0,0),
new Vector(0,0,0)
};
479 2035755
>>35750
шарп не умеет инферрить, сочувствую
480 2035855
>>35571
Касательно первого пункта это действительно ДРУГОЕ, в метаните идет речь про лексическое строение исходного кода, а Албахари говорит про структуры данных, которыми оперирует C# и которые существуют в рантайме, тобишь типы.
По второму пункту метанит дает хуевое определение, знающему конечно понятно о чем идет речь, но новичка это действительно может ввести в заблуждение, у Албахари правильнее сказано.
481 2035897
>>35571
В шарпе, по факту, нет констант. То что пишется как const float Pi = 3.14159 - именованный литерал.
482 2036117
Ребят, тема такая.
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(); ?
482 2036117
Ребят, тема такая.
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(); ?
483 2036158
>>36117
Так у тебя в классе Cat нет свойства Color, как ты будешь цвета считать и записывать в CatColorsInfo. У каждого кота должен быть указан его цвет.
Так же в CatColorsInfo должно быть 2 свойства: Color и Count.
484 2036169
Реально за год подтянуться до базового уровня или хотя бы семи уровня?
485 2036285
Чем джуниор отличается от мидла? есть какие-то объективные параметры по которым можно отличить мидла од джуна? я например считаю что я мидл но платят мне как джуну аргументируя тем что я все еще джун несмотря на то что я уже давно работаю над проектами один и мне никто не помогает

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

о опыте работы прошу не писать, счас бы на полном серьезе уравнять год сидения и ковыряния в носе отлынивая от работы и год упорной работы и саморазвития
486 2036340
>>36285
Интерфейсы что такое мидол?
487 2036369
Я не он, но навскидку из головы: это тип языка, который позволяет объявить некую функциональность, тобишь контракт, который затем смогут реализовывать конкретные классы и структуры. Нужно это для реализации полиморфизма, то есть везде где нам потребуется функциональность, объявленнная в интерфейсе можно будет использовать любой объект, который этот интерфейс реализует без знания его конкретного типа.
488 2036371
489 2036392
>>36340

>Интерфейсы что такое мидол?


Пытаюсь разобраться с вашим C# после небольшого опыта с С и микроконтроллерами. Какая-то антинаучная хуйня. Нихуя непонятно. В треде какие-то названия нечеловеческие. Брошу я это дело наверное.
490 2036430
>>36392
Ну бля ООП это ж совсем другая парадигма, я когда только начинал программирование изучать тоже долгое время не понимал что это за параша и интерфэйсы энти ваши нам нахой не нужны.
491 2036449
>>36285
Тем что получает ЗП мидла.
По факту основное требование к мидлу - способность самостоятельно делать типовые/несложные задачи, либо сложные под присмотром синьеров/лидов.

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

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

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



не уволившись? как-то не порядочно за спиной ходить по собесам всяким, и вообще получается что я буду просто тратить время рекрутеров так как у меня нет намерения поменять работу, а ходить с таким намерением.. ну это такое, получается что я заблаговременно был готов подставить коллектив, старших программистов, я же один проектом занимаюсь, в нем будет сложно разобраться после моего ухода не хочу подложить такие подлянки
493 2036528
>>36510
Ну так скажи руководству прямо что либо пересматриваем зарплату либо я ухожу.
494 2036548
>>36510

>не уволившись?



Так половина айти ходит, если что.

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



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

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


Ты менеджер/CEO/держатель акций?
Почему это тебя ебет?
То что у фирмы на каком-то проекте сидит один человек, которого тяжело заменить на нищенской зп -- не тови проблемы.
Да и почему ты собственно считаешь справедливым, что тебя не апают, но считаешь не справедливыми шаги с твоей стороны по апу своего положения за рамками текущего места.
495 2036706
>>36528

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


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

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


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

Алсо, если люди дают в себя впихивать невпихуемое - то это их выбор
image.png10 Кб, 484x175
498 2037123
>>06596 (OP)
Почему так? Linq to Sql
499 2037143
Ребяты, вот искал отзывы о конторе Itransition и наткнулся на статью https://tech.onliner.by/2019/07/31/check
В этой конторе есть вакансии в моем городе, вот думаю туда отправить резюме что бы вкатится.
Но вот меня пиздец как смутила эта статья. 28к бакинских за
мобильную приложуху и сайт и 3 года разработки. А по факту вышло 56к бакинских за нихуя.
И вот хотелось бы спросить, часто ли находятся такие ебланы которые платят такие деньги?
Я хз че там на рыночке конечно но бля 56к ебаны рот. Я думал ну за 56к можно заказать разработку ну к примеру почтового сервиса ну или сайт сервис типо diagrams.net или гугл таблиц. Да и то хуй знает 56к это 56к.
Просто не укладывается в голове как так то нахуй. Интересно было бы посмотреть сколько строк кода ему дали, что бы посмотреть сколько в день писали.

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

Я так то думал что будут задачи ну скажем систем учета водителей где нибудь, где нужно оперативно обрабатывать запросы, стремится что бы не было задержек. Или писать бекенд сервисы где пользователь загружает свои данные, сервис данные обрабатывает и выдает пользователю результат, где задача стоит в том что бы найти компромисс между скоростью и затратами ресурсов на задачу.
Ну или на крайний случай сайт который делает мир лучше, например сайт приюта для животных, где за донат можно с котами поиграть лазарной указкой онлайн. Сайт+ардуино+конструкция в помещении.
Корочи пиздец, я не хочу писать контролеры которые выдают на страницу инфу о какое сегодня число(
500 2037154
>>06596 (OP)
Как вкодить сессию на HTTP-сервере,
если он использует TcpListener,
а потом парсит байты запроса?

Если генерировать идентификатор для каждого TcpClient,
то при каждом запросе будет новый идентификатор,
даже когда загружается favicon.ico
Из-за этого число клиентов равно числу запросов, блядь.
Я знаю, что в PHP есть PHPSESSID хранящаяся в куках на клиенте и в суперглобальной переменной $_SESSION на сервере.
Хотелось бы, чтобы не для каждого запроса, а для каждого уникального клиента был один ключ. Как это сделать?
Желательно ещё и секретный ключ, потому что куки могут перехватить и если по кукам входить в аккаунт на сервере, то перехват кук может дать возможность залогиниться, не зная пароля, при вводе которого, эти куки генерируются.
501 2037185
>>37143

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



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

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

И последнее, оперативная обработка и низкие задержки это не то что нужно стартапу на начальном этапе, это задача которая появляется после того как был получен пруф оф ворк, привлечены иневесторы и получена клиентская база. На начальных этапах важно наращивание функционала, похуй как, похуй что кривовато, нужно просто проверить, что оно вообще кому-то нужно и будет приносить в дальнейшем прибыль, потому если галера имеет дело со стартапом, там обычно спринтами по 2 недели хуячат пачку фич, потом заказчик это аппробирует, присылает правки, замечания, аналитику и хучячат дальше. В случае с челом, очевидно, что он считал что ему просто сделают заебись, не мог нормально пояснить что хочет, что нужно, а контора решила его подоить.
502 2037186
>>37185
Да, на всякий. Похуй и подоить это то что сейчас называется: Клиентоориентированность, когда клиент не понимает что хочет, просто приходит и говорит: хочу вот это; через неделю: не хочу, хочу то, а менеджер вместо того чтобы ткнуть носом в ТЗ, пояснить, что план работ уже назначен и вообще это будет сдвигать сроки - улыбается и просто наваливает работу кодерам: платят и заебись, это приводит к тому, что решения заложенные прошлой хотелкой могут довольно сильно конфликтовать с новой, но менеджеру-то похуй, его цель - не клиенту сделать основу для его охуитительного бизнеса, а на своей работе показать что деньги заказчик приносит.
503 2037190
Ребяты, сделайте пожалуйста код ревью.
Я вкатывальщик, вот написал хуету что бы было хоть что то на гитхабе что бы показать.
На фронтенд внимания не обращайте, я хочу вкатится в бек, от фронта просто тошнит.
https://github.com/Datakda/CatalogFilms_test
504 2037210
>>35747

>Я на заводе работаю.



Руки в масе, жопа в мыле - мы работаем на ЗИЛе?
505 2037246
>>37190
Я бы вынес логику из контроллеров, у тебя там и бизнес и работа с БД и авторизация - в тырпрайзах для всего этого делают отдельные слои, кода становиться больше, но в случае изменения работы с БД ты будешь править только один слой, а не разматывать весь свой код

Ну еще очень_старнный_нейминг_неймспейсов
image.png43 Кб, 1085x475
506 2037262
>>37246
А можно пример как куда выносить?
Создать папку Servise и там уже создать классы с методами?
Просто я ваще не представляю как это сделать.
К примеру вот метод из пикрила.
Если так сходу посмотреть то я могу придумать создать класс с меттодом который бы проверял является ли юзер овнером фильма или нет.
И метод который бы создавал ВьюМодел фильма принимая id фильма.
Правильно мыслю?
image.png18 Кб, 503x381
507 2037303
>>37262
Погугли слоистую/луковую архитектуру.
Смысл в том, что у тебя есть несколько слоев (кол-во и разнесение зависит от тебя), но в целом это будет выглядеть как пикрил.

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

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

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

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

>Если это приложение-однодневка, mvp, то похуй вообще. Если это что-то, что будет


Ну это мне для того что бы показать потенциальному работодателю.

Просто если сейчас начну переделывать еще месяц колупаться буду.
Мне это все трудно для понимания.
Так то я думаю что вот по ТЗ я выполнил задачу. Ну типо джун так и должен делать, он хуй знает в ваши архитектуры и как их строить. Я понимаю что лучше бы все сделать грамотно но бля я уже пол года дрочу хуй, надо уже пытаться устроится куда то.
509 2037367
>>37334
Ну смотри сам, для вкатыша норм, но я бы наверное все равно начал бы дрочить тебя на тему того, а как лучше сделать/какие недостатки есть в этом коде.

Да и вкатышей сейчас овердохуя и больше.
510 2037426
>>37334

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

Будет что нормальное показать работодателям, а не эти вот твои формоТаски, формошлепством сейчас никого не удивить, формошлепством может и вордпрессочервь заниматься а я подкину задачек по алгоритмам
511 2037443
>>37426
Ну да есть такое желание.
Я правда не обещаю что впрягусь и буду как бык тянуть но взял бы не сложную таску которая не горит. Я не спал уже сутки, хочу снова войти в график человеческий и начать спать ночью а не днем.
телега напиши плиз https://t.me/dddd1233324 или свою скинь
512 2037531
>>35897
А про NAN +-бесконечность -0 int.maxvalue и другие видимо нужно забыть? Уволились еще вчера?
А то что хранятся все эти литералы(по сути переменные со значениями) что так легко записали в константы хранятся в стеке в то время как константы находятся в куче тоже забыть нужно?
image.png10 Кб, 848x110
513 2037758
Есть один код на C#. Он не срабатывает по причине:
System.Net.WebException: "Удаленный сервер возвратил ошибку: (403) Запрещено."

Я пытался добавлять Headers. Добавлял пароль и логин. Ни то, ни то не помогло. Что нахуй не так? Почему я не могу загрузить ебаное изображение?
514 2037816
Как лучше создать json (JObject) через dynamic? Точнее свойство-массив (JArray). Обычное свойство легко через имя инициализировать, а как быть если надо запихнуть массив структур динамически? Отдельный тип структуры создавать неохота.
515 2037860
>>37190
Оки.
Контроллер 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 - почти не трогал как я погляжу.

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

В общем. Обычный код человека что по туториалам делает и делает недавно.
515 2037860
>>37190
Оки.
Контроллер 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 - почти не трогал как я погляжу.

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

В общем. Обычный код человека что по туториалам делает и делает недавно.
516 2037907
517 2038036
Такой вот тупой вопрос.
Смотрите. Есть три сущности. По сути они на данный момент отличаются только тем из какой таблицы взять данные и что сделать после выполнения некой общей логики. Ну так вот, стоит ли действительно выделять это в три разных сущности? Ведь в теории в будущем логика может начать отличаться более значимо. С другой стороны на данный момент создается впечатление, что проще сделать просто делегат Completed и передавать туда что делать в зависимости от того какую "сущность" хотят вызвать.
Чтобы было понятно. У меня есть класс: рассылатель. Есть рассылатель, который умеет рассылать по СМС, есть который по мылу, есть, который рассылает пуш уведомления, конфигурирование происходит из базы каждому своя таблица, но логика составления сообщения - одна, ну а сам алгоритм рассылки у меня передается в виде стретегии. Вот и получается, что алгоритмы идентичны, но тут я беру из таблицы А, тут из таблицы Б, потом использую какой-то канал рассылки, но все остальное - одно и то же. Не знаю как сделать более правильно.
518 2038045
>>37816
Dictionary<string,object>
519 2038057
>>38036

>Чтобы было понятно


Может я конечно не так понял из написанного, но у меня сложилось впечатление будто ты про интерфейсы и не слыхивал никогда.
520 2038076
>>37758
токен мб ожидает в хедере
521 2038083
>>38045
И как я массивы через словарь определю? С простыми свойствами как раз понятно, массивы составных структур надо компактно определить.
522 2038172
>>37860
Большое спасибо!
Буду переделывать.
523 2038184
Помогите придумать название для 4-го состояния. Есть api дружбы. У дружбы есть 4 разных состояния:
- Friended: игрок в друзьях у текущего игрока
- Ignored: игрок добавлен в черный список
- Invited: текущий игрок отправил приглашение в друзья
- И 4-е состояние: игрок отправил запрос на дружбу с текущим игрок
524 2038188
Хм, наверное Requested будет логично.
525 2038302
>>38172
Ты учти, что там вагончик субъективщины был
526 2038352
>>37154
Ба-бамп.
527 2038458
>>06596 (OP)
Хуле UTF-8 херово декодируется, а latin-1 норм? https://rextester.com/XGAT98683
Думал байты строкой на сервер отправить, а они хуёво декодируются потом, если утфом декодить.

И ещё какие-то кракозябры выдают в консоли, какие-то бубны, сердечки, пики и смайлы и оно начинает пищать динамик какого-то хуя.
528 2038611
Почему в BinaryReader/Writer нельзя указать последовательность байт? Что это вообще за хуйня-то? Почему в джаве из коробки это все можно, а тут я должен городить свои велосипеды?
529 2038697
>>38611
В смысле нельзя? Всё можно.
530 2038833
>>38697
Почему тогда гугля я вижу велосипеды вида:
public override int ReadInt32()
{
var data = base.ReadBytes(4);
Array.Reverse(data);
return BitConverter.ToInt32(data, 0);
}
?
Или всякие шаманства с битовыми сдвигами. Да и на сайте майков написано что нужно проверять какая архитектура, чтобы в случае чего - развернуть. А вот решения вида: ReadInt32(endian.Big) - не вижу что-то.
531 2038980
>>38833
А, ты про это (я думал мемористрим не смог в памяти развернуть и засунуть в ридер).

Лол, да, лет 15 назад я тоже ёбся с этим, в дот нете походу все эти остроконечности не определены и зависят от железки. В итоге плюнул и оставил по умолчанию, все равно там платформ были вин 32 да CE, можно один раз отладить и забыть, всё равно архитектура не поменяется. Ну щас разве что андроид добавился, но там тоже конечность такая же.
532 2039009
>>37123
Потому что changeEntity переменная это просто ссылка на объект, вначале она указывает на объект в таблице, а после присвоения ей person она стала указывать на переданный в метод объект person. Объект в таблице при этом ни как не изменился.
533 2039120
>>38980
Ну, просто у меня есть протокол, в котором передаются данные в смешанном формате: что-то в big, что-то в little и мне казалось что нагляднее будет не брать массивчик байт и разворачивать, а использовать BinaryReader/BinaryWriter. Видимо придется хардкодом байты доставать.
534 2039239
>>38057
А ведь он вероятно где-то работает. И даже говорит что знает ООП и что такое полиморфное поведение
535 2039283
Как можно выгрузить DataGrid (wpf) в Word или Excel?
536 2039293
>>38611
BinaryPrimitives мб попробуй
537 2039387
Пацаны, если в интерфейсе коллекции возвращаются как IReadOnlyList, но реализация интерфейса внутри себя изменяет список, то считается ли это ошибкой? Я хочу предоставить доступ к списку без возможности его изменять извне. Но с другой стороны, если я возвращаю IReadOnlyList, то я как бы говорю, что список вообще не изменяется, хм. Как быть?
538 2039404
А стоит ли записываться на курсы Skillfactory или лучше самому корпеть над учебниками?
1000064909.jpg28 Кб, 200x303
539 2039459
>>39404

>лучше самому корпеть над учебниками?


В 100 раз лучше. И нужно не просто повторять примеры из учебников, но и импровизировать. Для самых новичков пикрелейтед лучшая книга, но её можно достать только с рук, примерно за 1к.
540 2039466
>>39404

> Skillfactory


Ну анон, ты чего? Даже распоследний школьник сейчас знает, что скиллфактори и подобные курсы - объёб на деньги. Т.е. они тебя конечно чему-то научат, но за дичайший оверпрайс и по бесплатным материалам, которых в интернете тонна, и которые ты можешь взять и учить сам.
unsafe.png84 Кб, 1311x1003
541 2039561
Есть господа сеньоры в треде? Налетайте.
На пикче упрощённый пример структуры, которую я использую.
Я добавил ей интерфейс перечисления.
Но C# считает недопустимым использование unsafe в итераторе, и выдаёт ошибку.

>unsafe code may not appears in iterator



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

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

>yield return raw_values;


вот это (т.е. буду обращаться к буферу не напрямую, а через индексатор):

>yield return this;


то всё работает, всё компилируется.

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

Вопрос №2. Можно ли оставить вариант с return this и не бояться трудно уловимого бага?
542 2039631
>>39561
На первый вопрос вот ответ
https://docs.microsoft.com/en-us/archive/blogs/ericlippert/iterator-blocks-part-six-why-no-unsafe-code
Вкратце, использовать unsafe вместе с итераторами это хуевая практика и поэтому ребятам было впадлу допиливать компилятор чтоб он всё корректно делал в unsafe контексте.
543 2039681
>>39387
Интерфейс == контракт, который указывает что у класса есть методы с данной сигнатурой и что эти методы у него корректно должны работать. Если кто-то начинает всякую хуергу с ним творить - это не твои проблемы.
Если в реализации у тебя обычная коллекция, при этом она наружу не торчит, то опять же не твоя проблема что кто-то что-то там не так делает, если со стороны это все равно выглядит как IReadOnlyList.
Ошибкой это не считается. Это как: я явно указал что ожидаю объект типа Item, а мне какой-то еблан впихнул null или какого-то кривого наследника, который кладет хуй на LSP. Ты не можешь и не должен засирать свой код проверкой всего и вся, не можешь и не должен все возможные кейсы покрыть, твой метод в данном случае должен работать в ситуации, если контракт соблюдается и с расчетом что клиент не еблан, который подкидывает реализацию, которая хуй пойми как работает.
544 2039847
>>39387
если ты возвращаешь IReadOnlyList, то это просто вариант явно сказать "не мутируйте возвращаемый список по ссылке, блядь". То, что ты там делаешь с инкапсулированными данными внутри класса перед тем как его вернуть никого не должно волновать. Если только на вход метода тоже не было IReadOnlyList (но это выглядит максимально тупо)
545 2040129
Заранее извиняюсь за тупую формулировку вопроса, я просто даже хз как и куда гуглить. WPF, есть одна иконка для приложения, на панели задач / окне приложения отображается она нормально, но например в листбоксе (image) с такими же самими размерами эта иконка выглядит "всрато". Пробовал скармливать image'у и ico и png, менять размеры и изображения и image'a - никакого эффекта. Всратость заключается в отрисовке тонких белых линий - в впф'е она отрисовывается как-то кусками (где линия на пару пикселей грубее).
Хотел бы кинуть скрин, да только деанон-травля.
ConfigurationManager.AppSettings 546 2040408
двачик, изучаю C# и получил задание, если коротко, сохранить введённые данные в настройках и потом отобразить. Так вот, в методичке разбирается пример на .net framework 4.7.2, а в core 3.1 всё ваще по другому делается. Метанит и docs.microsoft мне особо ничего не дали. Может подскажете статьи или гайды на эту тему?
547 2040539
548 2040547
>>40408
Всмысле по другому? От версии к версии мало что меняются не особо критические вещи что бы не заработал код.
Консолье врите лайн, консоле реад лайн, юзинк стрим врайт, юзингк стрим врид консоль врителайн.
Давай метадичку, посмотрим шо там.
550 2040818
>>40129
Прочитай про RenderOptions
551 2041447
Какой же C# божественный ЯП... Ни на что его не променяю. Никогда.
552 2042112
>>41447
Язык отличный, тоже люблю всей душой. Но вот ушел я в ПМы, и теперь проектом на голанге рулю. И рядом с шарпом не стояло по языковым фишкам.
553 2042165
Блять простой сука вопрос, как в форме передать без костилей данные инпутов а так же айди элемента из модели, казалось бы таск типичнее типичного какое же было моё удивление когда Я НАХИЯ НЕ НАШЕЛ КАК ЭТО ДЕЛАЕТСЯ

КАК СУКА!?

это что так сложно что передачу данных из модели в форму для поста надо делать через дикие костили как скрытые инпуты? как блять сделать это без костылей?
554 2042238
>>42165
Ничего не понял. Для начала, речь о winforms или wpf?
555 2042247
>>42238
mvc, я в модель передаю ид елемента с которым работаю, а потом в форме данные но не могу передать это айди которое я получаю с модели , по крайней мере без костылей вроде скрытого импута, но для меня это не надежный вариант так как я работаю с деньгами и отправляю формой данные пользователя, скрытый ипут что бы передать идентификатор пользователя это абсурд но ничего лучше я не нашел, был еще вариант с returnurl но это вообще пиздец
556 2042480
Вопрос. Делаю UI для хуйни которая должна делать инстансы классов. Хочу чтобы через любого сорта метаданные я мог добавить типу класса какую-то дополнительно информацию. Например если я жму пкм > сделать инстанс > какой-то сорт метаданных для сортировки добавляемый вручную > типы. Как добавить такие метаданные? Я понимаю что есть System.Attribute, но мне хотелось бы чтобы он был обязательным, а не опциональным.
557 2043026
>>42247
Пожди. Ты про веб-хуйню? Зачем тебе вообще скрытый инупт? Смотришь клеймы, достаешь оттуда id пользователя, используешь.
558 2043339
>>43026
Так мне же наджо не по айди пользователя а по айди штуки пользователя
559 2043404
Есть одно впф окно в котором хостятится винформовский датагридвью (<WindowsFormsHost><winforms:DataGridView>).
Вопрос: могу ли я захостить как-то свой кастомный датагридвью унаследованный от винформовского?
560 2043406
>>40818
Спасибо анончик, мне нужно было RenderOptions.BitmapScalingMode="HighQuality". Почему майки поставили говеное качество по дефолту?
изображение.png304 Кб, 478x574
561 2043421
Всем хай. Нужна помощь с винформами. При наведении на кнопку по ей левой и правой границам появляются белые полосы. Как сделать, чтобы не появлялись?
У кнопки FlatAppearance.BorderSize = 0
FlatStyle = FlatStyle.Flat
событие MouseMove пустое
562 2043432
Есть несколько методов, которые выгружают кучу данных из базы данных. Если их попытаться в поток засунуть, то отваливается полпрограммы, потому что им эти данные нужны. Как быть? Как оптимизировать? Можно ли как-то запустить интерфейс проги без части загруженных данных, а потом уже обновить его, когда они дозагрузятся или что-то типа того? Прога на впф.
563 2043443
>>43421
UPD, долго над этим сидел, не мог понять. Отчаялся и решил попросить помощи тут, и почти сразу же нашёл решение сам. Крч, эти белые полосы - та часть кнопки, которая не занята пикчей. Пофиксил тем, что поставил цвет фона кнопки такой же, какой у фона формы, а не траспарент. Тогда полосы при наведении исчезли, но появлялись при нажатии. Пофиксил включением Stretch вместо Zoom
564 2043812
Понимаю дебильный вопрос. Насколько я понимаю, с .Net работают серьезные компании. И вопрос таков, высока ли вероятность отказа в трудоустройстве челу без прописки (бомжу)? Помогите советом.
565 2043818
>>43812
Пысы, я нихуя без опыта, это усложняет всё. Ну хотелось бы знать, как смотрят на это в серьезных компаниях. А то глядишь, даже стажёром не возьмут, при прочих равных.
566 2044083
Ну смотрите, вы мне советовали не изобретать велосипед, а взять Hangfire. Ну так вот, взял. В итоге, мне приходит требование: задачи должны выпоняться определенное число раз, нужно следить за програсом, нужно иметь возможность отменить их в процессе выполнения. Я сделал велосипед: сделал свою БД, там для задачи лежит флаг отмены, флаг того что задача стартанула(хенгфаер оказывается не умеет понимать что кому-то отдал уже задачу и просто скрывает ее на время и если задача, допустим, час выполняется - он подумает что ее абортировали и попробует ее заново запустить), лежит информация о прогессе, есть свои типы задач. Ну так вот, это очевидный костыль. Как без него сделать - не совсем понимаю. Давайте, раз уж продали мне hangfire - свои решения по тому как эти вот кейсы делать чтобы не так костыльно было.
Еще и это говно на самом деле не в состоянии точно следить за временем запуска, оно считает что важнее исполнить задачу, чем исполнить тогда когда сказали(кажется неважно, н допустим если задача - синхронизация времени устройств - проебанная минута накапливается на задержки по сети и время исполнения команды устройством, а все эти протоколы по выставлению устройству времени принимают отклонение эталона от того что отправило устройство), мой велосипед, который был до - с точностью до милесекунды триггерился, если не совсем пиздец с нагрузкой был.
567 2044169
>>43432
Грузишь данные асинхронно, заполняешь по мере поступления.
Если грузишь в фоновом потоке, запускаешь в главном потоке через Dispatcher.Application.Invoke тот код который заполняет интерфейсную часть.
Если это данные в какой-то грид, то нужно подумать про пагинацию, а не грузить все скопом.
>>43812
Эм, странный вопрос, у нас на 30+ человек со мной в отделе работает из них из того же города, да еще и с пропиской только я и еще человека 3.
Никогда не слышал чтобы это было проблемой.
568 2044257
>>06596 (OP)
Привет, погромисты.

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

Может я опять что-то упускаю и какими-то не теми словами гуглю.
569 2044289
>>44257
Если тебе просто для дебага консоль нужна - можешь просто в дебаг-сборке собирать как консольное приложение и туда все что нужно выводить. Если хочешь таки на формах/впф - то просто стилизуй текстбокс/ричтекстбокс.
570 2044352
>>44257
2044289 дело говорит
572 2045254
Хочу написать первое оконное приложение на C#, опыт Шарпа немаленький. Окошки больше 10 лет назад делал на Делфи.
Приложение ориентировано на Windows. Может быть когда-нибудь портирую его на Linux (это несложно).

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

Приложение будет бесплатным с открытым кодом — гуишная обёртка над бесплатной консольной утилитой. Нужен будет выбор папок/файлов, поэтому не хочу делать GUI через сайт
573 2045384
>>45254
Если тебе просто быстро накидать и не принципиальна кроссплатформенность - бери формы. Лучше - ничего не придумали, по сути. Быстро, просто, куча готовой хуйни. Да, так красивенько как в WPF не сделаешь, но если это утилитарная вещь, еще и с открытым исходным кодом - то, ИМХО, формы самое то.
15212270054340s.jpg4 Кб, 219x220
574 2046044
Илитарий подскажи как вкатится в MVC на winforms. Скачал пару проектов как примеры и просто каша в Голове.
575 2046046
Что использовать для написания мультиплатформенного (Windows, Mac OS) десктопного приложения на шарпе с GUI?
576 2046047
>>46044
ок котаны я нашёл годный гайд

http://skillcoding.com/Default.aspx?id=230
577 2046048
>>46046
-Xamarin.Forms
-Framework Avalonia (Xaml,MVVP)
578 2046080
>>43812
Всем (почти) похуй.
У нас работает куча людей без военников, дипломов и прочего
20703.jpg69 Кб, 790x790
579 2046263
Коллеги, подскажите по деплою. Всю жизнь ковыряю десктопные приложения и легаси-говно, веб-функционал складывал в папочку, откуда её забирают девопсы.

Сейчас хочу написать бота для телеги на ASP, посмотреть хоть что это.
Как мне задеплоить сервер на Azure, чтобы он реагировал на GET/POST запросы? Как это хотя бы называется? VPS? Виртуальный хостинг?
580 2046265
>>43812
Может смутить каких-нибудь долбоёбов из крупных компаний с большим количеством низкооплачиваемых должностей (всякие гипермаркеты, заводы, логистика).
Там IT исключительно обслуживает бизнес, но проверки для всех сотрудников одинаковые.

Чисто айтишным компаниям наплевать абсолютно.
581 2046266
>>45254
>>45384

Как-то грустненько, что до сих пор удобнее всего формы. Они устарели лет 10 назад.
Я бы на WPF сделал.
582 2046432
Смотрите, есть сервис IMessagingService, который управляет каналами сети. И есть Listener's, через которые можно получать сообщения из каналов. Один класс может реализовать несколько таких Listener'ов. Вопрос, как удобнее всего сделать подписку на эти каналы.

Пока я думаю просто передавать ссылку на object, а внутри делать проверку, как на пик2.
583 2046484
Сап помогач, на работке дали задачу с эстимейтом в неделю написать с нуля веб-приложение с аутентификацией и крудом пользователей. Вроде базовая хуйня, но я с asp.net'ом, как и в принципе с шарпом не работал. Можете подкинуть видеоуроков или гайдов по теме? обещаю как закончу прочитать книгу и переписать чтобы было красиво
15683921024310.webm483 Кб, webm,
500x494, 0:09
584 2046487
>>46484

>я с asp.net'ом, как и в принципе с шарпом не работал

585 2046579
>>46484
https://metanit.com/sharp/aspnet5/15.1.php

Круд пиши сам по образу и подобию.
тут ещё вопрос: рейзор или React.JS + JSON API
586 2046622
>>46263
Для тебя уже больше 3 года есть видео на ютубе на русском.
587 2046702
В шарпах много легаси, в сравнении с остальными технологиями?
588 2046848
>>45254
Если не заморачиваться с кроссплатформенностью, делай на аналоге WPF - наиболее гибко и удобно: AvaloniaUI Есть баги и прочие детские неожиданности, но вцелом работает.

Хочется реальной кроссплатформенности - Electron.NET и поверх него Angular, но тут на любителя - веб все же.
589 2046885
>>46622
Что за видео, анон? Дай ссылочку
Можно и не на русском.
590 2047309
Здарова бандиты. Кто ни будь писал кастомные сортировки? Мне нужно массив стрингов отсортировать по правилам Enum - к примеру Hui - 0, Jopa - 1 и т.д. Orderby должен матчить стрингу со значением Enum и сортировать согласно нумератору. Есть какие ни будь идеи? У меня в мыслях только писать свой Compare<Enum>, может есть что попроще?
591 2047710
>>46885
Блять, ну загугли, я же тебе тонко намекнул.
592 2047811
Не, всё-таки у VS 2019 топовый дизайн редактора. Посидел месяцок на тёмной теме в Райдере и как-то вообще не зашло. Плохо фокусируешь и шрифт мне не зашёл, хотя я его пробовал менять, но это траблы на уровне редактора с ним. И как же прекрасна белая тема ВС студии, божечки.
image.png18 Кб, 992x124
593 2047981
Сап двач.
WPF.
Есть Listbox, хранящий в себе исключительно объекты типа object, которым в форме присваивается карточка с изменяемым Template.
Есть какие-нибудь способы записать все элементы с формы в бинарный файл? Тип, вот будет у меня 5 карточек в listbox, нужно записать в файл его данные или разметку, чтобы из считывания после можно было восстановить форму.
594 2047999
>>47981
Разобрался, всем спасибо
595 2048017
>>47999
а нет, не разобрался
596 2048035
>>48017
Всё, разобрался
image.png40 Кб, 749x279
597 2048131
А насколько нормально изменять значение параметра метода? Помню, читал, что так лучше не делать. В данном случае мне нужно объявить:
var correctAmount = amount;
получается?
598 2048133
Или всё же это зависит от контекста? Если метод большой и какие-то вещи неочевидны, тогда трогать параметры не стоит.
image.png29 Кб, 551x251
599 2048139
Или вот ещё пример.
600 2048144
>>48131
Зависит от парадигмы в которой ты хуйню делаешь.
Я бы просто кидал исключение. Но я вообще на каждый чих люблю кидать исключения так-то.
image.png21 Кб, 865x171
601 2048964
Сап двощ, есть кнопка b.
При клике на другую кнопку, она должна присваивать код xaml кнопки с другим цветом(очень важно делать это именно через присваивание xaml, просто так надо и всё).
Но при клике, как она была фиолетовая, так и остается, но если выводить через MessageBox ее Background, то он принимает значение Aquamarine. Как починить так, чтобы кнопка поменяла цвет не только "логически", но и видимо, на форме?
602 2049139
Покритикуйте позязя.
https://ideone.com/bWKA7b
603 2049588
Сап.

Кто какие решения использует для интеграции браузера внутрь винФорм/ВПФ?
604 2049598
>>49588
Пишу свой браузер. Очевидно же.
605 2049977
>>49598
Бля, как смешно. Я обосрался от смеха, прочитав твой ответ. Серьёзно. Ты в дотнет-разработку, случайно, не из стендапа вкатился?
606 2050045
Обсуждайте асп.нет!
607 2050191
>>49588
>>49598
Есть дефолтный контрол webbrowser как на впфе, так и на винформах. Чтобы управлять/редактировать html код в нем - Microsoft.mshtml, HtmlAgilityPack.
608 2050441
>>50191
Да только там интернет эксплорер 7.0, который не способен открыть панель тензорборда.
Ну я уже присмотрел CEFsharp.
609 2050687
Ради всего святого, скажи мне кто-нибудь в чем вообще смысл от SignalR ??!!
делал как на пикрилах хочу с сервера что-то отправить пользователю возвращает Clients is null
А КАКОГО ХРЕНА?

Когда я тригерю те же методы из клиента тогда они уже не нулл, какая-то односторонняя хуйня получается этот сигналР, совершенно не юзабельная так как с клиента сервер можно затригерить и обычным ажаксом, нахуя он вообще тогда нужен хз
610 2050731
Есть свойство LoggedIn, которое говорит о том залогинился ли юзер. Понадобилось добавить события на ЛогИн и ЛогАут - как их назвать?

Можно переименовать свойство в IsLoggedIn, а события назвать LoggedIn и LoggedOut. Но хз.
611 2050743
Хм, судя по коду микрософтов можно это свойство назвать Authenticated и будет заебись.
612 2051469
Шарпист-сама, подскажи можно ли на C# реализовать десктопное приложение для Windows и Linux (желательно с заделом под мобилки). Если возможно, то какой фреймфорк/технологии? Заранее благодарю тебя, мудрейший.
613 2051474
>>51469
Смотри Avalonia UI для десктопа
Xamarin Forms для мобилок
614 2051476
>>51474
Аригато, шарпист-сама! Яростно благодарю тебя за ответ!
615 2051762
День добрый аноны работаю в престижной спорно по меркам моего города международной уже как месяц IT компании 1С программистом сначала думал не на долго пока денег нет и всё такое. Теперь чувствую, что с ростом ЗП начинаю вязнуть в этой клоаке.
В общем я прочитал весь Player's Guide и у меня большое желание трогать web. Пока только простенькие игры в Unity делал и консольные задания из книги. Скажите куда мне дальше копать.
А и ещё в компании есть возможность перекатиться в C# как определить что мне уже не стыдно стучать на собеседование. А то приду такой бе-ме я там книжечку прочитал и вот у меня квадратики в Unity двигались возьмите за еду работать пожалуйста я больше не хочу бухгалтерии. Скажут ещё, что я дебил и надо минимум 2-4 года опыта, а мне там ещё работать. Стыдно же будет
616 2051859
>>51762
Нихуя не понял. Ты хочешь в свою же компанию собес пройти, но на сисярп-девочку? И боишься, что тебе откажут и назовут дебилом, пушто у них (у вас) берут с опытом от 2-4 лет?
1. Почему тогда не чекнешь открытые вакансии компании, чтобы посмотреть какие там требования?
2. У вас есть ресурсный менеджер? Есть контакт с кем-то из шарпистов в компании? Если да, то обкашляй этот вопрос сначала с ними. на крайняк хрюше напиши, что хочешь съебаться со своей хуйни на другую хуйню

Я в свою компанию пришел питонистом, но по факту нюхал csv и yaml файлы дрочил. Через 4 месяца написал ресурснику, что это все хуйня и я хочу либо выучиться на новую технологию и проект сменить (если на пистоне нет и не предвидится), либо съебать с компании до окончания контракта. Вот так перекатился на дотнет.
617 2051879
>>51859

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


Да

>И боишься, что тебе откажут и назовут дебилом, пушто у них (у вас) берут с опытом от 2-4 лет?


Да

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


Я чекнул требования охуевшие типо 2-4 года мидл опыт разработки знание PHP, HTML JAVA других языков программирования и т д.
Поэтому спрашиваю какие в целом предъявляют требования чтобы вкатиться в +/- нормальную контору. Может мне стоит менять компанию раз такие дела. 2 Года разработки с нихуя не появляются.

>У вас есть ресурсный менеджер?


Они говорят сейчас на должность ученика вакансий нет. Я такой ага это типо я должен сидеть тупить и ждать вакансию? Нет уж спасибо сам учиться буду лучше съебусь от вас если что.
Мысли примерно такие.

>Есть контакт с кем-то из шарпистов в компании?


Нету и они не особо общительны, но в теории могу любому руководителю группы на почту написать типо так и так вам дурочок в команду не нужен, но я стесняюсь как-то.
изображение.png4 Кб, 484x203
Хелпа с Xamarin 618 2051948
Сап, аноны

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

У кого-нибудь было похожее?
620 2051965
>>51954
Устаревший пакет :(
622 2052015
>>51980

>


ДА! Работает. Спасибо огромное)
623 2052286
Есть один exe, который лежит в сетевой общей папке. Если один пользователь запускает прогу, то всё нормально, если пытается ещё один запустить, то она не запускается. В чём может быть проблема и проблема ли это вообще с прогой или серваком?
624 2052425
Какой метод отсортирует мне одномерный массив от меньшего к большему? Array.Sort не работает.
625 2052539
>>52425
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;
}
}

Держи. Можешь не благодарить.
626 2052543
>>52539
блядь, ебучий спеллчекер спрятал во втором цикле ошибку. Там должно быть j < array.Length
627 2052549
>>52543
Плюс еще я еблан в свапе забыл дописать. Пиздец. Как представлю что на собесе нужно будет на листочке это писать.
628 2052626
Хм. Допустим у меня в приложении уже устоялась структура базы и она меняться больше не будет. Но вот сами базы - возможно. Так вот, какими механизмами можно свои запросы что я ручками писал прокинуть? Ну, допустим в MS SQL - ограничение на число записей делается TOP а в MySql - LIMIT, что мне нужно как разработчику сделать чтобы мой сложный запрос, выполнился и там и тут одинаково, кроме как проверять какой провайдер используется EFCore'ом?
629 2052748
>>52549
В пизду такие собесы.
630 2052751
>>50441
Чет он, правда, весит дохуя.
631 2052841
>>52286
Ебать ты неофит, это совсем платина которая уже была понятна где-то 1947 года (если я не проебался с последней цифрой).
632 2052947
необходимо знать и уметь копошиться в устаревшем UI говне(winforms/wpf)

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

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

Подумой анончик, оно тебе надо?
Но если ты молодой и шутливый то можешь учиться играя в новый Gmod2 на Source 2 https://sbox.facepunch.com/about/
633 2053054
>>52947
Хули ты название своего говносайта скрыл?

Касательно языка: сорт ов говна. Пара первых вакансий в java тоже не блещут креативностью: андроид параша, легаси код, ноджс, спринг.
634 2053181
>>52947
А что ты хочешь единственный тред где в шапка оправдание.

>4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?


>Неправда. C# активно развивается, недавно вышел .NET 5 и С# 9.0. Дотнет стал полностью опенсорсным и кроссплатформенным. В том же энтерпрайзе он очень даже востребован.

635 2053806
С чего начать, метанит или троелсен? У Андрюши цифры какие-то не модные шарп 7, дотнэт 4... плюс есть подозрение, что у метанита с упражнениями получше дело обстоит
636 2053967
>>53806
Похуй с чего, если вообще не кодил. На таком этапе главное закрепить основы: работа с переменными, циклами, массивами, потоками, создание методов(функций). Когда это уже освоил - гуглишь ООП, паттерны и солид. Потом шлефуешь это многопоточностью, асинхронностью, LINQ. После этого - пробуешь что-то свое начать пилить, не сильно большое, хватит 10к строк. Когда запилишь - можешь пытаться искать работу.
638 2054009
>>53967

> После этого - пробуешь что-то свое начать пилить, не сильно большое, хватит 10к строк.


Калькулятор. Как раз в десяточку уместится.
639 2054024
>>53967
Та я в курсе за роадмэп. Ладно понял, посмотрю шевчука...
640 2054028
>>54009
Я калькулятор на основе обратной польской и интерфейсом на формочках в 900 строк уместил в свое время. Поддерживал все стандартные операции(плюс-минус-умножить-разделить, скобочки, возведение в степень), работу с дробными и отрицательными числами. ХЗ что нужно чтобы оно в 10к строк вылилось.
641 2054221
Поясните как вы ходите на собесы при работе в офисе?
Ну на удаленке понятно, как просто проебланили в рабочее время. А офлайн как? Часто ходите?
642 2054365
>>54221
Болеем и ходим
643 2054548
>>54221
Пацаны, сегодня у меня личные дела в городе в середине/конце дня, буду недоступен с XX на три часа.
644 2054606
помогите подыскать курсы, где бы разбирались конкретные задачи под C#. Например, сегодня мы пишем крестики-нолики, завтра пишем змейку, потом пишем простенькую игрушку с базой данных. Большинство видео-курсов разбирают одну лишь голую теорию, и я никак не могу найти курс, который основывался бы на практическом написании небольших, но полезных программ, которые наглядно показывали бы пользу от тех же делегатов или интерфейсов или еще от чего либо.
645 2054611
>>54548
Я несколько раз просто запирался в переговорке с ноутом и все. Потом просто говорил, что собеседовался. Всем похуй.
646 2054701
>>54028

> ХЗ что нужно чтобы оно в 10к строк вылилось.


Воля нужна и желание трудиться.
647 2055018
>>52947

> знать и уметь копошиться в устаревшем UI говне(winforms/wpf)


Что там знать и уметь, дегрод?

>>52947

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


ЧТо значит "на чистом дотнет"?

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

Ты дотнет-стажёр, который хочет себе конкуренцию снизить?
648 2055063
>>54606
Как же я вас блять всех ненавижу читайте книжки.
Учитесь переваривать информацию, да 90% решений на проблемы с которыми ты столкнешься в жизни можно найти в интернете, но и головой тоже иногда думать надо.
649 2055105
>>54606
Придумай сам практическую полезную задачу и решай её, используя имеющиеся теоретические знания. В чём проблема? Ты думаешь, если "сырая" теория тебе не помогла, тебе поможет сырая практика в виде создания нахуй тебе не упавших змеек?
650 2055174
Аноны, помогите с небольшой архитектурной проблемкой. Есть класс, который работает с аккаунтами бекенда. Мобильный аккаунт может быть привязан к Фейсбуку, чтобы входить не по логин/паролю.

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

И тут вопрос, как реализовать работу с конфликтом в 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);
650 2055174
Аноны, помогите с небольшой архитектурной проблемкой. Есть класс, который работает с аккаунтами бекенда. Мобильный аккаунт может быть привязан к Фейсбуку, чтобы входить не по логин/паролю.

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

И тут вопрос, как реализовать работу с конфликтом в 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);
651 2055358
>>54606
Открой на ютубе любое видео аля пишет флапи бердс на шетемеле. И уже через 10 минут ты нихуя не поймешь что тебе говорят.
Читай книги/статьи, решай примитивные задачи.
652 2055386
Подкиньте туторов по asp.net web api, а то на мсдн заканчивается на самом интересном. Если еще там будет гайд по структуре (типа вот эти лееры данных, контроллеров), то буду премного благодарен.
653 2055483
Поясните как правильно должен работать TCP-сервер, а то все примеры это какая-то наколеночная хуета.
Ну, вот допустим - везде берут и просто в цикле принимают соединения. Почему-бы не сделать несколько потоков которые бы пытались бы принять и начать обрабатывать соединение? Плсю, нигде не показано, как нормально остановить сервер, просто в консольном приложении жмакаем кнопочку, ну, слушателя мы убиваем, а что там с теми кто уже принят будет? Как их-то теперь убить, если, допустим, у меня приложение на формах и я хочу иметь возможность перезапустить сервер или остановить его, что-то еще поделать и запустить заново.
Короче, где посмотреть нормальные примеры этого вот, а не хелловорлды наколеночные.
654 2055677
>>55063

>Как же я вас блять всех ненавижу читайте книжки.


На говно ты исходит можешь, а подсказать кто лучше метанит или Троелсен нет. Ясно
655 2055886
>>06596 (OP)
Кто-нить подскажет, как сбилдить это https://github.com/haf/System.Data.SQLite/blob/master/SQLite.Interop/SQLite.Interop.2010.vcxproj в mono на linux?
656 2056706
Как EF'ом сделать:
select ID +1 From Table t1
where not exists (select * from Table t2 where t1.id +1 = t2.id);
657 2056968
Как создать этот некий "юнит тест"?
658 2056977
Пожалуйста, ответьте на вопрос без подъёба. Я понимаю, что скорее всего тупые индусы или наши васяны как обычно всё не правильно перевели. Ну не знаю и не понимаю я этого вашего дебильного англиского и люто бешено его ненавижу!
659 2057286
>>07089
С С++ я вкатывался 2 месяца. В С++ два года
660 2057288
>>07643
из-под винды есть Console.Beep(); Бери текст в бинарное виде и засовывай туда
661 2057291
>>56968
https://metanit.com/sharp/aspnet5/22.1.php

Работает и в консольном приложении,не только в ASP
662 2057539
Что годного, актуального почитать/посмотреть по asp? инбифо метанит/ютуб если других советов не будет, с них и начну
663 2057565
>>57539
pro asp net core 2
664 2057682
>>07517
Двачую, так и вкатился. Конечно не работа моей мечты - занимаюсь улучшением нашей BPM, сайтами, которые на php + laravel в которых я мало чего понимаю (ну ничего, разберусь). Но для первой работы в IT сойдет, каждый день узнаю что-то новое, и главное набираюсь опыта. Если пройду испытательный поработаю тут еще годик и съебусь куда получше.
665 2057914
>>56977
MSTests, NUnit, xUnit - библиотеки для создания любых видов тестов.
Unit tests переводится как модульные тесты, это только одна из разновидностей тестов.

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

>>55483

>все примеры это какая-то наколеночная хуета


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

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


API позволяет принять только один. Принимай асинхронно.

>как нормально остановить сервер


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

>возможность перезапустить сервер


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

>где посмотреть нормальные примеры


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

>>55174

>callback


Ты из жс вылез? Даже там такой хуйни не пишут. И с хренали он bool принимает? На кой хрен в классе свойства? Failure - не объясняет причину ошибки. Пусть фронт зовет другое API с намерением заменить аккаунт и передает временный токен нового аккаунта, используя авторизацию фейсбука.
666 2058273
Чуваки. я чет не понимаю. листаю значит плеер гайд эдишен 3. тут такая тема.

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

у меня оно возвращает 0. И стало работать "как задумано" только когда я написал 3,14 и возвращает оно соответственно 3,14. Но ведь там по правилам должна быть точка, а не запятая не?
667 2058304
>>58273
По правилам используется дефолтная локаль системы и загоняется в статический класс треда/треда юи.
669 2058603
>>58581
Ссылку на проект добавил?
670 2058604
>>58581
Плюс, т.к. метод статичный - тебе не нужен экземпляр. Но т.к. ты не пометил его паблик - он не будет виден.
671 2058605
>>58581
Да. У тебя класс Program еще и приватный
изображение.png63 Кб, 1928x1048
672 2058607
>>58603
>>58604
>>58605
Думал, получится вот так, но вот так теперь другая проблема.
673 2058610
>>58607
Тьфу! Всё, не надо, сам разобрался.
изображение.png74 Кб, 1928x1048
674 2058611
Всё же я не разобрался...
изображение.png65 Кб, 1928x1048
675 2058612
Фух. Как же хорошо, что это анонимная доска и ИРЛ никто не узнает, кто это тут такой слепой.
677 2058643
Ну пиздец.
678 2058646
>>58643
Ты перенес тестируемый класс внутрь проекта с тестами. Оно должно быть отдельно. Ну и раз объявил переменные - используй их, а не руками вбивай.
679 2058648
>>58643
Да, На случай если ты не знаешь как добавить ссылку на проект
680 2058659
>>58648
Я так и сделал сейчас. Всё равно та же хуйня.
681 2058684
>>58659
Program - сделай публичным и добавь using Юнит_тест
682 2058851
>>58684
А почему вот тут всё получается без всяких юсингов?
https://youtu.be/p3EUhUjv2LM?t=389
683 2058860
>>58851
Потому что там неймспейс вида:
ABC - тестируемый класс
ABC.Test - тестирующий
Так вообще неймспейсы устроены: ты можешь обращаться к элементам неймспейса более высокого уровня из низкого, но не наоборот. Т.е. если у тебя будет нейсмпейс Data.Db - ты сможешь без юзингов из Data.Db обратиться к элементам Data, но чтобы обратиться к Data.Db из неймспейса Data - нужно будет таки using использовать.
Так вот, у тебя тестирующий класс находится в другом неймспейсе. Потому либо измени его, либо используй using/
изображение.png40 Кб, 1024x680
684 2058899
>>58860
Почему-то у меня то же самое не прокатывает с "Библиотекой классов". Просто не видит Program, хоть убейся. И ссылку подключал, и юсинг не помогает, ничё не помогает. Выбираю проект как на картинке, в душе не ебу, что выбирает автор видео.
изображение.png89 Кб, 1928x1048
685 2058902
Вот это можно считать успехом в изучении юнит тестов? Это просто пустой проект. Если сделать его public, то не может найти точку входа, а если static, то публик методы нельзя в нём использовать. Пришлось оставить маин пустым.
686 2059021
>>58902
Ты не понимая базы, полез в тесты.

1. Для тестов нужны публичные или дружественные классы/интерфейсы/... с публичными методами.
2. К статическому методу можно обратиться через имя класса. К не статическому, через экземпляр класса.
3. В консольном проекте обязан быть статический метод Main. Может быть хоть в классе ВасяПупкин. В библиотеке метод Main не нужен.
изображение.png88 Кб, 1928x1048
687 2059103
>>59021
Спасиьр, я понял. Создал в Main переменную типа Program и всё получилось.
А при наличии более одного тестов, который успешно проходят, зелёная галка так и должна быть с единицей? Количество успешных тестов надо узнавать только по консоли снизу?
688 2059109
>>59103
Число показывает количество тестов в группе. Если хотя бы один тест упадет, то галка поменяется на крест. Обычно генерируют цветастые html репорты + % покрытия тестами.
689 2059113
>>59109
А почему у меня 1/2 в галке?
690 2059124
>>59109
Ладно, я потыкал кнопки и разобрался. Метод теста не добавился почему-то.
T1MCLiZIrJI.jpg15 Кб, 609x48
691 2059211
Может кто-нибудь подсказать как это сделать на уровне студента 1 курса? Я уже неделю парюсь.(Массивы)
692 2059305
Где можно прочитать про то, как отделять поток GUI от потоков с обработкой несвязанных с GUI данных? Я не смог правильно загуглить.
693 2059486
>>57682
Не понял, на пыху вкатился? В шарпы не собираешься переходить?
image.png51 Кб, 591x692
694 2059668
бля мужыки, извиняйте за ньюфажный вопрос, но почему оно не компилится? вроде код верно написал
695 2059787
>>59668
На 17 строчке перепутан return с result и какого-то фига на 20 строчке выводится Nums, а не result.

>>59305
Ты его и спрашиваешь в треде непонятно:
Если архитектурное разделение UI говна от логики, то MVC, MVP, MVVM, MVU.
Если ты пытаешься глобально разделить говнокод, то 3-tier architecture, onion, ddd и так далее к еще большему пиздецу человеческой мысли по типу акторов.
Если ты пытаешься изменить UI говно из другого потока, то это всякие BeginInvoke, диспетчеры или банальный async-await.
696 2059848
>>59668
Так тут вроде почти только ньюфаги и сидят и друг другу вопросы задают и друг другу отвечают.
111.png32 Кб, 676x385
697 2059909
>>59211
Выбирай что нравится
698 2059974
>>59909
Спасибо за ответ, но не понимаю что значит "начало".
699 2059979
>>59974
Кусок массива с 0 по k
image.png10 Кб, 343x263
700 2060163
>>59979
Не получается. Ошибка: не удается применить индексирование.
701 2060304
>>60163
Ты переменную x неправильно создал. Чел выше через .. создал кусок массива.
702 2060308
>>60304Смиренно, прошу пример, бо у меня не получилось через .. создать
703 2060340
>>60308
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.
704 2060453
>>60340
Не могу я найти csproj
705 2060533
Привет. Аноны. Работаю в банке, пилю доработки на CRM Террасофт. ЗП хорошая, но хочется в свободное время развиваться. Может быть, поработать на фриласе за валюту (если за годик заработать тысяч тридцать, закрою ипотеку чисто из подработочных деняк).
В сущности, вижу ровно два направления.
1.Core 5. Тут все просто: энтерпайз, перспективная технология.
2. Unity3d. Геймдев. Может быть даже запилю свою фирму в будущем (работал юристом,умею немного в бизнес, умею в рисунок немного, в свое время написал нон-фикшн книгу и хочу попробовать себя в художественной прозе).
Какое из направлений предподчительнее? Геймдев дыра или нет?
706 2060602
>>60533
Геймдев дыра. Либо ты вкатываешься в безденежные инди стартапы и сосёшь хуи в нищете, либо ты вкатываешься в мобилопарашу и перестаёшь себя уважать в принципе, либо ты уже опытный юнитиразраб и в таком случае у тебя есть какие-то перспективы, но это не твой случай.

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

Я бы рекомендовал-таки энтерпрайз на дотнет 5 (и 6, когда выйдет).
707 2060621
>>60602
тырпрайз, попасть ещё надо
708 2060645
>>60453
У твоего проекта файл с расширением csproj. Раз не можешь найти, значит переписывай строку на старье C# 7.3.
image.png1,1 Мб, 860x1280
709 2060676
После прочтения вот этой статьи если честно немного недоумеваю, разве линукс принадлежит гугл? андроид же на линухе работает, что мешает тем же лг или самсунг просто провести хуем по губах гуглу и выпустить свои версии андроид где не будет анальных зондов или софт гугла будет вообще запрещен к установке? почему так никто не делает? и вообще реально ли самому допилить андроид что бы удалить оттуда все анальные зонды?
710 2060696
>>60676
Ничего не мешает. Делают. Реально.
Почему не популярно? Потому что производителям это не нужно. В чём им профит ставить палки в колёса гуглу и самим ебаться со сборкой и последующим апгрейдом собственных версий андроида? Это нужно всяким помешанным на анонимности и приватности красноглазикам, которые собственно этим и занимаются, пиля собственные прошивки.
711 2060700
>>60696
А где такие ос можно найти тогда? Или есть форум какой-то где мне более детально пояснят?

>>60696
а нельзя делать так типа выкатили ос, протестировали все ок деплой и забили, вот блекбери так делает, у них на каждую новую генерацию телефонов новая ось, и ничего вроде, живут
712 2060704
>>60700

>Или есть форум какой-то где мне более детально пояснят


4pda

>вот блекбери так делает, у них на каждую новую генерацию телефонов новая ось, и ничего вроде, живут


Ты сейчас про какой блекбери говоришь? Последние модели на почти стоковом андроиде, у них изменений не больше, чем у других производителей, в основном просто предустановленный софт.
713 2060714
>>60704
Нет, я говорю о тех которые на BlackBerry OS выходили

>4pda


Спасибо
714 2060719
>>60714

>Нет, я говорю о тех которые на BlackBerry OS выходили


И где они сейчас?
715 2060733
Я только вкатываюсь, не понимаю как подключать базы данных, я пробую вот так и update-database на одном компьютере это работает на другом нет, в чем причина?

Среда: Нет 5
716 2060735
>>60719
Ну так не модно почему-то, раньше иметь свою ос была престижно и почетно, хвалились еще тем какие у них ос безопасные, но это желание везде присобачить кнопочки все нивелировало а потом выкатили андроид и сдохли вообще нахрен, а ведь когда-то под 20% рынка держали
717 2060738
>>60735
Ну так это всё взаимосвязано. Раньше нужно было тратить ресурсы на разраотку и поддержку своей ОС, а теперь то всё можно свалить на гугл с его андроидом и заниматься тем, что приносить прибыль.
image.png10 Кб, 341x93
718 2060766
Этот код можно сократить до 1й строки?
719 2060782
>>60766
Что этот код вообще делать должен? Что лежит в onceGoogleAuthCode? Зачем ты это переприсваиваешь другой переменной и вручную обнуляешь первую (у тебя сборщик мусора есть, если что).
Давай пояснение своего кода, потому что сейчас я не вижу причин, почему нельзя написать просто callback(onceGoogleAuthCode);
720 2060784
>>60602
Есть ли смысл пилить индипарашу для души в свободное время, или за рамки хобби это не выйдет?
721 2060785
>>60784
Даже если не выйдет за рамки хобби, то это всё равно имеет смысл.
722 2060792
Есть какие-то книги по C# с заданиями? Чтоб не просто теория была, которая вылетает из головы через два дня, но и практика.
Можно на английском но лучше на русском, можно не совсем для начинающего в программировании но лучше для начинающего.
723 2060799
>>60792
Конкретно книг не припомню, но существует полно сайтов с заданиями разного уровня сложности.
724 2060800
>>60799
Например?
725 2060803
>>60784
Есть смысл пилить мобилки. Одна мобилка может приносить больше, чем ты заработаешь на топовой позиции в Москве.
727 2060852
>>60819
Спасибо
728 2060878
>>60733
Проверь руками есть ли база.
729 2060937
>>60819

> В подборку нет кодварс


Феееее. Вот зачем ты так?
730 2060975
У вас есть какой-нибудь компилятор, кроме встроенного в ide? и чтобы винформочки поддерживал
732 2060993
>>60988
благодарю
image.png84 Кб, 890x550
733 2061185
Пацаны, как думаете, стоит ли юзать #if или лучше просто возвращать NotSupportedException в зависимости от платформы. То есть уже внутри метода использовать #if, чтобы сам интерфейс оставался чистым? Пример на картинке. В некоторых других сервисах есть похожие методы и свойства.
734 2061214
>>61185
Я тебе говорил как лучше: вынеси специфичное поведение в стратегию и при билде под разные ос фабрикой/билдером получать нужное. Нет, не хотим, хотим нахуячить деректив, регионов, а интерфейс сделать толстым как жопу мамаши. Охуенное ООП, товарищи. Просто 11/10.
3012rd.jpg50 Кб, 600x424
735 2061221
>>61214

>Я тебе говорил как лучше


У тебя энтерпрайз головного мозга.
736 2061224
>>61221
Ты посмотри что за хуйня там выше. Это же пиздец. Я понимаю, если #if используют когда нужно обеспечить поддержку легаси-фреймворка, моно, это вот, но блядь, в юнити опредеять андроид или айос. Пиздец.
Ладно, не буду никого учить. Хотите жрать говно - ваше дело. Когда половина кода будет состоять из деректив, будто вы в ебучем си и вас заебет эта хуйня - сами дойдете до этого, если больше одной извилины имеете.
лаба anonimus 737 2061518
Сап ,анонимы. Помогите ,пожалуйста, сделать лабу, нужно найти темп роста V(i)
Формулы и свои наработки прикрепляю
https://pastebin.com/Y9pgrkqR

Спасибо за ранее.
738 2062252
Сорри за тупой ебаный вопрос. Короче начал web api проект, поставил галочку на создание докерфайла, вынес модели в отдельный проект, в основной добавил референс. Написал docker-compose.yml с тремя сервисами: mysql (база данных), minio (хранение файлов на s3), app (само приложение). Билд фейлится на последнем с ошибкой, что тип или неймспейс Data не найден (вы что, забыли добавить референс?). Подскажите как правильно это все делается? вообще за советы и ссылки по докеру буду благодарен
Стоит ли выносить приложение в отдельный контейнер и настраивать между ними нетворк?
Как скаффолдить контроллеры, если у меня mysql только в докере? при генерации контроллера, который with Entity Framework пишет, что не найден MySql nuget пакет pomelo mysql установлен в обоих проектах
739 2062278
>>59486
Работал на заводе, учил шарпы. На вакансиях где чисто веб разработка на шарпах в моем мухосранске требования высокие, я даже не пытался. Но я стал ходить по другим собеседованиям, где стек отличается. Даже к 1Сникам заглянул, дали тестовое я попробовал сделать, не понравилось вообще и сказал что доделывать не буду. В итоге нашел себе вакансию разработки под CRM, плюс у них кучу сервисов на шарпах написано и на пыхе всякого дерьма много. Туда и вкатился, со временем конечно собираюсь перейти на полноценные шарпы, но для первой работы в IITи так сойдет
740 2062284
>>62252
Прочитай, блядь, как работает докер.
Охуеть, блядь. Ну серьезно, это во второй статье на сайте самого докера рассматривается. Я понимаю, когда ты погуглил, потыкался, и что-то неясно начинать спрашивать, но это же основа. Давай, спроси как переменную объявить.
741 2062312
>>62284
Чел ты. Тыкни на ту самую "вторую" статью на сайте докера, потому что я перечитал документацию и, не поверишь, потыкался самостоятельно, прежде чем вопрос тут задавать
743 2062486
Хм. Хм.
В контексте всех этих IOC- плохо ли делать что-то типа:
class Notifier<TType>
{
public event EventHandler EventName;
public void PingEventEventName(object sender, EventArgs e);
}
?

Ну, допустим, у меня есть куча каких-то короткоживущих объектов, в них могут нужные события происходить, я, допустим, хочу при их срабатывании что-то во многих местах делать. Делаю этого Notifier - синглтоном, те кто хотят сообщить о событии - вызывают метод, в нем просто кидается эвент. Те кто хотят послушать - подписываются уже на эвент из этого Notifier.
Ну, банально, вот в у меня есть мобы, я хочу чтобы при событии СМЕРТЬ - игрок получал опыт, спавнилка понимала что нужно нового моба заспавнить через n секунд, а компаньон говорил: Да, так их. Игрок, спавнилка и компаньон - будут жить долго, скорее всего будут синглтонами, а вот мобы возможно будут жить всего пару секунд, если не меньше.
В общем. Не знаю. Как лучше-то прокидывать события между объектами, чтобы не создавать лишней взаимосвязи.
744 2062543
Сап, аноны, накидайте годных уроков для XAML. С меня как обычно.
745 2062714
>>62486
Используй entity component system. Синглтонами он собрался хуярить.
Screenshot2021-06-0610-57-50.png341 Кб, 822x619
746 2062827
>>59787

>На 17 строчке перепутан return с result и какого-то фига на 20 строчке выводится Nums, а не result.



сяп за ответ, жаль народу на доске мало и я и сам уже успеваю написать код ещё рас и обдувать что бы вышло без ошибокм чем кто то ответит
747 2062861
>>62827
Просто тред в бамплимите и уже на самом дне, его никто не видит.
748 2063668
>>62861
тогда что, нужен перекот?
1621080317466.png295 Кб, 501x443
749 2063677
>>2063675 (OP)
>>2063675 (OP)
>>2063675 (OP)
>>2063675 (OP)

кат

блять извиняйте я проебался с перекатом
image.png52 Кб, 496x596
750 2063996
>>60819

>https://exercism.io


Ну ёб твою мать.
image.png30 Кб, 385x364
751 2063997
752 2065072
Есть вот такой конфиг для 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, а не время на компьютере? Или только кастомный аппендер писать?
753 2065250
>>06596 (OP)
Сап.

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

Нашёл сторонний контрол https://github.com/dwmkerr/consolecontrol но он жутко кривой: если запустить что-то по-сложнее стандртной команды cmd, аутпут ломается к хуям.
754 2065438
Сап двощ.
Пишу консольное приложение, которые использует другие dll. Подключаются через
AppDomain.CurrentDomain.AssemblyResolve += AssemblyResolve;
И вот когда у меня выполнение программы доходит до return, то она продолжает висеть в процессах.
Как можно отследить (ProcessExplorer не дает нужной инфы), что где еще выполняется, чтобы убить потоки, которые продолжают где-то висеть.
Была попытка просто топорным способом сделать System.Diagnostics.Process.GetCurrentProcess().Kill(); и да, программа завершилась и все круто. Но в таком случае другая программа, которая ждет завершение работы моей программы получает код завершения (-1 если не ошибаюсь), который мне не нужен. Пошуршав немного интернеты в поисках как изменить этот статус ответа на нужный мне через kill() не нашел.
Аноны, какие есть идеи и предложения?
755 2065462
>>65438
А там нет метода Dispose?
Возможно тебе следует вручную очищать используемые ресурсы.
756 2065652
>>65250
Нет, мод на волосатые женские ноги еще не завезли.
757 2065656
>>65652
Что блядь?
758 2065661
>>65462
Пробовал, но не помогло. Но направление думаю правильное, нужно капать дальше там.
image.png58 Кб, 1163x680
759 2065675
>>65250
Сам сделал через винапи.
Хз, зачем чувак какой-то контрол пердолил с транляций стд-потоков
760 2065782
Объясните, какого хуя:
lock(_locker)
{
db.Set<DbItem>().Add(item);
db.SaveChanges();
}
работает в разы быстрее чем:
while(concurrentQueue.TryDequeue(out var item))
{
db.Set<DbItem>().Add(item);
db.SaveChanges();
}
?
Я вот не понимаю. Вроде же все эти конкурентные штуки с локфри должны быть быстрее по перформансу. Просто поясню проблему. В БД - есть поле, которое должно быть без пропусков, при этом логику выдачи поля нельзя на базу перекладывать, потому нужно как-то на уровне приложения проверить пропуски и если есть - заполнить поле пропущенным значением. Так вот, я думал - ну, локфри, вся хуйня, сделаю очередь на добавление, там просто буду в бесконечном цикле, пока программа не завершится доставать и будет заебись, а потом запустил - и хуйня какая-то. Ок, пробуем с lock - все на несколько порядков быстрее, да, какое-то время появляется скачок по нагрузке на проц, но потом он не такой страшный.
Короче, что я не знаю-то? Почему так происходит? Что я как программист должен с этой хуйней делать?
762 2065840
Двощь на тебя вся надежда.
Как передать 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
Как пофиксить?
763 2066132
>>65840
Какое вообще основное отличие .net 6 от .net 5?
Думал, стоит ли перенести пет проект на нет6, но что-то вообще не пойму, какие там преимущества?
764 2066359
Мне нравится ставить in около аргументов функции, чтобы указывать, что они не будут изменены.
Однако, помимо такой гарантии, аргумент, помеченный "in" передаётся по ссылке.
Могут ли с этим быть проблемы производительности, если помечать так примитивные типы, например int, float, double?
765 2066399
>>66132
https://habr.com/ru/company/microsoft/blog/543564/
Ну бля таких что бы пиздец каких основных нету.
Просто доработки что бы быть в тренде.
766 2066706
>>66359
Да будут проблемы.
Передача через in эффективна только для структур больше определенного размера, цифру не подскажу так как наизусть не помню, а еще там вроде от ЦП зависит.
Плюс передача через in не readonly структуры создает копию структуры для безопасности от чего ты только теряешь.
Но если ты передаешь readonly через in и при этом еще создаешь ее в момент вызова, а затем нигде не хранишь и она ниже Х размера, то это разгружает GC так как все это дело живет только на стэке.
Для большего понимания читай Pro .NET Memory Management от Konrad Kokosa
767 2066769
>>06596 (OP)
Что означает символ @ перед строкой, в CSharp?
Вижу, что строка изменяется.
Как её назад декодировать, в прежнюю?

Можно как-то сделать такое же, и конечно - обратное преобразование в JavaScript?
768 2066792
>>66769
Как на шарпе унескапнуть вербатим стринг
чтобы было заебись но не только для '\n' а для всех эскапнутых вербатимумом символов?

>Console.WriteLine((@"Hello,\n World!" == "Hello,\\n World!")+",\n"+@"Hello,\n World!".Replace("\\n","\n")); //try to unescape

769 2066799
>>66792
Вроде в глаза никогда не долбился, и на тебе:

>Regex.Unescape(@"Hello,\n ОПхуй!")

770 2066801
>>66799
Regex.Escape(String) - это и есть вербатим, или не?
771 2066803
>>66801
Там не все символы есть: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.escape?view=net-5.0
Нету '\r', '\n', '\b' и так далее, из всего того, что гуглится по запросу Escape Sequence.
772 2066844
>>66803
Как эскапнуть этим вербатимумом (@) - ёбанные двойные кавычки?!?!!!?!?!

>Console.WriteLine(@("\b\f\n\r\t\"\\".Replace("\"", "\"\""))); //При использовании verbatim, " надо заменить на ""


выбивает какую-то хуйню по-английскому.
773 2066851
>>66706

>передача через in не readonly структуры создает копию структуры


Передача не readonly структуры и без in создаёт её копию, так-то.
774 2066859
>>66844
Какие-то изъёбства неебические, с этим вербатимумом нужны:
https://rextester.com/GSC86617
775 2066860
>>66859
Правда, хрен поймёшь, что ещё эскапает этот регесп, помимо всего прочего. Походу, надо просто цепь из реплейсов написать, и не ебать мозг.
776 2066866
>>66860

>Правда, хрен поймёшь, что ещё эскапает этот регесп, помимо всего прочего.


А вот же: >>66803

>Походу, надо просто цепь из реплейсов написать, и не ебать мозг.


Там всего 7 символов надо проэкранировать.
Должно бы работать: https://rextester.com/KYACNF79246
777 2067495
А как сделать юнит тестирование с файловым вводом тестовых значений? Использую VS2019.
778 2067559
>>63677
И нахуя? Ещё не в бамплимите.
779 2067560
>>67559
А, теперь бамплимит 500 постов? Понятно.
sage 780 2067565
НОРМАЛЬНЫЙ ПЕРЕКАТ С ТЕГОМ
НОРМАЛЬНЫЙ ПЕРЕКАТ С ТЕГОМ
НОРМАЛЬНЫЙ ПЕРЕКАТ С ТЕГОМ
>>2067562 (OP)
>>2067562 (OP)
>>2067562 (OP)
781 2067741
>>60792
ulearn.me
Тред утонул или удален.
Это копия, сохраненная 22 июня 2021 года.

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

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