TIP: Use Markdown or, <pre> for multi line code blocks / <code> for inline code.
These forums are read-only and for archival purposes only!
Please join our new forums at discourse.kohanaframework.org
Наследование классов без префикса "Kohana_"
  • Нигде не читал в документах, но догадываюсь интуитивно, что разработчики Кохана задумывали предоставлять для наследования те классы, имена которых начинаются с префикса Kohana_. В связи с этим вопрос "Не будет ли косяков, если я не буду придерживаться этого правила?"

    Например. Я решил полностью переопределить класс Controller_Template, но хочу сделать наследование так:

    abstract class Controller_Template extends Controller{ }


    хотя и понимаю, что, скорее всего, идеологически заложено наследовать так:

    abstract class Controller_Template extends Kohana_Controller_Template{ }
  • abstract class Controller_Template extends Controller{ } так в принципе и будет правильно. По идеи классы с префиксом Kohana_ (системные классы) без особой нужды трогать не нужно. Для этого есть классы пустышки (тот же класс, только без этого префикса). Который уже нужно переопределять по необходимости или от него наследоваться.

  • Идеологически как раз трогать классы с Kohana_ не надо. Они сделаны для того, чтобы вы могли смело переопределять аналогичные классы без этого префикса.

  • Народ, я как раз и "не трогаю" классы с префиксом Kohana_, я же говорю о их наследовании...
    Как раз "пустышки", о которых вы говорите, имеют вид:

    class Controller_Template extends Kohana_Controller_Template{ }


    Я же хочу не их наследовать и спрашиваю не будет ли косяков.

  • Косяков не будет. Но вот это не верно

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

    Разработчики для наследования предлагают использовать классы-пустышки.

  • Разработчики для наследования предлагают использовать классы-пустышки.

    Скорее не для наследования, а для замены их на свои реализации.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion