• Почему роутер режет скорость?

    @port9nka
    какой у Вас тип подключения? ipoe или pppoe менее ресурсозатратны для мозгов, нежели pptp или l2tp.
    каков бюджет?
    Посоветуйте хороший для этих целей роутер, учитывая, что в доме 6 устройств, из них только 2 поддерживают 5ГГц
    назовите эти устройства. до стационарников (или ноутов), которые прожигают торренты тянуть ИМХО следует только кабель. Wi-fi - это общий хаб, завтра там может появиться лютый сосед, который криво настроенными девайсами добьёт эфир. Для вафли - планшеты и мобильники, им 10-20 Mbit/s - хватает с гаком. Если совсем невмоготу, а некоей стабильности хочется- возьмите потестить powerline адаптеры.
    Я могу что-то еще сделать с этим роутером, что-то поднастроить, поменять? Роутер кстати довольно дешевый TP-LINK TL-WR720N
    очень неплохая платформа для экспериментов с openwrt, не выкидывайте.

    по роутерам:

    mikrotik hap ac lite/ hap ac - боятся не стОит, вебморду они запили хорошо. ( в дебри не придётся лезть). По стабильности для SOHO - железки отменные.

    ну или в крайнем случае - tp-link wdr3600/4300 - из-за поддержки openwrt. Новые кастрированные арчеры с поддержкой 802.11ac не пользовал, но их SoC'и и доверия не вызывают. (вроде ещё обещали альтернативные прошивки похерить)
    Ответ написан
    Комментировать
  • Почему роутер режет скорость?

    Jump
    @Jump
    Системный администратор со стажем.
    - Я могу что-то еще сделать с этим роутером, что-то поднастроить, поменять? Роутер кстати довольно дешевый TP-LINK TL-WR720N
    Нет. Роутер и так выдает максимум, на большее он не способен.

    Есть ли смысл мне покупать роутер на 5ГГц?
    Есть.
    Только не забывайте что 5Ггц должен быть не только роутер, но и все девайсы. Иначе остальные так и будут сидеть на низкой скорости.

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

    @nirvimel
    Эникей -> Заправка принтеров -> Установка Windows -> 1С.
    В былые времена 95% админов начинали с этого и проходили этот путь.

    Но программирование - это другое, тут нужен определенный склад ума, это не приходит само собой после сотен переустановок винды. Но это касается только профессионального программирования, писать простые скрипты для автоматизации своей работы умеет любой опытный админ, а любой опытный одинэсник умеет накидать пару строчек на встроенном языке в слепленную им форму или отчет.
    Ответ написан
  • UML-модель Yii2-приложения, реализация интерфейса группой классов. Как? Есть ли под это паттерн?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Нужен спец по ООП и UML, который работал в своё время с MVC!


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

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

    Если вы хотите по UML фигачить (не понятно зачем правда, но это уже ваше дело), то имеет смысл брать какую ORM заточенную под ОО-first (по сути Doctrine2 из ныне существующих) и там уже развлекаться. Там профит будет.

    p.s. забудьте об этой бесполезной для бэкэнда аббревиатуре MVC. Пока вы "проектируете контроллеры" - толку от него нет (ну то есть пока у вас логика работы с данными в контроллере).

    Читаю GOF, Зандстру и т.п.


    Почитайте Applying UML and Patterns - Craig Larman - замечательная книга. Еще дядю боба можете почитать (про SOLID). Если вас интересуют темы проектирования то это будет полезно. Еще раз уж заговорили о проектировании логики предметной области - Эрик Эванса - Предметно ориентированное проектирование.

    Задача 1


    1) композиция всегда лучше наследования
    2) наследование нужно для того что бы организовать подтипы. Если у вас есть сущности которые по своей природе требуют наследование - то можно. А так - лучше его избегать. ООП как бы не про наследование вообще.
    3) интерфейсы нужны для того что бы организовать инверсию зависимости и/или полиморфизм подтипов. У Лармана можете почитать про protected variations для того что бы понять зачем их юзать.

    Задача 2


    В UML отношения между типами очень легко и просто отображаются:

    bell_fig10.gif
    - Base[classname] - wrappers для обеспечения ровного обновления самого Yii в дальнейшем, не обращайте внимания.


    Как это не обращать внимания если вы делаете UML ради UML? Пока я не увидел ничего от ООП на вашей диаграмке. Есть структуры данных с публичными пропертями, есть... контроллеры (внезапно) которые мутируют состояние этих структур.... Это не ООП - это процедурное программирование с классами.

    для такой простой задачи я пилю UML исключительно в целях тренинга


    Пока это выглядит как впустую потраченное время, поскольку вы выбрали не лучший инструмент (yii) что бы тренироваться проектировать ОО решения.

    Я рекомендовал бы вам:

    - Разобраться что такое ООП на самом деле (это не про инкапсуляцию. полиморфизм и уже тем более не про наследование ибо все это было еще до ООП и все это кроме наследования является важными принципами структурного программирования). Это про сокрытие состояния и управление зависимостями (связанность, coupling & coheasion у Лармана)
    - Взять более подходящие для проектирования ОО решений инструменты (какой-нибудь модный нынче Laravel + Doctrine2)
    - если хотите продолжать баловатся с Yii сделайте так, что бы логика предметной области ничегошеньки не знала о Yii, тогда вообще не нужно будет заниматься этими Base* классами. Почитайте про Row Data Gateway (это по сути предшевственник ActiveRecord) а именно как оно использовалось в контексте модели предметной области.

    Есть ли под это паттерн?


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

    Оригинальная книга по GoF в этом плане так себе, сейчас лучше смотреть в сторону Head First Design Patterns Ну и помимо паттернов нужно разобраться с общими принципами такими как закон деметры, SOLID, GRASP и т.д. Тогда понимание всего будет более системным.
    Ответ написан
    2 комментария
  • Как заполнить поля с помощью скрипта?

    sHinE
    @sHinE
    веб-разработчик, php/js/mysql и сопутствующее
    Ну так в контроллере и пропишите
    $scope.declaration = {
      shippingGoalCode: 'value'
    }

    или
    declaration.shippingGoalCode = 'value';
    в зависомсти от того controllerAs синтаксис у вас или нет.
    Ответ написан
    6 комментариев
  • Кому посчастливилось найти poe-дверной глазок?

    @scriptkiddie
    Спасибо автору, теперь у меня на одну проблему больше.
    Ответ написан
    Комментировать
  • Где хранятся данные сессий PHP?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    По-умолчанию, данные сессии хранятся в файлах и явно читаются в оперативную память во время выполнения скрипта. Место хранения можно изменить, реализовав собственный SessionHandler, но нужно понимать, что "в оперативной памяти" - понятие растяжимое и разделяемой памяти у php нет.
    Почитайте документацию, там всё подробно описано.
    Ответ написан
    1 комментарий
  • Как создать токен на GitHub, какие пункты нужно отметить?

    pOmelchenko
    @pOmelchenko
    php-developer
    Ответ написан
    Комментировать
  • Где и как можно подобрать DVD-SSD адаптер для TOSHIBA L855?

    eapeap
    @eapeap
    Сисадмин, Беларусь
    корпуса у ноутбуков округлые, а все продаваемые приводы с плоским торцом.

    Обычно округлая накладка под конкретный ноут прищелкивается к плоскому торцу универсального DVD привода или адаптера.
    Нужно вынуть привод, как пишет Роман Краббз , замерить его и убедиться, что накладка есть и она отщелкивается. Потом купить универсальный адаптер нужного размера и перещелкнуть на него накладку.
    Ответ написан
    1 комментарий
  • Сеттер в конструкторе?

    @shagguboy
    ненадо хардкодить название таблицы так в коде. можно или вынести в константы или сделать имя тупо именем (частью имени) класса модели.
    Ответ написан
    Комментировать
  • Как рекурсией вывести многоуровневое меню из массива?

    @feldwebel
    Эта структура называется adjacency list. Со всех сторон разобрана в гугле.
    Ответ написан
    Комментировать
  • Можно ли припаять к этой микросхеме светодиоды?

    NeiroNx
    @NeiroNx
    Программист
    Клавиатура - матричного типа:
    R0,R1....Rn - это строки.
    C1,C2....Cn - это колонки.
    При замыкании строки и колонки - плата понимает что нажата клавиша.
    Сделайте таблицу в экселе, замыкайте пооочереди Сx c Ry - смотрите какая нажата и записывайте.

    Светодиоды - их 3 - скорее всего общий у них "+"(на фото не видно куда идет). Можно просто попробовать - всего 2 варианта их подключения - при инициализации они кратковременно мигают.
    Ответ написан
    4 комментария
  • Какое нормальное время генерации страницы и ответа сервера?

    xSkyFoXx
    @xSkyFoXx
    Если событие происходит быстрее, чем за 150-200 мс - человеку кажется, что событие произошло до его действия.
    Если между действием пользователя и получением результата проходит больше 0.5-1 с., велика вероятность, что это начнёт раздражать пользователя.
    Ваше время генерации совершенно ОК, если речь идёт о >=99% кванитили. Убедитесь только в том, что ваши основные пользователи находятся в восточной Европе, чтобы роутеры+скорость света до Америки/Азии не накладывали большую дополнительную задержку и что JS на клиенте не очень тяжёлый, чтобы задержка на стороне клиента для рендера контента тоже была не очень большой.
    Ответ написан
    Комментировать
  • Как переопределить класс в Laravel?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    вам не нужно это делать. Open-Close принцип. Все можно решить без "переопределений", это только в yii такая чушь.
    Ответ написан
    8 комментариев
  • Как узнать количество символов строки $r['text_news']?

    alsopub
    @alsopub
    echo "<tr><td>".$r['text_news'].(strlen($r['text_news']) > 1000 ? '<div>1000</div>' : '')."</td><td>".$r['user_name']."</td></tr>";

    По необходимости можно заменить strlen на mb_strlen.
    Что это за конструкция? Это Тернарный оператор - php720.com/lesson/19
    Ответ написан
    1 комментарий
  • Почему Тостер при var location=window.location.href; ежесекундно рефрешыт страницу?

    @napa3um
    Свойства объекта window экспортируются в глобальное пространство JS-движка бразуера, а применение var к уже определённым переменным игнорируется. Потому вы, по-сути, написали код, эквивалентный следующему:
    window.location = window.location.href;
    Используйте другое имя переменной или используйте замыкание для перекрытия глобальных переменных:
    (function(){
        var location = window.location.href;
        console.log(location);
    })();

    Подробности: https://learn.javascript.ru/global-object
    Ответ написан
    Комментировать