Announcement

Collapse
No announcement yet.

Fragen zur richtigen Umsetzung eines Projektes

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

  • Fragen zur richtigen Umsetzung eines Projektes

    Sehr geehrte Community,
    ich habe Probleme bei der Programmierung meiner App.
    Unten habe ich die App, meinen Wissenstand
    und die Probleme und Fragen die sich ergeben haben kurz erleutert.

    Grundsätzlich möchte ich ersteinmal eine Beispielapp programmieren.
    Ohne sich groß Gedanken über das Design oder die Benutzerfreundlichkeit zu machen,
    würde ich gerne ersteinmal eine Desktopanwendung, für Windows (.exe), programmieren,
    die aus einem Editor besteht, in dem Texte und Bilder eingefügt und formatiert werden können.
    Der Editor soll dan eine Datei erstellen, die Automatisch, neben dem lokalen Speichern,
    auch auf einen Serveranwendung hochgeladen werden kann.
    Eine App, für Android, die mit einer universellen Platformübergreifenden Technik
    (HTML/Javascript mit PhoneGap oder z.B. C# mit Xamarin) programmiert wude
    und in eine Native App umgewandelt worden ist,
    soll die Datei von dem Server herunterladen
    und dargestellen.

    Grundsätzlich ist dies ja schon sehr Umfangreich.
    Meine Kentniss beschrenken sich leider auf die grundätzliche (Funktionsweise von Computern)
    und von Programmierung, auf Java, bis zu einem Gewissen Grad auch für Andoid,
    auf die Grundlagen der Datenbankenprogrammierung mit MySQL
    und die "Webseitenprogrammierung" mit HTML und CSS.
    Ich habe bisher noch keine Desktopanwendungen (außer mit Java) programmiert.
    Ich habe auch noch nichts mit Servern zutuhen gehabt (mit der Entwicklung für Server)
    und ich habe auch noch keine Web-App programmiert.
    Ich bin aber nicht abgeneigt etwas neues zu lernen,
    ich habe auch verhältnismäßig viel Zeit
    und würde es in kauf nehme die nächste Zeit ersteinmal zu lernen
    und noch nicht mit der Umsetzung dises Projekte zu beginnen.

    (1) Ich würde Grundsetzlich mit dem Programmieren des Editor beginnen.
    Als erstes stellt sich mir die Frage
    welche Programmiersprache für Windows am besten geignet ist (1.1)?
    Ich habe mit Java und Windows keine guten Erfahrungen gemacht,
    zumal ja immer das JRE benötigt wird.
    Da ich mich schon immer mit einer anderen Sprache beschäftigen wollte
    ist dies wohl durchaus ein richtiger Zeitpunkt.
    Meine zweite Frage ist, auf was ich mein Augenmerk richten soll (beim erlernen der Sprache),
    wenn ich vorhabe einen Editor zu programmieren,
    der automatisch eine datei erstellt die auf einen Server hochgeladen werden soll
    und von einer Web-App dargestellt werden soll (1.2)?
    Außerdem stehen hierzu ja verschiedene Datentypen zur verfügung,
    um die Date auf bzw. herunter zu laden,
    (HTML, PDF, RTF und XML standen konkret im Raum),
    welcher ist eurer Meinung nach am besten geeignet
    und schond auch das begenzte Datenvolumen der mobilen Geräte(1.3)?

    (2) Außerdem würde ich nun gerne eine App programmieren
    die ohne großen Aufwand auch auf anderen Plattformen
    zum laufen gebracht werden kann
    und die die Datei darstellt,
    die von der Desktopanwendung erstellt wurde.
    Hier stellt schich die Frage nach der Technologie.
    Ich könnte z.B. eine Web-App mit HTML/ JavaScript erstelln
    und sie mit PhoneGap in eine Native App umwandeln
    oder genauso mit C# und Xamarin.
    Welche Technologie ist eurer Meinung nach am besten geignet (2.1)?
    Gibt es auch Möglichkeiten eine Platformübergreifende App zu programmieren
    ohne Entwicklertools wie PhoneGap zu verwenden (2.2)?
    Was mache ich eigentlich wenn meine App ein Widget haben soll
    und es sich um eine Native App handlt, die aus einer Web-App erstellt wurde,
    ist auch dies möglich (2.3)?
    Wie funktioniert eigentlich Web-Apps (2.4)?
    Handelt es sich quasie um interaktive Webseiten,
    die auf dem Android Gerät dargestellt werden (2.5)?
    Ist es möglich auf z.B. die Sensore des Gerätes zurückzugreifen
    oder die Bildschirmgöße herauszufinden (2.6)?
    Auf welche Technik muss ich zurückgreiffen,
    wenn ich ohne großen Aufwand eine App für Windows erstellen möchte (2.7)?
    Wie abhängig bin ich von dem Tool das die Native App erstellt (z.B. Phone Gap) (2.8)?
    Verändert es (das Tool) meine App und sammlet Daten über mögliche Nutzer (2.9)?
    Welche Alternativen gibt es
    und kann ich auch ohne Tool aus einer Web-App/ C# Anwendung eine Native machen (2.10)?
    Kann ich selber einen Browser (mit Java) für Android programmiern,
    der meine lokal gespeicherte Web-App darstellt (2.11)?
    Oder ist eine Native App mit Java die bessere Wahl (2.12)?
    Wie viel Aufwand macht es eine zweite App für Apple Geräte (oder eventuel Windows),
    zu programmieren wenn ich schon eine mit Java für Andoid habe (2.13)?
    Kann ich Java Apps auf Apple Geräten zum laufen bringen (2.14)?
    Welche weitern Möglichkeite gibt es für platformübergreifende Apps (2.15)?
    Wie gehe ich mit verschiedenen Android/Appple IOS Versionen um (2.16)?
    Kann ich die selbe Sprache für die Platformunabhängige App
    und die Desktopanwendung verweden (2.17)?

    (3) Nun muss "nur" noch die Datenübermittlung mittels einer Serveranwendung realiesert werden?

    Kneitzel (von java-forum.org) hat mir nettwerweise folgendes geraten:
    Zitat von kneitzel:

    Also wie bekommen Apps dynamische Daten?
    Indem sie sich zu einem Server verbinden und diese Daten über ein definiertes Protokoll herunter laden. Welches Protokoll dies ist, ist dabei erst einmal egal. Ein Entwickler kann sein eigenes Protokoll entwickeln oder ein bestehendes verwenden. Viele Anwendungsbereiche haben bereits Protokolle, die sich bewährt haben. Für Emails gibt es SMTP, POP3, IMAP... Chatserver können das IRC Protokoll nutzen, Newsserver haben NNTP., ....
    Wenn man keinen Spezialfall hat und auf ein bestehendes Protokoll gehen möchte, dann kann man sich überlegen, was man statt dessen möchte. Es gibt ein Rahmenwerk, welches sich Web Services nennt. Das ist wie ein Webserver nur eben speziell für automatische Abfragen gedacht. Darauf kann man sehr gut aufsetzen, um seine eigenen Interfaces online zu bringen und man muss nicht mehr das Rad neu erfinden. Die Services beschreiben sich auch selbst und es gibt dann z.T. Tools, die für einen bestehenden Webservice den notwendigen Code direkt schreiben.
    Auf was soll ich mein Augenmerk richten wenn meine Desktop-Anwendung Daten hochladen,
    und die App Daten herunterladen sol (3.1)l?
    Welche Technologie/ Protokolle soll ich für die Datenübermittlung zwischen PC - Server
    und Server - Smartphone nutzen (3.2)?
    Wie soll ich die Datenspeicherung/ Datenbanken sowol auf dem PC,
    als auch auf dem Server und dem Smartphone realiesiern (3.3)?
    Kann jemand auf die von Kneitzel beschreibenden Web Services
    und die erwähnten Tools näher eingehen (3.4)?
    Was gibt es über Serveranwedungen zu wissen (3.5)?
    Gibt es ein Buch, ein Video oder eine Internetseite
    in dem/ auf der näher auf solche Themen eingegangen wird (3.6)?
    Wo kann ich einen Server hosten,
    was gibt es dabei zu beachten(3.7)?
    Was ist wenn ich alles (auf die Programmierung und die Protokolle bezogen)
    selber machen möchte (3.8)?

    (4) Kennt ihr Beispiele, Beschreibungen, Quellen, Videos, Erleuterungen, Dokumentationen,
    Videotrainigs usw. die näher auf meine vielen Wissenlücken eingehen (4.1)?
    Wie kann ich mir das fehlende Wissen am besten aneignen (4.2)?

    Ich hoffe ich habe euch mit meinen Fargen wieder nicht erschlagen.
    Ich würde mich auch über die Beantwortung nur einer Frage,
    Anregungen und Teilandworten sehr freuen.
    Mir geht es in vorallem darum welche Technologien/ Sparachen am geeignetsten sind
    und ob es bereits teilweise fertige Konstrukte gibt.

    Danke, schonmal im voraus.

    Mit freundlichen Grüßen

    "--->"

    #Alle halbwegs nützliche Antworten werden gut bewertet.
    Zuletzt editiert von #Veni.Vidi.Codi.; 06.01.2016, 23:28. Reason: Verbesserung der Lesbarkeit, Ergänzung und Richtigstellung

  • #2
    Puh... ist das nicht etwas viel auf einmal? Sowas kann Dir kein Mensch in einem Thread hier im Forum beantworten. Ich würde Dir raten:

    Fang einfach mal an. Dann siehst Du ob die Technologie die Du ausgesucht hast für das ausreicht was Du machen willst. Falls Du was für mobile Geräte brauchst, dann kannst Du Dir Xamarin anschauen. Soweit ich weiss kostet das allerdings Geld, zumindest sobald man es kommerziell nutzt. Dann gibt es noch Phonegap/Cordova. Falls Du Dich mit Web schon auskennst ist das auch sehr gut geeignet. Generell kann man sagen dass beide Technologien ausreichend gut funktionieren, sogar im professionellen Bereicht. Je nach Anspruch an die App natürlich. Willst Du die super Performance und ultra optimiert für das jeweilige OS, bleibt Dir sowieso nichts anderes, als nativ für jedes OS zu entwickeln.
    Dann solltest Du Dir noch überlegen in welcher Technologie Dein Backend entstehen soll. Hier würde ich, vor allem wenn Du noch nicht viel Erfahrung hast, entweder bei dem bleiben was Du kannst oder, falls Du Dir nirgends sicher bist, kannst Du mit Java oder .Net nichts falsch machen.

    Und dann viel viel im Internet lesen und bei Bedarf auch zu EINZELNEN Themen hier im Forum fragen Gerne auch in mehreren Threads gleichzeitig. Aber das hier wird eine Endlosdiskussion

    Comment


    • #3
      Du kannst auch einfach etwas abschauen.
      Such Dir ein Produkt, das Deinem sehr nahe kommt und schau, wie es gemacht ist.
      Gruß, defo

      Comment

      Working...
      X