• Как избавится от дублирования?

    @Kostik_1993
    Web Developer
    View Composer решают вашу проблему. Читайте доки прежде чем писать код
    Ответ написан
    Комментировать
  • Как это сделать на Vue.js?

    0xD34F
    @0xD34F Куратор тега Vue.js
    контент у всех блоков разный - поэтому в массив их не засунуть

    Засунуть. За отличающийся контент пусть отвечает отдельное свойство элементов массива. Если же контент вот прям совсем разный, ничего общего - оформить блоки в виде отдельных компонентов, хранить в элементе массива имя компонента - ну а дальше вместе с v-for использовать :is.
    Ответ написан
    9 комментариев
  • Как установить laravel 5 под vestacp?

    @lynnikvadim
    Ответ написан
    Комментировать
  • Хранение данных о медиафайлах в базе данных. Насколько будет большая нагрузка?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    так а какой у вас выбор?

    делайте дело - оптимизируете потом: индексы, пагинация, репликация, шарды, ноды вот это вот все
    Ответ написан
    Комментировать
  • Вопрос про ООП, как использовать?

    @red-barbarian
    Дело не в том какая парадигма лучше/хуже. Дело в том какая ближе к вашему мышлению и моделировании области которую вы описываете. Если вы мыслите процедурами, то ооп в коде будет притянута за уши. Если код понятен, легко читается, то этого достаточно.
    В качестве развития можно почитать что-то из оо проектирования.
    Процедурность и ООП это два разных подхода к пониманию системы. (Это не ключевые слова в синтаксисе. ). Разные подходы к решениям проблем всегда полезны. Хотя не напрямую.
    Т.е. умейте много, применяйте что эффективно для конкретного случая.
    Ответ написан
    Комментировать
  • Вопрос про ООП, как использовать?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Подход процедурного программирования - во главе стоят функции и алгоритмы.

    Во главе ООП стоят данные.
    У вас есть данные, простой int или сложная структура в виде учетной записи (имя юзера, пароль, емайл, полное имя, etc)
    Вот эти данные вы упаковываете в класс, к ним добавляете методы, которые работают именно с этими данными.

    Это позволяет вам оперировать данными в виде класса. Вы точно знаете, что данные, в том формате, в котором они находятся и обрабатываются внутри класса, НИГДЕ больше не используются, кроме как в этом классе.
    Если другому классу нужны данные вашего класса - для этого создается метод.

    Это позволяет вам менять класс как угодно, при этом сохраняя методы. Надо что-то в новом виде - создаем еще один метод. Кто пользовался старым - продолжают, кто обновил - пользуется новым.

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

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

    iwqn
    @iwqn
    Программист-самоучка
    Мне в своё время объяснили - ООП нужен в сложных проектах, которые поддерживают и кодят много людей. ООП позволяет привести код к определенной системе и при очень больших объемах кода помогает избежать повторений.

    Тем не менее я и сам пилил свои говноCMSки и даже конструктор сайтов без ООП. Код получался лаконичнее, быстрее и проще.

    Тут каждому своё - если что-то простое писать то ООП в PHP вовсе не нужен, на мой взгляд.

    Интересно будет послушать мнения
    Ответ написан
    Комментировать
  • Photoshop, notepad++ и бочка кофе в придачу, что ещё поможет верстать сайты быстрее и с меньшими затратами нервов?

    Rou1997
    @Rou1997
    WebStorm используйте, Notepad++ это явно не для быстрой верстки, кофе не поможет, это когда однажды нужно сделать срочную работу, сдать ее, и пойти пить совсем другой напиток, с обратным эффектом, а долговременно кофе не поднимет производительность, зато привыкание вызовет.
    Ответ написан
    Комментировать
  • SocketIO + Laravel + Redis + MySQL. как быть?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    На мой взгляд здесь Laravel пришит сбоку с припеку. Node.js умеет работать с MySQL.
    Я бы подобный сервис реализовал следующим образом:
    Node.js в качестве основного сервера с API и траспортом данных через Socket.io.
    Redis в качестве шины сообщений между инстансами Node.js сервера.
    Веб-сокеты позволяют обмен данными и пересылку файлов. Ajax в целом вам тут и не нужен.

    IMHO, отправка сообщения должна выглядеть следующим образом:
    Node.js принимает сообщение из сокетов, выдает идентификатор сообщению и далее передает его по шине сообщений (Redis). На шине несколько слушателей, один из которых отвечает за сохранение данных в базе, а другие рассылают сообщения клиентам.

    Заявка в друзья выглядит следующим образом:
    Node.js принимает сообщение из веб-сокетов, сохраняет в базу, отправляет запрос по шине сообщений получателю.

    При загрузке приложения, клиент соединяется с сервером через веб-сокеты, далее регистрируется на шине сообщений.

    Хочу добавить пару моментов, которые нужно учитывать при разработке приложения.
    1. У вас может быть запущено несколько инстансов приложения как на одном сервере, так и на разных.
    2. Нужно контролировать момент, когда система пытается переотправить сообщение в случае потери соединения с инстансом - часто случается при ненадежном соединении с сетью, особенно в мобильных сетях.
    Ответ написан
    1 комментарий
  • Что лучше post/get+socket или чистый socket?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Если клиент отправляет post/get запросы часто (20 раз в секунду), то на сокетах.
    Не изобретайте.
    Ответ написан
    Комментировать
  • Изучение python не для новичков, с чего начать?

    @yociyavi
    "Я прочитал 10 книг по езде на велосипеде, но так и не научился ездить на нем".
    Для того чтобы научится что-то делать, нужно это делать. Параллельно почитывая теорию.
    Напишите пару сайтов для себя: блог, туду лист и прочие. За одно и портфолио будет.
    Ответ написан
    Комментировать
  • Почему laravel не хочет запускать локальный хост localhost:8000?

    mcmraak
    @mcmraak
    php+sql+js+bicycle+crutches
    directory is not writable

    Это говорит о том что нужно разобраться с правами на папки
    Попробуйте
    sudo chmod -R 777 /home/heartprogrammer/.composer/
    Ответ написан
    1 комментарий
  • Как при запуске Cron'ом python.py в virtualenv импортировать модули, установленные в окружении?

    @n_angelo Автор вопроса
    IT's OK
    В кроне писать так:
    source [путь до окружения] && python [путь к скрипту]
    Ответ написан
    Комментировать
  • Можно ли взломать черз POST?

    @neol
    Конкретно в этом примере вполне вероятно получить отказ в обслуживании на первом школьнике, решившем просканировать сайт с помощью nessus. Но даже если до этого не дойдет ( в смысле до отказа в обслуживании, школьники-то не заставят себя долго ждать), то получится пустая трата ресурсов на обработку соединений и со стороны данного приложения, и со стороны blabla.com. Вряд ли это можно назвать страшной уязвимостью, но код явно попахивает чем-то неприятным.
    Ответ написан
    Комментировать
  • Как отправить сообщение к конкретным пользователям?

    Aliansys
    @Aliansys
    Из документации socket.io (отправка сообщений)
    // отправить текущему сокету сформировавшему запрос (туда откуда пришла)
    socket.emit('message', "this is a test");
    
    // отправить всем пользователям, включая отправителя
    io.sockets.emit('message', "this is a test");
    
    // отправить всем, кроме отправителя
    socket.broadcast.emit('message', "this is a test");
    
    // отправить всем клиентам в комнате (канале) 'game', кроме отправителя
    socket.broadcast.to('game').emit('message', 'nice game');
    
    // отправить всем клиентам в комнате (канале) 'game', включая отправителя
    io.sockets.in('game').emit('message', 'cool game');
    
    // отправить конкретному сокету, по socketid
    io.sockets.socket(socketid).emit('message', 'for your eyes only');
    Ответ написан
    19 комментариев