Ich bin ein Java EE-Entwickler und wurde nur von jemandem kontaktiert, der mich will für sein Unternehmen ein Angebot zusammen für eine Anwendung bringen, die mit ihren MS Access „Back-End“ integrieren können.
Ich hatte gehofft, dies zu veröffentlichen und einen allgemeinen Überblick über die besten Praktiken der MS Access-Programmierung zu erhalten. Ich nehme an, das Programm würde in VB vollständig sein, aber nicht wissen, ob ich die Möglichkeit, etwas zu schreiben, in VB.NET oder (vorzugsweise) C # hat.
Ich verachte auch die Präsentationsschicht: irgendwelche guten GUI-Builder für Access-Anwendungen?
Was sind einige gemeinsame Tools und APIs (Unit-Test-Frameworks, Automatisierungssysteme bauen, etc.), dass MS Access Programmierer häufig verwenden?
Irgendwelche Links oder Ressourcen, die Sie empfehlen würden?
Es klingt wie eine ziemlich einfache Anwendung: Nehmen Sie die eingegebenen Daten, vergleichen Sie sie mit einigen Tabellen und werfen Sie etwas Ausgabe auf den Bildschirm. Ich bin ein ziemlich anständig Programmierer so, obwohl ich nie ein Access-Programm gemacht habe, bevor es nicht zu schwierig sein könnte für mich zu holen.
Danke für irgendwelche Gedanken oder Vorschläge!
Nun, die Leute fühlen sich stark von Access. Der Hauptgrund für die negative Sichtweise ist, dass es von Nicht-Entwicklern weit verbreitet ist, die kein Konzept für eine ordnungsgemäße Datenbankentwicklung haben und mit diesen kaum funktionierenden, entsetzlich gestalteten Anwendungen fertig werden, die das Herz der Entwickler erschrecken.
Damit ist Access nicht mehr als ein Tool für die schnelle Anwendungsentwicklung mit einer sehr geringen Eintrittsbarriere.
Das Gute und das Schlechte
Access ist eine ziemlich alte Produktlinie, die fast 20 Jahre umfasst. Viele Einwände gegen Access als Technologie basieren auf seiner frühen Geschichte: Da Rückwärtskompatibilität etwas ist, das Microsoft für wichtig hält, hat Access die meisten seiner Funktionen, gut oder schlecht, über die Jahre beibehalten.
Sie können die Wahl der VBA, nicht winform Formen sehen, die Förderung von Modulen über OOP, schlechte Entscheidungen zu sein, aber die Kontinuität dieser früh auf Designentscheidungen Zugang gemacht hat eine stabile Plattform zu bauen.
VBA: ist die Sprache, die niemals stirbt. Es ist klobig, veraltet, fehlt jüngsten Fortschritte in der Sprache, aber es ist auch schnell, einfach zu erlernen, flexibel, leicht zu Interop (zB Win32-APIs aufrufen ist wirklich einfach), und es kann mit externen Bibliotheken (Ereignis geschrieben angeschlossen werden. Net).
Gebundene Formulare: Per Voreinstellung kann Access mühelos Arbeitsanwendungen ohne Codezeile erstellen. Die meisten Abfragen können auch erstellt werden, ohne dass auf SQL zugegriffen werden muss. Wenn Sie ein Kontrollfreak sind, kann es nervig sein, aber es ist einfach, von dort aus alles zu coden und zu steuern.
Integration von Drittanbietern: Obwohl es viele Add-Ons für Access gibt, würde ich nicht empfehlen, die meisten Benutzersteuerelemente oder Bibliotheken von Drittanbietern zu verwenden, es sei denn, Sie müssen dies wirklich tun. Sie können in Umgebungen mit eingeschränkten Benutzerrechten sehr schwer zu implementieren sein und die Versionierung kann haarig werden.
Ribbon: Es kann gut oder schlecht sein, je nachdem, mit wem Sie sprechen, aber Microsoft hat viel investiert und es wird wahrscheinlich für eine Weile da sein. Zumindest das Menüband und die verbesserten Steuerelemente in Access 2007 und höher sorgen dafür, dass Anwendungen auf moderne Weise aussehen und sich verhalten. Vorbei die schrecklichen UIs von alten, können Sie jetzt wirklich schöne Dinge mit Themen, HTML-Layouts und einem modernen Band tun.
Zuverlässigkeit
Die meisten Einwände, insbesondere hinsichtlich der Zuverlässigkeit, sind einfach nicht mehr zutreffend.
Eine sorgfältig gestaltete Access-Anwendung kann Dutzende von Benutzern gleichzeitig unterstützen. Ich habe eine anständige Größe Anwendung Verwaltung Beschaffungs / Lager / Qualität / Teile / Projekte für ein Produktionsunternehmen, das 150 Benutzer hat, von denen in der Regel 50 zu jeder Zeit verbunden sind. Ich habe seit Jahren keine Korruption mehr gehabt.
Natürlich muss man immer bedenken, dass Access ist eine Multi-User-dateibasierte Datenbank, so dass man nicht erwarten kann ohne Risiko in Umgebungen mit unzuverlässigen oder langsamen Netzwerken zu arbeiten, und eine Verbindung zu einem einem Access-Backend über WiFi Fragt wirklich nach Ärger, genauso wie Sie auch nicht an einer großen Excel-Datei über WLAN arbeiten würden.
Die Wartung ist Teil des Lebenszyklus einer Anwendung. Vorbeugende Wartung ist extrem wichtig
Warten Sie nicht, bis etwas schief läuft: Erstellen Sie einige Admin-Tools in Ihrer App, mit denen Sie den Status Ihrer Daten überprüfen können (stellen Sie sicher, dass alles in sich stimmig ist, ungültige Benutzereingaben erkannt werden usw.).
Verdichten Sie auch die Datenbank regelmäßig (ich mache es jeden Abend, nachdem ich eine Sicherungskopie als Teil der täglichen automatisierten Aufgaben auf dem Backend-Server erstellt habe).
Einige zufällige Tipps
Wenn Sie nun ein Front-End verwenden möchten, das in etwas anderes geschrieben ist, etwa C #, ist es ziemlich einfach, Jet / ACE-Treiber zu verwenden, um eine Verbindung zu einer Access-Backend-Datenbank herzustellen.
.mdb
-Dateien. 32-Bit-Treiber sind standardmäßig in Windows installiert (immer noch in Win8) und sind immer zuverlässig. .accdb
Format, das von Access2007 / 2010/2013 verwendet wird. Es hat Grenzen und Verbesserungen gegenüber der älteren Version erhöht, aber es kann immer noch mit .mdb
sprechen. Tags und Links frontend java-ee programming-languages ms-access