All streams
Search
Write a publication
Pull to refresh
11
0
Игорь (Vir) @Vir

User

Send message
Нет, вы просто неверно поняли. Partials не реализует наследование, а лишь помогает в некоторых случаях (более чем в 95%) обойтись без наследования. Например, вы можете почитать документацию по partials у symfony.
Дело вот в чем. Хабр читают люди разного уровня.

Чего же мы ждём? Давайте, тогда я опубликую топик о том, как написать Hello World на bash'e?
Я часто вижу, как делаются представления в проектах — это либо include header & include footer либо 2-уровневый шаблон с layout и с шаблоном контента. Мне не нравятся оба подхода. Первый — за то, что в каждый файл дублирует подключения блоков. Второй — за то, что content обычно весь body, а если не весь, то теряется гибкость или приходится иметь несколько layout.

Не стоит забывать про partials, они очень часто спасают и избавляют от наследования шаблонов.
Идея наследования мне очень нравится. И вот я прошелся по основным методам добавить наследование в проект — от высокопрофессиональных типа Twig, до простейших — типа предложенного мной варианта. И честно говоря — я еще не видел, чтобы кто-нибудь его применял — этот простейший вариант. Возможно он не красив внешне, но поверьте — делает работу с шаблонами намного приятней и проще.

А никто не говорит, что идея наследования плоха и неказиста. Мне она тоже нравится, но её реализация в топике — именно плоха и неказиста.
Хабр — место для того, чтобы делиться знаниями.

Да, только уровень знаний бывает разный, не так ли?
Да, использовать самописные шаблонизаторы в крупных проектах с фиксированными сроками часто бывает непрофесиональным.

Порой можно написать шаблонизатор с гораздо большей производительностью, чем у уже существующих. За счёт того, что в шаблонизаторе не реализуются многие вещи, которые не нужны проекту.
Но мне кажется непрофессиональным не уметь написать шаблонизатор (подобный тому, что в посте, а не какую-нибудь ересь) и уметь пользоваться twig-ом.

Не профессионал — может написать шаблонизатор, но не сможет разобрать внутренности twig'a и тем более описать плюсы и минусы увиденного.
Лично мне немного жаль, что на хабре мало тем, посвящённым шаблонизаторам, реализациям ActiveRecord, собственным велосипедам, ибо мне эта тема жутко интересна.

В данном случае разговор идёт о «Hello World», мне кажется, что это не уровень хабра.
Сейчас почему то считается стыдным на хабре писать про свои реализации и велосипед

Вам не кажется, что это просто не профессионально? Что гораздо лучше было бы написать статью про разбор внутренностей того же самого twig'a, про его недостатки и плюсы, про его альтернативы и чем они лучше/хуже. Таким образом статья будет действительно полезной и профессиональной.

Ну, а если уж статья про велосипед, то и велосипед должен быть хорош, во всяком случае, настолько, чтобы про него не было стыдно писать.
Я не сторонник шаблонизаторов, но вот это:

<?php if(!isset($content)){ ob_start(); ?>
    <h1>Переопределенный контент</h1>
<?php $content = ob_get_clean();} ?>

Ужасно. Куда лучше выглядит:

{% block content %}
    <h1>Переопределенный контент</h1>
{% endblock %}

P.S. Поправьте «за ранее», сильно режет глаза.
А я как раз использую наследование сущностей, надо будет по-аккуратнее.
А можно ссылку на этот баг, ну или его краткое описание здесь?
Тогда, вовсе не страшно =)
Остаётся вопрос один вопрос, как это реализовывать технически?
А сколько времени уходит на поиск имени класса через бектрейс?
Раз, два.

Это не истина в последней инстанции, но можно над этим подумать хотя бы.
А что за клавиатура такая — от win95?
Я общался с Лебедевым лично (один на один). И в этой беседе мной был задан вопрос: «Отчего же твои клавиатуры такие дорогие?», на что он мне ответил: «Не потому что я хочу много бабла из воздуха, она действительно дорогая в производстве».

Верить этим словам или нет — вам решать, мне было лень проверять эти слова поиском стоимостей различных компонентов входящих в состав клавиатуры, и я был склонен поверить.
Я вас обрадую, в случае с массивами и объектами это работает.

<?php

function test(array $array)
{
        var_dump($array);
}

test('test');

?>
Вообще, конечно, подход и код кишит делетантизмом, однако стоит учесть, что человеку действительно 16 лет. И умные книжки про идеальный код и паттерны, для него, ещё впереди.

А за стремление, в любом случае, плюс.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity