Fragments é um módulo Python que utiliza conceitos de controle de versão para substituir muitos usos de linguagens de templates & nbsp;. Em vez de uma linguagem de modelagem, ele fornece templates diff-base; em vez de controle de revisão, prevê o "controle de fragmentação".
Fragments é uma DRY (Do not Repeat Yourself) violação gerente; É uma fonte múltipla de motor Verdade.
O que é de moldação à base de diff?
------------------------------
Gerando HTML com linguagens de templates é difícil porque as línguas de templates, muitas vezes têm duas finalidades semi-incompatíveis. A primeira finalidade é gerenciar elementos HTML comum e estrutura: cabeçalhos, barras laterais e rodapés; em vários modelos. Isso às vezes é chamado de página "herança". O segundo objetivo é a realização de lógica de exibição idiossincrática em dados provenientes de outra fonte. Quando estes dois efeitos podem ser separados, os modelos podem ser muito mais simples.
Fragmentos gere este primeiro objectivo, elementos HTML comum e estrutura, com diff e mesclar algoritmos. A lógica de exibição real é deixado para a sua aplicação, ou para uma linguagem de templates cujos modelos são si geridos por fragmentos.
O que é controle de fragmentação?
------------------------------
O maquinário para gerenciar fragmentos de código comuns e diferentes em várias versões de _a única file_ já existe no modernos sistemas de controle de versão. Fragmentos adapta essas ferramentas para gerenciar as versões comuns e diferentes de _several files_ diferente.
Cada arquivo está em vigor a sua própria "ramo", e sempre que você modificar um arquivo ("ramo") você pode aplicar ("merge"), que se transformam em quaisquer que sejam os outros arquivos ("ramos") que você escolher. Neste Fragments sentido é um tipo diferente de "controle de origem" - em vez de controlar versões / revisões ao longo do tempo, ele controla fragmentos através de muitos arquivos que existem simultaneamente. Daí o termo "controle de fragmentação".
Como eu sou um lingüista, tenho de salientar que a distinção entre [Synchronic] (http://en.wikipedia.org/wiki/Synchronic_analysis) e [diacrônica] (http://en.wikipedia.org/wiki/ Diachronics) Linguística me deu essa idéia em primeiro lugar.
Como funciona?
O algoritmo de mesclagem é uma versão do Precise Mesclar Codeville modificado para suportar cherry-picking. Precise Mesclar Codeville foi escolhido porque ele suporta integrações limpas acidentais e convergência. Ou seja, se dois ficheiros são modificados de forma independente, do mesmo modo, que se fundem de forma limpa. Isso torna fácil a adição de novos arquivos; usar `comando fork` do Fragmento para criar um novo arquivo com base em outros arquivos (ou apenas` cp` um dos seus arquivos), alterá-lo como desejado, e cometê-lo. As alterações posteriores, quaisquer seções comuns modificada-un, em que arquivo ou em seus irmãos, será aplicável em todo o resto do repositório.
Como o controle de versão, você corre Fragments na linha de comando a cada vez que você faz uma alteração em seu HTML, não antes de cada página tornar
Requisitos :.
- Python
Comentários não encontrado