Diferença entre o Groovy Binary e a versão Source?

145

Eu tenho visto as palavras liberação binária e fonte em muitas seções de download de sites.

O que eles realmente querem dizer?

Por exemplo, eu vi isso na página de download do Groovy .

Minha pergunta é como eles diferem? Ambos tendem a instalar o Groovy, mas qual é a principal diferença?

Formigas
fonte

Respostas:

152

Uma versão de origem será compilada em sua própria máquina, enquanto uma versão binária deve corresponder ao seu sistema operacional.

As versões de código-fonte são mais comuns em sistemas Linux, porque os sistemas Linux podem variar drasticamente em CPU, versões de bibliotecas instaladas, versões de kernel e quase todos os sistemas Linux possuem um compilador instalado.

versões binárias são comuns em sistemas ms-windows. A maioria das máquinas Windows não possui um compilador instalado.

k3b
fonte
2
Então isso significa que a instalação da fonte leva tempo certo! porque ele precisa compilar antes da instalação? E o que acontecerá se o PC do usuário não tiver o compilador de código-fonte? Nesse caso, o usuário precisará procurar o compilador, o que pode ser uma tarefa tediosa. Então, esse binário é bom?
Ant
2
@Anto Aravinth "Então, esse binário é bom?" Sim para plataforma cruzada (windows / linux) porque o desenvolvedor não pode compilar para nenhuma plataforma. Não para sistemas Windows
k3b
10
Se o provedor de aplicativos já compilou a versão binária apropriada para o seu tipo de máquina e sistema operacional, então eu diria que a versão binária é melhor, pois exige menos trabalho da sua parte para começar a usá-la. Por outro lado, se você sabe o que está fazendo, praticamente todos os compiladores têm parâmetros de otimização diferentes que você pode ajustar para tornar o aplicativo mais otimizado para suas necessidades.
Harri
43

As versões binárias contêm a versão legível por computador do aplicativo, o que significa que ele é compilado. Os releases de origem contêm a versão legível por humanos do aplicativo, o que significa que ele deve ser compilado antes de poder ser usado.

Harri
fonte
18

O release de origem é o código bruto e não compilado. Você pode ler você mesmo. Para usá-lo, ele deve ser compilado em sua máquina. Binário significa que o código foi compilado em um formato de linguagem de máquina que o computador pode ler e executar. Nenhum humano pode entender o arquivo binário, a menos que tenha sido dissecado ou aberto com algum programa que permita que você leia o executável como código.

espinafre
fonte
Que tal transpilar do texto datilografado para o es5. Minificação e javascript uglificante, por exemplo. Esses arquivos de código finalizados estão prontos para veiculação na Web considerados fonte ou binário? Tecnicamente, você ainda pode ler o código, não é binário no sentido em que a maioria das pessoas quer dizer binário.
Helzgate
@ Helzgate Outro nome para transpilar é compilação fonte a fonte.
22617 Charlie_pl #