Кто-то сталкивался с сериализацией в Bson хотя я и джсон никогда не сериализовал? Кароче, хочу в монго для студентс и тичерс хранить только класс ид, а все остальные параметры мне нужны редко и если чо, то с помощью методов их добуду. Вопрос, как это сериализовать? Для студентсов я сделал костыль1, но для тичерсов с листов мне что, надо аж отдельный метод делать? Нельзя ли как-то полаконичнее с помощью атрибутов?
>>1286430 (OP) Ух спросил везде, где только можно, но ответа нет. Спрошу и здесь, для полной картины.
Как работать с GitHub Desktop (далее - GHD) и Visual Studio? В частности столкнулся с одной проблемой. Вот, создал я в VS создал новый проект и вместе с ним новое решение (Solution, уж не знаю как правильно это перевести). Хорошо, создаю в GHD новый локальный репозиторий, в одной папке с файлом .sln. Добавил в .gitignore исключения для бинарников внутри папки с проектом и закоммитил существующие файлы. Хорошо. Допустим, в рамках этого солюшена я хочу добавить в VS новый проект. Создаю в GHD новую ветку, добавляю в VS новый проект, добавляю исключения для бинарников второго проекта, коммичу изменения. Отлично, новый проект в новой ветке создан. Хочу перейти в ветку master, перехожу и что я вижу? В VS не удалился проект, который был создан в новой ветке, да и сама папка с проектом из репозитория так же не удалилась. Я уже полдня с этой проблемой пытаюсь разобраться, уже руки опускаются, что я делаю не так? Почему директории ни в VS ни в GHD не удаляются?
На превью второй пик выглядит как скрин из Портала. На земле синий портал, в руках у деда портальная пушка, на груди эмблема Aperture Science. У меня все.
>>1286719 беру слова назад, скрин с книги 1.32gb. но у меня почемуто не 22 а 20 требует. а вообще это хуита, 20гб это ос или игорь, но на иде это чета многовато(ебанутые времена), sharpide 15mb архив весит и раньше на поучится хватало с головой
Как мне создать ком объект Task Scheduler'a ? СУКА 3 дня гуглю, нихуя нет. КАК ТАКОЕ БЛЯТЬ МОЖЕТ БЫТЬ? Помогайте. я ахуеваю блять, почему в интернетах есть всякие йоба-сурсы БЛОКЧЕЙНОВ, а создание задач в планировщике виндовс НЕТ?
Помогите разобраться с объектами и классами глубже.
class A { public A(){ Console.WriteLine("Произошел конструктор А"); } }
class B : A { public B(){ Console.WriteLine("Произошел конструктор Б"); } }
1)A a = new A(); 2)A z = new B(); 3)B z = new A(); 4)B b = new B();
1) Что происходит в A a и что в new A()? Так то все вместе это создание объекта a, как я понял A a просто инициализирует объект класса A, но память под обьект еще не резервируется? Происходит это после ключевого слово new, и кнструктор тоже появляется так же. Мы получили объект а, переменная а просто имеет ссылку на него. Правильно?
2) Это вызовет ошибку, правильно? Или наоборот пример 3)?
3) Что вообще происходит блядь. Я инициализирую объект производного класса, но создаю объект конструктором базового? Какой конструктор вызовется? Тут я в ступоре.
4) Ну и последнее какой конструктор вызовется, только Б или оба?
Простите если вопрос шибко глупый, просто хочется ПОНЯТЬ СУТЬ.
Опыт программирования - 0 В школе на информатике учили пользоваться пакетом программ Office и печати на клавиатуре. Классе в 10ом пытался в python, но быстро дропнул. Моим магнум опусом был калькулятор. На первом курсе баловался в GameMaker'е, узнав, что по нему учат основам программирования школьников в нормальных странах. Делал в максимально примитивные вещи уровня топдаун шутеров.
Решил вкатиться в Юнити и начать с базы. Выбрал за основу С#, просто потому что вроде бы как очень хайповый язык, у которого куча туториалов, гайдов, книг по которым можно обучиться.
Немного посмотрел доску и возникло несколько вопросов: 1) Есть ли смысл читать SICP, если я чтением плохо обучаюсь, практика в моем случае предпочтительнее? 2) Есть ли смысл читать книжку из ОП-поста или это мемный троллинг? 3) Дошел до экзамена в этом курсе и понял, что нихуя не понял. https://dotnetcademy.net/CSharp/Beginner Что еще можете посоветовать ньюфагу, который хочет интерактивности и наглядности в обучении?
>>1287000 CLR via C# это книга, которая описывает байтоебство в мире сисярпа, знаю, что работодатели любят по ней спрашивать. Но если ты вкатывальщик, то начни с бесплатной части явараша, а потом прочитай метанит.
Сегодня как раз нашел какой-то простой курс для ньюфагов и закрыл все пробелы, которые возникли по ходу прохождения курса в netcademy. Буду двигаться дальше.
>>1287174 >CLR via C# это книга, которая описывает байтоебство в мире сисярпа Не пизди, там зачастую так же абстракция на абстракции, но со стороны clr, плюс написано, как это примерно связано с железом и ос, но без особых подробностей. Считаю, что ее надо читать параллельно с каким-нибудь метанитом или натшелом, типа читаешь про конкарренси и мультитрединг и сразу читаешь, как это примерно реализовано, с пулом потоков и прочими интересными приблудами.
Когда читал CLR via C#, не зашло абсолютно. Вот именно что какая-то абстрактная поебень, которая в ежедневной работе абсолютно не нужна. Ну да, нужна для собеседований, чтобы отвечать на запросы типа "Сколько памяти выделяется каждому потоку из пула по умолчанию?"
Мне очень понравился Скит, у него охуенно написано. Вот, например, есть дженерики. Вот, что они делают. Вот, как мы жили без дженериков в бородатой версии шарпа. Вот, зачем мы их ввели.
>>1286434 Шрамы хорошо подойду для ознакомления, но не один уважающий себя анончик не станет разрабатывать серьезные проекты на таком высере от мелкософта. Мелкософт - не нужен.
>>1286922 Воу Воу, чувак полегче. Подтяни теорию по переменным и типам данных. Потом изучи что такое наследование и полиморфизм. И такие вопросы возникать не будут. Это просто старое доброе ООПа
>>1287389 Я наверное порву тебе шаблон, но я пишу на сисярпе, сидя на линуксе, мастурбируя на СПО. Использую только свободные инструменты и ничо, все нормально пишется.
> Подтяни теорию по переменным и типам данных. Потом изучи что такое наследование и полиморфизм. *вздох Вопрос не о знании фундаментальной теории. А о конкретных реализациях в языках. Как компилятор воспринимает текст. в шарпе оверрайды немного по другому работают, так что ((A) bInstance).something() и something вызовет именно реализацию A, а не B, а в джаве будет версия B. Зависит от того виртуальная ли функция или нет. Просто в жаве все функции виртуальные, а в сисярпе они могут быть как виртуальными, так и нет. Виртуальные оверрайдятся и работают как в жаве, невиртуальные перекрываются и работают как написал ты. Хотя ооп наследования и полиморфизм есть и там и там. Так что я не понимаю к чему был твой пост, разве что высокомерно выебнуться. Не дай боже такой преподаватель кому то попадется ИРЛ. Как минимум отобьет желание заниматься программированием и как максимум сделает мизантропом. Лучше так не надо.
А вот например жаба скрипт. Там тоже есть ооп и полиморфизм.
Добрый вечер,суть такая:Нужно сделать практическую работу на C# На языке программирования C# создать программный проект, включающий следующие элементы: 1. Провести анализ предметной области в соответствии с выбранным вариантом. Выделить значимые объекты, их атрибуты и особенности поведения. Предложить обобщение родственных объектов в классы. 2. На основе проведенного в п.1 анализа построить иерархию классов проектируемой системы. Использовать на менее 5-ти классов. Обязательно использовать по крайней мере один абстрактный класс. Реализовать не менее двух стандартных интерфейсов. Создать и реализовать по крайней мере один собственный интерфейс (interface). При реализации классов должны быть продемонстрированы особенности создания и использования - закрытых полей - свойств и автоматических свойств - конструкторов - перегруженных методов и операторов - виртуальных методов Для контроля результатов проектирования создать диаграмму классов 3. В отдельном консольном проекте провести тестирование построенных классов с созданием их отдельных объектов и коллекций объектов. Проверить реализацию полиморфизма. 4. Создать приложение с графическим пользовательским интерфейсом, позволяющее обрабатывать коллекции объектов построенной иерархии. Приложение должно включать основное (главное) окно, с главным меню, панелью инструментов и строкой состояния. В основной рабочей области главного окна пользователь получает возможность просматривать и редактировать наиболее значимые информационные объекты проектируемой системы. В рамках главного окна должна быть возможность работы с буфером обмена (перемещение/копирования данных как внутри приложения, так и во внешние windows-программы). Дополнительная детальная информация об объекте выводится в отдельных окнах (формах), реализовать не менее двух дополнительных окон. У приложения должна быть заставка, демонстрируемая при его запуске. Приложение должно обеспечивать - сохранение введенных пользователем данных в файлы на диске (использовать текстовые файлы собственного формата, файлы xml или бинарные файлы) - загрузку данных из файлов, предварительно созданных в приложении или во внешних редакторах Если кто-то возьмется,пишите на телегу-@Garafiev. Насчет оплаты там договоримся
Одолел The C# Players Guide, ещё и практическую часть повыполнял в свое удовольствие. Хорошая-годная книга, редко встречаю что доносило бы такую кучу вещей достаточно простым языком. Спасибо треду что подсказал такой-то шин. Сейчас планирую полезть в WinForm-ы, есть пара идей которые можно было бы реализовать с их помощью уже не по практической части обучения, а чисто для себя.
Но если отвлечься от краткосрочных целей - куда стоит лезть в изучении языка дальше, если потом потихоньку планируешь перекатываться в геймдев? Мобилки на Unity сейчас вещь очень ходовая и устроиться в какую-нибудь шарашку по их производству вполне реально, да и в принципе это та область ради которой я залез в программач с головой.
>>1288202 1) В винформы бессмысленно лезть, они устарели шопиздец 2) Общался с теми, кто влезает в геймдев? Говорят параша полнейшая. Но не отрицаю что может понравиться. 3) Ну так в мобилки на юнити и вкатывайся сейчас, в чем проблема то? Если считаешь что ещё недостаточно базы, то её и разбирай, на том же метаните + какой нибудь задачник найти. Абрамян какой нибудь
Антоны, нужно ли мне разбираться в таких вещах, как хостинг, сборки и домены, если я хочу в Asp.Net пойти. Про междоменное взаимодействие я все понял, как пользоваться отражением и для чего оно нужно тоже более-менее. А нужно ли оно мне вообще будет? Читаю Рихтера и немного охуеваю от уровня сложности некоторых вещей.
>>1288233 >Ну если хочешь в вебе быть, то знать это все стоит. А в чем трабл то?Нее понимаешь что то или просто лень? Туговато у меня все это идет, не совсем понятно, зачем нужна та или иная вещь, очень мало примеров у Рихтера.
>>1288238 Помимо книг есть ещё гугл. Столько хороших сайтов с инфой. Сложно загуглить что ли? Я вообще Рихтера почитывал только когда уже более-менее разбирался в чем-то.
>>1288273 Читал новость, что сисярп теперь поддерживается в web assembly. А значит, ты пишешь под веб асскмбли, который запускаешь через електрон. Охуеннно же. Все равно на сисярпе нет нормальных гуи фреймворков.
>>1288297 Пиздец, разрабы этой хуйни рофлят? Я это вообще в шутку сказал, когда пытался придумать самую огромную гору абстракций в одном приложении. Я ведь правильно понимаю, что это втртуальная машина .Net, запущеная на вебассембли, который запускает движкок хромиума?
>>1287813 Походу твой препод решил на тебе заработать и продать твой код кому-то, лол. Я такое даже в Томске, когда ещё учился не проходил, ну проходил, только кусками и не в таких объемах.
>>1288202 Хочешь unity учи матан, а там ещё и английский нужен будет, когда теорию будешь учить. Ибо вся хорошая теория на английском, да и суть лучше передает.
Для unity нужно просто дохуя знать, сам на этом обжёгся, когда начинал. По началу начал косячить на этапе проектирования, поучил паттерны, пару книг по проектированию масштабируемого проекта.
Охуел потом от матана с тригонометрией и геометрией, сейчас вот застрял на шейдерах.
Так что если есть дикое желание и стремление, то удачи.
Могут посоветовать начать с канала brackeys. Там основа юнити. Потом можно перейти потихоньку сюда : https://youtu.be/-L-WgKMFuhE
Можешь ещё на хабр заглядывать в тематический отдел по unity
Ебать посоны, я тут узнал, что приватные переменные класса видны не только в самом классе: class Pussy { private int depth; private string prettiness; public void test() { var b = new Pussy(); b.depth = 56; //а глубина пизды то приватная } }
>>1287396 Так проблема то в том что ты изначально хуево объяснил свой вопрос. Что спросил то и получил. Ты же программист, а вопрос нормально задаёшь только со второй попытки. У тебя когда не компилируется, ты тоже на компьютер гонишь?
Господа, где можно подробнее почитать/порешать задачи на делегаты и события? В Троелсене один пример разбирается на протяжении главы, уже не понятно, что, как и куда вставляется.
У меня в программе пользователь должен выбирать, каким алгоритмом будет всё выполняться. Собственно хочу это сделать при создании экземпляра класса, ему будет передаваться определенный параметр. В самом классе будут две функции разных алгоритмов и в зависимости от переданного параметра в конструкторе делегату будет присваиваться одна функция алгоритма из этих двух. А потом уже в функции Старт будет уже использоваться этот делегат. Корректно ли так сделать или такой выбор лучше как-то по другому реализовать?
>>1288756 Спасибо, посмотрю. У меня как бы 80% алгоритма одна и та же, и только один "модуль" алгоритма может выбирать пользователь. Как раз конкретную в нём одну функцию из двух возможных. Не уверен, что смогу это прикрутить к своему случаю, но попробую!
>>1288650 Немного сумбурно получилось щя распишу как лучше будет. Идём на канал brackeys, учим матчасть, запоминаем самые интересные инструменты которые использовал, к примеру scriptable objects, открываем unity и пробуем экспериментируем.
Параллельно учим сам c# к примеру вот тут: https://youtu.be/y1OXLBDZT7k тут все серьезно. Тут научился основам ооп
https://youtu.be/xsaRhgD7XL4 - тут ебанутый но опытный дядя. По нему учил паттерны и ассоциации с реальной жизнью, помогло запомнить
Вместе с brackeys идём на официальный сайт unity и смотрим уроки от создателей юнити https://unity3d.com/ru/learn - лучше некуда.
Как только узнаем основу, тут надо думать куда двигаться, ибо почти все взаимосвязано. я вот начал с триангуляции, сижу теперь на шейдерах Если в 3d то нам сюда:
тут тебе и про uv развёртку, про триангуляцию, шейдеры и т.д. И совмещаем с этими : https://youtu.be/-L-WgKMFuhE
Параллельно заходим на habr, toster и прочие форумы и смотрим различные реализации тех или иных вещей. я так однажды научился делать крюк-кошку, переписав код и доработав получился прыжок игрока от стены. Так что сам не знаешь когда пригодится тот или иной опыт.
Насчёт математики, тут само придет. К примеру учил как триангулировать гексы, что бы создавать гексовую карту, повторил как раз теорему Пифагора, учил как соединять разную высоту гексов, узнал что такое интерполяция. Потихоньку само приходит, не знаешь что это гуглишь и все. Так что не надо кидаться на все с горящей головой.
В общем удачи, этот список не идеален, но подходит мне, ибо мне надоедает делать одно и тоже, поэтому переключаюсь между проектами. Может кто дополнить чем-нибудь. Надеюсь поможет тебе это
>>1288931 Добра тебе. Тоже хочу попробовать сделать какую-нибудь казуалочку. Почти добил Player's Guide и думал дочитать Unity in Action. не >>1288650 анон
Антоны, а такие вещи, как продвижение по значению и по ссылке вообще используются в реальных приложениях? Переопределяют ли поведение хостинга CLR с помощью System.AppDomainManager?
>>1289577 Ставь брейкпоинт на месте где идет коннект и потом во время запуска построчно пробегай по коду через F10, смотря в отладчике что там в запросе происходит. Вообще приучай себя к дебаггингу, полезная вещь, которая экономит много времени.
>>1289586 посмотрел визуализацию dataset там нет новых значений, в отладчике ничего необычного нет, те получается что он не видит добавленные значения, скорее всего я где-то оч сильно косячу, но не могу найти где
>>1289946 >Все и в вскоде можно писать. Откуда такая любовь к этому говну? Пробовал, полный пиздец нормальных шаблонов нет, нормального интеллисенса нет, дебажить нормально через него невозможно, интеграция с гитом через жопу. я через него только жсон просматриваю, хуй знает, как это с полноценной иде сравнивать можно
>>1286430 (OP) Жизнеспособна ли следующая свзяка для небольших сайтов C# + HTML + CSS + MySql И можно ли на шарпе писать скажем формы авторизации и прочее.
Вкатываюсь с вопросом. С чего начать вкатываться в C# имея минимальные знания С++ и немного инглиша(Книги не осилю)? Примерное назначение: написание ботов/парсеров
Рихтер говнокодер? Зачем он написал такую мозгодробительную конструкцию(глава про атрибуты): if(other.m & m) != m) ...return false; return true; вместо return other.m & m == m; ? Или я чего не понимаю в байтоебстве и эти выражения не эквивалентно?
>>1290685 я не тот чел, который хочет бота на шарпах делать, но я работаю в интерпрайзе и не могу понять чем он плох то? пишем код, который можно спокойно поддерживать годами
>>1286430 (OP) Аноны может кто помочь? Разобрался я с anglesharp и парсингом страниц, получаю нужные изображения, но вот вопрос. Новые изображения на странице появляются лишь при скроллинге вниз, как получить остальные изображения?.
>>1291471 >только от Майкрософт Пытаюсь вкатиться в C# за ради написания скриптов в Unity, и пока вкатываюсь не покидает ощущение, что имею дело с какой-то китайской подделкой под Java. Эдакая Нокиа, но с телевизором и большим динамиком.
Что лучше для игорь изучать? C++ или C#? Тип C++ эт свой движок и анреал энжен, а C# - это юнити, который вроде как полегче и вообще тоже популярный. И нужен ли питон в разработке игр?
>>1291760 Сука, ты гуглить не умеешь? Моно появился лет 10 назад, 2 года назад нет кор. И еще хуй знает когда появился ксамарин, который хоть на эппл вотч работает. Это такая местная забава, тролить сисярпистов тем, что он нигде, кроме винды, не робит?
Привет девоньки! У меня есть класс с методами Count, Add, Insert, Remove, RemoveAt, индексатор. Тут вроде как напрашивается IList, но методы CopyTo, Contains, Clear, IsReadOnly не нужны. И вот есть три путя®: 1. Реализовать IList и хуй с ним 2. Оставить как есть 3. Реализовать IList, при этом ненужные методы реализовать явно, чтобы не мозолили глаза, но зато будут при приведении к интерфейсу. Так же интересует говняность третьего варианта в принципе, имеет ли такая штука право на жизнь?
>>1292013 Я такой же, только в этом году слез с 2008 студии. Она быстрая, меня всем устраивала. Если бы не баг в дотнете 3.5, я бы продолжил её использовать. Вообще, это свинство со стороны МС, привязывать версию дотнета к версии студии.
Мужики, привет. Потихонечку пересаживаюсь с двухлетней winforms/wpf/wcf бутылки на asp net core, попутно изучая верстку(пока что без ЖС).
Прочитал в гугле статью о том какие бывают вэб-сервера. Меня интересует конкретно виндовский IIS(и/или его аналог для линуксов, при строгом условии, что я пишу бэкэнд только на C#).
Что можете посоветовать почитать, чтобы в нем освоиться? Заказал по почте ORiley'скую книгу по ASP, люблю читать в бумажном виде, которую собираюсь освоить во время отпкуска в декабре.
>>1292340 У тебя есть интерфейс IDroch. У него один метод public void Drochit(). И есть 2 класса public class Man: Person, IDroch public class Women: Person, IDroch public class UnderAgeChils: Person
И мужчина и женщина дрочат(реализуют интерфейс IDroch) и мужчина и женщина - личности(наследуют класс Person). А неполовозрелый ребенок - уже личность (наследует класс Person), но еще не дрочит (не реализует наш интерфейс)
Но мужчина и женщина дрочат совершенно поразному. В общем, в методах Drochit() у них разный код написан. Такие дела. А зачем интерфейс-то, спросишь ты? А вот зачем.
Теперь представим, что нам нужно разработать какой-то механизм, который будет считать, сколько раз клиент нашей компании дрочит. Нам все равно, мужчина это или женщина, но нам важно, чтобы они уже умели дрочить.
Поэтому мы создаем где-нибудь метод, куда на вход ожидаем только тех, кто умеет дрочить) public static InitiateDroch(IDroch drocher) { drocher.Drochit() }
теперь в этот метод можно пихать переменные только тех классов, которые реализуют наш интерфейс. Man man = new Man(); Women women = new woman(); UnderAgeChild child = new UnderAgeChild(); То есть можно вызвать
>InitiateDroch(man); >InitiateDroch(woman);
А на строчку >InitiateDroch(child); Наша среда поругается, не даст нам такую конструкцию написать,
потому что класс недозрелого ребенка не реализует наш интерфейс(ребенок еще не дрочит)
все это нужно, как ты, надеюсь, понял, для упрощения разработки. А. Чтобы писать меньше кода, используя базовые сущности Б. Чтобы все разработчики понимали, как устроена арзитектура приложения и не городили своих огородов.
Интерфейс - это соглашение о способе передачи входных данных, которому должны отвечать обработчики, чтобы из можно было менять/добавлять без перепроектирования системы.
>>1292412 Заебись описал, добавлю, что интерфейсы по возможности используют для абстракции от реализации, т.е. по хорошему у тебя в коде должно все зависить от интерфейсов, а не от конкретных реализаций, тогда код становится более понятным и гибким. Ты программируешь, опираясь на интерфейсы, а потом через внедрение зависимости связываешь интерфейс с конкретным классом, реализующим интерфейс. Если внезапно что-то поменялось, то ты тупо добавляешь новый класс с другой реализацией, меняешь одну строчку-зависимости на другую и вуаля, у тебя все работает. Очень наглядный пример - работа с ORM. Изначально ты может не выбрал базу или она может поменяться, но ты программируешь относительно интерфейса, например, который должен выполнять операции с хранилищем. public interface IDbService { public void Create(int i); public int Read(int id); public void Update(int i); public void Delete(int id); }
Ты программируешь относительно этого интерфейса, а потом можешь в зависимости от требования, потребностей реализовать его по разному. Можешь через ORM, например public interface IDbServiceEF : IDbService { метода обращаются к базе и вытягивают из нее значения } Или тебе не нужно нормальное хранилище, хочешь быстренько сделать, можешь реализовать через лист, к примеру.
public interface IDbServiceList : IDbService { public IDbServiceList { _db = new List<int>(); } private List<int> db;
Методы работают с листом } Для твоей программы эти оба класса будут взаимозаменяемы, если ты будешь опираться на интерфейс, чтобы пересесть с листа тебе не придется во всей программе править что-то, тебе тупо в одном месте надо будет сменить зависимость с <IDbService, IDbServiceList> на <IDbService, IDbServiceEF> грубо говоря.
>>1292398 Чтобы проблему ромбоидного наследования разрешить, напишем. Потому что удобно отделять контракты от реализации, чего абстрактный класс не гарантирует.
>>1293634 Если уже начинаешь с формальных определений, то давай уж про то, что функция это просто некоторое подмножество декартового произведения множеств (области опредения и области значений).
Придираясь к словам, в этом вашем сисярпе никаких функций и нет.
>>1293634 У тебя ещё более неправильное определение, чем у меня. С хера ли в соответствие ставится только число? Функция может быть определена как отображение любого множества на любое множество. Если у тебя есть множество стульев и множество жоп, то, установив однозначное соответствие между жопой и стулом, ты получишь функцию
>>1293634 Ты даже математическое определение функции не знаешь, даун. А главное, не понимаешь, почему оно именно такое, и в чем недостаток определений не через декартово произведение множеств.
>>1292610 В сисярпе функции - это описание процесса вычислений для компилятора сисярпа, на основе которых он создает инструкции для сярповой виртуальной машины, позволяющие выполнить некоторую типовую последовательность операций.
>>1294062 Самый плохой ответ (имхо). Во-первых, в шарпе есть только методы, а функции вообще отсутствуют (хоть статические методы и похожи на функции). Во-вторых, концепция функции всё же существует вне контекста языка.
Дурачки, математические функции к функциям в программировании тут при чем?
Функция в программировании это грубо говоря код объединенный под одним именем и выведенный за границу тела программы, чтобы было удобно к нему обращаться по нескольку раз, вместо того чтобы копипастить, все.
Начали тут про множества хуйню нести, будто это имеет хоть какое-то отношение к программированию на сисярпе.
>>1294076 >в шарпе есть только методы, а функции вообще отсутствуют Функция в императивном, или ООП программировании - это почти тоже самое, что и процедура. А метод - это процедура, принадлежащая классу/объекту в ООП. Так что методы в ООП можно смело звать функциями.
>Во-вторых, концепция функции всё же существует вне контекста языка. Тред про сисярп. Про функции вне контекста языка и так все понятно, тут уже давали определения математическим, например.
>>1294108 > в программирование на функциональных языках В функциональных язычках нет функций в математическом смысле. Вся функциональщина строится на лямбда-исчислении, где функции (лямбда абстракции) есть ни что иное как инструкции машине лямбда исчисления: какие (именно какие, а не как) лямбда термы применять к каким.
Мужики, встал резкий вопрос об использовании WCF клиентской части в Net Core приложении. Кто сталкивался. В гугле нашел какой-то левый проект на гитхабе, чето не верится, что мелкософты не запилили нормальную реализацию из под коробки.
Кто сталкивался, что посоветуете. Заранее спасибо.
>>1294114 https://en.m.wikipedia.org/wiki/Foobara Нахуя вы идете в программирование если не умеете гуглить? Освойте сначала этот навык. >>1294174 Нахуя в 2к18 SOAP, когда весь мир пытается в микросервисы на REST? Или вопрос о переводе легаси кода на .net core?
>>1294206 Но функции в шарпе лишь включают в себя мат. функции, это не единственное и далеко не основное их назначение.
По аналогии приравнивание мат. функций к функциям в программировании это все равно что приравнять машину к двигателю, но это неправильно чисто логически, ведь машина это не только двигатель.
Я дал такое определение чисто из логики работы функций в рамках программирования и по-моему оно вполне подходящее если речь идёт о программировании, а не о математике.
Подскажите про TcpClient из BCL или это проблема сетевого программирования вообще. Короче, завожу подключение в одной железкой, подключаюсь по TCP, беру NetworkStream через который собираюсь писать и читать данные в течение часа и более. Примерно черерз 20 минут сокет закрывается (SocketError.ConnectionReset). Насколько это нормальное поведение и с чем оно может быть связана, если не брать в расчет саму железку?
>>1286430 (OP) Вкатываюсь в ASP.NET MVC. С паттерном знаком в общих чертах, однако интересны особенности взаимодействия слоев абстракции. Где эту инфу взять?
>>1286430 (OP) Аноны может кто знает хорошую библиотеку для распознавания объемных,обычных и изменённых форм скругление углов, ребристость круга, разрыв в вершине фигуры и т.п. фигур на изображении.
Попробовал AForge более менее то что нужно, но не идеально, лучше всего окружности и хорошо ищет лишь цельные фигуры.
Ещё пробовал OpenCV, но он распознает лишь совсем простые формы.
Поясните за влияние оператора (.) на производительность. Вот например, мне надо сто раз обратиться к hui.pizda[j].djugurda Есть ли разница, что все сто раз будет написано "hui.pizda[j].djigurda" или лучше, если я объявлю в начале new Djigurda dj = hui.pizda[j].djigurda и сто раз уже обращусь к dj?
>>1294716 >в течении часа или более Юзай UDP или обновляй коннектда, поток придется пилить на части. Протокол TCP не предназначен для длительных коннектов, да и неразумно это с точки зрения безопасности. Для длительных взаимодействий между сервером и клиентом умные дяди давно придумали сессии.
>>1295118 Там, собственно, все прописано, я бы это фичу на постоянной основе не использовал, но иногда пиздец будет выручать, когда уже куча реализаций интерфейса и тут НАДО БЛЯДЬ добавить один блядский метод к интерфейсу, после чего ты сидишь и правишь десять реализующих классов добавляя методы с нотимплементедэксепшон
>>1295485 Ну то что у него по прежнему не может быть полей и свойств, например, ну и что класс может реализовывать несколько интерфейсов, но не может наследоваться от нескольких абстрактных классов.
>>1295488 Сессии - это не про сокеты, другой слой абстракции. У тебя должна быть какая-то система хранения состояния на обоих концах, которая этот слой реализует. В вебе это делается через куки, например: сервер сует токен в кукис, а на своей стороне делает запись с этим токеном + инфу о состояниях(какой браузер, IP, какие треды в избранном, забанен ли мочой). При возобновлении соединения, сервер принимает этот токен, возобновляя состояниеесли лайфспан не просрочен, в ином случае данных о сессии уже нет Можешь курнуть статейку на тему: https://developer.mozilla.org/ru/docs/Web/HTTP/Session
>>1295622 Стейт на сервере хранить не следует, это плохая практика. Стейт должен храниться у клиента. Для проверки валидности стейта достаточно электронной подписи секретным ключиком сервера, типа как в jwt.
>>1294491 Хз актуален ли вопрос, но панелька называется "Solution Explorer", в меню "Tools" или "View" сверху можно подрубить снова если вырубил случайно.
бамп вкатывальщика. я-джуниор, ищу человека, которому нужна помощь в проектах. ловить и решать простенькие задачки, попутно улучшая навык программирования - для меня. писать в телегу @fuckyou777
managed код имеет кучу невидимых ассертов и проверок, за счет которых перформанс, особенно при поточной обработке коллекций и теряется (ценой защиты от выстрелов в ногу, что в целом отлично, потому что в бизнес-среде докупить железо - это не такое глобальное баблишко в отличии от проебаного баблища бизнесом при байтосбоях, утечках памяти и разыменовании нулевого указателя, после которых всё раком встает), а не на JIT-компиляторе, как многие привыкли думать - он-то в целом что у жабы что у дуднета уже задрочен за несколько десятилетий не намного хуже LLVM у байтоблядей.
Сейчас учу сисярп в вузике, есть ли смысл его задрачивать? Цель - к лету найти работу, смотрю в сторону веба, ASP.NET MVC и пр.
Реально ли выйти на достаточный для устройства на работу уровень за пол года ± месяц при среднем знании плюсов, знании паттернов и теории БД?
Время есть по вечерам после учебы + работы в среднем часов 7-8 в сутки, в воскресенье свободен целый день так что учить есть когда. Спрашиваю именно насколько это актуально.
>>1296177 Не вариант, я сейчас работаю параллельно учебе, работу бросить не могу ибо жить будет не на что, родители оплату учебы могут потянуть, но еще и содержание меня и моей тни в довесок не смогут. Стажировка это обычно работа нахаляву, это я себе, даже несмотря на перспективы, на данный момент позволить не могу, мне нужно вкатиться именно на работу уже с зп хотя бы 30к, при том что сейчас у меня от 30к до 40к, но эта говноработа заебала уже очень сильно, просто мечтаю дропнуть её, прям пиздец.
>>1296182 >Стажировка это обычно работа нахаляву Обычно стажировка оплачивается. Ищи оплачиваемую стажировку. Такие тоже есть. Ищи паралельно работе, потом смени и постарайся выбиться со стажера в джуны.
>>1296173 Если нормально шарп сейчас дрочишь, то асп за полгода легко освоить, там сначала нихуя не понятно, главное на этом моменте не дропнуть. Рекомендую freeman adam - PRO ASP NET CORE MVC, там очень приятно и понятно поэтапно написано, а не как у некоторых.
Анон, помогай! Есть solution, в нем project1 и project2. И в первом и втором проекте используются одинаковые классы. Как мне сделать так, чтобы я один раз написал класс и мог его вызывать в каждом из проектов?
На РАБоте дали задание перепилить относительно небольшой проект с winforms на wpf. Собственно, как мне начать хотя бы? Опыт в шарпе околонулевой, соответственно, winforms и wpf тоже не знаю. Кто-нибудь занимался подобным?
>>1296184 А можешь поподробнее рассказать, если я учился бы в какой-нибудь шараге, ака колледж, то я смог бы поступить на стажировку? Сколько она длится, когда тебя джуном делают? Ну это я про среднюю температуру по больнице спрашиваю
>>1296763 Никак, vs code поддерживает .net core, а в нем консольные приложения кроссплатформа и компилируются в .dll. Если хочешь экзешник, тебе нужен просто .net
>>1296731 Зависит от компании, в некоторые места можно на стажировку с начальными знаниями попасть, но обычно она неоплачивается, либо копейки-стипендия. В некоторые места стажером сложнее стать, чем в другие джуном, например, в dataart, kontur. В датаарт, например, достаточно хорошо пердолят на собесе, в контуре на стажировку вообще тестовое предварительно есть. Обычно стажировка не больше пары месяцев длится.
Программач, есть задача, в голове есть решение, но не понимаю как реализовать Даны 3 числа, и выражение a+bx+cy Нужно преобразовать все это в трехчлен по правилам: — коэффициент при члене, содержащем переменную, опускается, если его модуль равен единице; — член, коэффициент при котором равен нулю, опускается (кроме случая, когда все коэффициенты равны нулю, тогда трехчлен состоит из одной цифры 0); — знак "+" опускается, если он предшествует отрицательному коэффициенту; — знак "+" опускается, если он стоит в начале выражения (так называемый унарный плюс); — знак умножения между коэффициентом и переменной опускается. При этом запрещено менять местами члены.
Куда забить строку так, чтобы её можно было менять? Есть ли способы решить иначе?
>>1297184 "Трояны от производителя" присутсвуют не толкько в ОС но в аппаратных средствах, которые все сплошь проприетарные. Так что как ни крути, от слежки нигде не спрячешься, даже на линуксе.
>>1297229 >>1297234 Потому что впф - лютая хуйня. Какие-то привязки, какое-то наследование он наследования от наследования, свойства свойств, всё запутано пиздец. С winforms всё ясно и понятно, например.
Антоны, прочитал курсы на метаните, прочитал Рихтера, хочу дальше в Asp.Net, что можно почитать? Материала курсов на метаните по ASP.NET MVC 5 будет достаточно, чтобы пойти работать или есть какая-нибудь книга, где все более подробно разъясняется?
>>1297272 >>1297261 Лично я работаю на кор, нахуй это легаси, в дс/дс2 реально работу найти, хоть и меньше ее, конечно. У этого же автора есть то же самое для старого, PRO ASP NET MVC 5 кажется называется, там все то же самое практически, но на старом аспе, естественно
>>1297292 А прочтения книги хватит для вката? Думаю сперва шлифануть по Asp.Net MVC 5, а потом и Core, все равно времени еще много. Вот насчет стажировки интересно, имеет ли она смысл или сразу на Джуна лучше пойти?
>>1297376 > сразу на Джуна лучше пойти? Да. Да, именно это. А если умеешь хорошо пиздеть и голова работает - шли резюме и на мидлов, пиши в сопроводительных письмах всякую хуйню уровня "быстро учусь, смогу разобраться с вашей хуйней" и тд. И в том и том случае ты вкатишься, но если не будешь загоняться в рамки - можешь вкатиться на большие деньги.
>>1297376 Я на вкат на джуна на кор прочитал страниц 200, там типа база mvc с полным примером с нуля (весь код на гитхабе есть) - маршрутизация, подключение к бд, разор, бутстрап с жиквери (в итоге весь фронт вообще не пригодился пока), тестирование. Ну ясен хуй почитал ещё мсдн местами, метанит, везде по немногу. Состряпал типикал mvc приложуху, начал искать работу, в итоге нашел (несколько собесов было зафейлено, так как ко мне очень предвзято относились ревьюеры, когда узнавали, что у меня нет бэкграунда в вебе, начинали валить на какой-то хуйне.), дали тестовое - простецкий круд с ef, mssql. Я ещё несколько тестов для контроллеров написал с использованием mock, тимлид фонтанировал от того, какого они охуенного сотрудника нашли всего за 70к, особенно с тестов, а я и рад. Я так понял, что на с#, а в частности, асп вообще сложно найти адекватов, так как не очень распространен в отличие от всяких джав-жс, потому что мне потом ещё по резюме дохуя звонили, хотя у меня там ясно написано, что я говно почти без опыта и по рассказам из мывамперезвоним-тредов, наоборот, плебс без айтивышки и нормального опыта вроде меня должен бегать умолять, чтобы взяли за еду работать
У меня во вкладке tabpage есть textbox, который появляется в начале редактирования элемента и устанавливает на себя фокус. Как сделать так, чтобы при клике вне tabpage (у меня есть справа свободное пространство, сверху есть менюха) фокус с текстбокса сбрасывался. Сейчас сбрасывается только по клику внутри самого tabpage
Его не рекомендуется вызывать явно, но я не понимаю, в чем тогда суть? Получается что удобность работы с памятью достигается сильными просадками в производительности. Ну вот например:
У нас есть веб сервис обработки видео, видео это достаточно объемные файлы, следственно пока видео загрузится на сервак для обработки/пока пользователь скачает уже обработанное видео у программы есть время почистить мусор, почему бы явно не вызвать GC? Вместо того чтобы всю ответственность перекладывать на рандом? Вдруг место в куче кончится посреди рендера видоса, а в ней будут валяться какие-нибудь финализируемые объекты я знаю что из тоже нежелательно использовать потому-что они тоже как-то через жопу удаляются, но все равно предположим что они есть, или просто большие объекты? Это же серьезная потеря в производительности, короче, what the fucking point?
Посоны, посоветуйте нюфагу. У меня есть инстансы одного и того же класса, причем я заранее не знаю сколько конкретно их будет, в них есть метод. Мне нужно выделить определенную часть из них, запихнуть их во что-нибудь, а затем оче резво вызывать метод на этих конкретных инстансах. Думаю использовать для этого HashSet, подводные камни?
>>1296974 > В датаарт, например, достаточно хорошо пердолят на собесе, в контуре на стажировку вообще тестовое предварительно есть единственное, чем у нас пердолят - это английским а вот если имеешь уверенный разговорный b1, то все будет заебись мимо из ДА
>>1297870 нету в рф только спб и воронеж я обычный гребец из украины и ничего не знаю про планы открытия новых офисов, тем более в рф но думаю вряд ли, куда вероятнее что в польше еще один откроют
сап шарпач. я смогу вкатиться в синтаксис и логику С# за неделю, чтобы иметь возможность работать с Xamarin’ом? если нет, то сколько времени въебу прежде чем смогу делать себе приложение под нужны? Бэкграунд: Python, Django, Js+React (html-css) Си и плюсы напишу hello world
>>1294800 Лучше вкатиться в ASP.NET Core и посмотреть там работу с DI и EF. В ASP NET MVC придётся какой-то сторонний IoC тянуть >>1296611 С упором на практику, а не на теорию, ты завалишься на первом же собеседовании после вопроса про различия классов и структур >>1298146 2. Не совсем
Короче облазил весь гугол и ничо не нашел. Проблема в том что закрытое окно продолжает быть в памяти. Дело в том что приложение должно работать постоянно на заднем фоне, нормально если оно таким образом будет занимать 70МБ? В момент запуска приложение жрёт 18МБ, когда открываешь и закрываешь окно 40МБ. Проверял на базовом проекте и ждал минут 20. Как открывается окно: AppStartup => (new Window1()).Show() Как закрываеться окно Window1.btnClick => Close()
>>1298650 25-30, но это была инженерная специальность на госпредприятии и я занимался измерениями, а формы были опционально, можно было на любом популярном языке софт писать, чтобы себе автоматизировать работу
>>1298724 Дополню, что туда я вкатился месяца два поизучав сисярп в неспешном режиме, так как знание языка не требовалось и не предполагалось, что надо будет программировать (там много кто до сих пор на листочке от руки записывает показания с приборов), до этого сталкивался только с питоном на лабах в универе на уровне подключить матплотлиб чтоб график чертился
Сап, программеры. Есть одна WPF форма, на которой две кнопки. Подскажите, как мне на одну повесить, как горячую клавишу, "правую_стрелку", а на другую, соответственно, "левую_стрелку" клавиатуры? Гугл что-то на помощь не приходит.
>>1297253 > в WPF проще резинить и масштабировать в разы > они кроссплатформенные и интернациональные > это просто более высокий уровень разработки UI/X > хотеть дальше бегать на костылях, которые увидел раньше
>>1286430 (OP) Помогите пожалуйста, еом (есть один метод). Этот метод - async, в нем while(true). Метод запускаеться через тред (thread.Start()), но после thread.Abort() он продолжает закономерно работать. Как его правильно убить извне (на нажатие кнопки)?
Двач, не понимаю, что это означает в лабе: Составить и отладить программу для приближённого вычисления заданной функции y(x),путём суммирования членов заданного ее ряда s(x). Суммирование членов ряда проводить включительно до члена ряда, значение которого по абсолютной величине не будет превышать 10^-6. >Суммирование членов ряда проводить включительно до члена ряда, значение которого по абсолютной величине не будет превышать 10^-6. Слагаемое в прогрессии всё равно будет больше чем 0,00001. Что тут требуют?
Посоны, посоветуйте нюфагу что курить, чтобы нормально разделить программу на что-то более удобочитаемое. Сейчас у меня один йоба-класс, в котором вообще все - GUI, логика, прочее. Оно вроде как работает, но читать это просто глаза вытекают. Что с этим можно сделать? Я пробовал разделять, но моя логика строится на том что все переменные сидят в одном классе. А тут получается, что создаваемый объект хочет переменную из создателя, гуглю как бы это обставить и натыкаюсь что это некий circular dependency, родитель зависит от порожденного и вообще червь-пидор и его надо избегать. Но как это решать-то? я в сишарпе две недели, не бейте тряпками
>>1297734 Добро пожаловать в мир управляемой памяти, внезапно нужно писать код, держа в памяти то, что у тебя будет собираться мусор. Если ты в себе уверен - то можешь руками вызвать гц и посмотреть что получится, может будет выигрышь я не шучу. Вообще если у вас сервер и вы страдаете от гц, то возможно вам стоит попробовать переключить с Server GC на Workstation GC или наоборот.
На попытку на маке запустить в vscode компиляцию мне выебывает json конфигуратор на вопрос которого я с первой страницы гугла не получил ответ, сконфигурировал со второго раза только поставилась либа на си#, ахуеть просто, но мой косяк(нет) она не перенеслась в апликатион и не имела доступ на запись в папке загрузки(хуле она туда распаковалась тогда ) есть че кроме студии в vmware ? Мне чисто пощупать по быстрому, вскод какой то отвратительный хипстерский кусок хуйни соре
>>1301065 короче скачал еще дотнет с сайта отдельно по гайду, потом он еще сосал минут 5 какую то зуйню при запуске, все равно не работает, заебись, пойду вмварь ставить
>>1300993 Двачую про servergc, эта хуйня раньше была вообще по умолчанию тру и на средних машинках ебошит нихуево оперативу, написал микросервис с парой маршрутов и базой на 200к записей, а эта дрисня жрала 250+мб оперативы и gc иногда начинал ебашить по пять раз в минуту. Пару дней искал как пофиксить, в итоге блядь строчку в файле проекта хуярнул на server gc false и стал 40мб жрать, сборщик тоже норм работает
Антоны, я опять нихуя не понял? Книгу фримена про ASP.NET MVC 5 надо тоже читать не в обычной последовательность? Почему он дает пример того, что еще не обьяснял?
ЕОТ (есть один тред). В цикле метода (который висит отдельным тредом) while(true) вызывается (в зависимости от данных) другой метод (который не в треде) от 0 до 2 раз. Дело в том само собой вызываемый метод сразу не срабатывает, а только после окончания круга в цикле, и срабатывает только 1 раз, даже если вызова было 2. Как сделать так чтобы метод срабатывал больше 1 раза?
>>1300713 Вкатиться с нуля (без опыта) во фриланс на этом языке есть варианты? Через что именно? Пока на ум пришли только парсеры, есть что еще? Я бы в офис джуном/стажером устроился бы и не лез во фриланс, но в моей мухосрани работы нет, а в дс перебираться - у меня нет денег (из за того, что нет работы)
Програманы, есть вопрос по WPF. Сейчас пытаюсь разбираться в принципах его работы, потихоньку дошел до привязки. Базовая концепция этого дела мне в принципе ясна, Metainit в этом плане убер-годный ресурс для нубов вроде меня. Но вот сейчас хочу пойти чуть дальше, и натыкаюсь на проблемы. Суть в чем: есть текстовый блок, который должен транслировать значение определенной цифровой переменной у объекта. Но этот объект на момент старта программы ещё не существует, и появляется только после нажатия кнопки. Разумеется, ссылка на пустоту выдает собственно пустоту или дефолтное значение. После появления объекта, разумеется, тоже ничего не происходит.
Какие варианты это реализовать? Пока думаю что должны пригодиться события, но, честно говоря, никаких мыслей об том как бы их здесь впихнуть тоже нет.
На каком из аспиринов проще всего делать бэк нубу, который на сярпе занимался только околоформошлепной деятельностью и про работу серверов / бэка вообще ничего не знает.
>>1302015 Вот и я тоже об этом подумал в первую очередь, и даже реализовал в итоге. Но выходе все равно получалась пустота. Я предполагаю это из-за неправильного бинда - у меня это Binding Source=Название объекта. Как будет правильнее указать?
Сап, двач. Объясни мне вот эту хуйню на пике 1. Что вообще здесь происходит? ЯНП
Алсо, метод должен возвращать объект с интерфейсом IEnumerable<string>, но у возвращаемого string'а такого нет (пик 2). Насколько я понимаю, возвращается как бы "элементами" объект типа StreamReader, но у него нет вообще никакого интерфейса.
И почему код под первым комментарием работает, а под вторым нет?
>>1302392 WriteLine имеет перегрузку с обжект, т.е. может принимать любой тип, а не только стринги. >>1302379 У тебя метод возвращает IEnumerable, который не поддерживает индексаторы. Либо делай из него лист/массив (тогда идет по пизде вся ленивость и проще вызвать File.ReadAllLines), либо заюзай First().
>>1302637 >У тебя метод возвращает IEnumerable Это понятно, но: - using (var reader = System.IO.File.OpenText(file)) возвращает объект типа StreamReader, у которого нет интерфейса IEnumerable; - метод ReadLine объекта StreamReader возвращает string, у которого есть IEnumerable и IEnumerable<char>. Откуда берётся объект с IEnumerable<string>? Догадываюсь, что из блока using (...) { ... }, но каков "алгоритм" или последовательность?
>>1302782 А ты знаешь, для чего слово yeild нужно, или прото так его влепил? Оно как раз таки и возвращает при каждой итерации строку в вызывающий метод. И для него эти строки выглядят, как обычный Ienumerable<string>.
>>1302783 >А ты знаешь, для чего слово yeild нужно, или прото так его влепил? Это туториэль с сайта микрософта.
>Оно как раз таки и возвращает при каждой итерации строку в вызывающий метод. Но метод вызывается один раз, возвращает объект, наследующий интерфейс IEnumerable, по которому дальше происходит итерация.
>>1302379 Метод ReadFrom должен возвращать тип IEnumerable<string> и он действительно его возвращает. Почему: у тебя в цикле вызывается yield return line. Можешь пока рассматривать это как некую магию (а потом пойти почитать документацию как оно работает), но yield делает так что у тебя не сразу происходит return line, а лайны как-бы накапливаются с каждой итерацией цикла и когда цикл завершается они выдаются одним объектом, неким перечислением всех лайнов. И тип этого объекта IEnumerable<тип переменной line>, т.е. перечисление строк.
Код под первым комментарием работает потому что foreach умеет работать с объектами типа IEnumerable (а lines это IEnumerable, если ты помнишь).
Код под вторым комментом не работает, потому что IEnumerable не умеет работать с квадратными скобочками.
Антоны, как установить Ninject в Windows Form? Я знаю, как оно производится для Asp.Net NinjectModule registrations = new NinjectRegistrations(); var kernel = new StandardKernel(registrations); DependencyResolver.SetResolver(new NinjectDependencyResolver(kernel)); А как это все прописать в формах? В главный класс засунуть?
Котаны, помогите с названием для метода. Есть статическое свойство Services.Game - когда ты обращаешься к Game, оно создаёт игровой сервис (либо релизный, либо дебажный, в зависимости от билда). Я хочу в Services добавить метод, который сможет заранее создать Game, без обращения к этому свойству. Как такой метод лучше назвать? Чтобы было понятно, что вызывать его не обязательно.
Может EnsureGameService()? Provide здесь не подойдет, потому что в этом случае ты должен предоставить сам сервис.
Антоны, можете помочь разобраться? https://professorweb.ru/my/ASP_NET/mvc/level3/3_6.php У класса LegacyRoute есть только один конструктор, он принимает массив строк, также есть метод public override RouteData GetRouteData(HttpContextBase httpContext) Откуда он получает это самое httpContext?
А поясните за геттеры, а конкретнее вот этого вида: public int Foo { get; set; } Какой вообще от них смысл? Почему все(кого я читал) советуют их пихать так? Почему пихают? Ведь это вроде как тоже самое, как если бы я это foo просто публичным оставил, а потом обмазал двумя методами поверх. Я бы понял если бы в эти гет\сет была какая-то дополнительная логика с проверками или сет был бы приватным например, но я постоянно вижу конкретно вот это вот. Нахуй оно вообще нужно? Что вообще эта конструкция достигает?
>>1303251 Как минимум интерфейсы могут иметь свойства, но не поля, плюс ТАК ПРАВИЛЬНО, паблик поля ставят преимущественно пидарасы, если хочешь паблик, то ебош свойство, а так как по большей части тебе не нужно доп. логики, то ебош автосвойство. Ещё раньше, насколько я помню, свойства нельзя было сразу инициализировать, а поля можно типа сразу написать public int field = 13; public List<int> field2 = new List<int>();
и потом когда чужой код читаешь, разбираешься, где этот ебанат что прописал, свойства блядь у него в конструкторе ставятся, поля на месте, пиздец. Сейчас свойства, кстати, тоже можно сразу ебошить, типа дефолтное значение public int Prop{get;set;} = 12; или типа того, не помню, потому что таким ебанатством заниматься это пиздец.
Сап. Хочу спросить у тех, кто работал с identity server'ом. Можете ли привести какие-нб юзкейсы с ним? Желательно конкретные и с обоснованием, почему была выбрана именно данная технология, а не ее альтернативы, скажем asp.net identity.
>>1302379 Индексатор (квадратные скобки) есть у массива, а у IEnumerable нету, поэтому ошибка компиляции. Если ты сделаешь вызов ReadFrom и после него добавишь ToArray(), то все заработает. Но это очень поверхностно, советую почитать про ленивость IEnumerable и yield
Решил запилить свой небольшой проектик и сразу понял, что у меня не хватает знаний чтобы реализовать его по стандартам ООП. пиздец каких-же я багоров нахуячил, аж самому стыдно.. Но хочется переписать все, чтобы было красиво. В связи с этим реквестирую топовую книжку по сисярп, где мне разжуют все тонкости ООП. С меня как всегда.
Как же я хуею с ебаного впф. Оптимизация, простота, новый подход, да? ДА ПОШЛИ ВЫ НАХУЙ! То, что в формах делается в джва клика, в впф нихуя не очевидно и требует дополнительного кода. Куча каких-то говнопримочек, которые непонятно как использовать и зачем. Почему эта хуйня всё ещё используется?
>>1304540 Ты че, дебил? Если не следовать MVVM, то там тупо окошко верстаешь, а потом так же накидываешь ивентов, ебанутый, более того, там вообще так же можно мышкой натягать компонентов и прикрутить ивенты, короче, ты тупой какой-то, сиди дальше на своих ебучих формочках и не еби людям мозги своей тупостью
Хоспади я уже все перекопал, помогите, анончики. Как мне создать событие On Process Exit? Чтобы при закрытии моего hello world'a он успел записать лог на диск? Делал так: AppDomain.CurrentDomain.ProcessExit += new EventHandler(OnProcessExit);
Поясните ньюфагу за декомпиляцию и библиотеки. Если я грубо говоря сделаю морду с формами, а почти всю логику в либе, то при декомпиляции .ехе не будет выдавать либу, так? Получается таким образом приложение становиться автоматически неуязвимым?
>>1304942 .Net параша в плане защиты кода. Но можешь сделать так: Пилишь свою морду с формами, которая подгружает шифрованную либу с твоего сервера, декриптует и грузит в память через рефлектив инвок. В итоге получается, что либа светится только в памяти и не попадает на диск юзверя. Можешь еще и форму и либу сверху накрыть любым обфускатором, confuserex'ом, например.
>>1304986 1. Либа не падает на диск. 2. Делаешь проверку на доступ к либе только из приложения. 3. Пилишь еще овер9999 хитровыебанных трюков 4. Накатываешь обфускатор 5. Накатываешь протектор
>>1304885 Всё, не надо уже. Вырезал 1 символ в paint посчитал количество пикселей для него, и просто сделал .FillRectangle() - в зависимости от длины строки.
>>1304120 это разные вещи, идентити сервер это для централизованной аутентификации, например, госуслуги, куча сервисов отдельностоящих, а аккаунт у тебя один.
асп нет идентити это штучка для работы с локальными пользователями в приложении (на самом деле по-сложнее), она, например, позволит тебе хранить пользователя в своей локальной бд, или же брать данные пользователя (аутентифицировать его) из идентити сервера. Так что если у тебя не интерпрайз, то используй асп нет идентити, со временем сможешь перейти на идентити сервер (хе-хе).
>>1305004 > 2. Делаешь проверку на доступ к либе только из приложения. И что это дает и как это сделать? Декомпильнул его и дописал записать на диск либу, не?
Аноны, нужна помощь. У меня стандартная история: вкатываюсь с нуля. Так вот, есть ли какой-то уровень знаний с которым я смогу врываться на джуна/стажера? да и вообще, что изучать после основ C# и в каком порядке( дрочу метанит) ?? ПОмогите плез, с меня как всегда.
>>1305419 HELLO WORLD @ ДЛЯ ВЫВОДА НУЖНО ЗАГРУЗИТЬ ЛИБУ С ИНТЕРНЕТА @ БЕЗ ИНТЕРНЕТА ПРИЛОЖЕНИЕ НЕ МОЖЕТ ВЫВЕСТИ ЧТО ЕЙ НУЖЕН ИНТЕРНЕТ @ ЖИДКО ПУКНУВ, ПРИЛОЖЕНИЕ ПРЕКРАТИЛО РАБОТУ
Как сериализировать класс через XmlNode? Просто в файл пишется отлично, через, а ноду как не мыкался - какой-то пиздец выходит. Пихает хтмл вместо хмл тегов. Нуллрефы при попытке прочитать. Что делать посоны?
>>1306555 Я не хотел тебя обидеть. Просто привык всех так называть - это не было оскорблением. Госпади, как же бесят дегенераты, которые обижаются на обзывания в интернете!
>>1306249 Так какое разрешение png-пикчи задать по дефолту?
Кстати, можно было бы разрешение и цвет фона с фракталом - из аргументов брать, и аргументами их задавать. Что-то вроде >fractalgen width height fractal_color background_color >fractalgen 1920 1080 #000000 #FFFFFF
Антоны, у меня есть таблица Player, которая соединена связью один ко многие с таблицей Team public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } public int? TeamId { get; set; } public virtual Team Team { get; set; } Когда я в DataGridView пытаюсь отобразить свойство Team, то у меня там ничего не показывается, в чем проблема? Делал по гайду https://metanit.com/sharp/entityframework/3.3.php
>>1306830 Не смотрел, что там в гайде указано, но знаю, что у тебя Team - внешний ключ и для отображения инфы нужно явно подгрузить таблицу, т.е. использовать в linq метод Include(x => x.Team) или как-то так, на метаните есть это
Аноны, нужна помощь. Пусть есть базовый класс Animal, наследники которого Cat, Cow и Dog. На вьюхе на форме есть дропдаун, где перечислены вышеуказанные животные. В зависимости от выбранного животного, ниже появляется инпут, однако для каждой сущности он кастомный. Собственно, что я хочу: иметь на вьюмодели лишь одно свойство типа Animal, куда будет присваиваться то или иное выбранное животное при отправке формы. Это возможно? Как лаконично все это разместить на вьюхе? Что погуглить? Как реализовать мою затею, чтобы в будущем совершать минимум телодвижений, если я захочу добавить ещё 5/10/100 животных?
>>1307063 >1920х1080 Прописал. Вот тут исходник оригинального fractalgen v1.1: https://rextester.com/CSVIA92299 (1920x1080) по дефолту. А вот тут, этот мой модифицированный fractalgen v1.2: https://rextester.com/KAOE3049 Компиляция: 1. Сохранить код в Program.cs 2. cmd -> "ПУТЬ_К\csc.exe" Program.cs 3. На выходе - Program.exe, генерирует фракталы.
>Пиздато задумал! Только у меня не получается ничего, пробовал, ошибки бьёт, и я не знаю как в C# аргументы передавать. >гуи заебашить В душE не ебу что ты имеешь в ввиду, и как это кодить.
В общем, вот вам код, поиграйтесь, вы же спецы по C#. Только не забудьте же выложить годную софтину тут, раржпегом, на rextester, гитхаб, или на саму нборду!
>>1307173 >commanddotnet Что это? Костыль для аргументов? Его инклюдить надо внутри Program.cs, чтоб использовать? Если да, то идея - сразу отпадает.
Напомню, что основная фича фракталгена - это маленький размер исходника, отсутстие других сторонних библиотек и подключаемых модулей, а также маленький, портативный exe (win32, win64).
Всё это должно влезть zip-архив менее 64 КБ, потому что размер постов на наноборде органичен этим лимитом.
commanddotnet-master.zip уже занимает 211 КБ (если ничего не вырезать оттуда). Ну и какой смысл инклюдить туда, всякую многовесную хуету - лишь ради того, чтоб юзнуть аргументы?.. А ещё если GUI прикрутить...
И да, вы же лучше, как спецы, сами сделайте, прикрутите, и зацените. Я же ничего не понимаю в C#. Лишь пару функций нагуглил, вписал их и всё.
Анончики, помогите. Есть цикл while пикрилейтед, который пускает таски по кругу и после спит 1мс. Вроде все норм, но таски не успевают отрабатывать за 1мс, а цикл запускает их вновь, короче в итоге у меня утечка памяти и все падает. Как мне защитить таск от повторного запуска? Чтобы следующий запускался только после окончания предыдущего?
Софтина эта, и так нормально генерирует - даблкликом по exe... Мне бы первостепенно - впроглить туда функции, чтобы аргументами разрешение передать туда, и цвета фона/фрактала. Но я не знаю C#
Тащемта, если заниматься прогой, то можно сделать гуй как у Garlic'a, пикрелейтед, он кстати доступен к закачке тут: https://2ch.hk/crypt/res/32539.html#40726 Там, в GUI, можно было бы и имя файла сгенерировать/задать, и цвета текста/фона/фракталов, и разрешение, и главное - количество картинок, чтобы сразу пачкой сгенерировать штук 200. Но всё это можно и аргументами передать, без GUI.
Важно здесь то, чтобы всё это было портабельным, компактным, и без инклюдинга всяких сторонних библиотек, которые нужно прикладывать к сорцу, и чтоб запускалось везде.
Поэтому, когда проглить будешь - чтоб сохранить обратную совместимость, по максимуму заюзай стандартные функции, те, которые есть везде, в любых линухах и виндах, даже в win95. _______________________ Алсо, я нашёл тут http://tilde.club/~david/m/ генератор фракталов с Mandelbrot Set, в canvas'e. Если его сохранить, то страница работает локально в браузере, без всяких exe и прочее. Перепилил его слегонца, добавил ссылку на закачку png-файла, и base64 в href, добавил рандомным образом генерируемое имя файла в download. Получилось это: https://github.com/nanoboard/nanoboard/files/2655543/fractalgen_canvas.zip На пик2 - сгенерированный фрактал в png. И такие ещё генераторы рандомных пикч понаделал: https://github.com/nanoboard/nanoboard/files/2655061/generate_canvas_png_and_download.zip Пик3, пик4. Последняя много байт весит в Full HD, и браузер crush'шится при попытке её скачать, поэтому HD. Всё это на HTML-JavaScript, и открывается в браузере с поддержкой HTML5 canvas, но не раньше. _______________________ Думаю, можно было бы и фракталген на canvas переписать, и с локалхоста его открывать. Но много пикч так не нагенерируешь... Всё крошится, crush crush crush...
В Понедельник меня кидают на проект на asp.net mvc. Я никогда не работал с с#, только php и python. Что нужно знать из C# для минимальной работы с фреймворком? Я так понял Коллекции и ООП, но надо ли многопоточность, асинхронность, сериализация, LINQ и т.п.?
Хочу попробовать f#. По сярпу учился с метанита, но по фшарпу не нашел вообще нихуя, кроме гайдов от микрософт. Что посоветуете? его в вскоде вообще можно писать?
>>1309419 О, Вы служитель секты Вендокапеца? Уверен, что когда венда перейжет на ядро линукс и KDE вместо explorer, шрамы станут стандартом в написании приложений под линукс.
>>1309831 WPF - глючная и жутко медленная параша, которая, к тому же, требует написания тонн избыточного кода. Именно поэтому серьёзных проектов на WPF крайне мало. Для простого интерфейса есть винформс, а если же тебе нужен йоба-интерфейс, который умеет всё, лучше задумайся о написании морды на Qt.
>>1309958 Все равно этот впф легаси и нихуя не кроссплатформенный. На qt пиши. это если ты не макака, которая зарабатывает на хлеб, поддерживая легаси говно
Обьясните плес, что это за файлы. Вот создал я свой проект, написал dotnet publish -c Release pussy.csproj, и у меня создалась хуева туча файлов. Запускаю dll с Release, вроде все работает. Но что за файлы в Publish? Почему они дублируют файлы с Release? И что за jsonы? Или вот, в каком-то depth файле указано че-то про ssl для дебиана и федоры. Но у меня арч и все работает. Что это вообще такое? Я думал, у меня после компиляции будет две дллки - мой проект и либа, которую я использовал. Но вышло хуй знает сколько файлов.
>>1310026 Есть разные способы публикации. Вообще, предполагается, по всей видимости, что нужно в паблиш положить также и все либы, которые использовались в твоем проекте, ведь кто знает, может быть, на сервере, на который ты свой проект положешь, таких библиотек не будет.
Антоны, у меня есть таблица приход, где нужно указывать товар и сколько товара. От таблицы товаров мне по сути нужно только название товара, а количество товара должна содержать таблица прихода. Как все это сделать?
>>1310125 Не, не совсем подходит. У меня есть таблица товар и товар в приходе. В таблице "приход" внешний ключ на "товар в приходе", а в таблице "товар в приходе" внешний ключ на товар.
Захотел попогромировать, случайно скачал выжел студию. На https://visualstudio.microsoft.com/ru/vs/compare/ какие-то ебучие заклинания. Какие компоненты оптимальны для здорового образа жизни? Удовлетвориться ли мне швабодным коммьюнити или захватить судно ынтерпрайза?
>>1310209 Коммьюнити версии тебе вполне хватит. В энтерпрайз нравится только codelens и то что можно смотреть события ado.net прямо во время отладки, ещё иногда использую поиск клонов кусков кода и intellitest. Но и без всех этих преимуществ я бы жил отлично
Есть async метод, назовём его getMutex. Есть есть другой метод, назовём его foobar, который бесконечно распределяет ресурсы.
getMutex должен получить от этого метода ресурс и продолжить работу. Сейчас я из getMutex закидываю определённый объект в очередь, которую съедает foobar. foobar решает, что этому объекту пора отдать ресурс и выставляет (там внутри monitor, проблемы с одновременным обращением не будет) у объекта поле в true. В этот момент в getMutex происходит active lock вида while (!obj.field){Thread.Sleep(10);}
Теперь вопрос: Я хочу, чтобы getMutex получил от foobar уведомление о том, что getMutex может продолжать свою работу. Как это делается правильно?
Двач, я совсем тупой, помоги. Есть два списка List, в каждом списке лежат структуры с несколькими параметрами (имя, адрес, йоба, итд). Как провести сравнение этих списков? Знаю что есть: список1.SequenceEqual(список2); Но с моими структурами это не работает, вываливается stackoverflow exception и хеллоу ворлд падает.
>>1310526 > сравнить А что ты хочешь сравнить, кто вы то еб твою мать? Может ты хочешь сравнить количество структур в листе или суммарно у кого йоба больше. Тебе надо написать свой метод сравнения или перегрузить Equals/== и там написать логику и что ты хочешь.
Шарпогоспода! Давно беспокоит одна мелочь в коде. Представим property, у которого getter просто возвращает значение field, а setter при этом реализует какую-то логику (см пик).
Могу ли я внутри класса использовать и property, и field? Например, field просто для проверки значения, а property чтобы изменить значение? Мне кажется, это уже получается какая-то каша. И следуя правилам хорошего кода я должен использовать только property. Так? Но стоит ли мне тогда изменить название field? Например, на internalValue? Чтобы не было соблазна использовать value.
>>1309965 WPF != MVVM. Можешь просто в код-бехайнд хуячить логику, некрасиво, говнокодом попахивает, но ниче страшного.
>>1309962 Место вот этого петуха-ниасилятара под шконкой. Кутэ, пиздец, покажи, сука, хоть одно приложение на кутэ, в котором интерфейс не выглядит максимально уебищно.
>>1310598 telegram А теперь покажи хоть одно wpf приложение, которое работает на чем-то, кроме винды. да и вообще, хоть одно популярное приложение на wpf
>>1310598 >Можешь просто в код-бехайнд хуячить логику не, я сторонник красивого кода. Вроде с основной идеей MVVM разобрался, там вроде еще есть всякие фреймворки для работы с ним.
>>1308106 Погрузился в эту вашу связку C# + Unity, огромное удовольствие. Интеграция Вижуал Студии и Юнити, C# по ощущениям как та же Джава, но я так понимаю, тут удобнее подключение фреймворков или лучше сделаны зависимости? Интуитивность написания скриптов для объектов движка Юнити просто замечательная, это гораздо лучше, чем писать тупые SQL-запросы и сервлеты.
>>1310573 Правильно использовать только свойства. Но если у тебя какой-то критический участок кода в котором происходит под 10 лямов итерация, так еще и параллельно и все это тягает каждый раз поле на проверку, то для производительности можно использовать field. Правда лишь при условии что он изменяется, а иначе надо создать лок. переменную где сохранить значение через получения свойства и уже с ним работать. Как-то был у меня код в котором я делал параллельно обработку двумерного массива и где логика зависела от одного поля, так вот когда значения пошли на десятки миллионов общей длины, то разница в обращению к свойству и полю дала свои плоды. Там что-то типа 15% в среднем было лучше по полю.
>>1310757 Хуй его знает. Мне кажется, что в таких огромных проектах используется много фреймворков, в том числе придуманые именно для этого проекта. Я не думаю, что какой нибудь файрофокс юзает только gtk библиотеку - скорее всего, у него своя гуи либа.
>>1286430 (OP) Аноны сможет кто помочь? У меня есть класс обертка, который принимает ссылку на массив и делает с ним всякие вещи. Как сделать при индексации к этой обертки он возвращал массив из ссылки но уже измененный.
То есть. Основной класс создает массив, создает экземпляр моего класса обертки и в конструкторе обертки кидает созданный массив, я над этим массивом шаманю в обертке и возвращаю к примеру длину массива.
Потом основной класс индексирует мою обертку так: obertka[0] и получить n элемент массива или изменить n элемент типа: obertka[0] = 101, причем когда еще раз создать экземпляр обертки и опять индексировать обертку обратившись опять к obertka2[0], то опять получить 101.
Братишка, как поспал? Я тебе покушать принес! Загляни в это помойное ведро и посоветуй в какую сторону рефакторить мой код в общих чертах. https://github.com/sumrakss/Sapper