AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi STL Standard Delphi Library für Delphi Win32
Thema durchsuchen
Ansicht
Themen-Optionen

STL Standard Delphi Library für Delphi Win32

Ein Thema von radekj · begonnen am 17. Dez 2006 · letzter Beitrag vom 18. Dez 2006
Antwort Antwort
Seite 1 von 2  1 2      
radekj

Registriert seit: 17. Dez 2006
22 Beiträge
 
#1

STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 14:50
Hallo,

seit 1998 gibt es die freie Standard Delphi Library für Delphi Win32 "DeCAL" (gohostet by sourceforge),
ein muss für jeden professionellen Delphi Programmierer.

Sie ist praktisch ein Abbild der STL für C++ mit Containern, Interators etc.

Sie beschleunigt die Entwicklumg jedes Projektes und verbessert die Lesbarkeit des Codes.

ciao
Radek
  Mit Zitat antworten Zitat
Benutzerbild von GimbaR
GimbaR

Registriert seit: 17. Apr 2004
Ort: Weltmetropole Rostock ;)
134 Beiträge
 
Delphi 2006 Professional
 
#2

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 15:59
Aha, und wozu is sowas gut und wie beschleunigt es die Entwicklung jedes Projektes oder verbessert die Lesbarkeit des Codes?
Jonas
Bei dem Tempo ist es nur noch eine Frage der Zeit bis SSchäuble verlangt allen deutschen Bürgern ein Halsband zur ständigen Überwachung zu verpassen...
  Mit Zitat antworten Zitat
radekj

Registriert seit: 17. Dez 2006
22 Beiträge
 
#3

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:10
Beispiel:
Delphi-Quellcode:
procedure Test();
var
DummeFragen: DMap;
begin
DummeFragen := DMap.Create;
DummeFragen.purPair('Frage1', 'aaa...');
DummeFragen.purPair('Frage2', 'bbb...');
DummeFragen.purPair('Frage3', 232); <- Zahl !!!
DummeFragen.purPair('Frage4', 'ccc...');

//finde und zeige Frage 2 (string)
ShowMessage( getString(DummeFragen.locate(['Frage2'])) );

//finde und zeige Frage3 (eine Zahl !!!)
ShowMessage(IntToStr( getInteger(DummeFragen.locate(['Frage3'])) ));

DummeFragen.Free;
end;
Versuche das mit TList zu machen !!!


oder etwas komplexer:

We have two classes of students. Some students can be in both classes. We want to find
every student whose grade is above 80 in both classes, making sure that we remove
duplicates (because students might be in both classes). Then we want to sort the students by
their names, in reverse alphabetical order. Here’s the code:
Delphi-Quellcode:
Procedure test;
 Var class1, class2 : DMap;
 GoodStudents : DArray;
 I : Integer;
 Iter1, Iter2 : DIterator;
Begin

 // fill our classes with random students and grades
 class1 := DMap.Create;
 class2 := DMap.Create;

 for I := 1 to 25 do
 begin
  class1.putPair([Random(100), RandomName]);
  class2.putPair([Random(100), RandomName]);
 end;

 goodStudents := DArray.Create;
 iter1 := class1.lower_bound([80]);
 iter2 := class2.lower_bound([80]);
 setIntersectionIn(iter1, class1.finish, iter2, class2.finish, goodStudents.finish);
 reverse(goodStudents);
 PrintContainer(goodStudents);

 FreeAll([class1, class2, GoodStudents]);
end;
ciao
Radek
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:18
Hi radekj, du kannst deine Beiträge auch editieren, einen neuen aufmachen ist erst nach 24 Stunden ein Muss..
  Mit Zitat antworten Zitat
Benutzerbild von GimbaR
GimbaR

Registriert seit: 17. Apr 2004
Ort: Weltmetropole Rostock ;)
134 Beiträge
 
Delphi 2006 Professional
 
#5

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:36
Ja, das sieht wirklich hilfreich aus
Da hätte ich auch gleich mal ne Frage: Kann ich auch überprüfen von welchem Typ die daten sind? Quasi anstatt
getInteger schreib ich dann
if IsInteger(['Frage3'] then getInteger(...

PS: Es gibt keine dumme Fragen, nur...
Jonas
Bei dem Tempo ist es nur noch eine Frage der Zeit bis SSchäuble verlangt allen deutschen Bürgern ein Halsband zur ständigen Überwachung zu verpassen...
  Mit Zitat antworten Zitat
radekj

Registriert seit: 17. Dez 2006
22 Beiträge
 
#6

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:37
Ja.

Aber das ist nur eine von viellen Besonderheiten von STL das man Typen in Conteiner einfach mischen kann,
es wird über "array of const" und "TVaRec" Typen gemacht.

Ich behaupte das Delphi + STL + LOKALE SQL-Engine das mächtigste Entwicklumgs-Umgebung ist.

radek
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:47
Zitat von radekj:
seit 1998 gibt es die freie Standard Delphi Library für Delphi Win32 "DeCAL" (gohostet by sourceforge),
ein muss für jeden professionellen Delphi Programmierer.
Das Projekt sieht für mich recht tot aus. Das letzte Release stammt aus dem Jahr 2000, in dem auch die letzte Änderung im CSV gemacht wurde.
  Mit Zitat antworten Zitat
radekj

Registriert seit: 17. Dez 2006
22 Beiträge
 
#8

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 16:52
Die DeCAL-STL für Delphi war 1998 fertig entwickelt und war bis ca. 2000 ein komerzielles Produkt.
Also es gab nichts zu tun, sie ist seit 1998 stabil.

Das OpenSource Projekt hat an der DeCAL nichts gemacht.

Ich benutze Sie seit 1998, und ich lebe von Programmierung !

Radek
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#9

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 17:09
Zitat von radekj:
Das OpenSource Projekt hat an der DeCAL nichts gemacht.
Das ist ja das Problem. 6 Jahre in dieser Branche sind eine halbe Ewigkeit. Und wenn ich so über den Code blättere fallen mir da schon ein paar Stellen auf, die man lieber anders lösen sollte (abgesehen vom in Pascal/Delphi unüblichen lowerCamelCase). Schon alleine die vielen globalen Funktionen (getString(), getCurrency(), ...) würden mich abschrecken. Die würden besser in einen Namespace gehören und nicht wie wild im Unit Namespace herumliegen. Bei getString und Konsorten wäre das einbauen in DInterator sogar besser. Das UniqueString() im getString() bremst auch nur aus. Wenn der Aufrufer den String in einen PChar umwandelt möchte, sollte er sich selbst darum kümmern, dass der String unique ist was er sonst ja auch muss. Das einfach mal prinzipiell durchzuführen ist nichts anderes als eine unnötige Geschwindigkeitsbremse.

Und das nur beim schnellen drüberschauen.
  Mit Zitat antworten Zitat
Thorben77

Registriert seit: 22. Okt 2004
359 Beiträge
 
#10

Re: STL Standard Delphi Library für Delphi Win32

  Alt 17. Dez 2006, 17:15
Zitat von radekj:
Hallo, seit 1998 gibt es die freie Standard Delphi Library für Delphi Win32 "DeCAL" (gehostet by sourceforge),
ein muss für jeden professionellen Delphi Programmierer.
Wie wärs mal mit einem Link? Ich schaff es irgendwie nicht, das Projekt bei Sourceforge zu finden
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz