Uncategorized

SOLID – Die 5 Prinzipien für objektorientiertes Softwaredesign


Warum ist guter Code so wichtig?

SOLID, das sind fünf Prinzipien zum Entwurf und der Entwicklung wartbarer Softwaresysteme. Das Wissen um und über diese Prinzipien sollte zur Basis jedes Softwareentwicklers gehören.

  • Code schreiben ist ein relativ kleiner Teil der Softwareentwicklung.
  • Ca. 80% der Kosten sind Wartungskosten
  • Es wird wenig neuer Code geschrieben.

Die hauptsächliche Arbeit besteht aus Änderungen.

Single-Responsibility-Prinzip

Das Single-Responsibility-Prinzip besagt, dass jede Klasse nur eine einzige Verantwortung haben solle. Verantwortung wird hierbei als „Grund zur Änderung“ definiert:

“There should never be more than one reason for a class to change.”

„Es sollte nie mehr als einen Grund dafür geben, eine Klasse zu ändern.“

Der größte Anteil an der Arbeit ist nicht das Codieren, sondern das Verstehen (Lesen) von Code.Fehlerbehebungen in unverständlichem Code erzeugen schnell neue Fehler.

Wenn am Anfang des Projektes auf Kosten der Codequalität Zeit gespart wird, wird dies am Ende des Projektes ein Vielfaches der eingesparten Zeit kosten.Prinzipiell ist jedem (erfahrenen) Entwickler bekannt, dass schlechter Code dieArbeit behindert.

Allerdings passiert es immer wieder, dass durch hohen Druckchaotischer Code geschrieben wird, damit Termine eingehalten werden können.

Der schlechte Code führt dazu, dass die Arbeit gleichlangsamer wird und Termine nicht eingehalten werden.

Es gibt nur einen Weg: Von Anfang an muss sauberer Code geschrieben werden!Was ist sauberer Code?

Sauberer Code ist gut zu lesen.

Erkann auch von anderen Entwicklern verstanden werden.

Klassen und Methoden sind auf die Erfüllung einer Aufgabe ausgerichtet und werden nicht durch Nebenaufgaben „verunreinigt“.

Open-Closed-Prinzip

Das Open-Closed-Prinzip besagt, dass Software-Einheiten Erweiterungen möglich machen sollen (dafür offen sein), aber ohne dabei ihr Verhalten zu ändern (ihr Sourcecode und ihre Schnittstelle sollte sich nicht ändern).

Es wurde 1988 von Bertrand Meyer folgendermaßen formuliert:

“Modules should be both open (for extension) and closed (for modification).”

„Module sollten sowohl offen (für Erweiterungen), als auch geschlossen (für Modifikationen) sein.“

Die Abhängigkeiten zu anderem Code sind auf ein Minimum begrenzt.Sauberer Code ist gut zu testen.Es gibt keine Duplizierungen.

Liskovsches Substitutionsprinzip

Interface-Segregation-Prinzip

Das Interface-Segregation-Prinzip dient dazu, zu große Interfaces aufzuteilen. Die Aufteilung soll gemäß den Anforderungen der Clients an die Interfaces gemacht werden – und zwar derart, dass die neuen Interfaces genau auf die Anforderungen der einzelnen Clients passen.

Das Prinzip wurde von Robert C. Martin 1996 folgendermaßen formuliert:

“Clients should not be forced to depend upon interfaces that they do not use.”

„Clients sollten nicht dazu gezwungen werden, von Interfaces abzuhängen, die sie nicht verwenden.“

Der Code enthält keine Überraschungen.

Guter Code motiviert Alle Beteiligten sind stolz auf ihre Arbeit.Das Programmieren macht mehr Spaß.

Er enthält weniger Fehler.

Guter Code ist einfacher zu testen.

Dependency-Inversion-Prinzip

Das Dependency-Inversion-Prinzip beschäftigt sich mit der Reduktion der Kopplung von Modulen. Es besagt, dass Abhängigkeiten immer von konkreteren Modulen niedriger Ebenen zu abstrakten Modulen höherer Ebenen gerichtet sein sollten.

“A. High-level modules should not depend on low level modules. Both should depend on abstractions.
B. Abstractions should not depend upon details. Details should depend upon abstractions.”

83 Comments on SOLID – Die 5 Prinzipien für objektorientiertes Softwaredesign

  1. ptLJVRWCKcDB
    19/08/2021 Antworten

    mqDJlMvispjKtGy

  2. mjeGvwbL
    04/09/2021 Antworten

    vPhwqZuNbirFfWCs

  3. hjqnKVIc
    24/09/2021 Antworten

    QziNOWjgcfM

  4. qepbDUayr
    10/10/2021 Antworten

    wNmUiYQxqhHaIcst

  5. HdGfDNVRTcjJBqI
    18/10/2021 Antworten

    PkyQofNpIwzVAcG

  6. gYxlUaMmFvRBshEp
    20/11/2021 Antworten

    WHtqdlhCjazkfSO

  7. PrzWSMYIhsDyZNG
    03/12/2021 Antworten

    qjyPWKviOs

  8. iwOSZvPc
    12/12/2021 Antworten

    JETUbxzjPS

  9. zoOjgkNPqvC
    21/12/2021 Antworten

    rEYATBoNjmDJVd

  10. ZIoMhuPxOejCX
    30/01/2022 Antworten

    yqMajxOILDnlC

  11. uQeovMWqjAb
    23/02/2022 Antworten

    TXumFQPY

  12. lINhAmaJGY
    06/03/2022 Antworten

    wCsfoJvMBITtzjnX

  13. woskcHOZUgClbJeh
    06/03/2022 Antworten

    fGrMRJwHypZaN

  14. BdbHQJmfWPzvsDN
    14/03/2022 Antworten

    AkIBJMVslDCUxFu

  15. HCrDjlzoXG
    20/03/2022 Antworten

    ZFcITrbfnuU

  16. bzgZmOterUl
    27/03/2022 Antworten

    TDmrdfRAgzJqCoe

  17. 金万达
    29/03/2022 Antworten

    You choose peace or war?

  18. Crypto
    31/03/2022 Antworten

    $300-$500 Daily With Crypto - https://bit.ly/37Py4LO

  19. abECuOIfWQGUyvBn
    15/04/2022 Antworten

    IJQhMUZxs

  20. OzELvrVRtSljAaJD
    21/04/2022 Antworten

    vrXGjmcCyNYEb

  21. watch series
    27/04/2022 Antworten

    I love looking through an article that will make men and women think. Also, many thanks for permitting me to comment. Colin Phelts

  22. watch series
    27/04/2022 Antworten

    This is one awesome blog post. Really thank you! Keep writing. Bo Yandle

  23. cgORxdTJ
    13/05/2022 Antworten

    gfPewOpcKSVHtTZo

  24. turkce dublaj film izle
    26/05/2022 Antworten

    Your mode of telling everything in this article is truly pleasant, every one be able to simply understand it, Thanks a lot. Agustin Sommers

  25. turkce dublaj filmler
    26/05/2022 Antworten

    Dead pent content , thanks for selective information . Vicente Colmer

  26. kacak bahis siteleri
    27/05/2022 Antworten

    You are my breathing in, I own few web logs and occasionally run out from to brand. Barry Eschenbacher

  27. watch series
    28/05/2022 Antworten

    Hey, thanks for the article. Really looking forward to read more. Keep writing. Clay Sartori

  28. sikis izle
    30/05/2022 Antworten

    Wow! Finally I got a website from where I know how to really take useful information regarding my study and knowledge. Joan Peerzada

  29. porno izle
    30/05/2022 Antworten

    Just beneath, are various completely not associated sites to ours, having said that, they may be surely worth going over. Kirby Chestnutt

  30. 菜来了
    06/06/2022 Antworten

    So you are a man or woman?

  31. 就爱要
    07/06/2022 Antworten

    Where there is a will, there is a way.

  32. turkce dublaj film izle
    09/06/2022 Antworten

    Also, a lot of the time the people who comment on your blog are great at generating new information that you might never have thought about before. Jorge Schatzberg

  33. türkçe dublaj
    09/06/2022 Antworten

    Only wanna tell that this is very useful , Thanks for taking your time to write this. Dino Gilcreast

  34. hRtwLQaJeHyT
    21/06/2022 Antworten

    qBGwzmMDi

  35. sikis izle
    22/06/2022 Antworten

    This is my first time visit at here and i am really impressed to read all at one place. Antoine Espeland

  36. kacak bahis siteleri
    23/06/2022 Antworten

    I all the time emailed this blog post page to all my friends, because if like to read it then my contacts will too. Marvin Margaryan

  37. bahis oyna
    09/07/2022 Antworten

    Way cool! Some very valid points! I appreciate you penning this article and also the rest of the website is also really good. Emery Brunkhardt

  38. watch series
    09/07/2022 Antworten

    You need to take part in a contest for one of the greatest blogs online. Wally Spreitzer

  39. porno
    11/07/2022 Antworten

    Hi, of course this paragraph is genuinely good and I have learned lot of things from it on the topic of blogging. thanks. Lionel Haag

  40. porno
    11/07/2022 Antworten

    Glad to be one of many visitants on this amazing site : D. David Ruhter

  41. online bahis casino
    16/07/2022 Antworten

    Pretty! This was an extremely wonderful article. Many thanks for supplying these details. Arnulfo Yundt

  42. sikis izle
    16/07/2022 Antworten

    Please do. There are so many things you can do with pumpkin puree. Melvin Kurutz

  43. porno
    17/07/2022 Antworten

    Awesome! Its really amazing article, I have got much clear idea concerning from this article. Ronny Ramdeo

  44. bahis oyna
    17/07/2022 Antworten

    I got what you intend,saved to fav, very decent site. Palmer Lobaugh

  45. eskort
    18/07/2022 Antworten

    This design is steller! You definitely know how to keep a reader amused. Emanuel Cranston

  46. erotik
    18/07/2022 Antworten

    I got what you mean,saved to bookmarks, very nice web site. Rogelio Kreutzbender

  47. online bahis casino
    18/07/2022 Antworten

    Loving the info on this website, you have done great job on the posts. Antonio Geronime

  48. kacak bahis siteleri
    19/07/2022 Antworten

    Perform the following to discover more about women before you are left behind. Tyrone Divis

  49. arkadan seks
    20/07/2022 Antworten

    A round of applause for your article post. Really looking forward to read more. Really Great. Zachery Winchester

  50. dwnKOqgyC
    20/07/2022 Antworten

    ETmadAFN

  51. xnxx
    20/07/2022 Antworten

    Some truly nice and utilitarian info on this internet site, as well I think the design and style has got superb features. Alfred Alspach

  52. gkxlrOVKmMu
    25/07/2022 Antworten

    NdDPvxaJr

  53. RydcFXJM
    25/07/2022 Antworten

    UdjuYmzyfvDoA

  54. Sterkiree
    29/07/2022 Antworten

    Keflex Zanax generic cialis 20mg

  55. AeZugnFLkvM
    29/07/2022 Antworten

    rHuqdzvJxho

  56. Backlinks
    04/08/2022 Antworten

    100,000 Backlinks only $10,Subject to data from ahrefs.com.After paid $10 by PayPal (My PayPal:helloboy1979@gmail.com),Tell me your URL, email and comment content.I will complete the task within ten days.But It may take up to a month for the data updated from ahrefs.com.

  57. erqUcywQF
    05/08/2022 Antworten

    iUBJLOQFgjGKxPp

  58. viagra
    07/08/2022 Antworten

    Well, this stranger, thousands of miles away, is crying for you this morning, and holding you and your dear ones in prayer. Lenard Durkin

  59. casino
    08/08/2022 Antworten

    This paragraph will assist the internet visitors for setting up new webpage or even a weblog from start to end. Damion Jeffs

  60. eskort bayan
    08/08/2022 Antworten

    Everything is very open with a very clear clarification of the issues. It was definitely informative. Jimmy Mcewan

  61. casino
    10/08/2022 Antworten

    Greetings, tidy website you possess at this time there. Lamont Junius

  62. viagra
    10/08/2022 Antworten

    What a stuff of un-ambiguity and preserveness of valuable experience about unexpected emotions. Wilford Reckart

  63. bahis
    11/08/2022 Antworten

    Despite whether the phone is the most imaginatively advanced, there is a most far away point to the segment of works that can be avowed in it. Enoch Beurskens

  64. eskort bayan
    12/08/2022 Antworten

    Everyone loves it whenever people get together and share thoughts. Omar Grgurevic

  65. casino
    13/08/2022 Antworten

    If you would like to grow your experience simply keep visiting this site and be updated with the newest gossip posted here. Conrad Montieth

  66. kacak bahis siteleri
    13/08/2022 Antworten

    Hello Dear, are you actually visiting this site daily, if so after that you will absolutely take pleasant know-how. Archie Woltemath

  67. wvoCVPKUtrqSR
    14/08/2022 Antworten

    QmIWcjMyXF

  68. mettavy
    18/08/2022 Antworten

    In some cases a skin biopsy may be needed to rule out other causes of pigment loss. buy stromectol online no prescription

  69. dCwHAYgsK
    23/08/2022 Antworten

    EIGrTMDWftQmk

  70. eYyLFBUgs
    23/08/2022 Antworten

    ecihGJHRjp

  71. VhrMeApcJ
    27/08/2022 Antworten

    YehskbXluSrJdOg

  72. kefImiree
    01/09/2022 Antworten

    2 , which may lead to symptomatic hypotension e cialis online ordering Like any good review, we have to begin by listing the basic pros and cons of HealthyMale

  73. faffogy
    03/09/2022 Antworten

    Cumpston M, Li T, Page MJ, et al priligy pill

  74. Balagreem
    05/09/2022 Antworten

    do not try and simply swallow the pill without water as the pill may get stuck in your food pipe causing huge tension and other difficulties cheapest cialis 20mg It s easy to order your medicine online with Canadian Pharmacy Online

  75. embercism
    07/09/2022 Antworten

    cheap cialis generic online According to the FDA , no one has studied tadalafil s effects on these conditions

  76. WsIReOEpBYPqrNkh
    08/09/2022 Antworten

    IMpXQBDYnVUmJ

  77. lSFAtyOdb
    08/09/2022 Antworten

    RuiFBMTYKlDr

  78. ktpRdHPVil
    08/09/2022 Antworten

    IkVqxjEyOQoaeKrX

  79. toilync
    10/09/2022 Antworten

    where can i buy omifin This can lead to an increase in muscle mass and strength.

  80. DEarnew
    13/09/2022 Antworten

    tamoxifen rash pictures OBGYN said the fibroid really wasn t in a place that was problematic.

  81. Dauccitte
    17/09/2022 Antworten

    doxycycline coverage chart Not all preventive measures protect against all tick species, so ask your veterinarian which option is best for the types of ticks in your region.

  82. GBwqOpjZaNtvlPE
    21/09/2022 Antworten

    mtKklyXRjJxwepO

  83. icYhgRkvGJFUjBSZ
    21/09/2022 Antworten

    SWNupTAgDxqm

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.