Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Tým 32, varianta b/4/I.  Jakub Kadlubiec  Roman Pijáček  Petr Pliska  Jan Štourač  Václav Tunka (vedoucí)

Podobné prezentace


Prezentace na téma: "Tým 32, varianta b/4/I.  Jakub Kadlubiec  Roman Pijáček  Petr Pliska  Jan Štourač  Václav Tunka (vedoucí)"— Transkript prezentace:

1 Tým 32, varianta b/4/I

2  Jakub Kadlubiec  Roman Pijáček  Petr Pliska  Jan Štourač  Václav Tunka (vedoucí)

3  Interpret imperativního jazyka IFJ08  Podmnožina C++  Použití tříadresného kódu  Implementováno v jazyce C ISO99

4  Řádkové komentáře  Operace modulo  Jednoduché zotavování z chyb  Přehledné vypisování chyb  Cyklus do… while  Znakové konstanty ve stylu jazyka C  Porovnávání mezi double a integer  Deklarace více proměnných stejného typu na jednom řádku

5  Všechny datové struktury jsou generické  Tabulka symbolů – Binární vyhledávací strom  Řazení – Merge sort  Vyhledávání - Boyer –Moorův algoritmus

6

7  Vstup: zdrojový kód  Realizace pomocí konečného automatu, viz. dokumentace str. 16  Ukládá identifikátory a konstanty do tabulky symbolů  Výstup: posloupnost tokenů

8  Jádro celého projektu  Po dokončení syntaxí řízeného překladu je volán interpret Obsahuje:  Obecný syntaktický analyzátor  Výrazový syntaktický analyzátor  Sémantický analyzátor  Generátor tříadresného kódu

9  Vstup: jednotlivé tokeny  SA shora dolů  LL gramatika – str. 14 v dokumentaci  Realizace pomocí rekurzivního sestupu  Pokud je očekáván výraz, volá výrazový SA  Má na starosti řídící konstrukce jazyka  Výstup: validita zdrojového kódu

10  Vstup: Tokeny  Precedenční analýza zdola nahoru  Využívá zásobník  Pokud je kód validní, iniciuje sémantické akce  Neukládá na zásobník zarážky  Výstup: Chybový kód / Výsledek výrazu

11  Spouštěn při sémantických akcích syntaktickým analyzátorem  Kontroluje vícenásobné deklarace  Kontroluje správnost datových typů  Provádí přetypování identifikátorů a výrazů

12  Volán syntaktickými analyzátory a sémantickým analyzátorem  Postupně generuje instrukce  Instrukce průběžně ukládá do seznamu instrukcí  Posledním prvkem syntaxí řízeného překladu

13  Provádí seznam instrukcí  Pracuje s vstup / výstupními operacemi  Vrací návratový kód programu

14  Vývojová metodika  Strategie vývoje  Project hosting  Administrativa

15  Vyvíjeli jsme agilně  Refaktoring  KISS (Keep it simple, stupid)  Vývoj po iteracích

16  Včasný začátek  Vývoj po milnících  Jednotné nástroje (Eclipse, OS linux)  Kolektivní rozhodování a plánování  Zhodnocení práce po každém týdnu

17  SCM: Subversion  Mechanismus řízení projektu (milestones, tickets, tasks)  Systém zpráv  Projektová wiki  Jednotné úložiště souborů

18  Pravidelné schůzky (2h / týden)  Sumarizace a nahrávky schůzek  Pravidelné code review rozsáhlejších prací za uplynulý týden

19

20


Stáhnout ppt "Tým 32, varianta b/4/I.  Jakub Kadlubiec  Roman Pijáček  Petr Pliska  Jan Štourač  Václav Tunka (vedoucí)"

Podobné prezentace


Reklamy Google