>>1040940 В самих конструкциях я разберусь как-то. Интересно само распределение между ядрами процессора чтобы нагрузка была равномерной и не вешало всё остальные программы если процесс обработки будет долговременным. Или это все ОС регулируется? Вот если запущенная какая-то игра в оконном режиме, открыт браузер с видосиками и мое говноприложение загруженное под завязку, не будет ли оно отбирать все ресурсы процессора? Может где-то можно про это почитать?
Аноны, мне тут в образовательных целях стало интересно посмотреть на чужой код. Можете привести примеры годных C# опен-сурс проектов для изучения? С хорошим проектированием и кодом (особенно интересует первое: как и когда применяются паттерны в реальных приложениях, подходы к ДЕЗИГНУ и т.д.). Желательно что-то десктопное и небольшое по объему. Можно уровнем выше, чем ЛАБА_10, но и не результаты ежедневного труда десятка разработчиков на протяжении пары лет. И еще, если кому не сложно, напишите, какие примеры проектов вы показывали на собеседованиях на джуна. Я понимаю, что это не сильно важно и там главное - качество кода, но все же. Надо начинать шевелиться с поиском работы, а у меня гитхаб пустует. Заранее спасибо.
Думаю перелезать с ASP.NET MVC на ASP.NET Core + Angular. У кого-то уже есть опыт таких перемен? Как быстро и легко получилось? Был небольшой опыт работы с Angular 2.
>>1041294 Нельзя пилить c# код в представлениях, поэтому придется изучать typescript фреймворк с такой же философией. Плюс говорят EF там сырой и SignalR нет, но обещают пофиксить во второй версии.
Как в MVVM проводить живую валидацию пользовательского ввода на контролах привязанных к нестроковым свойствам? Валидаторы работают на уровне вьюмодели, они просто не знаю что юзер чего-то там пишет неправильно так как ввод не распарсен. Что делать?
И каов при этом механизм? Надо же как это передать эту инфу в систему валидации/привязок, а она работает с объектами модели которые уже не строковые. И как это разруливать?
Ты про софт вообще или винформс? Тут даже не важно видел или нет, это логичное поведение с точки зрения юзер экспиренса. И по-моему во всяких кастомных контролах от девэкспресса и ему подобных такие фичи есть.
Это шарпотред? Есть лист в виде файла excel, хочу использовать его как шаблон, чтобы его открывать, копировать содержимое, и дописывать в определенные места контент. Как бы мне это лучше делать? Пока я придумал только искать/перебирать все ячейки в цикле, чтобы выбрать ключевые конструкции типа {{date}} или {{zalupa.list}} и дописывать в ячейки по этим координатам нужный контент. Есть нюанс в том, что это как-то топорно и долго - я решил перебрать 1000х1000 ячеек и охуел
>>1042839 Сразу дописывай mvc, а то зашкваришься. Я писал подобие двача, анонимный форум называл. Можешь просто форум, с авторизацией. Интернет магазин сложен будет для тебя, там надо очень хорошо базу ef проработать, если конечно хочешь с поиском/категориями/параметрами и шлюхами. Чат. фронт сначало на нативном js, потом с angular и signalr Сервис каптчи. Перепиши инстаграм, твиттер, трелло. Библиотеку какую - похер если уже такая есть.
Всё описание, интерфейс, коммиты - на английском. Обязательно всё это на гитхаб, причём не в конце, а в процессе. Купи хостинг самый простой, деплой там всё, зарегистрируй домен фришный - типо .ml и в путь.
пиши фейкомыльце, скину ссылки на свои свистелки-перделки, может поможет чем.
>>1043263 Разница никакая между ними. Не превышает лени по переустановке. Я про всякие говноподелки вроде intellij и прочего говна мамонта от jgetbrains
Шарпаны, есть одно приложение, в нем нужно открывать документы Word, копировать в них шаблонный документ, и заполнять данными. Я все успешно реализовал через Interop, но там вся работа с файлами идет через запущенное в фоне приложение Word, так что мне приходится оборачивать всё в эксепшоны и проверять, работает ли word. Как нормальные посаны работают с документами MSOffice без собственно Office? Хочу, чтобы в фоне ничего не было запущено.
Тут кто-нибудь использует Project Rider? Вот у меня solution, в нём два project. Как мне запустить второй проект? Не могу поменять никак, нигде нет выбора. В MSVS просто есть переключатель между активными проектами, тут такого нет и запускается только первый проект.
>>1044225 Короче, выбросил нахуй этот интероп и пошел в open XML. Правда, там строчки в таблицах распадаются на несколько run, но это чинится в принципе. >>1044613 Для ворда можно spire.doc накатить, но на него документации мало. Можно ещё npoi, но у него мало примеров на word, все хотят решать проблемы в excel.
>>1045012 Да там вообще много всего, но лучше бы студию на х64 перевели бля. А ещё в 17 баг дикий заебал уже когда много лямбд в коде она начинает цпу жрать до 80% на ровном месте, в 15 такого нет.
>>1045120 > дохуя анонов пишут Не много ли ты хочешь от местной аудитории? Тут половина серверы пишет на ноде, а другая половина при слове SOLID хорошо, если Снейка вспоминает знает классику хотя бы. Но все-таки в сторону .NET Core я бы посоветовал смотреть.
>>1045144 И я в их числе, полное незнание архитектур, паттернов, принципов построения систем. Буду изучать. А чем кор хорош кроме того, что теперь можно не платить двойную таксу за мссервер и хостить на обычном никсовом?
Как в MVVM создавать вьюмодели по определенным критериям? Если в системе может быть много разных вьюмоделей наследников базовой вьюмодели (или ее интрфейса), как создать нужный экземпляр динамически?
Я ж писал, что в системе дохера наследников некоторой базовой вьюмодели. Надо из всех них выбрать одну по дополнительному условию которое содержится в самом типе конечной вьюмодели (аттрибут, константа или свойство).
>>1045377 Как вариант нужен словарь или список со всеми типами вьюмоделей, по каждой вьюшке проходить и через рефлексию получать все мемберсы и проверять условия. Но это в любом случае какая-то хуетень, в ебло бы тебе харкнул за такое.
>>1045405 Как ты, например, поймешь какого типа тебе вернулась вьюмодель? Или будешь писать костыль и тебе будет еще и тип возвращаться вместе с объектом.
Есть приложение на ASP.NET MVC, вопрос следующий, можно как-то не сильно костыльно позволить ввод чисел в немецком формате, где вместо точки запятая и тысячи рапзделяются точкой при этом чтобы переменные были дабл, инт без долбанного сстринга, бля может плоха объяснил, пишет короче ис нот валид фор название переменной
>>1045433 Чудес не бывает, не хочешь через рефлексию (я бы тоже не хотел), придется объединять через какой-нибудь общий интерфейс или выносить критерий в базовый класс.
>>1046272 VB.NET - это C# с другим синтаксисом (в основном замена фигурных скобок на ключевые слова). А между VB.NET и VBA общего не больше, чем между Java и JavaScript.
>>1040269 (OP) Вечер в тредик, кодинг в сладость, господа-дотнетчики! Появился такой вопрос: в C# нет статических конструкторов с параметрами. Как мне инициализировать приватные статические поля статического класса так, чтобы можно было записать в них значения только один раз и нельзя было получить доступ из других сборок/программ/приложений и т.п. Неужели придётся пилить синглтон на одинарную запись? Алсо эти приватные поля должны шифроваться в момент записи и храниться далее в таком виде (большая часть полей - приватные ключи горячих криптовалютных кошельков, поэтому нельзя допусить, чтобы ключи утекли через простое чтение оперативы).
>>1047276 Алсо, софт на ASP.NET Core (web-server Kestrel) и крутиться будет под потенциально уязвимыми сборочками Линекса, так что защита должна быть параноидальной. Желательно, чтобы такой метод одинарной записи не подвергался инъекциям в память/перехватам записи на аппаратном уровне. Так же возможно ли стандартными средствами .NET Core предотвратить сброс памяти на диск во время гибернации. То есть приложение должно фейлиться при попытке свопинга памяти/сборса памяти на внешние устройства и т.п.
>>1047715 Расшифровал - там приватный ключ от кошелька Сатоши Накамото. Теперь я богат и мне уже не нужны ответы на эти >>1047276>>1047284 вопросы, хотя я всё ещё жду.
>>1047276 Если поля приватные, то к ним доступа из других сборок / программ / приложений и так не будет же, зачем извращаться? Приватное поле в классе и внешние геттер - сеттер, которые будут шифровать данные. Ну в сеттере поставить если не null - exception
Поясните за курсы на Microsoft Virtual Academy, стоит ли тратить время на просмотр видосиков? А то 95% видео уровок это размусоливание одной небольшой темы несколько часов.
Сап. Подскажите неопытному, можно как то разрулить подобное: есть генерик класс SmallClass<T1, T2> и есть класс BigClass<T> в котором собственно во всю должен юзаться class1. Я как не гуглил, как не извращался смог родить только подобную конструкцию: BigClass<T1, T2, T>. Есть ли способы как то указать эти параметры во что-то типа: BigClass<T3, T>, а уже T3 развернуть в SmallClass<T1, T2>?
>>1045146 .NET Core работает на CoreCLR, имеет модульную архитектуру наподобие Node.js, минималистичный, производительный, легко упаковать приложение под любой рантайм, можно упаковывать рантайм вместе с приложением (запуск без установки .NET Core), современный стек вобравший фичи из разных платформ, небольшое потребление ресурсов, нет привязки с System.Web, кроссплатформенность, новый очень производительный веб-сервер Kestrel...
.NET Core это современный улучшенный Ruby on Rails, лишенный всех недостатков Rails. Еще он похож на Node.js стэк.
Почему у C# такое плохое коммюнити? Какую-нибудь библиотеку не сыщешь. Все самому велосипедить штоле. Вот, например, нужна библиотека чтобы скачать ТОРРЕНТ. Все проекты мертвые и не обновлялись по 10 лет. На жаве такой хуни нет.
>>1048679 Комьюнити у C# действительно специфическое. Но ведь до недавнего времени .NET был закрытым, да и проекты на C# в основном закрытые. Не смотря на это, думаю ты несколько преувеличиваешь. Если нет одной какой-то либы, то это не значит, что их нет вообще. В целом комьюнити малоактивное, особенно русскоязычное. На английском можно найти почти всё.
>>1048777 Преимущества C# в более простом и более быстром написании кода. Тебе не нужно заботится о том под какую платформу пишешь, весь твой код автоматически будет работать на всех платформах куда устанавливается .NET. Не нужно в ручную управлять памятью, это значит код писать проще и быстрее. Лучшие инструменты для серверной разработки, и не только серверной. Язык проще и более продвинутый, последняя версия C# 7.0 получила много интересных нововведений.
Программа на C++ конечно быстрее чем программа на C#, но это если она правильно написана. При этом написание программы на C++ дольше и сложнее. Скорость C++ нужна лишь в редких случаях, для обучения она точно не нужна.
>>1040269 (OP) Решил поучаствовать в TTWG 2 https://2ch.hk/gd/res/434187.html дабы на опыте применить полученные знания о C# И вот я тестирую код и мне всплывает ошибка : "Ссылка на объект не указывает на экземпляр объекта". Обычно я быстро нахожу в чем проблема. Но здесь до меня не доходит. Помогите разобраться, плиз. Вот часть кода, ошибка на строке 30: https://pastebin.com/Q7uYGLrt
>>1049373 Что пробовать, SignalR? Я не собираюсь пробовать, просто интересно почему ты советуешь это, если есть нативные вебсокеты в .net core? SignalR вроде же использует long pooling.
>>1049486 Апдейт: да, тесты не работают для standard-библиотеки (nunit пишет исключение). А не получилось добавить reference на standard-библиотеку в framework-библиотеку, потому что нужно было таргетить 4.6.1.
>>1049486 Апдейт: ничего не работает, ну что за говно Message: System.IO.FileNotFoundException : Не удалось загрузить файл или сборку "System.Net.Sockets, Version=4.1.0.0
>>1049509 >>1049793 >псст, анон. мы придумали классную идею. net standard. создаешь одну библиотеку, и она работает на всех net платформах. круто, не правда ли? только она не работает на net framework.
Суть в чём: у меня есть сайт, простенький, который использует авторизацию и регистрацию с помощью клаймов, а так же при переходе в личный кабинет получает информацию о текущем пользователе. Беда в том, что у меня две таблицы по связи один ко многим (таблица Юзер и результаты).
Есть одна дллка, которую нужно патчить. Гугл мне первым же результатом подсказал JD+Reflexil, которые заебись работают, но все надо делать руками. Может есть какая-либо приблуда, чтобы этот процесс оптимизировать - т.е. чтобы она одним глазом следила за оригинальной дллкой и ее обновлениями, а вторым - за моими правками и "билд-директивами" (какие правки в какой билд включать и куда его класть), и при изменении чего-либо из этого сама нужное перепатчивала?
>>1050433 >Что пишут на шарпе кроме веба asp net? судя по треду - ничего.
>>1050433 >И что такое net core Они там придумали свой .net foundation и угорели по .NET ПЛАТФОРМАМ (как по мне хуйню творят, они там с серьезными щщами называют движок unity net платформой на одном уровне к ксамарином и mono). То есть .NET как какого-то ядра как-бы и нету (типа как есть один жава рантайм, один node.js), есть разные никак не связанные между собой ПЛАТФОРМЫ просто поддерживающие спецификацию .net standard. .net core это такая NET ПЛАТФОРМА, которая использует ПЛАТФОРМУ NET. Это не замена платформыNET FRAMEWORK и нужно о них думать, как о 2 совершенно разных ПЛАТФОРМАХ
Лучше всего думать о ПЛАТФОРМЕ NET CORE, как о ПЛАТФОРМЕ для написания и развертывания серверов. Она для этого придумана и под это заточена (все спизженно с node.js).
>>1050484 Я так понимаю они придумали этот манямирок, потому что ситуация сейчас выглядит очень глупо. Большинство популярных проектов используют mono, а mono это клон net framework'а. То есть сам фреймворк как-бы никому не нужен, и сами майкрософт напрямую не могут ничего сделать, и с mono нихуя не понятно. Короче хуйня какая-то творится
>>1049793 Апдейт: код на самом деле ссылается на библиотеку System.Net.Sockets, которая в каком-то кеше nuget'а. Нужно добавить эту библиотеку самому из nuget'а в net framewrok проект. Охуенная совместимость
>>1040496 Обычно это система, которая поддерживает некий бизнес процесс, часто имеет историю несколько, а то и десятки лет. Документации нет, разработчики разбежались. Твоя задача, как тырпрайз разработчика, чистить вилкой после индусов и прочих.
По мне, если не дно, то где-то уровень Мойдодыра!
>>1040603 Меня пока студия устраивает, тем более комьюнити халявная.
>>1041176 Легаси тырпрайз говна хватит на много лет вперед.
>>1041831 Команду же можно на Ивент приособачить? И парсить на лету.
>>1041984 Лол, в социальную часть я так до сих пор нормально и не могу. По технологиям ничего сложного, но не лучше туда джуниором? Ты за год все это поднимешь.
>>1050433 Ничего. Не видел не одной вакансии не веб, и не работал над чем-то иным.
>>1040496 Это сложное, дорогостоящее говно, которое часто пилится лет двадцать подряд. Да, оно будет нужно всегда, потому что приносит деньги. Поддерживать тырпрайз - всегда очень профитное, хотя и довольно заморочное занятие. Если попал на такое, то в долгосрочной перспективе будешь доволен жизнью.
>>1040603 Ой нахуй это говно. VS Code уже настолько совершенна, что просто больше ничего и не нужно. Про взрослую студию вообще молчу, тем более стоит копейки. Алсо постоянно проигрываю с декомпилятора от JetBrains - жуткое говнище, хоть бы спиздили код из dnSpy наконец.
>>1050433 >Что пишут на шарпе кроме веба asp net? Много чего пишут, зависит от задач. Ты себе даже не представляешь, сколько низкоуровневого говна написано на .NET.
>И что такое net core Это в кой-то веки очень правильное решение от мелкомягких. Можно без боли и унижений написать кросс-платформенное приложение и развернуть его на любой системе. Кто мигрировал большой проект на mono, понимает о чём я. Ещё год назад core был очень сырым, хотя вполне себе взлетал в продакшене. Сейчас всё есть, тонны Nuget пакетов. А чего нет, элементарно костылится за пару дней. Плюс можно допилить core/corefx под какие-то свои хитрые задачи, код доступен. Опять же привет анонам, кто пытался запиливать кастомную Java VM.
>>1050605 Ты же Identity используешь? Ну так подключи контекст и выковыривай любые данные. Хоть вдоль, хоть поперёк. EntityFramework тебе в помощь.
>>1051342 Так а чего расписывать? Просто не используй поделие от реактивных мозгов. Чтобы было счастье, рекурсивно клонируешь это репо: https://github.com/0xd4d/dnSpy Собираешь это в 2017-й студии (нужна нормальная поддержка C# 7.0), запускаешь, открываешь целевую сборку и радуешься жизни. Тут есть всё: и редактирование C#/IL опкодов, и прямое редактирование самой сборки, и отдладка, и экспорт кода в проект студии (причём сейчас это работает ну очень круто, раньше приходилось руками кучу всего править), и ещё много всего. Плюс от того же автора можно накинуть деобфускатор (включая любой самописный), что прям очень облегчает жизнь. Всё это бесплатно и опенсорсно, прошу заметить.
>>1051349 Раз уж дал ссылку на декомпилятор, то вот ссылка на деобфускатор: https://github.com/0xd4d/de4dot Адовая штука на самом деле. На форумах полно плагинов для всяких разных обфускаторов, хотя даже в стоке de4dot очень и очень неплох. Помню был забавный случай: руководство купило какой-то продакшн обфускатор за многие тыщи баксов они действительно стоят дохуя, я был удивлён, обфусцировало значит все продакш-билды и громогласно заявило - вот теперь заебись, бабло потрачено не зря. Я за один день написал плагин для de4dot и принёс проджект-манагерам решения с кодом их поделий. Конечно, код был не совершенен, местами тяжело читался, но таки компилировался и работал. Проиграли тогда все, лол.
>>1051397 Главная причина проста как три копейки - ты рискуешь получить зависший цикл при наличии багов внутри самого цикла а они обязательно будут. Теперь представь, что этот цикл делает какие-то манипуляции с БД и в такой версии ушёл в какой-нибудь банк. А потом завис в бесконечности. Разгребать последствия такого - врагу не пожелаю опыт есть, лол. Поэтому всегда должно быть условие, способное прервать цикл, даже если он просто складывает 2 и 2 внутри себя.
Насколько оно все интегрировано с дебаггером? Мне чаще нужно пошагово внутрь либы заглянуть, если чего не работает. Просто декомпилить очень редко приходится.
>>1051432 Там нормальный встроенный дебаггер, если сможешь присоединиться к процессу (список процессов также доступен в dnSpy) или запустить приложение в dnSpy. Не все процессы доступны даже под админом, ASP.NET под IIS-ом или системные службы отлаживать не получится, например для этого есть remote debugger в VS, тащемта. Или x64dbg если всё совсем плохо. Но standalone приложения отлаживаются на ура.
>>1051433 Да. Я так понимаю, тебе нужно, чтобы что-то в фоне крутилось - это вполне типичная задача. Реализуй класс, который будет инкапсулировать данную фоновую задачу и иметь приватный флаг enabled или более сожный тип, например, класс, описывающий текущее состояние, а также методы Start() и Stop() опять же названия просто для примера, запускающие или останавливающие фоновую задачу. Внутренний цикл будет проверять флаг enabled и может быть прерван в любой момент. Даже если внешние потребители никогда не будут дёргать Stop(), ты хотя бы будешь знать, что у тебя такая возможность реализована и какие-то внешние проверки можно очень легко добавить. Как-то так.
Граждане, давайте составим таблицу зарплат в .NET? Постоянно спрашивают же в тредах, это даже можно потом в шапку добавить. В конце концов нахрена учить язык, если не понимаешь, сколько заработаешь?
По моим наблюдениям, зарплаты примерно следующие (в тысячах рублей): Juniour Developer - 60-80. Developer - 80-100. Senior Developer - 100-150. Project Lead - 150+, верхней планки нет. Всё зависит от проекта, знаю человека, имеющего оклад далеко за 300.
Конечно, бывают варианты - контора, проект и типы задач. Можно попасть в такой пиздец как у меня, например - разгребать происшествия на производстве. Платят заебись от слова совсем, задачи интересные, но как такового кодинга почти нет. Для джуна, например, это форменный ад всё время переживаю за нашего джуна, он вечно находится в ахуе, лол.
Ещё одно интересное наблюдение: свободных толковых людей на рынке нет, т.е. вообще нет. Ни джунов, ни сеньоров, ни тем более лидов. Найти грамотного человека на позицию - очень сложная задача.
И субъективно: нужно стремиться быть fullstack программистом (win/*nix), упираться в конкретную технологию не особо выгодно. Fullstack программист при прочих равных гораздо быстрее найдёт работу и больше заработает в итоге (150 - это нижняя планка для средней руки специалиста, обычно сильно больше).
Алсо нашёл в шапке странное: >Для мака и никсов самый юзабельный вариант - MonoDevelop Wut? VS Code же, теперь работает даже на арче без костылей. Тонна плагинов на любой вкус, для ASP.NET Core кодера просто находка. Можно прикрутить MSBuild. MonoDevelop - вырвиглазный кастрированный пиздец. Разве что под порты WinForms/ASP.NET кодить.
>>1051493 Я не из ДС. Конкретно у нас есть много народа на удалёнке, плюс филиалы в мухосрани. Зарплаты везде одинаковые.
>Я мидл за 40 Х.з., я бы удавился мидлом за 40 вкалывать. Проще манагером за те же деньги бумажки перекладывать без геммора, а по вечерам кодить уже на себя.
Увидел такую картинку в статье на хабре, и стало не по себе. Куда меня могут взять C#-разработчиком, если я других языков не знаю? Не конкретные компании, а скорее области разработки, например ПО для банков или разработка на Unity. Пытался найти какой-нибудь опен сорс, но поиск по языку выдает очень мало не совсем понятных проектов, по сравнению с другими языками.
>>1051499 У меня нет такого понятия, как строки кода сейчас. Выше писал, что разгребаю ЧП на производстве. Технологии - все возможные, как бы это пафосно не звучало. Сегодня я ковыряюсь в С++ говнокоде, а завтра в C#. А послезавтра вообще в T-SQL. Зарплата - по-разному, можно сказать что 175+. Всё зависит от нашей эффективности. До этого был fullstack ASP.NET кодером, писал всё - от бэка до фронта. Ежедневный коммит сильно разнился, мог и 1 строку закоммитить, а мог и 1000. Получал немного меньше.
>>1051493 Алсо, а чего ты сидишь в этой своей мухосрани? Если толковый миддл, очень быстро найдёшь работу в ДС/ДС2. При определённом везении, даже удалённо, т.е. даже не придётся париться с переездом но это ведь тоже не проблема, если молодой, кинул ноут и пару трусов в сумку и съебал. Контора оплатит тебе хату, даст нормальный оклад, либо оклад с учётом съёма хаты. Будешь себя человеком чувствовать при той же нагрузке.
>>1051489 У меня 10к гривен. Наверное я тут самый днарь. Я честно говоря не знаю что даже с такими деньгами делать. За год с небольшим отложил с такой зп где-то 80к и прикупить себе топовый пека.
>>1051630 Это 300 баксов примерно? Не ахти, конечно. Хотя на Украине это довольно неплохие деньги, полагаю. У меня один хороший друг с Украины сдриснул год назад примерно. Сейчас имеет порядка 150 в ДС2. Не сказать, что это волшебная зарплата в условиях ДС2, но ему с женой хватает.
ОП, это тоже для шапки - очень часто задаваемый вопрос. Граждане программисты в треде меня поправят, если я где-то ошибся.
Как устроиться на работу.
Основное требование - не читать местные треды про ужасные истории об устройстве на работу, которые бампаются малограмотной школотой. Не нужно заранее настраивать себя на негативный лад.
Необходимые знания для работы .NET программистом:
1. Английский язык на уровне свободного чтения технической документации и составления поисковых запросов в Google. Анон, если у тебя проблемы с английским, вкладывай все свободные средства в него (ходи на курсы, нанимай преподавателей и т.д.), а не на бесполезные книги по C#. Сам язык программирования может выучить любая макака за месяц, он очень простой. Когда научишься читать-писать по английски, продолжай его изучение вплоть до свободного владения. Именно это, а не знание C#, даст мощнейший импульс твоей карьере. В принципе, можно и без знания английского на работу устроиться, но дальше будет очень тяжело. 2. Общее понимание платформы .NET, опционально .NET Core, так как это ещё не мэйнстрим. 3. Рекомендуется ознакомиться с типичными вопросами на собеседованиях: https://github.com/MaximAbramchuck/awesome-interview-questions#c-2
Как ищут программистов.
Первое, что ты должен понять - на рынке сейчас очень мало грамотных специалистов. Многие позиции невозможно закрыть месяцами, даже джуниорские. Люди фэйлят тестовые задания один за одним, хотя они очень простые. Это как раз минус C#, так как он обманчиво лёгок в изучении.
Есть несколько вариантов, кто именно будет тебя искать: - тупопёздная рекрутёрша с HH и подобных сайтов, которая не понимает большинство терминов, которые произносит. Самый убогий вариант, т.к. она просто "перепродаёт" твоё резюме заказчику. У тебя фактически нет обратной связи с нанимателем. Тебя, конечно, направят на собеседование с кем-то из компании, но ты даже не сможешь получить подробные сведения о работе заранее. А ведь они могут банально сэкономить твоё время, потому что предложений много и не все подходят именно тебе. - абстрактный директор. Ему просто выделили бюджет и он ищет программиста, он также может иметь опыт программирования в прошлом. Часто радикально завышает требования и хочет получить "звезду" в свой штат. В принципе нормальный вариант, если при беседе будет понятно, что человек не очень мелочный. Иначе потом задрочит за каждый рубль зарплаты. - руководитель отдела / Team (Project) Lead. Самый оптимальный вариант. Представь, эти люди тоже шакалят по HH и ищут людей в штат. Чаще всего они более адекватны в оценке специалистов, не пекутся о бюджете и очень подробно рассказывают о предстоящей работе.
Как составлять резюме.
Пиши всё, что знаешь о себе как о программисте. Чем больше, тем лучше. Перечисляй всё, с чем когда-либо имел дело. Это важно. Если нет опыта работы - не беда. Это очень большое заблуждение, что без опыта никуда не берут. Например, автор этих строк зачастую отдавал предпочтение очень простым резюме, потому что люди показывали высокую квалификацию в тестовых заданиях в отличие от претендентов с "крутыми" резюме.
Конверсия резюме.
В среднем на 10 откликов ты будешь получать 3 собеседования и 1 предложение о работе после выполнения тестов. Т.е. конверсия равна примерно 3%, в некоторые моменты она может падать до 1% и менее. Это нормально и не есть повод расстраиваться.
Сколько денег просить.
Про высокие должности не скажу, тут всё индивидуально и такой соискатель в принципе сам понимает, сколько стоит его труд. И что характерно, в итоге найдёт оклад согласно своим запросам. Больше всего проблем с джунами. Почему? Попробую объяснить. Когда контора берёт джуна, она рассчитывает вырастить из него минимум миддла в будущем, а это затраты на обучение, командировки и т.д. Т.е. это долгосрочное вложение с точки зрения конторы. Но при этом всем хочется сэкономить, т.к. обычно оклад повышается раз в год. И если соискатель соглашается на заниженную ставку, то он будет работать год по этой ставке. И не факт, что после повышения оклада его зарплатные ожидания оправдаются. Конечно, здесь не упоминается про конторы в которых джуны - расходный материал и текучка там огромная. Такие шараги лучше избегать. Поэтому я бы рекомендовал просить в районе 60 рублей за джуниорскую позицию. По крайней мере на эти деньги можно хоть как-то жить в крупных городах. Если программист толковый, там до сеньора - рукой подать. Карьерный рост в IT компаниях очень быстрый, если проявлять хотя бы минимальную инициативу и интеллект.
Суп, анон. Очень нужно твое веское мнение. Как ты думаешь, это говнокод использовать методы расширения чтобы, например, добавить функции чтения прямо из стрима, вместо использования BinaryReader?
>>1051325 В том то и дело, что не использую. А что, лучше его юзать? Я просто и без этого вытаскиваю данные через контекст, но именно данные текущего пользователя позволяет вытаскивать лишь Claim. Как я читал.
Бля, аноны выручайте. Я хуже червя пидора проебал пароль от майловской почты, где было много всякого. Возможно ли ее как то сломать? Тех поддержка ебет мозги и не помогает
Да никак походу, мне один ящик почти год там мурыжили, но вроде потом я вспомнил примерно какую-то инфу которую требовал саппорт и с третьей попытки мне его вернули.
Шарпаны, поясните за хэлперы в asp.net mvc. В реальных проектах кто-нибудь вообще пользуется всеми этими @Html.DisplayForModel и Ajax.BeginForm? Я не про, но мне кажется, что это все полная фигня с которой серьезный фронт не сделаешь. Как вообще организовано взаимодействие бэкэнд и фронтэнд разработчика в проекте на asp.net? А если пограммист у нас фулл-стэк, то поведайте про взаимодействие программиста и верстальщика
Возможно пишу не туда, но никак не могу допереть, что такое REST-сервисы? Вот допустим накатал я WCF сервис, что нужно чтобы он был RESTful? И можно ли вообще с WCF сервисом такое сделать, например?
>>1052654 >Как вообще организовано взаимодействие бэкэнд и фронтэнд разработчика в проекте на asp.net Пишешь класс модели со всеми нужными свойствами, в контроллере его инициализируешь и пихаешь ее во вьюху
>>1050705 Апдейт. Отвалилась еще одна библиотека. Нашел целое обсуждение этой проблемы https://github.com/dotnet/corefx/issues/15570 Короче, .net standard это хуйня полная и никакой заявленной из коробки кроссплатформеностью там и не пахнет. Куча костей, которые к тому-же не работают без танцев с бубном
Разочаровался я в дотнете. Буду использовать shared project лучше
>>1054010 Разве .net standart подразумевает кроссплатформенность? Я запутался. Я думал кроссплатформенность - это .net core, а .net standart это новое название перепиленного в связи со сменой направления всего развития .net, старого доброго .net framework для виндовс онли
>>1054252 net core это платформа, а net standard это по сути просто набор dll'ок. когда ты создаешь .net standard-библиотеку, то к ней могут прилинковаться все эти библиотеки. А когда ты загружаешь эту библиотеку на определенной платформе, она в теории должна иметь все эти библиотеки этих версий. Это как я понел в теории. На практике половина библиотек так называемые OOB https://docs.microsoft.com/en-us/dotnet/framework/get-started/the-net-framework-and-out-of-band-releases То есть их нужно тянуть вместе с твоей .net standard-библиотекой, чтобы она работала. И тут пидорасит все связи библиотек из-за разных версий
>>1054271 >И тут пидорасит все связи библиотек из-за разных версий На стаковерфлоу спрашивал на эту тему? Просто неужели нет решения в виде какого-нибудь конфига, чтобы сам нужные версии либ подтягивал?
Анон, вот объясни мне одну вещь. Я вернулся к идее написать чат-бота в ВК на .NET Core и опять вернулся к вопросу VK API. Сегодня я почитал сорцы SDK на Java от самого VK, а также куска говна на C#. Еще раньше я познакомился с ES и теперь не могу выкинуть один вопрос. Зачем мне громоздкие SDK с полной реализации ебанутой модели VK, если в том же C# у меня есть dynamic? Что плохого в том, что весь SDK будет сокращен до
Если пиздец не вмоготу без строгой типизации, то можно валидировать схему JSON. К чему такой пиздец, кроме явной совместимости с крокодилами? Не начнут ли мне предлагать смузи и клеймить пидором?
>>1056358 Методы из Razor для asp.net mvc 5. Поясни что не так. Я для того и спрашиваю, чтобы понять как нынче кодят в реальных проектах а не для того чтобы ты тут выебывался вопросом на вопрос
Пасаны, мне наверное не к вам, но я хз куда обратиться. Треда админского не нашел. Мимо студеб, потихонечку учусь asp.net волшебству всякому вашему. Запилил себе типа-апишечку и типа-админочку небольшую, решил для удобства доступа из дома/вуза/с_телефона захостить это все говно на aws. Раньше никогда таким не занимался. Сделал себе EC2 инстанс и RDS инстанс, подружил их между собой, connectionString-и все вынес в непалевные файлики (шоб не коммитить в гит), и задеплоил все WebDeploy-ем.
Сегодня решил посмотреть "ну че как там мой САЙТИК поживает", заглянул в логи, а там такое:
И еще строчек 200 в таком духе. Поиск по айпишнику запрашивателя показал что это в китае, но мало ли там кто через прокси откуда сидит. Это шо, какой то китайский бот хочет похакать меня и спиздить все полимеры? Конечно он не находит phpmyadmin потому что его там нет, но вдруг он найдет что-то от iis-а? Как защититься от такой хуйни? Это вообще опасно? Ничего для секьюрности себе не докручивал, все на http, но всякие логины/пароли вроде не палил. Порты у EC2 открыты для RDP и WebDeploy-а но только на мой айпишник. Ну и 80ый.
Посоветуйте инструмент для визуализации классов. Object Browser почти подходит, но он одновременно отображает подробное описание всего лишь одного члена класса.
>>1056487 Главное чтобы пароли были не стандартные и последние версии ПО. Ботнеты тыкают сеть в поисках админок с стандартными паролями / уязвимостями. На практически любой айпи стучатся, бывает, по нескольку раз в день. Это нормально.
Софт к промышленному оборудованию. Не то что бы каждый по одиночке (некоторые как раз любят попиздеть), просто можно обойтись мессенджером, тфс или почтой, не требуют как в других конторах обязательно обсуждать что либо в группе, отчитываться на каждодневных собраниях и все такое.
>https://channel9.msdn.com/Blogs/Seth-Juarez/A-Preview-of-C-8-with-Mads-Torgersen >Nullable reference types пиздец, нахуя они эту модную парашу тянут в C# фича, которая не делает нихуя, кроме warning'ов в консольке, и то не всегда работающая, и заставляющая писать какой-то говнокод. А я-то думал что C# не идиоты проектируют.
Шарпаны, помогите понять. Есть такой короткий код: https://ideone.com/JAfiDj Он абсолютно верно работает в таком виде. Но если уродливые "var xNew" и "var yNew" заменить на "x" и "y" и не приравнять их друг к другу в следующей строке, то все ломается, и ничего не работает. Как же так? Что ломается, если я посчитаю формулу от x и сразу же присвою результат x?
Привет, анонодотнетчики! Какая в вас зарплата вообще? Наиболее интересно дс-2, мид-джун. У меня вот уже год опыта разработки в продакшн (стажёр+Джун), думаю какую зарплату просить. Или может вообще уйти куда. О рынке вообще ничего не знаю
>>1057111 в 2017 можно не ставить ненужное говно. в итоге размер установки можно сильно сократить (у меня установка с xamarin всего несколько гигабайт) с последним обновлением летает как молния
Что за вопросы, откуда вообще берутся такие программисты ретрограды. Как бабки сидят под досом. Программист по определению должен хотеть все новое, я пока апдейт не поставлю, сидеть нормально не могу.
>>1040269 (OP) Можете назвать меня аутистом, но объясните тогда на простом языке. Вот уже не первый день учу C# и всё не могу догнать нахера использовать методы virtual и overrire. Вот пример на скрине. Мы берём из BaseShip виртуальный метод Move и переписываем как хотим его в дочернем классе. Скажите мне тупому, нахуя? Что мешает нам не наследовать BaseShip и не переопределять метод Move, а написать свой Move. Мы даже 2 слова в коде сократим. Где смысл? У меня та же проблема со static методами abstract и т.д. Ну вы поняли Объясните мне смысл
>>1058129 чтобы при апкасте не присесть на хуец если не помечаешь, как виртуал-оверрайд, то при приведении к базовому, будет работать тот метод который определён в базовом
>>1058129 адрес обычного метода определяется во время конпеляции из типа, адрес виртуального метода определяется во время выполнения из объекта. т.е. если у тебя переменная типа BaseShip, то все вызовы обычных методов забиндятся на методы в BaseShip во время компиляции, какие бы объекты не хранились в этой переменной. если это виртуальные методы, то при их вызове будет всегда выполнятся метод перегруженный в объекте хранящимся в этой переменной, каким-бы не был тип переменной
>Что мешает нам не наследовать BaseShip и не переопределять метод Move, а написать свой Move. Мы даже 2 слова в коде сократим. Где смысл? смысл в том, что тебе нужно, например, хранить список всех кораблей и иметь какой-то общий для них всех интерфейс, чтобы их обновлять
Michael Krasnov: Вот смотрите, есть класс ClassOne, который должен хранить разные объекты наследованные от Object. Есть второй класс ClassTwo, который наследуется от ClassOne, и где я пытаюсь сохранить MyObject, который наследован от Object. Но RiderIDE ругается что возможно исключение, потому что базовый класс ждёт Object, а я ему пихаю MyObject. Как мне указать что в переменной должны храниться любые объекты наследованные от Object?
Обосрался на собеседовании по asp MVC. Причем про MVC вообще не спрашивали. Сначала тестики на листочке, потом тех. собеседование. Все по темам c# core, SQL, native JS. Обосрался на SQL уже с тим лидом, причем на проэктировании (нормализации вотэтовсе), а я наивный думал EF CF, все дела, хуй там. Так что если вас пригласят не забывайте дрочить проэктирование.
Шарпачь, поясни - в мвц я смотрел используют репозитории для доступа к данным, так вот, нахуя? Ну т.е. чем такой подход хуче чем просто в контроллере получить контекст бд и из него вытягивать данные, зачем эти прокладки в виде репозиториев? Алсо, если делать проэкт для резюме и выкладывать его на гитхаб, стоит обмазываться всякими архитектурами вроде луковой или трехслойной или достаточно небольшой проэкт на пару контроллеров с базовыми штуками?
>>1058704 Ну такое, почитал - вроде полезная штука для проэктирования БД, особенно если это хай лоад какой. Но о целесообразности спорить не буду, просто предупредил ньюфагов чтобы знали.
>>1058689 >Ну т.е. чем такой подход хуче чем просто в контроллере получить контекст бд и из него вытягивать данные, зачем эти прокладки в виде репозиториев? Это создает сильную связанность между контроллеров и реализацией доступа к данным. Слабая связанность в свою очередь дает тебе большую гибкость. Представь, что ты нахуячил во всех контроллерах доступ через дбконтекст EF, и вдруг неожиданно выяснилось что тебе нужно добавить дополнительную возможность работать через NHibernate или Azure. Тут и происходит обосрамс из-за сильной связанности и ты будешь по всему проекту выискивать дбконтекст и заменять его. А вот если у тебя как у белого человека будет в контроллере просто какой-нибудь IRepository, через которые ты будешь получать все данные, то ты можешь просто создать отдельный класс работающий через NHibernate и реализующий IRepository, и передавать его в контроллер через конструктор. Такой подход дает тебе возможность практически ничего не менять в коде проекта, добавляя при этом дополнительные возможности.
Аноны, а реально найти какой фриланс по мвц? Просто хочу експы покачать и чтобы с пользой, но на сайтиках по запросу .net/asp/mvc ничего, может я ищу не правильно как-то?
Анон, есть один enum, и есть функция, которая принимает на вход двумерный массив из enum. Наглядно тут: https://ideone.com/WEw1Zt Объясните, как этот массив представляется? Вот, например, подали на вход программы строку "XXX OO. ...", и она как-то декодируется, чтобы уложиться в такой массив. Как?
>>1058646 Всегда проигрывал с таких "собеседований". Такую хуиту можно нагуглить прямо на работе за 5 минут, зачем это спрашивать и проверять. Отсеят годного специалиста, зато примут какого-нибудь буквоежку.
Подскажите, пожалуйста, простенькую C# графическую библиотеку. SDL слишком крестовая. Unity это оверкил. System.Drawings не пользовался. Смотрю в её сторону. Буду клепать простенькие 2d игоры, чтобы сделать гитхуб потолще.
Няши, .NET Core, который под Прыщи, он только для ASP.NET? Мне нужно написать одну консольную утилиту, которая будет работать с сетью. Мне её под Mono запускать?
>>1059298 > .NET Core is the modular and high performance implementation of .NET for creating web applications and services that run on Windows, Linux and Mac > services Это слово не совсем понятно в данном контексте. Кто-то дополняет название до ASP.NET Core, кто-то оставляет, поэтому я и спрашиваю
>>1056812 >Ты определись первое или второе. Командная еботня =/= общение IRL, как впрочем и по всем известным мессенджерам. Твоё хиккевание никак не коррелирует с командной еботнёй в процессе разработки. Потому что последняя не требует от тебя общения в принципе. Только коммиты/чек-ины. При нормально поставленой разработке, конечно. Так понятнее?
>>1058646 На какую позицию шёл? Сеньор? Я проиграю, если мидл. Сука, постоянно угораю с этих собеседований - идёшь на ASP, где вроде как важно понимание цикла http request/response, а тебя начинают сношать на тему ебанических баз данных. А разработайте-ка нам схему БД, где у одного элемента может быть миллион коррелирующих записей в другой таблице и чтобы это работало быстро? Вы чё, охуели, лол? Это сама по себе нетривиальная задача, и над её решением могут трудиться десятки высокооплачиваемых специалистов и нихуя не решить, потому что одновременно используется несколько движков БД. Хорошо хоть про принципы устройства .NET VM не спрашивали. IL-опкоды, GC, вот это всё.
>>1056391 Я просто не представляю зачем эти методы использовать, они просто не нужны. Ajax.BeginForm - это вообще адский рудимент, зачем он? Сейчас есть тэг-хелперы (и кастом-тэги).
Алсо >А если пограммист у нас фулл-стэк, то поведайте про взаимодействие программиста и верстальщика Верстальщик предоставляет полную HTML-разметку и CSS/LESS стили для различных страниц/компонент, программист их интегрирует. Верстальщик обязан предоставлять CSS/LESS согласно текущим правилам принятым в решении. Если верстальщик не в состоянии осознать объектную структуру CSS или вываливает нагенерённую срань из PSD, то остаётся без денег и идёт нахуй.
>>1059360 А вообще средней руки верстальщик - это примерно уровень PHP-дебила, такой же тупой, ленивый и безграмотный. Как правило, выгоднее платить за еблю с вёрсткой своим же программистам, чем сторонним обезьянам. Крайне редко попадаются действительно шарящие граждане, которым можно доверить дизайн фронт-энда, и программист потом не сломает голову. Но стоят такие шо твой фулл-стэк C# кодер.
>>1040269 (OP) Наверное уже платиновый вопрос, но всё же: Стоит ли в 2k17 использовать byte, short и т.п. если есть int? Ведь сейчас на компьютерах не 100 мегабайт оперативы. Или в больших проектах разница будет заметна?
Читаю книгу по си шарпу, не понял что за инвариант имеется ввиду? Поясните плес.
For the remainder operator, an invariant holds in relation to the subtraction, multiplication, and addition operators. More specifically (in mathematical syntax): x % y = x - (x / y) * y
Это глупый спор о терминах. Я же писал что имел ввиду только вербальное общениет типа групповые отчеты каждый день или раз в неделю, брэнстормы, коллективное обсуждение и прочая хрень.
>>1059539 Ну ок, пусть так. Это же не бог весть какая проблема - поговорить по скайпу пару минут в день. И то не всегда это требуется, обычно раз в неделю при подведении итогов. Всякая шляпа типа срочных совещаний происходит крайне редко, в основном там лиды за жизнь общаются, остальные просто тупят на фоне. Это же всё абстрактно, личное присутствие не нужно (которое теоретически больше всего напрягает). Ты же не саппорт-инженером работаешь, чтобы с клиентами на прямой линии висеть и дебажить что-то попутно.
>>1059340 А меня спрашивали про особенности структуры нашей родной ВМ, указывали на знания специалистов по Яве в этой теме. Ну, я не обосрался и рассказал, не зря учил, так сказать. Так что учить все и вся можно, все от каждой компании зависит.
>>1056348 Удвою про Ноду. Как дело касается запила многопоточных микросервисов, с декларативным подходом и благородными абстракциями над тредами, то Нода проигрывает.
>>1059623 Потому что marshaling - это управление порядком, а не просто его составление (ordering).
>>1059626 Знать потроха нашей VM - это крайне полезно. Обычно такими вопросами любят контрольно стрелять в голову под конец собеседования.
>>1059629 >многопоточных микросервисов Ну хуй знает, лол. Про ноду-то понятно, что помойка для серьёзного продакшена хотя вроде как PayPal юзает. Я о самой концепции микросервисов.
Меня в прошлом году на моем первом собесе на жабо-стажера (зп в районе 30 была) спрашивали по устройству GC. Я, конечно, благополучно провалил все и устроился через два месяца в другое место на 60, лул. Хорошо, что не учил.
>>1059626 Добавлю. Другой вопрос, что эти знания нахуй не нужны в обычной кодерской практике. Пока что я вижу, что 100% попыток влиять на VM извне, используя знания платформы, заканчиваются фэйлом и итоговым пиздецом у потребителей продукта. Может быть, в каком-то адовом хай-лоаде типа финансов, это и пригодится. Но там скорее нужно саму VM модифицировать привет, сборка .NET Core из исходников.
>>1059641 >на моем первом собесе на жабо-стажера (зп в районе 30 была) >устроился через два месяца в другое место на 60 Как же я проиграл. Всё правильно сделал. Это как раз к вопросу о миддле выше в треде, который за 40 ебошит.
>>1059650 Я уже пишу. Но пока что ультра хуево. Учу юнити полторы недели. Скрипты брал чужие и правил их под себя. Уже наткнулся на непреодолимые преграды и решил учить сишарп. Он не нужен мне на уровне хороший программист, он нужен мне на уровне программист на юнити. Надеюсь, это не одно и тоже.
>>1059654 Ну всё правильно делаешь. Продолжай в том же духе и всё получится, все с этого начинали. За уровень владения языка не парься - этого понятия не существует.
Как лучше считать данные с Excel чтобы потом можно было сравнить их с данными в бд? Был вариант с OLE DB но он не подходит из-за того что приложение собирается в Any CPU, а на большинстве компов стоит 32битный офис для которых подходит только 32битный провайдер и он будет не совместим с этим приложением на 64битной машине. Считать данные в память можно с помощью NPOI, например. Но вот потом как сравнивать комбинации данных с базой. У меня есть два варианта или вручную инсертить данные с Excel во временную таблицу в бд и потом делать иннер джоин на соответствие или с помощью конкатенации множества условий делать выборку вот так Select * from table IN( FIELDA || FIELDB || FIELDC, ......) но это совсем хреново выглядит.
При добавлении в проект системы Identity создаётся стандартная база данных. Сколько должно быть баз данных в проекте? Одна, создаваемая системой Identity, и расширяемая дополнительными таблицами, или две (в одной содержится информация о пользователях и ролях, а в другой - прочие данные)? Что правильнее с точки зрения архитектуры приложения и безопасности данных?
>>1060037 Нормально вопрос задай, у тебя должны a и b приводиться явно или нет к типу x. А из твоего вопроса получается что тип x остается тайной до того как сработает условие.
Добрый день, шарпаны. Сегодня мне внезапно перезвонили и позвали на собеседование. Спрашивать будут по следующим темам: базы данных, Entity Framework, С# .NET, ASP.NET MVC, JavaScript. Анон, молю, подскажи, как за два дня подготовится и не обосраться?
>>1060203 SQL - джоины, основы проэктирования, несложные селекты c# - диспосы, работа со строками, приведение типов базовых js - приведение типов, undefind/null/NaN, замыкающиеся функции
Если не секрет - куда пригласили, просто недавно сам на таком собеседовании был.
>>1060215 >>1060218 Два чаю тебе, добрый человек. Пригласили джуном на фулстак. После собеседования постараюсь рассказать побольше. >просто недавно сам на таком собеседовании был Как оно прошло?
>>1059340 Чувак, даже больше, хуй с тем сношанием, все вопросы уровня дают несколько переменных, проганяют через милиард функций пытаясь с ними что-то сделать и тебе нужно раздуплиться что выйдет на выходе. ПРосто блядь задачки на логику/внимательность. Это конечно важно, но блядь.
Бля, посаны у меня VS Code не видит nuget пакеты. Устанавливаю пакет, делаю ресторе, но все равно пишет пропушине ссылка на сборку. Сами паке ты скачаны и находятся в нужном (в соответствии с конфигами) месте. Че за хуйня?
Долго стучался в гугл, но так и не смог сформулировать вопрос так, что бы мне вернулся вменяемый ответ.
Суть такова: Есть SQL сервер. На сервере имеется хранимая процедура, которая внутри себя вызывает еще несколько хранимых процедур. Вывод всех этих процедур отображается если выполнить ее руками в оболочке. А как мне получить их программно? Если использую ридер, то получаю только первую строку. Формально это верно, т.к. вывод состоит из разных... таблиц что ли. Т.е. каждая строка имеет номер 1 и отделена от других. Словно выполняется несколкьо запросов.
// класс для сведений из бд class ProcessStatus { public DateTime DTStart { get; set; } public DateTime? DTEnd { get; set; } public int ServiceStatus { get; set; } }
// ф-я получения данных из БД public void CheckDb() { // строка для проверки статуса работы string checkStatus = "<запрос тут>";
using (SqlConnection connection = new SqlConnection(_connStr)) { using (SqlCommand command = new SqlCommand(checkStatus, connection)) { try { connection.Open(); SqlDataReader reader = command.ExecuteReader();
// Нашли данные в БД if (reader.Read()) { DataManager(new ProcessStatus { DTStart = Convert.ToDateTime(reader[1]), DTEnd = reader.IsDBNull(2) ? (DateTime?)null : Convert.ToDateTime(reader[2]), ServiceStatus = Convert.ToInt16(reader[3]) }; }
else { <какая-то логика> } // Останавливаем процесс, если нет доступа к БД catch (SqlException e) { // TODO объяви вызов логгера в классе _logger.Error("Could not connect to MS SQL Database"); _logger.Error(e); } connection.Close(); } } } // ф-я для работы с полученными данными private void DataManager(ProcessStatus queryResult) { <какая-то логика управления полученными объектами> }
>The successful completion of a send does not indicate that the data was successfully delivered. If no buffer space is available within the transport system to hold the data to be transmitted, send will block unless the socket has been placed in nonblocking mode. Поясните за TCP. Вот тут пишут, что вызов Send() не гарантирует ничего. Но ведь в TCP есть контроль данных, т.е. данные отправляются заново, если не было подтверждения. Где эти данные-то, если буфер освободился. Вот я буду отсылать данные, а они где-то по пути теряться. Или все-таки буфер не очищается, пока нет подтверждения
Есть некоторые данные, подгружаемые из БД, которые зареганые пользователи могут менять. Как сделать, чтобы пользователи видели изменения сделанные только ими, а общая начальная БД оставалась неизменной?
>>1061497 Что бы отображать определенные изменения нужно каким то образом сопоставить их с пользователем. Эта связь должна где то храниться. Как ты хочешь фильтровать данные без фильтра?
>>1061579 >>1061738 Да что-то я хуйню спросил. И еще и вопрос по ходу непонятно задал. Все, разобрался, вопрос отпал, всем спасибо
Community edition говноАноним15/09/17 Птн 00:32:17#399№1062125
Дайте плз ссылку где спиздить vs pro 2017. Ну это же пиздец, в community даже карты кода нет, ДАЖЕ БЛЯДЬ ТЕСТОВ UI НЕТ! Я когда учился у меня это в программе было и всем было похуй как я эту студию достану.
Дримспарк кстати ту же самую community предоставляет. Пиздец. Как жить?
>>1062125 > где спиздить vs pro 2017 Глядите на дебила. Сидит на pro когда у вскех нормальных пасанов энтерпрайз. Каппчу вводить не поленился, а в гугле спросить поленился. А ведь в нем все есть.
Нужно сделать конструкцию ка кна картинке. Чтоб 2 окошка со строками и можно одно тянуть на другое чтоб образовалась между ними полоска. В приложения мелкомягких такой функционал втспречается довольно часто, особенно в sql студии. Но я так и не смог найти информацию что это. Кастомная реализация или какой то компонент winform или wpf.
>>1062445 >ReSharper Тому що это говно разжижает твой мозг, ты как бы уже неспособен писать качественный код без этой приблуды. А это совсем не так на самом деле.
>>1062569 http://knockoutjs.com/ Это относительно простой вариант. Там всё для дебилов расписано. Если желаешь изощрённое пожизненное рабство, гугли Angular, ExtJs. ReactJs - некий усреднённый вариант.
>>1062665 >Вместо того, чтобы писать фор блаблабла, пишешь for tab и все. >Решарпер это вообще-то snippet'ы, дефолтная функция, которая есть в любой IDE
>>1062668 Анон, так и скажи, галерные владельцы зажали пару штук бачинских для того, чтобы всю команду обеспечить решарпером и ide для работы с бд, вроде datagrip.
Ребята, я новичек и вот я хочу написать полноценное приложение на c#, чтобы гуй был на wpf и все по фен шую. Наверняка есть какие-то паттерны проектирования назовем их так, может быть стратегии написания приложений, интерфейса, что куда класть, чтобы все по полочкам, все в отдельных файлах, все подключалось в одном месте, чтобы ui был отделен от ядра и логики. Подскажите может быть книжек каких или уроков, может быть есть стандарты построения таких приложений. А то самому костылять, фантазировать и переписывать по 10 раз очень не хочется.
Котаны, я немного не догнал по документации кора. Как зароутить по умолчанию и принудительно все неизвестные контроллеры по пути /plugins/{controller}. Эти контроллеры идут как
var builder = services.AddMvc(); foreach (Assembly plugin in PluginService.GetPluginAssemblies()) builder.AddApplicationPart(plugin);
Я хочу дать полный контроль в ветке /plugins/{controller}/ и запретить роутится где-либо ещё
Анон, ты конечно редко помогаешь, но может повезет. Не работают DataAnnotations в .net framework На vs17. Даже ебучий Display. Если что я тяну формы с паршал вью аяксом и вставляю в модальное окно, но это врятли может быть причиной, ведь они должны применяться на уровне прорисовки паршалвьюхи.
>>1063236 если не знаешь, какие плюшки, тебе и не нужно, сравнение на сайте есть, вкатывальщикам коммьюнити за глаза вместе с вскод райдер говно со встроенным решарпером
Аноны, только начал вкатываться в C#. Реально ли освоить его за полгода с нуля чтобы вкатываться на джуна? И проекты какого уровня у меня должны быть на гитхабе чтобы было не стыдно показать? Покидайте ссылочки на какие-то годные проекты чтобы я мог оценить уровень до которого мне нужно расти
>>1063432 >Реально ли освоить его за полгода с нуля чтобы вкатываться на джуна? Да. >И проекты какого уровня у меня должны быть на гитхабе чтобы было не стыдно показать? Вообще без них вкатывался (до сих пор нет ни одного публичного репа где-нибудь). Вообще старайся не писать код бесплатно. >Покидайте ссылочки на какие-то годные проекты чтобы я мог оценить уровень до которого мне нужно расти Область уточни, алсо читай проекты майков: в шарпомирке вряд ли есть что-то эталоннее. А вообще просто изучи вот эти два сайта и иди вкатывайся смело: https://professorweb.ru/ https://metanit.com/
>>1063480 в смысле не старайся бесплатно, а портфолио?
>>1063432 Короче, сначала пишешь простой консольный проект, например, прога, которая считывает из файла имена кандидатов в президенты и голоса за них, в консолке отображает таблицу и пишет, кто победил. далее прикручиваешь вебморду и начинаешь пилить возможность голосования за одного из кандидатов, далее прикручиваешь авторизацию для голосующих и возможность добавления новых кандидатов. по моему годно для начала, видел, много где предлагается онлаен магазин собрать, но это сложнее
>>1063486 >портфолио Зачем? Если не собираешься работать на open-source проектах, то оно не очень то и нужно. Плюс опыт лучше нарабатывать за деньги, нежели бесплатно. Элементарно можно начать с того, чтобы рассказать всем знакомым, что ты теперь погромист и спросить нет ли у них работы для тебя, типа сейчас делаешь офигенную скидку. Пару проектов уровня скрипта/чего-нибудь для их работы у них найдётся.
Поцоны, как получить .exe из проекта консольной программы? Везде написано, что он при выполнении автоматически генерируется и лежит в папке дебаг/релиз, но у меня ничего подобного не происходит ни в студии, ни в коде.
>>1063785 Возможные варианты: 1) Ты долбоёб и собираешь библиотеку классов вместо консольного приложения. В этом случае нужно сменить тип проекта 2) Ты долбоёб и собираешь релизную версию, заместо дебага. В этом случае екзкшник в папке Release лежит.
>>1063861 1)я в коде создавал через терминал - dotnet new console, это консольное приложение, насколько я понимаю. 2)я потом открыл в студии и собрал обе версии и в обоих случаях нихуя
>>1063998 >dotnet new console, это консольное прилож Спеки бы что ли сначала почитал. По дефолту команда dotnet new console создает portable application, т.е. dll, а не self-contained (exe), которое нужно тебе. RTFM https://docs.microsoft.com/en-us/dotnet/core/deploying/index
>>1064482 Есть. На шарпе очень быстро пишут пррложухи для внутренних сервисов: достать из базы, сереализовать, отдать другому сервису. Фреймворк там один .net
Анон, поясни за lock. Например, я в нескольких async методах читаю и записываю массив, или List. пока я читаю данные в одном методе, они могут измениться в другом. Ну и что? Обязательно ли использовать lock?
Я правильно понимаю, что при создании экземпляра строки в куче будет cоздан небольшой объект собственно класса строки в котором будет указатель на другой объект в куче - массив символов? Т.е. реально будет два объекта в куче?
Риск дело благородное. Мс вроде не особо ебёт пиратство средств разработки, в студии даже обычный ключик подходит как в начале нулевых - не виданное дело во времена активаций и денув.
Ковыряю пособие по базе сш, вопрос к антуанам, которые работают в сфере. Часто ли вы используете конструкцию try/catch/finally? И если используете, то вы ее пихаете прямо в процессе первичного написания или потом при доведении до ума?
>>1064633 Зависит от софта: если что-то для финансов, то всё ими усеиваю, даже ошики уровня среды чекаю, если это круд, то вообще не использую - пофиг, пусть падает, перезагрузят.
>>1064675 Удобно и качественно: молниеносное развёртывание, гибчайшее конфигурирование, современные технологии (мне как блокчейн-разработчику это особенно важно).
>>1064724 >Можно навести конкретные примеры? Ну блин, элементарно деплой дотнет-приложух. Где-ты ещё видел автодеплой из гитхаба в два клика? Просто представь: ты жмёшь push в VS, а твой свежий код уже развернулся на тестовом сервере. Шикарнейшие миграции БД заменой одной строчки в веб-интерфейсе. Широчайший выбор платформ от линухов до шиндосов на любого любителя кросплатформы. Касательно блокчейн-разработки: в Azure есть уникальные вещи типа гибких гридов Ethereum нод с SSL,- таких вещей в принципе ещё нигде нет. Шикарная поддержка, которая периодически интересуется, что туда ещё добавить. Вот недавно добавили BaaS (Blockchain-as-a-Service), как я и просил, причём вариантов даже больше, чем предполагалось: и от Stratis, и от IBM... Насчёт платы: она одна из самых больших, но это того стоит. Вообще ходи на мероприятия Microsoft,- там раздают сертификаты на очень большие суммы, вплоть до бесконечных ежемесячных, ну или просто на работе/учёбе попроси оформить тебе.
>>1064727 Ещё добавлю, что есть бонусы для их комьюнити: когда ты сообщаешь о багах в их продуктах/комитишь в их проекты/просто MVP,- тебе сразу много плюх дают и в первую очередь из Azure.
>>1064729 Ещё можно отметить шикарный тёмный интуитивный интерфейс с досками и мониторингом уровня космического корабля. Короче, Azure - однозначно твой бро.
>>1064732 Конечно, весь доход с треда мне идёт. Тут же все начальники IT-отделов и техдиры. >>1064742 Проиграл, а вообще, если серьёзно, то .NET-стек сейчас лучшее решение для умных контрактов на эфире: тот же Nethereum намного лучше поделия школьников Web3 в плане архитектуры, скорости и удобства + серьёзный вес майков в Ethereum Enterprise Alliance & Neo Alliance и их наработки в Azure делают .NET будущим стеком блокчейн-разработки.
Нужна кому даром в ДС книга Албахари C# 5.0 2014 года? А то пылится и глаза мозолит. Может, анону нужна? Электрозаводская/Авиамоторная/Химки Фейкомыльце: shitcode.fakemail(а)bk.ru
>>1065978 У тебя x[2] = x[1], x[3] = x[2] и тп, при этом все элементы - нули. Ты тупо перетасовываешь нули. И почему от двух? Что ты пытаешься сделать?
>>1065990 1) Запрашиваем B, C и N 2) Создаём массив xs размером N, нулевой элемент присваиваешь B 3) for (int i = 1; i < N; i++) { xs = xs[i - 1] + C * i; } 4) выводишь массив
>>1066014 Я понимаю, что ты первый день в программировании, но попытайся понять, что ты делаешь и почитай, что такое массив и как к его элементам обращаться, толку-то 4 часа сидеть, если не знаешь даже, что куда присваиваешь. Я же сказал, что макаба съела индекс в одном месте.
Устроился на первую работку после диплома. Начальник просит сделать "какпикабу", то есть коллективный блог, но с кастомной системой оценок. Я за это дело взялся, но спустя неделю понял, что идёт оно как-то медленно. Что помимо самого аспнета нужно использовать и знать, чтобы реализовать такую платформу? Меня не покидает ощущение, что многие мои решения уже существуют где-то в лучшем виде
Анон, посоветуй сайтов где можно порешать задачки? Не обязательно чтобы на сайте можно было их проверить даже. А то после того, как старик Витольдыч с видеошарпа анально огородился платными блоками, я потерял всю надежду на свою авантюру врыва в пурагурамирование из гуманитарного мира (сидя на шее у мамки разумеется)
>>1066279 Чому нет? Просто в моей Мухосрани жава никому не нужна, зато есть пара контор высокого уровня, куда нужны шарписты и куда устроились дружани-самоучки.
аноны, кто-нибудь в курсе, как в асп.нет сделать возможным использование Html.EditorFor для двумерного массива? Код: <td>@Html.EditorFor(x => Model.Data[column, row]); </td> выдает InvalidOperationException Модель имеет одно поле Data, которое является двумерным массивом
>>1066407 Ну так это один хер, что раньше было. Цикл должен выполняться, как на второй пикче. А в твоем случае, если мы убираем (+ k * c), то ответы заданные B
>>1066427 Все. Это я просто тугодум. Я эту задачу давно уже решил, просто думал, что результаты не правильные выводятся. Спасибо тебе. Сейчас еще 110 руб докину.
Поясните про строение базового типа для делегатов, это который System.Delegate. По исходникам ссылка на метод хранится как MethodInfo, а если смотреть в IL коде то там вообще адрес метода который имеет низкоуровневый тип native int.
>>1066955 По для судов в ебенях России. Чтобы после рассмотрения дела анону в протокол не вписали, что он глотал хуи во время заседания, в связи с чем по УДО выйти не может.
>>1066955 Разрабатываю национальную криптовалюту, которая увеличит контроль над коррупцией, а также упростит и удешивит платежи внутри страны (работаем не на РФ, если что). Параллельно занимаюсь криптой для тороговли электроэнергией (а также упрощением поставок) и ещё сейчас занимаюсь децентрализованными дериватами поверх Ethereum.
Поцоны, поясните про стеки и хипы. Читаю, пишут, в шарпе данные структуры в стек записываются, а у класса в стек записывается ссылка на данные в хипе. Зачем так сделано?
>>1067244 Насколько я понял (в программировании недавно), то хип (он же куча), это выделяемая область памяти, а стэк это некий список адресов, шобы не потеряться, но я думаю, что бывалые аноны поправят мою неправоту. А вообще глянь ITVDN (купи на торренте) >>1066225 Анончики, не бросайте в беде
Привет анончики! Учусь программированию с нуля. Посоветовали C# для ПО и мол Окна твое все, а дальше проще тк все СИобразное. Периодически охуеваю от того, какой я тупой. Подумываю найти тренера за пиастры. Хотя бы на пол шишечки, для постановки задач в обучении и ответов на некоторые глупые вопросы.
Какие подводные? Где лучше искать? Сколько будет такое стоить?
>>1067244 Стэк не резиновый Дефолтный размер стэка у одного потока 1 мб. Представь как бы туда влезли огромное количество экземпляров твоего класса, а так только ссылка на объект.
>>1067258 Размер стека в начальный момент - 1 страница памяти, в случае заполнения текущей страницы сверху выделяется ещё одна и так до определённого количества страниц. Так что на разных платформах различный размер стека. >>1067261 Данные и структуры всегда занимают детерминированный объём данных, поэтому их кладут в стек, сдвигая указатель на его вершину и запоминая смещение, удаляют аналогично. У класса в общем случае размер динамический, поэтому он храниться в куче, а указатель на него размером native int храниться в стеке, но при выходе из блока кода, где создавался инстанс класса, удаляется только указатель из стека, а инстанс класса остаётся в куче до тех пор, пока его сборщик мусора вторым проходом не удалит. Вообще почитай про ассемблер что-нибудь, лучше про MSIL.
Лол, в этом смысле и размер экземпляра класса фиксированный. Разница на внутреннем уровне только в том, что сам первичный экземпляр где лежат поля расположен для структуры в стэке, а для класса в куче.
У меня есть представление - форма с комментариями. Мне нужно реализовать возможность ответа на комментарии - под каждым комментом создавать ссылку "Ответить", по которой под ним будет раскрываться форма ответа, плюс мне надо будет писать айди поста, на который идёт ответ. Мне кажется, ту имеет смысл делать Partial View, в котором в какой-нибудь hidden писать тот id. Но вот вопрос - как мне подтягивать это частичное? Коллега говорить ёбнуть append джаваскриптом, но смогу ли я аппендить частичное представление?
>>1068078 Я в тестовом задании на работу как раз похожее делал, я тянул форму в модальное окно. Делал просто - есть кнопка, по клику Аяксом тяну паршалвью и да, тупо вставляю его в нужный див. Работает на ура на самом деле нет, какого-то хуя клиент-сайд валидация не работала
Господа, изучаю юнит-тесты и нужна помощь. Сделал в тестирующем методе функцию Assert.AreEqual(expected, actual). Expected и Actual - списки стрингов. Запускаю дебаг, останавливаюсь на этой строчке - оба списки одинаковых. Но как только запускается функция, VS выкидывает исключение (см. пикчу). Что это может быть?
>>1069554 Использовать баш в 21 веке... ммм, месье знает толк. Конечно стоит выучить поваршмель вместо устарвешего говна, тем более, что поваршмель теперь кроссплатформенный, а баш всё ещё нет. Ещё в качестве варанта шелла есть ipython, но они схожи в плане дополнительного функционала, так что выбирай сам.
Как в линке построить выражение которое сравнивает две последовательности float с точностью до константы epsilon? Ну или вообще применить предикат к парам соотвествующих элементов последовательности.
Геморно (тогда проще запилить метод с двумя аргументами массивами для сравнения), мне бы все inline что бы как нибудь через лямбду сравнение протолкнуть.
>>1072461 Практически на любую: от системного программирования до веб-разработки. Уточни хотя бы свою обдасть научных интересов, а то непонятно, кто ты и в чём сечёшь.
Прошлый
Не забывайте оформлять свой код https://ideone.com/ https://pastebin.com/