Rubyプロジェクトに必要な上位15のツール

公開: 2020-05-21

Ruby開発者は、他の開発者よりもはるかに高速にコーディングできます。 なんで? 宝石。 これらは、あらゆるプロジェクトで使用および再利用でき、特定の機能を提供する、すぐに使用できるアクセス可能なツールです。 それらを使用することは、開発者が機能を最初からコーディングする必要がないことを意味します。 代わりに、既存の宝石を使用して、最短時間で可能な限り最高のMVPを作成できます。

したがって、利用可能な宝石の膨大な量は、Rubyを使用している人にとっては素晴らしいニュースです。 それはおそらくあなたが考えるかもしれないどんな機能のための宝石もあるからです。 もちろん、それは私たちに質問につながります:あなたのプロジェクトに適切な宝石を選ぶ方法は? 正しい選択をするために自分自身に尋ねるべきことがいくつかあります。

  • 要件:要件は、機能と非機能に分けることができます。 適切なツールを選択するということは、要件を理解すること、つまり、何にもっと焦点を合わせたいかを理解することを意味します。 たとえば、機能要件に焦点を当てる場合は、主要な責任をより適切に処理するツールを選択します。
  • 期待:プロジェクトの期待は、そのツールを通じて達成したい結果です。 これを理解すると、より良い戦略を作成するのに役立ち、結果を賢く測定できます。 これには、機能要件と非機能要件に関する知識を使用することもできます。 また、期待が現実的であることを確認してください。
  • ツールの社会的見解:何人の人々がそれを使用しましたか? 彼らはレビューを残しましたか? それは実際に人々の問題を解決しているのでしょうか? ユーザーから提出されたバグがある場合、それはすぐに修正されますか、それとも人々は更新を長時間待たなければなりませんか?

また、ツールがBairesDevなどの信頼できるソフトウェア開発会社によって最も使用されているリストに含まれているかどうかを確認してください もしそうなら、あなたは何も考えずにそのツールを使うことができます。

  • 統合:ツール/宝石はアプリケーションから簡単に統合できますか? そのツールに関連するgemは、アプリケーションですでに使用されていますか? 裏付けとなる書類の質は?

これらのことを知ったら、情報に基づいた決定を下すことができます。 現在、さまざまなカテゴリの市場で利用可能なさまざまなツールがあります。 これが最も人気のあるもののリストで、カテゴリー別にリストされています。

コード品質

Rubocop:コードアナライザーとフォーマッターです。 すべてのRuby実装で実行でき、複数の結果の書式設定やコマンドラインスタイルの書式設定などの機能があります。 簡単に構成でき、Metrics、Style Rails、Lintと呼ばれる4つのサブアナライザーがあります。

Rubycritic:このツールは、RekやFlayなどの他のgemを使用して、コードの品質に関するレポートを提供します。 HTMLファイルを作成し、それらをAからFに評価します。これは、コードレポートに最も便利なツールの1つです。

デバッグ

より良いエラー:静的ページにエラーを表示するgemです。 ラックミドルウェアとしても使用できます。 スタックトレース、変数検査、ソースコード検査、エラー行への直接リンクなど、多くの機能があります。 人々は通常、本番モジュールではなく開発モジュールでこのgemを使用することを好みます。

Pry Byebug :Byebugの機能と、スタックナビゲーションやステップデバッグなどのPryの機能を組み合わせたものです。 追加機能のためにpryREPLを使用します。 これにより、ブレークポイントを設定することもできます。 デバッグにIRBまたはRailsコンソールのいずれかを使用するオプションがあります。

認証

Devise :Ruby onRailsの認証ソリューションです。 これはRailsMVCスタックに基づいており、ユーザーは電子メール、パスワード、紹介システムなどのさまざまなモデルを介してサインインできます。 次のようなさまざまなタスク用のさまざまなモジュールがあります。

  • データベース認証: HTTP認証またはPost Requestを介してアクセスできる、データベースへのパスワードの保存と管理。
  • Omniauthのサポート:ユーザーを確認するには
  • モジュールの回復と記憶:パスワード管理用
  • 追跡:タイムスタンプ、追跡、およびIPアドレスの管理。
  • ロック:特定の回数のサインイン後にユーザーをロックアウトする

CanCanCan :これは、ユーザーが使用できるリソースの数を制限する認証ライブラリです。 承認はファイルに分割され、標準のビューやコントローラーから遠ざけられます。 これには、承認ライブラリ(ルールが定義されている)とレールヘルパー(モデルのロードとチェックを実行する)の2つの主要部分があります。

Rolify :このgemは、ユーザー認証の役割の仕様を定義します。 ユーザーをロールに定義することにより、ユーザー管理とユーザーセキュリティを組み合わせます。 ユーザーは、admin、特権ユーザー、または標準ユーザーにグループ化され、リソースが適切に割り当てられます。

テスト

RSpec :これはBDD環境を使用するテストフレームワークです。 読み取り可能なDSLでテストを記述できるため、理解しやすいです。 いくつか例を挙げると、RSpecコア、RSpec期待値、RSpecモックなどのコンポーネントが含まれています。

カピバラ:それは受け入れテストのフレームワークです。 これは、実際のユーザーがアプリケーションをどのように使用するかをシミュレートします。 クリック率、フォームの入力、可用性などを確認できます。

Capybaraスクリーンショット:これはCapybaraで使用できます。 ユーザーソースを確認し、失敗したcapybaraテストのスクリーンショットを撮ります。 また、HTMLページも保存され、さらにRCAに使用できます。

ファイルのアップロード

CarrieWave :このツールを使用して、ファイルのアップロードと画像処理を行うことができます。 また、ファイルをキャッシュするため、事前にアップロードされたファイルを使用して時間を節約できます。 テストオプションがあり、本番コードを移動しないように、アップロード用に割り当てられたさまざまなファイルにすべてのデータを保存します。

Minimagick :このツールは、 RAMリソースを節約しながらRmagickの機能を提供します。 コマンドラインを使用してImagemagickの機能を使用できます。

グローバルロケーション

ジオコーダー:このツールには、リバースおよびフォワードジオコーディング、IPアドレスのジオコーディング、他のAPIへの接続などの機能があります。 これらに加えて、パフォーマンスを向上させるためのキャッシュなどの追加機能があります。

グローバル化:このツールは、アプリケーションをさまざまな言語に翻訳し、ActiveRecordに翻訳を追加できます。 このツールはまた、コンテンツの重複を回避し、コードをシンプルに保ちます。

ペイメントジェム

Stripe :このツールはStripeAPIへのアクセスを提供します。 このAPIには、すべての異なるタイプのデバイス(モバイルおよびラップトップ)用にカスタマイズ可能な支払いフローがあります。 また、ApplePayとAmexのチェックアウトもあります。 この宝石は、堅牢で効果的な電子商取引の支払いソリューションとして役立ちます。

Paypal Express:この宝石は、PayPal APIを使用して、定期的な支払いと1回の送金を可能にします。 転送は瞬時に行われ、この宝石はデジタル商品にも使用できます。

結論

Rubyアプリケーションでの作業中に必要な上位15のツール/ gemは次のとおりです。 Ruby開発者は、さまざまなgemを使用して複雑な問題を解決します。簡単に統合できるgemは、複雑なコードを記述したり、ソリューションを最初から作成したりすることを回避するのに役立ちます。 もちろん、選択肢が非常に多い場合は、どちらを使用するか、どちらを使用しないかを理解する必要があります。 要件を理解し、それに応じて正しい宝石を使用するのはあなたの責任です。

これについて何か考えがありますか? コメントで下に知らせてください、または私たちのツイッターまたはフェイスブックに議論を持ち越してください。

編集者の推奨事項:

  • Ruby開発者に求められるスキル
  • 2020年に最も必要とされる技術スキルは何ですか?
  • アプリの収益を増やすための3つのプッシュ通知タイプ
  • このめちゃくちゃ便利なコードバンドルの学習は今わずか29ドルです