Hallo an alle,
in den letzten Tagen habe ich Verschiedenes untersucht und überlegt; zum Dank für Eure Hinweise möchte ich den aktuellen Stand meiner Gedanken nennen.
Zitat von
Phoenix:
Es ging ihm ja eher um die Wahl der
IDE / Sprache, die Datenbank ist erstmal raus.
Naja, eigentlich geht es um die
Gesamtkonstellation NET - IDE - DBMS - DB-Zugriff.
Zitat von
Phoenix:
Wenn Du in Delphi gut bist spricht nichts gegen eine Delphi.NET - Anwendung. Du kannst sogar ggf. Geschäftslogik Deiner alten Applikation in Delphi.NET weiterverwenden.
Delphi.NET OK, aber nicht als
VCL.NET. Aber da ich bei der Realisierung fast bei Null anfange, spielt der Wechsel zu C# auch keine Rolle (danach gibt es keine Rückkehr, aber unter NET ist das unwichtig).
Zitat von
Phoenix:
Der größte Unterschied zwischen .NET 1.1 und 2.0 ist eher im Bereich ASP.NET anzusiedeln und im Bereich Winforms und auch
ADO.NET nicht so dramatisch. Den Hub auf 2.0 kannst Du mit dem neuen
BDS 2007 auch später noch packen. Ich denke Dir wird .NET 1.1 vollkommen ausreichen.
Was mich zur
IDE bringt: Die Turbos sind kostenlos - und für Deine Zwecke wahrscheinlich ausreichend ausgestattet. Also hier Turbo-Delphi.NET.
Wenn ich jetzt loslege, sollte ich sofort das Neueste verwenden und nicht nach einem halben Jahr oder so mich nochmals umstellen. Außerdem gibt es offensichtlich auch einige interessante Dinge, wie DataGridView, DbProviderFactory u.a. bei
ADO.NET.
Also eindeutige Präferenz für NET 2.0 und damit eigentlich kein Delphi mehr.
Zitat von
Alfalge:
Gliederst Du Deine Anwendung wirklich konsequent in mehrere Schichten oder Ebenen, dann bist Du frei in fast allen Belangen: Frontend ist Frontend, die Geschäftslogik ist in einer Ebene gekapselt und darunter liegt eine Schicht, die wie auch immer, die benötigten Daten bereit stellt...
Auf die Gefahr hin, dass ich über das Ziel hinausschiesse: Wenn Du den
SQL-Server zu reinen Datenhaltung nutzt, ohne darin groß mit Stored Procedures rumzumachen, ist fast jeder der Server eine gangbare Alternative.
Ich bemühe mich. Aber wahrscheinlich stelle ich im Laufe der nächsten ein bis zwei Jahre fest, wo überall ich hätte konsequenter sein können/müssen. Auf jeden Fall habe ich (als 'Schüler' von Andreas Kosch u.a.) gelernt, dass möglichst viel Funktionalität in SProc erledigt werden soll.
Zitat von
Alfalge:
Soll das Ganze auch noch ins Internet? (Nur so ein Gedanke). Dann solltest Du in jedem Fall auch noch
MYSQL in Deinen Katalog aufnehmen.
Voraussichtlich niemals übers Internet.
Zitat von
Alfalge:
Da Du mit nicht unbedingt großen Daten arbeiten willst und ich davon ausgehe, daß die meisten Datenbankzugriffe eher lesend sind und ich weiterhin davon ausgehe, dass nicht mehr als 2-5 Benutzer auf der
DB rumhacken, bleibt es dabei:
IB oder Firebird.
Ich weiß nicht, was wirklich große Daten sind, und kann auch noch nicht abschätzen, wie groß die eigentlichen Produktions-DBs werden. Eine
DB (die überwiegend Nachschlage-Funktion hat) umfasst 100 MB unter
IB 7.5. Aber es stimmt sicher, dass sich für meine Anforderungen
IB,
FB und
MSSQL nichts nehmen.
Zum Thema
Datenbank-Unabhängigkeit: In anderen Diskussionen hatten mir Bernhard Geyer, Elvis (u.a.?)
NHibernate als Zwischenschicht zwischen NET und
DB dringend empfohlen. Ich habe das geprüft, werde es aber nicht einsetzen:
- Zum Herstellen der Verbindung benötigt NHib eigene Klassen und Mappings, die offensichtlich manuell erzeugt werden müssen, während sonst 'Assistenten' die Einbindung der Datenstrukturen ins Programm erleichtern.
- NHib verwendet eine SQL-Abart; also müsste ich zusätzliche Sprachelemente lernen: "but use HQL join syntax"
- Die Verbindung zu DataSet, DataGrid(View) und DataTable erfordert neue Klimmzüge.
- NHib bietet noch keine Unterstützung für SProc: "You will find that Sergey is cuurently working on stored procedures support."
Darüber hinaus bietet NET 2.0 durch DbProviderFactory bereits eine Lösung, also noch ein Argument für diese Version.
Also
heutige Zusammenfassung: - Net 2.0
- IDE dafür kann zz. nur #D sein (es muss ja kein MS-Produkt sein).
- Firebird (siehe dazu gezielte neue Diskussion)
- DbProviderFactory
Gibt es noch wesentliche neue Gesichtspunkte dazu? Danke! Jürgen