AS3-Tutorium: Flash: Calculator 01 integer: Unterschied zwischen den Versionen
Kowa (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Kowa (Diskussion | Beiträge) |
||
| Zeile 13: | Zeile 13: | ||
</noinclude> | </noinclude> | ||
==Datenmodell== | ==Datenmodell== | ||
Im Folgenden wird ein Klassendiagramm beschrieben, dass die Implementierung | |||
des obigen Taschenrechners gemäß dem [[Logic-Data-View-Controller-Services-Paradigma|LDVCS-Paradigmas]] ermöglicht. | |||
[[Medium:AS3-Tutorium Calculator 01 Flash Class Diagram.jpg]] | [[Medium:AS3-Tutorium Calculator 01 Flash Class Diagram.jpg]] | ||
Aus folgenden Komponenten besteht der Taschenrechner: | |||
;<code>ViewCalculator</code> | |||
: Die View-Komponente enthält ein Panel bestehnd aus Digitalziffern (ein Vorzeichen-Element und acht Sieben-Segment-Elemente) zum Darstellen des Rechenergebnisses. Außerdem enthält sie 16 Tasten zur eingabe von Ziffern und Operatoren. | |||
;<code>ControllerCalculator</code> | |||
: Der Controller bietet eine Methode <code>keyClick</code>, die von der View aufgerufen wird, sobald eine Taste gedrückt wird. Dieser Methode wird im [[Parameter]] <code>p_value</code> übergeben, welche Taste gedrückt wurde: <code>0, ..., 9, "C", "=", "+", "-", "×", "÷"</code>. Der Controller überfügt über zwei Attribute, die bei Programmstart initialisiert werden: | |||
:* <code>keyInput</code> enthält das Stage-Objekt, um auf Tastatur-Ereignisse direkt zugreifen zu können. Damit kann der Taschenrechner auch über die Tastatur gesteuert werden. | |||
:* <code>logic</code> enthält die Logik-Komponente der Anwendung. Die Aufgabe des Controllers ist es, die Methoden dieser Komponenten abhängig von der Benutzer-Eingabe aufzurufen. | |||
;<code>LogicCalculator</code> | |||
:Aufgabe der Logik-Komponente ist es, abhängig von der Benutzeraktion | |||
:* Drücken einer Ziffer: <code>addDigit</code> | |||
:* Drücken einer Operatortaste: <code>addOperator</code> | |||
:* Drücken der Clear-Taste: <code>clear</code>) | |||
: ein neues Ergebnis zu berechnen und diese im Data-Objekt zu speichern. Das Data-Objekt wird bei Programmstart initialisiert. | |||
;<code>DataCalculator</code> | |||
: Das Daten-Objekt enthält alle Daten die von der View visualisiert werden können: | |||
:* <code>value</code>: Die Zahl, die aktuell erfasst wird bzw, das Ergebnis, nachdem eine mathematische Operation ausgeführt wurde. | |||
:* <code>operator</code>: Der Operator, der als nächstes angewendet werden soll (wenn die aktuelle Zahl vollständig eingegeben wurde). | |||
:* <code>oldValue</code>: Die letzte Zahl, die erfasst bzw. gerechnet wurde. Diese wird mit der aktuellen Zahl (mit Hilfe des zuvor eingegebenen Operators) verknüpft, sobald der nächste Operator ("=", "+", "-", "×", "÷") gedrückt wird. | |||
: Im obigen Beispiel wird allerdings nur der Wert des Atributes <code>value</code> visualisiert. | |||
Jede der im Diagramm angegebenen Klassen hat genau eine Aufgabe: | |||
;<code>LED</code> | |||
;<code>Sign</code> | |||
;<code>Digit</code> | |||
;<code>Panel</code> | |||
;<code>Key</code> | |||
;<code>ViewCalculator</code> | |||
;<code>ControllerCalculator</code> | |||
;<code>LogicCalculator</code> | |||
;<code>DataCalculator</code> | |||
;<code>Calculator01Flash11</code> | |||
;<code>EnumKey</code> | |||
==Mealy-Automat== | ==Mealy-Automat== | ||
Version vom 29. November 2010, 12:20 Uhr
Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:
| Korrektheit: 4 (großteils überprüft) |
Umfang: 1 (zu gering) |
Quellenangaben: 5 (vollständig vorhanden) |
Quellenarten: 5 (ausgezeichnet) |
Konformität: 5 (ausgezeichnet) |
AS3-Tutorium: Calculator: Flash | Flex
Flash: Übersicht | Teil 1 | Teil 2
Taschenrechner
In diesem Teil des Tutoriums wird beschrieben, wie ein einfacher Taschenrechner implementiert werden kann. Dieser kann nur Interzahlen verarbeiten. Auf Komma- und Exponential-Darstellungen wird ebenso verzichtet, wie auf ein Fehlerbehandlung dei Division durch Null.
<swf width="300" height="420">http://glossar.hs-augsburg.de/beispiel/tutorium/flash_cs5/calculator/calculator_01_integer/Calculator01Flash11.swf</swf> Musterlösung (SVN-Repository)
Datenmodell
Im Folgenden wird ein Klassendiagramm beschrieben, dass die Implementierung des obigen Taschenrechners gemäß dem LDVCS-Paradigmas ermöglicht.
Medium:AS3-Tutorium Calculator 01 Flash Class Diagram.jpg
Aus folgenden Komponenten besteht der Taschenrechner:
ViewCalculator- Die View-Komponente enthält ein Panel bestehnd aus Digitalziffern (ein Vorzeichen-Element und acht Sieben-Segment-Elemente) zum Darstellen des Rechenergebnisses. Außerdem enthält sie 16 Tasten zur eingabe von Ziffern und Operatoren.
ControllerCalculator- Der Controller bietet eine Methode
keyClick, die von der View aufgerufen wird, sobald eine Taste gedrückt wird. Dieser Methode wird im Parameterp_valueübergeben, welche Taste gedrückt wurde:0, ..., 9, "C", "=", "+", "-", "×", "÷". Der Controller überfügt über zwei Attribute, die bei Programmstart initialisiert werden:keyInputenthält das Stage-Objekt, um auf Tastatur-Ereignisse direkt zugreifen zu können. Damit kann der Taschenrechner auch über die Tastatur gesteuert werden.logicenthält die Logik-Komponente der Anwendung. Die Aufgabe des Controllers ist es, die Methoden dieser Komponenten abhängig von der Benutzer-Eingabe aufzurufen.
LogicCalculator- Aufgabe der Logik-Komponente ist es, abhängig von der Benutzeraktion
- Drücken einer Ziffer:
addDigit - Drücken einer Operatortaste:
addOperator - Drücken der Clear-Taste:
clear)
- Drücken einer Ziffer:
- ein neues Ergebnis zu berechnen und diese im Data-Objekt zu speichern. Das Data-Objekt wird bei Programmstart initialisiert.
DataCalculator- Das Daten-Objekt enthält alle Daten die von der View visualisiert werden können:
value: Die Zahl, die aktuell erfasst wird bzw, das Ergebnis, nachdem eine mathematische Operation ausgeführt wurde.operator: Der Operator, der als nächstes angewendet werden soll (wenn die aktuelle Zahl vollständig eingegeben wurde).oldValue: Die letzte Zahl, die erfasst bzw. gerechnet wurde. Diese wird mit der aktuellen Zahl (mit Hilfe des zuvor eingegebenen Operators) verknüpft, sobald der nächste Operator ("=", "+", "-", "×", "÷") gedrückt wird.
- Im obigen Beispiel wird allerdings nur der Wert des Atributes
valuevisualisiert.
Jede der im Diagramm angegebenen Klassen hat genau eine Aufgabe:
LEDSignDigitPanelKeyViewCalculatorControllerCalculatorLogicCalculatorDataCalculatorCalculator01Flash11EnumKey
Mealy-Automat
Medium:AS3-Tutorium Calculator 01 Mealy Machine.jpg
