Introducció

En aquest projecte final, aplicaràs tots els coneixements adquirits al llarg del curs per desenvolupar una aplicació completa en REXX. Aquest projecte està dissenyat per consolidar els conceptes apresos i proporcionar-te una experiència pràctica en la creació d'una aplicació funcional. L'objectiu és desenvolupar una utilitat que automatitzi una tasca específica, com ara la gestió de fitxers, l'anàlisi de dades o la interacció amb una base de dades.

Objectius del Projecte

  1. Aplicar els conceptes bàsics i avançats de REXX: Utilitzar variables, estructures de control, funcions, manipulació de cadenes, etc.
  2. Desenvolupar una aplicació funcional: Crear una utilitat que resolgui un problema real o automatitzi una tasca.
  3. Integrar diferents components: Utilitzar fitxers, bases de dades, interfícies amb altres programes, etc.
  4. Optimitzar el rendiment: Aplicar tècniques d'optimització per assegurar que l'aplicació sigui eficient.

Descripció del Projecte

Tema del Projecte: Gestor de Fitxers

Desenvoluparàs un gestor de fitxers que permeti realitzar les següents operacions:

  1. Llistar fitxers: Mostrar una llista de fitxers en un directori especificat.
  2. Copiar fitxers: Copiar fitxers d'un directori a un altre.
  3. Eliminar fitxers: Eliminar fitxers seleccionats.
  4. Buscar fitxers: Buscar fitxers per nom o extensió.
  5. Registrar operacions: Mantenir un registre de totes les operacions realitzades en un fitxer de registre.

Requisits

  1. Interfície d'usuari: L'aplicació ha de tenir una interfície d'usuari basada en text que permeti als usuaris seleccionar les operacions a realitzar.
  2. Gestió d'errors: L'aplicació ha de gestionar errors de manera adequada, mostrant missatges d'error clars i registrant-los en un fitxer de registre.
  3. Documentació: Proporcionar documentació clara sobre com utilitzar l'aplicació i el codi font.

Estructura del Projecte

  1. Configuració Inicial

1.1. Crear l'Entorn de Treball

/* Configuració inicial */
say "Benvingut al Gestor de Fitxers REXX"
call SetupEnvironment

SetupEnvironment:
  /* Configura l'entorn de treball */
  say "Configurant l'entorn de treball..."
  /* Aquí pots afegir codi per configurar l'entorn, si cal */
  return

  1. Funcionalitats Principals

2.1. Llistar Fitxers

ListFiles:
  parse arg directory
  if directory = "" then directory = "."
  say "Llistant fitxers en el directori:" directory
  'ls' directory
  return

2.2. Copiar Fitxers

CopyFiles:
  parse arg source target
  if source = "" | target = "" then do
    say "Error: Especifica el fitxer d'origen i el directori de destinació."
    return
  end
  say "Copiant fitxer" source "a" target
  'cp' source target
  return

2.3. Eliminar Fitxers

DeleteFiles:
  parse arg file
  if file = "" then do
    say "Error: Especifica el fitxer a eliminar."
    return
  end
  say "Eliminant fitxer" file
  'rm' file
  return

2.4. Buscar Fitxers

SearchFiles:
  parse arg pattern
  if pattern = "" then do
    say "Error: Especifica el patró de cerca."
    return
  end
  say "Cercant fitxers amb el patró:" pattern
  'find . -name' pattern
  return

  1. Registre d'Operacions

LogOperation:
  parse arg operation details
  logFile = "operations.log"
  call time 'R'
  timestamp = time('L')
  line = timestamp " - " operation " - " details
  call lineout logFile, line
  return

  1. Interfície d'Usuari

MainMenu:
  do forever
    say "Selecciona una opció:"
    say "1. Llistar fitxers"
    say "2. Copiar fitxers"
    say "3. Eliminar fitxers"
    say "4. Buscar fitxers"
    say "5. Sortir"
    parse pull option
    select
      when option = "1" then do
        say "Introdueix el directori:"
        parse pull directory
        call ListFiles directory
        call LogOperation "Llistar fitxers" directory
      end
      when option = "2" then do
        say "Introdueix el fitxer d'origen i el directori de destinació:"
        parse pull source target
        call CopyFiles source target
        call LogOperation "Copiar fitxers" source "a" target
      end
      when option = "3" then do
        say "Introdueix el fitxer a eliminar:"
        parse pull file
        call DeleteFiles file
        call LogOperation "Eliminar fitxers" file
      end
      when option = "4" then do
        say "Introdueix el patró de cerca:"
        parse pull pattern
        call SearchFiles pattern
        call LogOperation "Buscar fitxers" pattern
      end
      when option = "5" then leave
      otherwise say "Opció no vàlida. Torna-ho a intentar."
    end
  end
  say "Sortint del Gestor de Fitxers REXX. Adéu!"
  return

call MainMenu

Conclusió

Aquest projecte final t'ha permès aplicar tots els conceptes apresos al llarg del curs per desenvolupar una aplicació completa en REXX. Has treballat amb variables, estructures de control, funcions, manipulació de cadenes, gestió d'errors, operacions d'entrada/sortida de fitxers i molt més. A més, has après a integrar diferents components i a optimitzar el rendiment de l'aplicació.

Felicitats per completar el curs de programació REXX! Ara tens les habilitats necessàries per desenvolupar aplicacions complexes i eficients en aquest llenguatge. Continua practicant i explorant noves possibilitats amb REXX.

© Copyright 2024. Tots els drets reservats