Сохранен 510
https://2ch.hk/pr/res/507104.html
Прошлые домены больше не функционируют, используйте адрес ARHIVACH.HK.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

OFFICIAL C# THREAD #7

 Аноним 01/07/15 Срд 13:50:46 #1 №507104 
14357478465180.png
Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# - прекрасный детектор современного, умного и успешного человека. Изучение .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого поистине прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.
Не забываем, что у нас скоро релиз C#6, вместе с Roslyn и RuyJIT
Visual Studio 2015 выходит 20 июля

Что почитать:
- C# Yellow Book (для ньюфагов, книга полностью бесплатная)
- Joseph Albahari и Ben Albahari - C# 5.0 in a Nutshell (на русском: C# 5.0, Справочник. Полное описание языка)
- Pro C# 5.0 and the .NET 4.5 Framework (Andrew Troelsen)
- Jon Skeet - C# in Depth (на русском: C# для профессионалов. Тонкости программирования)
- Jeffrey Richter - CLR via C# (на русском: Программирование на платформе Microsoft .NET Framework 4.5 на языке C#)
- Writing High Performance .NET Code (Ben Watson)
- Pro WPF 4.5 in C# (Matthew MacDonald)
- Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

Что посмотреть:
- 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://channel9.msdn.com/Series/C-Sharp-Fundamentals-Development-for-Absolute-Beginners

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

Онлайн-компиляторы:
- https://dotnetfiddle.net/
- http://csstub.com
- http://www.tutorialspoint.com/compile_csharp_online.php

FAQ

Q: Где и какую студию брать для работы?
Для большинства задач подойдет Community версия. Она бесплатная и скачивает из сети только указанные компоненты. Скачать можно тут - https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx
Q: Что с IDE для других систем?
Самый юзабельный вариант - MonoDevelop (http://www.monodevelop.com/download/)
Для vim можно использовать OmniSharp (https://github.com/OmniSharp/omnisharp-vim)

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

Прошлый тред тонет тут: https://2ch.hk/pr/res/495903.html
Аноним 01/07/15 Срд 13:54:51 #2 №507107 
14357480918760.jpg
Сап Шарпач. На ардуине запрограммировал инфракрасник с пультом, на ком порт приходит HEX код без проблем, видно по монитору порта, по ком порту соединяю с своей софтиной на шарпе, нажатие кнопок обрабатывается через раз, т.е. я жму кнопку Vol+ на пульте и надо нажать ее раз 10 (иногда меньше) что бы сработала команда SendKey.Send в активное приложение. Обработчик события поставил на DataReceived ком порта. Где копать? (повторю, на мониторе ком порта без проблем приходят сигналы с пульта, дело не в железе) Для уточнения: действие SendKey сравниваю со строкой ""0xFFA25D\r" например, такого вида приходит по COM порту строка, а считываю через serialPort.ReadLine()
Аноним 01/07/15 Срд 17:28:36 #3 №507282 
14357609160150.jpg
Дублирую из тонущего треда.

Шарпаны, не спешите обоссывать. я не прогромизд и тут бываю редко, вчера вот наткнулся на тему портирования дотнета на линуху, заинтересовался. Пришёл вечером после работы, прокрасноглазил пару часов, поставил бубунту на виртуалку, накатил на неё mono, установил хамарин или как-то так среду. Т.к. времени особо не было да и спать надо, на работу завтра. Первым делом накалякал консольный хелловорлд, добавил пару циклов, условий. Бросил ехешник в убунту, запустил без проблем, консолька показала ожидаемое. Потом в вижуалстудии сделал что-то вроде консольной игры, тип угадай число. На линухе тоже запустилось норм. Пришло время то же самое проделать уже в линуксовой ide. Первым бабахом было то, что там нет подсветки Console. , вторым - отсутствие ReadLine(); кое как с горем повторил первое консольное приложение, стартанул и мне в первом же выводе текста в консоле добавило лишнюю букву, которую я не писал. Ппц, закрыл, перезапустил, все норм вроде. Запустил на венде, вроде норм, но последний ридлайн console.read() куда-то пропал и приложение само завершелось.
Дальше я пошёл спать.

Скажите, это и есть такое дерьмо или я не все библиотеки выкачал, чего-то ещё не докачал? Или это я просто дибил не могущий даже в хелловорлд?
Аноним 01/07/15 Срд 18:20:24 #4 №507323 
>>507282
>>507161
Аноним 01/07/15 Срд 18:46:58 #5 №507360 
>>507282
А не. Все, отбой сегодня пришел с работы, запустил, все норм вроде работает. Хуй его знает эти прыщи, или обновилось или ещё чего
Аноним 01/07/15 Срд 20:23:45 #6 №507471 
14357714256450.png
Что за хуйня с бейсиком, посоны?
Аноним 01/07/15 Срд 20:26:18 #7 №507473 
>>507471
>бейсик
>моно
>линь
Три твои проблемы.
Аноним 01/07/15 Срд 21:16:58 #8 №507507 
Товарищи, прошу помощи. Надо прочитать текст из файла, подключенного к проекту и записать этот текст в textbox. Что я делаю не так?
private void get_text(object sender, RoutedEventArgs e)
{
//Obtain a virtual store for application
IsolatedStorageFile fileStorage = IsolatedStorageFile.GetUserStoreForApplication();
fileStorage.DirectoryExists("textfiles");
//Create a new StreamReader
StreamReader fileReader = null;

try
{
//Read the file from the specified location.
fileReader = new StreamReader(new IsolatedStorageFileStream("textfiles\\1.txt", FileMode.Open, fileStorage));
//Read the contents of the file (the only line we created).
string textFile = fileReader.ReadLine();

//Write the contents of the file to the TextBlock on the page.
textBlock.Text = textFile;
fileReader.Close();
}
catch
{
//If they click the view button first, we need to handle the fact that the file hasn't been created yet.
textBlock.Text = "not work";
}
}
Аноним 01/07/15 Срд 21:48:48 #9 №507526 
>>507104
здравствуйте, меня выгнали из треда про кресты, к тому же вижуал студио я уже установил для шарпа, поэтому пришел к вам, вот. скажите, какой нужно сделать проект на гитхабе, чтоб получить работу фрилансером.
Аноним 01/07/15 Срд 21:52:00 #10 №507528 
>>507526
>получить работу фрилансером
Какой тред следующий на очереди? Жабоскриптовый? Или сразу в пыхотред?
Аноним 01/07/15 Срд 22:07:01 #11 №507534 
>>507528
я уже итак знаю жавускрипт и пхп, мне нужен нормальный серьезный язык с доступной средой, которым можно заработать удаленно.
Аноним 01/07/15 Срд 22:23:30 #12 №507552 
>>507534
>получить работу фрилансером
>серьезный язык
Ты спрашиваешь за фриланс в тредах про байтоеблю и ентерпрайз. Хочешь на фриланс — иди в пыхотред, хочешь типа продавать свои поделки — в андроид тред. Извини, но другого варианта я не вижу. Разве что в вольные верстальщики податься. Или в рисовальщики и подрабатывать на комиссионных.
Аноним 01/07/15 Срд 22:33:47 #13 №507558 
>>507526
Здравствуй. Чтоб получить работу фрилансером надо сделать проект на гитхабе на С++. Иди обратно в С++ терд. До свидания.
Аноним 01/07/15 Срд 22:54:31 #14 №507571 
Бляя, не могу установить вижуал студио для крестов, придется шарп учить, т.е. шарповый вижл студио уже есть.
Аноним 01/07/15 Срд 22:58:26 #15 №507572 
>>507552
Все довольно уныло.
Аноним 01/07/15 Срд 23:27:50 #16 №507587 
>>507572
Так и есть.
Аноним 01/07/15 Срд 23:31:17 #17 №507588 
>>507104
книгаа по шаррпу пеарвая, аона просато нечитабелльна. в итоге проасто загуглилв самоучитеель. Алсоа по заапросу ваылетела стаатья на хбббре какого-то успешнаого шаперра а32 лает, приглашенногао аж в нью-айоорк работаюащего сао второаго кураса, ахуаеть праосто.
Аноним 01/07/15 Срд 23:33:12 #18 №507590 
пасаны, подкиньте идею для какого нибудь проектика для себя, чтобы отточить скил на практике
Аноним 01/07/15 Срд 23:37:23 #19 №507595 
>>507590
Сделай B+дерево на отображаемых в память файлах.
Аноним 01/07/15 Срд 23:45:48 #20 №507607 
Чот начал использовать вижуал студио и вот эта команда не работает.

System.Console.WriteLine(stringToShow1);
System.Console.WriteLine(stringToShow2);
Аноним 01/07/15 Срд 23:56:44 #21 №507614 
>>507595
звучит интересно. буду рыть
Аноним 02/07/15 Чтв 00:15:33 #22 №507629 
>>507607
Попробуй перезагрузить компьютер.
Аноним 02/07/15 Чтв 00:24:03 #23 №507636 
>>507607
И не заработает. В С++ тред иди.
Аноним 02/07/15 Чтв 00:26:33 #24 №507639 
14357859933320.jpg
>>507552
В чем проблема у c# и фриланса?
Работаю с asp.mvc/angular js на upwork на full time, полет нормальный.
Тут лучше даже чем в php, потому что индусов поменьше.

Могу пояснить по хардкору за все это, задавайте ответы.
>>507572
Да не, все тут збс
Аноним 02/07/15 Чтв 00:30:22 #25 №507642 
>>507636
Ревнуешь, что я вас покинул, крестоблядь?
Аноним 02/07/15 Чтв 00:59:48 #26 №507657 
Так, с вижуал студио разобрался, теперь вопрос: в чем мне кодить, когда лицензия вижуал студио истечет?
Аноним 02/07/15 Чтв 01:01:23 #27 №507659 
>>507657
Ты поехавший? Она бесплатная уже давно.
community 2013
нет, не урезанная
Аноним 02/07/15 Чтв 01:48:51 #28 №507679 
Привет и сразу, к делу. У меня 4 объекта двигаются по канвасу к определенной точке с разной скоростью. Как проверить, какой быстрее достигнет этой точки?
Аноним 02/07/15 Чтв 01:51:46 #29 №507680 
>>507679
Это из ЕГЭ?
Аноним 02/07/15 Чтв 02:18:19 #30 №507684 
>>507680
laba1
Аноним 02/07/15 Чтв 02:25:06 #31 №507685 
>>507684
Фу блядь, съеби.
Аноним 02/07/15 Чтв 12:23:06 #32 №507806 
14358289865570.png
>>507104
> Для большинства задач подойдет Community версия. Она бесплатная и скачивает из сети только указанные компоненты. Скачать можно тут - https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx

Не понял. У меня семерка, выдает следующее.
Аноним 02/07/15 Чтв 12:33:35 #33 №507810 
>>507806
sp1?
Аноним 02/07/15 Чтв 12:35:58 #34 №507811 
>>507810
Да я вроде бы ставил, сейчас еще раз качаю.
Аноним 02/07/15 Чтв 14:10:13 #35 №507867 
14358354134310.jpg
>>507806
Вместо тысячи слов
Аноним 02/07/15 Чтв 14:28:09 #36 №507880 
>>507867
Это какой-то мемос из вкшечки?
Аноним 02/07/15 Чтв 14:30:10 #37 №507882 
>>507806
SP1 должна быть установлена.
Аноним 02/07/15 Чтв 15:00:57 #38 №507902 
>>507880
https://www.youtube.com/watch?v=2rA7lFU3otI
Аноним 02/07/15 Чтв 15:06:42 #39 №507907 
OpenXML.
Как заметить содержимое заметки в ворде, не убивая при этом форматирование? В заметке только один ран, с одинаковым форматированием.
Аноним 02/07/15 Чтв 15:31:11 #40 №507921 
14358402713910.png
>>507907
Сам спросил @ сам ответил
Аноним 03/07/15 Птн 07:37:05 #41 №508289 
>>507639
Что начать читать с нуля? Или смотреть? Нужно что-то из области "первая веб страничка на C#" - а везде вижу только туториалы по вин-аппам.
Аноним 03/07/15 Птн 08:21:33 #42 №508296 
>>508289
http://rghost.ru/8chgmVlSC
Аноним 03/07/15 Птн 09:27:03 #43 №508311 
>>507552
>в рисовальщики и подрабатывать на комиссионных
Рисовать хентай с тентаклями и фурри прон?
Аноним 03/07/15 Птн 11:37:38 #44 №508348 
>>507104
Господа, че можно запилить на шарпе блеать? какие там есть фреймворки?
Аноним 03/07/15 Птн 12:19:30 #45 №508363 
>>508348
Все можно. Windows Forms для приложений, ASP.NET MVC для веб-сервисов, Windows Phone нативно из Visual Studio, iOS и Andoid из Xamarin
Аноним 03/07/15 Птн 12:30:57 #46 №508371 
>>508363
> iOS и Andoid из Xamarin
Лучше б про юнити вспомнил.
Аноним 03/07/15 Птн 12:34:27 #47 №508373 
>>508371
Ну это несколько отдельная тема, нет?
Аноним 03/07/15 Птн 12:39:14 #48 №508377 
>>508363
> iOS и Andoid нативно из Visual Studio 2015
Починил.
Аноним 03/07/15 Птн 12:55:05 #49 №508384 
>>508363
>Windows Forms
Месье знает толк в извращениях
Аноним 03/07/15 Птн 13:32:35 #50 №508391 
Ищу библиотеку аналогичную питоновкой requests или grab. Встречал ли кто-то подобное?
Аноним 03/07/15 Птн 13:40:44 #51 №508399 
>>508373
А богомерзкий xamarin нет?
Аноним 03/07/15 Птн 13:44:51 #52 №508401 
>>508363
а фреймворки и библиотеки какие йопт?
Аноним 03/07/15 Птн 13:52:58 #53 №508407 
>>508401
Хорошие, качественные.
Аноним 03/07/15 Птн 14:06:04 #54 №508418 
>>508407
нетривиальные хоть?
Аноним 03/07/15 Птн 14:06:24 #55 №508420 
Книг-самоучителей по шарпу чот совсем в сети нет, что такой язык не популярный?
Аноним 03/07/15 Птн 14:14:31 #56 №508427 
14359220718010.jpg
А еще на вакансию шарписта везде высшее техническое требуется. Вы чо там интогралы высчитываете?
Аноним 03/07/15 Птн 14:24:57 #57 №508432 
>>508427
Есть и такое.
Аноним 03/07/15 Птн 15:42:05 #58 №508470 
>>508311
yep.
Аноним 03/07/15 Птн 15:43:39 #59 №508472 
>>508427
> интогралы высчитываете
Это разве не в школе проходят?
Аноним 03/07/15 Птн 15:47:36 #60 №508476 
>>508420
В шапке же. Чем тебе Тролсен и Шилдт не угодили?
Аноним 03/07/15 Птн 16:04:46 #61 №508487 
>>508377
Расскажи подробнее об этом.
Аноним 03/07/15 Птн 16:18:27 #62 №508493 
>>508472
В школе только основы
Аноним 03/07/15 Птн 16:30:54 #63 №508500 
WPF - Как прописать в стиле или темплейте <InputBindings> без codebehind???!!
Аноним 03/07/15 Птн 16:47:45 #64 №508505 
>>508487
Посмотри build 2015
Аноним 03/07/15 Птн 23:15:10 #65 №508739 
>>508505
Там же под кордову, а это говно и не считается.
Аноним 04/07/15 Суб 02:02:52 #66 №508819 
Написал я тут форму, а на фоме панельку с автоскроллом. И вот заполняется панелька, скролл появляется. Можно его мышкой тащить вверх-вниз. А на колесикол почему то реагирует через раз. Точнее чаще не реагирует, чем реагирует.
Где я проебался?
Аноним 04/07/15 Суб 02:12:51 #67 №508824 
>>508819
В описании проблемы. Никто не ебет о какой "форме" ты говоришь
Аноним 04/07/15 Суб 02:31:56 #68 №508831 
>>508824
Обычная WinForma
И panel тоже обычная
Аноним 04/07/15 Суб 02:41:53 #69 №508835 
>>508831
> Winform
Как у вас там в 2005 году? Быстро и решительно прекрати это говно мамонта.
Аноним 04/07/15 Суб 02:41:57 #70 №508836 
14359669170960.png
Помогите.
Что за фигня?
Я думал комунити - бесплатный.
Аноним 04/07/15 Суб 02:52:41 #71 №508839 
>>508836
Там бесплатно продлевают лицензию на год
Аноним 04/07/15 Суб 02:58:06 #72 №508840 
>>508839
>Там бесплатно продлевают лицензию на год
Где там?

Я так понимаю мне нужно регистрироваться чтобы пользоваться комунити едишоном?
И никакой фри студии на самом деле нет?
Аноним 04/07/15 Суб 02:58:34 #73 №508842 
>>508835
По делу есть что сказать?
Аноним 04/07/15 Суб 03:03:53 #74 №508843 
>>508840
> И никакой фри студии на самом деле нет?
Она бесплатна для твоего некоммерческого использования. Но ты должен принести в жертву свои данные мелкософту для получения бесплатной лицензии. Это как зарегится на рутрекере чтоб иметь возможность качать.
Ну и надо будет раз в год заходить под своим акком и обновлять лицензию.
Аноним 04/07/15 Суб 03:36:39 #75 №508849 
>>508843
>Она бесплатна
>ты должен принести в жертву
Да, я уже понял.
В общем. Перекатился на ультимайт обратно, лол.
Аноним 04/07/15 Суб 08:55:57 #76 №508859 
>>508819
Вангую, что у тебя фокус в этот момент на другом контроле, который и выстреливает события с колесиком, а не твоя хуйня со скроллом.
Скриншот бы выложил хоть, бля
Аноним 04/07/15 Суб 08:58:22 #77 №508861 
>>508835
Винформс хоть и устаревшее говно, но легаси проекты еще никто не отменял. И некоторые из них гораздо старше 2005 года.
Аноним 04/07/15 Суб 09:47:57 #78 №508869 
>>508843
> Она бесплатна для твоего некоммерческого использования.
> In non-enterprise organizations, up to 5 users can use Visual Studio Community
Если ты у мамы кодер в модном стартапе, то можешь юзать нахаляву и получать с этого профит.
Аноним 04/07/15 Суб 09:59:38 #79 №508873 
почему у меня пишет, что ReadLine() не существует?
Аноним 04/07/15 Суб 11:07:42 #80 №508887 
C чего начать изучать шарп?
Скачал юнити хочу делать игры.
Аноним 04/07/15 Суб 11:20:04 #81 №508899 
>>508887 -> /gd/
>>508873 Console.ReadLine()
Аноним 04/07/15 Суб 11:57:39 #82 №508919 
>>508899
>-> /gd/
Но ведь Юнити работает на шарпе, нет?
Я хотел и язык поучить, с какой книги начать?
Аноним 04/07/15 Суб 12:12:56 #83 №508927 
>>508919
Ты там и на «жабоскрипте» писать можно. Уверен, что в тот раздел зашел?
Аноним 04/07/15 Суб 12:15:30 #84 №508929 
>>508927
Ну да, я бы хотел какой-нибудь годный язык изучить, а не юнити. Слышал шарп = годная сверсия С++.
Аноним 04/07/15 Суб 14:30:32 #85 №508978 
Скачал книжку
@
подрочил сонсолечку

Заебало, хочу формы и подключение к базам данных
Аноним 04/07/15 Суб 23:13:26 #86 №509171 
>>508978
Ну так дрочи, WPF сначала в конструкторе, потом в чистом xml. БД через SqlConnection, потом через EF.
Аноним 05/07/15 Вск 11:15:07 #87 №509300 
14360841071930.jpg
Сап шарпач.
Есть один класс. В нем спрятан оче разный функционал некоего сервера.
Все это свистящее счастье может кидать ошибки понятное дело.
Вопрос такой, как их правильно обрабатывать?

Я вот сейчас думаю снабдить класс событием "Error" и вызывать его из блока катч, это ОК, или гроб кладбище?

>catch (Exception ex) { OnError(Thread.CurrentThread.Name, "Я твою мамку ипал111", ex, false); }

Вот как-то так.
Аноним 05/07/15 Вск 12:03:29 #88 №509308 
>>509300
Смотря, что ты хочешь получить. В общем случае, если ты можешь обработать ошибку внутри класса, то логгируй и продолжай работать. Если не можешь, то отдавай вызывающему коду и по той же схеме до глобального хендлера.

Вот как-то так.
Аноним 05/07/15 Вск 12:28:58 #89 №509314 
>>509308
>Смотря, что ты хочешь получить. В общем случае, если ты можешь обработать ошибку внутри класса, то логгируй и продолжай работать. Если не можешь, то отдавай вызывающему коду и по той же схеме до глобального хендлера.
>
>Вот как-то так.

Понятно, спасибо.
Дело как раз в том, что не хотелось логгирование внутри моего класса реализовывать.
Аноним 05/07/15 Вск 16:04:34 #90 №509399 
Котаны, помогите ньюфагу.

При загрузке формы я инициализирую объект.
private void Form1_Load(object sender, EventArgs e)
{
Employees emps = new Employees();
emps = emps.Load("C:/1/tst.xml");
for (int i = 0; i < emps.Count; i++)
{
EmpList.Items.Add(emps.Name);

}
}

Проблема в том, что нигде кроме этого контекста он доступен не будет. А мне нужно, чтобы и другие события видели этот объект. Где и как мне его в таком случае надо проинициализировать?
Аноним 05/07/15 Вск 16:33:49 #91 №509422 
>>509399
Все, сам допер.

public partial class Form1 : Form
{
public Employees emps;
public Form1()
{
emps = new Employees();
emps = emps.Load("C:/1/tst.xml");
InitializeComponent();
}
Аноним 05/07/15 Вск 17:07:11 #92 №509438 
>>509422
Хм. Он у тебя загружает работников и возвращает Employees? Не лучше ли сделать класс Employee и какой-нибудь сервис EmployeeService, который загрузит из файла работников и вернет List<Employee>? Он у тебя вообще работает? В цикле ничего не меняется и контролу отдается одно и тоже значение.
Аноним 05/07/15 Вск 17:34:38 #93 №509450 
Почаны, вот с этим вот вопросом помощь нужна, спасибо: http://pastebin.com/nmEqWZQg
Аноним 05/07/15 Вск 18:32:38 #94 №509485 
>>509450
Тебе ещё одна структура данных нужна и к её полям аннотации.
Гугли аннотации это из области MVC.
Всё сам, помогать не буду.
Аноним 05/07/15 Вск 18:56:32 #95 №509503 
>>509438
Работает, я там ошибку допустил, не EmpList.Items.Add(emps.Name); а EmpList.Items.Add(emps.Name);

У меня два класса, первый сами работники, второй - ArrayList этих работников, наследует ICollection.

Возник геморой с поиском по ArrayList по свойству хранящегося в нем объекта.
Написал как мне кажется жуткий костыль.

http://pastebin.com/GtYdubrj

Не могу просто понять как забрать ссылку на объект, выделенный в ListBox, если я туда складываю только поле Name объекта. Если бы понял как - заюзал бы IndexOf и не парился.

Сильно не ругайтесь, второй день учу c#, до этого только иногда развлекался на похапе лет 5 назад.
Аноним 05/07/15 Вск 19:12:01 #96 №509507 
>>509503
Походу макаба удаляет [ i ] почему-то, там короче emps[ i ] должно быть.
Аноним 05/07/15 Вск 19:58:28 #97 №509519 
>>509507
Какую-то ты хуиту делаешь.
ArrayList - устарел и неэффективен, нужно юзать List<T>
Это даст волшебный метод расширения .Find<T>(Predicate<T>)
Вот так например: http://pastebin.com/q9xS2hqV

Еще непонятно, зачем ты передаешь Employees emps в метод поиска, если эта коллекция член класса. И нахуя тебе интерфейс ICollection, это вообще загадка.. Нуда похуй.
Аноним 05/07/15 Вск 20:09:42 #98 №509526 
>>509485
Спасибо, буду гуглить.
Аноним 05/07/15 Вск 20:13:52 #99 №509528 
>>509503
Ты неправильно проектируешь. Надо писать в процедурном стиле, когда есть классы с данными без логики и классы с логикой без данных. Так проще писать тесты.
В твоем случае у тебя будет класс Employee (класс с данными) и класс EmployeeService (класс с логикой). Вместо Employees используй просто List<Employee>. Метод Search, во-первых, назови FindEmployeeByName, чтобы было понятно, что он делает; во-вторых, он должен быть в EmployeeService.
Аноним 05/07/15 Вск 20:36:14 #100 №509537 
>>509519
Я делал как написано в msdn для сериализации обьектов в хмл. Я же сказал, второй день учу язык, читаю Справочник по С# 5.0 и пишу для практики. Я просто не знал про List<T>;
>>509528
Большое спасибо. А такой стиль является общепринятым?
Аноним 05/07/15 Вск 20:59:14 #101 №509553 
14361191549500.png
Ананасы, подрубаю библиотеку на крестах, вызываю функцию, она отрабатывает и все падает с пикрелейтедом. Как лечить? Что вообще происходит?
Аноним 05/07/15 Вск 21:01:19 #102 №509554 
>подрубаю библиотеку на крестах
>Что вообще происходит?
Лол, кресты такие кресты.
Аноним 05/07/15 Вск 21:02:42 #103 №509556 
14361193621710.png
Впервые столкнулся с API, сделанном полностью через COM.

Как эту парашу дебажить? Для части объектов DynamicView пустой (как на картинке), у некоторых COMException Invalid Index
Аноним 05/07/15 Вск 21:03:18 #104 №509557 
>>509537
С одной стороны да, в ентерпрайзе так пишут через сервисы. С другой стороны, некоторые считают, что анемичная модель — антипаттерн и не должен использоваться в ооп.
Аноним 05/07/15 Вск 21:03:29 #105 №509558 
>>509554
Ну мне от твоих смехуёчков не легче. Есть один драйвер и эта библиотека им управляет, у меня нет другого выхода.
Аноним 05/07/15 Вск 21:07:33 #106 №509561 
>>509528
> когда есть классы с данными без логики и классы с логикой без данных

Вот смотрю примеры энтерпрайз решений (типа спринга) и пытаюсь понять: нахуя, спрашивается, придумывали ООП с его сущностями, объединяющими данные и методы работы с ними, чтобы потом их разносить по разным углам.
Аноним 05/07/15 Вск 21:48:10 #107 №509582 
>>509561
Иногда данные просто данные.
Аноним 05/07/15 Вск 22:05:17 #108 №509592 
>>509561
ООП хорош на макроуровне, когда у тебя система состоит из крупных модулей и детали модуля скрыты за фасадом. На микроуровне, то бишь внутри модуля, удобнее писать в процедурном стиле: когда тебе надо протестировать код, ты просто руками подготавливаешь необходимые данные и отдаешь их алгоритму.
Аноним 05/07/15 Вск 22:39:08 #109 №509602 
>>509592
ООП хорош на микроуровне, когда у тебя система состоит из мелких модулей и детали модуля скрыты за фасадом. На макроуровне, то бишь снаружи модуля, удобнее писать в процедурном стиле: когда тебе надо протестировать код, ты просто руками подготавливаешь необходимые данные и отдаешь их алгоритму.
Аноним 05/07/15 Вск 22:43:04 #110 №509605 
ООП не хорош. Всем содомировить стрелочки и замыкания.
Нодискас.
sageАноним 06/07/15 Пнд 13:29:28 #111 №509816 
Есть тракой ресурс http://govnokod.ru/csharp
где показывает как не нужно делать.

А есть ли ресурсы где можно посмотреть код реальных проектов(репозитории на гитхабе например). Можете поделиться ссылочками? Или просто код, который полезно было посмотреть ньюфагу.
Аноним 06/07/15 Пнд 16:34:36 #112 №509919 
>>509816
Ну хуй знает, посмотри как люди пишут теже DI&IoC, например, SimpleInjector, код есть на гитхаб.
Аноним 06/07/15 Пнд 20:47:41 #113 №510024 
Имеет смысл сейчас ставить visual studio 2013 или лучше подождать версию 2015 года, или для ньюфага это не имеет значения?
Аноним 06/07/15 Пнд 20:54:44 #114 №510030 
>>510024
> подождать версию 2015 года
зис
Аноним 06/07/15 Пнд 20:57:52 #115 №510032 
>>509816
Заходишь в топ github по c# и смотришь код популярных проектов, cms всяких.
Там говнокод бывает, но в основном все няшно.

>>510024
Не имеет значения, с# 6.0 это конечно хорошо, но я не думаю что ньюфагу есть какое-то дело до его фич, да и мало кто его юзает пока. roslyn - дырявое говно.



Аноним 07/07/15 Втр 03:43:57 #116 №510186 
Аноны, на каких ресурсах можно годно выучить асп.нет? Знаю шарп на норм уровне, джавку и пару веб фреймворков на ней. Хочу познать асп, вдруг больше понравится.
Аноним 07/07/15 Втр 08:45:45 #117 №510214 
>>510032
>да и мало кто его юзает пока
Тащемта, nameof - лучшее, что случалось в C# со времен анонимных делегатов. Уебки из микрософт годами высирали бесполезную хуиту уровня dynamic, linq или async и, наконец-то, сделали полезную фичу.
Аноним 07/07/15 Втр 09:01:09 #118 №510217 
>>510214
Маня гонит на линк, а тем временем проекта без использования линка и методов расширения ты, скорее всего, не найдешь.
Аноним 07/07/15 Втр 09:28:09 #119 №510219 
>>510217
Не найдешь не потому, что линк такой охуенный, а потому, что грамотных тимлидов очень мало. Зато много уебков с тремя годами опыта, которые ведутся на рекламу и тащат в проекты любую новую фигню. Конкретно линк провоцирует писать феноменальный говнокод, когда нихуя не понятно как это работает и как это покрыть тестами.
Аноним 07/07/15 Втр 09:36:43 #120 №510220 
>>510219
Ты совсем поехавший?
Какие тимлиды какие уебки?
>феноменальный говнокод
Какой говнокод, маня? Там внутри простые как тапок проходы по IEnumerable
>когда нихуя не понятно как это работает
Что тебе не понятно? Даже 4-х летний ребенок даун или php программист способен понять как работает linq. Он просто сворачивает твои уродливые пердолинги с листами в 2 красивые строчки, ты просто долбоеб если ради профита в 1ms пытаешься кукарекать против читаемости кода.
Аноним 07/07/15 Втр 11:13:36 #121 №510242 
>>510220
Мы вам перезвоним.
Аноним 07/07/15 Втр 11:50:40 #122 №510248 
14362590400610.png
>>510242
В анус себе перезвони долбоеб
Аноним 07/07/15 Втр 11:54:48 #123 №510251 
>>510219
Покрывается тестами очень просто. Бершь класс, который использует линк и пишешь для него тесты. Линк не тянет никаких внешних зависимостей. Если ты имел в виду l2s или ef, то да. Но это проблема не линка, а фреймворков ado.net. Впрочем, dal с ef/l2s тестируется сразу на бд, как и обычный ado.net с sp. Логика, которая использует dal, тестируется со стабами репозиториев.
В итоге мы имеем удобный флюентный синтаксис для работы с коллекциями, а не горы вложенных циклов.
Аноним 07/07/15 Втр 11:57:56 #124 №510252 
14362594769690.jpg
Лол, вы тут про линк пиздите, я как раз вчера читал про него.
Ну кароч, все, наверное, знают алгоритм нахождения простых чисел "Решето Эратосфена" (ну там массив натуральных чисел просеивается, пока не остаются только простые числа). https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D1%88%D0%B5%D1%82%D0%BE_%D0%AD%D1%80%D0%B0%D1%82%D0%BE%D1%81%D1%84%D0%B5%D0%BD%D0%B0
В общем, я решил заставить linq выполнить этот алгоритм лол. Написал две функции, одна ищет простые числа как обычно, другая просеивает массив с помощью linq запросов.

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

int[] natural = new int[N];
for (int i = 0; i < N; ++i)
natural = i;
natural[1] = 0;

int[] numbers = new int[N];
numbers[0] = 1;

var nnums = from a in natural select a;
int j = 1;
while( nnums.Count() > 0 )
{
int p = nnums.First(a => a > 0);
numbers[j++] = p;
nnums = from a in nnums where a % p != 0 select a;
}

return (from a in numbers where (a > 0) select a).ToArray<int>();
Аноним 07/07/15 Втр 12:06:01 #125 №510256 
сап шарпач написал простенький алгоритм
namespace aaa
{
public class program
{
public static void Main(string[] ar)
{

int b = Console.Read(); // число дней
double cc = 1000; // поступление
double k = 0; // количество на складе
int h = 7;



for (int a = 1; a == b; a++)
{
k += cc;
cc += cc*0.1;

if ((a & h) == 0) { cc = 1000; }
if (k >= 10000) { k -= 10000; }

}

Console.WriteLine(k);



}
}
}



на простую задачу

и у меня msv не выводит ничего кроме 0 при запуске .
Знаю, что кривые руки надо обломать,но..
Аноним 07/07/15 Втр 12:06:13 #126 №510257 
14362599737520.jpg
Я прочитал только главу типа "Знакомство с linq и нахуй он вообще нужен".
Но так и не понял, нахер он нужен.
Можно же в циклах все перебирать.


На пикрелейтед вот эта программа >>510252
Аноним 07/07/15 Втр 12:12:28 #127 №510260 
>>510256
Я вообще ничего не понял.
Ну во-первых, кто пишет в условии выхода из цикла ==. Почему не a <= b? ну это прост придирки, так то похуй

Но что такое if ((a & h) == 0) ?! Что это за условие? Что это значит, и почему вообще это компилится? Я не понимат.
Аноним 07/07/15 Втр 12:17:01 #128 №510261 
>>510260
>if ((a & h) == 0)
Если результат побитового умножения a на h равен 0, то ...
Аноним 07/07/15 Втр 12:19:13 #129 №510263 
Опять я.
такое ощущение, что цикл for не работает. В чём кривость ?
Аноним 07/07/15 Втр 12:20:45 #130 №510264 
>>510261
>>510256
Выводит ноль потому, что при входе в цикл a != b. Отака хуйня, малята. Обзавидитесь отладчиком.
Аноним 07/07/15 Втр 12:26:40 #131 №510265 
>>510263
Цикл выполняется пока верно условие a == b, а оно с самого начала не верно, цикл вообще не запускается.

Алсо считывание из консоли неправильное.
Аноним 07/07/15 Втр 12:29:02 #132 №510266 
>>510265
Спасибо, чем же?
Аноним 07/07/15 Втр 12:40:57 #133 №510270 
>>510266
Ты сразу после считывания из консоли выведи число.
Read() возвращает код введенного символа.
Я бы что-нибудь вроде int b = Convert.ToInt32(Console.ReadLine()); написал.

Пиздец длинно, конечно, но я других вариантов не знаю. перейти на кресты и юзать cin и cout азаза
Аноним 07/07/15 Втр 12:47:18 #134 №510273 
>>510270
>Read() возвращает код введенного символа.
оп-а-па.
вот это новость, спасибо.
пофиксил, работает.
Аноним 07/07/15 Втр 14:18:56 #135 №510309 
>>510257
> Зачеркнуть в списке числа от 2p до n считая шагами по p (это будут числа кратные p: 2p, 3p, 4p, …).
> nnums = from a in nnums where a % p != 0 select a;
Охуенно шагаешь по шагу p, братишка.
По факту, в расшифровке linq есть замечательное слово query, так что you doing it wrong. Это довольно удобный инструмент, чтобы не писать сотню однообразных циклов уровня "выбрать из списка все объекты удовлетворяющие условию".
Аноним 07/07/15 Втр 14:51:43 #136 №510329 
>>510257
>>510219
Откуда вы лезете, дауны?
Я хуею, linq им не нравится.
c# - это в первую очередь высокоуровневый язык, а 95% софта, который пишут на нем - это enterprise.
Методы linq тестировать не нужно, долбоеб, или ты думаешь что в microsoft тебе Linq с багами отдали?

Если у тебя задача с переборами листов, то ты должен использовать linq, точно так же, если у тебя интерфейсная асинхронная операция, которая решается с помощью tpl/async, то используй tpl/async, а не thread, потому что ты не понимаешь как это работает.
Код на c# должен быть красивый и читаемый. Супер быстрым он быть не должен, за этим уебывайте в крестотред.

Вы собрались вот это:
user.Where(x=>x.Age > 10).Take(100).Skip(10).Select(x=>new UserDto(x))
циклами расписывать? Лолблять, 3 страницы говнокода выйдет.
Аноним 07/07/15 Втр 15:45:58 #137 №510349 
>>510329
>в microsoft тебе Linq с багами отдали?
У меня для тебя плохие новости, микрософт кучу всего с багами дает. Впрочем как и другие производители инструментария для разработки программного обесчпечения.
Аноним 07/07/15 Втр 16:05:03 #138 №510358 
>>510349
> микрософт кучу всего с багами дает
За 8 лет разработки на фрейме видел 1 баг. Один, блять. Так что иди нахуй, мелкософт даёт на клыка по качеству девтулзов вообще всем.
Аноним 07/07/15 Втр 16:07:08 #139 №510359 
>>510358
Я уже не говорю о том, что linq простой как два пальца обоссать. Я как-то его сурс в моно проект вставлял.
Аноним 07/07/15 Втр 16:07:09 #140 №510360 
>>510349
Проиграл с пердолика. Консолечкой в сраченьку подолбился уже?
Аноним 07/07/15 Втр 16:39:30 #141 №510373 
>>510349
Приведи пример?
У технологии которой > 8 лет багов не будет, а если и будут, то они будут настолько редкие, что ты до них никогда не доберешься.

В любом случае представил и проиграл как компания нанимает программиста, а он сидит юнит тесты на linq методы хуярит.
wpf Аноним 07/07/15 Втр 16:44:58 #142 №510374 
14362766981120.png
Есть несколько зависящих друг от друга комбобоксов(wpf).
Короче, при загрузке страницы они пустые. Хотя коллекция туда грузится. SelectedIndex использовать бесполезно, так как я юзаю биндинг. Как сделать, чтобы при загрузке в комбобокс сразу запиливался первый элемент коллекции?
Аноним 07/07/15 Втр 16:45:07 #143 №510375 
>>507679
Тот, у которого скорость больше. Инфа 146%.
Аноним 07/07/15 Втр 16:58:51 #144 №510377 
>>510374
Во вью модели сделать проперти и забиддить на SelectItem, очевидно же.
Аноним 07/07/15 Втр 16:59:32 #145 №510378 
>>510377
Я имел в виду свойство, конечно, а не проперти.
Аноним 07/07/15 Втр 17:03:04 #146 №510384 
>>510378
Но это одно и то же.
Аноним 07/07/15 Втр 17:03:16 #147 №510385 
14362777961100.png
>>510378
У меня так оно и есть.
Аноним 07/07/15 Втр 17:05:40 #148 №510387 
>>510385
А свойства ты обновляешь, когда коллекции в комбики загружаешь?
Аноним 07/07/15 Втр 17:05:58 #149 №510388 
>>508835
А что сейчас актуально в студии и щарпах?
Аноним 07/07/15 Втр 17:06:32 #150 №510391 
>>510384
Нет, есть еще депенденси проперти в wpf, а это уже совсем не то.
Аноним 07/07/15 Втр 17:07:25 #151 №510392 
>>510388
wpf
Аноним 07/07/15 Втр 17:08:16 #152 №510393 
>>510388
asp.net

>>510391
Я про то, что слово одно и то же, только из разных языков.
Аноним 07/07/15 Втр 17:09:55 #153 №510397 
>>510387
Коллекции заебись грузятся. Заебись обновляются. У меня ОнПропертиЧенжед запилен в свойстве.
Я просто хочу, чтобы коллекция показывалась сразу( а точнее её первый элемент).
Аноним 07/07/15 Втр 17:11:49 #154 №510398 
>>510397
Вот я и говорю, когда заполняешь коллекцию, засунь в свойство первый ее элемент. У тебя же там 2-way биндинг на SelectedItem.
Аноним 07/07/15 Втр 17:12:23 #155 №510400 
>>510392
Поподробней в чеп плюсы в создании приложений?
недавно вкатился
Аноним 07/07/15 Втр 17:25:23 #156 №510415 
>>510400
Фишка в том, что ты можешь выстраивать архитектуру приложения. Пишешь отдельно логику с моделями, отдельно вьюхи. А потом вдруг понадобится тебе переписать приложение на вэб. И тебе не придётся ебаться очень сильно. Т.к. логика не жестко связана с вью.
И ещё. Есть всяческие встраиваемые юзер-контролы, которые могу облегчить тебе жизнь.
Аноним 07/07/15 Втр 17:27:13 #157 №510417 
>>510400
Декларативный стиль задания контролов, простая кастомизация контролов через темплейты и стили, концепция mvvm. Ну, и вроде как там на dx все написано и якобы дивайс-индипендент.

>>510415
Ну, это ты загнул. Как будто на винформах сиквел запросы прямо в кодбихайнде хуярят.
Аноним 07/07/15 Втр 17:28:53 #158 №510421 
>>510417
Но в винформах, если я не ошибаюсь, нет такой ламповой темы, как биндинги.
Аноним 07/07/15 Втр 17:29:19 #159 №510423 
>>510421
Ошибаешься.
Аноним 07/07/15 Втр 17:37:43 #160 №510431 
Почему, обсуждая WPF, никто не советует Prizm?
Аноним 07/07/15 Втр 17:39:28 #161 №510436 
>>510431
Потому, что, по правде говоря, все занимаются веб-макакингом.
Аноним 07/07/15 Втр 17:43:45 #162 №510439 
>>510436
Какая печальная судьба.
Аноним 07/07/15 Втр 17:54:34 #163 №510447 
>>510329
Да я ничего вообще не говорил. Я только читать начал, хотел решить математическую задачу, а тут такое отставание по времени. Решил спросить, может накосячил где.
>Код на c# должен быть красивый и читаемый. Супер быстрым он быть не должен, за этим уебывайте в крестотред.
(((

>>510309
Ну это кстати не главная проблема.
Первая функция тоже все числа подряд пробегает, а не с шагом p.
И вообще после применения запроса индексация же проебывается, как я их с шагом буду выбирать.
Стоп, у меня в цикле выполняется
nnums = from a in nnums where a % p != 0 select a;
На каждой итерации будет выделяться новая память?
Аноним 07/07/15 Втр 18:04:34 #164 №510458 
14362814740930.jpg
И вообще говно эти автоматические выделения/освобождения памяти.
Как же хорошо прогать на плюсах, когда ты царь и бог, сам создаешь объекты и сам уничтожаешь.
Аноним 07/07/15 Втр 18:06:59 #165 №510461 
>>510329
>Код на c# должен быть красивый и читаемый.
linq портит красоту шарпа своими уродливыми стрелочками и длиными цепочками невразумиельных методов на sql-подобном собачьем диалекте.
Аноним 07/07/15 Втр 18:09:34 #166 №510463 
>>510447
Лучше, на каждой итерации у тебя будет настакиваться каскад из автоматов в куче и на каждый вызов метода расширения он будет раскручиваться.
Аноним 07/07/15 Втр 18:11:14 #167 №510465 
>>510463
>метода расширения
Те, что триггерят это дело: count, first и т.д.
Аноним 07/07/15 Втр 18:11:31 #168 №510466 
>>510458
>ммм как же хорошо жрать понос десятилетней давности ммм)))
Аноним 07/07/15 Втр 18:45:21 #169 №510486 
>>510458
>пришел в шарпотред
>пацаны, с++ заебись вообще
мм, ясно
Аноним 07/07/15 Втр 19:04:56 #170 №510501 
14362850962060.jpg
>>510465>>510463
Спасибо, анон. Кажись, теперь всё ясно.
Аноним 07/07/15 Втр 19:07:52 #171 №510502 
>>510463
> на каждой итерации у тебя будет настакиваться каскад из автоматов в куче
Ох уж эти фантазёры.
Аноним 07/07/15 Втр 19:15:29 #172 №510508 
>>510501
Что ясно?
Что там со временем в поправленом варианте?
Аноним 07/07/15 Втр 19:19:35 #173 №510513 
>>510502
Ну время выполнения очень быстро растет от N, так что вполне логично.
Эти запросы же "вычисляются лениво", то есть каждый раз когда я вызываю First() первоначальный массив начинает просеиваться с нуля. Что не так то?
Вот если бы я после каждого отбора сохранял данные в новый массив.. Надо попробовать.
Аноним 07/07/15 Втр 19:33:24 #174 №510530 
14362868045870.jpg
>>510508
Блядь, вот это поворот.
Я просто охуел. Вот код f3(), почти как f2(), только каждый запрос сразу в массив записывается как там это называется? проекция запроса?

Работает ГОРАЗДО БЫСТРЕЕ чем обычный алгоритм на массивах. Однозначно у меня где-то ошибка в f1(), а как ещё это объяснить можно.
Число элементов 100к.

static int[] f3()
{
int[] natural = new int[N];
for (int i = 0; i < N; ++i)
natural = i+2;

int[] numbers = new int[N];
numbers[0] = 1;

int j = 1;
int p;
while (natural.Length > 0)
{
p = natural[0];
numbers[j++] = p;
natural = (from a in natural where a % p != 0 select a).ToArray<int>();
}

return (from a in numbers where (a > 0) select a).ToArray<int>();
}
Аноним 07/07/15 Втр 19:39:46 #175 №510535 
Помогите разобраться с WPF. Имею средние скиллы C# и ASP.NET MVC. Но пытаясь освоить WPF, терплю поражение. Паттерн MVVM мне понятен, но сам фреймворк для меня представляется хаосом. Сотни бойлерплейт-кода, сотни телодвижений для простых действий. Судя по гуглу, все пользуются мокрописечными фреймворками, которые не добавляют для меня ясности осваивания фреймворка. ASP.NET MVC освоил с пол-пинка.
Подскажите что читать, какие фреймворки использовать. Хочу написать узкоспециализированную CAD-систему.
Аноним 07/07/15 Втр 19:47:57 #176 №510543 
>>510513
> Что не так то?
Ты пишешь какую-то ересь и кодишь какую-то ересь. У тебя есть поток данных (IEnumerable<тип>), ты делаешь к нему linq запрос. Потом ты получаешь преобразованные данные. Один раз. В этот момент создается маленький лёгкий итератор в куче. Один или пара, если у тебя запрос джойнит что-нибудь например. Но там в любом случае десятки байт максимум. И по мере получения тобой данных итератор работает и просеивает/маппит/аггрегирует etc.

Это же, блять, обычные map/reduce/fold из ФП, что там сложного и тормозящего может быть? Нахуя городить кучу ToArray говна вместо нормальной композиции?
Аноним 07/07/15 Втр 19:50:42 #177 №510545 
>>510543
А, у тебя там решето Эратосфена. Это по сути мутабельный алгоритм, а ты хочешь его ФП методами решать, какой же ты наркоман.
Аноним 07/07/15 Втр 20:00:18 #178 №510555 
>>510543
>>510545
Напиздел каких-то слов умных и рад. Ничего нового не сказал.
Ну да, после одно вызова создается маленький итератор, после второго итератор по итератору, потом итератор по итератору итератора и т. д. Собственно при больших числах куча итераторов друг на друге, а при каждом вызове first это все начинает раскручиваться.
Я понимаю, что это не оптимальный алгоритм, я блядь оцениваю время выполнения, интересно жи.

И что значит мутабельный, меня вот это слово больше всего заинтересовало?
Аноним 07/07/15 Втр 20:06:04 #179 №510563 
>>510555
> Собственно при больших числах куча итераторов друг на друге
Число итераторов = число слов в линк запросе. Какие, блять, большие числа??

> при каждом вызове first
Ты должен вызывать получение данных один раз. Один! Линк он для этого, а не для ToArray в цикле, блять.


> каких-то слов умных
> И что значит мутабельный
Может стоит пойти почитать про мутабельность/иммутабельность, функциональное программирование и т.п. элементарные вещи прежде чем пытаться совать linq везде, куда не следует, м?
Аноним 07/07/15 Втр 20:20:03 #180 №510574 
>>510563
Ой всё.

>Ты должен вызывать получение данных один раз
И я никому ничего не должен азаза
Аноним 07/07/15 Втр 20:50:42 #181 №510589 
>>510574
Ну и сиди во тьме дальше, шарподаун.
sageАноним 08/07/15 Срд 04:19:32 #182 №510809 
>>510329
>user.Where(x=>x.Age > 10).Take(100).Skip(10).Select(x=>new UserDto(x))
О, отличный пример говнокода линк-стайл. Ехала стрелочка через скобочку. Глаза сломаешь, пока это все распарсишь.
Я не говорю о том, что при грамотной архитектуре никто, блять, не дает лазить напрямую в базу, там будет хранимка с параметрами @MinAge, @MaxAge и т.д. Пейджинг тоже делается внутри хранимки, вручную, через выдроченые в профайлере индексы, никаких Skip и Take.
Джуниоры такие джуниоры. Сделал сраный сайтик и уже поясняет за архитектуру, вообще охуеть!
Аноним 08/07/15 Срд 10:48:15 #183 №510854 
>>510809
>О, отличный пример говнокода линк-стайл
Посоны, переписываем все проекты, анон с двача не понимает этот linq.
>Глаза сломаешь, пока это все распарсишь.
Если ты не умеешь читать код, то это исключительно твои проблемы.
>там будет хранимка с параметрами @MinAge, @MaxAge и т.д
Ебать делил, по твоему на каждый вызов dal на стороне бд нужно лепить хранимку в каждом проекте? Это где такие долбоебы работают? Один сраный crud 5 месяцев пердолишь?

Может ты мне объяснишь, даун, как твоя сраная хранимка ускорит выборку по 1 условию, учитывая что все индексы проставлены верно?
Никак она нихуя не ускорит, sp для других вещей созданы.
Зато на проекте запрос к базе меняют 3 недели, потому что каждый раз нужно миграции на базы накатывать, потому что какой-то даун так захотел.
Аноним 08/07/15 Срд 11:55:42 #184 №510885 
>>510809
Да и при чем тут база?
Просто откуда-то взялся users, может из конфига загрузился или по сети прилетел.
Аноним 08/07/15 Срд 11:58:49 #185 №510888 
>>510373
>Приведи пример?
>У технологии которой > 8 лет багов не будет, а если и будут, то они будут настолько редкие, что ты до них никогда не доберешься.
В конторе, где работаю, нашли баг в MSSQL, который микрософт официально признал и присылал исправление. И это только один из багов о которых я знаю. Чего уж там говорить за какой-то фреймворк.
>>510809
>user.Where(x=>x.Age > 10).Take(100).Skip(10).Select(x=>new UserDto(x))
За такое у нас сразу убивают нахуй.
>>510854
>Один сраный crud 5 месяцев пердолишь?
>Зато на проекте запрос к базе меняют 3 недели, потому что каждый раз нужно миграции на базы накатывать
Пиздец-же просто. С таким подходом ты будешь пердолица 3 три месяца после того как в структуру таблицы внесут косметические изменения, выискивая свой говнокод размазаный по всему проекту. И вместо отгрузки на продакшн одной хранимки, будешь всю систему нахуй ставить.
Короче поддвачну вот этого, но все верно говорит.
>>510809
>Сделал сраный сайтик и уже поясняет за архитектуру, вообще охуеть!
Аноним 08/07/15 Срд 12:12:46 #186 №510894 
Нуб вкатился итт.
Пишу прогу, жму в mvs запуск и оно радостно прогоняет тест.
окно вывода работает, а ввода нет (console.readline();)
Поэтому как откомпилировать прогу и запустить в черной dos консоли ?
Аноним 08/07/15 Срд 12:35:37 #187 №510899 
>>510888
>За такое у нас сразу убивают нахуй.
Почему? правда интересно
И как правильно?
Аноним 08/07/15 Срд 13:19:28 #188 №510917 
>>510899
Если мы обрабатываем коллекцию, которая у нас в памяти, то правильно выносить условие в отдельную функцию. Затем, что со временем требования меняются и через пару лет простое x.Age > 10 может превратиться в пару экранов проверок. По нормальному код должен быть типа

foreach (var item in collection)
{
if (ItemMatchesOurCriteria(item)==false)
continue;

ProcessItem(item);
}

Если мы говорим за бд, то пейджинг и построение условий делаются внутри хранимки. Там внутри бородатый дба хуячит простыни кода, а девелопер просто передает через параметры @MinAge, @MaxAge, @PageSize, @PageNumber. Такой подход позволяет удаленно отлаживать хранимки через rdp или teamviewer, когда хуй ты перекачаешь к себе пару терабайт базы.
Алсо, на практике поиск по какому-то полю зачастую подразумевает несколько джоинов, из которых это самое поле и берется. Если джоинить все сразу, то база умирает, поэтому в хранимке делается двухуровневый джоин: сперва поля, по которым ищут и сортируют данные, потом пейджинг и потом к итоговым 10 записям джойнится все остальное говно.
Аноним 08/07/15 Срд 13:29:19 #189 №510926 
>>510917
>collection.Where(ItemMatchesOurCriteria).ForEach(ProcessItem);
Аноним 08/07/15 Срд 13:44:07 #190 №510949 
>>510926
Кокой молодец. А теперь добавь обработку исключений: любое обращение к item может бросить исключение, порченые айтемы надо складывать в отдельную коллекцию, не прерывая общего цикла обработки.
Аноним 08/07/15 Срд 13:45:22 #191 №510952 
>>510917
Ни разу не видел еще живых dba, но вообщем понятно, спасибо.
Аноним 08/07/15 Срд 14:14:23 #192 №510971 
>>510949
Ты сначала свой йоба цикл перепиши, а потом уже бросайся исключениями при любом обращении к объекту.
Аноним 08/07/15 Срд 14:45:34 #193 №510987 
Шарпач, что можно по шарпику почитать на русском? На шарпе давно начал кодить и очень вставляет читать всякие статейки с реализациями каких-то задач. Хабр по дотнету уже весь перечитан, что ещё в рунете есть годное?
Аноним 08/07/15 Срд 16:33:45 #194 №511044 
>>510917
>хранимки
Ебануться, свитера учат жизни в C# треде. Под шконарь свали мразь.
Аноним 08/07/15 Срд 17:27:08 #195 №511068 
Заполняю листбокс с таблицы базы. В таблице нумерация начинается с 1. В листбоксе с 0. При этом мне надо делать запрос к бд, используя listbox.SelectedIndex как один из параметров. А он всегда на единицу меньше. Я, конечно, могу прикрутить костыль в виде +1, но хотелось бы решить эту проблему цивилизованно.
Аноним 08/07/15 Срд 17:53:54 #196 №511080 
>>510917
> По нормальному код должен быть типа
> простыня паттернов а вдруг требования поменяются
У меня от этого та статья с хабра про хлебопечку.
http://habrahabr.ru/post/153225/

Как же хорошо, что я не работаю в подобной энтерпрайзопараше.
Аноним 08/07/15 Срд 18:21:29 #197 №511089 
>>510917
> if (ItemMatchesOurCriteria(item)==false)
В голосяндру с этого кода.

Аноним 08/07/15 Срд 19:10:10 #198 №511103 
>>510917
А почему нельзя сначала написать например
>Where(x=>x.Age > 10)
потом если условие вырастает до нескольких строчек - вынести его в отдельный метод, потом если нужно еще что-то делать - заменить linq на foreach?
Аноним 08/07/15 Срд 19:12:50 #199 №511104 
>>511080
Статья - порожняковая демагогия. Автор с высоты своего трехлетнего опыта разработки смешивает фасад и детали реализации. На самом деле, код справа - это внешний интерфейс, таким модуль видят пользователи. А код слева - это внутренние детали реализации. Альтернативой паттернам является ебаное месиво из if-ов и не дай бог тебе поддерживать такое говно.

>Как же хорошо, что я не работаю в подобной энтерпрайзопараше.
Ты пердолишь сайтики на джумле за $5/h.
Аноним 08/07/15 Срд 19:15:15 #200 №511111 
>>511103
Затем, что Single Responsibility Principle. Это сейчас ты помнишь, как все работает, а через год будешь материться, какой же мудак все это написал.
Аноним 08/07/15 Срд 19:42:17 #201 №511127 
>>511111
Ты дурачок совсем. Если у тебя работа с коллекцией сводится к фильтрации и мапингу в 2 лямбды, то переносить логику в отдельные методы и велосипедить циклы не имеет смысла. У тебя эта логика не факт, что будет дублироваться, и не факт, что когда-либо поменяется, а ты ее сходу в 10 кривых строчек расписал заместо 1.
Аноним 08/07/15 Срд 19:54:07 #202 №511137 
>>511111
Single Responsibility Principle, я думал это о другом, например если у тебя класс EmailValidator занимается еще и формированием отчетов и картинки сжимает - то Single Responsibility Principle нарушен, я ошибаюсь?
Какое он отношение к матчингу коллекции имеет?

Да и как я через год забуду что значит x=>x.Age > 10 ?
Я скорей через год забуду что делают все эти сотни ItemMatchesOurCriteria методов.
Аноним 08/07/15 Срд 20:27:35 #203 №511169 
>>511104
> Альтернативой паттернам является ебаное месиво из if-ов и не дай бог тебе поддерживать такое говно
Узколобые дауны не видят альтернатив, кроме двух стульев. Впрочем ничего нового. Ведь они не слышали, что там, откуда пришёл linq ifы не нужны
Аноним 08/07/15 Срд 20:29:51 #204 №511170 
>>511111
> через год будешь материться, какой же мудак все это написал
> однострочный linq запрос
Ты, наверное, T-SQL увидишь и в могилу сразу ляжешь.
Аноним 08/07/15 Срд 20:31:00 #205 №511172 
>>511104
> ебаное месиво из if-ов
> в линк-запросе if-ов нет
> в твоем коде есть if-ы
/0
Аноним 08/07/15 Срд 20:42:03 #206 №511178 
>>511127
>переносить логику в отдельные методы и велосипедить циклы не имеет смысла
Юнит-тесты для лохов, а тру-посоны сразу пишут без ошибок. Можешь не продолжать, тебе просто не хватает опыта, чтобы понять.
Аноним 08/07/15 Срд 20:44:32 #207 №511182 
>>511178
Ты, дурачок, слова из контекста-то не выдирай.
Аноним 08/07/15 Срд 20:46:53 #208 №511185 
>>511137
>Single Responsibility Principle
Он наверно имел ввиду единое место для внесения измений.
С linq вполне возможна ситуация, когда две кодомакаки в своих модулях "по-быстрому" пишут реализацию одной и той же херни на одинаковых данных.
Аноним 08/07/15 Срд 20:54:40 #209 №511190 
>>511137
SRP применим ко всему, не только к классам. Алгоритм состоит из двух частей: обход коллекции и обработка элемента. Если у тебя это два независимых компонента, то изменение одного никак не затронет другой. Например, ты можешь добавить в цикл хитровыебаную логику обработки ошибок и это никак не затронет код обработки элемента. Когда система состоит из независимых компонентов, ты меняешь один кусок, а все остальное продолжает работать как работало. А у школьника с linq головного мозга каждый патч превращается в многочасовое сидение над багами.

>Да и как я через год забуду что значит x=>x.Age > 10 ?
Элементарно. Что это за магическое число 10? Почему возраст должен быть больше десяти, зачем это все? А если возраст меньше десяти, что тогда? Автор кода уволился полгода назад и никто не знает, как эта хрень работает и зачем.
Аноним 08/07/15 Срд 21:07:41 #210 №511200 
>>511190
> Алгоритм состоит из двух частей: обход коллекции и обработка элемента
Названия функциям не заебешься придумывать, теоретик?

Больше всего меня веселит твоё вот это вот if(blabla == false) на фоне пространных рассуждений о декомпозиции кода.

Аноним 08/07/15 Срд 21:08:00 #211 №511201 
>>511190
Overengineering.
Аноним 08/07/15 Срд 21:17:08 #212 №511209 
14363794283830.png
14363794283851.png
Visual Studio community 2013 идет с SQL сервером?
А то у меня уже стоял 2008 до этого. Зашел в программы там студия понаставила кучу всего связанного с SQL Server 2012 и 2014 еще появлилсь, но в служабх старый отключенный SQL 2008 Express висит и еще какой-то SQL Server VSS Writer. Это и есть 2012, 2014 сервер?
Аноним 08/07/15 Срд 21:24:41 #213 №511212 
>>511200
Что тебя веселит, долбоеб? Ты не знал, что "!" слишком легко пропустить в коде, и потому пишут "==false"?
Аноним 08/07/15 Срд 21:25:24 #214 №511215 
>>511209
> SQL Server Express LocalDB
Полноценный сиквел сервер не должен ставиться.
Аноним 08/07/15 Срд 21:27:12 #215 №511216 
>>511209
Нет, сервер надо ставить отдельно. В комплекте со студией идет sql server compact edition, но это хуитка, а не полноценная субд.
Аноним 08/07/15 Срд 21:27:34 #216 №511217 
>>511212
> "!" слишком легко пропустить в коде
Да мне уже ясен уровень ваших программистов. "!" они не видят, тело каждого цикла выделяют в отдельную функцию. И при этом продолжают писать все это на императивном говнеце.
Аноним 08/07/15 Срд 21:30:57 #217 №511219 
>>511217
Пердолик, иди уже вздрочни на комонады и спать, а то мамка заругает.
Аноним 08/07/15 Срд 21:32:36 #218 №511220 
>>511219
>ясен уровень ваших программистов
Показательно.
Аноним 08/07/15 Срд 21:33:08 #219 №511221 
>>511219
> Пердолик
Не проецируй, мань.
Аноним 08/07/15 Срд 21:36:49 #220 №511226 
>>511220
Ну как бы ожидаемо хули, шарпо-тырпрайз, сотни kloc бессмысленно дутого говна, тысячи kloc тестов, десятки тупых макак, увольняются раз в полгода. А все почему? Потому что хороших программистов хуй с огнём сыщешь.
Аноним 08/07/15 Срд 21:37:57 #221 №511228 
>>511217
Вот когда ты дорастешь до тимлида, тебе дадут команду ленивых распиздяев, которые только и думают как проебаться от работы, тогда я тебя с удовольствием послушаю. А пока что ты хуй простой с laba1.
Аноним 08/07/15 Срд 21:38:54 #222 №511230 
>>511226
Но ведь таков рынок, любая команда состоит на 90% из ленивых макак, следовательно методики разработки нужно подстраивать под них.
Аноним 08/07/15 Срд 21:41:14 #223 №511232 
>>511226
Поэтому умные люди и придумали патерны-хуятерны, чтобы даже с мартышками можно было выпускать продукт. Пока ты будешь искать гениального программиста взамен ушедшего, конкуренты выпустят три версии и заработают миллиарды.
Аноним 08/07/15 Срд 21:54:56 #224 №511244 
>>511228
> тебе дадут команду ленивых распиздяев
> любая команда состоит на 90% из ленивых макак
> Пока ты будешь искать гениального программиста взамен ушедшего

Как же хорошо, что у меня нормальная команда, лол.
Аноним 08/07/15 Срд 21:59:34 #225 №511247 
14363819747680.png
Решил пройти этот самый EDX.
Первая практичоское там хуита с объявлением пременных и присваиванием переменных и выводом их на экран.
Ну отсылаю я такой на решение, потом меня перекидывают на следующей шаг.
Это что мне нужно оценить решение других?
Или это просто проверка как я усвоил материал?
Аноним 08/07/15 Срд 22:01:32 #226 №511250 
>>511216
2008 Express сойдет? Раз он у меня и так стоит.
Аноним 08/07/15 Срд 22:05:40 #227 №511253 
>>511247
>Это что мне нужно оценить решение других?
this
Аноним 08/07/15 Срд 22:09:31 #228 №511255 
>>511253
А комментарии обязательно всюду писать?
Аноним 08/07/15 Срд 22:09:53 #229 №511256 
>>511255
> комментарии к оценке
Аноним 08/07/15 Срд 22:19:38 #230 №511261 
>>511255
У тебя с ангельским плохо? Я не проходил подобные курсы, но там написано, что, помимо ревью и оценки, надо оставить фидбек на работу пира: что вышло хорошо, а что ниочень.
Аноним 09/07/15 Чтв 06:54:51 #231 №511390 
http://mycsharp.ru/ годнота? В принципе поясняет популярно (как мне и надо), но вдруг хуйню?
Аноним 09/07/15 Чтв 08:06:11 #232 №511397 
Шарпаны, подскажите. Пишу некую программу. Сейчас уже запилил необходимый минимум и она вводится в эксплуатацию. Интерфейс написан, ввиду своей невежественности на винформс.
В будущем надо будет допиливать множество функций некоторые из которых требуют выборки из бд в датагридвью, копирования из него данных и т.д. Уже сейчас видно, что винформс не подходит для этого. На чем мне писать остальной интерфейс? Qt, wpf? Полный 0 в обоих случаях.
Аноним 09/07/15 Чтв 08:10:24 #233 №511398 
>>511397
Ах да. Необходимо, чтоб работало на всем, от вин Хр до вин 8. (у нас зоопарк)
Аноним 09/07/15 Чтв 08:22:20 #234 №511400 
>>511398
Ставь Visual Studio 2010, .NET 4.0 прекрасно работает на XP.
Для древних компов лучше Qt или Delphi.
Аноним 09/07/15 Чтв 08:40:27 #235 №511405 
>>511400
То есть? Если я сейчас все понаписал на НЕТ 4.х, чтоб на ХП заработало надо перекомпилить на 4.0? VisualStudio 2013.
Пока гонял только на win 7,8
Аноним 09/07/15 Чтв 11:15:28 #236 №511455 
14364297287980.png
14364297287991.png
Сап, шарпеи, невфаг с проблемами на связи. По работе решил запилить себе вспомогательную утилиту, при этом в программерстве я почти полный 0. Решил изучить сишарп для своих нужд, прочитал кое-что, что-то посмотрел, туториалы кое-какие и начал писать, да формы-кнопочки таскать. Есть несколько вопросов:
1. Кое как смог пропихнуть запрос в оракловую базу, теперь вопрос: мне такое гнездо кода в каждую кнопочку/ивент вставлять? Или соединение надо 1 раз открыть и потом только с командами и ридерами играться. (см. рис. 1)
2. Если я использую кейворд using перед созданием объектов с интерфейсом IDisposable, то мне не нужно вручную прописывать dispose или close?
3. Есть похожее на пик (см. рис. 2) представление? или через datagridview это надо делать? Как тогда делать, хочу чтоб элементов в строке было 2 (код и имя), а выделялась вся строка?
Аноним 09/07/15 Чтв 11:44:27 #237 №511463 
>>511455
1. Либо так, либо писать репозиторий. Возможно, заюзать l2s или ef. В сиквел сервере используется пул соединений, поэтому там не рекомендуется долго держать соединение открытым. Открыл, сделал дело, закрыл. Как это в оракле — хз.
2. Не, не надо. Он в будет вызван автоматически.
3. ListView.
Аноним 09/07/15 Чтв 14:35:08 #238 №511560 
>>511455
Посмотри на Dapper, чтобы каждый раз не писать руками reader.GetString(0).
Аноним 09/07/15 Чтв 16:26:04 #239 №511659 
>>510535
Нахуй тебе впф, если доставляет исключительно проблемы?
Олсо, из-за адского бойлерплейта никак не могу вкатиться туда. На няшном аспе за тебя всякую хуйню генерит фреймворк и вообще всячески помогает, а впф странный какой-то.
Аноним 09/07/15 Чтв 16:34:03 #240 №511664 
>>511659
>На няшном аспе
Надеюсь, ты не про вебформы?
Аноним 09/07/15 Чтв 16:37:08 #241 №511668 
>>511212
Ты в каком году застрял, долбоеб?

Охуеваю с таких. Очередная тырпрайз-макака возомнила себя Фаулером и учит других, как нужно писать код, при этом сам не может в линк, утверждает, что он неподдерживаемое говно и предлагает на каждый чих городить отдельную функцию. Ну молодец, чо. Интересно будет посмотреть на команду твоих долбоебов, когда тебя собьет автобус.
И можете мне не перезванивать.
Аноним 09/07/15 Чтв 16:39:23 #242 №511670 
>>511664
Нет конечно. Он в посте упоминул про мвц же
Аноним 09/07/15 Чтв 16:56:56 #243 №511680 
>>511212
уважаемые господа пишут if(blabla) вместо if(blabla==true). if(blabla==false) это ж вообще хуйня какая-то.
Аноним 09/07/15 Чтв 17:11:31 #244 №511684 
>>511463
1. Окей, я почитал про пул соединений, в оракле он тоже используется, просто думал что при каждом нажатии на кнопку будет новое соединение устанавливаться.
2. Круто, конструкция из трёх вложенных using нормально работает? Не совсем говнокод?
3. Вот тут не совсем понял, листвью как-то таблицей выдаёт элементы, мне нужно чтоб как на пике, выбрал строку, состоящую из юзеркод+юзернейм, он тебе там, например, вернул юзеркод в другую форму.
Аноним 09/07/15 Чтв 17:14:36 #245 №511686 
>>511560
Посмотрел, не понял. Ангельский читаю болеелимение, а вот об код глаза спотыкаются. Может дома попробую разобраться. На Рюзке я так понимаю доков нет?
Аноним 09/07/15 Чтв 17:23:57 #246 №511693 
>>511684
>2
Нормально работает, даже шоркат есть:
using(var a = new A())
using(var b = new B(a))
{
}

>3
Листвью просто отображает список элементов. При этом можно задать темплейт для элементов. На твоем пике — листвью. Тебе просто надо разобраться с тем, как в нем задать хедер из 2х колонок и как правильно смапить данные.
Аноним 09/07/15 Чтв 17:26:25 #247 №511695 
>>511560
Верь этому. Я вот решил пол года назад, что даппер не нужен. И задача у меня слишком проста. Дык у меня теперь 1000 строк блядских (я тупой) SQL-лпши и других connection.open().
Аноним 09/07/15 Чтв 17:37:19 #248 №511700 
>>511695
Репозитории и сп не для тебя? Я не сильно знаком с даппером, но в нем же, вроде, из коробки iqueryable provider не поставляется? Т.е. все те же
>1000 строк блядских (я тупой) SQL-лпши и других connection.open()
только с обратным авто-маппингом.
Аноним 09/07/15 Чтв 17:45:00 #249 №511707 
>>511700
Яж говорю, я нуб. Напиши хоть нормально, что такое:
>Репозитории и сп
На самом деле я решил все проблемы решать в лоб, так как вообще не знал языков (да и теперь не знаю).
Аноним 09/07/15 Чтв 18:48:04 #250 №511804 
>>511707
Репозиторий изначально задумывлся как клевая фишка, которая позволяет тебе получать доступ к данным из одного места.
На деле же в 90% случаев используется конченными долбоебами как ненужный слой абстракции над ОРМ (который, если подумать, уже является репозиторием), даже если у них всего один источник данных.
Аноним 09/07/15 Чтв 19:37:52 #251 №511861 
>>511707
СП или хранимые процедуры — это сиквел код, хранящийся на стороне субд. Т.е те 1к сиквел лапши, что у тебя есть, ты мог бы вынести из кода приложения и засунуть себе в базу.
Репозиторий — абстракция над логикой доступа в данным. Он дает простой интерфейс для работы с данными на уровне бизнес логики. Никаких коннекшинов, датасетов, датаридеров и прочего говна, только сущности из предметной области.
>private IUserRepository _repository;
>...
>BusinessLogic(IUserRepository repository)
>{
> _repository = repository;
>}
>...
>IEnumerable<User> users = _repository.GetUsers(filter);
Внутри он по сути открывает соединение к бд, создает команду с сп, маппит входные параметры на параметры сп, запускает сп, получает результат и маппит результат в классы бизнес логики. Очевидно, что внутри репозитория может быть дохуя вспомогательного кода для поддержки транзакций, маппинга и пр.
Аноним 09/07/15 Чтв 20:37:28 #252 №511918 
>>511861
>>511804
Спасибо, вам за годные пояснения. Возможно в будущем посмотрю...
Аноним 09/07/15 Чтв 21:28:49 #253 №511948 
>>511861
А почему СП? Первый раз слышу, чтобы хранимки так называли.
Аноним 09/07/15 Чтв 21:31:32 #254 №511949 
>>511948
Stored procedure.
Аноним 09/07/15 Чтв 21:31:45 #255 №511950 
>>511948
сторед просиджес
Аноним 09/07/15 Чтв 21:33:08 #256 №511952 
>>511405
На XP не ставится .NET 4.5, только 4.0 (соответственно, и студия только 2010).
Аноним 09/07/15 Чтв 21:34:52 #257 №511953 
>>511918
Посмотри лучше Entity Framework.
Аноним 09/07/15 Чтв 22:07:07 #258 №511975 
гайз, нашёл задание по дереву, хз как сделать, чтобы он любую формулу разбирал в арифмитическое дерево выражений. подогрейте , если не тяжело
Аноним 09/07/15 Чтв 22:20:58 #259 №511985 
>>511975
О, скинь задания, плз.
Аноним 09/07/15 Чтв 22:29:57 #260 №511994 
>>511700
Даппер делает одну простую вещь:

conn.Query<User>("SELECT Id, Name, Email FROM Users WHERE Id=@Id", new { Id = userId } ).ToList();

В результате результат запроса мапится на список пользователей и больше ничего. Это не ебаный EF, в котором куча всякой ненужной хуиты. Если ты можешь в sql и запросы привык писать и отлаживать в консоли, то даппер для тебя.
Аноним 09/07/15 Чтв 22:34:48 #261 №511999 
>>511985
https://www.dropbox.com/s/44z579n4p4lyso1/OIT_TREE.pdf?dl=0
Аноним 09/07/15 Чтв 22:37:44 #262 №512004 
>>511975
https://en.wikipedia.org/wiki/Recursive_descent_parser
https://en.wikipedia.org/wiki/Parse_tree
Аноним 09/07/15 Чтв 22:39:55 #263 №512006 
>>511975
Это тебе надо обмазаться теорией парсинга. Если брать реальную задачу, то пишется грамматика для ANTLR и дальше оно само генерирует необходимые классы парсера.
Аноним 09/07/15 Чтв 22:44:45 #264 №512013 
>>512006
нет статейки для подробного объяснения под рукой?
Аноним 09/07/15 Чтв 22:47:51 #265 №512016 
>>512013
Terence Parr, «Language Implementation Patterns».
Аноним 09/07/15 Чтв 22:47:57 #266 №512017 
>>512013
Анон >>512004 дал ссылку на педопедию, там есть пример на С.
Аноним 09/07/15 Чтв 22:49:33 #267 №512019 
благодарю вас, котаны
Аноним 09/07/15 Чтв 22:51:08 #268 №512020 
Добрался до рефлексии
и чуть чуть подвис m.ReturnType.Name
ReturnType это свойство типа Type в классе MethodInfo объект которого это m
Откуда у него, у свойства ReturnType, берется поле Name
Разница в выводе между вызовом m.ReturnType.Name - Int32, против m.ReturnType - System.Int32
Аноним 09/07/15 Чтв 23:37:11 #269 №512061 
>>512020
ReturnType типа Type. У Type есть поле Name. Тип - typeof(System.Int32). Его имя Int32, Type.ToString() возвращает "System.Int32".
Аноним 09/07/15 Чтв 23:49:19 #270 №512070 
>>511680
Уважаемые господа не лезут с о своим ценным мнением в чужой коде стайл, даже если он говно. Допустимы обе формы, например.
Ебать, на хуйню агрятся дауны. Кажется я теперь знаю как задетектить фимозников с невьебеным самомнением.
Аноним 09/07/15 Чтв 23:52:25 #271 №512074 
>>512070
Может мне еще тебе в жопу подуть, а?
Аноним 10/07/15 Птн 00:28:45 #272 №512093 
>>511953
Обязательно. Но мне уже страшно. Я накатал хренову тонну кода, которую нужно похоронить. (а это неизбежно)
Аноним 10/07/15 Птн 00:47:26 #273 №512104 
>>512020
>Откуда у него, у свойства ReturnType, берется поле Name
Ultimate answer. Лучше в отладчике глянуть, конечно, или даже сорцы посмотреть.
https://dotnetfiddle.net/EwNsHY
Аноним 10/07/15 Птн 00:49:15 #274 №512108 
>>512104
На самом деле это хуйня переопределена в RuntimeType.
Шура 10/07/15 Птн 05:29:21 #275 №512165 
Ибота ваш шарп, и вы ебанаты. кресты сука рулят
Аноним 10/07/15 Птн 10:29:34 #276 №512235 
>>512061
Тогда глобальный вопрос.
Если что то имеет ТИП чего то, то получается что это что то - всегда объект типа чего то и имеет доступ ко всем полям методам и прочему?
Аноним 10/07/15 Птн 14:14:22 #277 №512329 
>>512235
>Если "qwe" имеет ТИП string, то получается что "qwe" - всегда объект типа string и имеет доступ ко всем полям методам и прочему?
Нахуй так сложно?
Аноним 10/07/15 Птн 15:20:13 #278 №512366 
>>512235
Хуевый какой то вопрос. Type - класс, экземпляры которого отображают типы в сборке.
Вот ты намутил класс Foo { public int f; }. typeof(Foo) - это инстанс класса Type, с Name = Foo, Fields = MemberInfo[] { ... f ... }.
typeof(Int32) - это инстанс класса Type, с Name = Int32 и другим набором полей, методов, модификаторов.

Через рефлекшны ты можешь в рантайме узнать, какие методы есть у класса и вызвать их, однако это нахуй не надо, если ты заранее знаешь, какие есть методы там. Тогда ты вызываешь их прямо как они есть.
Аноним 10/07/15 Птн 17:52:51 #279 №512455 
>>507552
> в тредах про байтоеблю и ентерпрайз
Есть я дно в математике, то в сишарп можно не пытаться?
Аноним 10/07/15 Птн 18:12:30 #280 №512466 
>>512455
Я тебе больше скажу, вообще в программирование.
Аноним 10/07/15 Птн 18:36:52 #281 №512480 
>>512455
Если ты не даун, то смотря в какой математике. Если в тензорном анализе, то это нормально: мало кто такое слово вообще слышал. Если в дискретной математике, то уже хуже, но не смертельно. Если в арифметике, то да, можно не пытаться.
sageАноним 10/07/15 Птн 23:47:08 #282 №512676 
>>512480
А как можно быть дном в дискретной математике?
Аноним 10/07/15 Птн 23:54:33 #283 №512681 
>>512676
В крестовый тред загляни, там таких 100%
Аноним 11/07/15 Суб 13:13:35 #284 №512861 
14366096151240.jpg
Посоны, никто не в курсе, как создаются такие подписи к функциям?
Нашел такой вариант
/// <summary>
/// Пояснение к функции
/// </summary>
Вопрос: нельзя или сделать это как-нибудь через атрибуты? Мне просто не очень нравятся эти теги внутри кода лол.
Аноним 11/07/15 Суб 13:20:42 #285 №512866 
>>512861
Это единственный способ.
Аноним 11/07/15 Суб 17:34:09 #286 №512961 
>>511190
>>511190
>>512861
Ну там минус можно нажать.
[затейник@почта.рф] ВасяПрогер 11/07/15 Суб 18:56:01 #287 №512987 
14366301612910.jpg
Ананасы, есть у кого-нибудь годная книжка по ASP.NET MVC 5? В гуголе только платные лежат.
Аноним 12/07/15 Вск 17:39:17 #288 №513430 
Подскажите, есть ли в WF текст бокс с автоподстановкой, отображением найденых значений по вводимым символам.
И еще нужно создавать коллекцию для автоподстановки к примеру из txt файла. Может кто нить ссылку дать на пример парсинга из txt.
Аноним 12/07/15 Вск 18:04:23 #289 №513445 
14367134634180.jpg
Как в Windows Store приложении сделать так, чтобы содержимое GridView нормально выглядело на любом дисплее? Нормально всмысле чтоб элементы занимали все свободное место внутри контрола и чтоб при переходе на дисплей побольше увеличивалось кол-во элементов в строке/столбце.
Аноним 12/07/15 Вск 18:45:13 #290 №513470 
14367159139000.png
Я тут заметил что для WinRT стал доступен EF в NuGet'e. Как с ним совладать? Надоело на недружелюбной Portable Class Library for SQLite сидеть.
Аноним 12/07/15 Вск 22:25:31 #291 №513546 
>>513445
> GridView
А он и должен выглядеть как ты говоришь. Задай элементам внутри конечные размеры, может в этом проблема.
Ну или попробуй еще поебаться с конкретными панелями
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<WrapGrid Orientation="Horizontal"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
Аноним 12/07/15 Вск 23:22:08 #292 №513594 
>>513546
>Задай элементам внутри конечные размеры, может в этом проблема.
Я не могу подобрать какое-либо конкретное значение чтобы список выглядел нормально на разных дисплеях. Обычно на одном дисплее выглядит норм, а на каком-нибудь другом хрень с кучей свободного места или что-то вроде того.
Аноним 13/07/15 Пнд 03:04:15 #293 №513666 
Как там в жопе с xamarian'ом дела обстоят? Хеловорд хоть можно написать?
Аноним 13/07/15 Пнд 04:07:02 #294 №513676 
>>507104
Простой вопрос :
Хочется стать программистом с целью заработать денег/свалить специалистом за границу.
Долго ли учить C#, если не учил программирование в учебных заведения, но есть некоторые ИТ навыки(веб разработка, опыт работы в техподдержке)?
Аноним 13/07/15 Пнд 04:11:49 #295 №513678 
>>513666
>Хеловорд хоть можно написать?
Можно, для остального неюзабельно.
>Долго ли учить C#
Учить пол года до джуна в пидорахии, потом еще года 4 до уровня, при котором ты будешь иметь шанс свалить.
Аноним 13/07/15 Пнд 04:22:42 #296 №513681 
>>513678
А какие основные направления есть в C#?
Т.е. я к тому что язык этот много где используют. В том же XNA который помер и в Unity/UE прочих игровых движках.
Но на этом мои знания где используют кончаются.

И ещё вопрос :

Может прозвучит глупо но встречал писанину, что C++ рулит, а C# не то.
Можно в двух словах что чаще где используется или что адекватно, а что устарело.
Аноним 13/07/15 Пнд 04:28:24 #297 №513684 
>>513681
Сорта срачей. Плюсы могут в скорость чуть больше чем шарп, но это все время грозятся исправить. Суть в том, что если ты мудак, то на чем ни пиши, будет работать хуёво. Ещё шарп в отличие от вышеупомянутых может в веб.
Аноним 13/07/15 Пнд 04:51:34 #298 №513690 
>>513684
Спасибо, хотя больше вопрос не к тому что круче, а что ныне востребованей и где легче и лучшую работу найти.
Аноним 13/07/15 Пнд 09:15:45 #299 №513730 
>>513594
Хинт: на больших дисплеях любой метро интерфейс превращается в говно.
Аноним 13/07/15 Пнд 11:19:52 #300 №513756 
14367755929560.png
Посоны, почему ебаные чекбоксы по дефолту не увеличиваются?

В общем пикрелейтед, можно как-то через стили задать для ВСЕХ чекбоксов, чтобы они подгонялись под размер или как-то задать размер фиксировано, при увеличении размера компонента CheckBox, сами окошки не увеличиваются, приходится ставить такой костыль, но это еболайство какое-то, у меня таких чекбоксов больше двух сотен. Можно всем задать такое?
Аноним 13/07/15 Пнд 11:26:34 #301 №513758 
>>513681
> В том же XNA который помер и в Unity/UE прочих игровых движках.
В unity только шарпообразный синтаксис.
> Может прозвучит глупо но встречал писанину, что C++ рулит, а C# не то.
Си компилится сразу в исполняемый код. Поэтому быстрее в разы. Может в прямой доступ к чему угодно, например к регистрам процессора. Подходит для написания драйверов и процего низкоуровневого говна. Нетерпим к рукожопости. Если ты рукожопый быдлокодер, то твой код на Си уронит систему и будет состоять из утечек памяти чуть более чем весь.
Шарп компилится в момент запуска на конкретном компе на лету, поэтому медленнее. Зато Шарп делает твою работу за тебя убивая всю ненужную хуиту, что ты посоздавал. Поэтому считается быдлоусточивым, как и хотел микрософт. Драйвер ан нем написать так же трудно, как написать операционную систему на html.
Аноним 13/07/15 Пнд 11:32:29 #302 №513762 
Сууууquааа, выручайте, я весь мозг себе уже выебол чому не работает.
При таком коде http://pastebin.com/jz53nC8b выдает ArgumentOutOfRangeException, если пытаться запихнуть через .GetRange(a,b), то выдает ArgumentException "Смещение и длина вышли за границы массива или значение счетчика превышает количество элементов от указателя до конца исходной коллекции.", но каким ебанным хуем это может быть если a = 0, а b = list1.count (только в данном случае, вообще планируется, что a и b могут быть любым куском списка, но в конкретном случае это весь список.).
Аноним 13/07/15 Пнд 11:37:37 #303 №513765 
>>513762
Весь код покажи.
Аноним 13/07/15 Пнд 11:45:54 #304 №513769 
>>513765
Зочем?
Вот сейчас специально проверил, скопировав туда весь ебанный список через list2=list1 - все-равно не работает, падла этакая, хотя списки абсолютно одинаковые.
Аноним 13/07/15 Пнд 11:48:18 #305 №513773 
>>513769
А вот сейчас взял оригинальный список - с ним все заебись сработало.
Аноним 13/07/15 Пнд 11:57:00 #306 №513777 
>>513769
> Зочем?
За тем, что из приведенного куска нихуя непонятно.
Что такое list1? Что такое list2? Какие у них размеры перед вызовом этого куска кода? Тут дохуя мест где ты мог наебаться, но ты их не показываешь. Вместо этого ты показал маленький кусочек кода, написанный совершенно верно, но кидающий искллючения из-за входных данных.
Аноним 13/07/15 Пнд 12:03:23 #307 №513779 
>>513756
>у меня таких чекбоксов больше двух сотен
>юзабилити
Аноним 13/07/15 Пнд 12:03:29 #308 №513780 
>>513777
Ну смари: они оба list<string>, перед этим куском list2 очищается через list2.clear(), в list1 есть некоторое количество элементов, оно там просто гарантированно есть, т.к. я проверял его отдельно, потом берется определенный кусок list1 и копируется в list2, кусок этот точно находится в диапазоне списка, т.к. он находится программно по нему, однако, если попытаться применить эти границы таким способом как в коде, то все - пиздец нихуя не работает.
Аноним 13/07/15 Пнд 12:15:26 #309 №513783 
>>513780
.Skip(a).Take(b-a)
Аноним 13/07/15 Пнд 12:36:16 #310 №513793 
Объявляю строку str:
string str = "111";
во время дебага (хоть через вотч, хоть просто так) обнаруживаю, что
>The name 'str' does not exist in the current context
ЧЯДНТ?
Аноним 13/07/15 Пнд 12:38:52 #311 №513794 
>>513793
Задал её локально и пытаешься заюзать её в другом месте например.
Аноним 13/07/15 Пнд 12:40:06 #312 №513795 
>>513793
>>The name 'str' does not exist in the current context
У тебя случайно не такая конструкция
if(some)
{
string str = "111";
}
else
{
string str = "112";
}
Аноним 13/07/15 Пнд 12:50:07 #313 №513805 
>>513779
Ммм? Больше 200 приводов, каждый привод контролируется чекбоксом, каждый привод запускается отдельно или в группе, выбираем какие привода запускать или группу приводов, слева от чекбоксов их реальное состояние.
Аноним 13/07/15 Пнд 13:08:48 #314 №513824 
>>513794
>>513795
Я её вызываю в обработчике события "нажатие кнопки". Брейкпоинт ставлю тоже в обработчике события (там ещё много всего, но оно связано с элементами формы. Оно корректно выполняется).

>>513795
Лол.
Аноним 13/07/15 Пнд 13:13:05 #315 №513826 
>>513824
Да полный код покажи. С присвоения и до использования. Очевидно, что ты объявляешь внутри чего-то, а используешь снаружи.
Аноним 13/07/15 Пнд 13:14:55 #316 №513827 
>>513826
Нет никакого использования, я пытаюсь вотчить там же, где объявляю. Т.е., да, даю ей значение "111" и тут же проверяю, всунулось ли оно туда.
Аноним 13/07/15 Пнд 13:20:31 #317 №513833 
>>513827
>я пытаюсь вотчить там же, где объявляю.
Тогда все верно, ошибки нет, он тебе правильно выдает.
Аноним 13/07/15 Пнд 13:22:11 #318 №513834 
>>513833
Да он в любом случае мне правильно выдаёт, он же машина. Но почему так? И как тогда смотреть значения в подобных ситуациях?
(Например, более сложный вариант, когда string str= combobox.SelectedValue.ToString(); какое-нибудь)
Аноним 13/07/15 Пнд 13:23:23 #319 №513835 
>>513834
>я пытаюсь вотчить там же, где объявляю.
>И как тогда смотреть значения в подобных ситуациях?
Нужно смотреть ПОСЛЕ присваивания.
Аноним 13/07/15 Пнд 13:23:52 #320 №513836 
>>513793
public string str = "111";
Аноним 13/07/15 Пнд 13:26:59 #321 №513839 
>>513835
НО в области ее видимости, забыл добавить.
Аноним 13/07/15 Пнд 13:27:37 #322 №513840 
>>513835
А если я ставлю брейкпоинт на следующую после присваивания строку?

>>513836
>public string str = "111";
В обработчике?

Аноним 13/07/15 Пнд 13:31:25 #323 №513844 
>>513840
Ты мне покажи что конкретно у тебя не работает. Скрин дай.
Аноним 13/07/15 Пнд 13:32:54 #324 №513847 
>>513840
Смотря что на следующей строке и что ты вообще смотришь, у тебя может быть ДВЕ переменных с одинаковым названием, одна глобал другая нет, вообще блядь ты заебал код уже покажи и ошибку, тут вангователи собрались что ли.
Аноним 13/07/15 Пнд 13:34:55 #325 №513848 
14367836952590.png
Аноним 13/07/15 Пнд 13:36:06 #326 №513849 
>>513805
Ты какую-то дичь пилишь. Куча явно выставленных значений высоты и ширины, куча ссаных однотипных контролов. Юзай листвью или создай свой юзерконтрол с темплейтом для элементов и забиндь на него коллекцию своих приводов. У меня от этой лаба1 припекает. Алсо:
http://stackoverflow.com/questions/11074072/how-to-make-viewbox-stretch-inside-a-grid-cell-with-a-columnspan
http://www.codeproject.com/Articles/84630/WPF-Customize-your-Application-with-Styles-and-Con
Аноним 13/07/15 Пнд 13:38:42 #327 №513853 
>>513849
>листвью
CheckedListBox же.
Аноним 13/07/15 Пнд 13:49:05 #328 №513863 
>>513681
- asp mvc
- web/soap/win сервисы
- unity
- Хотелось бы desktop написать, но очень уж редко стал встречаться

Остальное мертво.
>>513690
связка Asp mvc/angular
Аноним 13/07/15 Пнд 13:53:46 #329 №513865 
14367848265840.jpg
Поясните криворукому.Почему вылетает ?
Аноним 13/07/15 Пнд 14:03:10 #330 №513871 
14367853909970.png
>>513848
Ты release отлаживаешь? пикрилейтед

>>513865
Ты вообще дичь написал. Нахуя ты у строки вызываешь статическиq метод класса Program?
Аноним 13/07/15 Пнд 14:03:42 #331 №513872 
>>513783
Error 1 Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<string>' to 'System.Collections.Generic.List<string>'. An explicit conversion exists (are you missing a cast?)
Аноним 13/07/15 Пнд 14:04:42 #332 №513873 
>>513872
ToList() допиши, мань. Че такой несамостоятельный?
Аноним 13/07/15 Пнд 14:05:07 #333 №513874 
>>513871
Да, релиз. В чём тут разница?
Аноним 13/07/15 Пнд 14:06:12 #334 №513875 
>>513873
Ну ёбана, я просто уже заебался с этой хуйней, манюш. Спс.
Аноним 13/07/15 Пнд 14:06:20 #335 №513876 
>>513874
В релизе оптимизации идут. Т.е. на том пикрилейтеде комплайлер выпилил нахуй неиспользуемую строку.
Аноним 13/07/15 Пнд 14:07:07 #336 №513877 
>>513876
Спасибо большое, теперь всё ясно, буду знать.
Аноним 13/07/15 Пнд 14:41:21 #337 №513899 
>>507104
что блядь ?
Аноним 13/07/15 Пнд 18:00:05 #338 №514008 
14367996058860.jpg
У меня, наверное, не по теме вопрос.
При щелчке правой кнопкой мыши по папке вылезает диалог, я хочу чтобы в списке оказался вызов моей программы.
Это очень сложно сделать? И в каком направлении гуглить?

>>513865
Для вызова статического метода объект не нужен.
Ты вызываешь b.concstr объект_класса.функция(), а нужно Program.concstr() имя_класса.функция()
Аноним 13/07/15 Пнд 18:08:59 #339 №514011 
>>514008
g: add entry in windows context menu
Вроде только запись в реестр добавить и магия сработает.
Аноним 13/07/15 Пнд 18:41:57 #340 №514023 
>>514008
Для начала:
http://www.howtogeek.com/107965/how-to-add-any-application-shortcut-to-windows-explorers-context-menu/

Потом:
http://blogs.msdn.com/b/oldnewthing/archive/2006/12/18/1317290.aspx
http://habrahabr.ru/post/177469/
Если ты немного крестоблядь, то в комментах есть ссылка на руководство с крестами. Или либу готовую нагугли, типа: https://sharpshell.codeplex.com/
Аноним 13/07/15 Пнд 18:50:26 #341 №514030 
>>514011
Спасибо. Действительно все очень просто.

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

Аноним 13/07/15 Пнд 20:08:45 #342 №514060 
Лал, написал программу, которая переименовывает все изображения в папке ну и вызывается щелчком правой кнопки мыши.
Хотя это и шиндоус с успехом делает.
Теперь хочу добавить в эту прогу функцию, которая бы удаляла дубликаты изображений. Правда пока понятия не имею как ее реализовать.
Самый простой вариант: разбиваем изображение на сотню квадратиков, считаем средний цвет и сравниваем таким образом. Дубликаты полученные простым масштабированием должны отсеиваться.
Аноним 13/07/15 Пнд 20:46:59 #343 №514081 
>>514060
Не на сотню. Достаточно 3x3 квадратиков.
Сбрасывай средние цвета в txt-файлы рядом с изображениями, т.к. цвета считаются довольно долго.
Это только кажется, что точек мало, а оказалось...
Аноним 13/07/15 Пнд 21:07:12 #344 №514097 
>>514060
> Дубликаты полученные простым масштабированием должны отсеиваться.
При сравнениии картинок приводишь их к одному размеру.
Аноним 13/07/15 Пнд 22:45:38 #345 №514142 
14368167382400.png
>>514097
Не нужно, 3x3 квадраты это учитывают, у него же средний цвет.
Аноним 14/07/15 Втр 01:12:47 #346 №514221 
14368255670560.png
пытался поставить vs 2015 , установка встала, я ее вынес нахуй через диспетчер. Потом еще пару раз пытался накатывать (оказалось проблема в антивирусе лол) всегда какая нить хуйня вылезала. Мне теперь придется переустанавливать венду? или можно вилкой dependencies подчистить? Алсо, поставил ОмниШарп на линупсе, но как то не доставляет.
Аноним 14/07/15 Втр 03:36:02 #347 №514241 
>>514221
>2015
> антивирус
> не может установить программу
Ну всё правильно, в принципе
Аноним 14/07/15 Втр 09:51:47 #348 №514291 
>>507104
Ну короче, распишите нюфагу:
1)Может ли шарп в игры на андроид
2)Хотя бы на айос
3)Есть ли от него польза в вебе
4)Нужно ли ебатся ради многоплатформенности
5)Можно ли запилить игру в стиме
Ах да, конечно все это можно, другое дело что можно ли без мозгоебства
азаза низзя ява-хипстор обоссал старперов
Аноним 14/07/15 Втр 12:04:10 #349 №514323 
>>514291
1) Да
2) Да
3) Да
4) Ситуативно
5) Террария
Можно без мозгоебства.
явадети соснули
Аноним 14/07/15 Втр 12:15:22 #350 №514331 
>>514291
1. Может, но не нужет (xamarin);
2. см. п. 1;
3. да;
4. откуда я, блять, знаю? Может нужно, а может и нет, от проекта зависит;
5. ...да, даже на пехтоне можно сделать игру и закинуть в стим.
>азаза низзя ява-хипстор обоссал старперов
тян кек сас лал хика битард тнн
Аноним 14/07/15 Втр 15:09:51 #351 №514406 
Шарпаны! Очень срочно!!!

this.listView1.Columns.Add(new ColumnHeader() { Text = "Process", TextAlign = HorizontalAlignment.Right });
this.listView1.Columns.Add(new ColumnHeader() { Text = "PID", TextAlign = HorizontalAlignment.Center });


for (int i = 0; i < processes.Length; i++)
{
ListViewItem lvl = new ListViewItem(processes.ProcessName);
lvl.SubItems.Add(processes.ProcessName);
lvl.SubItems.Add(processes.Id.ToString());
listView1.Items.Add(lvl);

}

Уже часа пол понять не могу, почему ебучий лист вью вне цикла не может ИД процесса показать. И в ПИД и в ПРОЦ. НЭЙМ показывает название процесса. В цикле всё показывает, только кто бы мог подумать создаётся для каждого процесса новый столбец пустой.
Аноним 14/07/15 Втр 15:26:37 #352 №514425 
Анонсы, чому не работат?
http://pastebin.com/n3SEVK25
Аноним 14/07/15 Втр 15:36:05 #353 №514431 
>>514425
Алсо, какого-то хуя .skip,take перестала работать в принципе, хотя вчера все отлично вырывало.
Аноним 14/07/15 Втр 15:38:32 #354 №514435 
>>514425
>>514431
Отбой тревоги, у меня каким-то непонятным образом непустой лист обнуляется.
Аноним 14/07/15 Втр 15:47:55 #355 №514440 
Вопрос на мильен нефтей: какого хуя очищается list1?
http://pastebin.com/XVD3mUBf
Аноним 14/07/15 Втр 16:01:46 #356 №514446 
>>514440
Оба листа на один и тот же объект смотрят? ReferenceEquals попробуй на них.
Аноним 14/07/15 Втр 16:14:33 #357 №514453 
>>514446
Это как? Я просто немного нюфаг.
Вообще, у меня оба листа прописаны как глобальные переменные и в некоторых моментах куски первого листа или он целиком копируется во второй.
Аноним 14/07/15 Втр 16:22:01 #358 №514459 
>>514453
>>514446
В общем заменил выше по коду list2 = list1 на list2 = list1.skip(0).take(list1.count).tolist(); и вроде бы стало по-нормальному очищать.
Но вообще, чому такая хуйня случилась?
Аноним 14/07/15 Втр 16:25:22 #359 №514461 
>>514459
Ссы-лоч-ки
Аноним 14/07/15 Втр 16:28:49 #360 №514462 
>>514461
Хуевенько. А если с интами так сделать: int a =0, b=1; a=b; они так же сцепятся?
Аноним 14/07/15 Втр 16:40:17 #361 №514469 
>>514406
Бумп!!!!
Аноним 14/07/15 Втр 17:06:27 #362 №514486 
>>514459
>.Skip(0).Take(list.Count)
Нахуй так жить. Хватит, просто .ToList().
С интами так не будет, потому что ValueType. Беги скорее читать книгу.
Аноним 14/07/15 Втр 17:07:39 #363 №514487 
>>514486
>, хватит просто
поправил
Аноним 14/07/15 Втр 17:13:06 #364 №514490 
>>514486
>немного нюфаг
Же. Какую книгу-то?
Аноним 14/07/15 Втр 17:16:04 #365 №514492 
>>514462
rtfm.
var l1 = new List<Int32> {1, 2, 3};
var l2 = l1;

l1.Clear();
l1.Count // 0
l2.Count // 0

var a = 1;
var b = 2;
a = b;

b = 0;
b // 0
a // 2

С другой стороны.
unsafe
{
int a = 1;
int b = 2;
var pa = &a;
var pb = &b;

pa // 1
pb // 2

pa = pb;
pb = 0;

pa // 0
*pb // 0
}

Не быть тебе крестоблядью.
Аноним 14/07/15 Втр 17:18:24 #366 №514493 
>>514492
Ах, да.
http://pastebin.com/FiBhk8c6
Аноним 14/07/15 Втр 17:32:54 #367 №514496 
14368843748920.jpg
>>514459
> skip(0).take(list1.count).tolist();
Аноним 14/07/15 Втр 17:49:17 #368 №514504 
>>514496
Работает же ведь.

Поясните мне лучше за такую хуйню - чому math.pow при возведении дробного числа в целую степень выдает 0
Аноним 14/07/15 Втр 17:57:40 #369 №514509 
>>514504
Сам нашол.
Аноним 14/07/15 Втр 18:39:35 #370 №514532 
14368883758600.jpg
14368883758641.jpg
14368883758662.jpg
14368883758863.jpg
Ура, у меня получилось. Я прям так счастлив, наконец-то написал хоть сколько-нибудь полезную программу, а не калькулятор какой-нибудь.
Переименовывает файлы и удаляет дубликаты я прост люблю паки по разным актрисам собирать лол.
Изображение как и советовали разбивал на 9 частей, равенство брал не совсем точное.
В общем, два прикрепленных изображения программа сочла одинаковыми как и планировалось. Ну можете посмотреть насколько одно из изображений шакальное, плюс я туда ещё шумов добавил и надпись небольшую.
Даже работает довольно быстро копипастнул с хабра unsafe обработку растровых изображений с помощью указателей и BitmapData, по времени как копирование папки эквивалентного размера.
Алсо, мне кажется, progressBar в моем приложении не засекается принтскрином. Это вообще возможно? Когда я скринил экран, он вроде был.

Ебать я простыню накатал, извиняйте.
Аноним 14/07/15 Втр 18:47:49 #371 №514542 
>>514490
По крестам.
Я серьезно.
Аноним 14/07/15 Втр 18:52:13 #372 №514543 
>>514532
Ты дубли сразу удаляешь или логируешь и спрашиваешь? Можешь ли ты математически доказать, что два изображения являются идентичными, если по твоему алгоритму степень их совпадения больше n%?
Аноним 14/07/15 Втр 19:00:06 #373 №514547 
>>514542
The C++ Programming Language
Аноним 14/07/15 Втр 19:28:28 #374 №514556 
>>514532
сорсцы бы...
Аноним 14/07/15 Втр 19:28:32 #375 №514557 
14368913121060.jpg
>>514543
Сразу удаляю. При отладке выводил и спрашивал, какое изображение стоит удалить, потом убрал.

>Можешь ли ты математически доказать, что два изображения являются идентичными, если по твоему алгоритму степень их совпадения больше n%?
Пфф, нет, конечно. Вообще никакая степень совпадения не расчитывается. Использовал простейший алгоритм. изображение делится на 9 частей, в каждой области считается средний цвет, если у двух изображений разница меньше определенного значения, то они считаются одинаковыми Алгоритм годится только для того, чтобы распознавать изображения разных размеров, либо совсем одинаковые.
Для моих целей этого достаточно.
А вообще, поиск похожих изображений, как мне кажется, очень сложная и довольно обширная тема, но я же сейчас не матаном занимаюсь, а программированием.
Аноним 14/07/15 Втр 19:33:01 #376 №514560 
Есть итт заинтересованные в работе?
Самарская область нуждается в разработчике (С#: мобильные приложения на андроид и иос)
Зарплата обсуждается, но, конечно, не как в этих ваших ДС, тысяч 40-50
Аноним 14/07/15 Втр 19:35:57 #377 №514562 
>>514560
На ксамариане штоль?
hui !iMRgr/Vi52 14/07/15 Втр 19:39:34 #378 №514565 
hui
Аноним 14/07/15 Втр 19:48:31 #379 №514570 
>>514562
Так точно.
Аноним 14/07/15 Втр 20:19:06 #380 №514594 
>>514560
Лол. Вот какой смысл работать на рузке наебщика за мифические 40к реально ты заплатишь 5к, а потом будешь долго нудеть "вот тут еще доработай и тогда все заплачу", когда ту же штуку баксов можно заработать на фрилансе?
Аноним 14/07/15 Втр 20:25:46 #381 №514598 
>>514594
Тебе придется без каких либо гарантий торговать свой жопой, соревнуясь при этом с такими же шлюшками?
Аноним 14/07/15 Втр 20:57:27 #382 №514620 
>>514594
В том, что с твоими говнопознаниями языка уровня Laba1.sln и VasianLiba.dll ты не нужен во фрилансе, а в какой-нибудь конторке за еду сможешь работать?
Аноним 14/07/15 Втр 21:14:06 #383 №514637 
>>514594
Крупная компания, все гарантии, ни одной истории наеба с зп, ШТАБИЛЬНОСТЬ, вот это вот все.
Аноним 14/07/15 Втр 21:17:39 #384 №514639 
>>514598
Как же вы заебали со своими стереотипами.
Торговля жопой это у тех кто сайтики за 100$ клепает, лендинги верстает и прочая мелкая, быстрая работа.
c#- это либо тыртырпрайз, либо жирносайт на 3000 тыс человекочасов.
Встречаются конечно работы вида "пофиксить кнопочку", но их можно игнорировать.

Фриланс на c# - это как равило самая обычная гребаная работа, с митингами, со спринтами, с вечными проектами. Подписываешь nda или даже контаркт и работаешь по 8 часов в день месяц, два, год, 10 лет.
Какие гарантии? Работаешь хорошо, финансирование у проекта есть, кто тебя попрет оттуда?
Где жопой тороговать? Раз в год, когда проект меняешь от скуки? Ну так поиск работы в офисе - такая же торговля жопой, только сложнее.

Нету у работы в офисах вообще никаких мифических плюсов в виде штаблтности, одинаково легко вас выпрут и из офиса и из муриканского проекта, если хуево работать.
Аноним 14/07/15 Втр 21:45:39 #385 №514653 
14368995395710.png
АНОН

Подбрось типичных тестовых заданий для дотнета типа пикрилейтедтолько там на жаву. Ну или каких-нибудь просто типичных задач, которые нужно решать.
Я просто только так обучаюсь
Аноним 14/07/15 Втр 21:48:57 #386 №514659 
14368997376840.png
>>514653
Мне недавно вот такое приходило
Аноним 14/07/15 Втр 21:54:23 #387 №514663 
>>514659

Спасибо, анончик, а то я сума схожу без работы сидеть.

И как, сделал, кстати? Сколько вообще на такое дают?
Аноним 14/07/15 Втр 21:56:11 #388 №514666 
>>514663
Сделал, но пока эти пидоры проверяли, я уже уже другую работу нашел.
Давали неделю на это, но сами пропали на две.
Аноним 14/07/15 Втр 21:58:11 #389 №514667 
Алсо еще такой вопрос, насколько трудно перестроится на шарп с джавы? Я слыхал там из сильно отличающегося только динамическая типизация ну и синтаксис чуть иной. Как там дела с фреймворками и апишками для веба вообще?
Аноним 14/07/15 Втр 21:58:44 #390 №514668 
>>514639
И как это выглядит с точки зрения законодательства? Ладно в РФ можно заключить контракт, который так же идет в соответствии с тк, а что будешь делать с удаленной работой на зарубежную компанию? Нет страховки, не отпусков, нет казенного имущества, есть ндфл, так?
Аноним 14/07/15 Втр 22:01:03 #391 №514669 
>>514666

Это для джуна такое дают? А то для джуна как-то дохуя всего слишком. Я про ангуляр вообще пару месяцев назад только услышал, например.
Там же типа sql server express должен быть установлен и на нем написана бд, да? Бля, мне mysql как-то больше по душе, он не столько жрет при всем при том, но видимо, на дотнете его использовать не дадут
Аноним 14/07/15 Втр 22:06:56 #392 №514672 
>>514667
Знаю нескольких людей которых и туда и обратно перекатывались, разница есть, но минимальная, по фреймворкам тоже.
Например тот же hibernate/nhibernate, jsp/asp.net web forms ну итд

>>514668
Никак это не выглядит, тебе высылают в электронном виде или по dhl бумажки, ты их подписываешь и высылаешь обратно. Работаешь работу, тебе на счет падают доллары, я вообще уже 2,5 года тупо на счет обычный карты сбербанка принимаю деньги, налогов никуда не плачу.

>Нет страховки, не отпусков, нет казенного имущества, есть ндфл, так?
Ужас то какой, страховки и отпусков нет, проперженного кресла за 800 рублей нет. Ну работай за 40 тыщ рублей в самаре.
Если мне нужен отпуск, я просто пишу что следующую неделю/2/3 меня не будет, а купить всю технику для работы я и сам в состоянии.

>>514669
Нет, это на мидла (22$ в час предлагали)
Да, sql server.
mysql как сам по себе говно, так и с .net не особо дружит, например code first с ef не работает на нем.
Так то мне postgre больше по душе, но в мире ms любят sql server, но вообщем он плох.
Аноним 14/07/15 Втр 22:14:26 #393 №514676 
>>514672

>hibernate

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

>на мидла

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

>postgres

Лол, у меня все знакомые-рубирожденные на нем пишут. Ну а вообще я пытался избежать sql server потому что однажды мне пришлось писать и поднимать сервер где на нем бд была написана. Как для большой бд он был достаточно неплох и удобен, но когда для небольшой вообще непонятно нахрена такую бодягу тяжелую использовать, лучше уж nosql какой-нибудь вообще.
Аноним 14/07/15 Втр 22:17:07 #394 №514681 
>>513783
Зачем нужен .skip? Тэйком разве сразу не вырывает нужный кусок?
мимокрокодил
Аноним 14/07/15 Втр 22:21:28 #395 №514682 
>>514676
>Вообще-то деревянная параша
Есть пара кейсов, которые провернуть на ef невозможно, но вообщем согласен.
Я предпочитаю большую часть делать на ef, а узкие места выносить в sp или на dapper переписывать

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

>такую бодягу тяжелую
Я бы не сказал что он тяжелее postgres, та же тонна сервисов.
>nosql
Здесь ограничение не на размер данных, а на структуру скорее.
nosql удобен, но имхо не как primary хранилище, самый сок - всякие скомпилированые view данные табличные кешировать чтоб все работало быстро и четко.

>>514681
Просто Take без Skip отсчитает кусок от 0 позиции.
Аноним 14/07/15 Втр 22:28:13 #396 №514687 
>>514682
В тейке же задается стартовый элемент и количество сколько нужно вырвать
Аноним 14/07/15 Втр 22:31:15 #397 №514690 
14369022759440.png
>>514687
Мы же про обычный linq?
Нет, у take только 1 вариант с одним параметром, с двумя нет.
Аноним 14/07/15 Втр 22:32:08 #398 №514691 
>>514690
Ага, чего-то я в глаза ебусь, просто у меня уже утро.
Аноним 14/07/15 Втр 22:34:28 #399 №514692 
>>514682

Ок, спасибо, анон, все как надо пояснил. И вот еще вопрос:
Какие типичные тесты/вопросы на собеседовании для джунов по этому делу? Всякие ололо-фибоначчи, факториалы, массивы, вот это все? Или там сразу к делу спрашивают что да как про шарп знаю?
Аноним 14/07/15 Втр 22:41:25 #400 №514700 
>>514692
>Какие типичные тесты/вопросы на собеседовании для джунов по этому делу?
На джуна будут спрашивать примерно такое: что такое .net, расскажи про coreclr, про gc, чем отличается interface от абстрактного класса, какие были версии .net и что интересного вводили, что такое linkedList, попросят какую-нибудь простую задачку на ооп решить, базу sql - какие join бывают.
Вообщем можешь загуглить "c# junior developer questions" и результат будет не далек от правды.
>фибоначчи, факториалы
Такого не встречал никогда, и скорей всего никогда не спросят, никакого отношения к работе оно не имеет.

На мидлов сеньров- такой фигней не страдают, тупо с умным еблом выслушивают что ты до этого делал и задают 1-2 архитектурных вопроса.
Аноним 14/07/15 Втр 22:49:42 #401 №514703 
>>514700

Ок, спс, анон, пойду тогда пойду читну всякой теории чтоб по-умному ее излагать да задачки потренеруюсь порешать.
Аноним 14/07/15 Втр 23:49:19 #402 №514729 
>>514700
>чем отличается interface от абстрактного класса
А чем?
Приходит в голову только
1) Интерфейсы не содержат полей с данными
2) Классы могут наследовать множество интерфейсов.
Аноним 15/07/15 Срд 00:03:46 #403 №514736 
>>514700
>На мидлов сеньров- такой фигней не страдают
Лол, не собеседовался ты в лидерах рынка. В каком-нибудь епаме строго наоборот: джуниора спрашивают за архитектуру, синьора с 10 годами опыта заставляют написать на бумажке переворот строки.

>>514729
Интерфейс - это тупо декларация методов, подсказка компилятору "у класса X должны быть методы A,B,C, проверь блеать". Абстрактный класс занимает место в памяти, только компилятор не даст создать его объект на самом деле можно через IL. Нахуя в сишарп вообще добавили абстрактные классы - сие неведомо, на практике они не используются.
Интерфейсы не наследуют, там нечего наследовать - данных-то нет. Наследуют классы, а интерфейсы реализовывают.
Аноним 15/07/15 Срд 00:09:41 #404 №514740 
>>514736

Интерфейс это способность объекта или принадлежность к определенной категории (еще иногда говорят контракт).

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

> Интерфейсы не наследуют,
В PHP наследуют, почему нет? Если интерфейс это набор требований то его можно расширять.
Аноним 15/07/15 Срд 00:21:25 #405 №514748 
>>514659
Нихуя себе! Тут работы часов на 40. Надеюсь, они платят минимум $30/h, иначе пусть пройдут нахуй с такими заданиями.
Аноним 15/07/15 Срд 00:22:27 #406 №514749 
>>514736
Что значит "абстрактный класс занимает место в памяти"?
Ты хочешь сказать, что если я напишу object b, то под b по дефолту выделится какая-то память?

>>514740
Ну он меня правильно поправил.
Говорят не "класс наследует интерфейс", а "класс реализует интерфейс". Но одни интерфейсы могут наследовать другие, это да.
Аноним 15/07/15 Срд 00:30:21 #407 №514750 
>>514749
>Что значит "абстрактный класс занимает место в памяти"?
То и значит. В дотнете у каждого объекта есть служебные данные, подробности смотри у Рихтера. Объект пустого класса class Foo {} все-равно сожрет сколько-то там байт памяти, хоть в нем самом никаких полей нет.
Аноним 15/07/15 Срд 00:34:15 #408 №514752 
>>514749
Интерфейсы не наследуют, они расширяют. Наследуются данные, а в интерфейсе никаких данных нет.
Аноним 15/07/15 Срд 00:39:14 #409 №514754 
Абстрактный класс может иметь поведение, а интерфейс - нет, этого должно хватить.
sageАноним 15/07/15 Срд 00:51:42 #410 №514755 
>>514676
> Вот кстати, можно пропустить джуна и сразу пойти на мидла?
Некоторые ребята с универа с ходу на первую работу мидлом устраивались, но я хз что за конторы.
Аноним 15/07/15 Срд 00:52:05 #411 №514756 
14369107255000.jpg
>>514752
Хм, ну ладно, запомню, хотя это уже придирки какие-то.
По крайней мере в учебнике, который я читаю оба выражения употребляются.
Аноним 15/07/15 Срд 00:59:28 #412 №514758 
>>514692
> Какие типичные тесты/вопросы на собеседовании для джунов по этому делу

https://learn.hackerearth.com/questions/
Аноним 15/07/15 Срд 00:59:37 #413 №514759 
>>514729
Есть забавное отличие интерфейса от абстрактного класса в способе диспетчеризации методов. Если виртуальные методы вызываются через таблицу методов класса type's method table -> concrete method, то интерфейсные методы вызываются по цепочке interface offset table -> type's implemented interface's method table -> concrete interface method. Кто-то тут говорил, что абстрактные классы нинужны. Так вот, их иногда используют в качестве оптимизации (interface -> base class), чтобы clr не надрывалась при частой смене типа объекта, метод которого вызывается через интерфейс. Ну и да, их так же используют в обычном ключе ооп наследования.
Аноним 15/07/15 Срд 01:01:19 #414 №514761 
>>514729
Самое главное отличие, что в абстрактном классе может быть реализация методов, а в интефейсе нет.
Аноним 15/07/15 Срд 01:07:27 #415 №514763 
Эхх, а мне страшно ходить на собеседования. Я на них ни разу не был, да и мне рановато пока.
Но всё равно, я же ничего сказать не смогу, если спросят, буду просто сидеть как аутист лол. Я даже если более или менее понимаю что-то, то с трудом могу сформулировать.

>>514761
Лол, точно.
Аноним 15/07/15 Срд 01:11:16 #416 №514765 
>>514763
Если ты такой аутист, то стой перед зеркалом и репетируй речь. Все вопросы типовые.
Аноним 15/07/15 Срд 01:26:01 #417 №514773 
>>514672
>например code first с ef не работает на нем
Работает, надо только конфиг прикрутить:
https://gist.github.com/anonymous/d4bafd5aafd7efbb9783
Аноним 15/07/15 Срд 01:30:23 #418 №514774 
>>514736
>Лол, не собеседовался ты в лидерах рынка
Ну почему, я год в luxoft работал, там правда немного по другому все, но меня больше зарубежные стартапы привлекают, там лампово.

>>514748
Ну не на 40, я часов за 18-20 сделал, а платят они 22$ в час, выше писал.

>>514773
Значит отстал я от жизни
Аноним 15/07/15 Срд 01:33:25 #419 №514775 
>>514748
Что ты там 40 часов пилить-то собрался? Там больше половины функционала уже реализована указанными в требованиях фреймворками из коробки.
Аноним 15/07/15 Срд 01:33:42 #420 №514776 
>>514763
> Эхх, а мне страшно ходить на собеседования.
Та же хуйня.
У меня выражение лица не выражает никаких эмоций, мимики почти нету и я всегда очень напряженным выгляжу.
Аноним 15/07/15 Срд 01:35:25 #421 №514777 
>>514775
Типовое задание для веб джуна.
Аноним 15/07/15 Срд 01:39:52 #422 №514778 
На Juniorа без опыта сойдет список:
C# WinForms, WPF, ASP.NET WebForms, MVC, MVVM, WebAPI, HTML/CSS/JS (ясен хуй), JQuery, Ajax, парочку Design Patterns, RESTful (WCF-service).
Еще что нужно? Ребятки, подскажите, что упустил? Что могут еще спрашивать у .NET погромиста без опыта "коммерческой разработки"?
Аноним 15/07/15 Срд 01:41:48 #423 №514779 
>>514778
Допиши еще к каждому навыку Pro и будет заебись.
Аноним 15/07/15 Срд 01:42:28 #424 №514780 
>>514779
Максимум хуйло могу дописать.
Аноним 15/07/15 Срд 01:44:21 #425 №514782 
>>514759
>чтобы clr не надрывалась при частой смене типа объекта
По-моему, в таких случаях надо сменить язык на С++.
Аноним 15/07/15 Срд 01:45:29 #426 №514783 
>>514778
Чем where отличается от having? Ну, ты понял. Где бд? Алсо: ado.net (plain, l2s, ef)
Аноним 15/07/15 Срд 01:47:58 #427 №514784 
>>514783
Having для скул функций кажись указывается.
Аноним 15/07/15 Срд 01:49:20 #428 №514785 
>>514783
Where не работает с аггрегирующими функциями? Ну вопросы я примерно представляю какие будут. БД таки да, забыл указать.

Без опыта насколько реально устроится и стоит ли откликатся на вакансии, где указан необходимый опыт, при этом уровень Juniora?
Аноним 15/07/15 Срд 01:53:34 #429 №514786 
>>514785
У меня из знакомых легко устроились на 4-5 курсе универа джуном сисярпа в Киеве, без опыта. При чем они еще пребирали работки(где-то устраивались через неделю уволньянись на место получше), то есть им довольно активно присылали приглашения на собесодования, они просто выложили резюме.
Аноним 15/07/15 Срд 01:55:32 #430 №514787 
>>514774
>стартапы
Да ну нахуй. Ничему не научишься, только расшатаешь нервную систему постоянными стрессами. Зачем нем архитектура? У нас нет времени на проектирование! Хуячим говнокод по 16 часов в день, больше говнокода богу говнокода! Не думай ни секунды, хуячь код, все равно поддерживать эту хуиту будут неудачники, которые придут после нас.
Рейтинг компаний:
Топ тир - продуктовая компания. Учимся у опытных профессионалов, растем как разработчик.
Мидл тир - аутсорс. Роста никакого, зато можно полдня пить кофе и проебываться.
Шит тир - стартап. Выжимают все соки и выбрасывают, как использованный гандон. Все профиты получит владелец стартапа, если успеет впарить это говно до того, как оно начнет разваливаться от багов.
Аноним 15/07/15 Срд 01:57:27 #431 №514789 
>>514786
Ну я-то по переучке, шарп сам изучаю, по образованию программист идет как переквалификация, т.е вышка не по программухе. Товарищ работает в конторке, говорит, что там не смотрят на образование, лингвист у них там работает, тоже переучивался. Просто одни говорят обращают внимание, другие говорят - нет.
Аноним 15/07/15 Срд 02:00:42 #432 №514791 
>>514787
Ты прав, но я долго работал в enterprie парашах, теперь говнокодить в стартапчиках - это весело и хоть какое-то разнообразие.
Рост итд - уже не интересно, главное чтоб денег побольше и мухи не кусали.
Присутствует конечно выжимание всех соков, но если работать удаленно, то можно просто исчезать после оговоренного рабочего времени и ограничивать общение.

Аноним 15/07/15 Срд 02:03:55 #433 №514793 
>>514783
>having
Интересно, его хоть кто-то использует? Явный же косяк в дизайне sql, то же самое, что и where, но не то же самое.
Я вычисляю все группировки во вложенном запросе, а потом делаю where во внешнем. А то еще мозги ебать и помнить, какое поле откуда у нас берется.
Аноним 15/07/15 Срд 02:35:00 #434 №514799 
А этот ваш рюджит научился уже в loop unrolling при компиляции? А то раньше работало а в бете перестало.
Аноним 15/07/15 Срд 12:01:01 #435 №514887 
>>514793
Я использую, нахуя писать внешний запрос только для фильтрации?
Аноним 15/07/15 Срд 16:02:24 #436 №515016 
14369653444440.jpg
Дошел до баз данных. Первый параграф в учебнике — создание простейшей базы данных Microsoft SQL Server.
Открываю студию, пишет ошибку и создавать ничего не хочет.
Ну насколько я понял там какие-то несовместимости и проблемы с SQL Server Data Tools.
Захожу на оф сайт и качаю нужную версию для студии 12 года https://msdn.microsoft.com/en-us/jj650015.
Установка фейлится в самом конце. Теперь студия при попытке создания базы данных вообще пиздец выдает.

Открываю установленные программы, вижу пикрелейтед. Это вообще нормально? Как-то слишком много всякой херни, плюс всё разных годов. Может снести это все к ебеням и заново попробовать поставить то, что я скачал?
Аноним 15/07/15 Срд 16:08:03 #437 №515019 
>>515016
Ошибки то запостил бы для начала ты.
Аноним 15/07/15 Срд 16:17:32 #438 №515026 
>>515019
Эмм, вопрос отменяется.
Сейчас все запустилось нормально, проект создался.
Магия какая-то, я ничего не делал. Ну разве что Скайрим только что удалил лол.
Аноним 15/07/15 Срд 16:20:38 #439 №515028 
14369664389610.png
>>515016
Не смог пройти по нулевой мимо такого поста без йобы.

Мимо-пайтонобог
Аноним 15/07/15 Срд 16:21:29 #440 №515029 
>>515026
Ещё лучше.

>>515028-ехидный
Аноним 15/07/15 Срд 16:56:40 #441 №515047 
>>515016
Используй для работы с базой management studio. Что значит студия вылетает при соединении с базой? Ахуеть вообще, база - это ебаный сервис с tcp дырой для соединения.
win service - с именем запущен - значит будет работать.
Аноним 15/07/15 Срд 21:16:41 #442 №515182 
Как правильно обрабатывать исключения: внутри метода или на стороне вызвающего метода, перебросив с помощью throw на вызвающий метод?
Аноним 15/07/15 Срд 21:20:40 #443 №515185 
>>515182
Если можешь обработать, то ловишь. Если не можешь от отправляешь дальше по стеку тому, кто это сделать может, или глобальному хендлеру.
 Аноним 16/07/15 Чтв 02:11:14 #444 №515291 
Знаю, что вопрос хуйня, но все же. Начал писать на шарпе, как посоветует поднимать свой скилл? Понемногу читаю Рихтера. Где искать норм задачи\проекты, мейби опенсорс какой-нибудь?
Продублирую Аноним 16/07/15 Чтв 02:29:28 #445 №515303 
Как с помощью няшного си сярпа сделать так, чтоб выполнился скриптик выбора на сайте, чтоб потом спарсить.

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

Да, это все на винфоне.
Аноним 16/07/15 Чтв 03:48:19 #446 №515316 
>>515291
Я сейчас как полное нубло отвечу.
Если ты вообще только начал программировать/синтаксис учишь/принципы ООП, то берешь и решаешь какие-нибудь математические задачки.
Ну вроде создания библиотеки с линейной алгеброй вектора, матрицы, решения систем линейных уравнений, вот это все, ммм. Туда же вообще всё что угодно можно напихать, чтобы получилось красиво. И кучу пространств имен, взаимосвязанных классов, и интерфейсов с делегатами.

Стопэ, отрыл сейчас Рихтера, пробежался по содержанию. Ээ, а как же .NET... Куда шарп без "своего" козырного фреймворка. Крч я затрудняюсь оценить твой уровень по
>понемногу читаю Рихтера
Но потом я бы посоветовал просто херачить аналоги любых программ: блокнот, paint, excel, да все что угодно.
[Увеличение фото] Аноним 16/07/15 Чтв 07:39:39 #447 №515332 
Анон помоги, уже третий день занимаюсь проблемой. Суть в том, что мне в программе нужен функционал Windows просмотрщика картинок. По сути я должен получить картинку, навести на неё мышку, ту часть куда наведена мышка, увеличить прокрутив колесо мышки. Вот с последним у меня всё плохо.
Гугление выдало мне кучу неюзабельного говна, либо статьи за 2009 год которых уже нет. И я сейчас нахожусь на этапе "Как заставить вообще pictureBox реагировать на Mousewheel". Тоесть я нихуя не понял. Кто-нибудь может таки обьяснить как таки его увеличить?
Аноним 16/07/15 Чтв 08:48:07 #448 №515341 
>>515332
Берешь панель, ставишь свойство AutoScroll для прокрутки когда твое изо больше формы.
Вешаешь обработчик на MouseWheel - в списке нет такого события но событие есть. Пред этим с помощью MouseEnter, MouseLeave - устанавливай фокус на панель.
Внутри обработчика изменяй Width b Height своего PictureBox'а относительно положения курсора.
Аноним 16/07/15 Чтв 09:34:36 #449 №515354 
>>515341
Спасибо. Насчёт этого
>Внутри обработчика изменяй Width b Height своего PictureBox'а относительно положения курсора.
Тоесть изображение будет занимать весь размер picturebox независимо отразмеров picturebox?


Спасибо анон. Начинаю кодить.
Аноним 16/07/15 Чтв 11:06:23 #450 №515381 
Анон поможи.
Есть один CamelCase. Даже не один, а несколько. Мне нужно как то из него получить последнее слово, т.е. из CamelCase получить просто Case.
Как бы это попроще сделать и без регулярок?
Аноним 16/07/15 Чтв 11:32:33 #451 №515384 
>>515381
Делай на конечных автоматах, лол.
Аноним 16/07/15 Чтв 13:36:59 #452 №515410 
>>515381
Смотри, короч. Создаешь массив всех символов в верхнем регистре, затем берешь строку и с конца начинаешь проверять ее символы на предмет наличия их в массиве. Как только найдешь — кропаешь по индексу. Все.
Аноним 16/07/15 Чтв 13:43:00 #453 №515417 
>>515410
Ну, или расово верный способ: проверять на вхождение в промежуток: sym >= 'A' && sym <= 'Z'.
Аноним 16/07/15 Чтв 13:47:34 #454 №515422 
>>515410
Как то так
http://pastebin.com/pXvsLTNV
Аноним 16/07/15 Чтв 13:59:25 #455 №515428 
>>515341
Вот с установкой фокуса я долго тупил.
Вроде понаписал для элемента событий и ни одно не работает. Потом где-то на msdn заметил строчку "нужно установить фокус". Другой кун
Аноним 16/07/15 Чтв 14:23:22 #456 №515436 
>>515422
Нет. Вот как-то так
https://dotnetfiddle.net/Ga4Rwy
Аноним 16/07/15 Чтв 15:04:52 #457 №515451 
>>515381
Смотрите, методы расширения!
https://dotnetfiddle.net/bIyPnW
Аноним 16/07/15 Чтв 15:11:14 #458 №515455 
14370486741160.jpg
14370486741171.jpg
У меня совсем тупой вопрос. Я не могу понять что такое сервер и какое у него имя.
На примере пикрелейтедов. Тут необходимо ввести имя сервера "(localdb)\v11.0" в учебнике советуется (local)\SQLEXPRESS, эту строку я нашел вообще непонятно как, где-то заметил что-то похожее, любые другие надписи выдают ошибку вроде "не могу подключиться".
Что она вообще значит?
Сама база данных хранится на диске D, в папке
D:\Проекты\Базы Данных лежит два файла AutoLot.mdf и AutoLot.ldf

В итоге, строка подключения выглядит как-то так
Data Source=(localdb)\v11.0;AttachDbFilename="D:\Проекты\Базы Данных\AutoLot.mdf";Initial Catalog=AutoLot;Integrated Security=True

Что за имя сервера и нахер оно нужно? Почему пути до файлов не достаточно? Что вообще такое "сервер" лол?
Аноним 16/07/15 Чтв 15:40:55 #459 №515468 
>>515455
Очевидно, что субд находится не в файле mdf. Ты указываешь доменное имя сервера/ip или сорт оф localhost для коннекта к сервису с новым движком localdb или старым express. Как-то так.
Аноним 16/07/15 Чтв 15:59:16 #460 №515480 
14370515569130.png
ТЫЖПРОГРАММИСТЫ, как установить студию? Система Windows 7 Максимальная 64 бита, Visual Studio 2010 при установке выдает пикрелейтед и завершается.
Пробовал ставить Visual Studio 2012, то же самое.
Аноним 16/07/15 Чтв 16:01:30 #461 №515482 
>>515480
Это чистая винда + MS Office 2003 + SQL Server 2008 R2
Раньше была 32-битная windows XP, такой ошибки не было, на ноуте с 32-битной Windows 7 Home тоже ставится.
Аноним 16/07/15 Чтв 16:03:34 #462 №515484 
>>515455
Это если база находится на другом компе (как обычно бывает в энтерпрайзе, см. трехзвенную архитектуру). Указывается имя сервера и имя базы на нем.
Аноним 16/07/15 Чтв 16:04:04 #463 №515486 
>>515480
Студия ломаная?
Аноним 16/07/15 Чтв 16:05:40 #464 №515489 
>>515486
Пиратская версия Professional, скачал ISO образ с торрентов. На ноуте она же ставится.
Аноним 16/07/15 Чтв 16:08:12 #465 №515493 
>>515489
Возможно кряк несовместим с твоей системой.
Аноним 16/07/15 Чтв 16:10:01 #466 №515498 
14370522016970.jpg
>>515468
>субд находится не в файле mdf
А где тогда?
Я прошелся по ссылке указанной для системных бд, лежащих в (localdb)\v11.0.
Там лежит 4 mdf файла соответствующих системным бд. Вот они действительно в каталоге \v11.0
Бд asd создал автоматически, указав только сервер (localdb)\v11.0, но она создалась в другом месте.
Для AutoLot был явно указан путь расположения файлов, но сервер тот же (localdb)\v11.0.
Нахер он нужен то?
Да, и кстати я только что каким-то образом подключил сервер (local)\SQLEXPRESS, вон он внизу.
Все на пикрелейтед.
Аноним 16/07/15 Чтв 16:10:13 #467 №515500 
>>515493
Там нет кряка, только серийный номер. И на бесплатной версии Visual Studio 2012 с сайта Microsoft та же самая ошибка.
Аноним 16/07/15 Чтв 16:15:10 #468 №515507 
>>515489
А я скачал лицензионную 12 proffesional с DreamSpark.
Кто-то сказал, что придется зачетку фоткать, но ничего делать не пришлось. Хотя регистрации там долгие.

>>515484
Аа, то есть (localdb)\v11.0 просто указывает, что файл нужно искать на этом компе?
Я что-то забыл, что компы в сети можно связывать, никак не мог въехать зачем указывать имя сервера, если уже есть полный путь.
Аноним 16/07/15 Чтв 16:51:07 #469 №515530 
А что за Community Edition, чем отличается от Professional? Знаю, то у нее исходники открыты, а по функциональности?
Аноним 16/07/15 Чтв 17:06:33 #470 №515540 
>>515530
> Знаю, то у нее исходники открыты
Шта? Увидел знакомое слово ОУПЕНСОРС и сделал такой вывод?
Аноним 16/07/15 Чтв 17:21:35 #471 №515546 
14370564951680.png
>>515530
Попробовал VS 2015 Community, эта же ошибка.
Аноним 16/07/15 Чтв 17:34:52 #472 №515555 
>>515530
Исходники открыты у компилятора C# (Roslyn), а не у IDE. И у некоторых библиотек. А Community - бесплатная версия для красноглазиков.
Аноним 16/07/15 Чтв 17:41:02 #473 №515559 
>>515455
>Что за имя сервера и нахер оно нужно? Почему пути до файлов не достаточно? Что вообще такое "сервер" лол?
В данном случае MS SQL server. Он эту базу обрабатывает, и выдаёт тебе готовые таблички по запросу. Если у тебя чстоит - проблем быть не должно. Если ты тупо к файлу коннектишься... Ты ведь так не делаешь?
Аноним 16/07/15 Чтв 17:58:56 #474 №515566 
>>515559
Ну вроде разобрался.
\v11.0 фактически версию MS SQL сервера указывает.
На пике >>515498 asd находится в каком-то стандартном каталоге этого сервера и подключиться к нему я могу по строке подключения
"Data Source=(localdb)\v11.0; Initial Catalog=asd; Integrated Security=True" при этом MS SQL находит базу данных asd в стандартном каталоге просто по имени.
Если же я хочу подключиться к базе данных в случайной папке, то нужно указывать путь и полное имя и писать строку подключения в виде
"Data Source=(localdb)\v11.0; AttachDbFilename=D:\Проекты\Базы Данных\AutoLot.mdf; Integrated Security=True"
sageАноним 16/07/15 Чтв 23:58:29 #475 №515835 
>>515480
А нахуя тебе 12 профешанл?
Ставь себе 13 бесплатную.
Для обучения сойдет.
Аноним 17/07/15 Птн 00:13:06 #476 №515842 
14370811869010.png
Ладно, как оправлять запросы на сайт?
Как получать ответ с сайта?
Как отсылать что да как там заполнить?
Аноним 17/07/15 Птн 00:21:56 #477 №515847 
>>515842
>Посоны, научите погромировать, плз.
Аноним 17/07/15 Птн 00:30:03 #478 №515850 
>>515847
Было бы охуенно, няша.
Аноним 17/07/15 Птн 00:31:27 #479 №515852 
>>515847
Блядь.
Иди нахуй.
Я - ньюфаг, вот и вопросы ньюфажеские.

Аноним 17/07/15 Птн 00:32:37 #480 №515853 
>>515842
http://restsharp.org/ могу посоветовать.
Либо через WebClient, либо через HttpRequest
Аноним 17/07/15 Птн 00:34:25 #481 №515854 
>>515847
Короче, у меня бамбануло.

>>515853
Спасибо. Я очень признателен.
Аноним 17/07/15 Птн 00:47:55 #482 №515859 
14370832751650.jpg
Сап программач, осилил оопхреново.
словил ошибку при передаче из объекта, ошибкумне кажется понял, как исправить ?
Аноним 17/07/15 Птн 00:52:37 #483 №515864 
>>515859
Шо знач как исправить?
Тебе ж написали что null там у тебя.
Сделать так чтоб в mm[e] или в mm не равнялось null

имена переменных вида mm, uuu, по русски tovar, массивы вместо List, самому не грустно на свой код смотреть?
Аноним 17/07/15 Птн 01:11:09 #484 №515869 
>>515859
Вангую, что ты массив создал, а объекты в нем — нет, содомит.
Аноним 17/07/15 Птн 01:17:25 #485 №515871 
>>515869
>>515859
Спасибо, пофиксил.
создал объект и присвоил его массиву с инициализацией.
Потом, как в паскале учил присвоил всему массиву значение null через цикл.
Таки да содомит, содомит,весело быть нубом.
Аноним 17/07/15 Птн 01:17:52 #486 №515872 
>>515864
спасибо, пофикшу
Аноним 17/07/15 Птн 01:18:17 #487 №515873 
>>515859
Буэ, переменные транслитом, да и вообще уёбищные имена.

Исходя из того, что ты заскринил, ничего сказать не могу. Ну не записано у тебя ничего в массиве tovar[] bb.
И зачем ты в функции vivod создаешь новый массив mm, почему просто не обращаться к bb?

>>515864
Кстати, хотел спросить насчёт List и обычных массивов.
Массивы имеют заданный размер, элементы массива в памяти хранятся по порядку, а индексация работает на адресной арифметике или в c# не так? я прост крестоблядок
В List можно добавлять элементы, следовательно, они не могут храниться по порядку, как тогда элементы List индексируются?
Или List это классический односвязный список? Ну тогда для получения элемента по индексу List пробегается с самого начала.

Аноним 17/07/15 Птн 01:22:32 #488 №515879 
можешь пояснить почему на цифру 0 алгоритм реагирует нормально, а на null - краш ?
Аноним 17/07/15 Птн 01:26:07 #489 №515883 
>>515873
List - это std:vector, просто автор класса безграмотный уебок.
Двусвязный список в дотнете - это LinkedList, используется чуть чаще чем никогда.
Аноним 17/07/15 Птн 01:26:16 #490 №515884 
Аа, все, загуглил List. Это обычный массив с запасом на случай, если нужно что-то добавить. Короче как vector в с++. >>515873-хуй.

>>515879
Шта? Ну ка поподробнее.
Аноним 17/07/15 Птн 01:31:28 #491 №515885 
>>515879
мой говнокод пруф

массив[1] = null;

консоль вывод(массив[1].переменная в объекте)
--->краш
Аноним 17/07/15 Птн 01:34:29 #492 №515886 
>>515885
null это полное отсутствие ссылки, отсутствует объект массив[1]. Ты не можешь вывести переменную в объекте, если объекта нет!
Сначала нужно создать объект, где в коде до этого момента должно быть.
массив[1] = new ИмяОбъекта();
Аноним 17/07/15 Птн 01:37:11 #493 №515887 
>>515886
спасибо.
Аноним 17/07/15 Птн 01:53:41 #494 №515894 
>>515886
>>515885
Сообщить("Надеюсь, что такими темпами мы не начнем тут вскоре одинэс обсуждать?");
Аноним 17/07/15 Птн 02:10:22 #495 №515900 
>>515894
Почему C# самый лучший язык программирования?
Аноним 17/07/15 Птн 04:20:52 #496 №515926 
>>515900
Почему Windows самая лучшая операционная система?
Аноним 17/07/15 Птн 09:18:27 #497 №515979 
Читаю Рихтера. Поясните по хардкору про ограничения в обобщенных типах (шаблонах).

Про это дело https://msdn.microsoft.com/ru-ru/library/d5x73970.aspx

class EmployeeList<T> where T : Employee, IEmployee, System.IComparable<T>, new()
{
// ...
}

new(), class, struct — это я понимаю, весьма общие штуки.

Но нафига писать where T : Employee? Это уже не шаблон, а готовый класс. Никакого обобщения, когда четко указываешь базовый класс. Вместо T везде можно указываеть его.
Аноним 17/07/15 Птн 09:19:03 #498 №515980 
>>515979
*указывать
быстрофикс
Аноним 17/07/15 Птн 10:41:18 #499 №516014 
>>515979
Сможешь работать с производными от Employee классами.
Аноним 17/07/15 Птн 12:35:04 #500 №516061 
>>515979
Ты там не охуеешь, когда до вариантности дойдешь?
Аноним 17/07/15 Птн 14:11:22 #501 №516102 
14371314822840.jpg
>>515979
Ну при отсутствии дополнительных ограничений "IEmployee, System.IComparable, new()" я тоже не вижу смысла делать обобщенный класс, проще везде внутри Employee написать вместо T.

Но раз уж необходим лист с работниками, которых можно сравнивать, тогда в этом есть смысл.
Вдруг у тебя какие-то работники, наследуемые от Employee "не сравнимы", тогда их нельзя будет в лист запихивать.

>>516014
Если бы он написал реализацию своего листа, везде написав Employee вместо T, то и потомков Employe там можно было бы хранить. Как на пике.
Аноним 17/07/15 Птн 14:32:25 #502 №516122 
>>516102
Ему придется даункаст типов делать при работе с коллекцией. Это как если сделать список простых объектов, запихать туда разной всячины и проверять потом через is.
Аноним 17/07/15 Птн 14:52:41 #503 №516131 
>>516122
Ок, теперь я понял в чём профит.

>>515979
Допустим Manager и Cleaner наследуются от Employee, тогда ты сможешь создать список с менеджерами или уборщиками и обращаться к элементам списка соответственно как к менеджерам или уборщикам
EmployeeList<Manager> managers;
EmployeeList<Cleaner> cleaners;
managers.что-то_что_манагер_делает();
cleaners.что-то_что_уборщик_делает();

Если бы тип был закреплен как Employee, тогда бы ты мог создавать список EmlpoyeeList workers; засунуть туда и менеджеров и уборщиков.
Но потом пришлось бы следить, чтобы уборщик не делал работу менеджера, типа
if (workers is Cleaner)
(Cleaner)workers.что-то_что_делает_уборщик();

Бог объяснений
Аноним 17/07/15 Птн 14:56:16 #504 №516132 
>>516131
Но это без толку. Скорее всего пример чисто формальный, показать как можно делать без какого-либо практического смысла.
Аноним 17/07/15 Птн 15:27:21 #505 №516151 
>>516061
Прихуел, когда Албахари читал.

>>516131
В принципе, норм пример. Профит есть. Но в жизни пока не встречал таких ситуаций.

Читающий Рихтер кун
Аноним 17/07/15 Птн 15:32:52 #506 №516156 
>>516151
Generic repository, например.
Аноним 17/07/15 Птн 16:15:51 #507 №516186 
Перекат: https://2ch.hk/pr/res/516185.html
Аноним 17/07/15 Птн 21:39:48 #508 №516366 
>>515381
>Есть один CamelCase. Даже не один, а несколько. Мне нужно как то из него получить последнее слово, т.е. из CamelCase получить просто Case.
Как бы это попроще сделать и без регулярок?
Например через LINQ. Не самый оптимальный метод, но шо таки поделать F# меня избаловал.

[code]
var word = "camelCamelCamelCase";
var lastCap = word
.Reverse()
.SkipWhile(c => char.IsLower(c))
.First();

var lastLowerRemainder = word
.Reverse()
.TakeWhile(c => char.IsLower(c))
.Reverse()
.ToArray();

var result = lastCap + new string(lastLowerRemainder);
[/code]
Аноним 20/07/15 Пнд 08:35:35 #509 №517505 
>>515835
На VS 2015 Community Edition та же самая ошибка: >>515546
comments powered by Disqus

Отзывы и предложения