Tecnologias, ferramentas e práticas
Uma tecnologia é o assunto no qual o conhecimento se apoia. Todo componente
de conhecimento (knowledge component) no Fito pertence a exatamente uma, e a
lista em /knowledge é uma lista de tecnologias, não de componentes.
Esta página é para quem viu as pílulas tool e practice e quer saber o que
elas decidem. Ela cobre o que uma tecnologia guarda e por que a classificação
tem só dois valores. Ela não cobre os componentes em si — para esses, veja
Knowledge components.
Uma tecnologia é um assunto, não um pacote
Seção intitulada “Uma tecnologia é um assunto, não um pacote”O Fito não se importa se uma tecnologia é distribuída como uma biblioteca. O Javalin é uma tecnologia. A Arquitetura Hexagonal também, e os Feature Toggles também. O que faz algo ser uma tecnologia no Fito é que as pessoas podem ser competentes nisso e que essa competência pode ser escrita como componentes.
Cada tecnologia carrega quatro coisas que você vê:
- Um nome, como
Hexagonal Architecture. - Um slug, como
hexagonal. O slug é um trecho de toda referência de componente daquela tecnologia —concept:hexagonal.port— e da URL dela. - Um tipo (kind),
tooloupractice. - Uma descrição, que é opcional.
Sob cada tecnologia fica pelo menos uma linha principal (major line). É lá que mora o texto específico de versão, e é por isso que a descrição acima é a que não depende de versão: o que a tecnologia é em todas as linhas dela.
Os tipos são dois, de propósito
Seção intitulada “Os tipos são dois, de propósito”tool quer dizer software concreto — uma biblioteca, um framework, um programa
de linha de comando. practice é definido como tudo que não é uma
ferramenta — técnicas e metodologias incluídas, em vez de ficarem ao lado como
um terceiro e um quarto tipo.
Isso parece perder informação, e é proposital. Nada no Fito lê o tipo para decidir o que você pode fazer. Ele é mostrado num cartão e declarado quando alguém cria a tecnologia. Uma classificação de quatro valores multiplicaria o que os autores teriam de julgar — TDD é uma técnica ou uma prática? A Arquitetura Hexagonal é uma prática ou uma metodologia? — e nenhuma parte do produto consumiria a resposta.
O único lugar em que o tipo decide algo é qual template um componente daquela tecnologia usa. Um concept sobre uma ferramenta e um concept sobre uma prática pedem campos diferentes.
O que a página de uma tecnologia mostra
Seção intitulada “O que a página de uma tecnologia mostra”Abra /knowledge/<technology-slug> e você recebe, nesta ordem:
- O nome, com o tipo ao lado como uma pílula.
- A descrição que não depende de versão, ou No description yet. quando ninguém escreveu nenhuma.
- Três pílulas de contagem — Concepts, Usage Scenarios, Execution Facts — cada uma um link que filtra a barra lateral por aquele tipo.
- Uma seção Versions, um cartão por linha principal.
- Uma barra lateral com os componentes da tecnologia.
As contagens são a leitura mais rápida de quão bem uma tecnologia está coberta. Uma tecnologia com dois concepts e nenhum usage scenario consegue ensinar o que as palavras significam, e ainda não consegue colocar você numa situação que as use.
De onde vêm as tecnologias
Seção intitulada “De onde vêm as tecnologias”Ninguém no Fito mantém um catálogo fixo. Quem escreve casos provisiona uma
tecnologia quando precisa de uma, e os componentes dela são gerados a partir das
fontes que essa pessoa ingeriu. Então a lista em /knowledge cresce de lado, no
formato do que as pessoas de fato ensinaram.
É por isso também que uma tecnologia pode ficar ali com uma descrição magra e dois componentes. Ela é um assunto real que alguém começou, não um esboço que o Fito entregou pronto.
O que vem a seguir
Seção intitulada “O que vem a seguir”- Navegar pela área de conhecimento — encontre uma tecnologia e leia uma.
- Knowledge components — os três tipos que se apoiam numa tecnologia.