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. | ||