• Как применить блокчейн?

    @dmshar
    Болкчейн - это не криптовалюта. (Хотя это модно, а многие просто смешивают эти две вещи). Что-бы не было сомнений (у рецензента :-) ), я бы не стал смотреть в сторону чего-бы то ни было, связанного с финансами. Я бы в качестве применения взял бы, ну например, вопросы связанные с хранением документов, договоров, историй болезни или - еще более актуальный для вас пример - дипломов. Они имеют все признаки, необходимые для применения технологии блокчейна - они должны быть общедоступными (контролируемыми) при этом иметь "открытую" и "закрытую" части, они будучи введенными в систему не могут в дальнейшем изменяться, они должны быть исторически увязаны между собой. Вполне жизненный кэйс.
    Ответ написан
    Комментировать
  • Простой пример одного и того же кода в ООП, функциональном и процедурном стиле?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    (Все это дико не академично, не корректно и воообще, но должно быть понятно):

    Процедурный подход: есть последовательность команд. Каждая из них может содержать последовательность команд.
    возьми_кофемашину();
    налей_воды_в_кофемашину();
    нажми_кнопку();
    подставь_кружку();
    вылей_кофе_в_кружку();
    наслаждайся();


    ФП - акцент на действии. Одни действия влекут за собой другие.
    наслаждайся(
        своим_кофе(
            которое_сделала_кофемашина(
                в_которую_налили_воды())))


    ООП - акцент на объектах. Любое действие совершает конкретный предмет
    есть кофемашина;
    есть кружка;
    есть ты;
    
    ты.имеешь(кружку)
    кофемашина.имеет(кружку)
    кофемашина.поехали();
    ты.возьми_свою_кружку();
    ты.наслаждайся();
    Ответ написан
    2 комментария
  • Почему происходит ошибка разворачивания инициализированного опционала,?

    maestrro712
    @maestrro712
     iOS Developer
    Я вижу 2 случая, когда переменная не инициализируется:

    1. `fetch` произошел с ошибкой. Ошибка поймалась в `catch`, исполнение счастливо пошло дальше, но `per2` так и осталась не инициализированной
    2. массив `fetchResult` - пустой, тогда тело цикла не выполнится ни разу
    Ответ написан
    4 комментария
  • Переходы из строк в UITableView к другим данным в рамках одного VC?

    maximglobak
    @maximglobak
    iOS developer
    Есть правило - разделяй и властвуй =) (S в SOLID)
    Придерживаясь этому правилу проект будет чище чем у тех, кто не придерживается.
    На первое время всегда кажется, что отдельный VC не нужен для этого, но зачастую логика позже начинает усложнятся и отличаться от того, что было на первом экране. Поэтому я советую разделить на два экрана и у тебя будут развязаны руки на дальнейшие изменения, да и код в одном VC будет чище.
    А экономия памяти, в таком случае, будет минимальным.
    Ответ написан
    Комментировать