別のデータ処理の実装

あらゆるデータを...あらゆるデータに変換できるツールを想像してください。



最もアクセスしやすい例は画像です。 特定のサイズの画像を取得し、どこかにウォーターマーク(また特定のサイズ)を配置したい場合はどうなりますか。



そして、これどのように見えるかの一例です



画像



PS:これはレビュー記事です。興味深い場合は、アプローチについてさらに詳しく説明します。



やる気



最近、2018年11月に、写真のサイズを変更する必要がありました...



オンラインサービスの「機能」(広告、奇妙なインターフェイスなど)により、このプロセスは可能な限り苦痛になりました。



標準のWindows 10ツールは私には明らかではありませんでした。 GIMPをダウンロードする必要があり、そこから写真のサイズを変更するために必要なすべてを実行しました。



私の弁護において:



  1. 問題の発生時間〜午前1時(午前1時)
  2. 作業中のノートパソコンはありませんでした
  3. Windowsはゲーム専用です。 今、時々私はリンゴのキーボードでコードを書きます






そして、別のプログラマーが別のボーンを作成することにしました...ツール。



必要条件



このツールはすべて松葉杖である必要があります:



  1. シンプルなUI
  2. シンプルなAPI
  3. プロジェクトエンティティの便利な編成
  4. 最小限のボタンと設定
  5. 実装する機能...「標準」
  6. オープンソース: バックエンドフロントエンド


そして最も重要なことは、自分が望むものを理解している人なら誰でもそれを使用できるようにすることです。



いくつかの可能なシーケンス:



  1. 画像、画像を小さく、フィルター
  2. URLコンテンツをダウンロードし、有用なコンテンツのみを残し、テキストのみを残します
  3. 画像をダウンロードし、その上にオブジェクトがあることを確認します(テンプレートマッチング)






実装



最近Habréを読みましたマイクロサービスに成長する必要があります...そしてこれに従うことにしました。 「美しい」(私の想像では)構造を介してそのようなことを行う試みはすでにいくつかあります。各関数( template_matchmd5など )は、タスクを解決するために最適化されたマイクロサービスのようなものです。 その結果、すべてがこれになりますが、今日ではありません:)



利用可能な合計:



  1. 美しい壁紙のないフロントエンド
  2. バックエンドAPI
  3. セロリ(ローカル開発ではRedisを使用し、テストおよび製品RabbitMQでは使用)
  4. バックエンドワーカー


私はすぐに言います:しかし、StackoverflowとGoogle検索のおかげで、私はFrontendに非常に平凡です。







その他の例



すべての例はここにあり 、「プロジェクト」にまとめられています。



それらの1つ:HTMLページからテキストを抽出する







注意 :サイトは読み取り専用モードで動作しますが、結果は返されます。 彼はProjectとPipelineへの変更を保存できません。



少し説明



データを変換できるもののリスト: ここ



このプロジェクトではないもの:



  1. データウェアハウス
  2. ビットコインマイナー


プロジェクトは非常に似ています:



  1. ザピア
  2. ヤンデックス・ニルヴァーナ
  3. Parse.com(Facebookが購入した数年)



All Articles