何时使用继承:
您有50页共享相同的布局 – 您创建一个layout.twig作为父,每个页面扩展该layout.twig。所以父类是通用的,子类是特定的。
何时使用包括:
在50页中,有6页共享一块HTML – 你创建一个shared-chunk.twig并将其包含在这6页中。
另一种用法:
你注意到你的layout.twig比较凌乱,你想模块化它,所以你拆开sidebar.twig到一个单独的文件,并包括在layout.twig。
你可以使用include继承用例:
当然,为标题,页脚和你有什么,创建块,并在50页的每个页中使用包含。但是这是错误的设计,如上所述。
您可以为include用例使用继承:
当然,在父layoutTwig中为共享块创建一个空块,并创建一个第二级子布局 – 扩展layout.twig并填充块块,并且上面示例中的6页共享该块然后可以扩展layout-with-chunk.twig而不是layout.twig。但是这又是错误的设计,因为块块不是所有的孩子共享,不应该进入基本父级。此外,你混乱了继承树。
所以:
如上所述 – 这是一个设计问题,而不是可编程性。这不是关于:我可以使用不同的编程技术,它的使用是更好的设计实现相同的结果。