Groovy BinaryとSourceリリースの違いは何ですか?


145

私は多くのウェブサイトのダウンロードセクションでバイナリソースリリースという言葉を見てきました。

実際にはどういう意味ですか?

たとえば、Groovyのダウンロードページでこれを確認しました。

私の質問は、それらがどのように異なるのですか?どちらもGroovyをインストールする傾向がありますが、主な違いは何ですか?

回答:


152

バイナリリリースはオペレーティングシステムと一致する必要がありますが、ソースリリースは独自のマシンでコンパイルされます。

Linuxシステムでは、CPU、インストールされているライブラリのバージョン、カーネルのバージョン、およびほぼすべてのLinuxシステムにコンパイラがインストールされているため、ソースリリースはより一般的です。

バイナリリリースは、ms-windowsシステムでは一般的です。ほとんどのWindowsマシンにはコンパイラがインストールされていません。


2
つまり、ソースのインストールには時間がかかるということです。インストール前にコンパイルする必要があるからですか?また、ユーザーのPCにソースコードコンパイラがない場合はどうなりますか。その場合、ユーザーはコンパイラを検索する必要があり、面倒な作業になる可能性があります。それでそのバイナリは良いですか?
Antの

2
@Anto Aravinth「それで、そのバイナリはいいの?」はい。クロスプラットフォーム(windows / linux)の場合、開発者はどのプラットフォーム用にもコンパイルできないためです。ウィンドウ・システムなし
K3B

10
アプリケーションプロバイダーがマシンの種類とオペレーティングシステムに適したバイナリバージョンを既にコンパイルしている場合、バイナリバージョンの方が使用を開始するのに必要な作業が少ないため、優れていると言えます。一方、何をしているのかわかっている場合、ほとんどすべてのコンパイラにはさまざまな最適化パラメータがあり、微調整してアプリケーションをニーズに合わせて最適化できます。
Harri

43

バイナリリリースには、コンピューターで読み取り可能なバージョンのアプリケーションが含まれています。つまり、コンパイルされています。ソースリリースには、人間が読めるバージョンのアプリケーションが含まれています。つまり、使用する前にコンパイルする必要があります。


18

ソースリリースは生のコンパイルされていないコードです。自分で読むことができます。使用するには、マシンでコンパイルする必要があります。バイナリとは、コードが、コンピューターが読み取って実行できる機械語形式にコンパイルされたことを意味します。バイナリファイルが分析されない限り、または実行可能ファイルをコードとして読み取ることができるプログラムで開かない限り、人間はバイナリファイルを理解できません。


typescriptからes5へのトランスパイルについてはどうでしょう。たとえば、JavaScriptの縮小と醜悪化。これらの完成したコードファイルは、ソースまたはバイナリと見なされ、Webサービングの準備ができていますか?技術的にはコードを読み取ることができますが、ほとんどの人がバイナリを意味するという意味ではバイナリではありません。
Helzgate 2017年

@Helzgateトランスパイルの他の名前は、ソースからソースへのコンパイルです。
charlie_pl 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.