簡単に言えば、Rakeは何をしますか?それにはどのような目的がありますか?ビルドツールであることは理解していますが、もう少し詳しく調べています。
4 に答える
これらの回答は、DSL とは何かを知っているか、Make や Ant に精通していることを前提としています。そうでない場合は、次のとおりです(おそらく非常に単純化された答えです):
Rakeは、 Rubyプロジェクトで使用できるツールです。コマンドラインで実行できる「タスク」を ruby コードを使用して定義できます。
Rake は、ダウンロードしてruby プロジェクトに ruby gem として含めることができます。
インストールしたら、プロジェクトに追加する「 Rakefile 」という名前のファイルでタスクを定義します。
Rake には、ファイル操作(ファイルの作成、削除、名前変更、および移動)、 FTP経由のサイトの公開など、ビルド/デプロイ プロセス中に一般的なタスクを簡単に実行できるライブラリがいくつか付属しているため、これを「ビルド ツール」と呼んでいます。 / SSH、および実行中のテスト。
詳細については、プロジェクトのドキュメントをご覧ください: http://rake.rubyforge.org/
詳細については、Rakeに関するMartinFowlerの記事をお試しください。
http://martinfowler.com/articles/rake.html
彼の前文は次のとおりです。
Rakeはビルド言語であり、作成とアリの目的が似ています。makeやantのように、それはドメイン固有言語であり、これら2つとは異なり、Ruby言語でプログラムされた内部DSLです。この記事では、rakeを紹介し、このWebサイトを構築するためにrakeを使用した結果、依存関係モデル、合成タスク、カスタムビルドルーチン、ビルドスクリプトのデバッグなどの興味深い点について説明します。
プロジェクトのホームページにも、またはリンクされている詳細情報があります。
Rake を使用すると、適切な名前空間 API を介して Ruby コードを実行できます。例は rake db:migrate です。他のタスクの前後にタスクを自動的に実行できます。それだけです。
Rakeは、依存関係に基づく宣言型プログラミングをRuby プログラミング言語で実装したものです。基本的に、Rake は Rubyにとっての Make とは C にとってのMakeと同じものですが、大きな違いは Make が外部DSLであるのに対し、Rake は内部 DSL です。