This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
contrib:rsoc:pylxr [2010/05/17 15:37] 10.38.236.130 |
contrib:rsoc:pylxr [2020/07/20 09:16] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | = PyLXR = | + | ====== PyLXR ====== |
- | == Nume și descriere proiect == | + | ===== Nume și descriere proiect |
PyLXR este o aplicație care oferă posibilitatea navigării codului printr-o interfață web. Aplicația este o reimplementare [[http:// | PyLXR este o aplicație care oferă posibilitatea navigării codului printr-o interfață web. Aplicația este o reimplementare [[http:// | ||
- | == Categorie aplicație == | + | ===== Categorie aplicație |
- | * Software engineering (parsing, căutare, baze de date, interfață web) | + | |
- | == Obiective | + | ==== Aplicații similare ==== |
- | == Grup țintă | + | * [[http:// |
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | ===== Obiective ===== | ||
- | == Limbaje de programare/ | + | * Se dorește obținerea unei aplicații |
+ | * Pentru moment este vizat limbajul C. | ||
+ | * Se dorește căutarea atât după numele funcției sau variabilei (tag-search) cât și după nume de fișiere (file search) sau șiruri de caractere (freetext search). | ||
+ | * Aplicația va fi implementată în Python. | ||
+ | ===== Grup țintă ===== | ||
- | == Cerințe necesare | + | * Dezvoltatori de programe, preponderent proiecte FOSS. Aplicații de source-code browsing precum [[http:// |
+ | ===== Limbaje de programare/ | ||
- | == Cerințe | + | * Limbaj principal: Python |
+ | * [[http:// | ||
+ | * Aplicație de indexare a codului care să permită căutarea rapidă | ||
+ | * Bază de date (de preferat [[http:// | ||
+ | * Python (CGI sau [[http:// | ||
+ | ===== Cerințe | ||
- | == Cunoștințe/abilități dobândite | + | * |
+ | * Cunoștințe medii de programare C | ||
+ | * Cunoștințe de algoritmi de căutare și sortare | ||
+ | * Deprinderi în utilizarea unui sistem Unix (linia de comandă) | ||
+ | * Deprinderi de folosire a tool-urilor principale de programare (editor, compilator, debugger) | ||
+ | ===== Cerințe recomandate ===== | ||
- | == Plan/roadmap pe termen scurt == | + | * Cunoștințe de bază Python |
+ | * Cunoștințe de bază de web programming | ||
+ | * Cunoștințe de bază de baze de date | ||
+ | * Deprinderi de utilizare a ctags/ | ||
+ | * Folosirea unui sistem de versioning (CVS, SVN, Git, Darcs etc.) | ||
+ | ===== Cunoștințe/abilități dobândite ===== | ||
- | == Plan pe termen | + | * Cunoștințe de software engineering, |
+ | * Cunoștințe medii/ | ||
+ | * Cunoștințe de documentare a unui proiect de amploare | ||
+ | * Cunoștințe de lucru în echipă, colaborare, comunicare | ||
+ | * Deprinderi de folosire avansată a unui sistem Unix | ||
+ | * Deprinderi de configurare/ | ||
+ | ===== Plan/ | ||
- | == Draft arhitectură (componente principale) == | + | * 3-4 zile: training/ |
- | == Resurse disponibile | + | * 1 săptămână: integrarea ctags/ |
+ | * 1 săptămână: | ||
+ | * 3-4 zile: testarea aplicației în stadiul actual | ||
+ | ===== Plan pe termen mediu (continuarea colaborării) ===== | ||
- | * Vom folosi un proiect Redmine și repository Git pentru dezvoltare, testare și planificare. Instanța Redmine va fi creată în momentul pornirii proiectului. | + | |
- | * Pentru comunicare vom folosi o listă de discuții. Lista de discuții va fi creată în momentul pornirii proiectului. | + | * Definirea unui API de comunicare cu aplicația (văzută ca un backend). Diversele interfețe de folosire (CLI, GUI, WebUI) vor fi văzute ca front-end |
- | * Pentru lucru efectiv vom folosi sala EG106. | + | * Proiectarea și implementarea interfeței web folosite de aplicației |
+ | * Integrarea interfeței web cu aplicația | ||
+ | * Testarea aplicației | ||
+ | * Installer pentru aplicație (pachet) | ||
+ | ===== Draft arhitectură (componente principale) ===== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ===== Resurse disponibile ===== | ||
+ | |||
+ | * | ||
+ | * Pentru comunicare vom folosi o listă de discuții. Lista de discuții va fi creată în momentul pornirii proiectului. | ||
+ | * Pentru lucru efectiv vom folosi sala EG106. |