Ověřování integritních omezení v C# pomocí Code Contracts
Verifying integrity constraints in C# using Code Contracts
bakalářská práce (OBHÁJENO)
![Náhled dokumentu](/bitstream/handle/20.500.11956/63991/thumbnail.png?sequence=8&isAllowed=y)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/63991Identifikátory
SIS: 129923
Kolekce
- Kvalifikační práce [10924]
Autor
Vedoucí práce
Oponent práce
Ježek, Pavel
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Obecná informatika
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
4. 9. 2014
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Výborně
Klíčová slova (česky)
integritní omezení, code contracts, object constraint language, OCLKlíčová slova (anglicky)
integrity constraits, code contracts, object constraint language, OCLJazyk OCL slouží pro specifikaci integritních omezení nad modelem jazyka UML, Code Contracts umožňují integritní omezení zapsat v programovacích jazycích pro platforum Microsoft .NET Framework. Cílem předložené práce je najít a implementovat překlad integritních omezení z jazyka OCL do programovacího jazyka C# s využitím Code Contracts. Představeny jsou možnosti technologie Code Contracts a jazyka OCL, jednotlivé jazykové konstrukce a operace ze standardní knihovny jazyka OCL jsou pak porovnány se syntakticky a sémanticky obdobnými vyjádřeními v jazyce C#. Zvolený překlad se snaží tam, kde je to možné, dodržovat sémantiku jazyka OCL. Generování zdrojových kódů v jazyce C# s Code Contracts je implementováno do programu eXolutio, ze kterého je využit editor diagramů tříd a parser jazyka OCL. Powered by TCPDF (www.tcpdf.org)
OCL serves as a language for specification of integrity constraints on UML models, Code Contract allow the integrity constraints to be expressed in programming languages targeting Microsoft .NET Framework. The goal of the thesis is to find and implement a translation of integrity constraints form the OCL language to C#, using Code Contracts. The features of Code Contracts and OCL are presented, then individual language constructs and standard library operations are compared with syntactic and semantic equivalents in C#. The chosen translation aims to match the semantics of OCL where possible. Code generation of C# sources is implemented in the eXolutio application, which provides a class diagram editor and an OCL parser. Powered by TCPDF (www.tcpdf.org)