100% tevredenheidsgarantie Direct beschikbaar na je betaling Lees online óf als PDF Geen vaste maandelijkse kosten 4,6 TrustPilot
logo-home
Samenvatting

Samenvatting SAP Les 1 en 2

Beoordeling
-
Verkocht
-
Pagina's
7
Geüpload op
04-01-2020
Geschreven in
2019/2020

SAP Les 1 en 2. Quality Attributes to Code Quality. Code Smells. Software metrics. Packages. Dependencies.

Voorbeeld van de inhoud

SAP 1 - From Quality Attributes to
Code Quality
SA lessen focussen op het modelleren en designen.
- Hoe worden de requirements vervult en van requirements naar
architectuur.

SAP lessen focussen op de relatie tussen modellen en source
code
- Van model naar code en andersom

Leerdoelen:
Tactieken beschrijven en uitleggen om de onderhoudbaarheid te
verbeteren.
De ontwerpprincipes “low coupling” (lage koppeling) en “high
cohesion” beschrijven, herkennen en toepassen.
Uitleggen wat refactoring is, wat code smells en software metrics
zijn en wat de onderlinge relatie is.
De code smells uit de sheets uitleggen en herkennen in code.

Achieving Quality Attributes
Software wordt gemaakt om te kunnen voldoen aan de eisen van een business. Deze eisen
worden opgesteld binnen de requirements.

De bekende quality attributen zijn die van de ISO 25010
(performance, usability etc.). De focus van deze cursus
ligt bij het maintainability aspect.




Er zijn bepaald tactieken om maintainability te kunnen bereiken.


De meest belangrijke design
principles van Larman zijn ook
maintability tactieken:
•Low coupling
•High cohesion
•Protected variation

Deze principes kunnen worden
toegepast op architecturaal,
design en code niveau.




Jet Wardenier 27/12

, Code Smells
• Duplicated Code
Dezelfde code structuur op meerdere plekken. Je programma zal beter zijn als je een manier vind
om deze bij elkaar te voegen. Duplicated code kan bijvoorbeeld voorkomen wanneer je dezelfde
expression hebt in twee methodes van dezelfde klasse. Ook komt het veel voor dat er dezelfde
code staat in twee gerelateerde subklassen. Als code vergelijkbaar is maar niet precies hetzelfde,
moet je de verschillen en overeenkomsten van elkaar scheiden. Je moet uiteindelijk een keuze
maken waar de code het meest logisch past.

• Large class
Een klasse is vaak te groot wanneer het te veel variabelen van instanties heeft. Het makkelijkst is
om redundantie binnen de klasse zelf te verminderen. Wanneer je code uit 500 lines bestaat met
code die eigenlijk ongeveer hetzelfde zegt, kun je dit misschien verminderen naar 50 lines. Je kunt
de klasse ook uitbreiden naar meerdere subklassen, wanneer dit mogelijk is. Bij een grote GUI
klasse, kun je data en gedrag verplaatsen naar een apart domein object.

• Long method
Langere methodes zijn veel lastiger om te begrijpen en te lezen. Goede naamgeving is de beste
manier om kleine, makkelijk te begrijpen methodes te creëren. Door een goede naam te geven
aan een methode hoef je vaak de body niet te lezen om het te begrijpen.

Je kunt deze methodes vinden door op zoek te gaan naar comments binnen je code. Wanneer
een comment vertelt wat een methode moet doen is dit vaak een signaal dat het te uitgebreid is.
De naam van de methoden zou moeten vertellen wat een methode precies doet, niet de
comments.
- Cyclomatic complexity
Het meten van het aantal lineaire paden binnen een programma’s source code.




• Long parameter list
Je hoeft een methode niet alles mee te geven wat het nodig heeft. Je geeft de methode genoeg
informatie mee zodat de methode zelf op zoek kan gaan naar de verder nodige informatie. Lange
parameter lijsten zijn onhandig en lastig te begrijpen. Als de lijst te lang is of te vaak veranderd,
moet je opnieuw nadenken over de structuur van de dependencies.

• Data class
Dit zijn klassen die alleen datavelden en getters en setters voor deze velden hebben. Ze bewaren
alleen data en doen verder niks, ze worden alleen gebruikt door andere klassen. Deze klassen
kunnen bijvoorbeeld public datafields hebben, als dit het geval is wil je zo snel mogelijk deze data
inkapselen.
Kijk waar deze getting en setting methoden worden gebruikt in andere klassen. Probeer dan het
gedrag te verplaatsen naar de dataklasse. Eerst kunnen dataklassen handig zijn als beginpunt,
maar ze mogen daarna alleen blijven bestaan als ze ook daadwerkelijk een verantwoordelijkheid
hebben.




Jet Wardenier 27/12

Documentinformatie

Heel boek samengevat?
Onbekend
Geüpload op
4 januari 2020
Aantal pagina's
7
Geschreven in
2019/2020
Type
SAMENVATTING

Onderwerpen

Maak kennis met de verkoper

Seller avatar
De reputatie van een verkoper is gebaseerd op het aantal documenten dat iemand tegen betaling verkocht heeft en de beoordelingen die voor die items ontvangen zijn. Er zijn drie niveau’s te onderscheiden: brons, zilver en goud. Hoe beter de reputatie, hoe meer de kwaliteit van zijn of haar werk te vertrouwen is.
jetwardenier Hogeschool Utrecht
Bekijk profiel
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
26
Lid sinds
6 jaar
Aantal volgers
16
Documenten
34
Laatst verkocht
2 jaar geleden

3,3

8 beoordelingen

5
2
4
2
3
2
2
0
1
2

Populaire documenten

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Veelgestelde vragen