Solche Vergleiche hinken selbstverständlich. Mit was willst du es vergleichen?
- mit .NET/J2EE
- mit RDBMS (SQL und so)
- mit Delphi
- mit C++
?
Der große Vorteil von Lotus Notes ist imho, dass es eine all-in-one Lösung für Business Colaboration Computing ist. Business Colaboration Computing ist das, wo Verzeichnissdienste, rollenbasierte Security, Mailing, Persistenz, Workflows, Integrierbarkeit von Standardsoftware wie MS-Office oder Relationale Datenbanken wichtig sind.
Natürlich hat man das heute auch alles und meiner Meinung nach an vielen Stellen besser mit Java oder MS.NET. V.a. bei Java muss man sich dann aber in der Realität doch mit vielen verschiedenen Tools/Vorgehensweisen /Details/ Konzepten / Spezifikationen auskennen (oder nicht ganz ahnungslos wirken).
Natürlich gibt es auch das eine oder andere Problem:
in dieser Reihenfolge:
- keine Transaktionen
- Iris.Lotus.IBM ist Monopolist in Sachen .nsf Format
- keine klare Trennung zwischen Datenbank / Businesslogik und v.a. UI-Logik (führt bei größeren Projekten zu Verlust von Übersicht).
- eine Menge von gotchas in dieser historisch gewachsenen Plattform.
- kein "srong typing" (bei Programmiersprachen kann man ja über loose typing diskutieren, aber bei Datenbanken???)
- um sql ist einfach mehr gebaut worden (Theorien, Tools, Plattformen, Reporting-Tools, Zugriffsmöglichkeiten, Bücher, etc.)
- schlechte XML-Unterstützung (z.B.: kein JAXP-kompatibler Parser in Java).
- SQL-DBs sind skallierbarer (gilt für: Datenmengen, Datendurchsatz, sophistication der Nutzung: Datamining/Datawarehouse).
- Schwierigkeiten Constraints für Daten zu definieren (kann man vielleicht mit Validierungsformeln im Frontend hinbekommen. Im Backend werden die Daten aber gesetzt wie man will).
- Notes Leute entwickeln eine Art Happy Island Mentalität (meine Meinung), wohingegen bei z.B. NET und Java Programmiern ein viel stärkeres Bewußtsein über die jeweils "andere" Plattform existiert, einfach weil es näher ist.
- wenn man Notes einmal hat, neigt man dazu alles in Notes zu machen (z.B. Web). Das ist aber mit anderen Plattformen viel einfacher.
- Unglaublich unsympathischer Produktmanager (
http://www.edbrill.com)
- in Vergleich zu MS.Visual Studio oder Eclipse eine katastrophal schlechte IDE
- Es fehlt Unterstützung für Unit-Testing, Performance-Messungen, Projektplanung und automatisiertes Deployment.
- in Vergleich zu Java oder .NET eine sehr kleine Community
just my 2 cents
Axel