Frage

Laut Wikipedia wurde der Begriff ursprünglich von einem Datenbankexperten Joe Celko im Jahr 1982 geprägt und hier ist ein Zitat von seine 1997 Artikel enthüllt, was er damit meinte: "wurden die Standard [strukturierte Programmierung] Lösung der GOTOs ersetzen mit IF-THEN-ELSE-Anweisungen und Schaltern verschachtelt, die so tief geschichtet wurden und hatte so viel Redundanz, dass Sie einen Weg der Kontrolle hatte, dass statt wie eine Platte von Lasagne aussah. "

Der gleiche Wikipedia-Eintrag jedoch definiert den Begriff anders, klar unter Bezugnahme auf mehrschichtiges Anwendungen:. „... verschiedene Subsysteme, wie ... Web-Anwendungscode, Business-Logik und einer relationalen Datenbank“ Die Bedeutung des Ausdruckes somit als Programmierer entwickelt neue Methoden und Architekturen entwickelt hat

Ich kann mir zwei modernen Definitionen von „Lasagne-Code“:

  1. Schichten einer Software-Anwendung, die zu hoch sind, über-engineered oder trivial (offensichtlich)
  2. Schichten einer Software-Anwendung Einheit fehlt Tests mit der richtigen Isolierung. Die Entwickler das System nur durch Aufschneiden getestet durch und konsumieren mehrere Schichten auf einmal.

Der Begriff bedeutet offensichtlich Kritik (so wie Sie meine Sachen es durch den Aufruf kritisieren können „Spaghetti-Code“). Aber was bedeutet es für Sie bedeuten und wann möchten Sie es verwenden?

War es hilfreich?

Lösung

Andere Tipps

Zu viele GOTOs == Spaghetti-Code

Zu viele IF-THEN-ELSE / Schalter == Lasagna-Code

:)

Spaghetti-Code Verweis auf Wikipedia hat dies sagen ,

  

Lasagna Code ist eine Art von Programm-Struktur, gekennzeichnet durch mehrere gut definierte und trennbaren Schichten, wobei jede Schicht von Codedienste in den Schichten unterhalb durch gut definierte Schnittstellen zugreift.
  Der Begriff ist im Vergleich zu Spaghetti-Code , das Vergleichen Programmstruktur zu Pasta.

     

Die Analogie stammt aus der geschichteten Struktur aus einer Platte aus Lasagne ,
  wo verschiedene Zutaten (Fleisch, Sauce, Gemüse oder Käse) durch Streifen von Teigwaren jeweils voneinander getrennt sind.

Eine gut gemachte Lasagne, die Art meine Frau macht, ist gut geschichtet und ordentlich, Spaghetti auf der anderen Seite ist ein wirres verwirrendes Durcheinander, so würde ich denken, dass diese eine Beleidigung wäre, während erstere nur ein Weg wäre, die Beschreibung Code, der in isolierten Schichten entwickelt. Ich denke, MVC einen Lasagne Ansatz zur Programmierung in Betracht gezogen werden würde, aber es klingt albern, und ich würde es nie verwenden. Übrigens, wenn Sie einen fetten Programmierer gesagt, dass er Lasagne Anwendungen schreiben Sie das Risiko zu beleidigen den armen Kerl laufen.

Es könnte auch auf Code verweisen von Italienern geschrieben Ich nehme an:)

Ich habe noch nie von Lasagne Code gehört, aber das erste, was in den Sinn kam, war „Spaghetti-Code“. Meine Vermutung war Teile davon waren ganz über den Platz, aber die Mehrheit war eine geschlossene Einheit. Kein schlechter ein Spaghetti-Code, aber nicht gut genug, um nicht zu erhalten angezeigt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top