home *** CD-ROM | disk | FTP | other *** search
/ back2roots/padua / padua.7z / padua / lang / StruxDemo.lha / StruxDemo / Liesmich < prev    next >
Encoding:
Text File  |  1993-05-17  |  14.9 KB  |  386 lines

  1.  
  2.         XX X
  3.       XXXXXX    X
  4.      XXX  XX   XX
  5.      XX       XXX
  6.      XX      XXXXXX  XXX  XX   XXX   XXX  XXXXX    XXXX
  7.      XXX       XX     XXXXXXXX  XX    XX    XX      X
  8.       XXXX     XX     XXX  XXX  XX    XX     XX    X
  9.        XXXX    XX     XX        XX    XX      XX  X
  10.          XXX   XX     XX        XX    XX       XXX
  11.           XX   XX     XX        XX    XX        XX
  12.           XX   XX     XX        XX    XX       X XX
  13.      XX  XXX   XX   X XX        XXX  XXX      X   XX
  14.      XXXXXX     XXXX  XX         XXXXXXXXX   X     XX
  15.      X XX        XX  XXXX          XX XXX  XXXX   XXXXX   Version 1.0
  16.  
  17.  
  18.   Ein grafischer Editor fⁿr Struktogramme und ProgrammablaufplΣne
  19.  
  20.  
  21.                   ****  **** *   *  ***          
  22.                    *  * *    ** ** *   *
  23.                    *  * ***  * * * *   *
  24.                    *  * *    *   * *   *    
  25.                   ****  **** *   *  ***
  26.  
  27. __________________________________________________________________________
  28.  
  29.  
  30.  
  31. Kurzbeschreibung
  32. ================
  33.  
  34. Mit Strux lassen sich schnell und bequem Struktogramme und Programm-
  35. ablaufplΣne (PAP) erstellen. Die erstellten Diagramme k÷nnen als
  36. Quelltext in einer beliebigen Programmiersprache gespeichert und so
  37. in kurzer Zeit in ein lauffΣhiges, gut strukturiertes und kommentiertes
  38. Programm umgesetzt werden.
  39. Weiterhin besteht die M÷glichkeit, Quelltexte in den Sprachen "C" und
  40. "Pascal" einzulesen und als Struktogramm oder PAP darzustellen und
  41. zu bearbeiten. Dies ist ideal zum Verstehen fremder Programme und
  42. hilfreich zur Fehlersuche in eigenen Programmen.
  43. Die Diagramme lassen sich auch als IFF-Grafik speichern oder ausdrucken.
  44. Zu jeder Programmfunktion ist ein Hilfstext vorhanden, der angezeigt
  45. werden kann, wΣhrend man mit Strux weiterarbeitet.
  46.   
  47.  
  48. Da Strux streng nach den Commodore Richtlinien (Styleguide) programmiert
  49. wurde und konsequent die M÷glichkeiten der Betriebssystemversion 2.0 
  50. nutzt, wird
  51.              Kickstart/Workbench 2.0 oder h÷her ben÷tigt !
  52.  
  53. Wenn Sie noch Version 1.3 benutzen, sollten Sie eine Umrⁿstung auf
  54. Version 2.0 oder 2.1 in ErwΣgung ziehen, es lohnt sich ! 
  55. (nicht nur fⁿr Strux :-)
  56.  
  57.  
  58. ----------------------------------------------------------------------
  59.  
  60. Strux ist ein kommerzielles Programm. Diese Demo soll dazu dienen,
  61. dass Sie Strux ausprobieren k÷nnen, ohne gleich die Vollversion
  62. kaufen zu mⁿssen.
  63.  
  64. Die Vollversion kostet 98,- DM und enthΣlt ein ausfⁿhrliches,
  65. gedrucktes Handbuch (65 Seiten, Ringbindung) mit vielen Beispielen.
  66. Als registrierter Anwender bekommen Sie kostenlos Hilfe und
  67. gⁿnstige Updates.
  68.  
  69. Bestellen k÷nnen Sie Strux bei:
  70.  
  71.   Andreas Gⁿnther
  72.   Alfener Weg 10
  73.   W-4790 Paderborn   (bzw. ab 1.7.93:  33100 Paderborn)
  74.  
  75. (Versandkosten: Vorkasse: 5,- DM, Nachnahme: 10,- DM)
  76.  
  77.  
  78. email: guenther@uni-paderborn.de
  79.  
  80. ----------------------------------------------------------------------
  81.  
  82.  
  83. Copyright
  84. =========
  85.  
  86. Strux ist Copyright by Andreas Gⁿnther.
  87. Diese Demo-Version des Programms darf weitergegeben werden, jedoch
  88. mⁿssen ALLE Dateien unverΣndert weitergegeben werden, also die
  89. gesamte "StruxDemo"-Schublade. Die Strux-Demo darf in einem Archiv
  90. gepackt werden (z.B. mit lharc).
  91.  
  92.  
  93.  
  94. EinschrΣnkungen in der Demo-Version
  95. ===================================
  96.  
  97. - Das Speichern von Diagrammen und Clips im Strux-Format geht nicht.
  98. - Zu einem Diagramm, welches mehr als 10 Bl÷cke enthΣlt, kann
  99.   kein weiterer Block hinzugefⁿgt werden. So ist es aber m÷glich,
  100.   sich die Beispiele anzuschauen.
  101. - Es k÷nnen nur Quelltexte eingelesen werden, die maximal 2000 Byte
  102.   lang sind.
  103.  
  104.  
  105.  
  106. ************************************************************************
  107.  
  108.  
  109.  
  110. Einfⁿhrung in Strux
  111. ===================
  112.  
  113. Um von einer Idee zum fertigen Programm zu gelangen, sind mehrere
  114. Schritte n÷tig:
  115. - Spezifikation der Idee (genaue Beschreibung der Wⁿnsche und 
  116.   Anforderungen)
  117. - Entwurf des Programms (Entwicklung eines L÷sungsweges und der 
  118.   Programmstruktur)
  119. - Implementierung (d.h. Umsetzung in eine Programmiersprache und
  120.   letztendlich in ein lauffΣhiges Programm)
  121.  
  122. Der Struktogramm-Editor Strux erleichtert dem Programmierer die Arbeit 
  123. beim Entwurf der Programmstruktur und hilft beim Schritt zur 
  124. Implementierung in einer beliebigen Programmiersprache.
  125.  
  126. Dazu lΣ▀t sich zunΣchst die Programmstruktur als Struktogramm oder
  127. Programmablaufplan (PAP) bequem und ⁿbersichtlich am Bildschirm erstellen
  128. und bearbeiten. Anschlie▀end kann der Entwurf als "Quellcode-Gerⁿst"
  129. fⁿr die eigentliche Implementierung gespeichert werden. 
  130. Viele Programmierer ⁿberspringen die Phase des Entwurfs und versuchen 
  131. sofort, das Programm zu implementieren. Dies wird aber bei etwas 
  132. gr÷▀eren Projekten sehr unⁿbersichtlich und endet meist im Chaos. 
  133.  
  134. Wird jedoch erst die Programmstruktur mit Strux erstellt, so verliert 
  135. man nicht die ▄bersicht, die Programme werden fehlerfreier und bekommen
  136. so ganz nebenbei noch eine Kommentierung, was auch gern vernachlΣssigt 
  137. wird.
  138.  
  139. Ebenfalls eignen sich Stuktogramme bzw. PAPs hervorragend zur Dokumentation
  140. und ErklΣrung von Programmen und Algorithmen, da sie programmiersprachen-
  141. unabhΣngig und ⁿbersichtlich sind. (Auch bei Problemen, die nichts mit 
  142. Computern zu tun haben, lassen sich leicht L÷sungswege entwickeln und 
  143. anschaulich darstellen)
  144.  
  145. Um ein bestehendes (wom÷glich unkommentiertes) Programm verstehen zu
  146. k÷nnen, ist es sehr hilfreich, die Programmstruktur zu erkennen. Daher 
  147. bietet Strux fⁿr die Sprachen PASCAL und C die M÷glichkeit, Quelltext 
  148. einzulesen und als Struktogramm bzw. PAP darzustellen und 
  149. weiterzubearbeiten.
  150.  
  151.  
  152.  
  153.  
  154. Bedienung
  155. =========
  156.  
  157. Hier sollen zunΣchst einige grundlegende Dinge erklΣrt werden, um 
  158. einen Eindruck von Strux zu bekommen. Weitere ErklΣrungen zu den 
  159. einzelnen Funktionen werden in den Hilfstexten beschrieben, daher
  160. wird hier nicht nΣher darauf eingegangen. (Im Handbuch sind 
  161. natⁿrlich alle Funktionen genau beschrieben)
  162.  
  163.  
  164. Start
  165. -----
  166.  
  167. Der Start des Programms erfolgt durch Anklicken des Piktogramms mit 
  168. dem Namen "StruxDemo". Anschlie▀end erscheint ein Fenster, die 
  169. ArbeitsflΣche von Strux, auf der Workbench.
  170. Wenn Sie nun das Zoom-Symbol des Fensters betΣtigen (oben rechts),
  171. wird seine Gr÷▀e an den sichtbaren Bereich des Bildschirms angepa▀t.
  172.  
  173.  
  174. Verlassen des Programms
  175. -----------------------
  176. WΣhlen Sie dazu den Menⁿpunkt "Projekt ╗ Strux Verlassen" aus oder
  177. betΣtigen Sie das Schlie▀symbol des Fensters. Vor dem endgⁿltigen 
  178. Verlassen erfolgt noch eine Sicherheitsabfrage.
  179.  
  180.  
  181. Hilfe
  182. -----
  183. Strux besitzt eine eingebaute Hilfe-Funktion, die jederzeit aufgerufen
  184. werden kann. Es kann zu jedem Menⁿpunkt, jedem Fenster und zu einigen 
  185. Begriffen jeweils ein erklΣrender Text angezeigt werden.
  186.  
  187. Hilfe zu Menⁿs und Menⁿpunkten:
  188.   Menⁿpunkt wΣhlen, jedoch die rechte Maustaste gedrⁿckt halten, dabei
  189.   die "Help"-Taste drⁿcken.
  190.  
  191. Hilfe zu Fenstern:
  192.   Wenn das Fenster angezeigt wird, einfach die "Help"-Taste drⁿcken.
  193.  
  194. BegriffserklΣrungen:
  195.   Im Hilfefenster das Symbol "Begriffe" anklicken und anschlie▀end 
  196.   den gewⁿnschten Begriff auswΣhlen.
  197.  
  198. Es erscheint ein Fenster, in dem der Hilfstext angezeigt wird. Mit dem
  199. Rollbalken an der rechten Seite kann der Text verschoben werden. WΣhrend
  200. das Hilfefenster angezeigt ist, kann mit Strux weitergearbeitet werden. 
  201. Das Hilfefenster kann jederzeit durch Anklicken des Schlie▀symbols
  202. entfernt werden.
  203.  
  204.  
  205. Menⁿs
  206. -----
  207. Die Steuerung erfolgt vollstΣndig ⁿber die Menⁿs. Die meisten Funktionen
  208. besitzen eine zugeh÷rige Taste, um ein schnelles Arbeiten zu erm÷glichen.
  209. Die zu den Funktionen geh÷renden Tasten stehen in den Menⁿs und mⁿssen
  210. zusammen mit der rechten "AMIGA"-Taste betΣtigt werden.
  211. In den Fenstern k÷nnen die Symbole, bei denen ein Buchstabe unterstrichen
  212. ist, au▀er mit der Maus auch mit der entsprechenden Buchstabentaste
  213. betΣtigt werden. In Listen kann mit den Pfeiltasten geblΣttert werden.
  214.  
  215.  
  216. Laden eines Projekts
  217. --------------------
  218. Um die folgenden Punkte dieser Kurzanleitung ausprobieren zu k÷nnen, 
  219. soll zunΣchst das Laden eines Projekts erklΣrt werden. Dazu wird der 
  220. Menⁿpunkt "Projekt ╗ ╓ffnen ╗ Strux-Diagramm angewΣhlt. Daraufhin 
  221. erscheint ein Dateiauswahlfenster, dessen Bedienung bekannt sein 
  222. dⁿrfte. Es sollte nun ein Diagramm ausgewΣhlt und "÷ffnen" betΣtigt 
  223. werden. Anschlie▀end wird das Diagramm geladen und angezeigt.
  224.  
  225.  
  226. Darstellungsarten
  227. -----------------
  228. Ein Diagramm kann auf drei Arten dargestellt und bearbeitet werden: 
  229. als Struktogramm, PAP oder Pseudocode. Es kann jederzeit zwischen den
  230. Darstellungsarten umgeschaltet werden. Dazu wΣhlen Sie den Menⁿpunkt
  231. "Einstellungen ╗ Diagramm" und wΣhlen im dann erscheinenden Fenster 
  232. die gewⁿnschte Darstellung. Schlie▀en Sie das Fenster mit "Benutzen".
  233.  
  234. Struktogramm:
  235.   Das Projekt wird als Struktogramm dargestellt. (nach Nassi-Shneiderman,
  236.   DIN 66261)
  237. PAP:
  238.   Das Projekt wird als Programmablaufplan (PAP) dargestellt. (nach
  239.   DIN 66001 und DIN 66262)
  240. Pseudocode:
  241.   Das Projekt wird in schriftlicher Form als Pseudocode dargestellt.
  242.   Die Befehle entsprechen dabei den Texten im Menⁿ "Hinzufⁿgen".
  243.  
  244. Ist ein Diagramm zu gro▀ fⁿr das Strux-Fenster, wird nur ein Teil 
  245. dargestellt. Der Ausschnitt kann mit den Rollbalken am rechten und 
  246. unteren Rand des Fensters verschoben werden.
  247.  
  248.  
  249. Auswahl eines Blocks
  250. --------------------
  251. Ein Block im Diagramm ist besonders markiert (mit einer anderen Farbe
  252. unterlegt). Dies ist der "aktuelle Block", er entspricht etwa dem 
  253. Cursor in einer Textverarbeitung. Z.B. werden neue Blocks immer an 
  254. diesen Block angehΣngt, das Ausschneiden bezieht sich auf diesen 
  255. Block usw.
  256. Um einen Block auszuwΣhlen, d.h. ihn zum aktuellen Block zu machen, 
  257. klickt man ihn einfach mit der Maus an. Bei Konstrukten wie einer 
  258. Auswahl (z.B. IF ... THEN) oder einer Schleife wird stets der gesamte
  259. Block mit den anhΣngenden Verzweigungen bzw. Schleifenrumpf markiert 
  260. und als ein Block betrachtet.
  261.  
  262. Weiterhin gibt es die M÷glichkeit, die Pfeiltasten zu benutzen.
  263.  
  264.  
  265.  
  266.  
  267. Der Zwischenspeicher (Clipboard)
  268. ================================
  269.  
  270. Wie z.B. bei Textprogrammen ⁿblich, lassen sich auch hier Teile des
  271. Diagramms ausschneiden oder kopieren und an anderer Stelle wieder
  272. einfⁿgen.
  273. Das zuletzt ausgeschnittene Teil wird gespeichert, bis wieder
  274. etwas ausgeschnitten oder kopiert wird. Der Speicher, in dem das Teil
  275. aufbewahrt wird, hei▀t "Zwischenspeicher".
  276. Der Text der ausgeschnittenen Bl÷cke kann auch in andere Programme
  277. eingefⁿgt werden, die den Zwischenspeicher (Clipboard) unterstⁿtzen.
  278.  
  279. (Leider erkennen aber einige Programme die Strux-Clips nicht, da sie
  280. unsauber programmiert sind.
  281. [Der IFF-Typ "CAT CLIP" wird dort nicht erkannt.])
  282.  
  283.  
  284.  
  285.  
  286. Verfeinerungen
  287. ==============
  288.  
  289. Um einen Entwurf ⁿbersichtlich und gut strukturiert zu gestalten,
  290. verwendet man Verfeinerungen. Damit kann ein beliebiger Block mit 
  291. einem eigenen Diagramm genauer definiert werden. Taucht z.B. im 
  292. Struktogramm ein Block "lies Datei von Diskette" auf, so sagt dieser 
  293. Text kurzgefa▀t alles, was man an diesem Punkt zum Verstehen des 
  294. Struktogramms braucht. Das Lesen der Datei umfa▀t selbst jedoch 
  295. mehrere Schritte (÷ffnen der Datei, lesen, schliessen, Fehlerbehandlung 
  296. usw.), die in einer Verfeinerug definiert werden k÷nnen und vom 
  297. Struktogramm aus unsichtbar sind.
  298. Auch Unterprogramme, also Programmteile, die von mehreren Stellen aus 
  299. aufgerufen werden, lassen sich durch Verfeinerungen realisieren.
  300.  
  301.  
  302. Block verfeinern
  303. ----------------
  304. Um den aktuellen Block zu verfeinern, wird der Menⁿpunkt 
  305. "Verfeinerungen ╗ Block verfeinern" gewΣhlt. Es erscheint eine neue 
  306. ArbeitsflΣche, welche als ▄berschrift den Namen des Blocks enthΣlt, 
  307. der verfeinert wurde. Hier kann wie gewohnt ein Diagramm erstellt und 
  308. bearbeitet werden. Dabei sind auch weitere Verfeinerungen m÷glich. 
  309. Wenn ein Block schon verfeinert wurde, so gelangt man auch durch
  310. einen Doppelklick auf diesen Block in die Verfeinerung. Ein verfeinerter 
  311. Block wird durch Fettdruck angezeigt, wenn der Menⁿpunkt "Verfeinerungen 
  312. ╗ Zeigen ?" eingeschaltet ist.
  313. Mit dem Menⁿpunkt "Verfeinerungen ╗ Zurⁿck zu h÷herer Ebene" kommt
  314. man zum Block zurⁿck, der verfeinert wurde. Man gelangt durch einen
  315. Doppelklick auf den oberen Rand des Diagramms ebenfalls in die 
  316. nΣchsth÷here Ebene.
  317. Mit "Verfeinerungen ╗ zu h÷chster Ebene" gelangt man in die h÷chste 
  318. Ebene des Diagramms.
  319.  
  320.  
  321.  
  322. Verfeinerungen markieren
  323. ------------------------
  324. Mit dem Menⁿpunkt "Verfeinerungen ╗ Zeigen ?" kann ein- oder ausgeschaltet 
  325. werden, ob die Verfeinerungen im Diagramm markiert werden sollen. Wenn
  326. die Markierung eingeschaltet ist, werden sΣmtliche Verfeinerungen in 
  327. Fettschrift dargestellt.
  328. Die Markierung hat den Vorteil, da▀ man sofort erkennt, welche Bl÷cke schon 
  329. verfeinert wurden.
  330. Eine Verfeinerung kann von mehreren Bl÷cken gleichen Namens aufgerufen 
  331. werden, das Diagramm der Verfeinerung existiert aber nur einmal und ist
  332. an einem Block angehΣngt. Dieser Block (die "Hauptverfeinerung") wird 
  333. andersfarbig beschriftet. Alle Operationen, die mit diesem Block ausgefⁿhrt
  334.  werden (Ausschneiden, Kopieren, Drucken usw.) haben dann Wirkung auf die 
  335. Verfeinerung. Wenn mit den nur durch Fettschrift markierten Bl÷cke 
  336. Operationen ausgefⁿhrt werden, so haben diese keine Auswirkungen auf 
  337. die Verfeinerung !
  338.  
  339.  
  340. Hauptverfeinerung setzen
  341. ------------------------
  342. Mit dem Menⁿpunkt "Bearbeiten ╗ Verfeinerung setzen" wird die 
  343. Hauptverfeinerung auf den aktuellen Block gelegt. (Der aktuelle Block 
  344. mu▀ natⁿrlich eine Verfeinerung besitzen)
  345. Dies kann erforderlich sein vor einer Operation, welche auch die 
  346. Verfeinerungen betrifft. Soll z.B. die Verfeinerung nicht mitkopiert 
  347. werden, weil sie sonst verdoppelt wⁿrde, so wird die Hauptverfeinerung 
  348. au▀erhalb des zu kopierenden Bereichs gelegt.
  349.  
  350.  
  351.  
  352.  
  353. Speichern als Quelltext
  354. =======================
  355. Menⁿpunkt: "Projekt ╗ Speichern als ╗ Text..."
  356. Das Diagramm wird als ASCII-Text gespeichert. Dabei sind die Umsetzungen
  357. der verschiedenen Arten von Bl÷cken in einer ▄bersetzungstabelle 
  358. einstellbar (Menⁿpunkt "Einstellungen ╗ ▄bersetzungstabelle..."). 
  359. Dadurch besteht die M÷glichkeit, ein Diagramm als Programmtext in einer 
  360. beliebigen Sprache auszugeben. Es entsteht ein "Gerⁿst", welches die 
  361. Programmstruktur enthΣlt und aus dem dann einfach das fertige Programm 
  362. erstellt werden kann.
  363. Falls noch keine ▄bersetzungstabelle eingestellt wurde, wird eine
  364. Fehlermeldung ausgegeben und man bekommt die M÷glichkeit, eine Tabelle
  365. zu ÷ffnen.
  366.  
  367.  
  368.  
  369. Laden von Quelltexten
  370. =====================
  371. Es gibt noch die M÷glichkeit, einen Quelltext in der Programmiersprache 
  372. Pascal oder C als Textdatei zu laden und als Struktogramm bzw. PAP 
  373. darzustellen. Dieses Diagramm kann dann wie gewohnt weiterbearbeitet 
  374. werden. Dazu wird zuerst der Menⁿpunkt "Projekt ╗ ╓ffnen ╗ Text..."
  375. gewΣhlt. Es erscheint ein Dateiauswahlfenster, in welchem die Textdatei 
  376. gewΣhlt wird. In einem Fenster wird nun gefragt, ob es sich um ein 
  377. Pascal- oder C-Programm handelt.
  378. Anschlie▀end kann in einem weiteren Fenster der gewⁿnschte Programmteil 
  379. gewΣhlt werden. Hier kann der Ladevorgang auch abgebrochen werden.
  380. Der Programmtext mu▀ syntaktisch korrekt sein, da er sonst nicht 
  381. umgewandelt werden kann.
  382. Prozeduren und Funktionen werden in Verfeinerungen umgesetzt. Es gehen 
  383. einige Informationen des ursprⁿnglichen Programms verloren, wie z.B. 
  384. Variablendeklarationen, allerdings liegt der Sinn dieser Funktion darin, 
  385. die Programmstruktur zu veranschaulichen.
  386.