Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...
Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...
Dissertaç ˜ao de Mestrado Mestrado em Engenharia Informática Jo ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4<br />
An Impl<strong>em</strong>entation<br />
Chapter 3 approached the application configuration framework by i<strong>de</strong>ntifying the require-<br />
ments to be met and <strong>de</strong>fining a tool workflow and component architecture. This chapter <strong>de</strong>-<br />
scribes the impl<strong>em</strong>entation of that framework, <strong>de</strong>veloped in the context of this thesis.<br />
First, impl<strong>em</strong>entation <strong>de</strong>cisions of several or<strong>de</strong>rs are presented. Section 4.1 presents the<br />
adopted programming language, Section 4.2 presents the adopted parser generator and Sec-<br />
tion 4.3 presents the adopted generic syntax format. Then, Section 4.4 shows the impl<strong>em</strong>enta-<br />
tion of the created data structures in terms of the motivation for their use and their functionality.<br />
Afterwards, Section 4.5 presents the <strong>de</strong>tails of the Original to Generic syntax Converter com-<br />
ponent impl<strong>em</strong>entation, Section 4.6 shows how the files in generic syntax are printed back to<br />
original syntax and last, Section 4.7 displays the Generic to Original syntax Converter compo-<br />
nent impl<strong>em</strong>entation.<br />
4.1 Programming Language<br />
As it is well known, programming languages differ from each other not only in terms of sup-<br />
ported programming paradigms, but also expressive power, documentation, popularity, etc.<br />
Among the requir<strong>em</strong>ents that the programming language was expected to meet, two had a<br />
special weight in the time of <strong>de</strong>cision: the chosen programming language should be object-<br />
oriented due to the modular nature of the tool and high-level to easily and quickly provi<strong>de</strong><br />
programming tools such as data types, data structures, etc.<br />
Given the previous consi<strong>de</strong>rations, the <strong>de</strong>cision fell on the Java 1 programming language,<br />
consi<strong>de</strong>ring it supports the object-oriented programming paradigm, among many other pro-<br />
gramming paradigms, is high-level and its API (Application Programming Interface) is well<br />
1 http://java.sun.com/<br />
37