私はしばらくの間、GAS ライブラリを作成する最良の方法を見つけようとしてきましたが、それを理解するのに苦労しています。Douglas Crockford の - Javascript: The good parts を読み、これらの教訓を GAS に実装しようとしています。インポートされたすべてのライブラリは、(ScriptModule タイプの) プロジェクトにグローバル変数を追加するため、モジュール設計パターンは開始するのに適した場所のように思えます。このようなパターンにリンクした記事を借りると、次のようになります。
var MODULE = (function () {
var my = {},
privateVariable = 1;
function privateMethod() {
// ...
}
my.moduleProperty = 1;
my.moduleMethod = function () {
// ...
};
return my;
}());
このモジュールは、次のように呼び出すことができます。
var module = LibName.MODULE;
var property = module.moduleProperty; // 1
var method = module.moduleMethod; // ...
私が収集したものから、グローバル変数はできるだけ少なくするのが最善であるため、一般的なアドバイスは、すべてを 1 つのグローバル変数に保存することです。したがって、命名規則は次のようになります。
ここでの私の目標は、安全で競合のないライブラリを設計することです。このデザインパターンを使用するのは正しいですか? GAS ライブラリ用の独自の堅牢な設計パターンを開発した人はいますか?