Ich benötige ein Web Framework mit dem ich ein modernes Design darstellen kann. z.B.Eingabe Controls, Balkendiagramme, Anmeldung, Listen. Aber ohne riesigen Overhead. Ich Programmiere in PHP. Kann mir da jemand was empfehlen? Danke vorab.
Gestern noch C#, heute Web? Entscheide dich mal ;-) Die Links von gestern passen übrigens hier genauso: DevExpress und Telerik bieten auch Web UI Frameworks an.
Bootstrap? Es gibt so viele Frameworks und so viele Informationen im Netz dazu, dass solche Fragen nicht sehr sinnvoll sind.
>Gestern noch C#, heute Web? Entscheide dich mal ;-)
ich benötige leider beide da ich in beiden Projekten am laufen habe.
Wenn du eh schon mit c# unterwegs bist, warum machst du dann nicht auch das Webzeug mit c#?
Nilix schrieb: > Ich benötige ein Web Framework mit dem ich ein modernes Design > darstellen kann. z.B.Eingabe Controls, Balkendiagramme, Anmeldung, > Listen. Du suchst also ein Front-End-Framework. Nilix schrieb: > Ich Programmiere in PHP. PHP ist aber eine Server-Side- und somit eher Back-End-Programmiersprache. Du kannst kein WebUI mit PHP bauen.
Beitrag #5416803 wurde vom Autor gelöscht.
Dominik S. hat da vollkommen recht. Für tolle Diagramme, Charts etc. braucht man was, was im Browser läuft. Die Sprache dafür ist i.d. Regel Java Script. Und das ganze mit dem PHP-Backend zu verknüpfen, das dann die Daten liefert ist schon Arbeit. Zumal du dich auch noch in das Frontend-Framework einarbeiten musst. Daher mein Vorschlag, das mit C# zu machen. Da gibt es Controls für Charts etc. (z.B. von Telerik) Die Programmierung fühlt sich viel eher wie bei einer normalen nicht-Web-Gui-Applikation an, die du anscheinend schon kennst. Microsoft hat da imho schon einen guten Job gemacht. Das ganze Marshalling der Daten, Abarbeitung von Events, die Einbindung der client-seitig benötigten JS-Bibliotheken die deine Controls brauchen, das funktioniert im Prinzip alles von selbst. Du legst in der IDE einen Knopf auf die Webseite und ein Doppelklick erstellt eine serverseitige Methode, die beim Klick auf diesen Knopf Knopf aufgerufen wird. Du legst serverseitig andere Daten in das Chart-Control und automatisch werden die dann auch im Browser angezeigt. Plain PHP ist davon weit entfernt.
Tilo R. schrieb: > Daher mein Vorschlag, das mit C# zu machen. Da gibt es Controls für > Charts etc. (z.B. von Telerik) Damit er am Ende noch einen Windows Server ins Netz stellt? Als wäre das Netz nicht schon schlimm genug verseucht!?
Horst schrieb: > Tilo R. schrieb: >> Daher mein Vorschlag, das mit C# zu machen. Da gibt es Controls für >> Charts etc. (z.B. von Telerik) > > Damit er am Ende noch einen Windows Server ins Netz stellt? Als wäre das > Netz nicht schon schlimm genug verseucht!? Und was stört dich daran?
Horst schrieb: > Tilo R. schrieb: >> Daher mein Vorschlag, das mit C# zu machen. Da gibt es Controls für >> Charts etc. (z.B. von Telerik) > > Damit er am Ende noch einen Windows Server ins Netz stellt? Als wäre das > Netz nicht schon schlimm genug verseucht!? Die wenigsten wollen den Windows Server mit dem nackten Arsch ins Internet hängen. Einen nginx Proxy davor entschärft die Sache deutlich. Soo schlimm wie früher ist das mit Windows+Internet heute aber auch nicht mehr ;).
Alex W. (gesperrt) schrieb: > Und was stört dich daran? Ernsthafte Frage? Spontan fällt mir ein: * Windows Server ist unfreie Software. Als Anwender bist Du abhängig von einem kommerziellen Unternehmen. Wenn Du nicht weißt was "frei" beduetet, siehe hier: https://de.wikipedia.org/wiki/Freie_Software * Windows erhebt Daten und übermittelt sie an Microsoft. Damit haben die deutschen Behörden zur Zeit Schwierigkeiten. Ich finde es persönlich ziemlich beschissen, dass Behörden ihre Software (und somit den Data Flow) nicht im Griff haben, und nicht kontrollieren können, was ihre Systeme machen. Denn es geht auch um meine Daten. * Windows Server kosten Geld - viel Geld * Vendor Lock-In * Eingeschränkte Hoster-Auswahl (Stichwort Cloud)
Der Text von R. Stallman enthält einige Punkte, die eben nur halbwegs richtig und relevant sind. Daher möchte ich auf die einzelnen Punkte eingehen und für eine vielleicht undogmatischere Sichtweise als Entscheidungsgrundlage werben. R. Stallman schrieb: > Alex W. (gesperrt) schrieb: >> Und was stört dich daran? > > Ernsthafte Frage? > > Spontan fällt mir ein: > > * Windows Server ist unfreie Software. Als Anwender bist Du abhängig von > einem kommerziellen Unternehmen. Wenn Du nicht weißt was "frei" > beduetet, siehe hier: https://de.wikipedia.org/wiki/Freie_Software Richtig. Aber praktisch irrelevant. Auch wenn mein ganzer Stack quelloffen und frei ist habe ich (als Einzelperson oder kleine Firma) weder die Fähigkeit, noch die Ressourcen um substantiell dazu beizutragen. "Ein Kernelprogrammierer wird man nicht über Nacht." Meine Möglichkeiten, den Linux-Kernel, den Webserver, SSL, PHP, Datenbank, und was man sonst so alles für eine Webapplikation braucht irgendwie weiterzuentwickeln sind relativ überschaubar. Ganz abgesehen davon ist es inzwischen durchaus möglich, in C# programmierte Webapplikationen mit Mono auch unter Linux laufen zu lassen. > * Windows erhebt Daten und übermittelt sie an Microsoft. Damit haben die > deutschen Behörden zur Zeit Schwierigkeiten. Ich finde es persönlich > ziemlich beschissen, dass Behörden ihre Software (und somit den Data > Flow) nicht im Griff haben, und nicht kontrollieren können, was ihre > Systeme machen. Denn es geht auch um meine Daten. Valide Postition, die ich voll und ganz teile. Daten meiner Webapplikation selbst werden aber nicht übertragen. > * Windows Server kosten Geld - viel Geld Richtig, und auch für mich oft ein gutes Argument, Freie Software zu verwenden. Jenseits von Hobby-Projekten, wenn der Aufwand für Entwicklung, Deployment, Hosting und Betrieb auch Geld kosten sind die Lizenzkosten aber oft nebensächlich (weil geringfügig). > * Vendor Lock-In Das ist ein typisches Scheinargument. Es gibt immer einen Vendor Lock-In, egal welches Produkt man nutzt. Wenn du dich heute für PHP entscheidest ist das eine Wette, dass PHP die nächsten Jahre verfügbar ist und deine Software mit neuen PHP-Versionen kompatibel ist oder für die ältere PHP-Version für den ganzen Produktlebenszyklus deiner Software Security-Updates verfügbar sind. Das kann gut gehen, oder halt auch nicht. Das ist aber mehr oder weniger unabhängig davon, ob die Software frei oder kommerziell ist. Beispiel Angular 1: Quelloffen und frei, heute aber eine entwicklungstechnische Sackgasse und inkompatibel zu Version 2. > * Eingeschränkte Hoster-Auswahl (Stichwort Cloud) Gibt es aber, auch in der Cloud.
Grundsätzlich hast Du Recht, trotzdem möchte ich Deine Ausführungen gerne an zwei Stellen kurz kommentieren. Tilo R. schrieb: > Richtig. Aber praktisch irrelevant. Auch wenn mein ganzer Stack > quelloffen und frei ist habe ich (als Einzelperson oder kleine Firma) > weder die Fähigkeit, noch die Ressourcen um substantiell dazu > beizutragen. Niemand erwartet oder verlangt gar von Dir, "substanziell dazu beizutragen". Ein Forenbeitrag oder Blogposting, ein paar Zeilen Dokumentation oder -- im Falle des Falles -- halbwegs brauchbare Bugreports oder eine gute Idee am richtigen Ort sind schon mehr, als irgendwer von Dir erwarten würde. OpenSource ist die Summe vieler Beiträge. Auch die kleinen Beiträge sind wichtig und sinnvoll, und bringen die Software voran. >> * Vendor Lock-In > Das ist ein typisches Scheinargument. Es gibt immer einen Vendor > Lock-In, egal welches Produkt man nutzt. > > Wenn du dich heute für PHP entscheidest ist das eine Wette, dass PHP die > nächsten Jahre verfügbar ist und deine Software mit neuen PHP-Versionen > kompatibel ist oder für die ältere PHP-Version für den ganzen > Produktlebenszyklus deiner Software Security-Updates verfügbar sind. Das gilt für die meisten Technologien, für die es nur einen Anbieter gibt. Allerdings gibt es zum Beispiel für die Skriptsprache Python mittlerweile mehrere austauchbare Interpreter und auch Compiler, die den Python-Code in C- oder C++-Code und diesen dann in nativen Maschinencode übersetzen. Wenn also der Urvater der Python-Interpreter, CPython, tatsächlich mal sterben sollte, werden PyPy, Jython und IronPython vermutlich weiter existieren. Ähnliches gilt für GCC und LLVM oder auch für Linux und die BSDs.
Nilix schrieb: > Ich benötige ein Web Framework mit dem ich ein modernes Design > darstellen kann. z.B.Eingabe Controls, Balkendiagramme, Anmeldung, > Listen. Du kannst Python benutzen. Mit Frameworks wie Bottle, Flask oder auch Django hast du mehr oder weniger Funktionen wie du sie brauchst. Als mathematische Plot-Lib. kannst du Matplotlib nehmen. Braucht aber alles Einarbeitungszeit.
Tilo R. schrieb: >> * Vendor Lock-In > Das ist ein typisches Scheinargument. Es gibt immer einen Vendor > Lock-In, egal welches Produkt man nutzt. Nein, dass stimmt so nicht. Wenn man z.B. Markdown nutzt, kann man zwichen hunderten Implementationen wählen. Man muss also nur schauen, dass es Alternativen gibt, was bei OSS meistens der Fall ist. Vendor Lock-in ist nicht zu unterschätzen. Ich würde sogar soweit gehen zu behaupten, dass es eines der wichtigsten Kriterien ist, von welcher Software man besser die Finger lässt. Immerhin nutzen die meisten OSS, um selbst entscheiden zu können, was sie haben und wollen. Die Auswahl einer Programmiersprache ist durchaus eine grosse Entscheidung, die grossen Einfluss auf die Entwicklung, den Aufbau und die schlussendliche Software habe kann. Bei den meisten Programmiersprachen gibt es Forks, alternative Compiler und alternative Implementationen der (Standard)libraries. z.B. gcc -> clang, libc++ -> libstdc++, glibc -> musl libc -> uclibc -> newlibc -> ..., nodejs -> ayo, etc. Dagegen, dass man eine Programmiersprache wählen muss, kann man aber natürlich nichts machen. Sowohl von einer Entwicklungsperspektive als auch als Endbenutzer würde ich hier vorallem auf folgendes achten: 1) Ist die Programmiersprache und dessen Standardlibraries nicht Proprietär oder durch Patente geschützt 2) Die Abhängigkeiten in grenzen halten, dessen Vertrauenswürdigkeit prüfen (stichwort supply chain attack), und alle Lizenzen prüfen. Ein Nutzer kann natürlich auch Präferenzen gegenüber Interpretern und co. haben. Ich versuche beispielsweise Node.js und python für fremde Desktopanwendungen zu vermeiden. Es ist Wahnsinn, wie viele Entwickler von Node.js Anwendungen keine Sekunde überlegen, ob es eine gute Idee ist die Tausenden teils fragwürdigen Abhängigkeiten von unbekannten von einem Repo ohne Community die die aufmahne erst Diskutiert und die Pakete mal anschaut zu verwenden. Bei Node.js kommt noch dazu, dass es so schnell updated, die aktuellen Versionen bekommt man nur von den Google Repros in meiner Distro. Sofern ich das also nicht selbst kompilieren will, muss ich Google vertrauen, dass die mir nichts unterschieben. Und was c# angeht, der Compiler, und der net core sind OpenSource, die meisten Desktopspezifischen Frameworks aber nicht. Eher würde mich aber der integrierte Datenabgriff von .net beunruhigen: https://blogs.msdn.microsoft.com/dotnet/2017/07/21/what-weve-learned-from-net-core-sdk-telemetry/ Nunja, wers riskieren will. Bei Java sollte man im Moment auch wieder Aufpassen. Die Oracle Geschichte kommt wieder hoch: https://www.golem.de/news/oracle-gegen-google-java-nutzung-in-android-kein-fair-use-1803-133557.html Dabei hatte alle schon geglaubt die Sache wäre endlich gegessen gewesen. Jetzt müssen wir wieder vor Firmen aufpassen, die jetzt plötzlich wieder APIs patentieren könnten. Wobei, vermutlich nur in der US. Ansonsten, wenn man Clientseite und Serverseite durch eine saubere REST API trennt, kann man das Front oder Backend schon mal einfach schnell neu schreiben. Das habe ich mal bei einem Schulprojekt gemacht, erste Aufgabe Bildgalerie, Vorgabe war PHP. Zweite Aufgabe Kammera Panorama Bildaufnahme Webanwendung, vermutlich war gedacht, dass man das bestehende weiterverwendet, aber da es diesmal keine PHP Vorgabe gab, hab ich damals einfach schnell das Backend nach Node.js umgeschrieben, hat in den 1-2 Wochen grade so gereicht. (war alles auf dem RPI). Nachteil der Restschnittstellenmethode ist aber, dass man Client seitig JavaScript benötigt. Mit Server seitigem Templating hat man das Problem nicht, aber dann ist man beim Backend wieder festgenagelt. Eine loose-loose Situation. Das Web ist mittlerweile aber sowieso größtenteils ein Haufen proprietärer und von wenigen Firmen dominierter Services. Es gibt zwar versuche das zu ändern, z.B. Mastodon als Twitter Ersatz, bzw. das GNU Social Projekt auf welchem es aufbaut und das OStatus Protokoll. Das einzige Problem da ist einfach, dass alle Firmen und User mit ihren Announcements und Newsmeldungen auf Twitter sind. Oder Solid, ins leben gerufen von Tim Berners-Lee, dem "Erfinder des Web". Solid will die Webanwendungen zur Interaktion der Daten und Services zur Datenspeicherung trennen, so dass die User die Daten und Appzugriffe verwalten können, und diese dadurch nichtmehr von einem Onlineservice abhängig werden. Gleichzeitig spinnt er aber auch die Semantik Web idee darin weiter, mit turtle und Co. für Ressourcenverlinkung etc. Ich habe das für etwa ein Jahr beobachtet, aber es scheint nirgendwohin zu gehen. Ich halte es für zu Komplex und Einschränkend für Entwickler, und die meisten scheinen entweder kein Interesse daran zu haben, oder nichts davon zu wissen. Und nachdem sich Tim in der W3C für EME eingesetzt hatte, habe ich ehrlich gesagt das Vertrauen in ihn komplett verloren. Der W3C sind die Nutzer letztendlich doch komplett egal, im Committee sitzen ja sowieso nur grosse Firmen. Und dann verkaufen sie unendliche Transparenz, veröffentlichen aber die Voting Details nicht und besprechen auch sonst das meiste hinter verschlossenen Türen. Man vergleiche das mal mit der tatsächlich Transparenten IETF bezüglich RFCs.
Tilo R. schrieb: > Wenn du dich heute für PHP entscheidest ist das eine Wette, dass PHP die > nächsten Jahre verfügbar ist und deine Software mit neuen PHP-Versionen > kompatibel ist oder für die ältere PHP-Version für den ganzen > Produktlebenszyklus deiner Software Security-Updates verfügbar sind. Bei derart weit verbreiteten Programmiersprachen wird das eher kein Problem darstellen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.