130 likes | 309 Views
Memòria del Projecte de Fi de Carrera Enginyeria en Informàtica. UOCConc. Analitzador de Concordances en Python. Pau Ubach Royo. Índex. El projecte Punt de partida Objectius Aplicació UOCConc Funcionament Arquitectura Estat del projecte Millores Documentació
E N D
Memòria del Projecte de Fi de Carrera Enginyeria en Informàtica UOCConc Analitzador de Concordances en Python Pau Ubach Royo
Índex • El projecte • Punt de partida • Objectius • Aplicació UOCConc • Funcionament • Arquitectura • Estat del projecte • Millores • Documentació • Dificultats trobades Pau Ubach Royo
El projecte • El projecte consisteix en el desenvolupament d’un analitzador de concordances. • L’aplicació que s’obtingui com a resultat del projecte servirà com punt de partida per altres projectes. Pau Ubach Royo
El projecte – Punt de partida • El model a imitar és el programa AntConc de Laurence Anthony en la versió 3.2.1 • S’utilitzarà Python com a llenguatge de programació. • Per a la interfície gràfica s’usarà la biblioteca PyQt. Pau Ubach Royo
El projecte – Objectius • Desenvolupar l’aplicació. • S’ha de desenvolupar una aplicació similar a AntConc amb un conjunt reduït de les funcionalitats que aquesta incorpora. • Documentar. • Per tal de propiciar la continuació de l’aplicació, així com l’ús com a base per a futurs projectes, és necessari documentar en detall l’arquitectura i funcionament de tots els elements que formen l’aplicació. Pau Ubach Royo
AplicacióUOCConc • L’aplicació reprodueix el comportament de les pestanyes Concordance, File View i WordList d’AntConc. • Cerca expressions en un llistat de textos i mostra les línies amb les concordances. • Mostra textos sencers ressaltant les concordances. • Mostra totes les paraules que hi ha en un llistat de textos i n’indica la freqüència amb que apareixen Pau Ubach Royo
AplicacióUOCConc • Permet cercar paraules senceres, cadenes, expressions regulars, fer distinció o no entre majúscules i minúscules. • Permet incloure paraules que han d'aparèixer en un rang al voltant de l’expressió cercada per que la concordança sigui vàlida. • Permet ordenar els resultats seguint diferents criteris depenent de la pestanya. Pau Ubach Royo
AplicacióUOCConc - Funcionament • Des del menú File es poden carregar un o més arxius. • Introduïr la expressió a cercar en l’espai SearchTerm o utilitzar el botó Advanced per seleccionar altres opcions. • La pestanya Concordance mostra un llistat de línies amb les concordances trobades. • La pestanya File View mostra el fitxer seleccionat amb les concordances marcades. • La pestanya Word List mostra el llistat de paraules que contenen els arxius. Pau Ubach Royo
AplicacióUOCConc - Arquitectura • L’aplicació segueix el patró MVC i els arxius es poden agrupar seguint les tres capes. • Les vistes es generen amb PyQt Designer. • Cada finestra està definida en un o més fitxers per separat. • La capa Model conté les estructures que defineixen les dades. • S’utilitzen dos arxius, el primer conté estructures de Python simples, i l’altre les classes PyQt que defineixen els models que utilitzen les vistes. • El controlador conté les funcions bàsiques i la part relativa a la interacció de l’usuari amb les vistes. • Hi ha un fitxer per les funcions bàsiques, un per al control de la finestra principal, i un altre per al control de les altres finestres. Per últim també s’inclou aquí el fitxer amb el main que obre l’aplicació. Pau Ubach Royo
AplicacióUOCConc – Estat • El desenvolupament de l’aplicació, no està acabat i, de fet, les possibilitats d’expansió són infinites.Per aquest motiu s’ha especificat a la documentació quin és l’estat i com continuar. • Resumint, de les funcionalitats proposades queda desenvolupar les següents: • Finalitzar la pestanya Word List per marcar les concordances. • Pestanya Collocates. • Pestanya Concordance Plot. • Botó Stop. • Finestres de configuració. Pau Ubach Royo
AplicacióUOCConc – Millores • Es proposen les següents millores: • Millores en la interfície: • Permetre canviar el tamany i maximitzar la finestra expandint els elements d’aquesta. • Ordenar el contingut de les taules clicant directament al títol de la columna. • Millores funcionals: • Permetre la lectura de HTML. • Permetre la utilització d’altres formats com PDF, DOC, etc. • Altres: • Traslladar la eina al web. Crear una eina “on thecloud” amb les mateixes funcionalitats accessible des d’una pàgina web sense necessitat d’haver de descarregar i/o instal·lar res. Pau Ubach Royo
Documentació • La documentació lliurada amb el programa serveix com: • Memòria del projecte. • Guia per facilitar la introducció a les eines necessàries per a continuar amb el projecte. • Informació sobre les funcionalitats de l’aplicació • Manual amb l’estructura de l’aplicació així com detall de les diverses parts. • La informació s’estructura seguint la corba d’aprenentatge per tal de donar a la memòria un format didàctic. • A més es lliura un manual per a una ràpida introducció a PyQt per tal de facilitar l’aprenentatge de les eines. Pau Ubach Royo
Dificultatstrobades • Va ser molt difícil realitzar una planificació temporal del projecte degut a la manca de coneixement de les eines a utilitzar. • La corba d’aprenentatge ha estat molt brusca, pel que es va decidir facilitar això a qui hagi de continuar la feina. Per aquest motiu es va decidir el caràcter didàctic que tindria la memòria. • PyQt proporciona un mètode de desenvolupament senzill i ràpid oferint uns components estàndards, però l’aplicació necessita elements que queden fora d’aquests estàndards. Pau Ubach Royo