Skip to main content

図書館管理の基本原則

でCODESYS 4ライブラリは参照されるだけで、アプリケーションに永続的に埋め込まれるわけではありません。

これらの参照は、開発者の入力、デバイスの説明、プログラミングシステム自体など、さまざまな情報源から得られます。これらの参照の多くは曖昧です。プレースホルダーやバージョンパターンを指定するだけで、特定のライブラリ名を明示するものではありません。

しかし、コンパイラはライブラリごとに固有のバージョンを必要とします。そのため、2つのものが分離されています。CODESYS 4 : 目的の参照文献と、それらから特定された固有のライブラリ。

基本原則:参照リストとロックファイル

図書館管理は2つのファイルに基づいて行われます。

のLibraries.jsonこれは参照リストです。ここにライブラリの直接参照を入力します。このファイルには、アプリケーションが必要とするライブラリが記述されています。手動で管理することも、ユーザーインターフェースで管理することもできます。 

ライブラリ解決時に、参照リストから依存関係グラフ全体が構築されます。この際、各参照は再帰的に解決されます。参照されているライブラリがさらに必要とするライブラリも特定されます。

結果はLibraries.lock.jsonロックファイル。

ファイル

役割

Libraries.json

必要なライブラリの参考文献リスト

このファイルは開発者によって管理・維持されています。

Libraries.lock.json

解決済みの依存関係グラフを含むロックファイル

ファイルはライブラリの解決時に自動的に作成および更新されます。

バージョン管理と再現性における利点

ロックファイルは再現性を考慮して設計されています。鍵はソートされ、フォーマットは安定しており、コンパイル済みライブラリにはSHA384チェックサムが保存されます。

これにより、ロックファイルはGitやSVNなどのバージョン管理システムに適しています。ファイルは読み取り可能なJSON形式です。ライブラリの状態変更は差分で追跡でき、コードレビューで確認できます。

ロックファイルがプロジェクトにチェックインされると、すべての開発者が同じライブラリの状態を取得できます。

ヒント

npmやNuGetに詳しい人なら、ロックファイルの原理は理解できるでしょう。CODESYS 4。