• Чем плохо написание кода функциями?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Проблема масштабируемости и расширяемости кода приложения.
    Пока у Вас один тип объектов - можно всё писать и функциями (и хранить всё в массиве).
    Но потом - придётся всё переписывать на классы и т.д.
    Ответ написан
    Комментировать
  • В чём польза Mixin'ов?

    Beshere
    @Beshere
    Разработчик
    Если нужно добавить в класс функциональности, но конструктивно желательно её отделить.

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

    Поэтому делают примесь, где этот экспорт реализуют.
    Ответ написан
    Комментировать
  • Лучший вариант создания мобильного меню на сайте?

    anatoly_kulikov
    @anatoly_kulikov
    Помог ответ? Отметь решением!
    Лучше, конечно, использовать чистый css без js. Ещё можно подключить библиотеку на php, называется Mobile-Detect - она определяет тип устройства, с которого заходит посетитель. Получая тип устройства, можно выводить различное меню для мобильных устройств и десктопов.
    Ответ написан
    Комментировать
  • Что на сегодня лучше для нового проекта, GitLab vs GitHub vs bitbucket?

    @dimuska139
    Backend developer
    Юзаю GitLab, потому что автоматический деплой и запуск тестов при пуше в ту или иную ветку делать удобней всего. Также удобно, что есть Registry, в котором можно хранить собранные Docker-образы. То есть Dockerhub не нужен. При том, что на Dockerhub можно, если не ошибаюсь, хранить только один приватный образ, а в GitLab-registry - сколько хочешь. Делать сборку образов можно тоже прямо в GitLab.

    Upd: "делать удобней всего" - ЛИЧНО МНЕ (я не devops, а просто backend-разраб).
    Ответ написан
    Комментировать
  • Какую C# библиотеку использовать для Javascript или аналог WebBrowser?

    max-kuznetsov
    @max-kuznetsov
    Системный архитектор
    В многопоточных решениях хорошо себя показал Jint. Мы тестировали несколько разных решений, но на x64 в многопоточном режиме это решение показало себя самым устойчивым. Пару слов найдёте здесь.
    Ответ написан
    Комментировать
  • Может ли жёсткий диск замыкать блок питания?

    @nehrung
    Не забывайте кликать кнопку "Отметить решением"!
    1. Небольшая возня с мультиметром даст ответ. Померьте величину напряжения по линиям 12 вольт (желтые провода), 5 (красные) и 3,3 (оранжевые), когда этот самый диск отключён от компа (по питанию, без SATA) и когда он подключён. На исправном железе разница между этими измерениями не должна превышать 10%. Если она больше, поменяйте БП. Если на другом БП то же самое - вот тогда можно этот диск считать неисправным.
    2. Если вы считаете, что этот диск просаживает питание компа - значит, он берёт себе ток сильно больше нормы. Лишний ток не исчезает бесследно, его энергия должна что-то нагревать. Потрогайте корпуса микросхем на плате контроллера диска голым пальцем - если некоторые из них нагреты так, что палец не терпит, то диск дохлый.
    3. Крайне полезно проверить, не вздулись ли электролитические конденсаторы на материнке и в БП. Это вообще стоило бы делать регулярно, хотя бы раз в полгода, как меру профилактики.
    Ответ написан
    Комментировать
  • Чем отличаются Конкурентность, Многопоточность, Асинхронность и Параллелилизм?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    С терминами из этой области очень много путаницы. Например, в Java очень часто многопоточное выполнение называют асинхронным, хотя это не во всех контекстах верно. Проще всего разбираться на аналогиях. Процитирую самого себя:
    • Один человек ставит кастрюлю на плиту, ждёт пока она закипит, закидывает пельмени, ждёт пока сварятся, снимает, ставит вторую, ждёт пока закипит... - последовательное однопоточное выполнение.
    • Один человек ставит две кастрюли на плиту, как только одна из них закипела, забрасывает пельмени и т.д. - асинхронное выполнение.
    • Два человека ставят две кастрюли на одну плиту... - многопоточное конкурентное выполнение.
    • Два человека ставят две кастрюли на две плиты... - многопоточное параллельное выполнение.

    И для всех случаев, кроме первого, есть общий термин - многозадачность.
    Ответ написан
    1 комментарий
  • Как эффективно перейти от CMS Битрикс к какому-нибудь фреймворк?

    iamd503
    @iamd503
    Верстальщик
    Yii2
    Ответ написан
    Комментировать
  • Как создать триггер в Zabbix 3.2 при превышении % CPU для процесса sqlservr.exe?

    @sflyer
    Не назвал себя бы про zabbix, но по мне лучше выглядит вариант
    {Server-name:perf_counter[\Process(sqlservr)\% Processor Time].last(#1)}>50

    Т.е. если последнее значение больше 50
    Ответ написан
    1 комментарий
  • На чем в 2017м писать десктопное приложение под винду?

    Точно такой же вопрос у меня возник при "возвращении" с Андроида на декстоп под винду после 10 лет паузы разработки (на C++ и MFC). Выбрал вначале Electron, так как хорошо знаю JS, и Electron последнее время пиарят. Написал под него много, пока не нарвался на баги самого JS движка. Просто элементарно не смог работать с большими объёмами данных в массивах, вылетало приложение. Плюс огромный размер приложения (100МБ), раздавать такое со своего сайта проблематично. Плюнул на Electron и перешёл на C# Windows Forms. Винды без NET сейчас нет. IDE - бесплатная Visual Studio Community. После монструозного Electron-а, приложение похудело до десятка килобайт. Если нужны графические возможности Electron-а, то есть компонент Web Browser без всякого заморачивания с main-process/renderer-process. Там, конечно, не ES6, но жить можно (необходимо указать
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    ).
    Ответ написан
    Комментировать
  • Как создать такой CSS эффект при наведении на блок?

    @donsan4o
    блок находится на position relative, всплывающий блок на абсолюте и спозиционирован относительно родителя. Изначально visibility: hidden, opacity: 0. При ховере visibility: visible, opacity: 1. И еще можно поиграться с transition для родителя. Будет эффект затухания...
    Ответ написан
    Комментировать
  • IntelliJ или Visual Studio? Почему второму больше доверяют?

    Visual Studio прекрасна для работы с JavaScript и я работаю с ней каждый день, но она требует хорошего железа - мощный процессор, объём оперативной памяти, жёсткий диск должен работать шустро, сам интерфейс любит хорошие видеокарты.
    Я видел лет пять тому назад Visual Studio 2010 на очень слабом железе, она только запускалась около трёх минут и ещё думала минут пять при открытии небольшого солюшена.

    Как у вас с железом?
    Ответ написан
    3 комментария
  • Есть ли какая нибудь актуальная на сегоднейший момент книга по Компьютерным Вирусам?

    dummyman
    @dummyman
    диссидент-схизматик
    В книгах, как отметили выше, актуальную информацию не публикуют.
    Могу посоветовать онлайн-курс:
    https://www.offensive-security.com/offensive-secur...
    Актуальные баги будете находить самостоятельно.
    Ответ написан
    Комментировать
  • Yii2 или Laravel?

    SamDark
    @SamDark
    Yii2 core team
    Пробуйте оба и выбирайте самостоятельно. Я могу аргументированно уговорить выбрать любой из этих двух фреймворков, но вы так и будете мучаться «а не ошибся ли я» пока не попробуете оба.
    Ответ написан
    2 комментария
  • Yii2 или Laravel?

    Комментировать
  • Почему Yii/Yii2 не подходит для крупных проектов?

    @oxidmod
    потмоу что yii никак не препятсвует написанию говнокода. вы в любом месте можете сделать \Yii::app()->someComponent. Хоть в актив рекорд модели данные из реквеста брать. Неопытные разработчики этим злоупотребляют считая это благом, но это скользкий путь в никуда. код выходит сильно связаным, не поддающимся рефакторингу и модификациям. чем больше система, тем сложней становится её поддерживать.

    в той же симфони невзначай наговнокодить не выйдет, только целенаправлено, и то это потребует некоторых усилий))
    Ответ написан
    6 комментариев
  • Почему Yii/Yii2 не подходит для крупных проектов?

    @heahoh
    Full stackoverflow developer
    Есть крупный проект на Yii1, порядка 500 моделей и 300 контроллеров и 2000 вьюх. Изменений в фреймворке не делалось, при необходимости создавались наследники которые и используются по проекту вместо стандартных компонентов фреймворка. Бывают встречаются небольшие проблемы связанные с говнокодом и большим объемом данных (изменение afterFind модели, к примеру, с необоснованным использованием связей AR), которые приводили к тормозам, но это редко. Собственно, правильно спроектированный проект избавляет от многих проблем говнокода. К сожалению, не использовал другие php-фреймворки в энтерпрайзе и сравнить удобство использования не могу
    Ответ написан
    7 комментариев
  • Почему Yii/Yii2 не подходит для крупных проектов?

    ruFelix
    @ruFelix
    Предсказание будущего по руке, таро, кофе.
    Это мнение людей которые не умеют делать большие проекты. Им просто кажется, что если бы они могли взять вначале другой фреймоврк/язык/базу то результат был бы намного лучше, на деле же они просто не имели понятия о проблемах с которые появляются в больших проектах.
    Ответ написан
    2 комментария
  • Что такое ElasticSearch?

    AlexZaharow
    @AlexZaharow
    O Keep Clear O
    Знаете, я с вами соглашусь, что хорошую вводную по Elastic трудно найти. Пока сам не переварил доков и не набил шишек многие элементарные понятия оставались для меня неясными. Поэтому вот моя вводная: Elastic можно использовать как NoSQL БД, только надо быть внимательным, т.к. всё-таки его основная задача поиск, а не удовлетворение функций БД. Например, если вы не настроили хранение исходных данных, а только индексацию, то свои данные вы уже не извлечёте из него. НИКОГДА. Только отдельные выражения, удовлетворяющие условиям поиска. Всё, тупик. Так же нельзя повторно индексировать уже загнанные в него данные. Т.е. перед загрузкой данных надо грамотно настроить индексацию, т.к. перестроить индекс, как это делается в реляционной БД невозможно. Нужно придумать новую схему индексации и перезалить данные в Elastic. Именно поэтому основное использование Elastic - как дополнение к существующей БД из которой данные можно перезалить по одному или полностью в Elastic (можно, конечно сделать схему Elastic->Elastic, но тоже есть нюансы).
    Ещё пару слов про схему. Это ЛОЖЬ, что в Elastic нет схемы данных. Она как раз есть и ооочень жёсткая. Жёсткая до того, что однажды определив, вы не сможете её поменять. Изначально Elastic оказывает медвежью услугу, разрешая вам дополнять схему по-умолчанию, но когда вы разберётесь с этой темой, то можете обнаружить, что Elastic "понастроил" такого у себя внутри, что остаётся только охреневать и переделывать всё явно, отказавшись от его "услуг" по автоматическому добавлению полей в схему.
    Так же в Elastic очень непросто строить сложные запросы на поиск и агрегатные запросы. Совершенно неинтуитивно. Но если освоитесь, то будет вам счастье. )))
    Несмотря за такие "страшные" вещи - Elastic классная система и по производительности агрегатных запросов не уступает платной версии MSSQL в поиске в многопроцессорных системах (проверял на одинаковых аппаратных конфигурациях с 16 ядрами). Так что если вам хочется большую скорость в агрегатных запросах и главное - это бесплатность, то берите и осваивайте Elastic. Мощности и возможности у него огромные. Но... нужно потратить приличные усилия на изучение.
    Ответ написан
    1 комментарий