AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Welche Programmiersprache(n) für Web-DB-Projekt?
Thema durchsuchen
Ansicht
Themen-Optionen

Welche Programmiersprache(n) für Web-DB-Projekt?

Ein Thema von urs.liska · begonnen am 4. Mär 2005 · letzter Beitrag vom 5. Mär 2005
Antwort Antwort
Seite 1 von 2  1 2      
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#1

Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 4. Mär 2005, 22:56
Hallo DP,

ich habe das Problem, dass ich einem potenziellen Auftraggeber ein Projekt schmackhaft machen muss und bin nun bei der Überlegung, welche Sprachen/Technologien dafür am besten geeignet wären.
Daher frage ich Euch mal um Eure Meinung bzw. Erfahrungen.

Es geht um eine wissenschaftliche Datenbank, die z.T. für interne Zwecke, z.T. auch nach außen hin zur Recherche im Internet gebraucht werden soll.
Die Anforderungen sehen ungefähr wie folgt aus:

1)
Die Datenbank selbst existiert noch nicht, es gibt lediglich Daten in verschiedensten Formaten von Schreibmaschine bis Word-Dokument (was sich in 40 Jahren so angesammelt hat).

2)
Es müssen Wege gefunden werden, die vorhandenen Daten so automatisiert wie möglich in die Datenbank zu bringen.

3)
Die Daten sollen zukünftig auf verschiedenen Ebenen bearbeitet werden:
a)
"Hausintern", also eine DB-Anwendung mit weitreichender Flexibilität
b)
Teile der Daten sollen über das Internet öffentlich recherchierbar sein.
c)
Evtl. sollen später registrierte Benutzer über das Internet Daten in die DB einfügen können (möglicherweise mit verschiedenen "Rollen", d.h. abhängig von einem Login können verschiedene Bereiche der DB bearbeitet werden).
d)
Von verschiedenen Mitarbeitern an verschiedenen Orten, die sporadisch mit der DB arbeiten und auch nur gelegentlich neue Daten einspielen. Das kann sowohl auf Laptops geschehen als auch auf Arbeitsrechnern, die irgendwo stehen und nicht unbedingt konstanten Internetzugang haben.

Der Server würde wohl irgendwo in einem Uni-Netzwerk laufen, also wahrscheinlich auf einem Unix-OS.
Die hausinternen Mitarbeiter arbeiten auf Mac.
Es ist sicher möglich, auch (mindestens) einen Windows-Rechner im Haus-Netz unterzubringen.


Zu 1) Als Datenbank selbst möchte ich Firebird nehmen, da ich ihn (?) recht gut kenne und er bezüglich der Dimensionen des Projektes sicher gut geeignet ist.

Zu 2)
Das kann ich (auf Grund meiner Erfahrungen) vorläufig nur mit Delphi realisieren, da ich mich damit am besten auskenne.

Zu 3)
a)-c) Dafür erscheint mir eine Webserver-Architektur geeignet.
Vorstellbar wäre eine Lösung mit einer Delphi-Webserver-Anwendung, die die verschiedenen Anwendungsfälle realisiert.
Nachteil: Plattformabhängigkeit.
Wieweit kann ich davon ausgehen, mein Webserver-Programm zumindest auch für Linux zum Laufen zu bekommen (womit ich noch überhaupt keine Erfahrung habe)?
Daher dachte ich an eine PHP-Anwendung, mit der die verschiedenen Programm-Modi auch realisierbar wären.

Durch d) wird das aber schwierig, da ja auf den Laptops und Heim-Rechnern nicht überall PHP-fähige Webserver und DB-Server installiert werden können.

Daher hatte ich die Idee, das ganze (bis auf Punkt 2) auf Java-Basis zu realisieren.

für 3a) denke ich dabei an eine selbständige Java-Applikation, wahrscheinlich dreischichtig.
Für 3b) und c) an eine Browseranwendung mit JavaServerPages. Evtl. könnte auch 3a) so gelöst werden
3d) könnte wiederum mit einer selbständigen Java-Applikation und lokalen Datenbanken (Firebird embedded) sowie Replikationsmechanismen gelöst werden.

Den Vorteil dieses Ansatzes erhoffe ich mir darin, dass ich große Teile der ganzen Geschäftslogik mit Java-Klassen realisieren kann, die in allen verschiedenen Anwendungsformen wiederverwendet werden können (sowohl für die selbständigen Anwendungen als auch für die JSP).

Der Haken daran ist, dass ich mich mit Java nur in den Grundlagen auskenne und kaum praktische Erfahrung habe.
Das ist wiederum nicht ganz so katastrophal, da ich nicht eigentlich als Informatiker gefragt bin, sondern "nur" als Wissenschaftler im relevanten Fach, der gleichzeitig in der Lage ist, die entsprechenden Programme zu entwickeln; Einarbeitungszeit ist also kein k.o.-Kriterium.


Die Fragen sind nun vor allem:
- Ist meine Vorstellung von der Java/JSP-Architektur einigermaßen richtig?
- Oder könnte ich das alles doch genausogut mit Delphi realisieren (wo ich mich eher zuhause fühle)?
- Oder wäre doch etwas wie PHP eine gangbare Lösung?

Danke für Eure Meinungen
Urs

P.S.
Ich bin nicht interessiert an einer ausufernden Diskussion über die "beste" Programmiersprache.
Nur an geeigneten Techniken für meine Aufgabenstellung und meinen Hintergrund
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.640 Beiträge
 
#2

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 4. Mär 2005, 23:15
Klingt alles ganz eindeutig nach ASP.NET (aspx).

1.) Webservices
Damit kannst Du so gut wie jede Kommunikation realisieren. Also sowohl von einer Applikation zur Datenbank als auch von einer Webanwendung selber zur Datenbank: Du musst die Schnittstellen nur einmal machen.

2.) ASP.NET ist Portabel.
Mit dotGNU kannst Du eine in Delphi.NET geschriebene DLL 1:1 auch unter Linux/Unix laufen lassen.

3.) ADO.NET
Bietet Dir die Provider um auf Firebird zuzugreifen.

Du kannst für Anforderung D) auch einen kleinen Winforms - Client schreiben (sollte inzwischen dank dotGNU auch schon unter Linux / Unix laufen) der die Daten - bis er online kommt - lokal in XML ablegt (trotzdem ADO.NET verwendet, Du kannst also den gleichen Code wie beim Server verwenden) und erst dann über die Webservices synchronisiert.


Lass die Finger weg von Java. .NET ist (in egal welcher Sprache) für sowas deutlichst besser geeignet und vor allem performanter und portabler (wenn ich nur an die verschiedenen runtimes / VM's denke *schauder*).
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#3

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 4. Mär 2005, 23:34
JSP's und Servlets sind eine feine Sache. Evtl. auch ein Framework wie Struts.
Delphi und Linux bzw. Unix würde ich vergessen.
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 00:23
Java 1.5 und .Net nehmen sich da nicht sooo viel. Beises Technologien, die aufgrund ihrer VM perfekt an diese Anfordeungen geschneidert sind.
VMs wissen einfach mehr darüber was du da machst, deshlab können sie dich auch auf so geniale Art unterstützen (Reflection!!!).
.Net implementiert aber viele Dinger noch eine Ecke hübscher, sicherer und vor allem performanter. Deshalb bin ich .Net Entwickler und nicht Java-entwickler.
JDO ist aber zum Bleistift verflucht cool. Dafür ist .Nets Reflection einfach genialer.
  Mit Zitat antworten Zitat
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#5

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 10:50
.NEt und Unix, das passt nicht wirklich. Aber wenn du genug Zeit hast, dann kanst du ja mal testen wie gut Mono im Webumfeld wirklich ist. Würde mich echt interessieren.
  Mit Zitat antworten Zitat
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#6

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 11:08
Hallo,

danke erstmal für Eure Kommentare.
Zitat von Phoenix:
Klingt alles ganz eindeutig nach ASP.NET (aspx)...
Lass die Finger weg von Java. .NET ist (in egal welcher Sprache) für sowas deutlichst besser geeignet
Zitat von ak1:
JSP's und Servlets sind eine feine Sache.
Zitat von Robert_G:
Java 1.5 und .Net nehmen sich da nicht sooo viel. Beises Technologien, die aufgrund ihrer VM perfekt an diese Anfordeungen geschneidert sind.
Interessant. So ungefähr hatte ich das befürchtet...

@Phoenix:
Könnte ich das alles mit Delphi (8 oder 2005) realisieren?
Und bin ich dann, was den Webserver betrifft, auf Windows angewiesen? Oder bezieht sich Dein Kommentar zu den DLLs auch darauf (kann ich also mit Delphi.NET erstellte WebServices unter einem Linux-Webserver ausführen)?
Und was ist mit Mac? läuft das auch dort?
(Sorry, ich habe noch keine Vorstellung von .NET)

@Robert_G:
Wo sind denn die - für meine Belange - wesentlichen Unterschiede von Java 1.5 zu den früheren Versionen?
Inwiefern ist für mein Projekt Reflection von Bedeutung?

Danke nochmals
Urs

P.S. @ak1: Ich kenne Mono leider nicht, werde mal schauen, was das ist.
  Mit Zitat antworten Zitat
Benutzerbild von Marcel Gascoyne
Marcel Gascoyne

Registriert seit: 18. Nov 2003
Ort: Uetersen
271 Beiträge
 
Delphi 2005 Architect
 
#7

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 11:18
Deine Problembeschreibung deckt sich ziemlich mit den Möglichkeiten die ein Dokumentenmanagement System bietet.

Ich bin vor kurzem auf ein freies Dokumentenmanagement System gestossen. Das System verwendet Java und den Tomcat Application Server. Schau es Dir doch einfach mal an: Contineo.

Gruß,
Marcel
Marcel Gascoyne
Der Fehler sitzt immer vor der Tastatur
  Mit Zitat antworten Zitat
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#8

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 11:54
Hallo Marcel,

danke für den Tipp. Aber das trifft nicht meine Aufgabenstellung. Vielleicht habe ich mich unklar ausgedrückt, aber es geht nicht um die Verwaltung von Dokumenten.

Die Informationen sind zwar bislang in zahllosen Dokumenten gespeichert. Aber es geht nicht darum, Dokumente zu verwalten, sondern die Inhalte. Und die gehören eindeutig in eine Datenbank (das ist sicher).
Ich muss also nicht Dokumente in der Datenbank speichern, sondern den Inhalt auslesen und in eine DB eintragen. Das ist alles andere als trivial, aber ich denke, es ist machbar. Nicht vollautomatisch, aber in der Art einer weitestmöglichen (am besten lernfähigen) Unterstützung von Menschen, die die Übertragung letztlich überwachen.
Das ist aber der Teil, den ich einfach in Delphi realisieren würde. Das ist letztlich eine ganz klassische Datenbankanwendung.

Urs

P.S. aber contineo könnte für mich anderweitig höchst interessant sein. Also nochmals danke für den Tipp!
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 12:17
Nochmal was zu .NET unter anderen Plattformen:
Ich hab zwar damit noch keine Erfahrungen, aber es gilt als allgemeiner Tenor, dass ASP.NET und Webforms unter Mono bereits vollständig implementiert und lauffähig sind.
Natürlich darf man dann keine OS-spezifischen und exotischen APIs des .NET-Frameworks aufrufen...
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#10

Re: Welche Programmiersprache(n) für Web-DB-Projekt?

  Alt 5. Mär 2005, 13:29
Wenn du Inhalte verwalten möchtest, dann brauchst du auch eine gute suchfunktion, da bietet sich Apache Lucene an, ein Framework für Suchmaschinen. Java hat halt den Vorteil, dass es sich in großen und kleinen Projekten bewährt hat und für so gut wie alle Probleme freie Frameworks (Klassenbibliotheken) zur Verfügung stellt (siehe Apache Softwarefoundation). Wenn du Delphi.NET (ASP.NET) verwenden möchtest
, dann nur auf Windows-Servern.


Gruß

P.S. Reflection wirst du kaum selbst anwenden müssen, das wird von diversen Klassen automatisch verwendet.
P.P.S. Java 1.5 bietet ein paar Neuerungen die aber für einen Anfanger nicht sooo Weltbewegend sind, ich verwende selbst noch Version 1.4.2
  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 00:05 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