Эм… в свете того факта, что повсеместно насаждается идея server-only кук, а для хранения локальной информации, лучше всё-таки использовать, (простите за тавтологию) Local Storage, хочется лишь добавить картинку с тролейбусом… но лень искать ссылку.
А стоило бы изучить этот вопрос несколько глубже. Я вот на хабр «ворвался», тоже с довольно тривиальным примером. Без понятия, как меня с ним вообще «захабрили». Но вот к его изучению и рассмотрению, я подошел довольно основательно.
Однако, как можно было миновать четрые основных паттерна (al, ns, mp и ct) при изучении деревьев? Ума не приложу…
Окей, Вы правы, а я нет. Там всё по строго по psr, и запросы к бд в циклах не производятся, и вообще всё огонь. А этот кусок гуано ниразу не шесть экранов в ширину, и вообще из другого репозитория, который не имеет никакого отношения к opencart. Еще раз простите, я просто не подумал, что Вы настолько опытны. Хотел «красануться», понимете ли, и спорол чушь. Но не тут-то было — явились Вы (отец модульного подхода, и учитель Фаулера, судя по тексту) поставили меня на место. Тысячи извинений.
Именно. И появился он в опенкарте не от хорошей жизни. Вовсе не от того, что там так все удобно и классно расширяется.
Только задумайтесь! Для расширения системы, необходимо вклинится и заменить код.
Что там? Во 2.х ветке всё прекрасно? Хаха!
Ну что там, с чего начнем? С полного несоответствия ни одному psr, или с запросов к бд обернутых в лупы?
Ну право же — это просто смешно.
Не хотите взять пример с pvs-studio? У них, здесь же на хабре, интересные обзоры получаются. Хотя возможно есть более приоритетные задачи. Так что расценивайте это просто как «вброс» для обсуждения )
И да, в голосовании не мешало бы добавить пункт «впервые слышу об этом анализаторе».
Рискуя показаться излишне очевидным, все же уточню.
Конкретно Space Quest тут не совсем причем. Это скорее детали перевода и игра слов английского языка одновременно.
В оригинале заведение называлось просто Space Bar. Что можно перевести как «Космический Бар» так и «Пробел».
Этим я хотел сказать, что вы всегда вызываете авторезолвер явным образом, и вы должны прекрасно понимать, что это не тоже самое, что:
$some = new Some;
И что зависимости таки будут разрешены. И уже из этого строить логику.
Автор же оригинальной статьи и вовсе притянул проблему за уши, используя сервис-локатор не по назначению.
Код был образный, и накатан прямо в браузере.
Вот те раз. Умыли меня. Во всех моих приложениях есть обработчики на кучу различных «нефатальных» исключений. Например ModelNotFoundException в большинстве случаев преобразуется в PageNotFoundException, который в свою очередь обрабатывается на уровне приложения возвращает страницу 404 в текущем лэйауте. Если же запрос аяксовый, то возвращается json в формате соответствующем jsonapi. Есть также различные исключения, которые обрабатываются на уровне приложения. Например ValidationFailureException в при обычных запросах Делает
redirect()->back()->withErrors($validator->errors);
Эти самые ошибки пишутся в сессию, при повторной обработки запроса, после редиректа извлекаются в MessageBag, и выводятся на странице пользователю.
И что же я делаю не так? Как же этот код (хотя, еще раз подчеркиваю, не этот конкретно, но принципиально такой же) вдруг стал «для фатальных ошибок»?
Кучу лойзов материал соберет. Народ любит статьи в духе "10 фактов о 10 фактах". Что оно делает на Хабре?
я бы не смог сказать лучше
Однако, как можно было миновать четрые основных паттерна (al, ns, mp и ct) при изучении деревьев? Ума не приложу…
Именно. И появился он в опенкарте не от хорошей жизни. Вовсе не от того, что там так все удобно и классно расширяется.
Только задумайтесь! Для расширения системы, необходимо вклинится и заменить код.
Что там? Во 2.х ветке всё прекрасно? Хаха!
Ну что там, с чего начнем? С полного несоответствия ни одному psr, или с запросов к бд обернутых в лупы?
Ну право же — это просто смешно.
try!(использованиеCargoДляСборкиRustc())
И да, в голосовании не мешало бы добавить пункт «впервые слышу об этом анализаторе».
Конкретно Space Quest тут не совсем причем. Это скорее детали перевода и игра слов английского языка одновременно.
В оригинале заведение называлось просто Space Bar. Что можно перевести как «Космический Бар» так и «Пробел».
и простите, если это и так было всем понятно…
Хороший материал. Надо бы еще assembler с javascript сравнить…
[/sarcasm]
Этим я хотел сказать, что вы всегда вызываете авторезолвер явным образом, и вы должны прекрасно понимать, что это не тоже самое, что:
И что зависимости таки будут разрешены. И уже из этого строить логику.
Автор же оригинальной статьи и вовсе притянул проблему за уши, используя сервис-локатор не по назначению.
Вот те раз. Умыли меня. Во всех моих приложениях есть обработчики на кучу различных «нефатальных» исключений. Например ModelNotFoundException в большинстве случаев преобразуется в PageNotFoundException, который в свою очередь обрабатывается на уровне приложения возвращает страницу 404 в текущем лэйауте. Если же запрос аяксовый, то возвращается json в формате соответствующем jsonapi. Есть также различные исключения, которые обрабатываются на уровне приложения. Например ValidationFailureException в при обычных запросах Делает
redirect()->back()->withErrors($validator->errors);
Эти самые ошибки пишутся в сессию, при повторной обработки запроса, после редиректа извлекаются в MessageBag, и выводятся на странице пользователю.
И что же я делаю не так? Как же этот код (хотя, еще раз подчеркиваю, не этот конкретно, но принципиально такой же) вдруг стал «для фатальных ошибок»?