Dann schreib ich auch mal was (gilt für Designer ab 8.5.1, englische Tastaturbelegung)
> Fehlendes Tooling:
> - fehlende Referenz-Suche
Mit F3 auf einer Variable/Funktion kann man zur Deklaration springen
> - fehlende Refactoring-Mechanismen (nein, Suchen und Ersetzen ist kein Refactoring)
Es gibt einige Shortcuts zum verschieben von Zeilen, echtes Refactoring fehlt, ja.
Ist aber vermutlich mit Lotusscript und der häufigen Verwendung von Variants auch kaum umsetzbar
> - fehlende Code-generierung oder zumindest hinterlegte Code-Templates für Wiederkehrende Aufgaben
> (auch hier gilt, Copy&Pase ist kein Code-Template)
Für Klassen/Subs/Function lassen sich Templates hinterlegen
> - Kommentarfunktion ist auf einfachster Ebene gehalten (keine Marker, kein Shortcut für block-comments)
Markierte Zeilen lassen sich mit STRG+SHIFT+7 aus/einkommentieren
> - fehlender build-prozess (z.B. ein Produkt für Kunden individuell zu erweitern und dabei
> nicht den Entwicklungsstrang des Hauptproduktes zu verlassen oder "abzuklemmen"
> nur schwer möglich), Internationalisierung von DB nur schwer ohne redundantem Code möglich)
> - Konfigurierbare Roll-Outs mit speziellen Kundenkonfigurationen
Ack. Wir haben hierzu ein Framework welches dieses Problem etwas entschärft
> - Source-Verwaltung/Versionierung nicht vorhanden
> (oder gibt es da Möglichkeiten außer das ganze als Binärdatei einzuchecken?)
Drittanbieter wie Teamstudio oder die SVN-Unterstützung ab 8.5.3 schließen diese Lücke
> Debugger
> - keine Watchpoints
> - nur forward-debugging (kein Step back oder redo)
> - kann nicht alles debuggen (z.B. dialogboxen)
> - nur script debugging möglich
> - Dokument muss neu geöffnet oder geschlossen werden sobald debugger aktiviert oder inaktiviert wird
Hier stimme ich dir zu, dass der Debugger, bzw dessen Interface noch etwas steinzeitmäßig ist und manches
verbesserungswürdig ist. Allerdings: Ein vernünftiger Errorhandler erspart oft den Debugger.
> Editor
> - simples Copy&Paste in einer Script-library kann dazu führen, dass entweder die Hälfte fehlt
> oder die Darstellung so defekt ist, dass die library neu geöffnet werden muss
> - Wer ist noch nicht beim Versuch die implementierten Funktionen neu anzuordnen verzweifelt?
> ..na immerhin ist er nicht zeilen/zeichen-orientiert wie RPG (auf AS) oder Abap Wink
Mit dem 8.5.1er und folgenden Versionen hat sich o.g. Verhalten stark verbessert.
Unter Notes 7 war es m.E. noch schlimmer, wenn man die Zwischenablage/Undo verwendet hat
> Entwicklungsprozess
> - Modernen Entwicklungsprozesse nicht abbildbar (s.o.)
> - Wissen über lose Sammlung von "best practices" möglich (ich habe diverse Bücher über Notes gelesen,
> aber eine Antwort auf die > Frage des Entwicklungsprozesses den ich für sehr wichtig halte, auch in Hinsicht
> auf Team-Entwicklung > 3 Personen) hat mir leider kein Buch gegeben).
Dazu kann ich wenig sagen, aber vermutlich hast du recht.
> Dokumentation
> - zu viele undokumentierte Features (geht ja bereits bei den hidden-Fields los)
Ja, einiges ist undokumentiert, aber was ist bei hidden-Fields undokumentiert?
> - code-snippets aus der Hilfe decken leider sehr oft nur den simplex fall ab
Ich denk da sieht es in manch anderen Entwicklungsumgebungen nicht anders aus.
(Code-Beispiele findet man meiner Meinung nach aber sehr oft im Netz)
Irgendwie hat sich bei mir im Kopf die Meinung geprägt, dass sich ein guter Notes Entwickler dadurch auszeichnet, dass er die Schwachstellen, Bugs und diverse Workarounds kennt.
Da hast du nicht ganz unrecht.
Alls in Allem lassen sich mit Notes mit relativ wenig Aufwand neue Anwendungen erstellen, wenn man nicht über einen der vielen Bugs stolpert. Bugs werden leider oft als Feature "verkauft" bzw. welche die schon seit frühen Notes-Versionen existieren auch nicht mehr gefixed, da sons Altanwendungen u.U. nicht mehr kompatibel sind.
(Ich ärgere mich auch hin und wieder über das ein oder andere "Feature", das nicht so funktioniert wie ich will)
Gruß
Roland