PythonとGoを「パッケージ依存関係」管理で比較 どう違うのか?「Python」と「Go」の違いを比較【第4回】

プログラミング言語「Python」「Go」には、パッケージの依存関係管理に違いがある。どのような違いがあるのか。選定のために把握すべきことを整理する。

2023年05月27日 09時30分 公開
[Matthew GrasbergerTechTarget]

 「Python」と「Go」(「Golang」とも)という2つのプログラミング言語の間には、さまざまな違いが存在する。両者の5つの違いのうち、2つ目を説明する。細かい違いではあるものの、本格的に活用する上では、無視できない違いだ。

比較ポイント3.「依存関係」の管理方法

 プログラミング言語におけるパッケージ(関数群)には、他の特定のパッケージがないと正しく動作しないといった依存関係がある。問題を起こさないためには、パッケージの依存関係を適切に管理することが必要になる。

 Pythonはパッケージの依存関係を管理する手段として、パッケージ管理ツールの「pip」を使用する。pipはPythonのバージョン3.4以降には標準で付属するものの、それ以前のバージョンには付属しない。こうしたバージョン間の差異が、Pythonを使う開発者にとってフラストレーションの原因になることがある。

 Goは複数のパッケージを管理する仕組みである「Goモジュール」(Go module)を使って、パッケージの依存関係を管理する。コマンドラインインタフェース(CLI)を使って、Goモジュールを初期化して利用可能な状態にしたり、必要なパッケージをダウンロードしたり、テストを実行したりすることが可能だ。

 Pythonの場合、利用するバージョンによっては、開発者がパッケージ依存関係の管理手法を調査して選定したり、導入・設定をしたりする必要がある。バージョンをまたいだパッケージ依存関係管理の一貫性を重視する開発者には、Goが適する。


 第5回は、PythonとGoの並行処理を比較する。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

ITmedia マーケティング新着記事

news060.jpg

Z世代が考える「日本が最も力を入れて取り組むべき課題」1位は「ジェンダー平等」――SHIBUYA109 lab.調査
SDGsで挙げられている17の目標のうち、Z世代が考える「日本が最も力を入れて取り組むべき...

news061.png

高齢男性はレジ待ちが苦手、女性は待たないためにアプリを活用――アイリッジ調査
実店舗を持つ企業が「アプリでどのようなユーザー体験を提供すべきか」を考えるヒントが...

news193.jpg

IASがブランドセーフティーの計測を拡張 誤報に関するレポートを追加
IASは、ブランドセーフティーと適合性の計測ソリューションを拡張し、誤報とともに広告が...