Задать вопрос
  • Что должен знать любой программист помимо изучения языка программирования?

    @cicatrix
    было бы большой ошибкой думать
    Destroymydreams,
    1. Выучите английский. Программист обязан знать английский язык, без него вообще никуда.

    2. Начните с архитектуры ЭВМ. Имейте хотя бы общее представление, что такое процессор, регистры, память, как они взаимодействуют друг с другом.
    Копните чуть глубже, чем "процессор - это "сердце" компьютера, а память, это то, где он хранит данные".
    Получите представление о том, как компьютер работает с информацией, почему используется двоичный код, почему в байте 8 бит, как машина работает с текстом, целыми числами, что такое число с плавающей точкой. Как это можно записать в память/на диск, какая разница между big-endian / little-endian

    Затем алгоритмы - константы, переменные, ветвления, циклы, процедуры, функции, рекурсия и т. д.
    Затем языки программирования - какие бывают, в чём разница, в чём сильные и слабые стороны каждого, Что такое функциональнее, декларативнее и императивное программирование, в чём разница. Здесь же можно посмотреть основы ООП и понять, ваше это или нет.

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

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

    Дальше уже копайте по специфике своего языка. Думаю, на этом этапе у вас уже сложится чёткое понимание того, что и как дальше изучать.
    Ответ написан
    Комментировать
  • Программа по расчету денег зашел в ступор?

    @cicatrix
    было бы большой ошибкой думать
    У вас "сохранённое" число нифига не сохранённое.

    Я переделал:
    https://codepen.io/anon/pen/wyLOKz?editors=1111
    Ответ написан
    Комментировать
  • C#. Каким компонентом лучше взаимодействовать с API?

    @cicatrix
    было бы большой ошибкой думать
    Каким API? Их мильён.
    Если вас интересует, как сделать веб запрос, то:
    // using System.IO
    // using System.Net
    ...
                WebRequest wrq = WebRequest.Create(url);
                string content;
                WebResponse response = wrq.GetResponse();
                using (StreamReader rdr = new StreamReader(response.GetResponseStream()))
                {
                    content = rdr.ReadToEnd();
                } // using rdr
    Ответ написан
    Комментировать
  • Почему не работает $ в регулярном выражение после lookahead'а?

    @cicatrix
    было бы большой ошибкой думать
    У вас текст однострочный или многострочный?

    Попробуйте в разных режимах:
    Параметры регулярных выражений

    Multiline (?m) Использовать многострочный режим, где ^ и $ соответствуют началу и концу строки текста (а не началу и концу входной строки).

    Singleline (?s) Использовать однострочный режим, где точка (.) соответствует любому символу (а не каждому) символу, кроме \n).
    Ответ написан
    Комментировать
  • Powershell. Как реализовать фоновое выполнение цикла в gui скрипте?

    @cicatrix
    было бы большой ошибкой думать
    Может, попробовать вместо ShowDialog() просто Show().
    ShowDialog - показывает модальную форму с блокировкой дальнейшего исполнения до возврата.
    Show просто покажет форму, и исполнение продолжится.
    В этом случае к свойствам и методам самой формы можно обращаться из вызывающего кода.
    Недостаток - надо будет отлавливать событие закрытия из вызывающего кода.
    Ответ написан
    Комментировать
  • Есть ли программа массового изменения файлов?

    @cicatrix
    было бы большой ошибкой думать
    А самому написать? Рекурсивный проход по каталогам, поиск по регулярке и замена. Прямо, стандартный кейс из вымышленной книжки "Уроки программирования для начинающих"
    Ответ написан
    1 комментарий
  • Почему Image.FromStream бросает "Недопустимый параметр"?

    @cicatrix
    было бы большой ошибкой думать
    Из вашего вопроса мало что понятно, попробую задействовать телепатию.
    Скорее всего, вы разрабатываете веб-приложение.
    Скорее всего, вы пытаетесь загрузить файл через веб-интерфейс.
    Если мои предположения верны, то стоит начать с того, что, наверное, единственным на текущий момент способом загрузить файл из браузера является POST запрос в формате multipart/form-data. Если это так, что входящий поток из запроса не содержит только ваш файл. Двоичные данные картинки "обёрнуты" ещё и дополнительной служебной информацией. Пройдите по ссылке, в статье на Википедии прямо пример есть содержимого вашего входящего потока.

    Если вы по какой-то причине пользуетесь веб-сокетами (причём, реализующими протокол http), то, чтобы вам помочь, нужно больше деталей.
    Ответ написан
    5 комментариев
  • Как добавить данные в один exe с помощью другого exe?

    @cicatrix
    было бы большой ошибкой думать
    Для винды сохранение данных (когда программы работают не одновременно):
    1. Файловая система
    2. База данных
    3. Реестр (в винде)

    При одновременной работе (в винде) можно воспользоваться следующими каналами:
    1. Именованные каналы (Named pipes)
    2. Сообщения Windows (Messages)
    3. Сокет TCP/IP
    4. Разделяемая память
    Ответ написан
    Комментировать
  • Как вывести максимально число спутников у планеты?

    @cicatrix
    было бы большой ошибкой думать
    Как-то так:
    select max(moonCount) from (
        select 
            p.idPlanet, 
            count(m.idSputnik) moonCount
        from Planet p
        join Sputnik m on m.Planet_idPlanet = p.idPlanet
        group by p.idPlanet);
    Ответ написан
    Комментировать
  • Как вывести данные из БД по параметру?

    @cicatrix
    было бы большой ошибкой думать
    Вы точно имеете в виду 2 РАЗЛИЧНЫЕ БАЗЫ ДАННЫХ, а не 2 разные таблицы?

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

    Если вы имели в виду 2 разных таблицы, то вот вам информация для размышления (JOIN).

    Вам надо использовать инструкцию JOIN для присоединения одной таблицы к другой на основании какого-либо критерия, обычно для этого используются внешние ключи FOREIGN KEY.
    Ответ написан
    1 комментарий
  • NancyFx как узнать время выполнения асинхронного запроса?

    @cicatrix
    было бы большой ошибкой думать
    Собственно, вне зависимости от конкретной реализации, вам нужно "засекать" время начала и время окончания задания, смотреть на их разницу.
    В зависимости от того, какое именно вам требуется время (с учётом транспорта до сервера или без его учёта), засекать может как вызывающий компонент, так и сама запускаемая задача.
    Ответ написан
    Комментировать
  • Чем отличается constraint от foreign key?

    @cicatrix
    было бы большой ошибкой думать
    Вы путаете сладкое с мягким.
    Constraint ограничение - когда вы задаёте параметры таблицы при помощи create/alter table
    вы говорите, что для такого-то поля задаётся constraint (ограничение).
    Ограничениями может быть primary key, foreign key, unique, default, check и т. д. - это всё ограничения.
    Вот таблица:
    CREATE TABLE MYTABLE  (
       ID BIGINT NOT NULL CONSTRAINT PK_MYTABLE PRIMARY KEY,
       CLIENT BIGINT NOT NULL CONSTRAINT FK_MYTABLE_CLIENT FOREIGN KEY REFERENCES CLIENTS(ID),
       EMAIL NVARCHAR(100) NOT NULL CONSTRAINT UQ_MYTABLE_EMAIL UNIQUE,
       ACTIVE BIT NOT NULL CONSTRAINT DF_MYTABLE_ACTIVE DEFAULT (1)
    )

    Что переводится как:
    Создать таблицу MYTABLE (с полями):
    ID целое 64 бит, не допускать пустых, ограничение с названием PK_MYTABLE вида "Первичный ключ",
    CLIENT целое 64 бит, не допускать пустых, ограничение с названием FK_MYTABLE_CLIENT вида "Внешний ключ", который ссылается на таблицу CLIENTS, поле ID,
    EMAIL строковое длиной 100, не допускать пустых, ограничение с названием UQ_MYTABLE_EMAIL вида "Должно быть уникальным",
    ACTIVE бит, не допускать пустых, органичение с названием DF_MYTABLE_ACTIVE вида "Значение по умолчанию" равное 1

    Есть и альтернативный синтаксис, где ключевое слово constraint не используется.
    В основном его применяют, когда надо явно задать имя на ограничение.
    Ответ написан
    Комментировать
  • Как получить из базы данных ВСЕ значения столбца "А" WHERE "В" = "far"?

    @cicatrix
    было бы большой ошибкой думать
    А вы смотрели? Ваш запрос делает ровно то, что описано в заголовке. Если запрос выдаёт только одну строку, значит, в таблице только одна строка и есть с удовлетворяющим условием ( B = far)
    Ответ написан
  • Web server windows?

    @cicatrix
    было бы большой ошибкой думать
    А IIS (что самое логичное под винду) уже не котируется?
    Ответ написан
    Комментировать
  • Конвертация строки при получении из бд, как исправить?

    @cicatrix
    было бы большой ошибкой думать
    ExecuteScalar выдаст вам ровно то, что хранится в БД. Экранирование, видимо, происходит позднее.
    Если вы пишете на Razor, пользуйтесь Html.Raw(ваша строка)
    Ответ написан
  • Сброс пароля: как уведомить клиент что сервер дал "добро", если есть редирект?

    @cicatrix
    было бы большой ошибкой думать
    Я делал так:
    1. Пользователь заходит на /User/PassReset, где вводит свой адрес эл. почты
    2. Система генерирует токен x на сброс, пишет его в таблицу пользователей в отдельное поле (токен нельзя использовать вместо пароля)
    3. Отправляется письмо со со ссылкой /User/PassReset?user=u?token=x пользователю
    4. При переходе по ссылке, система проверяет токен и пользователя, если всё совпало, предлагает ввести новый пароль
    5. Новый пароль хэшируется и пишется в базу вместо старого, пользователю отправляется уведомление о том, что пароль изменился.
    Ответ написан
    1 комментарий
  • Хранение кодов ошибок моделей и контроллеров?

    @cicatrix
    было бы большой ошибкой думать
    Начните с конца - кто/что эти коды ошибок будет потреблять? Как этой сущности будет удобнее?
    А вообще ошибки пишутся в log файл, а при анализе более важен контекст ошибки, нежели сама ошибка.
    Ответ написан
    2 комментария
  • Почему в большинстве университетов C# стал заменять Java?

    @cicatrix
    было бы большой ошибкой думать
    На самом деле, если отбросить лобби и прочие теории заговора, есть одно (не моё), но подслушанное мнение:
    На C# любую вещь, можно сделать нормально одним, максимум двумя, нормальными способами. На Java это может быть 20 различных (и даже, в какой-то мере, нормальных) способов. Учиться на этом можно, но на C# проще.
    Ответ написан
    2 комментария
  • Как проверить наличие таблицы в БД?

    @cicatrix
    было бы большой ошибкой думать
    Простите, не удержался :)
    if(mysql_query("DROP TABLE `таблица`")){echo "Таблица существовала...";}
    Ответ написан
    Комментировать
  • Как удалить такие дубли из списка C#?

    @cicatrix
    было бы большой ошибкой думать
    Список большой?

    Вот адская регулярка, которая выбирает вообще любые ссылки из любого текста.
    Вам нужны группы с 1-й по 6-ю.
    ((https?|ftp):\/\/)?([a-z0-9+!*(),;?&=.-]+(:[a-z0-9+!*(),;?&=.-]+)?@)?([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))(:[0-9]{2,5})?(\/([a-z0-9+%-]\.?)+)*\/?(\?[a-z+&$_.-][a-z0-9;:@&%=+/.-]*)?(#[a-z_.-][a-z0-9+$%_.-]*)?


    Тесты здесь

    .
    Ответ написан
    Комментировать