Это копия, сохраненная 18 марта 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
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/626848.html (М)
- 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 - в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная
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
- 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 - в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная
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
ded tread
Гуй не стандартный дотнетовский никакой. Доступ к элементу - по номеру в списке. Соответственно, нужно связать этот гаевский самый обычный список с моим дикшинари.
И в дикшинарт, естественно, не 10 элементов внутри, а и до 2 тысяч может доходить.
Смотря что за приложения пишешь.
годно, утащил пару книг
Ну хуже от его наличия не будет. Почему бы не попробовать пока есть свободное время и деньги.
Аноны, пишу опять, спустя два месяца таки осилил Сишарп, правда использовал его для немного других вещей, но не суть.
Что учить, чтобы можно было уже в сентябре фрилансить? Asp, WPF?
И какого уровня там заказы обычно выдают? Хочу выполнять всякую мелкую хуйню.
Как трудно найти 1-й заказ?
Расскажите, как начинали и с чего.
Я уже понял.
Правда, что все начинают с работы за отзывы?
Где ищется все это? А то я заглянул на фриланс-сайты и охуел от проектов и вакансий, их вообще нету.
Ага, значит + английский.
И серьезно, все все знают?
Ну я про сам язык
Алгоритмы
Работа с сервером (Тут уже десяток технологий со всякими SQL)
Верстка + Js
И сам Asp.net
Бля, вы герои просто, еще и вакансии умудряетесь находить.
Ну вкалывают годами, начиная с раннего возраста, потому и осиливают. А английский так больше всего нужен, без него вообще никуда.
И сколько обычно занимает подготовка от ньюфага до человека, способного сделать хоть что-то на фриланс-бирже?
В зависимоти от языка, в случае шарпа знать обычно нужно больше, но и платят соотвественно тоже больше. Год-два наверное, если есть способности.
Придумай себе задачу и понемногу пытайся её реализовать. Потом, когда знаний станет больше - переписывай с нуля. Потом еще раз, и так пока не поймешь, что хватит. А в начале просто с примерами из книг тренируйся.
Аноны, почему через 3 года на дваче я стал смеяться даже над даунскими шутками? Не натурально смеяться, но типа смешок вызывает все.
Деградировал полностью, у меня такая же хуйня. Слюна пока только изо рта не течет.
Двачую. Я тоже реально чувствую что отупел с этими мемами, бугуртами и прочим гавном. Память хуже работает, концентрации тоже нет нифига.
Цель - задрочить язык на практике, пиля какую-нибудь пошаговую говноигру пока по задумке 4-партия-рпг "в стол". Соответственно, в игре будет имитация онлайна (подключение к установленному на пека серверу и там сохранение логинов-паролей-персонажей etc, подгрузка персонажей оттуда при логине), какой-никакой всратый но интерфейс, жалкое подобие ии противника, может еще чего.
С каких ресурсов проще всего брать инфу и что вкратце почитать перед началом работы чтобы не городить костыльных велосипедов?
Yep
2й день в С#, совсем не соображаю.
Нужно написать поиск по файлу, но результатом должно быть кол-во упоминания этого слова в тексте, т.е.: Загружаем текстовый файл, в текст боксе пишем n-набор символом, происходит поиск по тексту текст довольно большой, логи показывается кол-во упоминаний.
Все что смог пока сделать, this лол https://dotnetfiddle.net/1PeFXV
Да ну в доках же все есть
https://msdn.microsoft.com/en-us/library/ms157902(v=vs.110).aspx
> Begins running a standard application message loop on the current thread, and makes the specified form visible.
Имеется коллекция строк, содержащая пути к файлам с расширением. Она биндится к комбобоксу.
Юзверь не должен видеть расширение, но оно должно там подразумеваться.
На каком уровне лучше убрать расширение: на уровне свойства get перед биндингом или лучше добавить ещё одно поле в коллекцию?
Как лучше это реализовать?
https://dotnetfiddle.net/IKPZUW
Менее костыльным вариантом, думаю, будет написание конвертора (IValueConverter), но тут перфоманс немного просядет. Если элементов много, то лучше поле добавить.
С консольки начни. Файл весь в память не читай, читай посточно, сам же говоришь, что файлы достаточно большие. Для поиска подстроки используй IndexOf, чтобы искать все совпадения пихай каждый раз параметром startIndex в IndexOf последний индекс, пока -1 не вернет. И считай все в переменную.
Сам скомпилируй, ну. Вот, скомпилировал за минуту, неужели так сложно? http://rghost.net/8LcPGF44k
Теперь подключаешь эту DLL как референс и используешь.
Тонкий ход
Первое что приходит на ум это дженерик.
public static T GetValueFromDataTable<T>(DataTable dt, int indexRow, string nameCol)
{
var result = dt.Rows[indexRow][nameCol];
return (T)Convert.ChangeType(result, dt.Columns[nameCol].DataType);
}
Этот вариант будет запускаться только с указанием типа.
int x = GetValueFromDataTable<int>(dt_tblName, 0, "x");
А хочеться так:
public static T GetValueFromDataTable(DataTable dt, int indexRow, string nameCol)
{
var result = dt.Rows[indexRow][nameCol];
return (T)Convert.ChangeType(result, dt.Columns[nameCol].DataType);
}
int x = GetValueFromDataTable(dt_tblName, 0, "x");
Но так оно не работает.
спасибо, тоже склонялся к конвертору.
Я вчера скомпилировал, как dll библиотеку, но насколько я понял, нужен был ещё xml файл для чтения?Как он делается?
Какой еще XML-файл? Для подключения и импорта тебе больше не нужно кроме DLL. Если либе на вход нужно хмлку какую-то давать, то это уже другой вопрос, тут ты сам должен знать.
Окей, благодарю
Реквестирую гайды
Cоррян, но мне придётся доебаться до тебя ещё раз
При открытии решения c# в юнити3д мне в обозревателе решения не даёт добавить ссылку на библиотеку. Т.е. вообще, там нет пункта add reference. Какого хера?
вопрос снимается, спасибо
Объясните, почему сишарп и дотнет существуют в парадигме интерпретируемого языка и джава-машины?
Можно было бы просто написать компилятор сишарп кода, который поддерживал бы все фичи сишарпа, работал быстрее и не требовал бы принудительных установок дотнета.
Ладно джаву понять можно, там одни библиотеки под все платформы. Но дотнет под одну единственную платформу работает и даже внутри нее не переносится (х64 приложения на х86 не запустятся). Тогда зачем вообще все это?
очевидно то очевидно, только для новичка оказалось не столь легко его написать
м-м-м, сложно пиздец)
> который поддерживал бы все фичи сишарпа, работал быстрее и не требовал бы принудительных установок дотнета.
Ты только что .net native
> Но дотнет под одну единственную платформу работает и даже внутри нее не переносится (х64 приложения на х86 не запустятся). Тогда зачем вообще все это?
Вранье же. Есть моно, теперь еще и coreclr. Кроме того, c# не единственный язык под clr. Есть еще фшарп, и вб, и писать компиляторы для каждого из языка в машинный код было бы пиздецки сложно, поэтому промежуточный язык очень даже неплохое решение. Алсо в случае x86-x64 есть AnyCPU сборки, где в этом случае под 64битными системами будет задействован 64битный джит, в 32битных ну ты понял
Ну на глаз вижу, что у тебя последний параметр в конструкторе интовый, а судяпо этому http://docs.unity3d.com/ScriptReference/Random.Range.html ты передаешь последним параметром флоатовое значение. Сколько там еще проблем хуй знает
>писать компиляторы для каждого из языка в машинный код было бы пиздецки сложно
А в IL намного легче?
Ок, я не знал.
>Ты только что .net native
Ну да, вопрос в том, почему эта платформа не является основной и единственной в рамках сишарпа.
>моно
А он в байт-код компилирует, не в натив?
Не слышал, чтобы для запуска юнити-игр (они моно) требовалась установка каких-то специальных package, вроде дотнета. Как они выполняются, какими средствами?
>AnyCPU
Тоже не знал, думал это просто другое название для x86
В IL намного легче хотя бы потому, что он включает уже объектную модель. Вот тут можешь глянуть https://en.wikipedia.org/wiki/List_of_CIL_instructions "Object model instructions". А так как и вб.нет, и шарп, и фрешетка объекто-ориентированы, все это компилируется в этот набор опкодов, а jit уже сам знает как с этим работать.
На современной винде .NET идет "из коробки"
Нужно написать консольную хуету с кучей менюшек. Меню вида Write("Введите хуй чтобы подрочить, веревка чтоб повеситься, выход чтобы закрыть программу"); Read() и в зависимости от того что пользователь ввел запускается соответствующий метод/функция и так далее.
Меню формируются в зависимости от предыдущих действий пользователя - соответственно, нужен какой-то конструктор меню, который будет принимать "варианты-реакция на варианты" и соответствующе выводить варианты, считывать ответ и запускать требуемую реакцию. Думал создать словарь типа <string вариант, reaction> где reaction - делегат, заполнять его в зависимости от нужных параметров и передать в конструктор, но столкнулся с тем что реакция не всегда однородна - где-то она принимает 5 аргументов, где-то 0 и так далее, а делегат требует столько аргументов сколько указано при его создании.
Также была задумка создать класс "MenuOption" содержащий строковую переменную-вариант и функцию-реакцию, запихать все объекты класса в лист и передать все тому же конструктору, но не понял как это осуществить.
Короче, посрите мне на лицо, скажите что я изобретаю велосипед из костылей и наведите на мысль как это сделать проще.
> Ну да, вопрос в том, почему эта платформа не является основной и единственной в рамках сишарпа.
Это очень-очень молодой проект, стандартные дотнет приложения вроде как еще даже не поддерживаются
> реакция не всегда однородна - где-то она принимает 5 аргументов
А откуда эти аргументы брать? С соснольки читать?
Да нет, из памяти программы
Ну например допустим это квест - где-то в ебенях есть постоянно изменяющийся массив какого цвета у персонажа есть занавески, переменная умеет ли он отжиматься и сколько, а еще он может выйти из дома. Тогда в какой-то момент может потребоваться вывести меню со следующими пунктами:
1)Повесить красные занавески не той стороной на окно 2 - Персонаж.ПовеситьЗанавески(окно2, красные, неправильно)
2)Отжаться 20 раз - Персонаж.Отжаться(20)
3)Выйти из дома - Персонаж.Съебаться()
То есть, если какая-то переменная такая-то - добавляем первый пункт в наш список, другая переменная такая-то - добавили еще про отжимания, передали конструктору, он захуярил меню. А может вообще быть другой набор параметров и тогда надо будет не вешать занавески, отжиматься и съебывать, а прыгать, читать книгу Донцовой и спать. То есть это меню конструируется динамически по куче переменных, и свитчем тут не взлетит.
>Тотальный трехдневный ньюфаг
>создать словарь типа <string вариант, reaction> где reaction - делегат
Пиздишь же, не мог ты 10 глав Троелсена за 3 дня осилить.
Я бы сделал так:
http://ideone.com/St1X3d
Насколько я понимаю, это паттерн проектирования под названием "Стратегия".
К сожалению, в ideone не работает нормально, потому что там Console.ReadLine(); не работает.
Возможно там ошибки в логике, я под линупсом сижу, не могу проверить. Но сама идея архитектуры надеюсь понятна.
Делегаты по-моему зашкварно юзать, их придумали для тех, кто не умеет в проектирование.
Бля не писал сишарп код месяц и понял, что я пиздец соскучился. Моно ИДЕ навернуть наверное нужно.
Сгенерировал SQL энтити классы (это уже модел по MVVM ??), создал дата грид. Как сделать, чтобы при редактировании таблицы редактировалась база данных? Если можно на пальцах. Добра тому, кто ответит
F6/Shift+Ctrl+B, хуй знает чо там у тебя. Build -> Build Solution если из меню
>10 глав Троелсена
Да нет, просто выдалось 3 дня выходных я почему-то решил, что учить по гуглу и практике язык с нуля, не имея внятных представлениях о программировании/алгоритмах/ДЕСИГНПАТЕРНС кроме вузоского (заборостроительного) курса - хорошая идея. Сейчас уже, ощущая кашу в голове, понял, что такая модель изучения без хоть какой-либо базы (кроме калькуляторов для зачетов на других языках) - говно, но хочется доделать начатое хоть частично, а потом уже зарыться в книги. Но это так, отступление.
Благодарю за код и советы, посмотрю как будет возможность.
Не могу в ASP.NET WebForms подключить css к .aspx файлу
Вставляю, как обычно
<link rel="Stylesheet" href="stylesheet.css" type="text/css" />
Но стили не применяются.
Подскажите, если кто знает, в чем дело?
>bool DoSomething();
Имено нормальные дать нужно интерфейсу, классам и этому методу. Иначе выглядит как говно. Что за бул, что он возвращает из функции с таким именем? К гадалке идти? Инкапсуляция просрана нахуй.
То что у меня есть (пик релейтед) открывает в той же вкладке, а мне надо в новой.
Я нихрена не смыслю в вебе, где там ссылочка и с какой стороны у нее таргет?
Пробовал еще вот это скопипастить с СО:
>Page.ClientScript.RegisterStartupScript(this.GetType(), "OpenWindow", String.Format("window.open('{0}','_newtab');", file.Name), true);
Но оно не работает, потому что к файлу нет доступа, как я понимаю
>Разыскиваемый вами ресурс был удален, было изменено его имя или он временно недоступен.
Добавить на формочку EntityDataSource, прописать ему нужную модель, указать его в DataSource у грида.
Ссылочка, на которую пользователь нажимает. https://developer.mozilla.org/en/docs/Web/HTML/Element/a#attr-target
У тебя вебформы?
Вебформы. У меня нет ссылочки.
У меня есть кнопка, в ее OnClick вызывается метод, запрашивающий данные из базы, обрабатывающий их, пишущий то что получилось в вордовский документ, и затем конвертирующий его в pdf.
Собственно, метод возвращает путь к полученному пдф файлу. Файлы создаются в папке сайта, и называются типа report_yyyy_MM_dd_hhmmss.pdf
Мне нужно пользователю показать вот этот сгенерированный файл в новой вкладке.
А что, в MVC проще открыть новую вкладку с пдфкой что ли?
Я в принципе в основном на WPF все делаю, просто иногда нужно чтобы у линуксоидов тоже открывалось, и тогда приходится быстро нахерачить что-нибудь на вебе.
Желания погружаться в говно дивный мир html+css+js у меня все равно никакого, а формы мне проще и привычнее кажутся.
Как по мне, любые видео-курсы с практикой дадут больше толка, чем книга, которую дропнешь после 20 страниц.
Тебе 40 лет?
Ты там вебклиентом с диска файл то штоле качаешь?
Сделай обычный handler, который создает и отдает тебе файл, и ссылку, которая открывает его в новой вкладке
>Разыскиваемый вами ресурс был удален, было изменено его имя или он временно недоступен
Путь то проверь
Годно если смотреть на англ. Русские уроки там либо сакс либо старые уже.
пятнадцатая студия не выдаёт даже код ошибки. Пишет только, что ошибка в строке 2, т.е. unsig AssidentalNoise;, но до этого и так легко догадаться. А intellesense только разводит руками
И вообще покажи первые строки.
в либе не уверен, ибо переделывал сторонний шум, мог чего накосячить. Насколько первые?
А вот знает, что у тебя там. Можешь сам проект залить и я гляну. Ну это если он не приватный.
Проверь, что таргет фреймворки твоего приложения и этой либы совпадают.
Почему отступы не одинаковые?
Кстати никого не заебывает что "открывающая скобка" у методов на отдельной строке?
Интересно это не с индусов пошло, которым платят за LOC.
> Кстати никого не заебывает что "открывающая скобка" у методов на отдельной строке?
> Интересно это не с индусов пошло, которым платят за LOC.
Нет, потому что это удобнее и приятнее для глаз.
Ты про свою мамашу?
> это удобнее
А чем это удобнее?
Мне приходится много разрабатывать на C# и Java (для мобилок).
И по Java/Swift/Kotlin коду можно быстрее пробежаться взглядом.
Там больше "конкретики" на удельную строку, вместо { после каждого if/else/метода
Может в /gd спросишь? Там есть те, кто с unity работают.
>java
Ну и пиздуй из нашего уютного треда в свой свиной загон, ява-хохол. Сука, ненавижу каклов, все треды засирают своим хрюканьем, поскорее бы Урина сдохла.
Кстати слышно что про "главный конструктор"? Хотели в C# 6 добавить, потом (прям перед релизом) передумали.
Пробежался по github ишам Roslyn, чет не нашел. Он вообще запланирован на C# 7 ?
С ним можно было бы избежать бойлерплейта с 17 по 23 строки.
И возможно появился бы способ удобного создания иммьютабл классов.
Да что-то подзатихло с этими конструкторами. Вот такую кострукцию (records) возможно в седьмом добавят вместе с паттерн-матчингом, а с первичными конструкторами что-то не вижу ничего. Насчет иммултабельных классов: тоже планируют вроде бы.
Не слишком жирную , скорее для быстрого ознакомления с базовыми принципами и методами.
Дальше буду учиться на практике и экспериментах.
Опыт программирования есть.
Заранее спасибо.
Если с опытом и по быстрому хочется можешь "c# precisely" попробовать, второе издание
Там, возможно, некоторые моменты будут неясны, т.к. она позиционируется как книга для тех, кто уже знает немного шарп, но я по ней достаточно быстро кое-как освоил шарп. До этого только опыт с перлом был
книга на 200+ страниц,то что мне нужно.
пиздец лень читать поеботу на 1000 страниц где не запомнишь и половины.
Лучше короткий справочник и потом практика. Что думаешь?
Ну я начинал вообще методом тыка, потом статейки, небольшие книги, много практики, а потом, когда решил сфокусироваться на шарпе, то уже тогда очень много читал. Если просто хочешь вкатиться в шарп для себя то такого коротенького справочника и много практики будет достаточно. Если работать на нем собираешься, то вероятно придется больше читать. Ну там перфоманс, бд, асп.нет, все такое.
Мой первый язык - плюсы. Не накодив на нем ничего, кроме учебных задачек перекатился на шарп. Нам с шарпом было очень весело. Я кодил вещи, которые использую в своей жизни до сих пор. Позже, набрашись опыта решил снова перекатиться на c++, но потерпел fail :(.
Аноны, стоит ли обратно перекатываться к шервавому или мне лучше дальше учить плюсы?
ну я хочу для начала выучить сам по себе и попрактиковаться, а когда знания конкретной технологии потребуются , начну читать.
Я вот набросал литературу по своему опыту вторым постом >>651018, вроде все понемногу старался описать, может что интресное найдешь.
Так это же я ее и советовал, лол. По шарпу зачастую книги не тоненькие, но ты можешь брать любую и читать по диагонали, если чувствуешь что слишком просто.
Забыл еще кое-что уточнить.
Мне всего лишь 17 лет, программирую просто для себя, потому мне похуй на чем кодить, просто тут дело принципа, не хочется бросать все на полпути, если вы понимаете о чем я. Мне язык нужен как проводник по Computer Science.
Возвращайся к C#. Что бы писать серьезно на С++ требуются годы практики. Годам к 20 вернись к крестам.
Так и сделаю.
Будто бы ты не петушок.
Посоветуйте годноту.
Даже с учетом того, что у меня только 4 из 7 дней учебные, остальные 3 я на фуллтайм отдыхе, не хватает времени, из-за чего продвигаюсь очень медленно по книжке.
Под постом ответьте, кто какую книгу читал и сколько времени понадобилось для освоения. Начну я, albahari c# 5.0, 160 страниц за месяц(полтора)
6 книг за 2 месяца, всего ~4000 страниц, ты какой-то неполноценный.
Я за две недели прочел Липпмана "ЯП C++", 1,2к страниц ЕМНИП. 160 страниц в месяц - это для петухов.
мимо-656310
<authentication mode="Forms" >
<forms name="cookies" loginUrl="~/Account/Login" timeout="2880" defaultUrl="~/Home/Index" />
</authentication>
У меня сразу же включается аунтефикация форм?
Если я попытаюсь зайти на страницу, которую возвращает метод у которого нету атрибута AllowAnonymus и у меня еще нету куки для аунтефикации, меня должно автоматически перенаправлять на страницу логина?
Я правильно все понимаю?
Потому что куки нету, но пускает по всем страницам.
using не меняет тред, он только гарантированно делает dispose
Да, в текстовичек.
В XML
https://msdn.microsoft.com/ru-ru/library/system.windows.forms.textboxbase.clear(v=vs.110).aspx
Идея в том, что я ввожу число, оно записывается в переменную "а", потом ввожу второе число, с которым буду делать какие-то действия, но при этом значение "а" остается написанным в строке, но не записывается во вторую переменную.
Что ты блядь несешь? Клир там нахуй не сдался как у тебя написано.
> Русский интерфейс
> Нуб-дегенерат
Все сходится
У тебя здесь не TextBox, а Entry - у него нет метод Clear.
result.Text = ""; // Это должно очистить
Я слушаю Jpop обычно. Он не сильно отвлекает + не дает заснуть.
Я посмотрел курс из 11 уроков на гикбрэйнс, поэтому и реквестирую видосики. Может есть что годное?
Потому что у ms нет другого языка, а те что есть - на той же платформе. Про прекрасную Idea - здесь есть студия и решарпер пророк ее. Ну а если ты кроссплатформозависимый - jetbrains выкатывают идею для решеточки.
У меня студия ужасно лагает с решарпером. Стоит отметить - Community 2015. JB жаловались, что 15 сырая в плане оптимизации, что когда они в 15й открыли свой солюшн с решарпером - оно все просто висло, из-за чего они разбивали солюшн.
А что за идея для решетки? Я видел на хабре чувак что-то пилил в этом плане на idea-platform, но оно индивидуальное, а не JB и скорее энтузиазм, чем продукт
Ну вообще он прав, с пятнадцатой студии какой-то пиздец начался. Постоянные фризы, по две ебучих бульбочки почему-то появлялись временами, временами решарпер просто отключался и вообще какой-то пиздец творился.
Выкуси с процом :3
Гугланул, да, объявили всего месяцок назад. Интересно как будет конкуренция VS x PR.
Идея, кстати, не тормозит или по-крайней мере не так.
Вообще я подозреваю неSSD в этом виноват. W10 кэширует прцоессы, даже когда они закрыты. повторное включение-выключение студии заметно меньше лагает в течении одного сеанса за компом.
Вообще с Project Rider мотивация апнулась, шарп нужен, шарп делают, а значит нужно больше, тех, кто делает на шарпе. Пойду (учиться) кодить. Спасибо за отличные новости шарпач!
>2.2
>QM
>она у нас домашняя
>доступно 7,90
Смеющийся кот.жпг Я под виртуалку в виртуалке больше выделаю.
Ну у меня тоже на телефоне всего 1гб, зачем в шарпотреде об этом кричать?
Мне тут говорили, что он не нужен(дополнительная абстракция)
Но вот здесь например говорят что нужен если со временем меняется ORM
https://www.youtube.com/watch?v=rtXpYpZdOzM
Я бы не спрашивал, если бы в вакансиях не писали, что нужно знать конкретно этот паттерн.
Вот на собеседовании и скажешь что ef реализует и repository и UoW
В вебконфиге изначально строчка стояла которая удаляет модуль с аунтефикацие форм.
Если в куки запихнуть, то юзер сможет их отредактировать у себя и получить доступ к инфе, которую он видеть не должен. Можно проверку данных делать, но это еще более затратно чем каждый раз их подгружать из бд.
В сессию если положить при логине пользователя, то что делать когда сессия истекает? Как узнать этот момент чтобы снова положить туда требуемые данные?
>он видеть не должен
Очевидно не надо тащить на клиент данные к которым он не должен иметь доступа.
Репозиторий нинужен. Обычно трансформируется в годобжект, если в базе овер 100 таблиц. Даже если пробовать применять DDD с кучей репозиториев, которые невозможно абстрагировать на какой нибудь IRepository.
Как по мне, наилучший подход - CQRS
>шарп нужен
Ну это и без райдера понятно было. Не будет же Microsoft делать йобу вроде рослина и .NET native для мертвого языка.
>с Project Rider мотивация апнулась, шарп нужен, шарп делают
>Astella, an IDE for Flash and Flex. This most short-lived JetBrains product was announced in October 2011, just a month before Adobe killed Mobile Flash.
Я бы не торопился с выводами.
Ты еще window phone вспомни и проект Astoria
>>658056
Сам C# живее всех живых, ты только глянь на фичи из 7 версии
https://github.com/dotnet/roslyn/issues/2136
Не будет же Microsoft делать <тут идет бескрайний список технологий Microsoft затерявшихся во времени как слезы в дожде>.
http://rghost.ru/7R9zbV5MW
Можешь попробовать всю ветку реестра с программой перекинуть из пеки с работающим ПО на пеку с нерабочим ПО. С лицензией 1С прокатывало. Ну или можешь заебаться и точно узнать, какой именно ключ реестра тебя интересует
это П.О. типа как портативная версия кликнул по .exe и оно запустилось. Там еще две проги должны быть установлены Borland Database и Firebird 1.5. Следов в реестре не нашел.
Если только тормозить будет, и то не саму форму, а только саму работу с диском надо сделать асинхронной, а не все форму в отдельный поток отправлять.
>Не слышал, чтобы для запуска юнити-игр (они моно) требовалась установка каких-то специальных package, вроде дотнета. Как они выполняются, какими средствами?
Юнити-игры носят все нужные(и не только) моно-библиотеки с собой.
В свойствах проекта есть галочка "создать файл хмл-документации". Он будет создан из тегов summary и подхвачен студией для подсказки. Для работы библиотеки он не нужен.
Еще больше условностей и спец. синтаксиса который нужно помнить разрабу. Вдруг какой-нибудь индус будет это активно юзать, а нюфаги будут постоянно спотыкаться об readonly и мучительно вспоминать как там реализован GetHashCode().
Начиная с линка шарп идет нитуда и вообще загнивает.
хех)
>надо помнить
Работа такая
>индус
Следую стереотипам будет писать как в is translated into
>спотыкаться об ридонли
Его для это и делали
>как реализован
Инкапсуляция
С последней строки конечно все отсеки залило авиационным жиром.
Ну я вот и хочу их в сессию сделать, на клиенте их и не было.
И это не данные можно сказать, а один параметр от которого зависит какие данные будут вытянуты из бд. Вот его и нужно привязать к конкретному юзеру на стороне сервера.
>>658005
Ок, посмотрю.
>>658211
Не понимаю.
Никакаго жира.
Тебя не смущает, что сройный объектный синтаксис шарпа разбавили декларативным sql-говнецом и уродливыми беззадачными лямдами? Если бы просто ограничились методами расширений на все случаи жизни, то хрен с ним, но нахуя уродовать базовый стройный синтаксис в угоду индусам? Нет слов, одна ненависть.
Ичсх все равно юзают методы расшерений, а на декларативную ссанину забили хуй. А ебнутые лямбды пролезли и теперь надо запоминать правила захвата локальных переменных в них и тормозить на ебанутой куче вызовов функций с тривиальной хуйней.
Сломали мой шарп, пидоры.
ЗАТКНИСЬ СУКА!!!1
Ты не из Android треда?
Там такой же жирный даунито, на Java жалуется (о том как хорош синтаксис 90-x годов, а хипстеры все испоганил).
>объектный синтаксис
Мультипарадигма
>декларативным
Охуенно
Если писать что то сложнее мап/фильтр, то методы расширений быстро превращаются в нечитаемый набор скобочек и стрелочек. Это еще можно осилить когда там join/groupJoin, но ты видел как let в методах расширения выглядит? Там даже циклы понятнее.
Нет.
>даунито
Нахуй иди.
>>658524
>Мультипарадигма
Шта? Вот когда ты сможешь создать функцию не привязаную к объекту тогда и заявляй такое. А сейчас это тупая бездумная эмуляция некоторых фич функциональной парадигмы на объектах за кулисами.
Вот взять фичу с пика 2 выше.
Иммутабельность.
Есть константный обьект для смены состояния которого будет создана целиком его копия. Потом выяснится, что сборщик мусора охуевает и за кулисами от программиста будет сделана оптимизация - объект будет модифицирован и возвращен как новый иммутабельный. А для наблюдателя он будет ко-ко-ко стронк конст.
Нахуя? Слов readonly и const недостаточно? Нимодно для хипстерков?
Пройдите нахуй с такими цирками.
>даже циклы понятнее
Я про то же и говорю. Нужно весь линк и связаное с ним говно тихо захоронить за плинтусом. Для серьезных вещей это нечитаемое говно, но школьникам и слабоумным макакам он портит код и нервы тем кто его читает.
> Ты не из Android треда?
> Нет
А мне кажется ты пиздишь, очень уж на него похоже.
В любом случае, проще тебя игнорировать, чем спорить с тобой из монитора уже жир сочится.
Можешь и дальше подрывать свою жопу, все равно на развитие C# ты повлиять не можешь.
x = 100
exec(open('functions/shit.py').read()) #вызываем функцию, внутри которой имя одной из переменных СЛУЧАЙНО совпадает с 'x'
print x
Угадайте, что выведется?
Кажется я начинаю понимать, почему в энтерпрайзе предпочитают сишарп/жаву, а не ПРОСТЫЕ И ГИБКИЕ ВЫСОКОУРОВНЕВЫЕ ЯЗЫКИ С ВЫСОКОЙ СКОРОСТЬЮ РАЗРАБОТКИ.
>Не понимаю.
Гугли In memory DB .NET C#. Это короче БД, которые хранятся в оперативной памяти. Обращения с ними как к ДБ, опять же доступа от клиента из приложения можешь и не давать. Саму БД заполняешь при запуске, допустим. После завершения просто память становится свободной. Никаких следов особых не оставляешь
Если такой уебан, что объявляешь глобальные переменные, то это будет проблемой, конечно.
Ты серьёзно?
>функцию не привязаную к объекту
Глобальную? Не над.
>иммутабельный объект будет модифицирован
Ну привет, по звездам узнал или просто из будущего?
>readonly и const недостаточно?
Конечно достаточно, мы ведь любим boilerplate.
>Я про то же и говорю
Нет, циклы в 16 году, кхм, да проще тебе ебало набить. Линк (именно linq синтаксис) прост и читаем, потому что там нет ебаных скобок/стрелок/индексов.
На школьников, макак и их код всем похуй
>Нужно весь линк
Хорошо что ты не design team, правда?
fix* а то кажись скрывают за описку
Там MVC 5. А мне последний нужен, который MS переименовали даже в ASP .NET Core. Там MVC по умолчанию.
Его даже не релизнули еще, какие по бетке могут быть книги? Смотри оффдоки
Работать пиздуй, а то уволю. Я слежу за тобой.
А мне нигде еще не ответили(((
Требуется построить хеш-таблицу, для поиска в которой используется метод открытой адресации (размещение и поиск элементов
– обязательно, удаление – желательно).
Длина таблицы q – простое число в диапазоне 10-20 тысяч.
Таблица строится для набора случайных символьных строк длиной 1-20 символов и хранит номера или адреса этих строк.
Хеш-функция для строки S длины L:
f(S) = ((…(S[1] 31 + S[2]) 31 + …+S[L-1]) * 31 +S[L]) mod q.
Необходимо вычислить среднюю трудоемкость поиска при различной заполненности таблицы (например, 25, 50, 75, 90 и 99%).
Для этого нужно сначала разместить в таблице нужное число строк, а потом для каждой строки подсчитать число шагов,
выполняемых при ее поиске.
Все вычисления провести для трех вариантов: линейные пробы, квадратичные пробы и двойное хеширование
Как решить? Вообще нихуя не понял.
Берешь любую книгу по структурам данных и от корки до корки ее
Есть много сопровождающих файлов. Они находятся в %папке_нэйм%.
Свойства файлов Build Action = None, Copy To Output Directory = always.
После компиляции они лежат в %путь%\bin\Debug\%папка_нэйм%.
Как изменить путь, чтобы они лежали в %путь%\bin\Debug\ ?
Пикрелейтед
Post Build Events. Но нахуя? Нахуя класть все дерьмо в одну папку? Держите свое дерьмо тщательно отсортированным.
Есть такая же на ангельском?
ты ебанутый?)
Какие решения комфортнее подходят для авторизации-аутентификации в проекте с rest ?
OAuth
А ты напиши многопоточный скачиватель картинок с этого форума, а то что ты только читаешь, опыт то сам не появится
Пытаюсь самостоятельно вкатиться в MVVM.
Возникли сложности:
1. Есть Listbox, он привязан к коллекции строк.
На этой же View есть кнопка Add.
Она вызывает окно для добавления.
Суть вопроса: как проще передать значение из одной ViewModel в другую без использования делегата не нарушая ООП и паттерна MVVM?
пикрелейтед
2. Имеется структура:
MainWindow.xaml (основное окно) с ContentControl привязанный к CurrentViewModel и DataContext = MainWindowViewModel, где
CurrentViewModel это MainView + MainViewModel
Как оформлять второстепенные окна (такие как в пункте 1):
а) Window с ContentControl привязанный к ViewModel и DataContext = WindowViewModel, где ViewModel это AddView + AddViewModel
(как в моём примере)
или
б) Рисовать интерфейс прямо в Window и просто указывать DataContext = WindowViewModel
ссылка на проект
http://rghost.net/6jjvPhypY
Тоже бился над вопросом. Все таки использовал делегаты, а точнее делал через медиатор и подписку на сообщения. Тут нечто похожее
http://www.codeproject.com/Articles/35277/MVVM-Mediator-Pattern
У меня было MainWindowViewModel, где хранились все объекты окон-"детей". То есть, если я открывал из MainViewModel новое окно, а в новом окне что-то делал и нажимал на нем на кнопку "ОК" - оно слало меседж. МейнВьюМодел по этому вызову грохал открытое окно, в зависимости от самого меседжа, и выполнял что-то. Согласен что не идеально, зато работало.
1) Parallel.ForEach ....
2) for(int i = 0; i<8; i++)
{
Thread t = new Thread(DoJob);
t.Start;
}
два варианта выше пока что хватает для того что бы проц не простаивал. Или тут речь о зависимых процессах, локах на переменные и т.д.?
А что сейчас используют для таких задач? Нет, ну правда, если кинешь хоть пару названий - пойду читать об этом. Самому уже стыдно честно говоря отставать.
Что спрашивали? Что знаешь и умеешь?
https://ulearn.azurewebsites.net/
Знал что эта функция была, но не знал частью чего, и что ещё можно делать.
А ещё такой вопрос: Task сам умеет подхватывать Credentials текущего юзера, залогиненого через ВиндовсАвторизацию, или использует AppPool юзера, под которым запущен asp.net mvc сайт?
В принципе, оно весьма простое, и даже я, не умеющий программировать, справился бы с ним (уже был опыт с подобным приложением, только там я зачем-то выбрал VB). Но есть один вопрос, который методом тыка не решить, нагуглить и спиздить готовое решение (в прошлой программе я так часто делал - например, нагуглил чужую программу с графиком, взял код графика и методом тыка подогнал под себя) тоже не получается.
Задача: пользователь выбирает количество столбцов (от 3 до 7) в таблице. Рисуется таблица в две строки с соответствующим количеством столбцов, при этом в каждой ячейке второй строки есть TextInput, значение которого будет в дальнейшем использовано в качестве переменной (первая строка - номера лет, причём первый из них задаётся пользователем, но с этим я как-нибудь и сам, думаю, справлюсь). Как такое можно реализовать?
Бля, ребята, видели бы вы мою проверку деления на ноль, вас бы инфаркт хватил...
> Бля, ребята, видели бы вы мою проверку деления на ноль, вас бы инфаркт хватил...
Показывай, ну. Тут все свои.
Ну смотри, ты сам попросил, если что. Я хоть и не программист, но понимаю, что смотреть на такое страшно и больно.
[code]
Dim ПроверкаДеления1 As Double
If ((NumericUpDown58.Value <> 0 And NumericUpDown59.Value = 0) OrElse (NumericUpDown61.Value <> 0 And NumericUpDown62.Value = 0) OrElse (NumericUpDown64.Value <> 0 And NumericUpDown65.Value = 0) OrElse (NumericUpDown67.Value <> 0 And NumericUpDown68.Value = 0) OrElse (NumericUpDown70.Value <> 0 And NumericUpDown71.Value = 0) OrElse (NumericUpDown73.Value <> 0 And NumericUpDown74.Value = 0) OrElse (NumericUpDown76.Value <> 0 And NumericUpDown77.Value = 0) OrElse (NumericUpDown79.Value <> 0 And NumericUpDown80.Value = 0) OrElse (NumericUpDown82.Value <> 0 And NumericUpDown83.Value = 0) OrElse (NumericUpDown85.Value <> 0 And NumericUpDown86.Value = 0) OrElse (NumericUpDown88.Value <> 0 And NumericUpDown89.Value = 0) OrElse (NumericUpDown91.Value <> 0 And NumericUpDown92.Value = 0) OrElse (NumericUpDown94.Value <> 0 And NumericUpDown95.Value = 0) OrElse (NumericUpDown97.Value <> 0 And NumericUpDown98.Value = 0) OrElse (NumericUpDown100.Value <> 0 And NumericUpDown101.Value = 0) OrElse (NumericUpDown103.Value <> 0 And NumericUpDown104.Value = 0) OrElse (NumericUpDown106.Value <> 0 And NumericUpDown107.Value = 0) OrElse (NumericUpDown109.Value <> 0 And NumericUpDown110.Value = 0) OrElse (NumericUpDown112.Value <> 0 And NumericUpDown113.Value = 0) OrElse (NumericUpDown115.Value <> 0 And NumericUpDown116.Value = 0) OrElse (NumericUpDown118.Value <> 0 And NumericUpDown119.Value = 0) OrElse (NumericUpDown121.Value <> 0 And NumericUpDown122.Value = 0) OrElse (NumericUpDown124.Value <> 0 And NumericUpDown125.Value = 0) OrElse (NumericUpDown127.Value <> 0 And NumericUpDown128.Value = 0) OrElse (NumericUpDown130.Value <> 0 And NumericUpDown131.Value = 0) OrElse (NumericUpDown133.Value <> 0 And NumericUpDown134.Value = 0) OrElse (NumericUpDown136.Value <> 0 And NumericUpDown137.Value = 0) OrElse (NumericUpDown139.Value <> 0 And NumericUpDown140.Value = 0) OrElse (NumericUpDown142.Value <> 0 And NumericUpDown143.Value = 0) OrElse (NumericUpDown145.Value <> 0 And NumericUpDown146.Value = 0) OrElse (NumericUpDown148.Value <> 0 And NumericUpDown149.Value = 0) OrElse (NumericUpDown151.Value <> 0 And NumericUpDown152.Value = 0) OrElse (NumericUpDown154.Value <> 0 And NumericUpDown155.Value = 0) OrElse (NumericUpDown157.Value <> 0 And NumericUpDown158.Value = 0) OrElse (NumericUpDown160.Value <> 0 And NumericUpDown161.Value = 0) OrElse (NumericUpDown163.Value <> 0 And NumericUpDown164.Value = 0) OrElse (NumericUpDown166.Value <> 0 And NumericUpDown167.Value = 0) OrElse (NumericUpDown169.Value <> 0 And NumericUpDown170.Value = 0) OrElse (NumericUpDown172.Value <> 0 And NumericUpDown173.Value = 0) OrElse (NumericUpDown175.Value <> 0 And NumericUpDown176.Value = 0)) Then
ПроверкаДеления1 = 0
Else
ПроверкаДеления1 = 1
End If
'Делаем проверку для исключения деления на ноль
If (РазмерЗаказа.Value = 0 OrElse РазмерЗаказа.ToString = "" OrElse (МашинноеВремя.Value + ВспомогательноеВремя.Value + ВремяНаПодготовкуИЗавершение.Value + ДобавочноеВремяПроизвОднойДетали.Value) = 0 OrElse СовокВремяРаботыОператораВМесяц = 0 OrElse (чСтороннееПроизводствоПрограммы.Checked = True And СтороннееПроизводствоПрограммы.Value = 0) OrElse (чСтороннееПроизводствоПрограммы.Checked = False And СовокВремяРаботыПрограммистаВМесяц = 0) OrElse (чСтороннееПроизводствоПрограммы.Checked = False And ВремяНаписанияПрограммы.Value = 0)) OrElse КПД = 0 OrElse ПроверкаДеления1 = 0 OrElse ВремяРаботыДополнительногоОборудованияВГод = 0 OrElse ВремяРаботыСтанкаВГод = 0 OrElse ПредполагаемоеВремяРаботыСОЖ = 0 Then
MsgBox("Расчёт невозможен в связи с делением на ноль. Проверьте введённые данные.")
Else
'350 строк кода, все вычисления программы, плюс график, плюс всё-всё-всё
End If
[/code]
И оно, блядь, работает. Всякие NumericUpDown58.Value - это потому что меня заебало в какой-то момент переименовывать гору полей ввода, и я решил, что и так сойдёт. Всё равно дальнейшая поддержка программы не предполагалась.
Ну смотри, ты сам попросил, если что. Я хоть и не программист, но понимаю, что смотреть на такое страшно и больно.
[code]
Dim ПроверкаДеления1 As Double
If ((NumericUpDown58.Value <> 0 And NumericUpDown59.Value = 0) OrElse (NumericUpDown61.Value <> 0 And NumericUpDown62.Value = 0) OrElse (NumericUpDown64.Value <> 0 And NumericUpDown65.Value = 0) OrElse (NumericUpDown67.Value <> 0 And NumericUpDown68.Value = 0) OrElse (NumericUpDown70.Value <> 0 And NumericUpDown71.Value = 0) OrElse (NumericUpDown73.Value <> 0 And NumericUpDown74.Value = 0) OrElse (NumericUpDown76.Value <> 0 And NumericUpDown77.Value = 0) OrElse (NumericUpDown79.Value <> 0 And NumericUpDown80.Value = 0) OrElse (NumericUpDown82.Value <> 0 And NumericUpDown83.Value = 0) OrElse (NumericUpDown85.Value <> 0 And NumericUpDown86.Value = 0) OrElse (NumericUpDown88.Value <> 0 And NumericUpDown89.Value = 0) OrElse (NumericUpDown91.Value <> 0 And NumericUpDown92.Value = 0) OrElse (NumericUpDown94.Value <> 0 And NumericUpDown95.Value = 0) OrElse (NumericUpDown97.Value <> 0 And NumericUpDown98.Value = 0) OrElse (NumericUpDown100.Value <> 0 And NumericUpDown101.Value = 0) OrElse (NumericUpDown103.Value <> 0 And NumericUpDown104.Value = 0) OrElse (NumericUpDown106.Value <> 0 And NumericUpDown107.Value = 0) OrElse (NumericUpDown109.Value <> 0 And NumericUpDown110.Value = 0) OrElse (NumericUpDown112.Value <> 0 And NumericUpDown113.Value = 0) OrElse (NumericUpDown115.Value <> 0 And NumericUpDown116.Value = 0) OrElse (NumericUpDown118.Value <> 0 And NumericUpDown119.Value = 0) OrElse (NumericUpDown121.Value <> 0 And NumericUpDown122.Value = 0) OrElse (NumericUpDown124.Value <> 0 And NumericUpDown125.Value = 0) OrElse (NumericUpDown127.Value <> 0 And NumericUpDown128.Value = 0) OrElse (NumericUpDown130.Value <> 0 And NumericUpDown131.Value = 0) OrElse (NumericUpDown133.Value <> 0 And NumericUpDown134.Value = 0) OrElse (NumericUpDown136.Value <> 0 And NumericUpDown137.Value = 0) OrElse (NumericUpDown139.Value <> 0 And NumericUpDown140.Value = 0) OrElse (NumericUpDown142.Value <> 0 And NumericUpDown143.Value = 0) OrElse (NumericUpDown145.Value <> 0 And NumericUpDown146.Value = 0) OrElse (NumericUpDown148.Value <> 0 And NumericUpDown149.Value = 0) OrElse (NumericUpDown151.Value <> 0 And NumericUpDown152.Value = 0) OrElse (NumericUpDown154.Value <> 0 And NumericUpDown155.Value = 0) OrElse (NumericUpDown157.Value <> 0 And NumericUpDown158.Value = 0) OrElse (NumericUpDown160.Value <> 0 And NumericUpDown161.Value = 0) OrElse (NumericUpDown163.Value <> 0 And NumericUpDown164.Value = 0) OrElse (NumericUpDown166.Value <> 0 And NumericUpDown167.Value = 0) OrElse (NumericUpDown169.Value <> 0 And NumericUpDown170.Value = 0) OrElse (NumericUpDown172.Value <> 0 And NumericUpDown173.Value = 0) OrElse (NumericUpDown175.Value <> 0 And NumericUpDown176.Value = 0)) Then
ПроверкаДеления1 = 0
Else
ПроверкаДеления1 = 1
End If
'Делаем проверку для исключения деления на ноль
If (РазмерЗаказа.Value = 0 OrElse РазмерЗаказа.ToString = "" OrElse (МашинноеВремя.Value + ВспомогательноеВремя.Value + ВремяНаПодготовкуИЗавершение.Value + ДобавочноеВремяПроизвОднойДетали.Value) = 0 OrElse СовокВремяРаботыОператораВМесяц = 0 OrElse (чСтороннееПроизводствоПрограммы.Checked = True And СтороннееПроизводствоПрограммы.Value = 0) OrElse (чСтороннееПроизводствоПрограммы.Checked = False And СовокВремяРаботыПрограммистаВМесяц = 0) OrElse (чСтороннееПроизводствоПрограммы.Checked = False And ВремяНаписанияПрограммы.Value = 0)) OrElse КПД = 0 OrElse ПроверкаДеления1 = 0 OrElse ВремяРаботыДополнительногоОборудованияВГод = 0 OrElse ВремяРаботыСтанкаВГод = 0 OrElse ПредполагаемоеВремяРаботыСОЖ = 0 Then
MsgBox("Расчёт невозможен в связи с делением на ноль. Проверьте введённые данные.")
Else
'350 строк кода, все вычисления программы, плюс график, плюс всё-всё-всё
End If
[/code]
И оно, блядь, работает. Всякие NumericUpDown58.Value - это потому что меня заебало в какой-то момент переименовывать гору полей ввода, и я решил, что и так сойдёт. Всё равно дальнейшая поддержка программы не предполагалась.
Ну вот как пример выложил тут куски кода
http://pastebin.com/34rUrzV3
MediatorRegister - эту функцию используешь там где у тебя должно происходить выполнение чего-либо (обычно это MainViewModel, например в главное форме реагировать на клики с дочерней формы).
CreateOrder - это у меня функция в дочерней форме которая срабатывает на клик и вызывает сообщение по этому запросу. При чем можно передавать параметр, а можно не передавать.
readonly object CreateOrderToSupplierSave - это просто статический объект, у меня хранит просто уникальное название. Реально можешь туда гуиды пихать, объекты или инты. Главное что бы не дублировалось с другими. В идеале засовывать все такие сообщения в один класс с которого потом и выбирать.
Всё что ниже полоски - у меня три отдельных файла-класса, которые и позволяют использовать эту штуку.
Ах да, забыл,
private Mediator _mediator
эту штуку объявляй в всех класах и вьюмоделях и при обьявлении вьюмодели передавай туда как параметр этот медиатр и назначай его на эту локальную переменную. Как-то так:
CustomersViewModel = new CustomersViewModel(_mediator);
CustomersView = new View.CustomersView(CustomersViewModel);
По организации - либо ты хранишь объект дочерней вьюмодели и вьюхи в родительской вьюмодели, либо пытаешься осилить фреймворки типа призмы. Третьего не дано.
Что ето?
AbstractSingletonProxyFactoryBean не хватает
С этой хуетой все нормально же будет?
Без перевода читать бы пришлось месяц.
Хули в моём VS15 ынтерпрайз эдишн не подключается using System.Windows.Forms; ? А блять? Мне нужно конкретно MessageBox.Show(), а он именно там, судя по справке мелкомягких.
Если проект консольный - добавь референс вручную. Вроде бы должно работать. Ну или винформочки создай, там сразу будет доступно.
ПКМ на проекте -> Add -> Reference -> Assemblies -> Framework -> System.Windows.Forms
Из территориального принципа лол. Компания, в которую хочу уйти, расположена недалеко от дома, где я квартиру купил. Против java вообще ничего не имею.
>Задача: пользователь выбирает количество столбцов (от 3 до 7) в таблице. Рисуется таблица в две строки с соответствующим количеством столбцов, при этом в каждой ячейке второй строки есть TextInput, значение которого будет в дальнейшем использовано в качестве переменной (первая строка - номера лет, причём первый из них задаётся пользователем, но с этим я как-нибудь и сам, думаю, справлюсь). Как такое можно реализовать?
Помогите, пожалуйста, а то я опять буду сюда говнокод свой постить.
Охуеть, без решарпера современные обезьяны уже ничего сделать не в состоянии. Голая студия людей просто в ступор вводит. Йобаные маркетологи.
О чем пишут эти ваши Рихтеры и Албахари, чего нельзя найти в интернете в процессе работы над каким-нибудь проектом? Я это к тому, стоит ли читать спец литературу, если ты не применяешь её в данный момент на практике? Забудется же всё нах
Уговорил.
<img src="~/Res/pic.jpg"/>
Естественно не находит. В чем лажа? Алсо, интелисенс подсказывает почему-то название пика до переименовывания. Ребилды, клины делал. В рантайме не видит - переписывал и без Res и ../ - не могу понять как надо. На SO пишут что как я написал в аналогичном треде. ЧЯДНТ?
Читать стоит, хотя бы по диагонали для ознакомления с общими возможностями и подходами. Потом будет проще гуглить при работе с проектом. Общее развитие, так сказать. Иногда просто не знаешь, что необходимо гуглить, и в таких случаях выручает общий базис, от которого можно отталкиваться в гуглеже.
Сам спросил - сам ответил: app.UseStaticFiles();
Раунд 2: есть x3dom. Сую .x3d файл в wwwroot.
<x3d width='500px' height='400px'>
<scene>
<inline url="~/Res/heart.x3d"></inline>
</scene>
</x3d>
Глет меня далеко в белую степь, ничего не загружая. Есть у кого идеи как правильно path писать? В идеале x3d должен лежать рядом с html-ом. Но у меня cshtml во вьювере. Есть вариант сделать статический html-ник в котором эта 3д модель содержится и подтягивать с помощью cshtml. Сильно хуево?
А, дебажу на локальном IIS Express. Есть вероятность что песочница не пропускает локальные файлы. Но это вряд ли - лиса тоже шлет далеко
Понял. Успехов в поиске!
> Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?
>Неправда. C# довольно активно развивается, недавно вышел новый компилятор, шестая версия шарпа, и уже активно разработывается седьмая. Весь дотнет понемногу становится опенсорсным
Он потому и стал опенсорсным, что загибается уже.
Не верьте этому дебилу, книга даст вам больше, чем любое дерьмо, что вы запилите
А без книги далее костылей не уедешь или потратишь хуеву тучу времени, бродя по полю из граблей. Гугли заодно эффект Даннинга-Крюгера
Я же не спорю, я к тому, что одно без другого не имеет смысла. Нужно и читать, и практиковаться. Читать и не практиковаться - все забудешь и ничему не научишься. Будешь практиковаться и ничего не читать - так до старости и будешь писать годнокод, иногда копипастя куски с SO
>Охуеть, без молотка современные обезьяны уже ничего сделать не в состоянии. Голый камень людей просто в ступор вводит. Йобаный прогресс.
А, ну тут офк, согласен
Не нужно тебе в студии БД проектировать, это вообще в отдельных прогах делается (смотря какая у тебя БД). В коде ты просто привязываешь таблицы к объектам.
Проиграл
Веб и мобайл еще
>А то ушёл с C# на Node/Java/Erlang
Всё, дальше не читал. Иди выпились, выблядок тупорылый, один хуй ты уже биомусор. За Erlang тебе +1, но это как будучи полностью окунутым в большую бочку с поносом бомжей - пытаться почистить туфли. Уёбывай из треда, даун, и больше сюда не заходи.
Да мне похуй на твоё мнение о том, чем я занимаюсь. Ты лучше за WCF расскажи.
WCF уже умер, к сожалению, хорошая была технология, но устарела, теперь всё пилят на web api 2, если надо какое-то restful api, да, отчасти так можно сказать, что теперь сервер-сайд пилят на asp.net.
Если не обращать внимание на хипстерскую моду, нормально всё с wcf, пилят под .net core https://github.com/dotnet/wcf . Не знаю что там учстарело или умерло, всё что было работает.
> опыт разработки сложных, глубоко вложенных форм и пользовательских интерфейсов
Что под этим подразумевается?
Просто идиоты его рисовали. Даже у гугла во всяких аналитиксах будет такая же каша из полей и данных.
10-ка. Недопилено. ПРобовал - лучши подожди, когда кучу елды поправят и допилят. Сыро для серьезной работы
В идеале хотелось бы, чтобы NuGet и прочие ништяки работали и одной кнопкой всё собиралось.
Дайте хоть помечтать.
На скрине, судя по всему, макось, да и похуй.
Результат у них вроде одинаковый.
"Даже"? Гугл занимает первое место по ебанутости интерфейсов. Кроме "гениальной" страницы поиска они ничего стоящего никогда не делали. Что ни интерфейс, то пиздец лютейший, начиная от их управляшки корпоративной почтой, и заканчивая тем же адвордсом да аналитиксом. Ну и в целом их экосистема самая пизданутая из великой троицы.
Разрабатывать под лин для асп все таки в винде под VS удобнее.
Разрабатывать ДЛЯ лин на асп сейчас вполне изи.
гмайл - лучший почтовый вебклиент, гугдокс - лучший онлайн лайт-офис, ну и браузер самый симпатишный
самые хуёвые интерфейсы как раз у яблопидаров
Яблопидоры тоже говно, но у них, тащемта, итюнс тащит за всех, остальное еще куда ни шло. Ось на планшетиках не так сильно выебывается, ибо нечему там выебываться.
А гмейл и доки - это лайтовое барахло, о котором я и не говорил вовсе, я их даже не видел, собсна. Один раз табличку с кем-то правил групповухой, поплевался с переопределяемых контекстных меню, уебищных табов, да забил.
Распиши волксру бана спамерского аккаунта для человека, иеющего только ютубовский акк, тогда и поговорим.
Как паттерны освоить, много где требуются, мало что понятно, везде слишком абстрактно всё написано
Книгу банды четырёх можешь не читать даже, нихуя не понятно. Мне видеоуроки от tutsplus и подобных помогли.
Повезло значит. На ХХ полторы вакансии, примерно как на Эрланге.
Я серьезно
> много где требуются, мало что понятно
Много где требуют, мало где используют.
> везде слишком абстрактно всё написано
В этом вся соль, лол.
Кент, оно сырое еще. Через полгода-год можно привинчивать. Пока что нахуй
RotateTransform(angle > 90 ? 90 : angle < -90 ? -90 : angle)
Это теперь норма?
Что именно?
Энджой ёр нативное говно с сегфолтами из нихуя
тернарный в тернарном. Это сишарп, детка
Вот тут http://robowiki.net/wiki/Robocode/.NET/Create_a_.NET_robot_with_Visual_Studio что-то похожее.
Нахуй ты эту парашу сдаешь? Я в бородатом 2013 сдал 70-511, да и то считаю, что он нахуй нинужен.
Поставь сначала английскую студию
Нахуй ты такой парашей занимаешься. Мало того, что ты и так юзаешь двухуровневую архитектуру. Так еще и хочешь, чтобы UI сам хуярил SQL вместо тебя.
Разве нельзя взять модуль веб-сервера, c#, темплейты, и хуякнуть так, как это делается в руби\питоне\перле(и вроде даже в джаве)
В итоге выкатывать сразу приложуху с вебсервером внутри и цеплять к nginx?
Решил заценить асп кор на пингвине
@
4 часа ебался с установкой
@
Не смог установить dnvm
Мультиплатформенность по версии МС.
Это всегда было нормой.
Ты странный, сижу еще с первых бет, ставиться вообще одной строчкой (ставил и на OS X и на Ubuntu)
Даже официальный докер контейнер отлично работает
Кун 16 лет
С этим кодом (см. рисунок) все в порядке? Так как мои знания в си шарпе отрывочны и все узнавал путем самообучения, меня смущает что я два раза обращаюсь к датасету:
1) ищу через select нужный трек (по пути файла из плеера) в датасете
2) затем через FindById самого детасета получаю Playcount, чтобы его уже наконец инкрементировать.
(в UpdateToDatabase() происходит HasChanges => GetChanges => dAdaptTracklist.Update(dbDataSet.Tracklist);)
Да дядя, к тому же ты староват, иди лучше к егэ готовся.
Будет надеятся что в универе тебе мозги то вправят.
Кун 12 лет
У тебя Playcount есть уже в query.First(). query вообще не нужна, условие поиска можно в .First() отдавать. UpdateToDatabase - это обновиться ДО базы данных Используй ef.
Прочел Рихтера за день.
Советую тебе бросить программирование и найти для себя другое занятие. Не станешь же ты конкурировать с 12-летними тимлидами?
кун-7-лет
Чё такого то? Я в 16 саттера, мейерса и александреску читал. Правда единственное что я из этого чтения вынес - что лучше не использовать с++ в принципе.
>У тебя Playcount есть уже в query.First(). query вообще не нужна, условие поиска можно в .First() отдавать.
Я что оказывается могу прямо в query.First().Playcount записать значение?
> UpdateToDatabase - это обновиться ДО базы данных Используй ef
Это вообще не понял.
Свой первый круд я написал в 16 лет
https://habrahabr.ru/company/microsoft/blog/277875/
А что же будет с RoboVM (это же Java альтернатива), которую купила Xamarin пару месяцев назад?...
В общем надеюсь они это все сделают бесплатным.
Я тоже рад. Наконец-то Microsoft закроет эту помойку и начнет усиленно работать над .NET Native и .NETCore
Нафиг mono (это сборище костылей и не дописанного функционала),
когда есть кросплатформенный Core.CLR + Rosyln
Ты правда в это веришь?
Схема такова:
Посоны, мы изменились, мы идем в опенсорс и кроссплатформу!
Нужно сотрудничать с моно, это логичный шаг
Нужно купить моно, это логичный шаг
.. проходит два года ..
Извините посоны, не срослось. Хотите C# - пишите под винды и винфоны
Это все тот же embrace extend extinguish, только в этот раз индус поступил чуть умнее.
c#, мань
>Ты концепцию reference типов понимаешь?
Хорошо, у меня другой вопрос. Я могу прямо в запросе from where select вписать значение в Playcount не используя First().Playcount (потому что First может вернуть null). Что-то типа where db.a = player.a { db.b = 1 }
Номер версии больше единицы.
>>665952
Одной строчкой не хочу. Насколько я понял, там ставится конкретная версия со всеми зависимостями в одну кучу. Завтра выпустят обновление в последней цифре версии и придется все старое удалять и все новое ставить.
А package manager целевой (dnvm) не получается поставить. Во всех инструкциях по установке предлагается одна и та же команда для curl.
curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
Этот вариант ошибку выдает, которая не гуглится. Других вариантов установки найти не получается.
>(примерно по 20 минут в день)
Годам к 20 дойдешь до циклов и условных операторов, а в 35 начнешь изучать ООП.
Медленно, но верно!
Что ты несешь, идиот? У Microsoft УЖЕ есть кроссплатформенный .NET Framework (.NET Core). А Xamarin - нерабочее говно, и каждый, кто пытался писать на ней что-либо хитроумнее калькулятора подтвердит это.
Сэд бат труе.
Если они сделают вменяемую реализацию асп под юниксы - кто у них виндоСерверы покупать будет?
Хотя и сейчас не совсем понятно, кто их покупает и почему.
Хотя мне гугл пишет
>NEVER DO THIS. A query should be a query; it should be non-destructively asking questions of a data source. If you want to cause a side effect then use a foreach loop; that's what it's for. Use the right tool for the job.
Ладно, обойдусь чем-то таким
var q = dbDataSet.Tracklist.Single(t => t.Path_to_File == player.CurrentFilename);
if(q != null) q.Playcount++;
Следует ли юзать какие-то сторонние либы или и так все есть? Посоветуйте, с чего примерно начать.
MS сейчас в основном зарабатывает только на продаже облаков Azure.
А на Azure пофиг чему крутится (windows/linux/open solaris), главное что бы платили за процессорное время.
Продажи ПО и мобилок давно уже падают.
Да, First не возвращает. First вызывает исключение. FirstOrDefault возвращает null, с которым уже можно работать.
Это твоя гипотеза, или есть какая-то публичная статистика по распределению доходов?
Кстати, в чем принципиальное отличие облака от необлака? Вот раньше хостили сайты на хост-провайдере, теперь хостят на Азуре. В чем разница? И там и там удаленное железо.
Баззворд в целях маркетинга.
http://w7phone.ru/finansovyj-otchyot-microsoft-za-proshedshij-kvartal-130492/
Подробности гугли сам.
На последнем выступление Наддела говорил что у них теперь новая политика (дословно не помню):
"Разрабатываете на чем вам удобнее только не слазейте с Azure"
> Кстати, в чем принципиальное отличие облака от необлака?
Возьми да попробуй, там есть бесплатный пробный период (30дней и >30k рублей) для тестов
Может быть доход от Азуры год назад составлял 0.1% общих доходов компании, а стал 0.24%. Рост 140%.
>Падение вполне предсказуемое, ведь рынок персональных компьютеров и ноутбуков сейчас переживает далеко не лучшие времена.
А что случилось с рынком десктопов? Разве в странах золотого миллиарда есть хоть один человек, у которого нет полноценного компьютера?
> 2016
> полноценного компьютер
Пиздос, ты из под камня что-ли вылез (сейчас даже на 10 можно перейти бесплатно)?
Даже объяснять тебе ничего больше не хочется, настолько тупые у тебя вопросы (и гуглить ты не умеешь).
>Может быть
Хули тут гадать если msft - публичная компания, каждый квартал они публикуют отчётность. Вот я сначала написал это и пошёл такой читать этот самый annual report, а у них там оказывается хуй чего разберёшь.
>Commercial Other revenue increased $3.3 billion or 44%, primarily due to higher Commercial Cloud revenue. Commercial Other revenue included an unfavorable foreign currency impact of approximately 3%. Commercial Cloud revenue grew $3.0 billion or 106%, mainly due to subscriber growth and higher premium mix of Office 365 Commercial, as well as continued revenue growth from Microsoft Azure.
Офис 365 включён и в "commercial licensing" и в "commercial cloud" в разделе "commercial other" поэтому сложно сказать какова доля azure в этих 6 миллиардах, имея в виду что в основном рост пришёлся на более дорогие лицензии и рост числа подписчиков офис 365.
Сравним это (хуй пойми сколько процентов от 6 миллиардов) с
>Our server products revenue grew $1.1 billion or 7%, primarily driven by higher premium mix of Microsoft SQL Server, Windows Server, and System Center.
т.е. с 15.7 выросли до 16.8 миллиардов. Так себе для azure.
>Так себе для azure.
Хотя опять же хуй знает какая доля этих сереверных лицензий приходится на azure.
>сейчас даже на 10 можно перейти бесплатно
Наверное это не из-за того, что все в айфоновом угаре выбросили ПК, а из-за того, что всех устраивает семерка и МСу просто нечего предложить.
Погуглил немного. Все в порядке и с производством и с продажами.
http://www.statista.com/statistics/203862/global-pc-revenue-forecast/
Я в курсе, что мобильный рынок растет как снежный ком и уже у каждой пенсионерки по два портабла. Но десктопы-то никуда не делись, наоборот их сейчас больше, чем было когда-либо. Они просто стали обыденностью и поэтому про них никто особо не говорит.
m8 с того же сайта
>Worldwide PC shipments hit an eight-year low in 2015 after declining for the fourth consecutive year. Global shipments dropped by 8 percent to 289 million in 2015, the lowest it’s been since 2007.
>The decline of the PC industry started in 2012, around the time when tablet sales really took off. After a brief respite in 2014, when PC sales were virtually flat thanks to the end of official support for the popular Windows XP and the subsequent upgrade cycle, the market’s decline re-accelerated in 2015 despite the release of Windows 10 in July.
https://www.statista.com/chart/4231/global-pc-shipments/
https://www.gartner.com/newsroom/id/3185224
>Worldwide PC shipments totaled 75.7 million units in the fourth quarter of 2015, a 8.3 percent decline from the fourth quarter of 2014, according to preliminary results by Gartner, Inc. For the year, 2015 PC shipments totaled 288.7 million units, an 8 percent decline from 2014.
> include desktop PCs, notebooks, netbooks and tablets.
А если взять только PC то вот
http://www.statista.com/statistics/203871/global-pc-revenue-forecast-exclusive-tablets/
Воу, попридержи коней, xamarin еще только купили, как выложат в msdn - так и просто будет.
>8 percent decline
Да хоть 50%, что с того? Все-равно в мире больше миллиарда уже имеющихся пользователей. Все-равно ежегодно выпускается и продается космическое количество новых машин:
>288.7 million units
Это типа все, не рынок уже?
на рынках очень важен momentum. Рождаемость то не падала, из кризиса вырулили, а компов берут меньше и меньше. И это не один неудачный год, а -21% за пять лет. По-твоему на вопрос
>А что случилось с рынком десктопов?
может быть только два ответа: он умер - за пять лет ни одного не продали или всё заебись - продаётся? Такая хуйня вызывает feedback loop с дальнейшим оттоком инвесторов и дальнейшей потерей рынка, учитывая что мобилы и планшеты заменяют всё больше и больше юзкейсов десктопов.
>Это типа все, не рынок уже?
Ну вот например, как следствие, разработка под десктоп уже практически не рынок, да.
Гуй на периферию, например.
pypy не ок?
Прнс тебе список
Говно, залупа, пенис, хер, давалка, хуй, блядина,
Головка, шлюха, жопа, член, еблан, петух, мудила,
Рукоблуд, ссанина, очко, блядун, вагина,
Сука, ебланище, влагалище, пердун, дрочила
Пидор, пизда, туз, малафья, гомик, мудила, пилотка, манда,
Анус, вагина, путана, педрила, шалава, хуила, мошонка, елда.
Как с падежами то бороться будешь?
Но как его использовать вместе с регулярками, заменяя слова?
Тоже самое с книгами, только мне 22.
Все время чувствую усталость, хоть ничего не делаю целый день такого.
Determining latest version
Error: Could not find latest version from feed https://www.nuget.org/api/v2
$ dnvm upgrade -r coreclr -u
Determining latest version
Error: Could not find latest version from feed https://www.myget.org/F/aspnetvnext/api/v2
$ dnvm update-self
Downloading dnvm.sh from https://raw.githubusercontent.com/aspnet/Home/dev/dnvm.sh
curl: (77) error setting certificate verify locations:
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
Ни одна команда не выполняется без ошибок. За последние 5 месяцев ни одного коммита, так что видимо это продакшн версия.
Весь день головой об стену бьюсь и бубном махаю, но так и не смог .net core runtime поставить. Я даже ужин пропустил, а уже спать пора.
В каком-то смысле разработчики преуспели. Даже такая примитивная утилита как dnvm очень аутентично передает атмосферу виндовс и вызывает уйму эмоций: от ненависти и отвращения до желания забиться в угол и заплакать.
Майкрософт.
Заставляем вас ненавидеть компьютеры since 1975.
Теперь и на юникс-подобных системах.
>Теперь и на юникс-подобных системах
Ох блядь, а до этого на никс системах всё прям так охуенно было, ни одной проблемы.
Ага, и пердолиться не надо было никогда.
ассоциативный массив делегатов?
>Версия linux?
Ubuntu 14.
>Ты не из Казахстана?
Почему ты спрашиваешь?
>>666795
Есть класс проблем, которых не было и не будет ни на юниксах, ни где-либо еще. Это классические виндо-проблемы, обусловленные неизвестно чем. Наверное внутри МС происходит какая-то особая корпоративная шиза, которая сильно искажает взгляд людей на некоторые вопросы. Иначе не объяснить, как десятки тысяч разработчиков десятилетиями умудряются делать одни и те же идиотские ошибки в каждом новом продукте.
Вот, например есть чудесно работающая нативная система версий и апдейтов в юниксах. Майкрософт делают программу для этих ОС. Вместо того, чтобы поступить как все нормальные люди и вписать свой софт в уже существующую архитектуру, они делают что? Они пишут свою собственную систему, которая по сути является имитацией виндосхемы инсталяция-реестр-деинсталяция. И дают ее публике ее как отдельный самостоятельный софт. Зачем? Архитектура без причин усложняется и раздувается. Появляются лишние сущности, которые вообще не нужны, всячески нарушается принцип Оккама. Пользователям приходится устанавливать дополнительные сопутствующие программы, которые им не нужны.
Это один из примеров чисто МС-проблемы, которая нелепа до идиотизма и почти никто из разработчиков, кроме МС, таких проблем пользователям не доставляет. МС за 40 лет хоть одну программу сумели написать, не сделав для нее полудюжины костылей с жесткими зависимостями и не выдав каждый из них за самостоятельную современную и актуальную программу/технологию/фреймворк? Что-то я не помню.
Не знаю как у тебя так получается. Я диплом писал на дотнет кор бета8, запускал это на Рапспбери Пи в Распбиан ОС.
После выхода RC1 пробовал запустить в Mint, всё норм.
Но сейчас у них есть касяк с Омнишарпом в VS Code. Без установки clr от Mono не работает. Но это касается VS Code, а она в бетке ещё, так что простительно.
>curl: (77) error setting certificate verify locations:
>CAfile: /etc/pki/tls/certs/ca-bundle.crt
И судя по ошибке проблема как раз-таки в бубунте.
http://stackoverflow.com/questions/3160909/how-do-i-deal-with-certificates-using-curl-while-trying-to-access-an-https-url
Есть код с такой структурой. Reports - это отчеты выполнения одних и тех же тестов (запускаются несколько раз, нужно сверить результаты). Для отображения мне нужно выбрать данные в таком виде:
class TestInfo
{
string Name;
List<string> Statuses; // List() { "fail", "suc", "fail"} например
}
Т.е. нужно паралельно пройтись по репортам и смержить в один.
Как это по-человечески сделать?
> Почему ты спрашиваешь?
У тебя ругается на сертификат, а в Казахстане по новому закону подменяют все SSL на государственный.
Так да или нет?
Уже не первый раз, кстати, с такой проблемой сталкиваюсь. Что хоть по этому почитать?
Ахуели у вас там
>проблема как раз-таки в бубунте.
Что значит проблема в убунте? МС эту конкретную версию под убунту делали и инструкцию по установке писали под убунту. Если "проблема в убунте" - значит проблема в их программе, если она на целевую платформу не ставится легко.
Ссылку эту уже видел за сегодня раз пять. Пакет, который там предлагается ставить для решения проблемы, в 14 убунте стоит с завода и регулярно обновляется.
>>666917
Нет.
https://docs.asp.net/en/latest/getting-started/installing-on-linux.html
Единственная, которую нашел. В остальных местах ее копипастят. Есть еще одна в одну строку, без менеджера пакетов, но там вообще зашквар >>666105
> Насколько я понял, там ставится конкретная версия со всеми зависимостями в одну кучу. Завтра выпустят обновление в последней цифре версии и придется все старое удалять и все новое ставить.
Второй шаг из инструкции я так и не смог сделать, ошибки с сертификатами. А если отменять сертификаты и запускать из-под суперюзера, то:
>Downloading dnvm as script to '/home/username/.dnx/dnvm'
>Failed to download 'https://raw.githubusercontent.com/aspnet/Home/dev/dnvm.sh'..
dnvm установил через жопу - скачал руками исходники и из них поставил, там скрипты на установку есть. Получилось установить (вроде бы). Команда dnvm находится, номер версии пишет, хэлп показывает. Пытаюсь что-нибудь обновить или установить - ошибки. Ну ты видел вот здесь >>666750
Да и в общем, я и через
curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
сейчас поставил, всё норм.
Ну хуй знает кароч. Вот чистый Дебиан.
в Model, в каком-нибудь GetTestRunResults: Reports.SelectMany(r => r.TestSuites).SelectMany(ts => ts.TestList).Select(t => t.Status).ToList()
var index = new Random().Next();
var bleatNahui = dictionary[dictionary.Keys.ElementAt(index)];
>а лист тут лишний, имхо
Может быть. Я просто не знаю что быстрее 10 ElementAt по ValueCollection или 1 ToList и 10 простых обращений по смещению.
Нормально ли его будет изучить по экзам рефу 484 (винстор аппс)?
Или посоветуйте простенькую книжку, чтоли.
А то доебало смотреть эти туториалы "как поменять цвет кнопки", где нихуя не объясняют механизмы в ее шаблоне.
Вообще заебывает модель преподавания от деталей к общему - я люблю от общих концепций к частностям изучать, а такого почти не встречается.
даже, скорее, Manual - для семафора. AutoResetEvent - для мьютекса
Да, эту херню. Нужно как-то связать с mutex. Не доходит, как это вместе можно использовать.
уверен, что
> это вместе можно использовать
?
пшта, судя по всему
> Реализовать мьютекс на основе объекта синхронизации событие
надо использовать как
Заверни все это в контрольчик, нажимай на плюс, создавай вкладку, а вне создавай контрол
ну ответ на это будет в стиле
сделай чтоб
> типа нажимаешь +
и там потом будет
> открывается ещё вкладка с отдельным поиском и таблицей результатов
Жмешь Ф5 - дебажишь. Не пойму в чем проблема.
Это копия, сохраненная 18 марта 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.