İçindekiler

okuma süresi: 30 dakika

Giriş

Google Apps Script (GAS), Google Sheets, Google Docs ve Google Forms gibi çeşitli Google hizmetleriyle ilişkili bir komut dosyası geliştirme platformudur. Görevleri otomatikleştirmek, özel özellikler eklemek ve Google hizmetlerini entegre etmek için kullanılabilir.

Bu notanda, Google Apps Script’in temel kavramlarını somut örneklerle inceleyeceğiz. Değişkenler, döngüler, fonksiyonlar ve daha pek çok kavram, GAS özel bağlamına uyarlanarak ele alınacaktır.

Google Apps Script’te temel yapı

Başlamak için, bir Google Apps scriptinin temel yapısını inceleyelim.

/**
 * Structure de base en Google Apps Script
 */
function exempleStructureGAS() {
    // Votre code ici
    Logger.log("Hello, Google Apps Script!");
}

Tipler ve Değişkenler Google Apps Script’te

Google Apps Script, programlama dili olarak JavaScript kullanır. Veri tipleri ve değişkenler, standart JavaScript gibi çalışır.

/**
 * Types et Variables en Google Apps Script
 */
function exempleTypesVariablesGAS() {
    // Votre code ici
    var nombre = 42;
    var texte = "Bonjour, Google Apps Script!";
    Logger.log(nombre);
    Logger.log(texte);
}

İşlemler ve Operatörler Google Apps Script’te

Google Apps Script’teki işlemler ve operatörler JavaScript’tekiyle aynıdır.

/**
 * Opérations et Opérateurs en Google Apps Script
 */
function exempleOperationsGAS() {
    // Votre code ici
    var x = 10;
    var y = 5;
    var resultat = x + y;
    Logger.log(resultat);
}

Var, Let ve Const Google Apps Script’te

GAS’te kavramların`var`, let, et `const`değişkenleri bildirmek için kullanılır. Ancak, farklarını ve etkilerini anlamak önemlidir.

/**
 * Var, Let et Const en Google Apps Script
 */
function exempleVarLetConstGAS() {
    // Votre code ici
    // Utilisation de var
    var x = 10;
    if (true) {
        var x = 20; // La variable x est modifiée globalement
    }
    Logger.log(x);

    // Utilisation de let
    let y = 30;
    if (true) {
        let y = 40; // La variable y est limitée au bloc if
    }
    Logger.log(y);

    // Utilisation de const
    const z = 50;
    // z = 60; // Impossible de réassigner une constante
    Logger.log(z);
}

Google Apps Script’te kontrol yapıları

Kontrol yapıları gibi`if`, else, while et `for`Google Apps Script’te yürütme akışını yönetmek için kullanılır.

/**
 * Structures de Contrôle en Google Apps Script
 */
function exempleStructuresControleGAS() {
    // Votre code ici
    var condition = true;

    if (condition) {
        Logger.log("La condition est vraie.");
    } else {
        Logger.log("La condition est fausse.");
    }

    var compteur = 0;
    while (compteur < 5) {
        Logger.log(compteur);
        compteur++;
    }

    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }
}

Ayarlar ve Kapsamlar Google Apps Script’te

Parametreler ve kapsamlar, GAS’te betik geliştirmede kritik bir rol oynar. Beklenmedik davranışlardan kaçınmak için nasıl işlediklerini anlayın.

/**
 * Paramètres et Scopes en Google Apps Script
 */
function exempleParametresScopesGAS(parametre) {
    // Votre code ici
    var variableGlobale = "Je suis global";

    function afficherParametre() {
        Logger.log(parametre);
    }

    afficherParametre();
    Logger.log(variableGlobale);
}

Google Apps Script’te sabitler, değişkenler ve harfler

Aradaki farkı anlamak`const`, var, et `let`Google Apps Script’te değişkenlerin etkili kullanımı için gereklidir.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Google Apps Script’te döngüler

Döngüler, örneğin`for` et while, öğeler üzerinde iterasyon yapmak ve tekrarlayan işlemler gerçekleştirmek için çok önemlidir.

/**
 * Boucles en Google Apps Script
 */
function exempleBouclesGAS() {
    // Votre code ici
    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }

    var condition = true;
    var compteur = 0;

    while (condition) {
        Logger.log("Tour de boucle");
        compteur++;
        if (compteur === 3) {
            condition = false;
        }
    }
}

Google Apps Script’te Nesneler

Nesneler, verileri yapılandırmak için kullanılır. GAS içinde birçok yerleşik nesne, Google hizmetleriyle etkileşimi kolaylaştırır.

/**
 * Objets en Google Apps Script
 */
function exempleObjetsGAS() {
    // Votre code ici
    var feuille = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    var cellule = feuille.getRange("A1");
    cellule.setValue("Nouvelle valeur");
}

Sabitler, Değişkenler ve Harfler Google Apps Script’te

Farkı anlamak`const`, var, et `let`Google Apps Script’te değişkenlerin etkili kullanımı için zorunludur.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Google Apps Script’te Fonksiyonlar

Fonksiyonlar programlamada temel bileşenlerdir. GAS’te, fonksiyonlar farklı şekillerde bildirilebilir ve çağrılabilir.

/**
 * Fonctions en Google Apps Script
 */
function exempleFonctionsGAS() {
    // Votre code ici
    function additionner(a, b) {
        return a + b;
    }

    var resultat = additionner(2, 3);
    Logger.log(resultat);

    // Fonction anonyme
    var multiplier = function (x, y) {
        return x * y;
    };

    Logger.log(multiplier(4, 5));
}

Rest ve Spread operatörleri Google Apps Script’te

Dinlenme operatörleri (…​) ve yayılım (…​) dizileri ve nesneleri özet bir şekilde işlemek için faydalıdır.

/**
 * Opérateurs de Repos et de Propagation en Google Apps Script
 */
function exempleOperateursReposPropagationGAS() {
    // Votre code ici
    // Opérateur de repos (...) pour les tableaux
    var nombres = [1, 2, 3, 4, 5];
    var [...copieNombres] = nombres;
    Logger.log(copieNombres);

    // Opérateur de propagation (...) pour les objets
    var objOriginal = { x: 1, y: 2 };
    var objClone = { ...objOriginal, z: 3 };
    Logger.log(objClone);
}

Google Apps Script’te Ayrıştırma ile Atama

Yıkıma göre atama, nesneler ve dizilerden değerleri kısaca çıkarmamızı sağlayan güçlü bir özelliktir.

/**
 * Affectation par Décomposition en Google Apps Script
 */
function exempleAffectationDecompositionGAS() {
    // Votre code ici
    var coordonnees = [3, 4];
    var [x, y] = coordonnees;
    Logger.log(x);
    Logger.log(y);

    var utilisateur = { nom: "John", age: 30 };
    var { nom, age } = utilisateur;
    Logger.log(nom);
    Logger.log(age);
}

Google Apps Script’te Koleksiyonlar ve Bildirimci Programlama

Google Apps Script, tablolar gibi veri yapılarını destekler; ve fonksiyonel programlama ile beyan edici (><impératif) yinelenme kavramlarını destekler, örnek olarak`map`, reduce et forEach.

/**
 * Collections et Programmation Déclarative en Google Apps Script
 */
function exempleCollectionsFonctionnelleGAS() {
    // Votre code ici
    // Exemple de tableau (collection)
    var nombres = [1, 2, 3, 4, 5];

    // Utilisation de forEach
    nombres.forEach(function (nombre) {
        Logger.log(nombre);
    });

    // Utilisation de map
    var carresNombres = nombres.map(function (nombre) {
        return nombre * nombre;
    });
    Logger.log(carresNombres);

    // Utilisation de reduce
    var somme = nombres.reduce(function (acc, nombre) {
        return acc + nombre;
    }, 0);
    Logger.log(somme);
}

Sonuç

Bu memo, Google Apps Script’in temel kavramlarını somut kod örnekleriyle göstererek kapsamıştır. Bu bilgileri, günlük görevlerinizi otomatikleştirmek, belgelerinizi özelleştirmek ve Google Apps Script’in tüm özelliklerinden yararlanmak için kullanın.

İlgili Makaleler