Introducció

En aquest tema, explorarem com utilitzar scripts dins de Xcode per automatitzar tasques repetitives, millorar la productivitat i personalitzar el flux de treball. Aprendrem a crear scripts de shell i a integrar-los amb Xcode per optimitzar el procés de desenvolupament.

Conceptes Clau

  1. Scripts de Shell: Scripts escrits en llenguatges com Bash, Python o Ruby que poden executar-se des de la línia de comandes.
  2. Fases de Compilació Personalitzades: Etapes addicionals en el procés de compilació on es poden executar scripts.
  3. Variables d'Entorn: Variables que es poden utilitzar dins dels scripts per accedir a informació del projecte.

Creant un Script de Shell Bàsic

Exemple de Script de Shell

A continuació, es mostra un exemple de script de shell que llista tots els fitxers en el directori del projecte:

#!/bin/bash
echo "Llistant tots els fitxers en el directori del projecte:"
ls -la

Explicació del Codi

  • #!/bin/bash: Indica que el script s'executarà amb l'intèrpret de comandes Bash.
  • echo "Llistant tots els fitxers en el directori del projecte:": Mostra un missatge a la consola.
  • ls -la: Llista tots els fitxers i directoris amb detalls.

Integrant Scripts amb Xcode

Afegint una Fase de Compilació Personalitzada

  1. Obre el teu projecte a Xcode.
  2. Selecciona el teu target al navegador de projectes.
  3. Ves a la pestanya "Build Phases".
  4. Fes clic al botó "+" i selecciona "New Run Script Phase".

Configurant la Fase de Compilació

  1. Nom de la Fase: Canvia el nom de la fase a "Llistar Fitxers del Projecte".

  2. Script: Copia i enganxa el següent codi al camp de script:

    #!/bin/bash
    echo "Llistant tots els fitxers en el directori del projecte:"
    ls -la
    
  3. Variables d'Entorn: Pots utilitzar variables d'entorn com $SRCROOT per accedir al directori arrel del projecte.

Executant el Script

Quan compiles el projecte, Xcode executarà el script durant la fase de compilació especificada. Els resultats es mostraran a la consola de Xcode.

Exemples Pràctics

Exemple 1: Verificant la Presència de Fitxers Necessaris

#!/bin/bash
REQUIRED_FILES=("config.json" "data.db")

for FILE in "${REQUIRED_FILES[@]}"; do
    if [ ! -f "$SRCROOT/$FILE" ]; then
        echo "Error: $FILE no trobat!"
        exit 1
    fi
done

echo "Tots els fitxers necessaris estan presents."

Exemple 2: Minificant Fitxers JavaScript

#!/bin/bash
for FILE in "$SRCROOT/js/"*.js; do
    uglifyjs "$FILE" -o "${FILE%.js}.min.js"
done

echo "Fitxers JavaScript minificats."

Exercicis Pràctics

Exercici 1: Creant un Script per Comptar Línies de Codi

Objectiu: Escriu un script que compti el nombre total de línies de codi en el projecte.

Solució:

#!/bin/bash
find "$SRCROOT" -name "*.swift" | xargs wc -l

Exercici 2: Verificant la Presència de Certs Directoris

Objectiu: Escriu un script que verifiqui si els directoris "Assets" i "Resources" existeixen en el projecte.

Solució:

#!/bin/bash
DIRECTORIES=("Assets" "Resources")

for DIR in "${DIRECTORIES[@]}"; do
    if [ ! -d "$SRCROOT/$DIR" ]; then
        echo "Error: Directori $DIR no trobat!"
        exit 1
    fi
done

echo "Tots els directoris necessaris estan presents."

Errors Comuns i Consells

  • Permisos del Script: Assegura't que el script tingui permisos d'execució (chmod +x script.sh).
  • Rutes Relatives vs Absolutes: Utilitza variables d'entorn com $SRCROOT per evitar problemes amb rutes relatives.
  • Depuració: Afegeix instruccions echo per depurar i entendre el flux del script.

Conclusió

Els scripts són una eina poderosa per automatitzar tasques i millorar la productivitat en Xcode. Amb la capacitat d'integrar scripts de shell en el procés de compilació, pots personalitzar i optimitzar el teu flux de treball de desenvolupament. Practica escrivint i integrant scripts per familiaritzar-te amb aquesta funcionalitat i aprofitar-la al màxim.

© Copyright 2024. Tots els drets reservats