Archiv verlassen und diese Seite im Standarddesign anzeigen : Frontend-Newbie sucht Starthilfe bei Webanwendung
hadez16
2020-06-04, 11:13:56
Grüße an alle,
ich habe bereits einige Jahre Erfahrung in der Softwareentwicklung, aber vorwiegend Backend, ASP, C#, Webservices, .NET, ...
Web-Entwicklung hinsichtlich Frontend-Development war bisher mein absolutes Kryptonit, aber ich will ein Pilot-Projekt starten, ich will lernen.
Jedoch bin ich völlig planlos auf welche Technik ist bei meinem Projekt setzen sollte.
Grob umrissen:
Über eine Webseite sollen 1 bis mehrere Dateien eingelesen werden können
Dabei handelt es sich um Textdateien (Protokolle)
Diese möchte ich im Hintergrund parsen, und entsprechende Ergebnisse auf der Seite anzeigen
Dabei sollen beim Upload von Datei 2, 3, ... die Informationen jeweils mit den Infos der vorherigen Dateien aggregiert werden, also müssen die Infos der vorherigen Uploads noch irgendwo vorhanden sein...
PHP?
Gibt es dafür geeignete WYSIWYG-Editoren o.ä.?
Lässt sich das Parsen im Backend an bspw. .NET Core Bibliotheken delegieren?
Ich würde mir dazu erstmal ein Buch kaufen, falls PHP für so etwas wirklich gut geeignet sei...
Danke!
Asaraki
2020-06-04, 11:55:48
Just my 2 cents : Da läufst du nur in Quark rein. Versuch doch stattdessen etwas einfaches zu erweitern, was es schon gibt. Also erstmal ein FrontEnd lauffähig kriegen, das funktioniert und dann wenn du mit dem Setup durch bist mal kleinste Änderungen vornehmen und lernen.
Von Haus aus ohne Ahnung welche Technologie und Tools du verwenden willst... naja, erstmal einlesen würd ich sagen.
Fliwatut
2020-06-04, 12:26:41
Der Frontend-Teil ist doch sehr überschaubar: ein Formular, wo man eine oder mehrere Dateien zum upload auswählt. Das geht dann mit HTML und CSS, die Logik dahinter kann man mit PHP oder Javascript machen. Parsen kann man mit PHP oder Python machen.
Wenn die Dateiinhalte dauerhaft gespeichert werden sollen, bietet sich natürlich eine Datenbank an, bei einem kleineren Projekt reicht schon Sqlite sonst halt MySQL/MariaDB.
ich will lernen.
Was genau, habe ich noch nicht verstanden, daher ist mir die Zielsetzung nicht ganz klar. Die Aufgabe hat jetzt naemlich erstmal recht wenig mit dem zu tun, was ich als frontend-Entwicklung verstehe. Da brauchst du nicht viel ausser einen File upload Dialog und die Praesentation der Ergebnisse. Du solltest dir also erstmal ueberlegen, wie du es machen willst.
Option 1 (einfache Loesung):
- statische HTML Seite mit Formular zum Hochladen
- Verarbeitung der Daten im Backend, Praesentation der Ergebnisse mit "server-side-rendering" (HTML template + Daten einfuegen -> fertige Seite wieder zum Client)
- kommt komplett ohne JS aus
Option 2 (wenn es mehr Richtung JS gehen soll):
- frontend, wahrscheinlich mit irgendeinem js framework
- einfacher webserver, der frontend ausliefert
- backend mit API fuers frontend, das Daten annimmt, verarbeitet und wieder raus schickt (z.B. als JSON). frontend aktualisiert daraufhin die Ansicht, ohne die Seite komplett neu zu laden
Sofern du nicht alles im RAM halten willst, brauchst du bei beiden Optionen noch Persistenz durch eine DB, Ablage ins Dateisystem, oder was auch immer
Grundsaetzlich bist du relativ frei und in keinster Weise an PHP gebunden. CGI oder "zur Not" (erzeugt keinen wirklichen Schmerz) ein reverse-proxy Setup erlauben dir, alles moegliche zu benutzen.
Ich habe eine persoenliche Abneigung gegen PHP, aber sag doch erst mal genauer wo du hin willst, bevor Empfehlungen ausgesprochen werden sollen.
Ich verstehe nicht so ganz... du machst ASP(hoffentlich .Net) und fragst jetzt, ob du was in PHP machen sollst? Nicht, dass ich irgendwie pro Microsoft wäre, aber wenn du ein Backend willst, dann mach das doch so, wie du das bisher machst.
Du kannst halt eine Webapp bauen, die komplett ohne Backend auskommt. Dann alles in HTML5/JS/CSS. Du kannst ja problemlos mehrere Dateien an Javascript übergeben, dass die lokal verarbeitet werden - auch "im Hintergrund". Wenn du unbedingt was hochladen willst, brauchst du natürlich ein Backend.
Ohne Javascript kommst du nur aus, wenn es sich wie in den 90ern bedienen lassen soll.
Was sind das denn überhaupt für Protokolle? MB-große Logdateien oder Jahreshauptversammlung?
hadez16
2020-06-05, 07:42:56
Vielen Dank für die Antworten bisher.
Was sind das denn überhaupt für Protokolle? MB-große Logdateien oder Jahreshauptversammlung?
Maximal dreistelliger kb-Bereich an Logdateien einer Anwendung.
Es kann mehrere und verschiedene Logdateien dieser Anwendung geben.
Je mehr Logs ausgewertet werden, desto präziser kann und möchte ich in der visuellen Aufbereitung werden. Um es mal Abstrakt zu halten.
Ich verstehe nicht so ganz... du machst ASP(hoffentlich .Net) und fragst jetzt, ob du was in PHP machen sollst?
Ich bin nicht wirklich im Bilde darüber ob die Unterstützung von ASP bei den Hostern im weiten Netz wirklich weit verbreitet ist
Ich arbeite mit ASP (und da auch nur Backend, nicht Frontend) eher im Intranet...
Die Aufgabe hat jetzt naemlich erstmal recht wenig mit dem zu tun, was ich als frontend-Entwicklung verstehe
Es kann gut sein, dass ich mich auch etwas missverständlich ausgedrückt habe.
Kern-Essenz ist, ich habe von Web-Frontend-Entwicklung keine Ahnung und konnte mich 10 Jahre davor drücken ;)
Wahrscheinlich ist das, was passiert nachdem man auf "Upload Log" klickt, völlig pillepalle. Vielmehr fehlt mir jeglicher Ansatz wie ich ein geeignetes Frontend kreiere dafür, und wie das Frontend dann mit einer Logik im Backend arbeitet, um Logs zu parsen und wie ich die Rückgabe im Frontend darstelle...
Als ich vor 20 Jahren erste Schritte machte, hab ich Notepad aufgemacht und mit <html> angefangen. Und jetzt? Visual Studio Code?
...je mehr ich schreibe, desto eher kommt mir vor Augen dass es sinnvoller sein könnte, etwas fertiges auseinander zu nehmen und es zu adaptieren, um es besser zu verstehen.....
Muss das Backend denn überhaupt was machen? Sollen die Daten nur Verarbeitet und angezeigt werden? Das geht auch alles lokal im Browser, auch mit mehreren Dateien. Oder sollen die gespeichert und später wiederverwendet werden?
Klar, ASP.net ist wahrscheinlich nicht so verbreitet, PHP bietet jeder billige garagenhoster. Ist halt die Frage, ob es den Aufwand rechtfertigt, schnell noch PHP zu lernen. Kommt halt darauf an, wie aufwändig das Backend ist und ob den Server wer anders bezahlt oder ob das nur fürs Hobby ist.
Was du dann im Web-Frontend machen sollst, hängt davon ab, was deine Zielsetzung ist. Willst du schnell was funktionelles zusammenschustern oder willst du langfristig dich damit auseinandersetzen und erweitern?
hadez16
2020-06-08, 09:03:23
Muss das Backend denn überhaupt was machen? Sollen die Daten nur Verarbeitet und angezeigt werden? Das geht auch alles lokal im Browser, auch mit mehreren Dateien. Oder sollen die gespeichert und später wiederverwendet werden?
Klar, ASP.net ist wahrscheinlich nicht so verbreitet, PHP bietet jeder billige garagenhoster. Ist halt die Frage, ob es den Aufwand rechtfertigt, schnell noch PHP zu lernen. Kommt halt darauf an, wie aufwändig das Backend ist und ob den Server wer anders bezahlt oder ob das nur fürs Hobby ist.
Was du dann im Web-Frontend machen sollst, hängt davon ab, was deine Zielsetzung ist. Willst du schnell was funktionelles zusammenschustern oder willst du langfristig dich damit auseinandersetzen und erweitern?
Vielen Dank, deine Antwort regt zum nachdenken an :)
Ich denke es wird darauf hinauslaufen, dass ich Daten im Backend bzw. in einer DB persistieren möchte. Ergo ist PHP+xySQL eventuell besser geeignet wie eine Browser/Local-Only Lösung zu fokussieren.
PHP lernen, why not...mal was anderes! Sofern das für solch ein Vorhaben zu empfehlen wäre. Mir fehlt der etwas der Überblick was im Juni 2020 dafür angesagt ist :)
Kopfzerbrechen bereitet mir ein Frontend dafür zu entwickeln, auch wenn sich das aus eurer Sicht eventuell verrückt anhört, aber ich komme aus einer Zeit als <marquee> noch cool war :freak:
Gohan
2020-06-08, 14:13:33
Wenn du aus der C# .NET Ecke kommst, schau dir doch mal die dortigen Varianten an. ASP.NET MVC oder Razor Pages für klassische HTML Apps oder Blazor, für die Zukunft.
PHP wäre ja ein Schritt in die Vergangenheit und ist keine Frontend-Sprache, sondern eine Script-Sprache fürs Backend, welche unter anderem HTML oder Co. an den Aufrufer zurück liefern kann.
Das Frontend definiert sich aus HTML, JavaScript und CSS. Das musst du lernen. Mit C# und .NET hast dzu schon alles, was du fürs Backend brauchst und kannst das auch mittels Razor/Blazor beibehalten.
Jetzt noch PHP zu lernen ist Zeitverschwendung pur!
Schau dir doch einfach mal das (sehr gut) Microsoft Tutorial zu ASP.NET MVC an, das wäre ein Start: https://docs.microsoft.com/de-de/aspnet/core/tutorials/first-mvc-app/start-mvc?view=aspnetcore-3.1&tabs=visual-studio
Asaraki
2020-06-08, 14:35:39
Ack. Nicht zuletzt daher der Hinweis, etwas existierendes, open source mässiges zu nehmen.
A) hast du da oft moderne Konzepte drin, die du anhand eines echten Beispiels lernen kannst
B) kannst du dort anfangen, wo du grad lustig bist
und dann C) das Ganze nachbauen und besser machen ;-) Man lernt nie mehr, als aus dem Code von anderen Leuten imho
Mit PHP gewinnst du zumindest jetzt "karrieremässig" heute auch keinen Blumentopf mehr. Wird natürlich immer noch gebraucht, keine Frage, aber wenn du schon wählen kannst was du lernen willst... sehe keinen Grund für PHP
hadez16
2020-06-14, 12:05:37
Was ich vor habe zielt in keiner Weise auf meinen Lebenslauf ab bzw. was Karriere-mäßiges, sondern ausschließlich Selbstverwirklichung und Horizont-Erweiterung, da alles rund ums Web für mich bisher Bäh-Pfui war.
Blazor.
Das sieht mir nach einer entspannteren Lernkurve aus...schaue ich mir mal an, danke!
Wie schaut es denn mit dem Hosting von sowas aus? Muss der Hoster hier .NET Core unterstützen, oder wie ist das?
Gohan
2020-06-14, 12:42:08
.NET Core im Backend: Ja, das muss der Hoster unterstützen. Gilt also z.B. Blazor Server Pages sowie ASP.NET (MVC). Das, wo allerdings Blazor hin soll (.NET Im Browser mittels WebAssembly) braucht kein .NET Core auf dem Server. Seit Mai ist das angeblich auch Production-Ready.
Fliwatut
2020-06-14, 12:50:30
Mit PHP gewinnst du zumindest jetzt "karrieremässig" heute auch keinen Blumentopf mehr.
Bitte? Fast 80% aller websites werden momentan mit php gemacht:https://w3techs.com/technologies/details/pl-php
hadez16
2020-06-14, 15:54:11
Bitte? Fast 80% aller websites werden momentan mit php gemacht:https://w3techs.com/technologies/details/pl-php
Ist PHP Ja/Nein sowas wie AMD vs. NVIDIA?
Fliwatut
2020-06-14, 16:35:39
Ist PHP Ja/Nein sowas wie AMD vs. NVIDIA?
Keine Ahnung, ich habe nur einen Fakt genannt.
Der aber voellig uninteressant ist. Interessant waeren die Anteile bei neuen Projekten, nicht bei allen Webseiten, inkl. derer, die seit Jahrzehnten laufen.
Ganz zu schweigen davon, dass 1 "Webseite" != 1 Sprache bedeutet.
Ist PHP Ja/Nein sowas wie AMD vs. NVIDIA?
Falls du damit meinst, dass das irrationales Fanboygetue sei (was Unfug waere), dann nein. Natuerlich gehoeren aber troztdem auch immer persoenliche Praeferenzen dazu. Da du selbst Entwickler bist, gehe ich aber davon aus, dass auch du gewissen Anforderungen an eine Sprache hast.
Fliwatut
2020-06-14, 21:24:39
Welche Programmiersprache wird php in Sachen Webdevelopment denn den Rang ablaufen? Womit werden die neuen Projekte realisiert?
Darueber kann ich keine qualifizierte Aussage treffen. Ich mache nicht besonders viel mit Web, aber persoenlich sehe ich Go, Python, Ruby, sogar Java haeufiger als PHP. Bemerkenswert dabei ist vielleicht, dass eben auch innerhalb eines Projektes oft unterschiedliche Sprachen eingesetzt werden, weil mancherorts sowieso viel in Richtung Microservices geht.
Fliwatut
2020-06-14, 22:00:40
Python mit Django scheint in der Tat sehr beleibt zu sein.
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.