Задать вопрос
  • StyleCop - Microsoft сама себе противоречит?

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

    ayazer
    @ayazer
    Артём Иннокентьев,
    через 3 месяца будет ровно год, как не было релизов у фласка :)


    а что должен часто релизить микрофреймворк который замечательно справляется со своими задачами?
  • Чем работать с БД кроме Entity FrameWork в ASP.NET MVC?

    ayazer
    @ayazer
    Если не хочеться тянуть орм, то стоит посмотреть в сторону Dapper. По сути это просто голый скл + автомаппинг результата на обьекты.
  • Как правильно использовать Git при работе над SPA приложением одному разработчику?

    ayazer
    @ayazer
    Anton Mashletov как самый простой сценарий:
    1) добавляем файл в гит
    2) деплоим
    3) убираем файл с гита
    4) получаем кучу веселья пытаясь понять что за мистика происходит и почему какой-то кусок системы работает не так как локально
    5) понимаем что удаленние файла с системы контроля версий не удаляет его с диска
  • Как добавить столбец на основе динамического столбца?

    ayazer
    @ayazer
    select *, sub.v1+1 as v2 from (select 1 as v1) sub

    первое что приходит в голову же
  • Как задать Target framework на visual studio?

    ayazer
    @ayazer
    Виктор П.,
    в таргетах можно ручками указать

    <TargetFrameworks>net461;netstandard2.0</TargetFrameworks>


    и потом возможно надо будет только обновить зависимости
  • Как задать Target framework на visual studio?

    ayazer
    @ayazer
    Виктор П., ну всегда можно просто открыть файл солюшена в блоноте и посмотреть что именно там написано. И по аналогии самому добавить новый проект.
  • Как задать Target framework на visual studio?

    ayazer
    @ayazer
    ну для начала - иметь в солюшене часть на .нет фреймворке а часть на .нет коре это боль которая требует значительно больше времени на проектирование и поддержку. но это вполне реализуемо. правда в таком случае советую забыть про настройки проекта через гуишку студии и сразу просто править .sln в блокноте. Там вполне можно настроить мультитаргет который будет использовать разные зависимости для разных таргетов (хотя возможно для нового проекта студия уже умеет это генерировать и сама)
    я не знаю что там за структура проекта и насколько можно его попилить на куски, может возможно распилить на библиотеку с какой-то доменной логикой (на нетстандарде) + проекты на .нет фреймворке/нет коре которые ее используют. Либо все приводить к одной технологии, тут уже все зависит от проекта и задач которые решаются. Но те библиотеки которые завязаны именно на .нет фреймворк (а не на нет стандарт нужной версии) использовать в нет коре не выйдет. Но если это что-то с стандартных логгеров/ормов/ди/етц то уже давно должен быть нугет под неткор. Если это какая-то отдельная сдкшка для каких-то специфических задач - вполне возможно что как миниму часть ситемы прийдется держать под .нет фреймворком.
    А ентити фреймворк вроде вполне нормально под .нет кором работает, только название нугет пакета вроде поменялось.
  • Как разобраться с типами проектов .net core и где тут ARM?

    ayazer
    @ayazer
    Виктор П.,

    для .нет кора выйдет добавить в зависимость либо .нет коровскую библиотеку, либо библиотеку совместимую .нет стандартом нужной версии (.net standard 1.6 для .net core 1.1, .net standard 2.0 для .net core 2.0, для .netcore 2.0+ надо смотреть).

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

    а вообще,
    .net framework - "оригинальный" фреймворк для винды
    .net core - новый платформонезависимый фрейворк
    .net standard - платформонезависимыя логика которую можно использовать в обоих случаях

    например, есть библиотека которая помимо всего, занимается еще и кешированием своих объектов в памяти. пока она использует MemoryCache (c System.Runtime.Caching) то она может быть подключена только в .нет проект. для подключения к .нет кор проекту надо избавится от платформозависимой логики (System.Runtime.Caching). Если вместо этого кеша использовать MemoryCache c Microsoft.Extensions.Caching.Memory, то эта библиотека будет совместима с .net standard 1.6+, и сможет быть подключена к .netcore1.1+ проекту.
  • Движок для игр под c#, какой выбрать?

    ayazer
    @ayazer
    cehka

    Узнал о Microsoft XNA, но все говорят что она умерла


    Monogame вполне себе живая реализация XNA
  • Что такое Net Framework и язык C#?

    ayazer
    @ayazer
    А framework - это своего рода виртуальная машина, которая выполняет c# (и не только) код.


    это набор библиотек/инструментов/окружения. А CLR который вы имели ввиду под "виртуальной машиной" (и который на самом деле все-равно не виртуальная машина) - кусок фреймворка.

    Т.е. для языка C# по-любому нужен Net Framework ?

    можно использовать моно. Можно использовать .нет кор. Можно сразу собрать под конкретную платформу и не использовать JIT компиляцию.

    А что это такое я так и не понял, для чего вообще это нужно? Это типа интерпретатора для C# с библиотеками? Для чего еще нужен .Net Native? C# без всего этого не будет работать? Нельзя взять какой-нибудь универсальный компилятор - и в нем скомпилировать программу?


    собственно CLR (как и JVM, как и BEAM, как и ...) и выполняют (в том числе) задачи такого универсального компилятора, превращая какой-то промужуточный код (msil/ java bytecode etc) в "нативный" код с учетом особенности платформы. В итоге такой код работает достаточно шустро, но уходят дополнительный ресурсы как-раз на эту компиляцию "на лету". Избежать этого для .нета можно использовав тот-же .net native, который соберет приложение сразу под конкретную платформу (позволив избежать JIT компиляций при вызове). Но насколько я помню, там все-равно есть нюансы.
  • Что лучше выбрать для обчения asp.net или php?

    ayazer
    @ayazer
    А C#/.NET/ASP[.NET], как Вы понимаете, полноценно вне *win-платформы не существует

    ASP.NET / .NET / C# - имеет очень косвенное отношение к OpenSource


    Времена PHP-3 .нета только под винду давно прошли, а некоторые всё никак не успокоятся...

    шарп и раньше вполне стабильно на моно работал, а теперь уже .нет кор есть. Которые вполне себе опенсорсные решения
  • Сделал модель нейронной сети, как инициализировать?

    ayazer
    @ayazer
    эм.. это еще далко не модель нейронной сети. помимо самой структуры (начать с того-же простейшего перцептрона можно) нужны функция-активатор и крайне желательно смещение. а инициализировать можно и рендомными значениями (нормализироваными конечно).
  • Вопрос к опытным админам. Где набраться достаточно опыта в кратчайшие сроки?

    ayazer
    @ayazer
    "Или это будет книга просто феерического объёма." - так уже есть. полная документация по постгресу (даже с короткими примерами), что-то около 4.5 тысяч страниц =)
  • Подходит Java для ИИ и машинного обучения?

    ayazer
    @ayazer
    Александр Скуснов: ноуп, вы с чем-то путаете (у того-же питона есть порты под jvm (Jyton) и .net (IronPython) )

    Для сомневающихся:
    Исходники R: https://github.com/wch/r-source (основные языки: R, C, Fortran)
    Исходники питона: https://github.com/python/cpython (основные языки: Python, C)
  • Подходит Java для ИИ и машинного обучения?

    ayazer
    @ayazer
    ммм. Про питон написали выше, R написан на смести си и фортрана. Так что в данном случае джава имеет отношение только к гуишке матлаба (вся математика один фиг написана на си и подключается через JNI).
  • Наследование об базового класса Object в c#?

    ayazer
    @ayazer
    Дмитрий: ну... а я и не говорил что рихтера не хватит чтоб начать работать =) Но то что его нужно будет несколько раз перечитать - это правда.

    "взять проект и реализовывать в свободное время" - плохой подход, такое обычно ничего хорошим не заканчивается. надо взять проект и НАЙТИ время чтоб его реализовать. на диких велосипедах, собрав кучу костылей и наступив на все возможные грабли. А потом прочитать книги и понять как нужно было делать на самом деле. И переписать нормально. Или для максимума усвояемости - отрефакторить убив в 2 раза больше времени чем нужно было бы чтоб переписать. И повторять пока не выйдет найти работу. Само-собой задачи каждый раз усложнять и добавлять какую-то новую технологию. Как раз к моменту получения оффера будет рихтер (возможно несколько раз) + что-то по мс склю (при всей моей любви к постгресу, с .нетом чаще используют ms sql) + что-то (скорее всего) по mvc (которое за собой потянет еще кучу специфичных для веба вещей).
  • Наследование об базового класса Object в c#?

    ayazer
    @ayazer
    Дмитрий: и после того как рихтерер будет прочитан раза 3 (с перерывами по года пол на практику), можно начинать"Nick Harrison, Chris Farrel - Under the hood of .net memory management" + некоторые главы с "Sasha Goldshtein, Dima Zurbalev, Ido Flatow - Pro .NET Performance". Оно конечно частично устарело уже, но понимая принципы догнать проблем не будет. Если хочется еще глубже - "Serge Lidin - Expert .net 2.0 IL Assembler" + спецификации самого CLI (как минимум для предидущей книги нужно под рукой иметь 3юю часть спецификаций с IL командами). Это если говорить чисто за .нет (и не трогая всякие asp.net mvc/winforms/wpf)
  • Наследование об базового класса Object в c#?

    ayazer
    @ayazer
    Роман: да, такое упрощение наверно действительно будет гараздо проще понять.

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

    по поводу хранения структур в стеке - да, действительно так написано почти во всех книгах + так действительно будет почти всегда. НО в каком-то блоге проскакивало сообщение от одного с разработчиков, который описал почему это не совсем правда. если коротко, то
    1) value-тайпы не *обязаны* а *могут* хранится в стеке. Точно об этом станет известно *только* в рантайме
    2) это вообще не прописано в стандарте, потому эта логика может меняться в зависимости от компилятора и среды выполнения
    3) value-тайпы которые объявленны в теле анонимных/лямбда методов один фиг попадают в кучу