Show simple item record

Objektno-orijentisano proširenje softvera zadinamičku geometriju podržano metapodacima

dc.contributor.advisorRadovanović, Miloš
dc.contributor.otherBudimac, Zoran
dc.contributor.otherRadovanović, Miloš
dc.contributor.otherHerceg, Đorđe
dc.contributor.otherVidaković, Milan
dc.creatorRadaković, Davorka
dc.date.accessioned2019-10-31T08:36:51Z
dc.date.available2019-10-31T08:36:51Z
dc.date.available2020-07-03T13:47:29Z
dc.date.issued2019-10-10
dc.identifier.urihttps://www.cris.uns.ac.rs/DownloadFileServlet/Disertacija156569526030549.pdf?controlNumber=(BISIS)111034&fileName=156569526030549.pdf&id=13300&source=NaRDuS&language=srsr
dc.identifier.urihttp://nardus.mpn.gov.rs/handle/123456789/11454
dc.identifier.urihttps://www.cris.uns.ac.rs/record.jsf?recordId=111034&source=NaRDuS&language=srsr
dc.identifier.urihttps://www.cris.uns.ac.rs/DownloadFileServlet/IzvestajKomisije156569528739454.pdf?controlNumber=(BISIS)111034&fileName=156569528739454.pdf&id=13301&source=NaRDuS&language=srsr
dc.identifier.urinull/DownloadFileServlet/IzvestajKomisije156569528739454.pdf?controlNumber=(BISIS)111034&fileName=156569528739454.pdf&id=13301
dc.description.abstractNowadays, Dynamic Geometry Software (DGS) is widely accepted as a tool for creating and presenting visually rich interactive teaching and learning materials, called dynamic drawings. Dynamic drawings are specified by writing expressions in functional domain-specific languages. Due to wide acceptance of DGS, there has arisen a need for their extensibility, by adding new semantics and visual objects (visuals). We have developed a programming framework for the Dynamic Geometry Software, SLGeometry, with a genericized functional language and corresponding expression evaluator that act as a framework into which specific semantics is embedded in the form of code annotated with metadata. The framework transforms an ordinary expression tree evaluator into an object-oriented one, and provide guidelines and examples for creation of interactive objects with dynamic properties, which participate in evaluation optimization at run-time. Whereas other DGS are based on purely functional expression evaluators, our solution has advantages of being more general, easy to implement, and providing a natural way of specifying object properties in the user interface, minimizing typing and syntax errors.LGeometry is implemented in C# on the .NET Framework. Although attributes are a preferred mechanism to provide association of declarative information with C# code, they have certain restrictions which limit their application to representing complex structured metadata. By developing a metadata infrastructure which is independent of attributes, we were able to overcome these limitations. Our solution, presented in this  dissertation, provides extensibility to simple and complex data types, unary and binary operations, type conversions, functions and visuals, thus enabling developers to seamlessly add new features to SLGeometry by implementing them as C# classes annotated with metadata. It also provides insight into the way a domain specific functional language of dynamic geometry software can be genericized and customized for specific needs by extending or restricting the set of types, operations, type conversions, functions and visuals.Furthermore, we have conducted  experiments with several groups of students of mathematics and high school pupils, in order to test how our approach compares to the existing practice. The experimental subjects tested mathematical games using interactive visual controls (UI controls) and sequential behavior controllers. Finally, we present a new evaluation algorithm, which was compared to the usual approach employed in DGS and found to perform well, introducing advantages while maintaining the same level of performance.en
dc.description.abstractU današnje vreme softver za dinamičku geometriju (DGS) je široko prihvaćen kao alat za kreiranje i prezentovanje vizuelno bogatih interaktivnih nastavnih materijala i materijala za samostalno učenje, nazvanih dinamičkim crtežima. Kako je raslo prihvatanje softvera za dinamičku geometriju, tako je i rasla potreba da se oni proširuju, dodajući im novu semantiku i vizualne objekte. Razvili smo programsko okruženje za softver za dinamičku geometriju, SLGeometry, sa generičkim  funkcionalnim jezikom i odgovarajućim evaluatorom izraza koji čini okruženje u kom su ugrađene specifične semantike u obliku koda označenog metapodacima. Ovo okruženje pretvara uobičajen evaluator stabla izraza u objektno orijentiran, te daje uputstva i primere za stvaranje interaktivnih objekata sa dinamičkim osobinama, koji sudeluju u optimizaciji izvršenja tokom izvođenja. Dok se drugi DGS-ovi temelje na čisto funkcionalnim evaluatorima izraza, naše rješenje ima prednosti jer je uopštenije, lako za implementaciju i pruža prirodan način navođenja osobina objekta u korisničkom interfejsu, minimizirajući kucanje i sintaksne greške. SLGeometry je implementirana u jeziku C# .NET Framework-a. Iako su atributi preferiran mehanizam, koji povezuje C# kôd sa deklarativnim informacijama, oni imaju određena ograničenja koja limitiraju njihovu primenu za predstavljanje složenih strukturiranih metapodataka. Razvijanjem infrastrukture metapodataka koja je nezavisna od atributa, uspeli smo prevladati ta ograničenja. Naše rešenje, predstavljeno u ovoj disertaciji, pruža proširivost: jednostavnim i složenim vrstama podataka, unarnim i binarnim operacijama, konverzijama tipova, funkcijama i vizuelnim objektima, omogućavajući  time programerima da neprimetno dodaju nove osobine u SLGeometry  implementirajući ih kao C# klase označene metapodacima.sr
dc.languageen
dc.publisherУниверзитет у Новом Саду, Природно-математички факултетsr
dc.rightsopenAccessen
dc.sourceУниверзитет у Новом Садуsr
dc.subjectSource code annotationsen
dc.subjectAnotacija izvornog kodasr
dc.subjectMetapodacisr
dc.subjectSoftveri za dinamičku geometrijusr
dc.subjectRazvoj zasnovan na komponentamasr
dc.subjectFunkcionalni jezicisr
dc.subjectLenjo izračunavanjesr
dc.subjectMetadataen
dc.subjectDynamic Geometry Softwareen
dc.subjectComponent developmenten
dc.subjectFunctional languagesen
dc.subjectLazy evaluationen
dc.titleMetadata-Supported Object-Oriented Extension of Dynamic Geometry SoftwareTIen
dc.title.alternativeObjektno-orijentisano proširenje softvera zadinamičku geometriju podržano metapodacimasr
dc.typedoctoralThesissr
dc.rights.licenseBY-NC-ND
dc.identifier.fulltexthttp://nardus.mpn.gov.rs/bitstream/id/39188/IzvestajKomisije.pdf
dc.identifier.fulltexthttp://nardus.mpn.gov.rs/bitstream/id/39187/Disertacija.pdf


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record