![]() |
Vorschlag für Quelltext-Editor
Guten Morgen, Allerseits.
Im Quelltext-Editor gibt es ja mittlerweile eine ganze Menge sinnvoller Hilfen wie z.B. das automatische Einfügen von "end;" nach Eingabe von "begin". Ich selbst erleichtere mir die Übersicht in meinem Code dadurch, indem ich hinter "end;" immer angebe, worauf sich das End bezieht.
Delphi-Quellcode:
Vielleicht wäre das ja einen Vorschlag an Borland wert? Ich finde, dass das gerade Anfängern (wie mir) das Zurechtfinden in längeren Codes und auch die Fehlersuche deutlich erleichtert.
procedure Form1.Button1_Click1(sender: System.Object; e: System.EventArgs);
var i,j : integer; begin for i := 0 to Panel1.Controls.Count - 1 do begin DoSomething; for j := 0 to Anzahl do begin case Value of 1: begin ........ end; // 1 2: begin if i = 5 then begin .......... end; // if i = 5 then end; // 2 end; // case Value of end; // for j := 0 to Anzahl do DoSomething; end; // for i := 0 to Panel1.Controls.Count - 1 do end; // procedure Form1.Button1_Click1 Gruß Jürgen. |
Re: Vorschlag für Quelltext-Editor
Möglicherweise ist das ja durch Verwendung der Code-Templates möglich. hast du das schon mal versucht?
|
Re: Vorschlag für Quelltext-Editor
Ich habe das auch mal gemacht, das führt dann bald soweit, dass man normale Kommentare, welche etwas zu der Procedure/Function/Block etc. aussagen sollen, schnell verschwinden. Auch leidet die Übersichtlichkeit darunter, wenn man hinter jedes End; hinschreibt wohin das gehört und wenns ganz dumm kommt, verschiebt einem ein SourceFormatierer den Kommentar woandershin.
Ich für meinen Teil würde es besser finden wenn man zum Beispiel auf einem end; steht, dass das zugehörige begin farblich hervorgehoben wird. Entsprechende Einrückungen helfen ja auch schon, das richtige Begin zu finden. Sind diese zu weit auseinander, mehrere Bildschirmseiten, könnte man sich überlegen ob man den Code nicht schöner gestalten könnte. Vielleicht in eine weitere Procedure auslagern? |
Re: Vorschlag für Quelltext-Editor
@ mkinzler
Code-Templates habe ich noch nicht versucht, aber nur deswegen, weil mir das bisher nichts sagt. Wo kann ich was drüber finden? @ GuenterS Bisher bin ich damit eigentlich ganz gut zurechtgekommen, aber die Idee mit farblich hervorgehobenem begin und end (wie bei den Klammern) wäre natürlich auch schon hilfreich. Oder zwei Fraben für die unterschiedlichen Möglichkeiten der Kommentierung (// und {}). Gruß Jürgen. |
Re: Vorschlag für Quelltext-Editor
Zitat:
Und ich würde mich nicht als "Anfänger" bezeichnen. Allerdings mache ich "unwichtige" Kommentare in { und }. Die eher wichtigen oder interessanten bekommen das // oder sogar //**. So kann ich die Arten von Kommentaren unterscheiden. |
Re: Vorschlag für Quelltext-Editor
Hhhmm, also ich finde das etwas unübersichtlich so.
Kommentare in meinen Quelltexten sollen ja eigentlich das erklären, was aus dem Code direkt nicht hervorgeht. Mir reicht es, konsequent die begin-end-Blöcke gleich einzurücken, so dass man relativ schnell erkennt, welches end zu welchem begin gehört. |
Re: Vorschlag für Quelltext-Editor
Also ich muss öfters alte Software warten, in der es viel "Spaghetticode" gibt. Kommentare sind da nur sehr spärlich dabei.
Da hat es Funktionen, die über 5 Bildschirmseiten gehen und viele verschachtelte begin/end. Da weiss man dann nicht, on nun gerade ein with oder ein for oder while beendet wird. Ohne zusätzliche Kommentare hat man da keine Chance... Und das alles umzuschreiben und aus den langen Funktionen mehrere Funktionen machen dauert zu lange. :-( |
Re: Vorschlag für Quelltext-Editor
Zitat:
![]() |
Re: Vorschlag für Quelltext-Editor
Hi,
ich verwende auch diese Art der Kommentare und dies ist auch bei meinem Arbeitgeber so erwünscht. Die Übersichtlichkeit leidet eigentlich gar nicht darunter. Es erleichtert hier wirklich in dem Code verschieder Menschen (man kommt mir der Abschnitt über 5 Bildschirmseiten bekannt vor :wink:) durchaus noch halbwegs etwas lesen zu können. Es gibt halt Menschen die es nicht packen ohne Spaghetticode zu programmieren, aber auf deren Altlasten bleibt man irgendwo sitzen. Ich finde dass hier nicht einmal der Unterschied von { } und /* */ oder // nötig ist. Kommentare stehen bei mir einfach nicht direkt hinter oder im Code. Wenn ich einen Kommentar schreibe, ist dieser häufig mehrzeilig, steht aber auch immer über dem Code, auf den sich dieser Kommentar bezieht. Finde ich also einen Zeilenkommentar, direkt hinter einem end, weiß ich dass es sich um ein Kommentar handelt, der anzeigt was an dieser Stelle endet. Dass das richtige begin zu einem end markiert wird ist finde ich nur eine weitere Unterstützung. Da man nicht immer 4 Seiten zurück scrollen möchte, hat man einfach einen schnelleren Überblick mit den Markierungen. Gruß Der Unwissende |
Re: Vorschlag für Quelltext-Editor
Zitat:
Zitat:
Geht im Menü auf Ansicht -> Templates (evtl. Vorlagen). Dann die zu z.B.: forb erst auswählen, dann rechtsklick und auf Bearbeiten. Dann die untenstehenden Änderungen übernehmen (nur 5. Zeile von unten gezählt):
Code:
...:cat:...
<?xml version="1.0" encoding="utf-8" ?>
<codetemplate xmlns="http://schemas.borland.com/Delphi/2005/codetemplates" version="1.0.0"> <template name="forb" surround="true" invoke="manual"> <script language="Delphi" onenter="false" onleave="false" onvalidate="true"> ValidateForTemplate; </script> <point name="index"> <text> I </text> <hint> loop counter </hint> </point> <point name="val"> <text> 0 </text> <hint> loop low bound </hint> </point> <point name="count"> <text> List.Count </text> <hint> loop high bound </hint> </point> <description> for loop </description> <author> Borland Software Corporation </author> <script language="Delphi" onenter="false" onleave="true"> DeclareVariable(|index|); </script> <code language="Delphi" context="methodbody" delimiter="|"><![CDATA[for |index| := |val| to |count| - 1 do begin |selected||*||end| end;[color=#ff0000][b] // for |index| := |val| to |count| - 1 do[/b][/color] ]]> </code> </template> </codetemplate> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz