AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Träume, Wünsche und Wahnvorstellungen...
Thema durchsuchen
Ansicht
Themen-Optionen

Träume, Wünsche und Wahnvorstellungen...

Ein Thema von himitsu · begonnen am 16. Mai 2011 · letzter Beitrag vom 3. Jun 2013
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 7. Apr 2012, 14:07
Oh, ich wusste nicht, dass man auch Konstanten auswerten kann...
Thom hat mir schon alle meine Träume erfüllt.

Delphi-Quellcode:
const // global definiert, aber gut praktikabel so
  CompileModeFree = 0;
  CompileModeLight = 1;
  CompileModeStandard = 2;
  CompileModeProfessional = 3;
  CompileMode = CompileModeLight;

...

procedure TdmlStahliSport.MIPlayerStatistcsClick(Sender: TObject);
{$IF CompileMode > CompileModeFree}
var
  PanelPlayer: TodPanelPlayer;
{$IFEND}
begin
{$IF CompileMode > CompileModeFree}
  if PopupMenuPlayer.PopupComponent is TodPanelPlayer then
    begin
      PanelPlayer := PopupMenuPlayer.PopupComponent as TodPanelPlayer;
      PanelPlayer.odPlayer.Person.ExportVPEGamesOpen;
      PanelPlayer.odPlayer.Person.ExportVPEGames;
      PanelPlayer.odPlayer.Person.ExportVPEGamesClose;
    end;
{$IFEND}
end;
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#2

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 7. Apr 2012, 15:04
@Delphi-Laie:

Na ja - das "Erkennen", ob ein Feature zur Verfügung steht, besteht ja darin, daß der Compiler anfängt, mehr oder weniger lange Fehlerlisten zu produzieren. Viel schlimmer ist meines Erachtens der Umstand, daß manche Dinge bei älteren Compilerversionen anders oder (noch) fehlerhalft implementiert ist. Das betrifft zum Beispiel die richtige Auswahl überladenen Methoden oder die Behandlung von Variant-Werten. Will (oder muß) man abwärtskompatibel sein, führt meiner Meinung nach nichts am exzessiven Gebrauch von Compilerschaltern vorbei, wobei ja leider nicht alle älteren Versionen die Variable CompilerVersion unterstützen. Damit wäre es dann einfach, Delphi XE4 schon jetzt zu erkennen:
Delphi-Quellcode:
  {$IF CompilerVersion=25.0}
  ShowMessage('Jetzt habe ich es endlich!');
  {$IFEND}

@stahli:

Das freut mich!
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.584 Beiträge
 
Delphi 12 Athens
 
#3

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 7. Apr 2012, 16:12
Die Konstante CompilerVersion ist bestimmt schon recht lange vorhanden,
aber die Conditional-Expressions ({$IF ...} ) gibt es nicht überall. (in D4 noch nicht, in D7 schon ... aber alles Ältere als D7 wird einfach ignoriert)

Ich würde mir ein {$IFOPT ...} für längere Schalternamen wünschen. (nicht nur für die Einbuchstabigen mit + oder -)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 7. Apr 2012 um 16:20 Uhr)
  Mit Zitat antworten Zitat
schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#4

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 15. Apr 2012, 17:44
Was ich mir wünschen würde und was für mich ein Kaufargument wäre:

- aussagekräftigere integrierte Hilfe mit viiiieeeel mehr Beispielprogrammen zum Hilfethema.

- kommentierte Demoprogramme

- mehr Projektvorlagen zu gängigen Softwareproblemklassen

- Schlankere IDE, die dann schneller startet und Komponenten dann nachlädt, wenn ich sie auf dem Formular platziere, um die IDE schlank zu halten

- güntigeren Preis .)
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 12. Mai 2013, 10:53
Es wäre schön, wenn die IDE Methoden im Implementationsabschnitt immer in der gleichen Reihenfolge halten würde, wie sie in den Klassendefinitionen im Interfaceabschnitt definiert werden.
Wenn man dort die Reihenfolge ändert sollte dies auch im Quelltext angepasst werden (optional auf Shortcut).
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 10:34
Ich wünsche mir die If-Funktion:
Delphi-Quellcode:
// fiktive Berechnung als Beispiel
Zinssatz := (if premiumkunde then Basiszins*0.9 else Basiszins+0.75) - rabattzins;
Und natürlich gleich noch die Case-Funktion dazu:
Delphi-Quellcode:
ShowMessage('Sie haben '+
  (case idx of 1:'Nichts' 2:'Grass' 3:'Wasser' 4:'Felsenelse 'unbekannt') + 'angeklickt');
Man beachte dass man immer den Else-Teil schreiben muss; andernfalls wäre es ein Fehler.
fork me on Github
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.216 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:00
Das erste ist doch genau der ternäre Operator aus C!

Code:
zinssatz = (premiumkunde ? Basiszins*0.9 : Basiszins+0.75) - rabattzins:
Ich habe ihn in den ersten Tagen Delphi auch vermisst, mittlerweile bin ich wirklich froh, den nicht mehr sehen zu müssen. Lieber ein, zwei Zeilen mehr. Dafür erkennt man später in der Hälfte der Zeit, was im Code vor sich geht.
  Mit Zitat antworten Zitat
knochen

Registriert seit: 26. Aug 2009
81 Beiträge
 
Delphi 2006 Professional
 
#8

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:00
Ich wünsche mir die If-Funktion:
Delphi-Quellcode:
// fiktive Berechnung als Beispiel
Zinssatz := (if premiumkunde then Basiszins*0.9 else Basiszins+0.75) - rabattzins;
Gibt's schon. Such mal nach der IfThen-Funktion. Die existiert in überladener Form gleich in mehreren Units.

Und natürlich gleich noch die Case-Funktion dazu:
Delphi-Quellcode:
ShowMessage('Sie haben '+
  (case idx of 1:'Nichts' 2:'Grass' 3:'Wasser' 4:'Felsenelse 'unbekannt') + 'angeklickt');
Man beachte dass man immer den Else-Teil schreiben muss; andernfalls wäre es ein Fehler.
Auch das kann man leicht selbst schreiben.
Delphi-Quellcode:
function MyCase(idx: Integer; Values: Array of Integer): Integer;
function MyCase(idx: Integer; Values: Array of String): String; overload;
...etc.
Ggf. kann man noch einen Else-Wert übergeben, wenn gewünscht auch als optionalen Parameter.
A fool with a tool remains a fool.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#9

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:49
Gibt's schon. Such mal nach der IfThen-Funktion
Ich weiss.
Aber die IfThen-Funktion (oder auch Iff-Funktion) hat den grossen Nachteil, dass alle Argumente ausgerechnet werden, bevor die Funktion aufgerufen wird.
Delphi-Quellcode:
// berechnet leider beide innere Funktionen
erg := IfThen(Juliaset, CalcJulia(...), CalcMandelBrot(...));
Man bräuchte schon Complier-Magic © damit nur ein Zweig ausgewertet wird.
Das Gleiche gilt natürlich auch für das MyCase() oder CaseString() und die Varianten davon.
fork me on Github
  Mit Zitat antworten Zitat
knochen

Registriert seit: 26. Aug 2009
81 Beiträge
 
Delphi 2006 Professional
 
#10

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 12:56
Zitat von sx2008:
Aber die IfThen-Funktion (oder auch Iff-Funktion) hat den grossen Nachteil, dass alle Argumente ausgerechnet werden, bevor die Funktion aufgerufen wird.
Im letzten Jahrtausend, als die Rechner 1000 mal langsamer waren und tausend mal weniger Speicher hatten als heute, hätte mich dieses Argument bestimmt beeindruckt. Zu Erinnerung: das ist gerade mal 20 Jahre her.
A fool with a tool remains a fool.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:03 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