• Node.js как сделать выполнение события в конкретное время?

    EreminD
    @EreminD
    Кое-что умею
    ну setInterval и setTimeout
    а чем он плох? Стартует в отдельном потоке и крутится себе там - хорошо)
    собственно, как еще отмерить точное число секунд?
    Можно, конечно, реагировать на запрос на сервер. Но тогда нужно обеспечить равномерное распределение запросов (setInterval =) )
    Ответ написан
    Комментировать
  • Как освоить Web?

    Для освоения веба нужно, как минимум, освоить основу веба: HTML (можно сразу ориентироваться на HTML5) и CSS.
    Это не значит, что их учить нужно досконально, ибо, как выше упоминали, фронтенд часть - это отдельная специальность.
    Далее - HTTP. Если пойдёте на сторону сервера - досконально, если хотите ориентироваться на фронт - достаточно основ.
    Веб восхитителен тем, что на сервере можно использовать любой ЯП (даже C/C++), но лучше идти по проторенной дороге.
    Распространённые (и одновременно перспективные) ЯП на сервере:
    PHP, JS (Node.JS), Java (для сурового энтерпрайза), Go.
    Ну, и JS в браузере - если идти в сторону фронта.
    Ответ написан
    3 комментария
  • Для чего нужен explicit?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Почему нельзя просто его убрать и инициализировать объект неявно?

    Явное лучше неявного.
    Взял для себя правило помечать все конструкторы как explicit. Негативных эффектов не знаю, но не отстрелить ногу в будущем немного поможет.
    Ответ написан
    2 комментария
  • C++11, C++14. Использование auto - признак дурного тона?

    @Mace_UA
    Нет, это не признак дурного тона. Auto -- замечательная фича, позволяющая сделать код более читабельным. Но, как и практически любая хорошая фича C++, она может сделать вам только хуже, если применять её без надобности там, где она не нужна. Поэтому поддерживаю уже высказанное здесь мнение
    если вы без указания типа и так УЖЕ ИМЕЕТЕ достаточно информации, чтобы уверенно работать со значением - тогда можно использовать auto. Если чувствуете, что не имеете, или сомневаетесь, что имеете - лучше тип указать.


    При объявлениях функций auto в качестве типа возвращаемого значения вы так просто не напишете. Это должны быть инлайн функции. Как правило, такая потребность может встретиться разве что при написании шаблонов, которые реализуются прямо в хедере и для методов в которых порой вывести тип возвращаемого значения без auto крайне тяжело. Если вы школьник и не так давно программируете, на ближайшее время вообще забудьте про такую возможность. Она вам не нужна. А для разработчиков всяких хитроумных шаблонных библиотек это может быть очень даже полезной фичей.

    И ещё один аргумент за использование auto при определении переменных. Большинство современных IDE нормально справляются с тем, чтобы сообщить вам тип переменной, когда вы просто наводите мышкой на её имя, даже если она объявлена как auto. Это во многих случаях смягчает негативные стороны использования auto, если таковые вообще имели место в данном куске кода.

    А для более "продвинутых" программистов рекомендую к прочтению вот эту статью Герба Саттера. Всё прекрасно разложил по полочкам насчёт использования auto и объяснил, почему это в большинстве случаев не так страшно, как некоторым кажется на первый взгляд. Конечно, предложенная в конце идиома "almost always auto" спорная, C++ это всё-таки не джаваскрипт. Но остальное написано очень разумно.
    Ответ написан
    Комментировать
  • C++11, C++14. Использование auto - признак дурного тона?

    Nipheris
    @Nipheris Куратор тега C++
    Такие дельные советы тут...

    А правило проще некуда: если вы без указания типа и так УЖЕ ИМЕЕТЕ достаточно информации, чтобы уверенно работать со значением - тогда можно использовать auto. Если чувствуете, что не имеете, или сомневаетесь, что имеете - лучше тип указать. Пример, где использование auto отлично подходит - итераторы:
    std::list<int> items;
    auto i = items.cbegin();

    Во второй строке четко написано - items.cbegin - константный итератор по items, бегущий с начала списка. Мне этого более чем достаточно. Указание типа std::list<int>::const_iterator мне никакой новой информации не принесет. Тем более, т.к. итераторы от разных контейнеров несовместимы, то мне нужно еще и сразу знать, по какому конкретно списку у меня итератор - я опять-таки посмотрю на items.cbegin, а не на тип.

    А вот auto в объявлениях функций/методов и правда ни к чему. Его, кстати, даже не сразу там разрешили использовать (только в C++14). Причина тому вновь читабельность - чтобы понять, что возращает функция, нужно прочесть ее текст как минимум до первого return, а лучше - полностью. Единственный сценарий, где без auto не обойтись при указании возвращаемого типа - это стрелочная нотация с decltype, но я думаю вы не скоро с ней столкнетесь.
    Ответ написан
    Комментировать
  • C++11, C++14. Использование auto - признак дурного тона?

    auto в заголовке функции - дурной тон.
    В объявлении переменной - стандартная практика.
    Ответ написан
    Комментировать