Im Laufe der Jahre wurde eine Vielzahl von Software-Entwicklung Modelle und Architekturen erschien und dann verblasst in der Popularität. Entlang des Weges, trugen jeweils mit dem Handwerk und beeinflusst die Art und Weise Software integriert ist. Zwei dieser Modelle , Komponenten-basierte Entwicklung und Service-orientierten Architektur , bedeutende Beiträge zur aktuellen Entwicklung Modelle . Komponenten -basierte Entwicklung in Richtung sowohl schnelle Anwendungsentwicklung und visuelle Programmier-LED , die Service -orientierte Architektur , SOA oder in Cloud-Computing- Dienste, in denen Sie Zugriff auf serverseitige Software über einen Web- Browser entwickelt. Komponentenbasierte Entwicklung
Visual Basic , Delphi JavaBeans und Programmierung jeweils auf einer Reihe von Drag-and- Drop-Komponenten aus einer Palette auf irgendeine Art von Arbeit Oberfläche gezogen verlassen. Zusammen mit integrierten Komponenten können Entwickler ihre eigenen Kontrollen angefertigt werden, um Funktionen , die auf ihre eigenen geschäftlichen Anforderungen auszuführen. Entwickler erstellen Sets von wiederverwendbaren Komponenten , dann nutzen sie als Bausteine für neue Business-Lösungen zu erstellen. Dies ist die Grundlage für Komponenten-basierte Entwicklung.
Service-orientierte Architektur
SOA verwendet eine Reihe von Web -Servern , um Rechenleistung zu verteilen, um große Unternehmen Probleme zu lösen. Wenn ein Browser eine Webseite anzeigt, sendet es zuerst eine Anfrage an einen Web -Server wartet dann auf die Ergebnisse und zeigt sie auf die Seite. Ein Web-Service , die Bausteine der SOA , stützt sich auf die gleiche Web-Anfragen und-Antworten , die Arbeit zwischen Computern zu koordinieren. Jeder Computer hat eine Reihe von Dienstleistungen, die sie durchführen und können andere Computer verlangen diese Dienste .
Ähnlichkeiten
Obwohl die Programmierung Modelle ganz anders erscheinen, die gesamte Vision ist das gleiche. Beide Komponenten und Dienstleistungen haben jeweils einen vordefinierten Satz von Methoden oder Funktionen , die sie ausführen . Software -Designer beginnen mit der Definition von Bausteinen , die Objekte der realen Welt vertreten . Diese können Rechnungen , Kontoauszüge, Kunden oder anderen Geschäftspartnern Personen sein . Der Designer definiert dann eine Anzahl von Nachrichten oder Funktionen , die das Objekt sagen , etwas zu tun . Zum Beispiel kann ein Girokonto zum Gegenstand haben, eine Funktion, die seine aktuelle Bilanz gibt , oder es kann eine Funktion, die eine Zahlung erhält und hat somit eine Balance und Entsendung der Scheck in seinem Register .
Differenzen
Die Hauptunterschiede Zentrum rund Skala und Technologie. Eine Komponente lebt auf einem einzelnen Computer und die gesamte Kommunikation erfolgt in einer einzigen Box . Dienstleistungen leben auf mehreren Computern , die oft in verschiedenen physischen Standorten und Kommunikation erfolgt über Netzwerke. Komponenten implementieren in der Regel sehr klein, granulare Funktionen . Eine typische Komponente Aufgabe kann zum Lesen und Schreiben von Daten aus einer einzigen Datenbank-Tabelle oder senden Sie eine Transaktion . Dienstleistungen oft über mehrere Abteilungen oder sogar verschiedenen Unternehmen. Typische Web-Services kann nach dem Verkauf von regionalen Niederlassungen an die Zentrale oder senden Sie eine Liste der Lohn-Schecks auf der Bank des Unternehmens .