Qual é o significado do directório /dist em projectos de código aberto?

desde que vi pela primeira vez um directório {[[0]} em muitos projectos de código aberto, normalmente no GitHub, tenho-me perguntado o que significa. (Sou estrangeiro, não sou nativo em inglês)

com dist, vendor, lib, src, e muitos outros nomes de pastas que vemos muitas vezes, eu às vezes me pergunto Como devo nomear minhas próprias pastas.

Corrija-me se estiver errado!

  • src: contém as*fontes**. Às vezes só as fontes puras, às vezes com a versão minificada, depende do projecto.
  • fornecedor: contém outras dependências, como outros projectos de código aberto.
  • [[14] lib: boa pergunta, é realmente perto de {[[2]} Na verdade, dependendo do projeto que podemos ver um ou outro ou ambos...
  • dist: pelo que eu vi, ele contém os arquivos de "produção", aquele que devemos usar se quisermos usar a biblioteca .
Porque é que o código aberto é tão confuso? Não é possível fazer as coisas mais claramente? Pelo menos por língua, porque algumas línguas usar nomes específicos.

Author: Vadorequest, 2014-04-03

3 answers

Para responder à tua pergunta:

/dist significa "Distribuição", o código compilado/biblioteca.

A estrutura de pastas varia de acordo com o sistema de compilação e linguagem de programação. Aqui estão algumas convenções padrão:

  • src/: ficheiros "fonte" para construir e desenvolver o projecto. Este é o lugar onde os arquivos de origem originais estão localizados, antes de ser compilado em menos arquivos para dist/, public/ ou build/.
  • dist/: "distribuição", o código compilado/biblioteca, também nomeado public/ ou build/. Os arquivos destinados à produção ou uso público estão geralmente localizados aqui.
  • lib/: dependências externas (quando incluídas directamente).
  • test/: o projecto testa scripts, trocos, etc.
  • vendor/: as dependências são normalmente colocadas aqui através da Gestão de dependências.
  • bin/: ficheiros que são adicionados ao seu caminho quando instalados.

Markdown / Ficheiros De Texto:

Específico (pode durar para sempre):
  • package.json: descreve a biblioteca e as dependências (se um pacote JS).
  • composer.json: igual ao anterior mas para os pacotes PHP via composer.
  • .travis.yml: ficheiro de configuração para o ambienteTravis CI .
  • .gitignore: especificação dos ficheiros significava ser ignorado pelo Git.
 130
Author: 0xcaff, 2018-08-24 14:35:19

Para responder à sua pergunta original sobre o significado da pasta dist:

O shortform {[[0]} representa distributable e refere-se a um directório onde os ficheiros serão armazenados que poderão ser directamente utilizados por outros sem a necessidade de compilar ou minificar o código-fonte que está a ser reutilizado.

Exemplo: Se eu quiser usar o código fonte de uma biblioteca Java que alguém escreveu, então você precisa compilar as fontes primeiro para fazer uso dela. Mas se um autor da biblioteca colocar já a versão pré-compiled para o repositório, então você pode apenas ir em frente. Tal versão já compilada é gravada na pasta dist.

Algo semelhante se aplica aos módulos JavaScript. Normalmente o código JavaScript é minificado e ofuscado para uso na produção. Portanto, se você quiser distribuir uma biblioteca JavaScript, é aconselhável colocar o código fonte simples (não minificado) em um diretório src (fonte) e a versão minificada e ofuscada no {[[0]} (distribuível) directoy, assim outros podem pegar a versão minificada imediatamente sem ter que minify-lo eles mesmos.

Nota: alguns programadores usam nomes como target, build Quer dest (destino) em vez de dist. Mas o propósito destas pastas é idêntico.

 39
Author: Benny Neugebauer, 2015-10-10 08:07:25

Resumo das pastas:

  • binário
  • src: fonte
  • incluem: cabeçalhos C / C++
  • lib: bibliotecas C / C++
  • contrib: contribuição de outras pessoas
  • doc / docs: documentação
  • man: manual (Unix / Linux)
 1
Author: Travor Liu, 2017-11-01 14:26:49