DESCRIPCIÓN DEL PROBLEMA
Los servicios de gestión de archivos suelen ser grandes contendores,
y los editores de estos mismos también son excelentes opciones en su categoría.
Es por esto que se busca ofrecer un servicio de contención, visualización y edición
de archivos en una única herramienta, a diferencia del paradigma actual,
[herramienta específica y funcionalidad avanzada] por herramientas generales
y funcionalidad básica.
El autor prefiere el primer paradigma por sus grandes ventajas, las que se reflejan
en el día a día. Es decir, actualmente predominan este tipo de programas,
mientras que los otros son escasos. Tener ventajas o ser preferido no los hace buenos ni malos,
y es por eso que el propósito principal no es solo ofrecer la otra cara de la moneda,
sino también proporcionar un servicio que lamentablemente es escaso. Aunque la mayoría no lo necesita,
hay una minoría que desearía mucho una herramienta general y básica. Al ser esta minoría,
este tipo de programas no es algo que se encuentre fácilmente, pero el verdadero servicio
es darle opción al público que lo necesita.
En términos del programa en sí, se llama FileVision, y podrá contener, visualizar y
editar archivos, todo a un nivel básico.
ANÁLISIS DEL PROBLEMA
El usuario interactúa directamente con FileVision. Junto a él se proporciona una carpeta,
llamada fls, donde el usuario simplemente copia todos los archivos que desea contener, visualizar o
editar. Esto es consciente por parte del usuario, ya que no todos sus datos querrá interactuarlos
a través de FileVision; para la mayoría, los programas por defecto de su escritorio serán suficientes.
Esto da la libertad de que lo que el usuario quiera interactuar con FileVision, simplemente lo copie a fls.
Al ejecutar FileVision, todos los archivos de fls se muestran para ser visualizados de forma
cómoda, utilizando varias opciones para su organización. Además, el usuario podrá seleccionar
algunos de sus archivos para editarlos con opciones básicas.
DEFINICIÓN DE REQUERIMIENTOS
El primer caso es el de organización, al presionar el botón [o], se cambia entre
diferentes opciones que se ofrecen, de forma cíclica.
El segundo caso de uso es el de edición, si se selecciona un archivo en la sección
derecha que dice [EDIT], con click en el archivo, presionando el botón [GO],
se despliegan una serie de opciones para su edición.
El tercer caso de uso es que con el botón [s] se pueden ordenar los archivos entre
diferentes opciones, de forma cíclica.
DISEÑO
A continuación se presenta un diagrama de interacción entre objetos abstractos
para representar la solución al proyecto FileVision.
Además, la clase archivoDirecto es abstracta e implementa un método virtual para configurar
el icono. Todos los archivos tienen un nombre, pero no todos comparten el mismo icono.
Por ende, el método de configuración de este será mediante la herencia. Los objetos derivados,
como exePNG, tendrán un icono descriptivo para una foto. Una posible clase exeJPG debería ser muy
similar. Sin embargo, la clase exeTXT debería tener un icono más descriptivo para un texto plano.
En rojo están los miembros de datos y en verde los miembros de función debido al uso de C++ para el proyecto.
Estados del objeto como op_o y op_s representan enteros con la configuración actual de organización y orden.
Además, los servicios s_o y s_s son SLOTS asociados a botones para cambiar los estados mencionados anteriormente,
mientras que s_t es un servicio de refresco periódico.
PRUEBAS
En este caso no se cuentan con pruebas debido a que la versión actual no tiene soporte
para ninguno de los 3 casos de uso, lo cual no es bueno ni malo, simplemente es la capacidad
de la versión de FileVision entregada.
Sin embargo, se cuenta con una atractiva y linda interfaz gráfica, la cual es muy fluida y estéticamente
particular, además de tener los botones correctamente posicionados.