Ответы пользователя по тегу .NET
  • Насколько актуален asp.net и .net framework?

    @codecity
    Вы лучше спросите о перспективах .Net Core - вопрос не менее актуальный.
    Ответ написан
    Комментировать
  • SecureString, WinForms

    @codecity
    SecureString усложняет получение ключа путем создания дампа памяти вашего процесса. Речь о тех ключах, которые постоянно используются приложением, к примеру для доступа к стороннему API (обычно пароли к ним не относятся, так как пароль в чистом виде не сохраняется). Если вы будете хранить ключ в string или byte[], то его легко получить, создав дамп памяти процесс и открыв в обычном текстовом редакторе.

    Так что смотря что вам нужно. Лучше всего сохранять ключевую информацию в файле, предварительно зашифровав паролем. После ввода пароля нет необходимости держать его в памяти, лишь расшифровать файл с ключами доступа (а уже ключи хранить в SecureString).

    Если же действительно нужно держать пароль в памяти (к примеру, для доступа к СУБД), то вот самый просто вариант:

    var secure = new SecureString();
    foreach (char c in textbox1.Text)
    {
        secure.AppendChar(c);
    }
    


    Но, как сами понимаете, пока открыта форма ввода пароля и пока сборщик мусора не очистил значение Text — данные пароля можно перехватить. После закрытия формы останется только SecureString, пароля в открытом виде нет.

    Есть и более параноидальные способы.
    Ответ написан
  • Очередной вопрос про фоновое выполнение функций?

    @codecity
    Или хотя бы просто поясните, как сделать это с минимальными затратами и максимальной понятностью


    Наверное вопрос аналогичен «какой тип использовать в C++ для строк». В этом отношении C# так разросся, столько вариантов один другого краше — что сложно дать однозначный совет.

    Проще всего это, конечно, новая констркция async + await. Но в C#4 нужно доустанавливать AsyncCTP.
    Ответ написан
  • Фреймворки, расширения, море технологий… для чего они?

    @codecity
    В глобальном смысле — это проблема нашей экономики. То, что вы описали — лишь частный случай: проекция нашей потребительской экономики на уровень IT. Аналогичную проблему можем наблюдать во всех сферах жизни: производятся одноразовые вещи с целью поиметь чем больше сиеминутной прибыли. Это относится и к софту, и к девайсам, и к одежде (тут есть понятие моды), и к предметам быта…

    Понятно, что вовсе не обязательно выпускать новую версию Windows каждые 3 года. Смысл в этом только один — компания производитель хочет получить прибыль с новых продаж.

    С другой стороны и сами пользователи подсели на эту «иглу» — им уже надоела программа, хотят новую версию. Кроме того, изменение одной программы (операционной системы или версии фреймворка) тянет за собой необходимость изменения всех других программ. Лишняя работа на пустом месте…

    Та же беда и с фреймворками. В раскрутку фреймворка вкладывают много денег. Потом заказчик хочет, чтобы его проект был выполнен именно на том или ином фреймворке, т.к. его уже убедили в его «крутости».

    Далее, по цепочке, умение использовать тот или иной фреймворк делает одних программистов конкурентноспособными, других не конкурентноспособными. Опять же, программист вынужден «обновлять свой мозг», чтобы получать деньги. Смысл только финансовый.

    Конечно, в глобальном смысле «одноразовая экономика» — только вредит человечеству. Технологии-однодневки приводят к тому, что люди глубоко ничего не успевают изучить — только разобрался с ASP.Net WebForms, уже нужно изучать MVC и так далее.

    Далее, здесь применима теория игр. Хотя все челочечество проигрывает от технологий-однодневок, на личном уровне это приносит прибыль (шкурный интерес).
    Ответ написан
    Комментировать
  • Пожалуйста объясните преимущества .Net для веба?

    @codecity
    Если кратко. По сравнению с PHP — качество. По сравнению с Java — цена (Java разработчики почему то дороже стоят).
    Ответ написан
    4 комментария