Eine weitere Implementierung der Datenverarbeitung

Stellen Sie sich ein Tool vor, mit dem Sie beliebige Daten in ... beliebige Daten umwandeln können.

Das am besten zugängliche Beispiel ist Bilder. Was ist, wenn ich ein Bild einer bestimmten Größe machen und irgendwo ein Wasserzeichen (auch eine bestimmte Größe) platzieren möchte?

Und hier ist ein Beispiel dafür, wie dies aussehen könnte :

Bild

PS: Dies ist ein Übersichtsartikel. Wenn es interessant ist, werde ich die Ansätze genauer beschreiben.

Motivation


Vor kurzem, im November 2018, musste ich die Größe eines Fotos ändern ...

Online-Dienste machten diesen Prozess aufgrund ihrer "Funktionen" (Werbung, eine seltsame Oberfläche usw.) so schmerzhaft wie möglich.

Die Standard-Windows 10-Tools schienen mir nicht offensichtlich zu sein. Ich musste GIMP herunterladen und von dort aus alles tun, was nötig war - um die Größe des Fotos zu ändern.

Zu meiner Verteidigung:

  1. Zeitpunkt des Auftretens des Problems ~ 1 Uhr morgens (1 Uhr morgens)
  2. Es war kein funktionierender Laptop zur Hand
  3. Windows ist nur für Spiele zu Hause. Jetzt schreibe ich manchmal Code mit einer Apple-Tastatur



Und dann entschied sich ein anderer Programmierer, ein anderes Knochenwerkzeug zu erstellen.

Anforderungen


Dieses Werkzeug sollte alle Krücken Krücken sein:

  1. Einfache Benutzeroberfläche
  2. Einfache API
  3. Bequeme Organisation von Projekteinheiten
  4. Minimale Schaltflächen und Einstellungen
  5. Die Fähigkeit, ihre ... "Standards" umzusetzen
  6. Open Source: Backend und Frontend

Und vor allem: Jeder, der versteht, was er will, sollte es nutzen können.

Mehrere mögliche Sequenzen:

  1. Bild, Bild kleiner, Filter
  2. Laden Sie URL-Inhalte herunter, lassen Sie nur nützliche Inhalte, lassen Sie nur Text
  3. Laden Sie ein Bild herunter und stellen Sie fest, dass sich ein Objekt darauf befindet (Vorlagenübereinstimmung).



Implementierung


Kürzlich auf Habré gelesen Es ist notwendig, zu Microservices heranwachsen zu müssen ... und beschlossen, diesem zu folgen. Es gab bereits einige Versuche, so etwas durch „schöne“ (meiner Vorstellung nach) Strukturen zu tun: Jede Funktion (wie template_match , md5 ) ist wie ein für die Lösung ihrer Aufgabe optimierter Mikrodienst. Infolgedessen wird alles dazu kommen, aber nicht heute :)

Insgesamt verfügbar:

  1. Frontend ohne schöne Tapeten
  2. Backend-API
  3. Sellerie (in der lokalen Entwicklung verwende ich Redis und im Test und Prod RabbitMQ)
  4. Backend-Mitarbeiter

Ich werde gleich sagen: Ich bin jedoch dank Stackoverflow und Google-Suche sehr mittelmäßig mit Frontend.



Weitere Beispiele


Alle Beispiele finden Sie hier , sie werden zu „Projekten“ zusammengefasst.

Eine davon: Extrahieren von Text aus einer HTML-Seite



Achtung : Die Site arbeitet im schreibgeschützten Modus, das Ergebnis wird jedoch an Sie zurückgegeben. Er kann Ihre Änderungen an Projekt und Pipeline nicht speichern.

Eine kleine Erklärung


Eine Liste, was Daten transformieren kann: hier

Was dieses Projekt nicht ist:

  1. Data Warehouse
  2. Bitcoin Miner

Das Projekt ist sehr ähnlich zu:

  1. Zapier
  2. Yandex Nirvana
  3. Parse.com (ein paar Jahre von Facebook gekauft)

Source: https://habr.com/ru/post/de430880/


All Articles