Announcement

Collapse
No announcement yet.

Auswahlhilfe / Starthilfe Plattform

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Auswahlhilfe / Starthilfe Plattform

    Hallo Zusammen!

    Ich bin (bedauerlicherweise) noch blutiger Anfänger in der Anwendungsentwicklung.

    Ich arbeite derzeit an einer Stempelterminal Applikation für die Zeiterfassung.

    Die Hardware für die Stempeluhr wird ein RPi 3 mit 10" Display für die GUI.

    Die Zeiterfassung soll auf eine SQL Express Datenbank im lokalen Netz zugreifen.
    Zusätzlich soll später ein NFC Modul dazu integriert werden.
    Wenn das ganze auf Android auch noch ausführbar wäre (mobile Stempelung) wär das ganz toll.

    Ich wollte eigentlich voller Motivation mit UWP starten. Jedoch hat UWP keine API für SQL??!
    Dann dachte ich an Mono.... das ist ja jetzt Xamarin oder? Das lässt sich aber wieder nicht auf Linux ausführen oder?
    Ich könnte ja dann Android auf den RPi installieren aber wie schauts dann mit Treibersupport für einen NFC Reader aus?

    Ich habe noch keinen Strich programmiert und scheitere schon an der Plattformauswahl....

    Vielleicht habt Ihr einen Rat für mich mit was ich loslegen soll.
    Eventuell bin ich ja komplett auf den Holzweg.


    Danke!

    Lg
    Stiegl22

  • #2
    Java
    https://github.com/grundid/nfctools

    Ich habe noch keinen Strich programmiert und scheitere schon an der Plattformauswahl
    Du hast sicherlich die vor der Programmierung erforderlichen Dokumente für Anforderungen, Systemanalyse usw. erstellt?
    Zuletzt editiert von Christian Marquardt; 17.11.2017, 21:13.
    Christian

    Comment


    • #3
      Du sprichst von einem direkten Zugriff der Client Applikation auf die Datenbank. Dieses Konzept ist spätestens seit den späten 90er am Sterben(aber leider noch nicht ganz tot) und ist für mobile Anwendung erst recht gar keine Option mehr. Schreibe einen passenden Server zu deiner Anwendung. Die auf dem mobilen Gerät laufende Applikation spricht dann mit diesem Server und diese Serverapplikation nutzt dann die Datenbank zum persistieren der Daten.

      Die Serverapplikation könnte z.B. auch auf deinem Raspi laufen. Dann könnte im Prinzip die Clientanwendung die du nutzen möchtest um dein 10" Display anzusteuern auch die gleiche API zu deiner Serverapplikation verwenden. Und falls du den Client gleich als Webapplikation auslegst ist das dann eh die gleiche Webseite. Egal ob Stempelterminal oder mobiles Gerät.


      Edit: Der Vollständigkeit halber aber wenn ich ein solches Design eher ablehnen würde. UWP + ADO.Net (einschließlich dem Entity Framework) scheint unterstütz zu sein.
      Zuletzt editiert von Ralf Jansen; 17.11.2017, 21:11.

      Comment


      • #4
        Danke für die Antworten!

        Du hast sicherlich die vor der Programmierung erforderlichen Dokumente für Anforderungen, Systemanalyse usw. erstellt?
        Naja, ist in den Fall zwar eine nicht kommerzielle Anwendung (Verkauf die Software nicht) aber ein internes Lastenheft haben wir erarbeitet.
        War auch gemeint dass ich an diesen Projekt noch nix programmiert habe.
        Hab halt nur Erfahrung mit klassischen Windows Forms Applikationen mit .NET . (Und das jetzt auch ned so doll)

        Manchmal sieht man den Wald vor lauter Bäumen nicht... Java würde wirklich mal so einiges abdecken.

        @Ralf
        Heißt praktisch dass die von der Architektur her eine Gateway Software dazwischen die Kommunikation handlen sollte zu den mobilen Endgeräten?
        Und diese sollte entweder direkt am SQL Server OS laufen oder zumindest im lokalen Netz.

        Webapplikation ist auch ein Thema.... Java Web oder ASP.NET?
        Ich denke mit ASP.NET wäre ich mehr in meiner C# Comfortzone... aber krieg ich da drüber auf einen Raspi I2C Bus einen NFC Reader zum laufen?

        Außerdem würde mir über ASP.NET die Authentifizierung irgendwie ganz gut gefallen. (Mitarbeiter loggen sich mit Ihren Active Directory User direkt ein)
        Dann wärs vermutlich vernünftig direkt am Webserver des Servers der auch den SQL Server beherbergt die Applikation einzurichten.
        Der Raspi wär praktisch dann nur ein grafischer Browser oder? Und mit Python könnte ich im Hintergrund ein Skript ausführen für den NFC. Oder krieg ich das direkt in den ASP Code?

        Ich hoffe ich stell mich ned zu Dumm an ....

        Danke für eure Hilfe!

        Comment


        • #5
          Heißt praktisch dass die von der Architektur her eine Gateway Software dazwischen die Kommunikation handlen sollte zu den mobilen Endgeräten?
          Gateway wäre für mich die falsche Begrifflichkeit. Das klingt so als stellst du dir das als dummen Vermittler vor und so sollte das eher nicht aussehen. Da gehört deine Anwendungslogik hin. Die Clientanwendung sollte der Dumme sein und sich primär um Darstellung kümmern aber eben keine oder nur wenig Logik enthalten. Wo die einzelnen Dinge (Client, Server, DB) dann laufen sollte egal sein.

          Webapplikation ist auch ein Thema.... Java Web oder ASP.NET?
          Wenn du hier an deinen Raspi denkst dann wäre ein Apache mit Java oder irgendwas aus der sonst üblichen Ecke da sicher einfacher drauf zu hosten. Asp.Net hieße ja entweder Windows/IIS da drauf zum laufen zu bekommen oder den Webserver in einem eigenen Prozess zu hosten (Stichwort wäre da gerade Owin, WCF hätte aber auch einen Host)

          Ich denke mit ASP.NET wäre ich mehr in meiner C# Comfortzone... aber krieg ich da drüber auf einen Raspi I2C Bus einen NFC Reader zum laufen?
          I2C ist systemnah, .Net eher systemfern. Kurzes googlen zeigt mir das das möglich sein sollte und nach meinen dafürhalten sieht das auch nicht zu schwer aus. Komfortzone, wenn man sich als Anfänger einschätzt, ist das aber sicher nicht. Ein wenig Interop ist da mindestens nötig.

          Comment


          • #6
            Wenn du hier an deinen Raspi denkst dann wäre ein Apache mit Java oder irgendwas aus der sonst üblichen Ecke da sicher einfacher drauf zu hosten. Asp.Net hieße ja entweder Windows/IIS da drauf zum laufen zu bekommen oder den Webserver in einem eigenen Prozess zu hosten (Stichwort wäre da gerade Owin, WCF hätte aber auch einen Host)
            Mein Gedankengang ginge da eher in die Richtung dass ich die Applikation als ASP.net direkt auf unseren Server (Server 2012 R2 Std.) hoste. Der webserver ist sowieso dort schon am laufen. Die mobilen Endgeräte sowie der Raspi könnten dann einfach über SSL und Portforwarding und Authentifizierung über AD auf den Dienst zugreifen.
            Oder habe ich da wo einen Denkfehler?

            Comment


            • #7
              Nö. Klingt für mich gut.

              Comment

              Working...
              X