Roadmap & Konzeptliste

Prioritäten für die zukünftige Entwicklung des Go-Tracks


Dieses Dokument gibt einen Überblick über die wichtigsten Themen, auf die sich Mitwirkende und Maintainer in den kommenden Monaten wahrscheinlich konzentrieren werden.

Überblick über die Themen

  • Bestehende Konzeptübungen verbessern
  • Weitere Konzeptübungen erstellen (siehe Überblick über den Lehrplan unten)
  • Die Listen prerequisites und practices für alle Praxisübungen definieren (siehe Issue 1396)
  • Die verbleibenden Fehler im Test-Runner beheben
  • Den Analyzer reparieren und reaktivieren (siehe z. B. Issue 16) und weitere Fehler beheben
  • Eine gute, stabile Version des Representers fertigstellen und live schalten
  • Lösungsansätze für Übungen verbessern/ergänzen
  • Tests mit den Problem-Spezifikationen synchronisieren

Überblick über den Lehrplan

Vorhandene Konzepte

  • basics
  • strings und strings-package
  • numbers (grundlegend) und arithmetic-operators
  • floating-point-numbers
  • booleans
  • comments
  • conditionals-if und comparison
  • conditionals-switch
  • structs
  • type-definitions
  • slices
  • iteration (for-Schleife)
  • functions (inkl. mehrerer Rückgabewerte)
  • maps
  • range-iteration
  • runes
  • pointers
  • methods
  • interfaces
  • errors
  • zero-values (inkl. nil)
  • type-conversion
  • type-assertion
  • constants
  • string-formatting
  • packages (Import/Export)
  • time
  • variadic-functions (führt ... ein)
  • randomness
  • regular-expressions
  • stringers

Mögliche zukünftige Konzepte

  • time-duration
  • integer-types
  • panic-recover
  • error-wrapping (errors.Is, errors.As)
  • bytes
  • bitwise-operators
  • goroutines
  • waitgroups
  • mutexes
  • channels und select
  • closures/anonymous-functions/higher-order-functions
  • JSON
  • defer
  • Buffer, io.Reader/io.Writer
  • typed-parameters (Generics)
  • context
  • Zeit-Helfer (ticket, sleep usw.)
  • reflection
  • unsafe
  • init
  • Muster der funktionalen Optionen
  • Einbetten von Dateien

Weitere Themen, die für Konzeptübungen möglicherweise nicht infrage kommen:

  • Tools (go fmt, go vet, go doc usw.)
  • Tests und Beispiele schreiben
  • Benchmarking
  • Profiling
  • go generate
  • Compiler-Optionen