Auswahl und Implementierung von Open-Source-Bibliotheken

Beim Erstellen eines MVP möchten Sie so viel Code wie möglich stehlen. Sie machen sich keine Gedanken über die Code-Lizenzierung, Sie möchten den Markt so schnell wie möglich mit Open Source validieren. Sie möchten also Bibliotheken von Drittanbietern verwenden, um die Schwerstarbeit in Ihrer App zu erledigen. Dies ist das Herzstück der meisten großartigen neuen Unternehmen, die eine aufstrebende Technologie nutzen, um einen neuen Markt zu bedienen. Uber hat in seiner ersten Version kein GPS-Mapping-System gebaut. Google hat in seiner ersten Version kein NLP-System gebaut. Netflix hat in seinem Prototyp keine Gesichtserkennungsbibliothek zur Identifizierung von Schauspielern erstellt. Das sollten Sie auch nicht. Dieser Artikel enthält einige Tipps zum Identifizieren und Verwenden vorhandener Bibliotheken für Ihr MVP.

Es gibt viele Formen von Lösungen, die Sie auswählen können, von White-Label-Optionen bis hin zu Diensten wie kalendarisch, zu Open-Source-Python-Bibliotheken. Hier konzentrieren wir uns hauptsächlich auf Codebibliotheken, die direkt in Ihre App importiert werden, um eine bestimmte Funktion zu erfüllen. Dinge wie ein Posenerkennungsbibliothek, Gesichtserkennung, [natural language processing](Fuzzy-Matching bzw E-Mail-Versand von Code. Das erste, was zu sehen ist, ist, ob die Bibliothek die von Ihnen benötigten Funktionen mit einer ausreichend hohen Genauigkeit bereitstellt. Ist Ihr Anwendungsfall eine Standardaufgabe der Bibliothek? Oder ist es auf dem neusten Stand der Technik in der Bibliothek? Hat es genug Anpassungsmöglichkeiten? Dann möchten Sie Popularität und aktuelle Aktivität ermitteln. Wie viele Sterne hat das Projekt auf GitHub im Vergleich zu seinen Konkurrenten? Wann war die letzte Zusage? Wie viele aktive Autoren gibt es in der Codebasis? Stellen Sie fest, ob es mit Ihrem Tech-Stack kompatibel ist oder ob Sie einen neuen Stack erstellen können, um mit der Bibliothek zu interagieren. Werden Sie damit über eine Datenbank, Dateien, Streams kommunizieren, wenn es in einer anderen Sprache ist. Haben Sie Entwickler, die mit der Bibliothek arbeiten können, oder müssen Sie neue Spezialisten finden, die über Fachkenntnisse verfügen?

Bei der Implementierung der Bibliothek ist es oft sinnvoll, einen Entwickler zu finden, der schon einmal mit dieser Bibliothek gearbeitet hat. Sie haben ihre eigenen Feinheiten, Fallstricke und Vorgehensweisen, die dem Standardstil der Sprache, in der sie geschrieben sind, widersprechen könnten. Finden Sie den Entwickler auf Upwork oder ähnlichem, da es sich im Allgemeinen für die Codequalität und Zweckmäßigkeit lohnt, einen Experten zu finden etwas mehr bezahlen. Wenn die perfekte Bibliothek in einer anderen Sprache als Ihre Hauptcodebasis ist, denken Sie sorgfältig über die Design-Contains der Weiterleitung von Informationen nach und von nach. Es gibt viele Möglichkeiten, dies zu tun, aber versuchen Sie, die Codebasis Ihrer anderen Sprache so einzelfokussiert wie möglich zu halten. Erledigen Sie die Aufgaben der Bibliothek und überlassen Sie den Rest der Haupt-App. Unabhängig davon, ob es sich um eine andere Sprache handelt oder nicht, empfiehlt es sich normalerweise, Aufgaben der Bibliothek in ihre eigenen Dateien in Ihrer App zu verlagern. Halten Sie Aufgaben im Zusammenhang mit der Bibliothek von der alltäglicheren Geschäftslogik der App fern. Wenn Sie die Bibliothek austauschen, erweitern oder in Zukunft eine eigene erstellen müssen, ist es auf diese Weise einfach, sie zu verwalten und damit zu arbeiten.

Möglicherweise müssen Sie die Bibliothek erweitern und bearbeiten. Dafür möchten Sie vielleicht direkt zu ihrem GitHub beitragen. Fordern Sie ein Feature an und übernehmen Sie dann das Eigentum an dem Gebäude, durchlaufen Sie den Code-Review-Prozess und lassen Sie es einziehen. Dadurch wird es in Zukunft für jeden verfügbar sein, der die Bibliothek verwendet. Alternativ können Sie einen Patch für die Bibliothek erstellen, der privat und nur für Sie bestimmt ist. Indem Sie einen Patch erstellen, anstatt direkt zu forken und zu bearbeiten, können Sie alle neuen Versionen der Bibliothek patchen, die herauskommen. Auf diese Weise erhalten Sie Zugriff auf neue Funktionen der Hauptbibliothek und erweitern gleichzeitig die von Ihnen benötigte Funktionalität. Wenn Ihre App erfolgreich ist und immer beliebter wird, stellen Sie möglicherweise fest, dass die ursprünglich ausgewählte Bibliothek keine kommerzielle Lizenz hat oder Sie zu viel dafür bezahlen. Jetzt müssen Sie Ihr eigenes spezialisierteres und leistungsfähigeres Tool neu bewerten und möglicherweise erstellen, um diese Aufgaben zu erledigen. Dies ist ein großes Problem, und Sie sind mit den erweiterten Funktionen der von Ihnen verwendeten Bibliothek bestens vertraut. Sie können ein Team einstellen, um ein neues Team aufzubauen, und sich auf die Funktionen konzentrieren, die für das Unternehmen am relevantesten sind.

Seien Sie zuerst Produkt. Vermeiden Sie die Falle, sich in eine Bibliothek zu verlieben. Es ist in Ordnung, 5 % seiner Funktionen zu verwenden, das ist höchstwahrscheinlich das, was Sie tun werden. Graben Sie sich nicht in all die erstaunlichen Funktionen ein, die die Bibliothek bietet, und entwickeln Sie dann Produkte oder komplexe Funktionen für Ihre Benutzer, die damit angeben. Konzentrieren Sie sich auf den Wert, den Sie den Benutzern hinzufügen, und wählen Sie Bibliotheken und Code-Snippets aus, die dies ermöglichen. Der größte Teil des importierten Codes wird ruhen, und das ist gut so.

Bei der Auswahl und Erstellung einer App auf Basis von Bibliotheken von Drittanbietern gibt es viel zu beachten. Es ist fast immer am besten, so zu beginnen: Stellen Sie sich auf die Schultern von Giganten. Wenn Sie Hilfe bei der Auswahl oder Navigation in der Open-Source-Landschaft benötigen, wenden Sie sich an uns.

Originalartikel veröffentlicht unter

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *