М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 23 мая 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

6 Кб, 257x257

OFFICIAL C# THREAD №24 # OP 15 Апр, 21:04 #717891 В конец треда | Веб

Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

Вся литература вторым постом

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

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

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

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

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

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

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

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

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

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

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

Прошлый тред тонет здесь: https://2ch.hk/pr/res/707882.html (М)

Ответы>>719955>>721137>>721871>>722018>>722026

# OP 15 Апр, 21:05 #2 #717892

9. Что почитать?
- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.
- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином
- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой
- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом.

10. Более хардкорный материал
- C# in Depth (Jon Skeet) - написана в виде истории версий C#, начиная с C#1.0. Описываются возможности, которые были добавлены в определенной версии и далее достаточно хардкорно и подробно эти возможности расписываются.
- Writing High Performance .NET Code (Ben Watson) - охуенная книга. В основном фокуируется на оптимизации дотнет-говна. Методы оптимизации проложений, профилирование, вот это все. Крутейшая и достаточно детальная глава по GC. Рассматриваются достаточно известные проблемы вроде "for vs foreach", "класс vs структрура", кастинг, боксинг, перфоманс регулярок, коллекций, исключений. Короче все что нужно, чтобы вам перезвонили.
- CLR via C# (Jeffrey Richter) - это классика, это знать надо.

11. Хочу еще хардкорней
- C# Deconstructed (Mohammad Rahman) - введение в CLR, модели памяти и выполнения в CLR, байтоебство, JIT. Книга достаточно коротенькая, менее 200 страниц, можно осилить за пару дней. Желателен опыт работы WinDbg и понимание устройства PE-формата.
- Expert C# 5.0 with .NET 4.5 Framework - еще одна книга этого автора, в этот раз намного длиннее. Очень много IL, анализа и разбора стандартной либы (те же коллекции), разбор ивентов, дегегатов, асинхронности etc. на уровне байткода.
- .NET IL Assembler (Serge Lidin) - ILёбство, во многих местах повторяет документацию MSDN, но при этом имеет много интересных дополнений и заметок. Кроме того все неплохо структуировано и разложено по красивым табличкам

12. Литература по WPF
Из более-менее актуального можно выделить пару книг:
- Pro WPF 4.5 in C# (Matthew MacDonald)
- Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

13. Литература по ASP.NET
- Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)
- Pro ASP.NET MVC 5 Platform (Adam Freeman)
- Beginning ASP.NET for Visual Studio 2015 (William Penberthy)

14. Литература по асинхронности, параллелизму и всему такому
- Concurrency in C# Cookbook (Stephen Cleary) - книга, написанная в формате "проблема - решение". Кроме базовых вещей, вроде асинков и параллелизма рассматриваются TPL Dataflows, Rx (реактивные расширения), тестирование всего этого асинхронного добра, ну и работа этого всего на более низких уровнях абстракции
- Multithreading in C# 5.0 Cookbook - в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная
- Pro Async_hronous Programming with .NET (Richard Blewett, Andrew Clymer) - опять же, интересного немного, но неплохие главы про асинхронность + UI и анализ дампов памяти в windbg

15. Литература не по шарпу, но так или иначе связанная с языком
C# Game Programming Cookbook for Unity 3D (Jeff W. Murray) - разработка на шарпе под Unity
Introduction to Neural Networks with C# (Jeff Heaton) - изучение нейронных сетей с примерами кода на шарпе. Под конец пишем программу для распознавания символов и нейроботов.
Machine Learning Using C# Succinctly (James D. McCaffrey) - довольная коротенькая книга на тему машинного обучения с примерами кода на C#. Ничего особого: k-средние, классификация, наивный байес, но с кодом, который всегда можно поразбирать, если что неясно.

16. Но я не знаю английский, как я буду это все читать?
На некоторые из перечисленных книг есть переводы, которые можно найти на том же рутрекере, однако, зачастую эти переводы неактальны, содержат неточности, и не самые понятные варианты перевода. Кроме того, переводы обычно пилятся только для нескольких самых популярных книг, более-менее серьёзный материал не переводят. Всегда можно сесть со словарем и понемногу читать, переводя непонятные фрагменты. Это очень полезно, так как в любом случае в разработке без знания ангельского делать нечего. Если очень хочется, то гуглить по запросам: "C# 5.0, Справочник. Полное описание языка", "C# для профессионалов. Тонкости программирования", "Программирование на платформе Microsoft .NET Framework 4.5 на языке C#"

17. Что еще нужно знать, чтобы взяли работать за еду?
- SQL - подойдет люая книг по MSSQL/MySQL, базовые запросы, SELECT, INSERT, DELETE, UPDATE. Джойны, индексы, нормализация. В контексте шарпа еще ORM: Entity Framework, Dapper
- Системы контроля версий - обычно гита достаточно: add/commit/push, merge, rebase, checkout, remote's, разрешение конфликтов, трехпанельные дифф-менеджеры, cherry-pick
- Гитхабы-гитхабчики - issues, организация пулл-реквестов, интеграция с appveyor, теги, релизы, маркдаун
- Алгоритмы - сложность алгоритмов, сортировки (пузырек, быстрая, вставками), поиск, рекурсия, алгоритмы на строках
- Структуры данных - связанные списки, деревья (бинарные, красно-черные, b-деревья), хеш-таблицы, графы
- Если идти в веб - HTML, CSS, JavaScript, веб-сокеты, REST
- Паттерны проектирования, стиль кода, внедрение зависимостей, MVVM (если хочется в WPF), SOLID

18. Я не умею читать, что посмотреть?
- Programming with C# - https://www.edx.org/course/programming-c-microsoft-dev204x-0
- Beginning Game Programming with C# - https://www.coursera.org/course/gameprogramming
- C# Fundamentals: Development for Absolute Beginners - https://goo.gl/meyyxO
- Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском) - https://nnm-club.me/forum/viewtopic.php?t=891636
- Набор курсов по C# от O'Reilly Media (28 часов, на английском) - http://rutracker.org/forum/viewtopic.php?t=5082978

16 Апр, 08:52 #3 #718208

Лол
http://www.opennet.ru/opennews/art.shtml?num=44253

Ответы>>718214>>718497

16 Апр, 09:16 #4 #718214

>>718208
нехуй на недоязыках писать

Ответы>>718218

67 Кб, 640x360

16 Апр, 09:21 #5 #718218

>>718214
Да ладно, есть же Kotlin плюс как минимум две бесплатные альтернативы (от intel и oracle) robovm.

Ответы>>718223

16 Апр, 09:41 #6 #718223

>>718218
Котлин не оч, по крайней мере в текущем состоянии.

16 Апр, 15:48 #7 #718437

14. Литература по WCF
- Learning WCF: A Hands-on Guide (Michele Bustamante) - Хорошая книга для новичков с пошаговыми уроками по WCF.
- Programming WCF Services (Juval Lowy) - Тоже неплохая книга, но уже для более опытных веб-разработчиков
- MSDN - Всегда ваш, КЭП.

15. Литература по LINQ
- LINQ in Action (Fabrice Marguerie) - единственная, если не ошибаюсь, книга по LINQ.

16. Литература по Workflow Foundation
- Essential Windows Workflow Foundation (Dharma Shukla)
- Programming Windows Workflow Foundation (K. Scott Allen) - две лучшие книги по WF по мнению Stackoverflow

17. Литература по Windows Forms
- Программирование с использованием Microsoft Windows Forms (Чарльз Петцольд) - старая, неактуальная книга, как и сама WinForms.
- Windows Forms Programming in C# (Chris Sells)

16 Апр, 16:11 #8 #718456

Как с ком-объектами в шарпе работать?

Ответы>>718498>>718512

16 Апр, 17:02 #9 #718497

>>718208
Хех, невидимая рука рынка.

16 Апр, 17:03 #10 #718498

>>718456
var Com = new Com();

16 Апр, 17:23 #11 #718512

>>718456
вопрос больше стоит, как их правильно диспоузать
а в остальном - все как всегда

Ответы>>718521

16 Апр, 17:42 #12 #718521

>>718512
Там много подводных камней? Просто намечается огромный проект, где будет ком на коме и меня это пугает.

Ответы>>718764

16 Апр, 21:55 #13 #718764

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

Ответы>>719371

17 Апр, 17:48 #14 #719326

При lazy loading с помощью EF каждая связанная запись по одной загружается?
Например, есть отдел с коллекций работников(5 человек) помеченный как virtual
Я перебираю этих работников, к бд идет по одному селекту к каждому работнику(5 селектов) или один селект который берет всех работников в этом отделе, но это уже ж eager loading.

Ответы>>719332

17 Апр, 17:55 #15 #719332

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

17 Апр, 18:32 #16 #719371

>>718764
Ну спасибо, посмотрим что из этого выйдет.

Ответы>>719412

17 Апр, 18:53 #17 #719412

>>719371
Ради интереса, для чего там ком на вашем проекте?

Ответы>>719415

17 Апр, 18:55 #18 #719415

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

17 Апр, 19:24 #19 #719447

Хочу сделать обработку видео потока, стоит использовать сишарп или нужно идти глубже?

Ответы>>719535

17 Апр, 20:22 #20 #719535

>>719447
Нужно больше инфы

18 Апр, 00:48 #21 #719779

Альтернатива try-catch?

Ответы>>719786>>719930>>727589

18 Апр, 00:51 #22 #719786

>>719779
Ее нет.

18 Апр, 00:57 #23 #719789

Обработка хоткеев в консольном приложении не через case. Каким образом можно реализовать?

Ответы>>719879

18 Апр, 03:51 #24 #719840

Почоны, йоба запутался полностью. Как регуляркой распарсить что-то типо
"ID:56;DATE:25.10.2017;NUMBER:00000094"
чтобы на выходе были 1)значения 2)поля?

Ответы>>719880>>719939>>732727

18 Апр, 06:54 #25 #719879

>>719789
ифами, ну

Ответы>>719932

18 Апр, 06:55 #26 #719880

>>719840
Обязательно регулярками? Можно же сплитами, так быстрее будет.

18 Апр, 07:59 #27 #719893

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

Ответы>>719898>>719924

18 Апр, 08:12 #28 #719898

>>719893
А насколько резко реагировать нужно?

18 Апр, 09:28 #29 #719924

>>719893
Единственная альтернатива это WinAPI:
FindFirstChangeNotification - https://msdn.microsoft.com/en-us/library/windows/desktop/aa364417(v=vs.85).aspx
ReadDirectoryChangesW - https://msdn.microsoft.com/en-us/library/windows/desktop/aa365465(v=vs.85).aspx

> как там с производительностью будет
Да хер его знает, тут 99% что тебе никто не скажет.
Сделай да замерь в профайлере.

Ответы>>720268

18 Апр, 09:36 #30 #719930

>>719779
не провоцировать выброс исключений

Ответы>>719935

18 Апр, 09:43 #31 #719932

>>719879
Ну это и подразумевалось в том числе. Я имею ввиду без чего-то по типу "if (xuy == 'c')". Если, например, в классе объявлена переменная, отвечающая за хоткей, то каким образом реализовать конструкцию вида "if (xuy == class.hotkey)"

18 Апр, 09:49 #32 #719935

>>719930
Это трудновато будет, когда фреймворк то написан с исключениями.

Ответы>>719938>>719997

18 Апр, 09:59 #33 #719938

>>719935
Чем вообще не устраивает try/cache?

Меня вот лично раздражает что исключения нельзя вернуть из таски в виде "особого" результата, как это сделано в RX.

Для одного проекта даже написал специальный класс
Optional<T> {
T result;
Exception error;
}
, но что-то тоже не зашло.

Ответы>>719941>>719943>>719945

18 Апр, 10:04 #34 #719939

>>719840
http://pastebin.ru/M0GOBCs7

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

18 Апр, 10:06 #35 #719941

>>719938
в новом стандарте будет возврат нескольких значений. сейчас можно запилить через out параметры
типа
int calc(int p1, int p2, out int errorcode);

Ответы>>719947

18 Апр, 10:10 #36 #719943

>>719938
Optional это все-таки немного другое

18 Апр, 10:16 #37 #719945

>>719938
У таска есть же уже и result и error/exception, ти чиво?

171 Кб, 1200x900

18 Апр, 10:24 #38 #719947

>>719941
> сейчас можно запилить через out параметры
Подожду ка я новый стандарт

> У таска есть же уже и result и error/exception
Приведи пример с async/await методом

Ответы>>719981

18 Апр, 10:30 #39 #719952

Шарпач, помоги на асп завести телеграм бота, я нихуя не могу понять как webhook настроить и asp API. Шарп немного знаю, думал блять будет не сложнее чем БД на мускуле библу цепануть, ан нет, соснул и въехал в пня.

https://github.com/MrRoundRobin/telegram.bot.examples/blob/master/Telegram.Bot.Examples.WebHook/Program.cs

вот экземпл, что нужно куда пихать и прописывать?

PS SSL есть

18 Апр, 10:34 #40 #719955

>>717891 (OP)
Никак не пойму, когда исполняется блок finally ?
Из-за него нужно закрывать ресурсы в двух местах ?

MemoryStream M;
try
{
M = GetStreamFromCosmos();
// что-то делаем с ним
M.Close();
}
catch { // нужен для пересоздания исключений }
finally
{
if (M != null) M.Close();
}

Так правильно?

Ответы>>719958>>719960>>719962

18 Апр, 10:37 #41 #719958

>>719955
> M.Close();
Внутри try не нужно, код внутри finally вызовется в независимости будет ошибка или нет.

Ответы>>719969

18 Апр, 10:39 #42 #719960

>>719955
А вообще это можно переписать короче
using (var M = GetStreamFromCosmos()) {
// что-то делаем с ним
}
работает аналогично try/catch/finally

Ответы>>719969

18 Апр, 10:40 #43 #719962

>>719955
он выполняется всегда.
суть в том что, у тебя в трай/катч может быть ретурн и если освобождение ресусров не обернуто в финали, то её придется писать 2 раза - и в катч и в трай.
что-то типо
try { m = trysomesing(); return true; }
catch { return false; }
finally { m.Close(); }
m.Close() выполнится при вызове ретурн в любом случае

Ответы>>719969>>720013

18 Апр, 11:01 #44 #719969

>>719960
Нет, это работает как try/finally .
Блок catch нужен для пересоздания эксепшена с более высокоуровневым описанием.

>>719958
>>719962
Вот: http://pastebin.com/1kQqmAN8

Правильно?

18 Апр, 11:20 #45 #719971

Котаны, есть какие-то годные текстовые редакторы на шарпе?

Ответы>>719977

18 Апр, 11:27 #46 #719977

>>719971
эм? написанные на шарпе? или с подсветкой синтаксиса?
тебе для чего собсно

Ответы>>719985

18 Апр, 11:34 #47 #719981

>>719947
try { await yoba() } catch {} же. Или у тебя там коллекция тасков?

Ответы>>719996

18 Апр, 11:42 #48 #719985

>>719977
написанные на шарпе, да

Ответы>>719988

18 Апр, 11:44 #49 #719988

>>719985
нашел такое
http://texteditors.org/cgi-bin/wiki.pl?action=browse&diff=1&id=CSharpEditorFamily&diffrevision=1

Ответы>>719998

18 Апр, 12:01 #50 #719996

>>719981
Ты видимо потерял суть разговора, начиналось все с вопроса
> Альтернатива try-catch?

Ответы>>719997>>720032

18 Апр, 12:04 #51 #719997

>>719996
>>719935
адекватный код всегда написан с выбросом исключений. ну а ты делай так, чтобы они не возникали

18 Апр, 12:06 #52 #719998

>>719988
спасибо, гляну

18 Апр, 12:29 #53 #720013

>>719962
>catch { return false; }
Разве из catch возврат не запрещен?

Ответы>>720014

18 Апр, 12:30 #54 #720014

>>720013
из finally запрещен

103 Кб, 640x640

6 Кб, 375x375

18 Апр, 12:33 #55 #720018

ОБНОВЛЕННАЯ ШАПКА
{ http://pastebin.com/J3K8uers }
ОБНОВЛЕННАЯ ШАПКА

Ответы>>720020

18 Апр, 12:34 #56 #720020

>>720018
> - http://www.java2s.com/ - Огромная база исходных кодов для изучения разных платформ, в том числе и .NET

сразу нахуй пошел

18 Апр, 12:52 #57 #720032

>>719996
Лел, я потому и написал, что ее нет, потому что ее нет. Фреймворк написан с эксепшонами, и конструкции языка на них опираются. Конечно можно на тасках вызывать continue, и там чекать результат, но это же ебаные колбэки, я не для этого на решеточке пишу.

18 Апр, 13:13 #58 #720048

Анон, как затолкать картинки в .ехе? Я добавлял в ресурсы, но потом из .cs кода не нашел способа установить картинку з ресурсов.

Ответы>>720051

18 Апр, 13:17 #59 #720051

>>720048
.resx ? Гугли ResourceManager.

Ответы>>720059

18 Апр, 13:28 #60 #720059

>>720051
Вообще к файлу resx уже прилагается статический ResourceManager с такимже именем как у файла, и у него сразу есть куча автогенереных свойств с именами всех загруженых в него ресурсов.

использование пиздец как сложно:
(Image)MyResFile.MyImage;

18 Апр, 15:24 #61 #720122

Можно ли установить на Винду перечисленные в шапке IDE кроме Вижуалки (не ставится почему-то)? Будет ли там работать winforms?

Ответы>>720125

18 Апр, 15:24 #62 #720123

Я конечно понимаю, что это наверное платина, но все же. Почему окно авторизации не закрывается при переходе на следующую форму? Hide, Close пробовал, и с this. и без - не выходит.

Ответы>>720125>>720736

18 Апр, 15:29 #63 #720125

>>720122
должны. пошукай в документации

>>720123
ты об чем? давай сначала, тут не телепаты сидят

Ответы>>720127

18 Апр, 15:31 #64 #720127

>>720125
Это без особых изъёбов делается? И вообще, какую ИДЕ поставить, чтобы попроще? А то я на сишарпе ещё не программировал.

Ответы>>720135

18 Апр, 15:34 #65 #720135

>>720127
я бы выбрал VS Code или SharpDevelop

18 Апр, 17:25 #66 #720224

Пытаюсь парсить сайт погоды с помощью HtmlAgilityPack. И нихуя не понятно. Точнее, раньше никогда ничего не парсил и не работал с веб вообще. А тут такая херня. Как можно нормально это сделать?

Ответы>>720265>>720266>>720267

18 Апр, 18:24 #67 #720265

>>720224
Заплатить тому, кто умеет.

18 Апр, 18:25 #68 #720266

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

18 Апр, 18:26 #69 #720267

>>720224
> HtmlAgilityPack
Как там в 2009?

Ответы>>720271

18 Апр, 18:26 #70 #720268

>>719924
FileSystemWatcher - и есть обертка вокруг этих функций. Ты фактически ему предлагаешь сделать двойную работу.

18 Апр, 18:27 #71 #720271

>>720267
А чем парсят хтмл в 2016-м?

Ответы>>720274>>720275

18 Апр, 18:30 #72 #720274

>>720271
Регулярками конечно же! AngleSharp

Ответы>>720276

18 Апр, 18:30 #73 #720275

>>720271
AngleSharp

18 Апр, 18:32 #74 #720276

>>720274
>AngleSharp
В чем профит по сравнению с HtmlAgilityPack?

Ответы>>720278>>720279>>720282

18 Апр, 18:33 #75 #720278

>>720276
Тебя это ебать не должно.

18 Апр, 18:34 #76 #720279

>>720276
The HtmlAgilityPack (HAP) is a good comparison target, since it is most used and established since a long time. Obviously AngleSharp is a great replacement for HAP due to the following reasons:

Standardized HTML5 parsing model
Much better error correction / handling
Also parses SVG / MathML elements correctly
Can handle CSS (selectors, rules, ...)
Better performance

https://github.com/AngleSharp/AngleSharp/wiki/Performance

18 Апр, 18:35 #77 #720282

>>720276
Не еби мозг. Хочешь парсь тем, хочешь тем. Хочешь регулярками.

19 Апр, 01:26 #78 #720668

В общем у меня есть формочка и мне нужно в отдельном потоке чтобы не блокировать формочку выполнять некий код и посылать сообщения на формочку
Форма
Класс в другом потоке, который посылает время от времени сообщения на форму

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

Ответы>>720702>>720703

32 Кб, 418x417

19 Апр, 02:39 #79 #720702

>>720668
http://rsdn.ru/article/dotnet/CSThreading1.xml ой блять лучше бы гей-шлюхой пошел работать

34 Кб, 978x739

19 Апр, 02:52 #80 #720703

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

>>720668-кун

Ответы>>720758

19 Апр, 03:00 #81 #720705

>719939
Спасибо тебе, добрый анон. Всего тебе наилучшего :3

19 Апр, 07:40 #82 #720736

>>720123
сам разобрался. вторую форму добавил в класс первой, поэтому и не работало

19 Апр, 07:47 #83 #720737

Суп антуаны,
насколько нормально использовать вызов обработчика событий в таком ключе
public void EventName(Object sender, EventArgs e)
{
if (this.InvokeRequired)
{
Invoke(new Action<Object, EventArgs>(EventName), sender, e);
return;
}
... основной код метода
}

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

Ответы>>720968

19 Апр, 09:16 #84 #720758

>>720703
Максимум пиздец, BackgroundWorker весь твой. Да и то может не нужен, может у тебя форма то и не будет блокироваться.

Ответы>>720781

19 Апр, 10:23 #85 #720781

>>720758
>BackgroundWorker весь твой
Что?
>может у тебя форма то и не будет блокироваться
У меня не стоит будет ли блокироваться форма или нет, мне надо чтобы это "жило" в другом потоке.

Ответы>>720783

19 Апр, 10:27 #86 #720783

>>720781
Раз нихуя не понятно - async/await.

Ответы>>720818

19 Апр, 11:23 #87 #720818

>>720783
Мне не нужно получать асинхронно данные. Ты бы разобрался что к чему, прежде чем писать.

Ответы>>720823

19 Апр, 11:28 #88 #720823

>>720818
>нужно не блокировать формочку
>не нужно получать асинхронно
А ты сегодня умный.
Ты просил в другом потоке, вот оно будет в другом потоке.
Хотя бы с тредами не пердолься, возьми таски. Про background worker так и не смог загуглить?
Отсюда кажется что решаешь проблему, которой нет.

19 Апр, 13:11 #89 #720887

Не могу опредилиться:
SubStorageAliased & SubStorageDirectly vs
AliasedSubStorage & DirectlySubStorage

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

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

Ответы>>720966

19 Апр, 14:56 #90 #720966

>>720887
ну вроде бы как названия классов должны заканчиваться общими частями/суффиксами. типа ~Form, ~Message, ~Handler. я за второй вариант

Ответы>>720989

19 Апр, 14:58 #91 #720968

>>720737
не финт ушами, а даже частовстречаемая конструкция. можно треды сравнивать, лол

480 Кб, 1024x768

19 Апр, 15:18 #92 #720989

>>720966
Лол, я уже сделал первый вариант, префикс специализации хрен наберешь если забудешь, а суфикс иде подскажет. Вообще в проекте все как попало, в половине мест так, в половине по другому.

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

Ответы>>721009

19 Апр, 15:37 #93 #721009

>>720989
если никак без проверки Т, то тебе дженерики не нужны. либо все сделано как-то сложна

19 Апр, 16:41 #94 #721049

В пятницу будет собеседование на стажера с#. Что сейчас спрашивают? Ооп, многопоточность? Что по многопоточности обычно спрашивают? Синхронизацию контекстов и синхр. потоков?

Ответы>>721055>>721068

19 Апр, 16:45 #95 #721055

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

Ответы>>721061

19 Апр, 16:47 #96 #721061

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

Ответы>>721068

19 Апр, 16:59 #97 #721068

>>721049
Забей. Ты никогда не сможешь предсказать что у тебя спросят. Все эти подготовки с собеседованиям это как по мне хуета полная. Надо уметь делать своё дело, и если собеседующий эффективен, то он сможет это задетектить. Если нет - значит нет. Слив на собесе не всегда вина соискателя.

>>721061
>да, многопоточность сложная штука. Тоже плохо в этом разбираюсь, вот думаю че нить к собеседованию повторить/выу
Многопоточность надо на реальных задачах делать, а не просто дрочить теорию. В большинстве случаев для веб-макак достаточно знать что такое lock и всё. Для клиентсайд и этого не надо.

Ответы>>721075>>721083

19 Апр, 17:07 #98 #721075

>>721068
я просто с многопоточностью совсем не работал. Максимум в WPF async/await простенький ебашил и на этом заканчивалось всё.

Просто вспомнить основные вещи щас хочу:
1)OOP
2)Generics
3)Interfaces&abstract classes
4)Lambda and anonymous method
5)delegates&events
6)nullable

ну а дальше что то поидее по многопоточности. Хз :/

Ответы>>721125

19 Апр, 17:12 #99 #721083

>>721068
>Многопоточность надо на реальных задачах делать
Когда такая куча возможностей реализации многопоточности, что выбрать?

Ответы>>721125

19 Апр, 17:52 #100 #721125

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

>>721083
ну, все реализации подходят для своей ниши задач

Ответы>>721129>>721144>>721639

19 Апр, 18:02 #101 #721129

>>721125
>сравнения?

Ответы>>721136

19 Апр, 18:06 #102 #721136

>>721129
Equals, ==, ReferenceEquals

IEquatable, IComparable

19 Апр, 18:06 #103 #721137

>>717891 (OP)
В 15 студии запилили лябда выражения в Wathch и Value Expression?

Ответы>>721143

19 Апр, 18:18 #104 #721143

>>721137
Да это еще в 2015 студии было

19 Апр, 18:22 #105 #721144

>>721125
вот с LINQ ямало работал. Только простенькие запросы писал. Их форсят на собеседовании?

Ответы>>721149>>721152

19 Апр, 18:25 #106 #721149

>>721144
Тебя вообще спросят про базы данных, джоины там и целостность данных.

Ответы>>721287

19 Апр, 18:30 #107 #721152

>>721144
расскажешь, чем отличаются First от Single (OrDefault), считай, на половину вопросов ответил

19 Апр, 20:53 #108 #721264

Может невнимательно читал книжку и всё объяснялось, но:
http://pastebin.com/frCivZ8P
1) Почему вся запихнута в один большой класс?
2) Нахуя нужен класс MyButtonClass? Нельзя те 4 строчки внутри мэйна написать? Что за аргумент в методе run?

Ответы>>721287>>721336

19 Апр, 21:11 #109 #721287

>>721149
>>721264
просто показывают пример как написать кастомную кнопку, ничто не мешает тебе сделать всё в мейне.

19 Апр, 21:37 #110 #721336

>>721264
1. что такое "вся" и где там большой класс?
2. нормальные люди не тулят все в один метод)

Ответы>>721344

19 Апр, 21:44 #111 #721344

>>721336
Всё кроме using. Класс называется "MyButtonClass".
Кстати, что значит там : Form?
> не тулят все в один метод)
Ну блядь. Там 4 строчки. При том, что в мейне одна.

Ответы>>721347

19 Апр, 21:49 #112 #721347

>>721344
ммм...ты, очевидно, дошел до UI-ных элементов и не знаешь, что такое Form? или ты не в курсе про синтаксис наследования?

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

Ответы>>721370

19 Апр, 22:30 #113 #721370

>>721347
>ммм...ты, очевидно, дошел до UI-ных элементов и не знаешь, что такое Form? или ты не в курсе про синтаксис наследования?
да ето так
>...
Ой, это же класс конструктор, не заметил. Но вообще понятненько, типа просто так удобнее. А можно было бы и в мэйн захуярить, просто это нелогично.

20 Апр, 05:57 #114 #721534

Сложно ли перекатиться в asp.net? Что почитать? Какую версию лучше изучать, чтобы на работу устроиться?

Ответы>>721563

20 Апр, 08:58 #115 #721563

>>721534
если MVC, то 5-6-7. если WebAPI, то, по-моему, выше 2й версии не придцмали
если есть знания дотнета, то посмотреть понятия сессий там всяких, фильтров, бандлов, маршрутизация, DI. ну кароч

а вообще, пункт 13 шапки

20 Апр, 11:55 #116 #721639

>>721125
>все реализации подходят для своей ниши задач
Можешь по хардкору в двух словах описать "тип -> ниша" чтобы знать куда плыть по первой и выбрать правильную реализацию?

Ответы>>721655

20 Апр, 12:22 #117 #721655

>>721639
- асинхронные делегаты - делаем операцию с возвратом результата и важно этот результат не проебать и использовать после завершения процесса (не всегда это 100% вписывается вписывалось

- ThreadPool.QueueWorkItem, Thread.Start - выполнение операции в фоне и хуй на неё, пускай себе крутится

- Parallel, PLINQ - обработка коллекций вписывалосьбез обязательного сохранения порядка

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

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

- BackgroundWorker - попросту говоря - операция с прогресс-баром. либо же операция, ход которой важно отслеживать в родительском объекте

async/await вбирают в себя первые три пункта в подавляющем большинстве случаев

вроде бы ничего не забыл?

Ответы>>721657>>721663

20 Апр, 12:23 #118 #721657

>>721655
рачье, не дописал

не всегда это 100% вписывалось в задачу до появления async/await. однако возможности, которые предоставляют делегаты, нацелены на реализацию некого колбэка опосля завершения работы фоновой задачи

20 Апр, 12:27 #119 #721663

>>721655
Parallel это TPL? Те таски и иже с ними. Просто пишу сейчас простенькое приложение, которое реализует http реквесты с сетевым устройствам, думаю что выбрать для реализации многопоточности.

Ответы>>721665

20 Апр, 12:30 #120 #721665

>>721663
> Parallel это TPL?
Parallel это TPL

> которое реализует http реквесты с сетевым устройствам
Parallel.ForEach
или, если есть возможность использовать модные штучки
Task.WaitAll

Ответы>>721670

20 Апр, 12:38 #121 #721670

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

Ответы>>721672

20 Апр, 12:41 #122 #721672

>>721670
и так всегда, собрался мир вверх-ногами переворачивать, а сраный гитхаб все испортил

Ответы>>721676

20 Апр, 12:46 #123 #721676

>>721672
Ну я парИнь правильный, начну с переворачивания своего манямирка.

20 Апр, 17:29 #124 #721869

Есть UWP приложение с SQLite базой данных. С БД взаимодействую с помощью Portable Class Library for SQLite(https://sqlitepcl.codeplex.com).
Не понимаю как использовать pragma statements.
Нагуглил вопрос на SO(http://stackoverflow.com/questions/19369006) и попробовал в конструктор SQLiteConnection передать "Data Source=Sqlitedb.db;PRAGMA journal_mode=MEMORY" вместо просто "Sqlitedb.db". Получилась БД с дефолтными прагмами и стрёмным именем.
Что я делаю не так? :(

Ответы>>721870>>721984

20 Апр, 17:29 #125 #721870

>>721869
http://stackoverflow.com/questions/19369006/sqlite-pragma-settings-with-sqlite-for-windows-runtime
Вот нормальная ссылка на вопрос

20 Апр, 17:29 #126 #721871

>>717891 (OP)
В MS Visual Studio 2015 Community Edition в открытом проекте исчезло окно конструктора форм. Как его вернуть ?
Поиск выдаёт примерно это
http://www.cyberforum.ru/visual-studio/thread647992.html
но то, что там описано, не помогает.

Ответы>>721873

20 Апр, 17:31 #127 #721873

>>721871
так а у тебя в чем проблема?
правой кнопкой -> Designer. есть такое?

Ответы>>722015

20 Апр, 19:38 #128 #721984

>>721869
>Что я делаю не так?
Я ду но. :\

Ты строчку руками набрал? При копипасте из бровзера иногда захватывает левые символы.

Sage 20 Апр, 19:58 #129 #722015

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

Sage 20 Апр, 20:01 #130 #722018

>>717891 (OP)
1) Как проще всего сохранить изменения конфигурации в программе ? Нужно сохранять и использовать буквально одну строку.

Ответы>>722019

Sage 20 Апр, 20:01 #131 #722019

>>722018
OS программа самая простая, один exe-файл без установщиков и прочего/

Sage 20 Апр, 20:07 #132 #722026

>>717891 (OP)
Подскажите еще, как сделать, чтобы скомпилированная для Windows (xp, 7, 8) программа работала везде без требования установить какие-нибудь библиотеки ?

Ответы>>722169

20 Апр, 20:35 #133 #722047

Шарпаны, при попытке прибиндить двумерный массив к DataGrid'у (MVVM) студия вываливается с ошибкой.
Можете ли подсказать, как можно прибиндить массив?

Ответы>>722170

20 Апр, 22:57 #134 #722169

>>722026
под какими-нибудь библиотеками ты же не подразумеваешь сам framework?

Ответы>>722270

20 Апр, 23:00 #135 #722170

>>722047
такое, например
http://stackoverflow.com/questions/5809816/datagrid-binding-in-wpf

Ответы>>722523

21 Апр, 00:48 #136 #722270

>>722169
Т.е. в C# Visual Studio нельзя сделать windows-программу, которая бы работала на любых компах с Windows >XP, т.е. ей обязательно NET нужен ?

Мне нужно было сделать простенькую программу с формочками на несколько операций, C# посоветовали как самое простое.. Выход только передалать под что-нибудь другое ? В C++ есть аналогичные возможности работы с формами ? Особенно перетаскивание файлов на панель интересует.

У меня c++ не установлено, создать проект и посмотреть не могу. В микрософте написано, что C++ предложат установить, когда я создам новый проект с++, но у меня выдаётся ошибка что компонентов нет и окно создание проекта открывается еще раз. Если в нём нажать далее, снова выдастся эта ошибка.

Ответы>>722275>>722428

114 Кб, 800x713

21 Апр, 00:53 #137 #722275

>>722270
Просто установи фреймворк, который уже установлен на 7+ виндах, а хп нинужны.

Ответы>>723144

21 Апр, 04:31 #138 #722362

Аноны, нужна срочная помощь. В общем на c# с GDI написаны примитивы. Пусть будет, допустим, обычный квадрат. Нужно сделать так, чтобы на линии появлялся круг, который движется по линиям квадрата и постепенно уменьшался. Как это сделать?

21 Апр, 09:08 #139 #722428

>>722270
в ХР, вроде бы, 2.0 встроен. для простенького калькулятора самое оно

Ответы>>723144

21 Апр, 13:06 #140 #722523

>>722170
Это же обычный биндинг коллекции с 2 полями.
У меня количество столбцов может быть от 6 до 30.

Ответы>>722548

21 Апр, 13:53 #141 #722548

>>722523
чет я тупанул

ну, смотри че еще нашел
http://stackoverflow.com/questions/25266821/wpf-datagrid-binding-a-collection-property-to-column
http://stackoverflow.com/questions/24539022/how-to-bind-wpf-datagrid-to-observablecollection

или тебе прям надо object[,] засандалить в грид и ни шагу в сторону?

Ответы>>722841

21 Апр, 15:40 #142 #722657

Ну вот, прочел я Троелсена, и что теперь дальше делать? Я знаю как программировать на C#, но не могу написать полезную программу.
Подскажите что делать?

Ответы>>722658>>722662>>722664

21 Апр, 15:41 #143 #722658

>>722657
Выпiй йаду.

21 Апр, 15:47 #144 #722662

>>722657
Найди задачу и реши ее, если ты читал тролсена, значит делал примеры и понял их. Если ты нихуя не понял - значит ты дебил.

Ответы>>722663

21 Апр, 15:49 #145 #722663

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

Ответы>>722683

21 Апр, 15:50 #146 #722664

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

Ответы>>722673

21 Апр, 15:56 #147 #722670

позвали на собеседование, но ребяткам нужен професеонал в SignalR. опираясь на нихуевый старт инвестигейта http://www.asp.net/signalr/overview - могу сказать, что все вроде бы нисложна
знающий товарищ, опиши, какие в этой срани есть подводные камни? что из описанного в туториалах покрывает 95% задач?

Ответы>>722736

21 Апр, 15:58 #148 #722671

Шарпач, помогай. Есть софтина на WPF, в окне контрол Image, в нем стоит биндинг с конвертером. Так вот, в этом конвертере я гружу пикчу из интернета и выкидываю контролу. Естественно мне всё это фризит гуй. Надо как-то сделать это асинхронно, но нихуя не получается. То пикча где-то теряется, хотя код выполнился, и не отображается, то еще всякая параша. Прописать у контрола UriSource не вариант. Как быть?

Ответы>>722675

21 Апр, 15:59 #149 #722673

>>722664
У Троелсена примеры даются "исскуственые", придуманные для решения одной надуманной задачи или чтобы показать как работает та или иная функция. Эти примеры редко бывают бывают больше ста строк.

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

Ответы>>722674>>722675

21 Апр, 16:00 #150 #722674

>>722673
>чтобы у меня решать хотя-бы бытовые проблемы
чтобы у меня получалось решать*

Ответы>>722675

21 Апр, 16:03 #151 #722675

>>722671
асинхронно загружай контент, колбэком в UIControl.Dispatcher.Invoke тыкай загруженное
https://msdn.microsoft.com/en-us/library/ms144196(v=vs.110).aspx

>>722673
>>722674
static void Main() { new GovnoApp().Start(); }
начни с этого. а там все как-то само загрутится, знаешь ли. боишься наговнокодить? ну, тогда хуй ты что напишешь

Ответы>>722679

21 Апр, 16:08 #152 #722679

>>722675
> колбэком
Бля, а что делать, если начнет грузится другая пикча и догрузится раньше?

Ответы>>722685>>722687

21 Апр, 16:10 #153 #722683

>>722663
Пиздец ты мусор, иди крутить гайки если ты даже не понимаешь зачем ты выучил инструмент.

Ответы>>722691

21 Апр, 16:11 #154 #722685

>>722679
што
у тебя происходит одновременный спам по нескольким картинкам в один контрол?

Ответы>>722696

21 Апр, 16:11 #155 #722687

>>722679
блокируй обращение потоков к ней, чтобы работали по очереди

21 Апр, 16:13 #156 #722691

>>722683
Пруфы маня

Ответы>>722694

21 Апр, 16:14 #157 #722694

>>722691
>Пруфы маня
Ты тредом не ошибся, болезненный? Пруфы чего тебе?

Ответы>>722701

21 Апр, 16:15 #158 #722696

>>722685
Ну я нажал на ссылку, она грузится вплоть до 15 секунд, там пикчи по 5 метров бывают, за это время я успею еще 10 раз по другим прожать и все грузятся в один контрол. Сам контрол при загрузке через UriSource при смене Uri сразу начинает что надо грузить, а тут говно какое-то получится.

Ответы>>722698>>722700

21 Апр, 16:17 #159 #722698

>>722696
Кури
https://www.youtube.com/watch?v=a4wEaFAA5XQ

Ответы>>722699

21 Апр, 16:18 #160 #722699

>>722698
Бля, ну нахуй ты это принёс? Попробуй в конвертере так сделать.

21 Апр, 16:19 #161 #722700

>>722696
я вообще нихуя не понял, как должно происходить в идеале? ты клацнул на картинку, она многометровая и долго грузится, в единственный контрол (!) да, ты перешел к другой картинке, клацаешь на нее. и шо блять тут должно произойти?

Ответы>>722702

21 Апр, 16:20 #162 #722701

>>722694
С чего ты решил, что я не понимаю зачем я выучил инструмент? Откуда вообще взялась эта немотивированная агрессия? Часто тебя в школе одноклассники дразнили? Девушки возбуждаются, когда узнают, что ты всегда знаешь зачем учишь инструменты?

Ответы>>722707

21 Апр, 16:20 #163 #722702

>>722700
> и шо блять тут должно произойти?
Сразу начинает грузится другая. При сраных колбэках такого не будет.

Ответы>>722708

21 Апр, 16:24 #164 #722707

>>722701
>я не понимаю зачем я выучил инструмент
>не могу написать полезную программу
>отсутствие технической фантазии
check
>немотивированная агрессия
>путать агрессию с пренебрежением в 2016
check
>попытка психоанализа по посту в интернете
check

Human trash as is.

Ответы>>722713

21 Апр, 16:24 #165 #722708

>>722702
ну будет, ачо нет?
для этого надо отменить скачивание как минимум, это да
http://stackoverflow.com/questions/10332506/aborting-a-webclient-downloadfileasync-operation

40 Кб, 495x441

21 Апр, 16:28 #166 #722713

>>722707
Ебать у тебя бомбануло, школьник.

Ответы>>722715

21 Апр, 16:29 #167 #722715

>>722713
Это троллинг тупостью?

Ответы>>722722

21 Апр, 16:34 #168 #722722

>>722715
>маааа, у меня бомбануло

21 Апр, 16:48 #169 #722736

>>722670
бамп

21 Апр, 18:32 #170 #722841

>>722548
>или тебе прям надо object[,] засандалить в грид и ни шагу в сторону?
Да вот не знаю как лучше

У меня в основном операции с массивами (вычисления), а результат надо отобразить в гриде

Что-то вроде такого:
http://pastebin.com/C6GHsCf0

Сборка мусора, Finalize() и Dispose() 21 Апр, 19:08 #171 #722895

Аноны, поясните за тему рилейтед.
1. Почему непредсказуемая работа сборщика мусора является проблемой, и что вообще делает мусорщик? Как я понял, после выхода из конкретного блока, из стека удаляются переменные по значению, а из кучи удаляются ссылки на объекты/ссылочные типы, но сами объекты остаются в куче? Но разве память при этом считается занятой? Какой алгоритм использования памяти в куче у дотнетовских языков? Разве нельзя просто хуярить в область памяти объекты по новой, если на них не ссылается ни одна ссылочная переменная? Или слишком заёбно проверять каждую область памяти, ссылается ли на неё что нибудь или нет, поэтому, шобы не ебать мозги, пишется в чистую область?
2 В чём разница между Finalize() от Object'a и Dispose() из IDisposable()? Они оба очищают только неуправляемые ресурсы? То есть, нет особого смысла реализовывать IDisposable для класса, в котором не используются неуправляемые ресурсы типа указателей? Или кто нибудь из них всё таки очищает данные об объекте в куче?

позязя не шлите в гугол, сам ищу ответы на свои вопросы параллельно, но хотелось бы из первых уст ответы прочесть.

Ответы>>722914>>722926>>722978

21 Апр, 19:17 #172 #722914

>>722895
1. разве работа сборщика непредсказуема? шо правда?
> из кучи удаляются ссылки на объекты/ссылочные типы, но сами объекты остаются в куче
определись, удаляется у тебя че-то из кучи, или не удаляется ничего там не удаляется
> Разве нельзя просто хуярить в область памяти объекты по новой, если на них не ссылается ни одна ссылочная переменная?
ну эээ можно. только ты при создании каждого нового объекта будешь проверять, на что там что ссылается, а на что нет? память забивается до того момента, пока можно. дальше вызывается сборщик и, либо выкидываем мусор и впихиваем новый, либо расширяем память
> Какой алгоритм использования памяти в куче у дотнетовских языков?
я, наверное, вопрос не понял. каков алгоритм чего, поиска для очистки сборщика?

2. сам осилишь?
https://msdn.microsoft.com/en-us/library/system.object.finalize(v=vs.110).aspx

Ответы>>722965>>722995

21 Апр, 19:24 #173 #722926

>>722895
>что вообще делает мусорщик
Обходит граф объектов, отмечает те на которые программа ещё где-то ссылается и удаляет неиспользуемые. Так же раскидывает объекты по поколениям и тд.
>из стека удаляются переменные по значению
Из стёка вообще нихуя не удаляется. Тебе, как дотнет макаке это знать не обязательно, но из стёка обычно вообще нихуя не удаляется - при выходе из скопа просто возвращается указатель на прошлый участок стёка. Поэтому стёк считается небезопасным, страдает переполнениями и есть вероятность получить мусор.
>а из кучи удаляются ссылки на объекты/ссылочные типы, но сами объекты остаются в куче
Сука, что у тебя вообще в голове? Объекты в куче как раз таки чистятся полноценно (хотя это уже зависит от конкретного системного рантайма - в целях оптимизации не все зануляют память и так же попадается мусор).
>шобы не ебать мозги, пишется в чистую область?
Ебааааать ты шизик. Ты сам того не понял, но боишься фрагментации памяти не зная о ней, лел. Расслабь булки - в дотнете присутствуют дефрагментирующий алгоритм работы с памятью, который легко и просто настраивается.

21 Апр, 19:51 #174 #722965

>>722914
>разве работа сборщика непредсказуема?
Наверно он имел ввиду что порядок вызовов Dispose/Finalize неопределен и как в крестах надеться на правильную последовательность освобождени ресурсов нельзя.

21 Апр, 19:56 #175 #722978

>>722895
Вот соседняя ссылка: https://msdn.microsoft.com/en-us/library/b1yfkh5e(v=vs.110).aspx
Делай так и не парься за память.

21 Апр, 20:18 #176 #722995

>>722914
>1. разве работа сборщика непредсказуема?
Да. Непредсказуемо когда он будет вызван, сколько времени отработает (и насколько всё подвиснет) и как отработает (сколько памяти освободит).

21 Апр, 20:42 #177 #723014

А тут есть тре

21 Апр, 21:01 #178 #723026

бушет

21 Апр, 23:45 #179 #723144

>>722428
>>722275
Спасибо, так и сделаю, наверное, фиг с ним с XP. Какую версию NET минимально надо выбрать для Windows 7 ?

Ответы>>723149

21 Апр, 23:50 #180 #723149

>>723144
W7 - .net 3.5
W8+ - 4.5+
Пиши на .net 4+, а то 3.5 уж больно старый.

Ответы>>723286

22 Апр, 08:55 #181 #723286

>>723149
в 3.5 есть все, что надо

Ответы>>723290>>723298>>723416

22 Апр, 09:05 #182 #723290

>>723286
Щас бы async/await.

Ответы>>723292>>723418

22 Апр, 09:07 #183 #723292

>>723290
с нулл-кондишном

22 Апр, 09:23 #184 #723298

>>723286
Щас бы dynamic.

Ответы>>723305

22 Апр, 09:37 #185 #723305

>>723298
Поясните за плюсы динамической типизации? Вроде как от этого производительность страдает все дела.

Ответы>>723306>>723319

22 Апр, 09:40 #186 #723306

>>723305
http://stackoverflow.com/a/2675190

22 Апр, 09:56 #187 #723319

>>723305
Там где боксится любой тип. А тебе, к примеру, нужно передавать куда-то конкретный тип (а не object).

22 Апр, 11:50 #188 #723396

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

Ответы>>723402

22 Апр, 11:53 #189 #723402

>>723396
Асинхронное:
"Выполни пожалуйста работу, как закончишь - сообщи мне, а я пока своими делами займусь".

Параллельное:
"Ребят, вот вам работа, я поделил её поровну между вами. Приступайте, я жду."

Ответы>>723407

22 Апр, 11:58 #190 #723407

>>723402
Блять, твоего объяснения я ждал столетие.
А как через async/await заставить поток сообщать в основной поток свое состояние с возможностью доступа к элементам управления (граф. интерфейс)?

Ответы>>723420

22 Апр, 12:05 #191 #723416

>>723286
Лол, всегда проигрываю с таких питухов. Как добавили два сахарка в язык так им резко всем понадобилась ассинхроность и все затопило сатьями "как мы все перtписали заново? но с модной фишечкой".
Тащемта в 3.5 нете для ассинхроности уже все есть, тем кто надо просто брал и пользовался.

Пруфит: https://msdn.microsoft.com/ru-ru/library/2e08f6yc(v=vs.90).aspx

Ответы>>723418>>723427

22 Апр, 12:06 #192 #723418

>>723416
Промахнулся от багета. Это тебе >>723290

Ответы>>723427

22 Апр, 12:10 #193 #723420

>>723407
Как будто у тебя нет второго потока.

try
{
//Это граф. интерфейс
Busy.IsBusy = true;

using (Client c = new Client())
//Это граф. интерфейс
dataGrid.ItemSource = await c.Method(...);
}
catch (Exception ex)
{
//Это плюёт в поток граф. интерфейса
ErrorMessageBox.Show(ex.Message);
}
finally
{
//Это граф. интерфейс
Busy.IsBusy = false;
}

Ответы>>723497

44 Кб, 465x348

22 Апр, 12:17 #194 #723427

>>723416
>>723418

22 Апр, 13:47 #195 #723497

>>723420
А где сам асинхронный вызов? Просто я что-то не понял как он вызывает код в основном потоке.

Ответы>>723511

22 Апр, 13:59 #196 #723511

>>723497
//WCF асинхронный метод
await c.MethodAsync(...);

//или через Task (void)
await Task.Factory.StartNew(() => { /РАБОТА/ });

//с результатом выполнения
int result = await Task<int>.Factory.StartNew(() => { return 1;});

22 Апр, 16:44 #197 #723639

http://pastebin.com/kdPwqy8f

Эта строка объявления выполняет три функции. Во-первых, объявляется переменная myinfo, относящаяся к типу класса InfoUser. Сама эта переменная не является объектом, а лишь переменной, которая может ссылаться на объект. Во-вторых, создается конкретная, физическая, копия объекта. Это делается с помощью оператора new. И наконец, переменной myinfo присваивается ссылка на данный объект. Таким образом, после выполнения анализируемой строки объявленная переменная myinfo ссылается на объект типа InfoUser.

Оператор new динамически (т.е. во время выполнения) распределяет память для объекта и возвращает ссылку на него, которая затем сохраняется в переменной. Следовательно, в C# для объектов всех классов должна быть динамически распределена память.

Ответы>>723641

22 Апр, 16:46 #198 #723641

>>723639
> Во-вторых, создается конкретная, физическая, копия объекта. Это делается с помощью оператора new.

разве?

22 Апр, 17:57 #199 #723718

Есть два стула приложения на C# - служба (windows service, для службы был указан Account LocalSystem) и клиентское приложение(обычное windows приложение, в данном случае консольное), которые обмениваются информацией по именованным каналам (Named Pipes). Проблема в том, что клиентское приложение может подключиться к службе по именованному каналу только с правами администратора.

Нашёл в сети решение, в котором предлагается назначить серверному именованному каналу PipeSecurity, содержащий один или более PipeAccessRule. После применения этого подхода серверное приложение падает с исключением System.UnauthorizedAccessException. Подскажите, как по именованному каналу осуществить подключение к службе клиентского приложения, которое запущено без прав админа? Делаю так:

Windows Service:
http://pastebin.com/B1QvFcVU

Клиент:
http://pastebin.com/g6a3CPPH

Пробовал также в коде службы WindowsIdentity.GetCurrent().Name менять на "Everyone", но в этом случае исключение System.Security.Principal.IdentityNotMappedException.

Пробовал передать в PipeAccessRule вместо первого параметра выражение new SecurityIdentifier(WellKnownSidType.WorldSid, null)

Да и остальные способы из гугла пробовал, поэтому сращиваю вашего совета.

Ответы>>726103

22 Апр, 18:44 #200 #723782

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

Ответы>>723787

22 Апр, 18:47 #201 #723787

>>723782
Почему ты решил что нельзя? Самый обычный говнокод получится.

Ответы>>723792

22 Апр, 18:49 #202 #723792

>>723787
И почему это говнокодом будет?

Ответы>>723797>>723875

22 Апр, 18:53 #203 #723797

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

Ответы>>723801

22 Апр, 18:56 #204 #723801

>>723797
Но ведь студия показывает, где я эту ссылку использую. И вообще, как правильно тогда подобную функциональность реализовывать?

Ответы>>723875

22 Апр, 19:56 #205 #723875

>>723792
welcome to SOLID. UI должен оставаться UIем, любой другой пиздокласс не должен знать подробности реализации (структуру) формы, даже если взаимодействует с ней как-то напрямую

>>723801
что тебе конкретно надо? можно использовать принцип, заложенный в связывании (binding). один объект (UI) сигнализирует какому-то другому (ViewModel) об изменении состояния чего-то. либо через наблюдателя.

Ответы>>723923

22 Апр, 20:27 #206 #723923

>>723875
> что тебе конкретно надо?
Чтение/изменение свойств контрола окна из другого класса. Как правильнее такое реализовать?

Ответы>>723924

22 Апр, 20:28 #207 #723924

>>723923
WPF и MVVM

middle .net 22 Апр, 20:43 #208 #723932

ребятки, какими вы (ваша сраная кошка фирма) видит требования в области дотнета и около ее для сабжекандидатов?

Ответы>>726104

22 Апр, 20:44 #209 #723934

Кто-нибудь на GTK или ETO пистал UI? Как оно, аналога WPF для линупса нету, а писать что-то не консольное надо. Поглядываю на XWT, но он в глубокой разработке.

23 Апр, 11:27 #210 #724349

Я конечно понимаю, что я слоупок, но для тех кто не видел https://channel9.msdn.com/Events/Build/2016/B806 рекомендую посмотреть как дебажить в VS и не заебаться, может что нибудь новое для себя узнаете

Ответы>>724352

23 Апр, 11:44 #211 #724352

>>724349
Ты бы лучше скинул "как дебажить .net приложения в VS Code".

Там (после опыта использования обычной студии) вообще не понятно как запустить в дебаге.

Ответы>>724355

23 Апр, 12:02 #212 #724355

>>724352
>We support debugging of C# apps cross-platform via Mono
>VS Code Mono debugging integration comes from the 'Mono Debug' extension on the Visual Studio Marketplace.
>If you want the best possible experience for those projects and development on Windows in general, we recommend you use Visual Studio Community

Ну ты понел, сначала надо немношк поебаться

23 Апр, 21:12 #213 #724804

Устроился на свою первую работу, посадили фиксить баги.
Понял что я не умею пользоваться дебагером, потому что никогда не работал с большими проектами.
Поясните, пожалуйста
Вот, например, выскакивает меседжбокс или выгружаются записи в гридвью где-то
Как определить где это?
Когда просто брейк нажимаешь оно стопает уже после того как все появилось/загрузилось, в коллстэкэ отображаются только вызовы методов в гуи тредах
Есть еще в интелтрейсе опция, чтобы отображать все методы, которые были вызваны, но тогда оно минут 10 доходит до нужного места и дамп вызовов занимает 600 метров.
Я только в лоб вариант нашел, писать поиск по всему солюшену сообщение в меседжбоксе, находится где это храниться в хмл ресурсах, определение айдишника этого ресурса и потом находишь где он в коде используется и ставишь там брейкпойнт. Тогда в коллстеке еще не пропадают вызовы которые мне нужны.

Ответы>>724808>>732423

23 Апр, 21:14 #214 #724808

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

Ответы>>734348

86 Кб, 794x704

24 Апр, 15:24 #215 #725416

Парни, вот у меня странный вопрос. На шарпе пишу свой быдлокод, и вот у меня интерес появился к школо крекерству. Вообще это кому-нибудь нужно? Разбираться в байт-коде. И если я с этим разберусь смогу ли я крякать майкрософтовские продукты под .NET?

Ответы>>725431>>725460

24 Апр, 15:30 #216 #725431

>>725416
Сможешь, я этим давно занимаюсь. Но вот заработать на этом вряд ли удастся.

Ответы>>725452

24 Апр, 15:42 #217 #725452

>>725431
Что тебе для этого потребовалось изучить, кроме очевидного IL/MSIL?

24 Апр, 15:46 #218 #725460

>>725416
Можешь взять очевидный деобфускатор вроде de4dot и какой-нибудь анпакер и крякать все что движется прямо сейчас с ILSpy, без знания MSIL

0 Кб, 133x79

24 Апр, 16:56 #219 #725518

Шарпач, что за пиздень появилась у меня после установки второго апдейта 2015 студии? Как убрать?

Ответы>>725521>>726614

24 Апр, 17:00 #220 #725521

>>725518
как вас не выворачивает от темной темы студии?

Ответы>>725528>>725599

24 Апр, 17:04 #221 #725528

>>725521
Где вы покупаете новые глаза после светлой темы?

Ответы>>725534

24 Апр, 17:07 #222 #725534

>>725528
моя не знать, по светлой мне наоборот менее болезненно глазами пробегать
ну, естественно, я сижу не в темноте

24 Апр, 18:24 #223 #725599

>>725521
Глупая мода.

24 Апр, 18:45 #224 #725618

Что лучше использовать на небольших проектах - Prism или Caliburn.Micro?

25 Апр, 05:28 #225 #726097

Посоны, почему нет visual studio 2015 экспресс в iso, а только онлайн установщик, где образ скачать?

25 Апр, 05:50 #226 #726103

>>723718
Сделай обмен через MemoryMappedFiles.
Если не можешь менять тип обмена данных, то хуй его знает, я с Named Pipes никогда не работал.

Ответы>>726149

25 Апр, 05:51 #227 #726104

>>723932
Уметь разбираться в любом говне, писать алгоритмы, знать язык и основы сраного фреймворка.

Ответы>>726122

25 Апр, 07:26 #228 #726122

>>726104
как-то слишком обобщенно

25 Апр, 08:39 #229 #726149

>>726103
Уже неактуально, разобрался.

25 Апр, 12:19 #230 #726302

Как в шарпе создавать переменные с именами, определяемыми извне? То есть я хочу создать переменную с именем, которое вводится с клавиатуры, например, это вообще возможно?
Как-то можно распарсить имена объектов WFP? Если имя кнопочки такое-то, то делать-то и так далее.

Ответы>>726307

25 Апр, 12:25 #231 #726307

>>726302
1. создавай словарь <string, object>

2. https://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.logicalchildren(v=vs.110).aspx
так, наверное
(collection).Cast(FramewworkElement).Select(e=>e.Name)

Ответы>>726309

25 Апр, 12:32 #232 #726309

>>726307
Спасибо!

25 Апр, 17:48 #233 #726614

>>725518
а где ты это, кстати, нашел? на впфах каких-нибудь? я прост не вижу

25 Апр, 19:00 #234 #726696

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

Ответы>>726702

25 Апр, 19:05 #235 #726702

>>726696
этот http://www.colorcombos.com/colors/A55D35 ?

Ответы>>726703>>726709>>726713

25 Апр, 19:08 #236 #726703

>>726702
чё за говно, иди нахуй с ним.

Ответы>>726708

25 Апр, 19:09 #237 #726708

>>726703
какой-то агрессивный дятел

25 Апр, 19:10 #238 #726709

>>726702
Чуть светлее нужен бы, оксид железа, как на Марсе тип.
P.s. Агр не я был

116 Кб, 225x246

25 Апр, 19:11 #239 #726713

>>726702
Вроде такого

Ответы>>726984>>727438

25 Апр, 22:26 #240 #726984

>>726713
ну шо мне, за тебя цвета извлекать?

http://www.colorcombos.com/colors/E67609

http://www.colorcombos.com/colors/E76C23

http://www.colorcombos.com/colors/B94600

Ответы>>727288

26 Апр, 01:03 #241 #727117

Нэтаны, тут кто нибудь на F# что-то пишет? Есть будущее у языка? Я вот захотел попердолиться с функциональщиной, теперь собираюсь кусок бизнес логики переписать на нём, будет красивее. Имеет ли смысл дрочить это язык кроме как для своих васяноподелок?

Ответы>>727286>>727314

26 Апр, 09:46 #242 #727286

>>727117
хуй его.. но функционалки набирают обороты это однозначно (у нас, к примеру, в конторе банке типочки целую систему нахуярили на эрланге, все пользуются и продают даже). Я решил все-таки подрочить книженцию одну по F#.. посмотрим что выйдет

26 Апр, 09:49 #243 #727288

>>726984
Премного обязан, чувак

26 Апр, 10:44 #244 #727314

>>727117
>>727117
Я перед увольнением утилиту на фа-диезе сделал, у лида пригорело)

26 Апр, 13:06 #245 #727438

>>726713
Больше похоже на цвет нездорового говна.

Ответы>>727447

26 Апр, 13:24 #246 #727447

>>727438
у меня, когда шаурма не зашла, такое же

26 Апр, 16:10 #247 #727589

>>719779
ифы

88 Кб, 694x960

27 Апр, 05:41 #248 #728179

Программач,
Пару тредов назад я задал вопрос по
а именно, зачем такое надо:
http://pastebin.com/PRJAgmbs

Так как я нуб, то и вопрос задал не правильный, меня на самом деле интересовало КАК такое возможно.
Я спросил как это гуглить и вообще как это работает.
Искал довольно долго, но оказалось что все очень просто - polygon переменная ссылочного типа, она содержит ссылку на объект. Я вначале это пропустил.

Теперь, когда я понял этот прикол досканально, изучение пойдет гораздо бодрее!

Спасибо всем тогда мне ответившим, вы мне реально помогли! Спасибо анон!

27 Апр, 06:03 #249 #728187

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

Ответы>>728195

27 Апр, 06:26 #250 #728195

>>728187
Лол нет, пускай питон и джаву ебашат.

Ответы>>728197

27 Апр, 06:31 #251 #728197

>>728195
Ну плис.
Я даже соглашусь что шарп лучший язык эвер.
Только повесьте шапку или банер - шарп лучшее для быстрого заработка денег програмингом или еще что

Ответы>>728200

27 Апр, 06:37 #252 #728200

>>728197
А ты за джаву или питон топишь?

Ответы>>728202

27 Апр, 06:42 #253 #728202

>>728200
Я не топлю. Я работаю энтерпрайз макакой.
И меня заебало что половина любого треда состоят из. Посоны почитал. Шилдта как рубить теперь бабки. Посоны какой учебник взять. Посоны я нихуя не понял. Посоны как стать успешной жабамакакой. И так далее.

Ответы>>728235

27 Апр, 08:12 #254 #728235

>>728202
а тут тип нет такого, да?

Ответы>>728236

27 Апр, 08:15 #255 #728236

>>728235
Ну и заберите их всех себе их себе. Позязя.

27 Апр, 08:35 #256 #728246

Платиновый вопрос, наверное, но не совсем стандартный:
Хочу запилить простецкую игрульку на шарпах (для обучения, не для коммерции). Использование для этого WinForms(был опыт по школе) - мазохизм и нахуй надо? Или сразу катиться в Юнити с его скриптами на шарпе и окунаться с головой в неизвестное?

Ответы>>728279>>728288>>728376

27 Апр, 09:43 #257 #728279

>>728246
Что за игруля хоть решил? Скорее всего да, юнити, но некоторым хватает cli.

Ответы>>728300

27 Апр, 10:18 #258 #728288

>>728246
простецкая - это типа пасьянс?

Ответы>>728300

27 Апр, 10:28 #259 #728300

>>728288
>>728279
Да не, что-то вроде рпг/экономического симулятора на кнопках/пикбоксах с гринданом и дрочем.

Ответы>>728304

27 Апр, 10:36 #260 #728304

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

27 Апр, 12:32 #261 #728376

>>728246
Зависит от уровня экшона. Если нужно перерисовывать игру 30-60 раз в секунду, то таки да, катись в юните или на любую обертку над дх/огл, иначе хватит обычных винформ с их перерисовкой по требованию ирока, но с максимальным ограничением 1-2 кадра в секунду. Короч, последнее подходит для простых пошаговых игрулек.

27 Апр, 12:56 #262 #728399

Шарпач, чтобы усвоить базовые возможности языка требуется много писать кода, я это прекрасно понимаю. Но моя фантазия хочет чего-то большого, при построении которого я упираюсь в непонимание, как лучше всего это реализовать. Существует ли какой сборник задач по С#? Порылся на twirpx, ничего толкового не нашел. На гитхабе в 90% проекты уже сделаны, их или допиливать до снижения кол-ва багов -> 0 или рефакторить, а как, новичек не знает, а ментора нету чтобы подсказал. Есть у питона сервис, где нету теории но множество задач с подсказками, что лучше использовать. Есть аналог для С# или попробовать адаптировать задачи из него для себя?

Ответы>>728420>>728471>>733880

27 Апр, 13:51 #263 #728420

>>728399
http://www.ex.ua/72463209
но не знаю, не обмазывался, не заглядывал. но книга лежит с самого начала моего знакомства с сешарпом

27 Апр, 15:26 #264 #728471

>>728399
Вот такую штуку нашел
http://problembook.net/content/ru/INTRODUCTION.html

Ответы>>732706

27 Апр, 17:07 #265 #728558

Что юзать - Repository для каждой сущности или дженерик репозиторий? Нужен ли unit-of-work?
Или в мвс 5 все это нахуй выкинуть и юзать model binding, который я пока не пойму никак

Ответы>>728562>>728581

27 Апр, 17:11 #266 #728562

>>728558
применение UoW и model binding зависит от масштабов твоего говнопроекта

если выбирать тут "Repository для каждой сущности или дженерик репозиторий", то конечно Repository<T>

27 Апр, 18:07 #267 #728581

>>728558
Мне вообще здесь пояснили что репозиторий это устаревшее говно и нахуй не надо.

Ответы>>728585

27 Апр, 18:21 #268 #728585

>>728581
А что вместо него надо?
Как без него юнит-тесты пилить и вот это все?

Ответы>>728601

27 Апр, 18:46 #269 #728601

>>728585
EntityFramework

В EF 7.0 появился Memory Provider, как раз для юнит-тестов

Ответы>>728602

27 Апр, 18:48 #270 #728602

>>728601
ef7 уже вышел?

Ответы>>728606

27 Апр, 18:53 #271 #728606

>>728602
Ой блин забыл, сейчас он называется EF Core 1.0

Пока RC1 вышел, там точно есть поддержка:
1) Memory
2) MS SQL Server (тестировал на винде)
3) Posterger (тестировал на убунте)
4) Sqlite (тестировал на убунте)

Ответы>>728611

27 Апр, 19:00 #272 #728611

>>728606
Это, конечно, здорово, но в контексте EF5-6 и MVC5 таки оборачивать DbContext в репозитории и UoW или можно как-то проще?
Просто, DbContext - это уже сам по себе ЮоВ, и в нем есть репозитории, и оборачивать подобное в подобное мне не кажется хорошей идеей, но уровень абстракции, чувствую, какой-то нужен, хотя бы для юнит-тестов или чтобы поменять потом EF можно было на что-то другое
Хотя я ей-богу, не могу представить сценария, в котором будет необходимость последнего

Короче, я запутался немного, разъясните за щеку, пожалуйста

27 Апр, 19:19 #273 #728627

Шарпач, поясни за String.Format
Нужно запилить таймер в формате (Х дней Х часов Х минут)
Можно так сделать через формат? Мануалы читал, но так и не понял как это реализовать.

Ответы>>728628

27 Апр, 19:20 #274 #728628

>>728627
https://msdn.microsoft.com/en-us/library/ee372287(v=vs.110).aspx
внизе табличка

Ответы>>728695

27 Апр, 19:56 #275 #728655

Посоны, есть io bound метод, их много и нужно выполнить их параллельно. Если я просто их заверну в таски, это ведь не очень выйдет? Планировщик поставит их в очередь и возможно выполнятся они последовательно, а мне нужно чтоб прям здесь и сейчас. Есть async аналоги этих методов и события их выполнения, они то ведь сразу начнут выполнятся? Если уже эти пары завернуть в таски получу ли я что нибудь полезное?

Ответы>>728664>>728668

27 Апр, 20:06 #276 #728664

>>728655
асинхронные делегаты с коллбэками

27 Апр, 20:08 #277 #728668

>>728655
и вдогонку, я не уверен, что io операции в тасках будут схуято выполняться последовательно

27 Апр, 20:35 #278 #728695

>>728628
Уже три таких прочитал. Но нихуя не выходит. Сплошные исключения сыпятся.

ts.ToString("%h hours %m minutes") - что тут не так?

Ответы>>728819

27 Апр, 22:06 #279 #728819

>>728695
похоже, у этой хуиты проблемы с пробелами. попробуй через string.Format("{0:%h}...", ts)

1763 Кб, 3264x2448

2399 Кб, 3264x2448

1428 Кб, 3264x2448

28 Апр, 03:22 #280 #729121

Решите пожалуйста, у нас начали преподавать с#, а я в программирование нуль и не понимаю ничего.

Ответы>>729132>>729146

38 Кб, 585x369

28 Апр, 03:50 #281 #729132

>>729121

Ответы>>729133

28 Апр, 03:52 #282 #729133

>>729132
выбора особо не остаётся, сама не могу разобраться

Ответы>>729136

28 Апр, 04:00 #283 #729136

>>729133
>не могу разобраться
Не можешь разобраться с чем: C# или задачами?

Ответы>>729147

28 Апр, 04:35 #284 #729146

>>729121
В этих задачах не программировать нужно уметь, а математику знать. Программирования тут и на базовом уровне аля C# за 2 часа хватит.

28 Апр, 04:58 #285 #729147

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

Ответы>>729153>>729188

28 Апр, 05:24 #286 #729153

>>729147
Сиськи с супом /pr/ и мы подумаем.

28 Апр, 08:28 #287 #729188

>>729147
ну ты пробуй, авось что-то получится, а мы подправим, есишо
но товарищ выше прав, черт возьми

Ответы>>729206>>729220

284 Кб, 1789x749

28 Апр, 08:49 #288 #729197

обоссы меня господь

171 Кб, 1138x297

28 Апр, 08:58 #289 #729206

>>729188
Так она не хочет думать, она хочет чтобы за неё подумали мы пока она пососет ашоту за гаражами. Типичная тня короче.

Ответы>>729220>>729347

sage 28 Апр, 09:18 #290 #729220

>>729206 >>729188
Вы блять серьезно? Это же просто зеленый, который решил развести спермотоксикозников.

Ответы>>729347

28 Апр, 09:45 #291 #729238

Ананасы, помогите с EventAggregator в Prism. Как выполнить событие в текущем потоке? Он на выбор даёт фоновый/отправителя/UI, а если я пытаюсь получить событие в другом потоке, то начинается какая-то необъяснимая хуйня, код начинает жить своей жизнью. У UI есть Invoke, а как у себя в классе такое сделать?

Ответы>>729347

28 Апр, 12:58 #292 #729347

>>729206
>>729220
чи не похуй? типа я бросился решать это говно

>>729238
ты чтили вообще в каком-то третьем потоке находишься? какие-то макароны

28 Апр, 15:06 #293 #729482

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

Ответы>>729494>>729574>>729979

28 Апр, 15:13 #294 #729494

>>729482
Очевидный 2ch.ru
fl.ru, сообщества vk.com

28 Апр, 16:51 #295 #729574

>>729482
Закажи у меня. Что сделать надо?

Ответы>>729979

28 Апр, 18:02 #296 #729640

Есть нормальные видеокурсы по mvc5?

Ответы>>729641

28 Апр, 18:03 #297 #729641

>>729640
на pluralslight

61 Кб, 625x477

28 Апр, 22:05 #298 #729954

Какой-то убогий стал шарпотред. Уровень дискуссии на нуле. Вы не ахуели тут? Даже ньюфагам через раз отвечаете. Захожу раз в месяц вас проверить и с каждым разом все унылее.

Ответы>>730007>>730036>>730096>>731352>>731778

28 Апр, 22:18 #299 #729979

>>729482
>>729574
Але, братюнь. Скажи, что запилить надо? Я сам нюфаг, потренироваться охота.

Ответы>>730054

63 Кб, 600x435

28 Апр, 22:40 #300 #730007

>>729954
> ньюфагам через раз отвечаете
Нюфаги иду нахуй ты тоже

97 Кб, 600x634

28 Апр, 22:56 #301 #730036

>>729954
Не вижу твоего клоунского колпака. Зажог бы тред если так редко заходишь.

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

28 Апр, 23:02 #302 #730054

>>729979
Сайт для генерации комиксов asp.net mvc.

Ответы>>730218

79 Кб, 500x375

28 Апр, 23:10 #303 #730072

А мне нравится шарп, антуанетты. Я писал на спектрумовском бейсике, асме Z80, Delphi, и потом перешел на шарп. Это охуенный язык, хотя есть и спорные вещи, но с моими задачами они не проявляются.
Охуенные дженерики, охуенные атрибуты, охуенный LINQ, охуенные ламбада-выражения, охуенное отсутствие заголовочных файлов, охуенное отсутствие секции предварительных объявлений, охуенная возможность писать функции в произвольном порядке, охуенная студия с охуенной подсветкой и охуенной автоиндентацией, охуенная коммьюнити, охуенная библиотека в охуенном стиле охуенного ООП.
Я пишу на шарпе уже 7 лет почти (пиздец как быстро время пролетело, даже на ебаном Delphi я писал всего 6 лет, а кажется будто чуть ли не вечность) и до сих пор тащусь от этого языка. Я его сам выбирал, сравнивал разные языки и шарп как был охуенным, так им и остается.

Ответы>>730099

28 Апр, 23:24 #304 #730096

>>729954
значца, сделал у нас лид девелопер "решение", позволяющее отвязаться от ссылки на EF в запускаемом веб-проекте путем добавления несложного уровня абстракции и, главное, полным отделением проекта DAL.EF от чего бы то ни было. при этом, дабы естественно, оно все работало, post-build ивентом библиотеки данного проекта вкупе с либами еф копируются в bin веба

на вопрос зачем так, ответ был, как я указал, отсутствие ссылки на еф в главном проекте

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

возникает у меня вдогонку три вопроса к вам человекам:
1 адекватный ли это подход (в целом, включая механизм внедрения библиотек)
2 наличие целого слоя абстракции источника данных - это недостаточный способ отвязать приложения от всего начиная от механизма получения данных, заканчивая субд?
3 разве это не пиздец, если ты вдруг начинаешь переориентировать проект на другой по механизму источник данных? во-первых переход хотя бы от ms к mysql уже создает проблем, не считая замену рсубд<->графы<->досубд
4

Ответы>>730104>>731782

28 Апр, 23:25 #305 #730099

>>730072
шарп не был таким и охуенным, но он им заслуженно стал

Ответы>>730151

28 Апр, 23:28 #306 #730104

>>730096
а 4 не придумал, да

112 Кб, 1024x576

29 Апр, 00:36 #307 #730151

>>730099

Ответы>>730320

29 Апр, 03:15 #308 #730218

>>730054
Не, я слишком нюфаня для такого.

29 Апр, 09:06 #309 #730320

>>730151
ну серьезно ж, дотнет до 3.5, нф до 5, веб-формы, мвс до 3, впф - это ж все лютый пиздец

Ответы>>730346

29 Апр, 10:29 #310 #730346

>>730320
> ef до 5 *

29 Апр, 13:50 #311 #730488

Господа, как лучше всего обновить ComboBox при выборе пункта из него? Использую WPF, склоняюсь к DropDown, но как из обработчика события изменить Items?

Ответы>>730490

29 Апр, 13:51 #312 #730490

>>730488
использует WPF, но не пользуется байндингом

Ответы>>730494

29 Апр, 13:56 #313 #730494

>>730490
Список получается от статического метода, я слишком нюфана чтобы уметь биндить такое.

Ответы>>730497

29 Апр, 13:58 #314 #730497

>>730494
view model влияет на view, model влияет на view model. не знаю насколько статический метод в твоем случае - разумный выбор, но раз уж так, то пускай будет так

Ответы>>730498

29 Апр, 13:59 #315 #730498

>>730497
заебись, чотко. только я пишу без использования mvvp тк у меня простенькое приложение и такая монструозность пока ни к чему.

Ответы>>730500

29 Апр, 14:00 #316 #730500

>>730498
ну тогда

componentName.EventName += (s,e) => otherComponentName.Items.Add/Remove/Clear

29 Апр, 15:44 #317 #730521

Как насчет сделать джаберовскую конфу этого треда?

Ответы>>730524>>730570

29 Апр, 15:46 #318 #730524

>>730521
ты разрешения спрашиваешь? делай

Ответы>>730525

29 Апр, 15:47 #319 #730525

>>730524
Я вношу предложение, и лучше делать ОПу этого треда, что бы без проблем в шапку добавлять.

Ответы>>730614

29 Апр, 16:59 #320 #730570

>>730521
>джаберовскую
Как там в 2008-ом?

Ответы>>730571

29 Апр, 17:00 #321 #730571

>>730570
можно по фану в мирке еще скооперироваться. а там, глядишь, фидо поднимем

29 Апр, 17:44 #322 #730614

>>730525
Нахуй пошел, вместе со своим конфочками

OP

29 Апр, 20:37 #323 #730749

Шарпач, раньше создавал кастомную команду и биндил её таким образом:
http://pastebin.com/EhBZK61T
Сколько не пытался, не получается прибиндить (MVVM).
Подскажите, как прибиндить её, используя MVVM?

Ответы>>730802

29 Апр, 21:49 #324 #730802

>>730749
Command="{Binding local:HuiPizda}"

Ответы>>730804>>730867

29 Апр, 21:51 #325 #730804

>>730802
эту команду, помимо всего прочего, нужно всунуть во вью-модел класс, а экземпляр класса сделать DataContext окна (компонента)

Ответы>>730867

29 Апр, 23:28 #326 #730867

>>730802
>Command="{Binding local:HuiPizda}"
>>730804
>нужно всунуть во вью-модел класс
RelayCommand?
Если в Executed, то ошибка.

Мозг уже кипит...
Исходник прилагаю.
http://rghost.net/7RmRClmsG

Ответы>>731081

30 Апр, 11:24 #327 #731081

>>730867
а по какому событию у тебя должна вызываться твоя команда? ты её повесил ниначто

Ответы>>731084>>731269

30 Апр, 11:26 #328 #731084

>>731081
соответственно и вешать студия предлагает её на DependencyObject

Ответы>>731269

30 Апр, 12:24 #329 #731117

Может я сейчас платину задам, может меня отправят на хуй читать шапку, но имею один вопрос. Хочу вкатиться в ASP.NET, в 2016 вообще имеет смысл? Джуниоров вообще берут легко? С чего начинать если опыта в программировании практически нет?

Ответы>>731144>>731148

sage 30 Апр, 13:09 #330 #731144

>>731117
Читаешь очередной такой высер и думаешь, то ли сразу скрыть, то ли по тролить?
Пожалуй скрой.

Ответы>>731168

30 Апр, 13:21 #331 #731148

>>731117
стоит вкатываться в джаву. а отсюда вали к хуям

30 Апр, 13:59 #332 #731168

>>731144
Кого ты скроешь без айдишника, болезненный?

30 Апр, 16:37 #333 #731269

>>731081
>а по какому событию у тебя должна вызываться твоя команда? ты её повесил ниначто
В смысле? Сочетание клавиш или что?

>>731084
>соответственно и вешать студия предлагает её на DependencyObject
Не понял. Можно ли поподробнее?

Ответы>>731292

30 Апр, 17:10 #334 #731292

>>731269
> В смысле? Сочетание клавиш или что?
в какой момент развития вселенной необходимо выполнение команды?

> Не понял. Можно ли поподробнее?
ты говоришь такой своему приложению: вот у меня есть команда, на, короче, забайнди её и запускай когда надо, а по завершению на тебе колбэк. но проблема в том, что приложению непонятно, когда тебе там надо. ты обьявил её в Window.CommandBindings, а остальное тебя не ебёт. связывание происходит со вполне себе конкретной пропертей объекта, либо с триггером какого-либо объекта

Ответы>>731426>>731836

# OP 30 Апр, 18:36 #335 #731352

>>729954
Я раньше старался тут всем отвечать и помогать, но сам в итоге нашел работу, лол. Теперь времени почти нет.

Ответы>>731393

30 Апр, 19:12 #336 #731393

>>731352
но ведь двач - это единственные твои друзья

30 Апр, 19:33 #337 #731426

>>731292
>связывание происходит со вполне себе конкретной пропертей объекта
В моём случае это свойсво TestCommand, нет?
Вот только я не могу его привязать к Executed.
С простым кликом не было бы проблем.

Ответы>>731450>>731836

30 Апр, 19:47 #338 #731450

>>731426
блять, какой пиздец

Ответы>>731836

01 Май, 04:01 #339 #731729

Сап, дотнетеры.
Если так писать
> foreach (var result in results.Results.Where(r => ...))
Он ведь не будет при каждой итерации запускать выражение? Или нужно отдельную переменную?

Ответы>>731733>>731745>>731776

01 Май, 04:53 #340 #731733

>>731729
Не будет

01 Май, 06:27 #341 #731745

>>731729
Не будет, подробнее читай у тролсена в разделе LINQ

56 Кб, 427x604

01 Май, 08:47 #342 #731767

> In other words, once a Task has a Status of “Running”, calling Cancel() on the CancellationTokenSource no longer has an effect on the actual Task, it is up to the Action within the Task to respond to the token’s message. Additionally, even though the Task has been “canceled”, it reports a status of “RanToCompletion” as if nothing unusual happened!
Сколько нам открытий чудных он готовит!

01 Май, 09:08 #343 #731776

>>731729
Нет конечно.

01 Май, 09:09 #344 #731778

>>729954
Все должны отвечать ньюфагам кроме тебя. Какой-то дядя должен прийти и ответить.

01 Май, 09:14 #345 #731782

>>730096
У нас тоже самое говорят про "а что если перескачат", ни разу не перескакивали, манагер не разрешит переписывать доменную модель с нуля, это пустая трата человекочасов.
В целом подход норм, но в большинстве случаев достаточно просто ninject сделать и все.

01 Май, 09:20 #346 #731784

Почему даже для написания простого приложения на WPF требуется использовать MVVM? Мне нужно лишь простенькую форму использовать, зачем приваривать монструозные фреймворки типа Катель или Призм? Почему ипользование заоконного кода это признак дурного тона? У меня от все этой хероты острый приступ СЛОЖНААА.

Ответы>>731790>>731825

01 Май, 09:31 #347 #731790

>>731784
Во-первых, для твоего хелловорлда от тебя никто ничего не требует.
Во-вторых, пейсание без этих паттернов признак говнища только в проектах которые будут расти, ибо иначе получится лапша со вкусом земельки после тёплого летнего дождика. Опять же – не хочешь – пиши как хочешь, всем грубо говоря насрать.

Ответы>>731793

2580 Кб, 3920x2204

01 Май, 09:39 #348 #731793

>>731790
Спасибо, держи снег 1ого мая.

01 Май, 10:20 #349 #731806

Гуру тасков.
> if(cancellationToken.IsCancellationRequested) cancellationToken.ThrowIfCancellationRequested();
Это единственный легальный способ убивать таск? Везде внутри таска ифы пихать?

Ответы>>731819>>731822

01 Май, 10:38 #350 #731819

>>731806
интернет лучшего варианта не предложил

01 Май, 11:04 #351 #731822

>>731806
А ты как хотел? Тред кикнуть что-ли?
Нормальная практика, в Reactive Extensions тоже самое, только там токен встроен по умолчанию.

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

01 Май, 11:19 #352 #731825

>>731784
На самом деле можно спокойно мешать MVVM и заоконный код. За окно смело толкай то, что никогда больше не тронешь. Городить костыли в ViewModel вместо одной строчки за окном - вполне себе говнокод.

01 Май, 11:54 #353 #731836

>>731292
>>731426
>>731450

На свежую голову поразбирался ещё.
Привязку можно задать только в объекте DependencyObject.
Поэтому Executed не может получить ICommand из ViewModel.

Как тогда мне скормить ICommand в Executed?

Ответы>>731945

01 Май, 11:55 #354 #731837

- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.
- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином
- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой
- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом.

На какой стул первым садится?

Ответы>>731841>>731985

01 Май, 11:57 #355 #731838

анон памаги. Нужен сетевой обработчик ака сниффер ака фильтр лайк впе про. нашел вот эту тему https://habrahabr.ru/post/259459/
в конце темы есть пример кода
немогу понять как у инжектора выбрать процесс целевой. И как настроить длл под фильтр пакетов вида 00 00 00 заменить на 00 00 01 к примеру. анон памаги.

01 Май, 11:59 #356 #731841

>>731837
андрюшу троелсена

Ответы>>731845

01 Май, 12:16 #357 #731845

>>731841
Решили, что в 16 году будем советовать только албахари, а троелсена не будем.

Ответы>>731854>>731883

01 Май, 12:45 #358 #731854

>>731845
вот у меня есть албахари 5.0 это справочник, забыл - посмотрел, сухая короткая теория. У Троелсена хоть какое никакое применение в обучении

Ответы>>731864>>731883>>732705

01 Май, 13:08 #359 #731864

>>731854
читай албахари давай

Ответы>>731870

01 Май, 13:15 #360 #731870

>>731864
НО... ок спасибо

01 Май, 14:04 #361 #731883

>>731845
Двачую
>>731854
Так тебе in a nutshell нужен

Ответы>>731904

01 Май, 15:01 #362 #731904

>>731883
я про него и говорил

01 Май, 16:29 #363 #731945

>>731836
Я так понял у тебя там хоткеи? Тогда тебе нужен InputBindings.

Ответы>>732104

01 Май, 17:46 #364 #731985

>>731837
Троелсен мне не понравился. Из него узнал по сути только ADO.NET. Всё остальное какая-то хуйня, очень хуевое изложение. Больше всего понравился John Skeet C# in depth.

01 Май, 17:47 #365 #731986

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

Ответы>>731991

01 Май, 17:50 #366 #731991

>>731986
>Binding?

Ответы>>732003

01 Май, 18:34 #367 #732003

>>731991
Все равно нихера не выходит с заполнением.
Листбокс в хамл
<ListBox x:Name="listBox" Margin="0" FontSize="64" ItemsSource="{Binding Computers, Mode=OneWay}" DisplayMemberPath="Name" MouseDoubleClick="listBox_MouseDoubleClick"/>
http://pastebin.com/virZEfhR код класса.
Что я не так сделал?

Ответы>>732018

01 Май, 19:03 #368 #732018

>>732003
Пункты вообще не появляются или появляются без текста?

Ответы>>732022

01 Май, 19:09 #369 #732022

>>732018
Разобрался уже, http://stackoverflow.com/questions/21128666/how-to-bind-observablecollection-with-listbox-in-wpf помогло.

01 Май, 21:53 #370 #732104

>>731945
>Я так понял у тебя там хоткеи?
Да, хоткеи.
>InputBindings
С его помощью приходится биндить команду минимум в двух местах.
И в случае если источников команды много это будет не очень удобно.

А по поводу этого:
>Как тогда мне скормить ICommand в Executed?
решения нету?

02 Май, 05:05 #371 #732251

Таски... надо замыкать таски... я успешный человек я замыкаю таски

02 Май, 05:18 #372 #732255

Пишу с калькулятора.
Я хочу сделать так, чтобы весь await async код выполнялся в одном потоке, не в ui приложении. Со всеми плюшками и удобствами.

Мне достаточно для этого реализовать синхрконтекст (как?) или ещё что-то нужно?

Ответы>>732271

02 Май, 09:05 #373 #732271

>>732255
Ты имеешь в виду что у тебя будет одна очередь фоновая очередь на выполнения тасок?
Если сможешь это сделать с помощью синх.контекста, отпиши потом как сделал.

Я в свое время смог сделать что-то похожее только с SemaphoreSlim.
У него есть метод "Task WaitAsync()", который удобно использовать в async/await.
В итоге потоки там конечно разные, но не более чем один одновременно-работающий.

Ответы>>732408>>732409

60 Кб, 602x683

18 Кб, 327x147

02 Май, 10:41 #374 #732318

Помогите пожалуйста, уже заебался.

Есть вот такой джсон. Цель - получить значение, там где стрелочка. (picrl#1)

Использую Ньютоновский Json.Net
Для проверки (пытаюсь достать значение success) использую такой код и получаю такой результат (picrl #2)

Но когда пытаюсь использовать value[0] вместо value["success"], шлет нахуй, пишет ожидается имя элемента. Как мне получить доступ по индексу? Или узнать какое имя у N-го элемента, чтобы уже использовать имя?

Ответы>>732321>>732337>>732665>>732801

02 Май, 10:51 #375 #732321

>>732318
Ти чиво, индексы в json'е у него

Ответы>>732322

57 Кб, 626x627

02 Май, 10:55 #376 #732322

>>732321
Ну если они в документации могут, то почему я не могу?

Ответы>>732323>>732327>>732330

02 Май, 10:58 #377 #732323

>>732322
http://www.newtonsoft.com/json/help/html/QueryJson.htm

02 Май, 11:05 #378 #732326

Вот тут лютая годнота для начинающих (особенно не шарящих в программировании)
https://ulearn.azurewebsites.net/

02 Май, 11:07 #379 #732327

>>732322
В этом и проблема твоего жсона.
Надо массив, а у тебя там просто объекты не в массиве. Скинь вообще тот жсон с пика.

Ответы>>732329>>732338

02 Май, 11:08 #380 #732329

>>732327
http://steamcommunity.com/id/sum42/inventory/json/730/2

02 Май, 11:12 #381 #732330

>>732322
Там обращение к массиву, а тебя - не совсем

02 Май, 11:32 #382 #732337

>>732318
Что за хуйню я прочитал?
Сформулируй задачу так, чтоб я понял. Ты берешь весь json и обзываешь его value. Потом ты берешь у этого jason корневой элемент success. И разумеется он берется. Но потом ты пишешь какую то хуйню.
Что бы получить то, что sn любовно нарисовал стрелочкой, тебе нужно пройти по всем веткам.
Вот как получить ее:
value["rgDescription"]["цыферки"]["descriptions"][6]["value"] = ""

02 Май, 11:42 #383 #732338

>>732327
1. Вместо цыферок, я хочу использовать индекс, потому что нужно пробежаться по всем этим циферкам.
2. Не [6], а ["6"]

Ответы>>732339>>732342>>732623

02 Май, 11:43 #384 #732339

>>732338
Специально для тебя был изобретен foreach

Ответы>>732346

02 Май, 11:46 #385 #732342

>>732338
> 2. Не [6], а ["6"]
Все что в кавычках считается именем. Если ты впихнешь индекс в кавычки, то будет искать ветку с именем "6", которой там нет. Но .т.к. там просто массив, то нужно ставить именно [6] как индекс.

13 Кб, 395x68

02 Май, 11:55 #386 #732346

>>732339
Так?
Это не работает, если что, но я не могу понять почему. Тип элементов точно JToken, потому что если пытаюсь вывести в textBox без .ToString(), то пишет что нельзя JToken в string неявно

Ответы>>732349>>732356

02 Май, 11:56 #387 #732349

>>732346
Cannot access child value on Newtonsoft.Json.Linq.JProperty.

Ответы>>732353

02 Май, 12:02 #388 #732353

>>732349
А погуглив эту ошибку я нашел решение.

Спасибо няши, помогли.

Ответы>>732581

02 Май, 12:02 #389 #732356

>>732346
> Так?
Нет, не так. foreach работает только для однотипных коллекций. У тебя в rgDescription условно разные именованные элементы. Сперва получи их набор через Vhildren. Потом уже можешь по ним ходить.
> если пытаюсь вывести в textBox без .ToString(), то пишет что нельзя JToken в string неявно
Самый охуенный способ ухнать тип переменной.

02 Май, 13:13 #390 #732408

>>732271
>Ты имеешь в виду что у тебя будет одна очередь фоновая очередь на выполнения тасок?

Да, одна очередь на выполнение всего async кода.

02 Май, 13:16 #391 #732409

>>732271
То есть по умолчанию в не UI нет синхронизатион контекста. От чего весь async код отправляется в threadpool. А я хочу сделать синхконтекст как в UI потоке, чтобы все говно исполнялось через очередь.

Ответы>>732530

02 Май, 13:27 #392 #732423

>>724804
А найти место куда точно попадает перед тем что тебе нужно, а дальше ф11?

Ответы>>734348

02 Май, 15:43 #393 #732530

>>732409
Кстати читал "Нет никакого потока" https://habrahabr.ru/post/216659/
async/await в C# такие прикольные, это просто коррутины которые вызываются последовательно.
Будет ли это делаться через потоки или IO/прерывания это внутренняя реализация.

Для своих тасок ты можешь написать кастомный TaskScheduler (если это не PCL).
Но если будешь использовать внутри этих тасок вложенные async/await, то там уже меньше контроля.

В все время наебался с PCL (общий код) для Xamarin (Android/iOS/WP) в итоге остановился на SemaphoreSlim
Это самое простое и нет зависимости IO это или какие-то рамдомные методы чужих библиотек.

P.S.
Если кто смог сделать по другому, буду рад услышать.

Ответы>>733212

02 Май, 16:02 #394 #732543

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

Ответы>>732574>>732577

02 Май, 16:36 #395 #732574

>>732543
шо? не юзать await GovnoAsync() в async-помеченных методах?

Ответы>>732625

02 Май, 16:39 #396 #732577

>>732543
А нафига тебе это вообще нужно?

У меня были задачи:
1) сделать загрузку картинок с кэшированием
1.1) загрузки (во временные файлы) были в 3 потока
1.2) модификация дискового кэша (добавление удаление записей) в 1 поток
2) Работа с SQLite базой в 1 потоке, в независимости от того с какого потока она вызывается.

При этом было нужно не держать явно потоки, а пользоваться всеми плюшками стейт-машины async/await

Ответы>>732625

02 Май, 16:42 #397 #732581

>>732353
Ну и как исправил?

Ответы>>733263

02 Май, 16:53 #398 #732603

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

Ответы>>732606

02 Май, 16:56 #399 #732606

>>732603
Руководство Microsoft по проектированию архитектуры приложений

32 Кб, 554x286

02 Май, 17:10 #400 #732623

>>732338

Ответы>>732632

02 Май, 17:17 #401 #732625

>>732574
>>732577

Вот есть у меня обычный метод string MakeGovno()
Есть async метод нажатия кнопки.
Как мне в этом методе вызывать MakeGovno, чтобы не блокировало вызывающий поток? В данном примере это ui.

Ответы>>732629

02 Май, 17:18 #402 #732629

>>732625
public async void ButtonEventHandler(...) {
await Task.Run(() => MakeGovno());
}

Ответы>>732633>>732645

02 Май, 17:20 #403 #732632

>>732623
Пиздец, чому бы не десериализвать это в нормальные объекты и не ебаться со словарями?

Ответы>>732640

02 Май, 17:22 #404 #732633

>>732629
или использовать ссылку на метод (если они оба в одном классе)
public async void ButtonEventHandler(...) {
await Task.Run(MakeGovno);
}

02 Май, 17:24 #405 #732640

>>732632
Какими еще словарями?
>десериализвать это в нормальные объекты
Но тогда ведь придётся еще и сам класс-объект этот делать, а это нахуй надо ебаться с таким жсоном большим.

Ответы>>732643>>732648

02 Май, 17:25 #406 #732643

>>732640
ну разве что если тебе из огромного джейсона нужно полтора проперти

02 Май, 17:28 #407 #732645

>>732629
А значение как получить из метода?

Ответы>>732646>>732648

02 Май, 17:29 #408 #732646

>>732645
замыканием

24 Кб, 419x226

02 Май, 17:33 #409 #732648

>>732640
1) В новой студии есть генератор классов из JSON "из коробки"
2) http://json2csharp.com

>>732645
пикрил

P.S. Иди уже какую-нибудь книжку по async/await почитай

02 Май, 17:48 #410 #732665

>>732318
В чём на первом пике открыт жсон?

02 Май, 18:12 #411 #732682

Я знаю c++, могу в ангельский, но плохо. Смогу ли я понять что написано в The C# Player's Guide, второе издание (RB Whitaker) и CLR via C# (Jeffrey Richter)?

Ответы>>732686

02 Май, 18:22 #412 #732686

>>732682
рихтер есть в переводе, для общего понимания достаточно

02 Май, 18:25 #413 #732688

Шарпаны, есть задачки для убер новичков? Только не для циклов-хуиклов, а для объектов и методов. Даже не задачки, а сборник типовых решений что ли.

Ответы>>732689>>732702>>732706>>733880

02 Май, 18:27 #414 #732689

>>732688
http://lmgtfy.com/?q=c#+problems+for+beginners

sage 02 Май, 18:50 #415 #732702

>>732688
https://www.google.ru/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#newwindow=1&q=c# koans

02 Май, 18:54 #416 #732705

>>731854
А Рихтер уже ненужен?

02 Май, 18:56 #417 #732706

>>732688
Я кидал выше >>728471

Ответы>>732707>>732709

02 Май, 18:56 #418 #732707

>>732706
Олсо, добавьте это в следующую шапку плз

02 Май, 18:57 #419 #732709

>>732706
Спасибо братишка, сотен нефти тебе.

19 Кб, 200x218

02 Май, 19:46 #420 #732727

>>719840
Я бы так сделал
http://pastebin.com/jJkjkkS4

Ответы>>732739>>732755

02 Май, 20:20 #421 #732739

>>732727
1) В чем прикол использования Equals (вместо ==)?
2) Чем твои InvalidCastException лучше FormatException метода DateTime.Parse?
3) Наверное (надо уточнить) через Select/SelectMany можно сделать это в функциольном/чейнинг стиле.

Ответы>>732754

37 Кб, 785x247

02 Май, 20:53 #422 #732754

>>732739
1) В string без разницы, там он переопределён. В других ссылочных типах производится проверка на то, указывают ли ссылки на один объект в куче
2)Что-то DateTime.Parse мне ничего не бросило, а я просто получил хуйню в результате. Пикрил.
3)Да, я тоже об этом подумал, но по моему помешает var item = new Item(); внутри цикла.

02 Май, 20:54 #423 #732755

>>732727
ОЧЕНЬ МАЛО РЕФЛЕКСИИ
https://dotnetfiddle.net/ocxFKo

Ответы>>732756>>732758

02 Май, 21:00 #424 #732756

>>732755
Ну ладно, у тебя поинтереснее вариант.

Ответы>>732758

02 Май, 21:00 #425 #732757

Помогите ньюфажине. Упорядочил массив пузырьком, теперь хочу записать все элементы и повторяющиеся выделить цветом.
for (int i = 0; i < array.Length; i++)
if (array == array[i + 1])
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(array);
}
else
{
Console.WriteLine(array);
Console.ResetColor();
}
И естественно при такой проверке [i+1] выходит за пределы массива. Как по другому проверить? Или пердолить условие на "проверку проверки"?

Ответы>>732770>>732771

02 Май, 21:01 #426 #732758

>>732755
>>732756
Хотя и менее понятный (по крайней мере мне)

Ответы>>732769

02 Май, 21:17 #427 #732769

>>732758
Основные 2 мысли которые я хотел донести: не надо if (fieldName == 'yoba') делать, класс у тебя уже есть, имена полей можно взять из него; (int|DateTime|yoba).Parse это конечно здорово и типизированно, но есть Convert.ChangeType

02 Май, 21:18 #428 #732770

>>732757
for (int i = 0; i < array.Length -1 ; i++)

Ответы>>732785

02 Май, 21:18 #429 #732771

>>732757
http://pastebin.com/0yQrHwFq

Ответы>>732773

02 Май, 21:20 #430 #732773

>>732771
>Count
А надо было сгруппировать.

Ответы>>732776

02 Май, 21:23 #431 #732776

>>732773
Не понял

Ответы>>732784

02 Май, 21:33 #432 #732784

>>732776
http://www.tutorialspoint.com/compile_csharp_online.php?PID=0Bw_CjBb95KQMSU9xOHU4SUY5ODA

02 Май, 21:35 #433 #732785

>>732770
Ну он тогда последний элемент теряет.

Ответы>>732791>>732794

02 Май, 21:42 #434 #732791

>>732785
Ещё один нюфаг.

02 Май, 21:45 #435 #732794

>>732785
>Ну он тогда последний элемент теряет.
array[i + 1]

33 Кб, 336x386

02 Май, 21:51 #436 #732801

>>732318
Что-то я не понял проблемы
https://dotnetfiddle.net/ocxFKo

Ответы>>732803

02 Май, 21:54 #437 #732803

>>732801
Спасибо, котик, но мы этот фидл уже постили, в json он не умеет.

Ответы>>732806

49 Кб, 500x333

02 Май, 21:57 #438 #732806

>>732803
Простите, котик обосрался.
https://dotnetfiddle.net/9uHg9H

03 Май, 14:05 #439 #733182

Кто-то устраивался на работу по си шарпу? Что спрашивают на собеседованиях? Надоело фрилансить за еду.

Ответы>>733237>>733251>>733853

121 Кб, 400x400

03 Май, 14:24 #440 #733192

>В чем разница между интерфейсно-ориентированным, объектно-ориентированным и аспектно-ориентированным программированием?

Ответы>>733197

03 Май, 14:35 #441 #733197

>>733192
Они ориентированы на разные концепции.
oche mali yoba

Ответы>>733213

03 Май, 15:02 #442 #733212

>>732530
http://pastebin.com/8Akyppdw

Ответы>>733249

03 Май, 15:04 #443 #733213

>>733197
>В чем разница
Ну ты совсем тугодум.

03 Май, 15:46 #444 #733237

>>733182
та добавьте вы уже это блять в шапку

03 Май, 16:22 #445 #733249

>>733212
Оу жесткий лок. Я правильно понимаю что поток будет заблокирован на время отсутвия заданий в очереди?

Ответы>>733465>>733496

03 Май, 16:24 #446 #733251

>>733182
Три столпа ООП платина, reference-types vs value-types, GC, как реализовано множественное наследование, если веб-макакой - типы джоинов, путь запроса от клиента до базы и обратно. Возможно, настройка ииса, уметь зайти по рдп.

Ответы>>733266>>733280

03 Май, 16:49 #447 #733263

>>732581
Не знаю, вдруг ты прочитаешь, но вот как мне и посоветовали, взял Children от rgDescriptions.

03 Май, 16:55 #448 #733266

>>733251
чота жиденькое собеседование получилось

Ответы>>733278

03 Май, 17:21 #449 #733278

>>733266
Я такое на мидла проходил. Ну еще плюс простая задача.

Ответы>>733281>>733853

03 Май, 17:24 #450 #733280

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

Ответы>>733284>>733319>>733375

03 Май, 17:24 #451 #733281

>>733278
Какой город?

Ответы>>733319

03 Май, 17:25 #452 #733282

Планирую понаехать из провиции в ДС2. Очкую проходить собеседования, не люблю краснеть когда задают вопросы, на которые я не знаю ответы.

Ответы>>733299

03 Май, 17:26 #453 #733284

>>733280
> какие побочки от него могут быть.
И какие же?

Ответы>>733285

03 Май, 17:28 #454 #733285

>>733284
Замедлят вставку, базу в размере разнесёт из очевидных. + Надо следить за индексами: ребилды, дефрагментация, етц.

03 Май, 17:55 #455 #733299

>>733282
Отвечай что не знаешь и пусть задают следующий.

Ответы>>733304

03 Май, 18:00 #456 #733304

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

Ответы>>733321

03 Май, 18:29 #457 #733319

>>733280
Ну это не все, что было. Просто самое интересное.
>>733281
Тула

03 Май, 18:30 #458 #733321

>>733304
Не узнаешь, пока не проверишь. Но на самом деле макаки везде есть.

Ответы>>733325

03 Май, 18:33 #459 #733325

>>733321
> Не узнаешь, пока не проверишь. Но на самом деле макаки везде есть.
Ну это правильно, тоже так думаю

03 Май, 18:35 #460 #733327

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

Ответы>>733359

03 Май, 19:18 #461 #733359

>>733327
> А есть тут такие кто помимо шарпача знают еще один язык?
Я знаю.

> Подумывю вкатиться в мобильную разработку на ведре
Вкатывайся в Xamarin.

Ответы>>733372

03 Май, 19:35 #462 #733372

>>733359
Что за второй язык? Ты на нём зарабатываешь или используешь на той же работе(не js, я надеюсь)

Зачем ксамарин? В нём профит если только под ios. В андроиде яву не так уж и сложно осилить.

Ответы>>733482

03 Май, 19:37 #463 #733375

ребзят, какие, если есть, есть механизмы поддержания целостности данных при наличии двух (и более) источников данных, скажем, рсубд для аутентификации, граф для контента? пыщьпыщь

>>733280
мне сделали предложение на основании собеседования (лол) из шести вопросов

03 Май, 19:39 #464 #733379

Что паттернам лучше почитать?

Ответы>>733391>>733453

101 Кб, 263x400

03 Май, 19:45 #465 #733391

>>733379
http://rutracker.org/forum/viewtopic.php?t=4835979

Ответы>>733398

03 Май, 19:49 #466 #733398

>>733391
Говорили что это слишком сложно для начала.

Ответы>>733401

03 Май, 19:51 #467 #733401

>>733398
Тогда эта, ищи там же
http://shop.oreilly.com/product/mobile/9780596007126.do

Ответы>>733453

03 Май, 20:34 #468 #733453

>>733401
>>733379

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

Ответы>>733460

03 Май, 20:44 #469 #733460

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

03 Май, 20:57 #470 #733465

>>733249
>Оу жесткий лок. Я правильно понимаю что поток будет заблокирован на время отсутвия заданий в очереди?
Да.

Бесконечный цикл который ждет пока в очередь что-то не попадет.

Как альтернатива, можно проверять, есть ли в очереди элементы, и если нет, ждать, скажем 100 миллисекунд, и проверять снова.

Ответы>>733496

282 Кб, 1920x1200

03 Май, 21:17 #471 #733476

Почаны, обесните когда используется репозиторий, а когда юнит оф верк?

Ответы>>733481

03 Май, 21:26 #472 #733481

>>733476
между ними, вроде бы как, общега ничего и нету
https://habrahabr.ru/post/238737/

Репозиторий представляет сущность как коллекцию в идеале IQueryable
ЮоВ дает возможность в определенный момент времени использовать один источник данных из нескольких местов на самом деле, UoW чутка сложнее

03 Май, 21:27 #473 #733482

>>733372
> Что за второй язык?
Java / Kotlin

> В андроиде яву не так уж и сложно осилить.
Java НЕ нужна, из C# гораздо проще вкатится в Kotlin - меньше удивление будет.
В Kotlin есть экстеншен-методами, норм. лямбдами и тд, а скоро и с async/await.

"Краткий обзор Kotlin и сравнение с C#" - https://habrahabr.ru/post/281759/
На последем DotNext его рекомендовали https://www.youtube.com/watch?v=jDrCvq0yo7g
Рассказ о языке с отсылками к C# https://www.youtube.com/watch?v=DQqOCx2UJ10

Ответы>>733493>>733495

03 Май, 21:45 #474 #733493

>>733482
Я всегда был за более распространенные технологии. Сейчас хайп вокруг котлин пройдет и все про него забудут. А если придется где-то подработать, то там по-любому будет Ява. Пока котлин не толкает гугол, он не нужен. Да и уж лучше бы гугол Свифт выбрал вместо Явы и был бы единый язык для мобильных платформ, но это мечты.

03 Май, 21:45 #475 #733495

>>733482
Да и подозреваю толкали его джетбрэйнз.

03 Май, 21:46 #476 #733496

>>733249
>Оу жесткий лок.

>>733465
>Как альтернатива, можно проверять, есть ли в очереди элементы, и если нет, ждать, скажем 100 миллисекунд, и проверять снова.

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

Если север будет много простаивать, то семафор явно лучше.

04 Май, 10:52 #477 #733853

>>733278
>Я такое на мидла проходил
>Три столпа ООП платина, reference-types vs value-types, GC, как реализовано множественное наследование
Лол, серьезно? Это же вопросы для джуниора, мне кажется. Может у меня даже есть шанс устроиться в офис...
>>733182-кун

04 Май, 11:23 #478 #733877

Вкатился в С#
Есть курсы от ITVDN
-
Нет никаких идей абсолютно, чего покодить? Могу в объектно ориентированное. Идей нет никаких. Где можно почитать про функционал и не ограничиваться говном всяким, типа калькулятооов. Хочу кодить сильно. ЧТО БЫ НАПИСАТЬ, АНОНЫ?
-
И что нужно знать для трудоустройства на должность С# прогера?

Ответы>>733880>>734034>>734278

04 Май, 11:30 #479 #733880

>>733877
Я уже как пару недель пытаюсь написать плоттер/логгер на C#+WPF, чтобы он получал по сериалпорту, сохранял ее и отображал. Оче удобно для самоделок на AVR/STM32. Есть дохуя идей как его потом улучшить, начиная от прикручивания модбаса до создания на его основе центрального сервера с отдельным клиентом. И на каждом участке приходится осваивать что-то новое, постоянно искать инфу что и как лучше сделать.
Так же поскроль тред, такой вопрос уже задавался минимум 2 раза.
>>728399
>>732688

301 Кб, 1920x1080

04 Май, 14:31 #480 #734034

>>733877
> ЧТО БЫ НАПИСАТЬ, АНОНЫ?
На тебе дурашка, роль

04 Май, 18:05 #481 #734278

>>733877
> Есть курсы от ITVDN
Говно. Не понимаю, как это может помочь ньюфагам. Слишком много информации, ньюфагам и половины не надо. Еще хуже, если запомнят не ту половину, которая нужна для вкатывания.
> ЧТО БЫ НАПИСАТЬ, АНОНЫ?
Хоть что для себя, чего тебе не хватает. Сложность не важна. Я начинал при вкате писать десктоп-клиент для одного сайта и спустя столько лет до сих пор допиливаю по вечерам под пивас. Всё что я изучал, осваивалось на практике путём добавления фич в мою софтину.

Ответы>>734279>>734282

04 Май, 18:07 #482 #734279

>>734278
Этим сайтом был Альбер Двачштейн?

Ответы>>734281

04 Май, 18:09 #483 #734281

>>734279
Нет. Я тогда и на дваче не сидел. Поддвачнул бы соседний тред про падение на дно из-за программирования.

04 Май, 18:12 #484 #734282

>>734278
> > Есть курсы от ITVDN
> Говно. Не понимаю, как это может помочь ньюфагам. Слишком много информации, ньюфагам и половины не надо. Еще хуже, если запомнят не ту половину, которая нужна для вкатывания.
Схуяли говно? Смотрел их в дополнение к троэлсону. Как один источник не очень, конечно, но в дополнение норм.

Рудик 04 Май, 19:30 #485 #734338

Вопрос знающему программисту. Я не могу понять, каким образом генерирует псевдослучайные числа. Залез в stdlib.h, нашел описание функции srand и ничего не понял.
программирую на vusual studio 2015 на C++, если это необходимо знать тебе

Ответы>>734342

10 Кб, 528x177

04 Май, 19:32 #486 #734342

>>734338
Отклеилась

Ответы>>734349>>734422

04 Май, 19:35 #487 #734348

>>732423
>>724808
Ну вот в том то и дело что найти это место в солюшене в 50 проектов не так уже просто, когда в стек трейсе никакой инфы нету.
В предыдущем месте тоже будет одна хуйня с одним потоком, в котором один вызов мэинформ и все. Это совсем неинформативно.
Еще вариант есть на скорость нажать брейк, чтобы словить именно тот момент что нужно, если например в грид некоторое время выводятся данные из бд. Это тоже хуйня какая-то, если повезет.

Ответы>>734426

04 Май, 19:35 #488 #734349

>>734342
>.h
а в этой хуйне разве не тупо названия функций прописываются. кресты же в .cpp файлах код хранят, или не?

Ответы>>734354>>734363

04 Май, 19:41 #489 #734354

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

04 Май, 19:42 #490 #734363

>>734349
обычно да, таки только заголовки. но ничего не запрещает тебе запихать туда реализацию чего угодно. в случае с шаблонами так ее туда запихивать приходится, ну или дописывать #include "your.cpp"

Ответы>>734369

04 Май, 19:45 #491 #734369

>>734363
то есть, я могу на крестах тупо в заголовочных файлах код хуярить? и всё работать будет?

Ответы>>734409

04 Май, 20:11 #492 #734409

>>734369
Если ты работаешь в IDE (а не блокноте), то я не советую.

Недавно смотрел трейнинг от JetBrains, они там раскалывали про CLion (C++ IDE).

Из их доклада я понял что все IDE заточены под конкретное построение проектов.
Типа что в h нет рабочего кода и по нему не надо каждый раз делать AST, а можно кэшировать.

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

Ответы>>734744

4 Кб, 258x228

04 Май, 20:18 #493 #734422

>>734342
http://www.cyberguru.ru/cpp/pseudo-number-generators-with-applied-crypto-page4.html
Нашел формулу-таки. Но не могу понять, как определяются нужные значения. Допустим, пикр, X0=? X1=41 .... и остальные пишет верно. Где достать цифры?

04 Май, 20:20 #494 #734426

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

Ответы>>734454

04 Май, 20:34 #495 #734454

>>734426
А для этого как раз и надо шароебиться по 50 проектам, если дебагом никак не отловить.

Ответы>>734476

04 Май, 20:45 #496 #734476

>>734454
Ебанулся штоле, документашку почитай/спроси пидоров какой модуль отвечает за эту вьюху.

Ответы>>734482

04 Май, 20:51 #497 #734482

>>734476
Документашки вменяемой нету, какой модуль у спрашивать стремно, еще нахуй пошлют(пошлют потому что скорее всего сами не знают)

Ответы>>734502>>734512

04 Май, 21:01 #498 #734502

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

Ответы>>734527

04 Май, 21:10 #499 #734512

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

Ответы>>734527

04 Май, 21:11 #500 #734515

ПОСОНЫ ХУЛИ ОНО НЕ КОМПИЛИРУЕТ?
ЧО ЕЙ БЛЯТЬ НЕ ТАК?

https://dotnetfiddle.net/gs40Cl

Ответы>>734518>>734519>>734538

04 Май, 21:13 #501 #734518

>>734515
>where T: a, b
Предполагая что какой то класс может быть наследником и a и b, ох вейт, у нас же сишарп и компилятор за такую хуйню убивает нахуй.

Ответы>>734526

04 Май, 21:13 #502 #734519

>>734515
Прост ты пидор.
Уебывай с борды

04 Май, 21:18 #503 #734526

>>734518
вот щас ничего не понял, что эй не нравится?

Ответы>>734537

04 Май, 21:18 #504 #734527

>>734512
>знач ты устроился на какое-то дно.
Куда взяли, лол. Первая работа, без опыта
>>734502
Я просто думал может есть какая-то специальная штука в таких случаях, о которой я не знаю. Например как, посмотреть последние 50 действий, если в стектрейсе не видно...
Я то в итоге нахожу баги, но с помощью обходных способов(поиск сообщение меседжбокса по всему солюшену или если повезет когда быстро брейк нажму в стектрейсе останется что-то полезное) которые не для всех случаев годятся

Ответы>>734537

04 Май, 21:26 #505 #734537

>>734526
Приведи, пожалуйста, пример класса, который наследуется и от A и от B, чтобы его можно было передать в твой метод.

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

Ответы>>734557>>734558

04 Май, 21:26 #506 #734538

>>734515
Нельзя конкретные типы пихать в ограничения.

Ответы>>734540>>734549

04 Май, 21:27 #507 #734540

>>734538
define конкретные и неконкретные типы

Ответы>>734559

04 Май, 21:31 #508 #734549

>>734538
што?

Ответы>>734559

04 Май, 21:35 #509 #734557

>>734537
>Проиграл с таких методов разработки.
Ну а что еще делать?
Все тут своими делами занимаются, заебывать даже как-то неудобно

Ответы>>734570

04 Май, 21:36 #510 #734558

>>734537
>Приведи, пожалуйста, пример класса, который наследуется и от A и от B, чтобы его можно было передать в твой метод.
но нахуя?

Ответы>>734560>>734563>>734570

04 Май, 21:36 #511 #734559

>>734540
>>734549
Забыл, что можно, лол. Но только от одного, а не от двух.

https://msdn.microsoft.com/en-us/library/d5x73970.aspx

Хз, может интерфейсов можно указывать несколько сразу.

04 Май, 21:36 #512 #734560

>>734558
и вообще множественное наследование нельзя вроде

Ответы>>734571

04 Май, 21:38 #513 #734563

>>734558
Суть ограничения, тип Т должен наследоваться от A, множественного наследования не завезли и потому еще и тип B ограничениях приводит к еггор.

04 Май, 21:40 #514 #734570

>>734557
Когда человек приходит на проект, ожидаемо что он будет задавать вопросы, по хорошему, ему должны еще и рассказать что они за хуйню тут используют/понаписали, чтобы это человек не писал другую хуйню.
>>734558
>но нахуя?
>тобы его можно было передать в твой метод
kolobok.jpg

04 Май, 21:41 #515 #734571

>>734560
и вообще этот хуй пишет что можно http://metanit.com/sharp/tutorial/3.12.php

>При этом мы можем задать множество ограничений через запятую:

class Bank<T> where T : Client, Account
{}

Ответы>>734583

04 Май, 21:48 #516 #734583

>>734571
Хм.. ошибка в туторе.
По сути верно, но два класса нельзя. Можно класс и кучу интерфейсов.

Ответы>>734591

04 Май, 21:56 #517 #734591

>>734583
https://dotnetfiddle.net/PtZBwD

хорошо, а хули щас не работает?

Ответы>>734593>>734594

04 Май, 21:57 #518 #734593

>>734591
b и a местами поменяй и научись ошибки компилятора читать

Ответы>>734595

04 Май, 21:58 #519 #734594

>>734591
https://dotnetfiddle.net/0P4to0
быстрофикс

04 Май, 21:59 #520 #734595

>>734593
там 2 интерфейса,
ошибка 'T" является параметр типа, который недопустим в данном контексте.

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

Ответы>>734597

04 Май, 22:01 #521 #734597

>>734595
лол, туплю пиздец, ушел пойду спать

04 Май, 22:06 #522 #734600

Хорошо,
если все равно выносить методы в интерфейс, тогда отпадает смысл в шаблонах
вопрос нахуя они такие нужны?

Ответы>>734606

04 Май, 22:09 #523 #734606

>>734600
IEnumerable<T> видел? Напиши пожалуйста интерфейс для T

04 Май, 23:11 #524 #734643

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

05 Май, 00:42 #525 #734744

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

05 Май, 11:23 #526 #734933

Есть вопрос к тем, кто угорает по asp mvc, в частности - кто шарит в бандлах.
Кароч, есть у меня SPA сайт на ангуларе.

Выделил такие бандлы:
main - тут у меня солянка из всяких jquery, angular и прочей сторонней еболе
directives - тут ангуляровые директивы
modules - ангуляровые модули
services - ангуляровые сервисы
app - собсно контроллеры.

В чем жопа. Есть у меня скрипт app.js (главный модуль приложения), который валит все приложение, если его закинуть в мандл app. Работает, только, если его расположить в main. Причем, в таком случае, перестает работать на лисобраузере. И я не понимаю почему.
К слову: все внешние скрипты лежат парами: обычный и .min.js вариант. В бандле прописываю обычный.
Поясните, что я делаю не так?

Ответы>>735090

05 Май, 15:44 #527 #735090

>>734933
зачем ты отделяешь скрипты по бандлам, если сиравно их используешь вкупе?

05 Май, 19:15 #528 #735241

откуда можно почитать про оптимизацию работы приложения/отдельного куска BL для работы с большими объемами данных?

35 Кб, 480x640

05 Май, 20:30 #529 #735293

Помогите совладать с фоновой задачей в Windows Store приложении. Я вроде сделал всё правильно, а таск нихуя не работает и пишет в события винды ошибки
"Activation of app <appname> failed with error: This app does not support the contract specified or is not installed. See the Microsoft-Windows-TWinUI/Operational log for additional information.".

В Operational log написано:
"The app <appname> is not registered for the Windows.BackgroundTasks contract or is not installed."

Референс на проект с таском я добавил, declaration в манифесте есть(даже две штуки т.к. два разных таска регаю), метод для регистрации таска я писал глядя в MSDN т.е. всё должно быть ок.

Ответы>>737632

06 Май, 03:52 #530 #735649

Сап. Есть функция
>public void Enqueue(T item) {

>1 int new_tail = Interlocked.Increment (ref _tail);

>2 _array[new_tail] = item;

>3 Interlocked.Increment (ref _size);

>}

Функция вызывается одновременно из различных потоков.

Внимание вопрос!
Может ли случится так, что, один поток вначале исполнит код 1_1,1_2, и процессор переключится на другой поток, после чего, второй поток, исполнит сразу 2_1, 2_2, 2_3, процессор переключится на первый поток, и тот исполнит 1_3.

Ответы>>735713

06 Май, 09:11 #531 #735713

>>735649
Может.

Ответы>>735972

06 Май, 10:50 #532 #735774

Тред тонет, нужен перекит.

06 Май, 14:54 #533 #735972

>>735713
Грусть пичаль.

Ответы>>736060

06 Май, 16:33 #534 #736056

Ононасы, поясните как этот код работает, в шарпе же нельзя наследоваться от самого себя?

public abstract class AggregateRoot<TAggregate, TIdentity> : IAggregateRoot<TIdentity>
where TAggregate : AggregateRoot<TAggregate, TIdentity>
where TIdentity : IIdentity
{...}

Ответы>>736062

06 Май, 16:36 #535 #736060

>>735972
Так надо lock делать на этот участок кода. Ну это если тебе самому надо это навелосипедить, а если нет - нужно взять потокобезопасную коллекцию и не пердолиться с низкоуровневыми конструкциями.

Ответы>>736588

06 Май, 16:39 #536 #736062

>>736056
CRTP

Ответы>>736064

06 Май, 16:40 #537 #736064

>>736062

Это же для плюсов, там я знаю что такие и еще более крутые выкрутасы допустимы.

Ответы>>736065

06 Май, 16:42 #538 #736065

>>736064
Так тут нет наследования от себя, ты просто указываешь constraints для type parameters

Ответы>>736081

06 Май, 17:00 #539 #736081

>>736065

Мдэ, во навернули.

Ответы>>736260

06 Май, 20:27 #540 #736260

>>736081
ничего необычного, как Guid:IComparable<Guid>, только завернутое в абстракцию

07 Май, 03:16 #541 #736588

>>736060
>Так надо lock делать на этот участок кода. Ну это если тебе самому надо это навелосипедить, а если нет - нужно взять потокобезопасную коллекцию и не пердолиться с низкоуровневыми конструкциями.

Лок не подходит. Уж оче кретичен перфоманс.

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

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

В принципе, разобрался что к чему и получилось.
С тем ограничением, что макс размер очереди фиксирован размером внутреннего массива.

07 Май, 09:39 #542 #736667

https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)
https://2ch.hk/pr/res/736660.html (М)

69 Кб, 480x534

08 Май, 15:39 #543 #737632

>>735293
Разобрался. Я проебался и вместо Windows runtime компонента создал обычную библиотеку классов.

Тред утонул или удален.
Это копия, сохраненная 23 мая 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion