ソフトウェアパッケージ開発プロセスは、ソフトウェアパッケージを開発するためのシステムです。このようなパッケージは、たとえばソフトウェアリポジトリを介して、コードを再利用および共有するために使用されます。パッケージ開発プロセスには、通常はバグを明らかにするパッケージチェックの正式なシステムが含まれており、信頼できるソフトウェアの作成が容易になる可能性があります(Chambersの 第一指令)。[1]また、ドキュメントの標準も含まれているため、新しいユーザーが使い方を習得しやすくなります。
議論
この文脈では、パッケージとは、 PythonやRなどの単一の言語で使用するために書かれた関数の集まりです。ドキュメントがバンドルされている場合もあります。多くのプログラミング言語には、このようなパッケージを共有する ソフトウェア リポジトリがあります。
たとえば、Pythonパッケージは、ドキュメント、コード、初期設定、および単体テストとして使用できる例などを、「py」拡張子を持つ単一のファイルにまとめます。
対照的に、Rパッケージには、コードとは別のファイルに例を記載したドキュメントがあり、サンプル データ セットや入門用ビネットなどの他の資料とバンドルされている場合もあります。R パッケージのソース コードは、マスターの「説明」ファイルと、単体テストや回帰テストに適したドキュメント、コード、データ セットのサブディレクトリが別々にあるディレクトリに格納されています。[2]正式なパッケージ コンパイル プロセス [3] [4]では、さまざまな種類のエラーがチェックされます。これには、ドキュメント マークアップ言語とコードの両方の構文エラーのチェック、およびドキュメントとコード間の引数の比較が含まれます。ドキュメント内の例はテストされ、失敗した場合はエラー メッセージが生成されます。これは、単体テストの原始的な形式として使用できます。より正式な単体テストと回帰テストを含めることができます。これにより、コードの開発中にバグを見つけやすくなり、ソフトウェア開発の生産性が向上します。さらに、ドキュメントにより、コードを他の人と共有しやすくなります。また、開発者が数か月または数年前に書かれたコードを使用しやすくなります。 Comprehensive R Archive Network (CRAN) に提供され、関連するオープンソース共同開発 Web サイト R-Forge で開発中のパッケージに対して、定期的なチェックが行われます。これらのチェックでは、コア R 言語のさまざまなバージョンで、さまざまなプラットフォーム上でパッケージを繰り返しコンパイルします。結果はパッケージの保守担当者に提供されます。このようにして、パッケージの貢献者は、代替テスト結果に簡単にアクセスできないため、自分では遭遇しない可能性のある問題に気付くことができます。
興味深い研究課題としては、さまざまなソフトウェア リポジトリへの貢献の質を比較し、それを言語の機能や付随するパッケージ開発プロセスに関連付けるというものがあります。これには、貢献されたソフトウェアの増加率と、ドキュメント、テスト、コーディングの標準の形式化と施行の程度を比較することが含まれます。
参照
- 異なる言語のソフトウェア パッケージをオペレーティング システムに統合するためのパッケージ管理システム。
- 共有するパッケージのコレクション用のソフトウェア リポジトリ。
- ソフトウェア開発のより一般的な議論については、ソフトウェア開発プロセスまたはソフトウェア開発方法論を参照してください。
参考文献
- ^ Chambers, John M. (2008).データ分析のためのソフトウェア: R によるプログラミング. Springer. ISBN 978-0-387-75935-7。
- ^ R 拡張機能の作成。
- ^ Leisch, Friedrich. 「R パッケージの作成: チュートリアル」(PDF)。
- ^ Graves, Spencer B.; Dorai-Raj, Sundar. 「CRAN、R-Forge、ローカル R アーカイブ ネットワークと Subversion (SVN) リポジトリを使用した R パッケージの作成」(PDF)。
