AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Womit zukunftssichere Datenbankanwendungen erstellen?
Thema durchsuchen
Ansicht
Themen-Optionen

Womit zukunftssichere Datenbankanwendungen erstellen?

Ein Thema von Matze · begonnen am 4. Dez 2010 · letzter Beitrag vom 5. Dez 2010
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:02
Hi zusammen,

eine Frage aus reinem interesse:
Womit sollten heutzutage Datenbankanwendungen geschrieben werden, die zukunftssicher sind?
Wichtig wäre, dass ohne große Kosten kommerzielle Software damit geschrieben werden kann. Ich kenne mich mit den Lizenzen da nicht so gut aus. Beispielsweise, ob man das kostenlose Visual Studio Express kommerziell nutzen darf.

Programmiersprachen/Frameworks

Zum Einen gibt es da verschiedene "Umgebungen" wie:

- .NET-Framework
- Win32
- Win64

Dann natürlich Programmiersprachen:

- Delphi
- C++
- C#, Visual C++, Visual Basic, J# (alles für .NET)
- Java
- ...

Und dann noch verschiedene Frameworks oder was das genau ist

- WinForms (veraltet)
- WPF (neuer als WinForms, doch vermutlich auch bald veraltet)
- Silverlight (glaub das ist noch recht aktuell, aber zukunftssicher?)
- LightSwitch (momentan in der Betaphase, aber wer weiß, wie lange es bestehen wird)

Gerade bei den ganzen MS-Entwicklungen wie den letzten genannten Punkten stehe ich sehr kritisch gegenüber. Diese sind dermaßen kurzlebig, dass ich bei soetwas vorsichtig wäre.
Die klassische Programmiersprache C++ besteht seit Jahrzehnten und wird heute immer noch gerne eingesetzt. Daher sehe ich hier auch in den nächsten Jahrzehnten so schnell kein Ende dieser Sprache. Ich weiß jedoch nicht, wie es hier mit der grafischen Oberfläche aussieht. Wenn das so ein Krampf ist wie bei Java, wäre das schlecht.
Aber es gibt viele professionelle Anwendungen mit ansprechenden GUIs, die in C++ geschrieben sind.

Datenbanken

Jo, da gibt es auch nicht weniger Auswahl:

- MySQL
- MSSQL
- Firebird
- Access
- ...

Welche Programmiersprache mit den verschiedenen Datenbanken umgehen kann, muss dann natürlich auch noch untersucht werden.
Das Ganze sollte unter Windows laufen, aber es wäre sicher kein Fehler, wenn es zusätzlich leicht nach Linux portierbar wäre.

Ich bin sehr auf sachliche Beiträge gespannt und möchte kein Diskussionen, die aus dem Ruder laufen.

Grüße
Matze

Geändert von Matze ( 4. Dez 2010 um 15:05 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#2

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:13
Beispielsweise, ob man das kostenlose Visual Studio Express kommerziell nutzen darf.
Darf man, steht in den AGB.

Die Kombination Visual Studio 2010 Professional, C# und MSSQL 2008 läuft bei mir eigentlich ordentlich. Mit der Expressversion kommst du Datenbankmäßig imho nicht weit...

Ich wäre momentan vorsichtig, mich auf ein bestimmtes grafisches Framework festzulegen. WPF ist sicherlich nicht am Aussterben, auch Microsoft hat die Aussage mittlerweile revidiert. Windows Forms wird momentan immer stärker vernachlässigt. LightSwitch ist imho eine Mischung aus Access und Visual Foxpro. Die SQL-Abfragen sind grottig, beim 3-Schichten-Modell wird (momentan) zwingend ein IIS benötigt, ebenso ein DBMS von Microsoft. Ich arbeite damit und werde jedesmal leicht grünlich im Gesicht. Es ist halt doch mehr für den versierten Abteilungsleiter, der sich seine Arbeitnehmerverwaltung zusammenbauen will.

Momentan scheint es für mich, als wolle Microsoft immer mehr in die Cloud gehen bzw. ins Web. Ob HTML 5 den heiligen Gral darstellt... Ich weiß nicht. Silverlight ist ein guter Ansatz, Beta 5 kommt im Frühjahr 2011. Momentan würde ich auf WPF und/oder Silverlight setzen. Allerdings ist die Lernkurve massiv. Frust ist vorprogrammiert. Wenns dann aber funktioniert, isses geil.

DBMS? Hmm. Von Oracle würde ich die Finger lassen, Microsoft kocht sein eigenes Süppchen. Ggf MySQL, da ist nur der Support kostenpflichtig.
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

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

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:19
Man sollte sicherlich als erstes klären, wo die DB laufen soll und wie darauf zugegriffen werden soll (Desktop, Internet, Browser).
Außerdem ist sicher wichtig wie groß und komplex die DB werden muss.

Ich denke, so pauschal kann man da kaum sinnvoll etwas zu sagen...
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:21
Danke für deinen Beitrag Daniel.

Dann gehe ich noch eine Stufe weiter, wo ich gerade "Cloud" lese.
Die Anwendungen müssen eigenständig auf einem PC lauffähig sein, der nicht ans Internet angeschlossen ist.

Wenn es eine Möglichkeit gibt, so eine Anwendung zusätzlich über den Browser bedienen zu können, dann ist das evtl. nett aber (noch) nicht erforderlich.

Edit @Stahli: Auch dir dankeschön. Es können schon einige Millionen Datensätze sein. Also große Datenbanken sollten ohne Einschränkungen verwendet werden können. Die Anwendungen selbst laufen auf einem PC und die Datenbank muss nicht unbedingt an dem PC laufen. Diese könnte auch auf einem externen Server oder einem zweiten Rechner liegen.

Geändert von Matze ( 4. Dez 2010 um 15:23 Uhr)
  Mit Zitat antworten Zitat
Insider2004
(Gast)

n/a Beiträge
 
#5

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:21
MS ist immer gross im Einführen on neuen Dingen. Leider sind sie dann wie ein kleines Kind. Das Spielzeug ist langweilig und wird in die Ecke geworfen sprich vernachlässigt und nicht mehr gepflegt. Sie lassen dann die Entwickler im Regen stehen. Siehe Visual Basic Native oder J# oder Silverlight. Alles mehr oder weniger tot. Es gibt bestimmt noch 20 andere Techniken, die ich zum Glück nie gelernt/gekauft habe und vergessen habe!!! Das Einzige, was bei MS Bestand hat ist die Win32 API.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:25

Womit sollten heutzutage Datenbankanwendungen geschrieben werden, die zukunftssicher sind?
am besten gar nicht. Schau dir nur mal die letzten 10 Jahre an was aus VB (nicht .Net), Kylix und Interbase wurde.


Wichtig wäre, dass ohne große Kosten kommerzielle Software damit geschrieben werden kann. Ich kenne mich mit den Lizenzen da nicht so gut aus. Beispielsweise, ob man das kostenlose Visual Studio Express kommerziell nutzen darf.
Was soll das? Die 1000€ für eine IDE bzw. 5.000-7.500€ (einfach mal ins blaue geschätzt) für einen Arbeitsplatz sind Peanuts! Was ins Geld geht sind die Personalkosten! Diese kann man mit sinnvollen Arbeitsumgebungen zwar nicht reduzieren aber wesentlich mehr herausholen! Wenn du "billig" programmieren willst, dann verwende [Übertreibung] Turbo Pascal 5.5 oder Vb 6.0 [/Übertreibung] Oder verwende Notepad und einen Kommandozeilencompiler. Sehr billig, die Entwicklung wird aber ewig dauern....

Programmiersprachen/Frameworks
Kommt auf deinen Geschmack und auf die vorhandenen Ressourcen an. Wenn du ein großes Entwicklerteam hast, die an einer Anwendung arbeiten müssen, ist .NET durch das Assembly-Konzept jeglichen Win32-Sprachen im VOrteil. Weiterhin wirst Du einfach wesentlich schneller genügend Mitarbeiter finden.


- WPF (neuer als WinForms, doch vermutlich auch bald veraltet)
OT:
??? Habe ich was nicht mitbekommen? In den letzten WOchen wird als Gerücht in div. Blogs immer von Silverlight gesprochen, das eingestellt werden soll, aber warum denn WPF? Dann kann Microsoft mit .Net endgültig einpacken....


Datenbanken
Wie bei den Programmiersprachen: Es kommt darauf an. Div. Firmen lassen kein Oracle auf ihre Server, andere keine MS SQL usw. Das ändert sich aber auch immer i.d.R: mit dem Personalwechsel bei Systemadmin Da werden schon mal eben kurz eine Serverfarm mit funktionierendem Linux-Mailserversystem auf Exchange umgestellt

Was wichtig wäre:
* Die Businnesslogik sollte getrennt von allem erarbeitet werden, d.h. Einsatz einer entsprechenden Beschreibungssprache (UML) um bei einem ggf. notwendigen Systemwechsel zumindest das Businessmodell retten zu können.
* schlägt in die selbe Kerbe: Schichtenaufbau der Anwendung, d.h. die Schichten GUI, Businessmodell und Datenbank greifen nicht direkt aufeinander zu sondern über definierte Schnittstellen (da gibts auch jede Menge Patterns dazu). Damit lässt sich zum einen die Datenbank relativ "einfach" austauschen, zum anderen gäbe es ggf. die Möglichkeit eine andere GUI anzusprechen (z.B. mit einem Delphi-BOM eine .NET Oberfläche "bedienen")
* Vergiss auf übermorgen zu schauen: Du weißt nicht mal was morgen passiert. Meine Bekannten, die sich in der Branche auch auskennen, machen mich immer dumm an: Wer mit Delphi programmiert, der gehört vor Gericht. War aber vor 10 Jahren auch schon so. Je vorsichtiger Du irgenwelche Entscheidungen angehst, je länger (und teurer) wird im Endeffekt deine Entwicklung werden. Das heißt jetzt nicht renn blind durch die Gegend, sondern es gehört einfach ein gesundes Maß dazu. Und Fehlentscheidungen gehören hier wie überall einfach dazu....

GRüße
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

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

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:28
Wenn es eine Möglichkeit gibt, so eine Anwendung zusätzlich über den Browser bedienen zu können, dann ist das evtl. nett aber (noch) nicht erforderlich.

Edit @Stahli: Auch dir dankeschön. Es können schon einige Millionen Datensätze sein. Also große Datenbanken sollten ohne Einschränkungen verwendet werden können. Die Anwendungen selbst laufen auf einem PC und die Datenbank muss nicht unbedingt an dem PC laufen. Diese könnte auch auf einem externen Server oder einem zweiten Rechner liegen.
Dann werden Dir wohl 90% aller DP-User (und ich) zu Firebird raten (zumindest würde ich damit mal anfangen). Zugriffsmöglichkeiten von Delphi aus gibt es dann mehrere (am einfachsten IBX).
Ein Tool wie IBExpert vereinfacht die Organbisation der Datenbanken.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:43
...MSSQL 2008 ...Mit der Expressversion kommst du Datenbankmäßig imho nicht weit...
Wenn das auf MSSQL bezogen ist, kann ich das nicht teilen.
DBMS? Hmm. Von Oracle würde ich die Finger lassen, Microsoft kocht sein eigenes Süppchen. Ggf MySQL, da ist nur der Support kostenpflichtig.
Wie bitte? Wenn Zukunftssicher, dann PostGres, MSSQL oder Oracle. Auf jeden Fall entweder eine Datenbank, die es schon ewig gibt, eine von einem sehr großen Anbieter, der mit der DB ordentlich Schotter macht, oder alles zusammen. Da ist ja wohl Oracle und MSSQL ganz weit vorne. Andere natürlich auch.

Ansonsten würde ich persönlich C#, aber ohne dickes Framework verwenden und der DB-Anbindung ein hohes Abstraktionsniveau spendieren, d.h. so vieles wie möglich (und sinnvoll) in 'Stored Procedures' packen, die entweder im SQL-Server oder in einem Applikationsserver ausgeführt werden.

Dann würde ich mir noch überlegen, wie lange die Anwendung den leben soll. Wir reden ja hier nicht von 100 Jahren, sondern von vielleicht 10-15. Wenn Du heute in C# entwickelst, bist du auf der sicheren Seite. Mit Fortran und Cobol übrigens auch, das gibt es alles noch und wird es immer geben. Auch wenn Du den Riesenfehler gemacht hättest, und vor 10 Jahren in VB entwickelt hättest, wärst du heute nicht am Ende. Man muss ja wohl nicht immer die neuesten Compiler kaufen.

Eine Anwendung von mir ist in D6 geschrieben und da der Kunde die Migration zu einem modernen Delphi nicht bezahlen will, bleibt es dabei. WTF. Dem Programm ist es doch nicht peinlich, das es mit einer alten IDE entwickelt wurde.

Was ich garantiert nicht und auf keinen Fall machen würde, ist:
* Irgendwelchen neumodischen Schnickschnack
* Irgendwelche OpenSource oder Freeware-Komponenten (selbst bei einer DB wäre ich zurückhaltend)
verwenden.

Nachhaltig = Konservativ und Simpel.

Du kannst ja jederzeit eine total abgefahrene GUI rüberstülpen. Da holt man sich ein paar Freaks, die einem die GUI designen und tauscht die alle paar Jahre aus. Im Hintergrund werkelt, wenn gut geschrieben, immer die gleiche gute alte Engine.

Macht MS doch genau so und verdienen sich einen Wolf (Siehe Word, nur das da bis vor Kurzem keine 'gute alte Engine' werkelte, die gut geschrieben war).
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:45
Da wird in die nächsten Jahre "interessant" inwieweit MySQL von Oracle "an die Leine" genommen wird. Die günstiges Lizenzversion wurde von Oracle schon gestrichen so das man hier schon eine verdreifachung der Kosten hat. Inwieweit die Embedded/libmysql-Kosten bei Closed-Source steigt weis ich nicht. War ja schon vor Oracle-Zeiten mit 30 k€/a nicht gerade günstig für kleinere Firmen
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

AW: Womit zukunftssichere Datenbankanwendungen erstellen?

  Alt 4. Dez 2010, 15:53
Was soll das? Die 1000€ für eine IDE bzw. 5.000-7.500€ (einfach mal ins blaue geschätzt) für einen Arbeitsplatz sind Peanuts! Was ins Geld geht sind die Personalkosten!
Ich meinte nicht die einmaligen Kosten, sondern eher die laufenden (Lizenzgebühren für Datenbanken, die Rechnerbezogen sind o.ä.)

* Vergiss auf übermorgen zu schauen: Du weißt nicht mal was morgen passiert.
Muss man heutzutage aber, wenn man nicht alle paar jahre die Anwendungen in irgendwelche SPrachen portieren möchte.
Ziel ist es, eine Art Standard in der Firma zu schaffen, der zukünftig genutzt werden kann.

z.B. eine Klasse zum Lesen und Schreiben in die Datenbank, eine zum Durchsuchen der Datenbank etc.

Wenn die Klassen mal ausgereift sind, möchte ich die auch in 10 Jahren noch nutzen können im Idealfall.
Das können natürlich auch DLLs werden, die angesprochen werden können.
Alles andere verursacht sonst immense Kosten. Also die Zukunft muss ich im Auge behalten.

@Mark: Zu C# tendiere ich momentan auch oder zu C++. Bei MSSQL muss ich mir die Lizenzkosten einmal ansehen. Momentan wird Access verwendet und wenn die Kosten nicht viel teurer sind, wäre das sicherlich in Ordnung.

Wie kann man denn eine GUI "rüberstülpen"?
Du meinst, man trennt natürlich Logik von der GUI und bei einer neuen GUI werden entsprechende Klassen für die Datenverarbeitung aufgerufen und eben an neuen Controls angezeigt?
  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 20:37 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