![]() |
Anzeige:
|
|
|||||||
| Anregungen & Bugreports Für Vorschläge an den Autor Roland und neue XProfan-Versionen |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Sowas wäre wirklich manchmal nicht schlecht:
GetClientRect(%hwnd,bereich#[16])
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
|
|
#2 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
|
Ist das nicht relativ gefährlich wegen Arrays von Bereichen und so?
__________________
XProfan-Profi (XProfan X2+XPIA) http://jacdelad.bplaced.net http://jacdelad.square7.ch |
|
|
|
|
|
#3 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Nö...
|
|
|
|
|
|
#4 (Direktlink) |
|
Forenmaskottchen
![]() Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
|
Also ich halte automatische Deklarationen von Variablen jeglicher Art für sehr gefährlich:
Anstelle einer Fehlermeldung bei einem Tippfehkler würde dann einfach eine neue Variable deklariert und mit einem falschen Wert munter weiter gerechnet! Unter Umständen würde dieser Fehler nie auffallen, etwa weil die Berechnung nur in seltenen Fällen geringfügig abweicht. Und wenn man nicht alle Rechnungen des Programmes mit seinem Taschenrechner nachrechnet, fällt dies vielleicht während der Testphase nie auf, sondern erst im Einsatz beim Kunden, wo es dann z.B. im Falle eines Finanzierungsprogrammes zu enormen wirtschaftlichen Schäden führen kann. Und selbst wenn der Fehler beim Testen auffällt, ist er in einem großen Programm mit zig Prozeduren und tausenden Programmzeilen und mitunter recht langen sprechenden Variablennamen kaum zu finden. Der Aufwand zur Fehlersuche wird riesig. Ich denke, es ist nicht zu aufwändig, sich beim Programmieren vorher Gedanken zu machen und die Variablen bei Bedarf zu deklarieren. Die Möglichkeit, sie beim erstmaligen Gebrauch mit VAR zu deklarieren ist da schon eine große Vereinfachung, ohne bei Tippfehlern neue Variablen zu erzeugen. Gruß Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c http://www.xprofan.de |
|
|
|
|
|
#5 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Oh, schon ziemlich alt der Thread...
War ja auch nur ein Vorschlag. Wenn du das nicht für sinnvoll hälst, geht das schon in Ordnung. Im Nachhinein kommen mir selber auch Bedenken.
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
|
|
#6 (Direktlink) |
|
Weiß worum´s geht
![]() Registriert seit: 08.02.2009
Ort: Berlin
Beiträge: 226
|
Ich habe dazu eine andere Idee, denn automatische Variablendeklaration ist doch eigentlich eine super Sache.
He, habe grad ein Dejavue. Die Gefahr, die Roland anspricht, entsteht nicht unbedingt durch automatische Variablendeklaration, eher durch fehlende Überprüfung, ob eine solche Variable überhaupt genutzt wird, unabhängig von der Stelle der ersten Anwendung. Beispiel: (angenommen, wir hätten "autovardecl") Code:
a&=20 b&=30 c&=40 Obiges könnte also optimiert werden zu Code:
//nichts Und Code:
someApi(bereich#(16)) print berzeich#[0] Ich glaube, so geht (ginge) es.
__________________
Programmieren für Anfänger. Geändert von iF_ (05.06.2009 um 17:57 Uhr) Grund: logische Korrektur |
|
|
|
|
|
#7 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Wäre nicht schlecht, wenn's denn den Vorgang des Compilierens nicht abbremsen würde.
Nur um Himmels Willen keinen Abbruch des Compilervorgangs, nur weil eine Variable zu viel deklariert wurde...
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
|
#8 (Direktlink) | |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Zitat:
Was ist dann in so einem Fall? Code:
WhileLoop 10 Inc variable& EndWhile
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
|
|
#9 (Direktlink) | |
|
Forenmaskottchen
![]() Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
|
Zitat:
1. Eine Variable wird deklariert, aber nie genutzt 2. Einer Variable werden zwar Werte zugewiesen (wie of ist egal), aber auf diese wird nie auslesend zugegriffen. In Delphi kann man hier für jeden dieser Fälle einstellen, ob der Compiler eine Warnung ausgeben soll oder nicht. Ein Compile-Abbruch darf natürlich in keinem Fall erfolgen. (Manchmal hat man ja auch für Test- oder Debugzwecke Variablen deklariert, die dann im fertigen Code wegen des Ausremmens der Debugzeilen nicht benötigt werden.) Natürlich könnte man solche Warnungen auch in den XProfan-Compiler einbauen, was allerdings recht aufwändig wäre, da es derzeit noch keinerlei Code zum Überprüfen von Variablen während des Compilierens gibt. Wobei der Aufwand für Fall 2 deutlich größer ist, als für Fall 1. (Fall 1 könnte durch Erweiterung des bisherigen Variablenoptimierers erledigt werden.) Außerdem wäre natürlich zu fragen: Steht der Aufwand in irgendeinem sinnvollen Verhältnis zum Benefit? So würde es aussehen: - Deutlich verlangsamtes Compilieren - Gefahr der Fehleranfälligkeit derartiger Überprüfungen (siehe den eingebauten Variablenoptimierer, der immer noch im Experimentalstadium ist) + Geringfügig geringerer Speicherverbrauch (unbenutzte Variablen belegen etwas Speicher) + Minimaler Geschwindigkeitszuwachs (unnütze Declare-Befehle und Zuweisungen kosten natürlich etwas Zeit, aber spätestens bei der sowieso notwendigen händischen Optimierung zeitkritischer Routinen würden sie auffallen) Gruß Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c http://www.xprofan.de |
|
|
|
|
|
|
#10 (Direktlink) | |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Zitat:
Ebensowenig sollte ein Compiler (oder auch Precompiler) dem Benutzer einen bestimmten Programmierstil aufzwingen. Ganz egal, wie schlecht der eigene auch sein sollte.
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
|
|
|
#11 (Direktlink) | |
|
Weiß worum´s geht
![]() Registriert seit: 08.02.2009
Ort: Berlin
Beiträge: 226
|
Zitat:
Am besten nimmst Du XPSE. Der lässt dem User die Wahl. Das Feature der Erkennung von unbenutzen Variablen ist in XPSE seither implementiert, ich glaube der Shorty U ist dafür zuständig. Da immer wieder andere Dinge aber interessanter waren, als z.B. das Erkennen von Variablen die nicht abgerufen werden, ist das Feature nicht beschrieben und auch nicht vollumfassend unterstützt. Besonders das nächste XPSE Update wird für alle Profaner sehr interessant werden, aber da ich noch nicht zu viel verraten möchte bleibt nur das ich so ein Zippel raushängen lasse welcher da besagt, dass vlt. der grösste "Nachteil" des XProfan damit Geschichte sein könnte. Daumen drücken, funktionieren tuts schon.
__________________
Programmieren für Anfänger. Geändert von iF_ (17.06.2009 um 18:35 Uhr) |
|
|
|
|
|
|
#12 (Direktlink) | |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
Zitat:
Und solltest du XPIA meinen: Der ist kein Precompiler, sondern ein Inline-Assembler, dessen Precompiling sich auf den Zusammenbau von Hauptsource und Includes beschränkt. Die Assemblerteile folgen sehr wohl einem Standard; sie lehnen sich an XProfan an: XProfan-Prozedur: Code:
Proc Name Parameters Para1&, Para2& Return Para1& EndProc Code:
AsmStart Name Parameters Para1&, Para2& Return Para1& AsmEnd Code:
AsmStart Name(Para1&, Para2&) AsmEnd(Para1&) Wie auch immer: Weder XPSE noch XPIA sind Thema dieses Threads.
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. Geändert von Frabbing (17.06.2009 um 22:31 Uhr) |
|
|
|
|
|
|
#13 (Direktlink) | |||
|
Weiß worum´s geht
![]() Registriert seit: 08.02.2009
Ort: Berlin
Beiträge: 226
|
Kein Grund, aber schau doch:
Zitat:
Zitat:
Zitat:
So wäre ich nur stolz wenn es mir in den Augen mancher gelinge, mit XPSE 'XProfan "besser" zu machen'. Tatsächlich macht XPSE das XProfan kein klitzekleines Stück "besser", denn XProfan "besser" machen kann nur Roland. Ich kann nur wegen der intensiven Programmierung mit XProfan urteilen und soweit ich in der Lage bin mir selbst zu helfen den XPSE programmieren. Hehe mir aber grad einfällt, Roland hat schon einiges übernommen was ich dann wieder ausbauen konnte - so ein bisl hab ichs ja vielleicht doch verbessert das XProfan. *grins* Ne aber im Ernst, steckt ja auch viel Zeit drin die nicht fehldeklariert gehört - das versteht Du und es ist ja nicht nur meine Zeit. Und natürlich war und ist XPIA ein Präkompiler. Dass ist doch das tolle am XProfan, wie eine ohnehin "beste" Programmiersprache aber die man sich auch noch selbst erweitern / programmieren kann. XProfan = Schlaraffenland Du bist ein oller Stenkerkopp!
__________________
Programmieren für Anfänger. Geändert von iF_ (18.06.2009 um 00:48 Uhr) |
|||
|
|
|
|
|
#14 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.089
|
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. Geändert von Frabbing (18.06.2009 um 16:22 Uhr) |
|
|
|
|
|
#15 (Direktlink) |
|
Forenmaskottchen
![]() Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
|
Wie wäre es, wenn Ihr beim Thema bleibt, anstatt Euch den Schädel einzuschlagen?
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c http://www.xprofan.de |
|
|
|
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Tab automatisch | plake | C/C++, Visual C++, Visual C++.NET | 0 | 12.06.2007 15:00 |
| Automatisch Updates bei XP | Werti | Viren-Forum | 15 | 07.03.2007 14:22 |
| Automatisch runterfahren | final_cut | Allgemein | 4 | 10.06.2006 01:40 |
| CD startet automatisch | Barchimes | Allgemein | 2 | 26.10.2005 13:35 |
| IE automatisch zu MS | hunny | Office-Anwendungen | 10 | 29.11.2003 14:55 |