| 1 | = PyLEMON modul fejlesztése = |
| 2 | |
| 3 | A LEMON használatának lehetővé tétele a Python programozási nyelvből. |
| 4 | |
| 5 | == Háttér == |
| 6 | |
| 7 | A LEMON C++ nyelven íródott, mivel jelenleg ez az egyetlen elterjedt modern programozási nyelv, amely lehetővé teszi komplex adatstruktúrák és algoritmusok futásidőre és memória-felhasználásra optimalizált megvalósítását. Ugyanakkor a C++ egy meglehetősen bonyolult programnyelv, használata mély ismereteket igényel és sokszor nehézkes. Egy adott feladat implementálása más modern (többnyire interpretált és dinamikusan linkelt) programnyelveken nagyságrandekkel kisebb lehet. E programnyelvek prominens képviselője a Python nyelv, amely amellett, hogy könnyen elsajátítható, kiválóan alkalmas jól karbantartható programkódok gyors elkészítésére. |
| 8 | |
| 9 | == Feladat == |
| 10 | |
| 11 | A cél a Python programozási nyelvhez egy, a LEMON használatát lehetővé tevő modul elkészítése. Az alap elgondolás az, hogy a modul a LEMON hatékony (C++-ban megírt) adatstruktúráit és eljárásait használja a gráfok és map-ek tarolására, valamint a LEMON-ban meglévő algoritmusok futtatására, ugyanakkor egy könnyen használható és a Python nyelvhez illeszkező felületet biztosít. |
| 12 | |
| 13 | A jelentkezők feladata e koncepció teljes kidolgozása, és LEMON által nyújtott eszközök minél teljesebb elérhetőségének biztosítása. |
| 14 | A feladatkör szakdolgozat, nagyprogram és TDK alapjául is szolgálhat, akár több jelentkező számára is. |
| 15 | |
| 16 | A modul fejlesztés alatt álló változata az alábbi repository-ban található: [http://lime.cs.elte.hu/~alpar/hg/pylemon/] |
| 17 | |
| 18 | |
| 19 | == Előfeltételek == |
| 20 | |
| 21 | - C++ programozási nyelv ismerete |
| 22 | - Python nyelv ismerete (vagy legalábbis hajlandóság annak megtanulására) |
| 23 | - alap gráfelméleti ismeretek |
| 24 | - angol nyelvismeret |