Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) [1] 2 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Обсуждение инфраструктуры
TMake  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3106
Пользователь №: 16333
На форуме: 8 лет, 7 месяцев, 9 дней
Карма: 58




Отсюда
- - - - - - - - - - - - - - - - - - - - - - - - -

лучше место поиска контроллеров вынести в конфиг.
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 16116
Пользователь №: 6543
На форуме: 8 лет, 9 месяцев, 22 дня
Карма: 304

Трезвый :
6 лет, 7 месяцев, 1 день


Цитата (TMake @ 6.09.2016 - 06:17)
лучше место поиска контроллеров вынести в конфиг.

В конфиге будут только настройки. Никакого функционала. Будет конфигуратор: класс, орабатывающий конфигу. Но он не имеет отношения к фронт-контроллеру.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Какие лютые велосипеды
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2378
Пользователь №: 27172
На форуме: 6 лет, 3 месяца, 23 дня
Карма: 76




twin
Цитата
Но это и есть KISS

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


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 16116
Пользователь №: 6543
На форуме: 8 лет, 9 месяцев, 22 дня
Карма: 304

Трезвый :
6 лет, 7 месяцев, 1 день


Цитата (Guest @ 6.09.2016 - 06:31)
Какие лютые велосипеды

Для того и тема. smile.gif
Кто не умеет ездить на велосипеде, пусть идет на автобус.
Цитата (Arh @ 6.09.2016 - 06:33)
Зачем тут фронт-контроллер вынесен в класс?
Он понадобится ещё в к каком то месте?
Просто какая то недосказанность, говоришь что обойдёмся без прослойки, а потом сразу же одноразовый функционал выносишь в класс.
Почему недосказанность... Вроде несколько раз написал, что это еще не всё. Там будут еще методы позже. Тот же генератор 404 как минимум. Потому и класс.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2378
Пользователь №: 27172
На форуме: 6 лет, 3 месяца, 23 дня
Карма: 76




twin
Цитата
Там будут еще методы позже. Тот же генератор 404 как минимум.

Может сам генератор сделать отдельным классом?
Как ты будешь проверять наличие страницы в \App\Controllers\PageController?
По идее он сам будет проверять, а как он будет генерировать 404? По идее используя какой то готовый генератор.


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8976
Пользователь №: 26630
На форуме: 6 лет, 4 месяца, 23 дня
Карма: 611




Цитата (twin @ 6.09.2016 - 09:26)

    /**
    * Инициализация GET
    *
    * @param array $key
    * @param array $default
    *
    * @return string
    */
    function iniGET($key, $default = '')
    {
        return (!empty($_GET[$key])) ? $_GET[$key] : $default;
    }

И зачем сие? Во первых название сбивает столку, вызывая ассоциацию с ini_get(), во вторых есть же нативная filter_input(), которая еще и функциональней твоей обертки. Где же KISS?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Invis1ble  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









... в-третьих, ошибки в phphdoc, в-четвёртых, функция ничего не инициализирует, а лишь возвращает, ...

Цитата (killer8080 @ 6.09.2016 - 10:56)
Где же KISS?

Тс-с-с! Не рушь мирок человеку biggrin.gif
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 16116
Пользователь №: 6543
На форуме: 8 лет, 9 месяцев, 22 дня
Карма: 304

Трезвый :
6 лет, 7 месяцев, 1 день


Цитата (Arh @ 6.09.2016 - 06:49)
Может сам генератор сделать отдельным классом?

А что там делать, там три строчки кода. Нафига отдельно? Выбор нужной страницы (в том числе и 404), это обязанность как раз фронт-контроллера.
Цитата (killer8080 @ 6.09.2016 - 06:56)
И зачем сие? Во первых название сбивает столку, вызывая ассоциацию с ini_get()
Хорошее замечание. Стоит прислушаться.
Цитата (killer8080 @ 6.09.2016 - 06:56)
во вторых есть же нативная filter_input(), которая еще и функциональней твоей обертки. Где же KISS?
Ну вопервых это не профильная функция. Она для фильтрации. Вот засунуть её в мою функцию может и стоит.
Во вторых, она не принимает дефолтного значения. А это иногда очень удобно.
А в третьих, не факт, что всегда будет нужен чистый GET. При желании можно затолкать в неё Request. И тогда можно и ЧПУ заюзать.
Цитата (Гость_Invis1ble @ 6.09.2016 - 07:09)
в-третьих, ошибки в phphdoc
да, точно. Сейчас все исправим. smile.gif
Цитата (Гость_Invis1ble @ 6.09.2016 - 07:09)
функция ничего не инициализирует, а лишь возвращает
Принято говорить - "инициализация переменных". Но впрочем не важно. Название действительно стоит изменить.


UPD Исправил. Так действительно лучше будет.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
TMake  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3106
Пользователь №: 16333
На форуме: 8 лет, 7 месяцев, 9 дней
Карма: 58




twin ты не понял, у тебя прописан путь поиска прямо в методе, что ведет к жесткой привязоности к структуре, вынеси App/Controllers в конфиг
$controller = $this->config[self::PATH_APP_CONTROLLERS]. $controllerName .'Controller';
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Invis1ble  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (twin @ 6.09.2016 - 09:26)
(!empty($_GET[$key]))

Почему используется empty()? Ноль ты не уважаешь?
И зачем там скобки?

Цитата (twin @ 6.09.2016 - 11:20)
А во вторых, не факт, что всегда будет нужен чистый GET. При желании можно затолкать в неё Request. И тогда можно и ЧПУ заюзать.

А тут уже твой любимый YAGNI.



    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 16116
Пользователь №: 6543
На форуме: 8 лет, 9 месяцев, 22 дня
Карма: 304

Трезвый :
6 лет, 7 месяцев, 1 день


Цитата (TMake @ 6.09.2016 - 07:25)
twin ты не понял, у тебя прописан путь поиска прямо в методе, что ведет к жесткой привязоности к структуре, вынеси App/Controllers в конфиг

Вот этого точно не требуется. Так можно сползти к "мягкому кодированию". Это претензия на универсальность и не нужное усложнение, оправданное только в фреймворках. В конкретном приложении такая настройка - дело лишнее.
Цитата (Гость_Invis1ble @ 6.09.2016 - 07:28)
Почему используется empty()? Ноль ты не уважаешь?
И зачем там скобки?
Исправил уже.
Цитата (Гость_Invis1ble @ 6.09.2016 - 07:28)
А тут уже твой любимый YAGNI.
Нисколько. Во первых, ничего нельзя доводить до крайностей. Во вторых - это приятный бонус. Функция такая все равно нужна. Хотя бы ради дефолтных значений и сокращения кода тернарника.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (twin @ 6.09.2016 - 11:37)
Исправил уже.

Цитата (twin @ 6.09.2016 - 09:26)
    /**
    * Инициализация GET
    *
    * @param string $key
    * @param string $default
    * @param int $filter
    *
    * @return string
    */
    function takeGET($key, $default = null, $filter = FILTER_DEFAULT)
    {
        $param = filter_input(INPUT_GET, $key, $filter);
        return (!empty($param) || $param == 0) ? $param : $default;
    }




Цитата (twin @ 6.09.2016 - 09:26)
Инициализация GET

Так где там GET инициализируется? Инициализация - это задание значения.

Цитата (twin @ 6.09.2016 - 11:37)
@param string $default

Цитата (twin @ 6.09.2016 - 11:37)
@return string

Массивы в php уже отменили?

Цитата (twin @ 6.09.2016 - 11:37)
(!empty($param) || $param == 0)

Ты меня разочаровываешь.
var_dump(empty([])); // Что выведет?

var_dump([] == 0); // А это?
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 16116
Пользователь №: 6543
На форуме: 8 лет, 9 месяцев, 22 дня
Карма: 304

Трезвый :
6 лет, 7 месяцев, 1 день


Цитата (twin @ 6.09.2016 - 08:09)
Так где там GET инициализируется? Инициализация - это задание значения.
Ладно, распишу подробнее. Черт дернул меня phpdoc писать. :)

// Инициализация переменной из GET параметра.
Так понятнее будет?
Цитата (Guest @ 6.09.2016 - 07:51)
Массивы в php уже отменили?
В GET нет массивов. Даже int нету. Только строки, да будет тебе известно.
Цитата (Guest @ 6.09.2016 - 07:51)
Ты меня разочаровываешь.
Ты меня тоже. Где ты видел такие ключи массивов?


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Invis1ble  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (twin @ 6.09.2016 - 12:09)
// Инициализация переменной из GET параметра.

а если я вот так использую твою функцию:
echo takeGET('foo');

то какая переменная у меня инициализируется?

Цитата (twin @ 6.09.2016 - 12:09)
В GET нет массивов. Даже int нету. Только строки, да будет тебе известно.

МУАХАХАХ! Это пять! Ясно-понятно, так и запишем: twin не знает о возможности передачи массивов через GET.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) [1] 2 3  Ответ в темуСоздание новой темыСоздание опроса