3 Stimmen

Lohnt es sich, ein Framework zu lernen, um ein Projekt zu starten?

Je mehr ich über Frameworks lese, desto mehr Leute scheinen sich zu beschweren, dass es sich nicht lohnt, sie zu lernen.

Gibt es einen bestimmten Anwendungsfall, den ich kennen sollte und der Frameworks wertvoll macht? Oder verschwende ich nur wertvolle Zeit damit, etwas zu lernen, das ich später wieder verwerfen werde?

EDIT: Titel der Klarheit halber geändert. Ups, Entschuldigung.

3voto

David Miani Punkte 14378

Ich stelle fest, dass man bei einem großen Projekt, selbst wenn man sich entscheidet, zunächst kein Framework zu verwenden, nach der Hälfte des Projekts sowieso ein Mini-Framework schreibt, da man Funktionen, die für einen Teil des Projekts geschrieben wurden, für einen anderen wiederverwendet.

Das Problem dabei ist jedoch, dass der Mini-Ad-hoc-Rahmen, den Sie am Ende schreiben,

  • schlecht konzipiert
  • im Grunde keine Dokumentation haben
  • fehlende Funktionen
  • Nur die Mitarbeiter Ihres Teams werden wissen, wie man es benutzt, und das Erlernen wird als Zeitverschwendung erscheinen, da es nur für Ihr Projekt verwendet wird.
  • Schwierig zu erweitern, wenn man den Quellcode nicht rückwärts kennt

Die Verwendung eines Rahmens zu Beginn Ihres Projekts hingegen schon:

  • Sie sparen die Zeit, die Sie mit dem Schreiben der Utility-Funktionen verbracht haben, die Ihr Add-hoc-Framework ausmachen.
  • gut konzipiert sein
  • über eine umfangreiche Dokumentation verfügen
  • Viele Menschen werden wissen, wie man es benutzt, andere werden eher bereit sein, es zu lernen, weil sie sehen, dass es für zukünftige Projekte nützlich sein wird.
  • Sehr vollständig sein
  • Einfache Erweiterbarkeit (durch ein Plugin-System) für Leute, die den Quellcode nicht gut kennen
  • ständig aktualisiert werden, ohne dass Sie sich dafür anstrengen müssen

Ich denke, dass die Verwendung eines Frameworks (wenn ein gutes verfügbar ist) für jedes mittelgroße oder größere Projekt eine enorme Zeitersparnis bedeutet, solange man sich genügend Zeit nimmt, um den Umgang mit dem Framework zu lernen. Ich denke oft, dass ein Großteil der Kritik an Frameworks von Leuten kommt, die nie die Zeit hatten zu lernen, wie man es richtig benutzt. Der Versuch, ein Framework zu verwenden, ist dann ziemlich schmerzhaft, da man ständig Hacks verwendet, um nicht existierende Probleme zu umgehen, Probleme, die man gar nicht hätte, wenn man das Framework richtig kennen würde.

2voto

JP Alioto Punkte 44283

Wir machen ausgiebig Gebrauch von Unternehmensbibliothek in unseren Projekten. Die Leute, die sich zu sehr über Frameworks beschweren, sind diejenigen, die alles von Grund auf neu aufbauen wollen. Ein solides Framework, das die Aspekte Ihrer Arbeit (Ausnahmebehandlung, Protokollierung, Caching, Datenzugriff, Policy Injection, Unit-Tests, Dependency Injection, Überwachung und Instrumentierung, Verschlüsselung usw.) abdeckt, ist äußerst wertvoll.

Ein gutes Framework ermöglicht es Ihnen, sich auf Ihre geschäftlichen Belange zu konzentrieren und nicht auf die Aspekte Ihrer Anwendung, die mit dem eigentlichen Ziel nichts zu tun haben. Außerdem ist es eine absolute Zeitverschwendung, diese Dinge selbst zu schreiben, wenn es hervorragende Frameworks mit Tausenden von Arbeitsstunden in Entwicklung und Qualitätssicherung und möglicherweise Hunderttausenden von Produktionsstunden gibt. Ich kann den Business Case für den Einsatz von EntLib zu 100% rechtfertigen.

2voto

Jas Panesar Punkte 6587

Am Anfang mag es schneller erscheinen, ohne einen Rahmen zu beginnen.

Ich vergleiche es mit dem Beladen einer Spülmaschine. Früher oder später muss man die Arbeit machen. Entweder man lädt das Geschirr vorher geordnet ein, oder man nimmt sich die Zeit, es beim Herausnehmen zu sortieren.

Während Sie Ihr Projekt aufbauen, bereitstellen und erweitern, werden Sie sich immer mehr Möglichkeiten wünschen, um die Wiederverwendung von Code, die Struktur und das Framework zu verbessern.

Schauen Sie, ob es ein Gerüst gibt, mit dem Sie schnell anfangen können, etwas aufzubauen. Ich denke, es lohnt sich.

1voto

duffymo Punkte 298898

Wozu sind Rahmenwerke gut?

Wenn Sie sich für die richtige Lösung entscheiden, müssen Sie keinen eigenen Code schreiben. Er ist besser als das, was Sie selbst machen würden. Er wurde von Entwicklern geschrieben, die talentierter sind als Sie, er wurde von einem größeren Publikum getestet als Ihr Code, er hat eine längere Historie an behobenen Fehlern als Ihre Anwendung und er hat eine längere, bessere Erfolgsbilanz als alles, was Sie geschrieben haben.

Ihre Anwendung ist besser dran, wenn Sie einen Rahmen finden, der all diese Kriterien erfüllt.

Rahmenwerke sind nicht gleich Rahmenwerke. Es ist wichtig, eine kluge und gute Wahl zu treffen. Wenn Sie sich für ein gutes System entscheiden, werden Sie es später nicht mehr aufgeben.

Deshalb habe ich in den letzten fünf Jahren Spring verwendet.

Ich würde empfehlen, sich mit dem Framework vertraut zu machen, bevor Sie es für ein Live-Projekt verwenden. Mit einem Framework, das Sie nicht kennen, werden Sie wahrscheinlich schlechte Arbeit leisten - was eine bequeme Ausrede sein wird, um dem Framework die Schuld zu geben. Holen Sie sich eine Schulung und machen Sie einen Probelauf an einem wichtigen Projekt, bevor Sie es auf Ihr erstes Live-Projekt loslassen. Holen Sie sich einen Mentor oder eine Führungskraft, der/die Sie bei Ihrem ersten Versuch anleitet.

Auf den zweiten Blick klingt es so, als hätten Sie sich bereits entschieden. Niemand zwingt Sie dazu, einen Rahmen zu verwenden. Machen Sie auf jeden Fall Ihr eigenes. Sammeln Sie genug Erfahrung, um selbst zu entscheiden.

Wenn es jedoch Teamkollegen, Arbeitgeber oder Kunden gibt, die von der Entscheidung betroffen sind, sollten Sie sicherstellen, dass sie die Opportunitätskosten des eigenen Rollens verstehen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X