Abstrakti luokka vai rajapinta uudelleenkäytettävyyden näkökulmasta
Tämä kandidaatintutkielma on kirjallisuuskatsaus. Tutkielman tutkimuskysymys on, tarjoaako abstrakti luokka paremman uudelleenkäytettävyyden
kuin rajapinta. Tutkielmassa noudatettiin EBSE-menetelmää. Tutkielmassa havaitaan, että kuluja, joita syntyy ohjelmistokehityksessä voidaan vähentää uudelleenkäyttämällä ohjelmakoodia. Tutkielmassa saatiin tulokseksi, että uudelleenkäytettävyyttä edistävät kapselointi, matala kytkösaste, korkea koheesio ja perintä. Uudelleenkäytettävyyttä haittaa heikko ymmärrettävyys. Perintä ja koostaminen ovat keinoja, joilla koodia voidaan uudelleenkäyttää. Tutkielmassa havaittiin, että abstraktin luokan ja rajapinnan keskeisin ero on se, että abstraktilla luokalla voidaan määritellä myös toteutusta. Niinpä jos käyttökonteksti tunnetaan huonosti ja on hyvin
muutosaltis on rajapinta turvallisempi vaihtoehto koska se ei rajaa uudelleenkäytettävyyttä samaan tapaan kuin abstrakti luokka. Abstrakti luokka on hyvä, jos halutaan määritellä attribuutteja tai toiminnallisuutta, jolla on toteutus.
...
This bachelor’s thesis is a review of the literature. The research question
for this study is whether an abstract class offers better reusability than interface.
The EBSE method was followed in this thesis. Expenses of software development
can be reduced by reusing software code. Thesis results were that factors that promote reusability are encapsulation, loose coupling, high cohesion and inheritance.
Poor undestandability weakens the possibility for reuse. Inheritance and composition are ways of reusing software code. Observation made in the thesis is that the
most significant difference between abstract class and interface is that abstract class
can also define implementation. Therefore if the context of use is not know very
well and is likely to change then interface is more safer alternative than abstract
class, because it does not delimit reusability in the same way as abstract class does.
Abstract class is good when there is a need to define attributes or functionality that
has implementation.
...
Metadata
Show full item recordCollections
- Kandidaatintutkielmat [5334]
Related items
Showing items with similar title or keywords.
-
Luokittelu ja perintä reaalimaailmasta oliosuuntautuneeseen ohjelmointiin
Laiho, Pauli (2022)Oliosuuntautunut ohjelmointi on erittäin suosittu tapa mallintaa ohjelmistoja. Oliot ja oliomainen ajattelutapa on kuitenkin merkittävästi ohjelmointia vanhempia käsitteitä ja niitä on tutkittu laajasti sekä filosofiassa ... -
Ohjelmointi 1 : jotta tietokoneisiin voitaisiin luottaa myös tulevaisuudessa : versio 1.5 07.09.2010
Hyvönen, Martti; Lappalainen, Vesa (Jyväskylän yliopisto, 2010) -
Oppilaiden kokemuksia ilmiöoppimisesta musiikin oppiaineen näkökulmasta Yhteistä virtaa -hankkeessa
Palola, Annukka (2022)Pro gradu –tutkimuksessa tarkastelen ilmiöoppimista musiikin oppiaineen näkökulmasta. Tarkoituksena oli ymmärtää ja kuvata oppilaiden kokemuksia Yhteistä virtaa -hankkeen musiikkityöpajoista. Tutkimusaineistona toimii ... -
Jalkapallon lajianalyysi ja valmennuksen ohjelmointi naisten näkökulmasta
Pietilä, Hanna-Mari (2021)Johdanto. Jalkapallo on maailman suosituin laji ja sitä pelataan ympäri maailman. Suomessakin jalkapallo on yksi suosituimmista palloilulajeista. Viime vuosina myös naisjalkapalloilu on kasvattanut suosiotaan ja saavuttanut ... -
Pesäpallon lajianalyysi ja valmennuksen ohjelmointi: erityisesti naispesäpallon näkökulmasta
Kainlauri, Viivi (2018)Johdanto. Lauri ”Tahko” Pihkala kehitti Suomen kansallispelin pesäpallon 1900-luvun alkupuoliskolla. Ensimmäinen naisten suomenmestaruus ratkottiin vuonna 1931. Naisten superpesis on noussut 2000-luvulla Suomen suosituimmaksi ...