Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

Gute Code-Beispiele schreiben

Wer über Programmierung schreibt, sollte das anhand von Beispielen tun. Wie man zu guten Code-Beispielen gelangt hat die kanadische Softwareentwicklerin und Zeichnerin/Verfasserin von Code-Comics Julia Evans in einem Blogbeitrag skizziert.
Realistische Beispiele helfen, das Konzept, das Sie zu erklären versuchen, zu "verkaufen". Julia Evans sagt: "Wenn ich versuche, eine Idee zu erklären (wie Python-Lambdas), versuche ich normalerweise auch, den Leser davon zu überzeugen, dass es sich lohnt, sie zu lernen! Python-Lambdas sind super nützlich! Und um jemanden davon zu überzeugen, dass Lambdas nützlich sind, hilft es wirklich, jemandem zu zeigen, wie Lambdas ihm helfen könnten, eine Aufgabe zu erledigen, die er sich tatsächlich vorstellen kann, und idealerweise eine Aufgabe, die er schon einmal gemacht hat."Die Grundidee für das Finden guter Code-Beispiele liegt also darin, mit echtem Code zu beginnen, den man selbst geschrieben hat und dann irrelevante Details zu entfernen, um daraus ein in sich geschlossenes Beispiel zu machen, anstatt Beispiele aus dem Nichts zu erfinden.Gute Beispiele, sagt Julia Evans, sind realistisch. Nicht realistisch ist es das Quadrieren von Zahlen als Beispiel für Python-Lambdas heranzuziehen. Hauptgrund: Das Quadrieren einer Zahlenmenge ist nichts, was man mit großer Wahrscheinlichkeit in einem echten Programm machen wird. Ein realistischeres Beispiel für Python-Lambdas ist die Verwendung mit sort, etwa so:
kinder = [{"name": "ashwin", "alter": 12}, {"name": "radhika", "alter": 3}]
sort_children = sorted(children, key=lambda x: x['age']) 
Hinterfragt man dieses Beispiel, etwa danach, warum die Kinder nach Alter sortiert werden sollten, zeigt sich auch dieses Beispiel noch als ziemlich konstruiert.Wirklich realistisch wird ein Beispiel, wenn es tatsächlich geschriebenen Code zur Grundlage hat. Es kann zwar ein wenig aufwändiger sein, den echten Code vom für das Beispiel störenden Ballast zu befreien, aber der echte Code verkauft das Anliegen für welches das Beispiel gewählt wurde viel besser. Wie oben gesagt: Am besten handelt es sich um Code, der ein Problem elegant löst, das der Zuhörer/Leser bereits selbst einmal bearbeitet hat. Für das Beispiel Python sort mit Lambda nennt Evans gleich ein ganzes Bündel von Beispielen, die sie in ihrem tatsächlichen Code findet, zum Beispiel die Sortierung einiger Kalenderereignisse nach ihrem Unix-Zeitstempel:

events = [
    { 'date': 1625837042, 'name': 'birthday party'}, 
    { 'date': 1620581136, 'name': 'dinner with Yifei'}, 
    { 'date': 1589045136, 'name': 'dentist appointment'},
]

sorted_events = sorted(events, key=lambda x: x['date']) 
 
Den kompletten Beitrag von Julia Evans finden Sie hier, ihre Zines, Poster und Comics bietet sie im Web auf dieser Seite an.
Miscellaneous

Neueste Beiträge

Simple Recipes – User Interface und Plattformanpassungen - Moderne UI-Gestaltung mit der Uno Platform, Teil 5
Fortsetzung des praxisnahen Mini-Projekts: Das Beispiel der Rezepte-App „Simple Recipes“ zeigt, wie Uno ein gemeinsames UI-Design für Desktop, Web und Mobile ermöglicht.
7 Minuten
Mehr Leistung für SBCs
Neue Orange-Pi-Varianten von Shenzhen Xunlong liefern höhere Rechenleistung.
12 Minuten
15. Dez 2025

Das könnte Dich auch interessieren

Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
UIs für Linux - Bedienoberflächen entwickeln mithilfe von C#, .NET und Avalonia
Es gibt viele UI-Frameworks für .NET, doch nur sehr wenige davon unterstützen Linux. Avalonia schafft als etabliertes Open-Source-Projekt Abhilfe.
16 Minuten
16. Jun 2025
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige