Kütüphaneler

Kitaplık, işlevleri diğer komut dosyalarında yeniden kullanılabilen bir komut dosyası projesidir.

Kitaplığa erişim elde etme

Projenize kitaplık eklemek için kitaplığa en az görüntüleme düzeyinde erişiminizin olması gerekir. Dahil etmek istediğiniz kitaplığın yazarı siz değilseniz yazarla iletişime geçin ve erişim isteyin.

Dahil etmek istediğiniz kitaplığın komut dosyası kimliğine ihtiyacınız vardır. Kitaplığa erişiminiz varsa komut dosyası kimliğini Proje Ayarları sayfasında bulabilirsiniz.

Komut dosyası projenize kitaplık ekleme

  1. Apps Komut Dosyası düzenleyicisinin solunda, "Kitaplıklar"ın yanındaki Kitaplık ekle'yi tıklayın.
  2. "Komut dosyası kimliği" alanına kitaplığın komut dosyası kimliğini yapıştırın.
  3. Ara'yı tıklayın.
  4. Sürüm açılır listesini tıklayın ve kullanılacak kitaplığın sürümünü seçin.
  5. Varsayılan "Tanımlayıcı" adının bu kitaplıkla kullanmak istediğiniz ad olup olmadığını kontrol edin. Bu, komut dosyanızın kitaplığa atıfta bulunmak için kullandığı addır. Örneğin, bu değeri Test olarak ayarlarsanız söz konusu kitaplığın bir yöntemini şu şekilde çağırabilirsiniz: Test.libraryMethod().
  6. Ekle'yi tıklayın.

Kitaplık kullanma

Dahil edilen kitaplığınızı varsayılan bir hizmeti kullanacağınız gibi kullanın. Örneğin, Test kitaplığınızın tanımlayıcısıysa kitaplıktaki yöntemlerin listesini görmek için hemen Test yazıp bir nokta ekleyin.

Dahil edilen bir kitaplığın referans dokümanlarını açmak için aşağıdaki adımları uygulayın:

Komut dosyası düzenleyicisinin sol tarafında, kitaplık adının yanındaki Diğer > Yeni sekmede aç'ı tıklayın.

Kitaplığı kaldırma

Komut dosyası düzenleyicinin sol tarafında, kitaplık adının yanındaki Diğer > Kaldır > Kitaplığı kaldır'ı tıklayın.

Kitaplığı güncelleme

Kitaplığın sürümünü değiştirebilir veya tanımlayıcısını güncelleyebilirsiniz.

  1. Düzenleyicinin sol tarafındaki "Kitaplıklar" bölümünde kitaplığın adını tıklayın.
  2. Değişiklikleri yapıp Kaydet'i tıklayın.

Kitaplık oluşturma ve paylaşma

Komut dosyası projenizi kitaplık olarak kullanmak ve paylaşmak için aşağıdaki adımları uygulayın.

  1. Komut dosyanızın sürümlü dağıtımını oluşturun.
  2. Kitaplığın tüm potansiyel kullanıcılarıyla en az görüntüleme düzeyinde erişim paylaşın.
  3. Bu kullanıcılara, Proje ayarları sayfasında bulunan komut dosyası kimliğini verin.

En iyi uygulamalar

Kitaplık yazarken uyulması gereken bazı kurallar aşağıda verilmiştir:

  1. Kitaplığınız başkaları tarafından dahil edildiğinde varsayılan tanımlayıcı olarak kullanılacağından projeniz için anlamlı bir ad seçin.
  2. Komut dosyanızın bir veya daha fazla yönteminin kitaplık kullanıcılarınıza görünmemesini (veya kullanılamamasını) istiyorsanız yöntemin adını alt çizgiyle sonlandırabilirsiniz. Örneğin, myPrivateMethod_().
  3. Kitaplık kullanıcıları yalnızca listelenebilir genel özellikleri görebilir. İşlev tanımları, var ile bir işlevin dışında oluşturulan değişkenler ve genel nesnede açıkça ayarlanan özellikler buna dahildir. Örneğin, enumerable değeri false olarak ayarlanmış Object.defineProperty(), kitaplığınızda kullanabileceğiniz bir simge oluşturur ancak bu simge kullanıcılarınız tarafından erişilemez.
  4. Kitaplık kullanıcılarınızın komut dosyası düzenleyicide otomatik tamamlama özelliğinden ve otomatik olarak oluşturulan dokümanlar özelliğinden yararlanmasını istiyorsanız tüm işlevleriniz için JSDoc tarzı dokümanlara sahip olmanız gerekir. Aşağıda bununla ilgili bir örnek verilmiştir:

    /**
     * Raises a number to the given power, and returns the result.
     *
     * @param {number} base the number we're raising to a power
     * @param {number} exp the exponent we're raising the base to
     * @return {number} the result of the exponential calculation
     */
    function power(base, exp) { ... }
    

Kaynak kapsamı

Kitaplıklarla çalışırken iki tür kaynak vardır: paylaşılan ve paylaşılmayan. Paylaşılan kaynak, hem kitaplığın hem de dahil eden komut dosyasının kaynağın aynı örneğine yerleşik erişimi olduğu anlamına gelir. Aşağıdaki şemada, kullanıcı mülkleri örneği kullanılarak paylaşılan bir kaynak gösterilmektedir:

Paylaşılan Kaynak

Paylaşılmayan bir kaynak, hem kitaplığın hem de dahil eden komut dosyasının yalnızca kendi kaynak örneğine yerleşik erişimi olduğu anlamına gelir. Ancak bir kitaplık, üzerinde işlem yapan açık işlevlere sahip olarak paylaşılmayan kaynaklarına erişim sağlayabilir. Komut dosyası özelliklerini göstermek için kitaplığınıza ekleyeceğiniz bir işleve örnek:

  function getLibraryProperty(key) {
    return ScriptProperties.getProperty(key);
  }

Aşağıdaki şemada, Komut Dosyası Özellikleri örneği kullanılarak paylaşılmayan bir kaynak gösterilmektedir:

Paylaşılmayan Kaynak

Bu tabloda, paylaşılan ve paylaşılmayan kaynaklar referans olarak listelenmiştir:

Kaynak Paylaşılan* Paylaşılmıyor** Notlar
Kilitle Aynı örneği, kitaplıkta oluşturulan komut dosyaları dahil herkes görebilir.
Komut Dosyası Özellikleri Kitaplıkta oluşturulan komut dosyaları da dahil olmak üzere aynı örnek herkes tarafından görülebilir.
Önbellek Aynı örneği, kitaplıkta oluşturulan komut dosyaları dahil herkes görebilir.
Tetikleyiciler Kitaplıkta oluşturulan basit tetikleyiciler, dahil edilen komut dosyasıyla tetiklenmez.
ScriptApp
UiApp
Kullanıcı Özellikleri
Günlük kaydedici ve yürütme dökümü
Sites, E-Tablolar ve diğer kapsayıcılar getActive() çağrısı, dahil etme komut dosyasının kapsayıcısını döndürür.
MailApp ve GmailApp
* Bu, kitaplığın özelliğin/kaynağın kendi örneğine sahip olmadığı ve bunun yerine, onu çağıran komut dosyası tarafından oluşturulan örneği kullandığı anlamına gelir.
** Bu, kitaplığın kaynak/özellik örneğinin kendi örneğine sahip olduğu ve kitaplığı kullanan tüm komut dosyalarının bu örneği paylaştığı ve erişebildiği anlamına gelir.

Kitaplığı test etme

Kitaplığınızı test etmek için ana dağıtımı kullanın. Komut dosyasına düzenleyici düzeyinde erişimi olan herkes ana dağıtımı kullanabilir.

Kitaplıkta hata ayıklama

Hata ayıklayıcıyı kitaplık içeren bir projede kullandığınızda, dahil edilen kitaplıktaki bir işleve geçebilirsiniz. Kod, hata ayıklayıcıda salt görüntüleme modunda ve doğru sürümde gösterilir.