dc.contributor.author | Niiranen, Sami | |
dc.date.accessioned | 2013-05-14T04:48:34Z | |
dc.date.available | 2013-05-14T04:48:34Z | |
dc.date.issued | 2013 | |
dc.identifier.uri | https://jyx.jyu.fi/handle/123456789/41389 | |
dc.description.abstract | Niiranen, Sami
Javan liittymät moniperinnän korvaajana
Jyväskylä: Jyväskylän yliopisto, 2013, 25 s.
Tietojärjestelmätiede, Kandidaatintutkielma
Ohjaaja(t): Hirvonen, Pertti
Tässä kandidaatintutkielmassa käsitellään ohjelmointikielissä esiintyvän
liittymän (interface) ja moniperinnän (multiple inheritance) eroja.
Java-ohjelmointikieli ei tue moniperintää, vaan käyttää vaihtoehtoisesti
liittymiä mallintamaan monimutkaisempia rakenteita. Tutkielmassa
asetetaan molemmat tekniikat vastakkain ja havainnollistetaan
niiden avainerot esimerkkien avulla. Oliosuuntautunut suunnittelu Javan
liittymiä käyttäen on tutkielmassa isossa osassa. Tutkielma perehtyy
myös ohjelmointikielten historiaan kyseisten tekniikoiden osalta,
ja kuinka laajasti liittymiä käytetään Java-alustassa.
Tutkimuksen pohjana on käytetty ohjelmointikirjallisuutta ja lähteitä
oliosuuntautuneesta suunnittelusta. Esitettyjä käsitteitä havainnollistetaan
kaavioilla ja käytännön esimerkeillä. Tutkielma edellyttää
perustietämystä olio-ohjelmoinnista.
Tutkielman johtopäätökset luodaan erilaisten skenaarioiden pohjalta,
joista nähdään molempien tekniikoiden hyvät ja huonot puolet.
Tutkielmassa pyritään tarjoamaan ylläpidettäviä ja laajennettavia ratkaisuja
oliosuuntautuneessa suunnittelussa ilmeneviin ongelmiin,
mutta myös vaihtoehtoisia lähestymistapoja. | fi |
dc.description.abstract | Niiranen, Sami
Java's interfaces substituting multiple inheritance
Jyväskylä: University of Jyväskylä, 2013, 25 p.
Information Systems Science, Bachelor's Thesis
Supervisor(s): Hirvonen, Pertti
This thesis' purpose is to address the difference between programming
language concepts interface and multiple inheritance. The Java
-programming language does not support multiple inheritance, but
rather relies on interfaces to simulate more complex hierarchies. The
thesis compares these techniques against each other, and elaborates
the key differences through examples. Using interfaces in objectoriented
design plays a big part in the thesis. The thesis also delves in
to the history of programming languages regarding these techniques,
and examines the current use of interfaces in the Java platform.
Programming literature and several object-oriented design sources
have been used to construct the thesis. Concepts in the thesis are
described more thoroughly with diagrams and practical examples.
Basic knowledge of object-oriented programming is required from the
reader.
Conclusions in the thesis are made based upon different scenarios,
that are meant to describe both advantages and disadvantages
of the techniques. The thesis strives to offer maintainable and extendable
solutions to recurring problems in object-oriented design,
but to also give examples of alternative approaches. | en |
dc.format.extent | 25 | |
dc.language.iso | eng | |
dc.rights | In Copyright | en |
dc.subject.other | Java | |
dc.subject.other | multiple inheritance | |
dc.subject.other | interface | |
dc.subject.other | architecture | |
dc.subject.other | design | |
dc.subject.other | liittymä | |
dc.subject.other | moniperintä | |
dc.subject.other | arkkitehtuuri | |
dc.subject.other | suunnittelu | |
dc.title | Java's interfaces substituting multiple inheritance | |
dc.type | bachelor thesis | |
dc.identifier.urn | URN:NBN:fi:jyu-201305141621 | |
dc.type.dcmitype | Text | en |
dc.type.ontasot | Kandidaatintutkielma | fi |
dc.type.ontasot | Bachelor's thesis | en |
dc.contributor.tiedekunta | Informaatioteknologian tiedekunta | fi |
dc.contributor.tiedekunta | Faculty of Information Technology | en |
dc.contributor.laitos | Informaatioteknologia | fi |
dc.contributor.laitos | Information Technology | en |
dc.contributor.yliopisto | University of Jyväskylä | en |
dc.contributor.yliopisto | Jyväskylän yliopisto | fi |
dc.contributor.oppiaine | Tietojärjestelmätiede | fi |
dc.contributor.oppiaine | Information Systems Science | en |
dc.date.updated | 2013-05-14T04:48:34Z | |
dc.type.coar | http://purl.org/coar/resource_type/c_7a1f | |
dc.rights.accesslevel | restrictedAccess | fi |
dc.type.publication | bachelorThesis | |
dc.rights.url | https://rightsstatements.org/page/InC/1.0/ | |
dc.rights.accessrights | This material has a restricted access due to copyright reasons. It can be read at the department responsible for publication of the thesis, or at the archival workstation at Jyväskylä University Library: https://kirjasto.jyu.fi/en/workspaces/facilities. | en |
dc.rights.accessrights | Luettavissa tekijänoikeudellisista syistä vain opinnäytteen julkaisseella laitoksella ja Jyväskylän yliopiston kirjaston arkistotyöasemalta. Ks. https://kirjasto.jyu.fi/fi/tyoskentelytilat/laitteet-ja-tilat. | fi |