netizen koalant による入門テキスト (ダウンロードするにはログインしてください)。
Ruby 言語、Rails のインストール、簡単な例を紹介します。初心者にとって非常に便利です。強くお勧めします!
Java プログラマーとして j2ee 開発に従事している場合、間違いなく多くのアプリケーション フレームワークを使用することになります。 Java 言語コミュニティほど活発な言語はなく、新しいプログラミング概念はすぐにインターネット上に対応するオープンソース実装となるでしょう。最も一般的に使用される Web サイト開発モデル MVC に対応して、各層にはコントローラー層 (C) に属する多くのフレームワークと、ビュー層 (V) に属する Velocity フレームワークが含まれます。 Hibernate、iBatis、OJB、または JPOX などの JDO の多くのオープンソース実装のいずれかです。しかし、選択肢が多すぎることは必ずしも良いことではなく、誰もが正しいことを行うために正しいフレームワークを採用できるわけではありません。開発プラットフォームが .net の場合は、通常、開発ツールとして Visual Studio .net をインストールし、情報を見つけるために MSDN をインストールするだけで、この状況を回避できます。プログラム開発者にとって、これは非常に困難な状況です。私は個人的に Java がとても好きです。学習でも練習でも、Java は私たちに多くのものを与えてくれます。しかし、なぜ私は .net のような「ワンストップ」ソリューションが何度も正しいと思うのでしょうか?
Java プログラマーとして、Java に関するより明らかな問題のいくつかは、第一に Java が複雑すぎること、第二に Java がプログラマー指向すぎてユーザー指向ではないことだと思います。 C++ と比較すると、Java はすでに非常にシンプルです。現在非常に多くの Java プログラマが存在するという事実がこの点を示しています。しかし、誰かがかつて言ったように、「Linux では誰がマスターであるかを簡単に見分けることができます」が、Java の分野ではそう簡単ではありません。私の周りの同僚は、インターフェイス、抽象クラス、サーブレットが何であるかを正確に区別できなくても、依然として非常に低レベルの概念的な間違いを犯していることによく気づきます。しかし、なぜ Java は複雑だと言われているのでしょうか? それは、1 つのことを達成するためにあまりにも多くの異なるテクノロジが必要だからです。では、明確な概念を持たないプログラマーが正しい選択を行えるようにするにはどうすればよいでしょうか?そして、多くのフレームワークのうち、「ワンストップ」サービスを提供するフレームワークはどれだけあるでしょうか?最近登場した Spring フレームワークは、多くのフレームワークの中で最も多くのサービスを提供しますが、依然としてユーザーではなくプログラマを重視しすぎているという新たな問題があります。なぜそんなことを言うのですか?フレームワークは本来プログラマーのために設計されたものですよね。 Spring には多くの選択肢が用意されていますが (十分ではありません。ORM 自体がありません)、それを使用する簡単な方法は提供されていないため、プログラマ向けとしか言えません。ほとんどの Java フレームワークにはこの問題があります。つまり、学習曲線が比較的長いということです。フレームワークがプログラマ向けかユーザー向けかを区別する鍵となるのは学習曲線のレベルだと思います。これは主にフレームワークの使いやすさに反映されると思います。実際、フレームワークの最終的なユーザーはプログラマです。「ユーザー」と「プログラマ」を区別する理由は、「プログラマ」向けのフレームワークには、大量のインフラストラクチャや部品が提供されているにもかかわらず、使いにくいものがあるためです。依然としてプログラマが自分で組み立てる必要があります。 「ユーザー」指向のフレームワークは、ユーザーが指示に従うだけで使用できるようになります。なぜRuby on RailsがJavaコミュニティにセンセーションを巻き起こすのかというと、Javaフレームワークにはない、ユーザー志向でシンプルで使いやすいフレームワークを「ワンストップ」で提供してくれるからだと思います。なぜ Ruby on Rails でこれができるのでしょうか? Java 自体ではこれができないのではないでしょうか? 実際のところ、Java フレームワークの設計者の多くはこれを行っていません。おそらく、彼らの考え方は、パターンを使用して優れたフレームワークを設計する方法に限定されており、フレームワークの使いやすさについては十分に考慮されていないのかもしれません。 Spring を使用したことがある人なら誰でも、その XML 設定ファイルが徐々に拡張されることを知っていますが、この問題を解決するために、XML 設定ファイルをより小さな設定ファイルに簡単に分割することができます。ただし、xml 構成ファイルを使用する場合は、Java プログラミングの慣習的な概念に従います。「Java は最良のプログラミング言語であり、XML はデータを記述するための最良の言語であり、この 2 つの組み合わせは最も完璧です。アプリケーションが使用しない場合は、 XML でそれを記述する場合、それは良い Java アプリケーションではありません。」
ただし、この点で、Ruby on Rails は多くの Java フレームワークと区別され、フレームワークの使いやすさにおいて画期的な進歩を遂げます。この考え方は、構成よりも規約であるという Rails の設計全体に貫かれています。 たとえば、Java Web アプリケーションを作成する場合、通常、MVC に従って対応するクラスを区別します。私は、Controller クラスを Web ディレクトリに、View クラスを View ディレクトリに、Model クラスをドメイン ディレクトリに配置することを好みます。 。しかし、人によって設定も名前も異なります。これらのディレクトリをフレームワークに知らせる唯一の解決策は、XML 構成ファイルを通じてこの情報を知らせることです。 Rails の解決策は次のとおりです。私がディレクトリ構造を定義し、あなたは私が定義したディレクトリに物を置くだけで済みます。 これは、rails に設定ファイルがほとんどない (ただし、まったくないわけではない) 重要な理由です。アイデアは非常にシンプルですが、それがもたらす利点は、Rails の開発効率が Java 開発の 10 倍であるということです (これは Rails ファンによって主張されていますが、私はこれを信じています。また、この記事を読んだ後はそれがわかると思います) )。では、これだけで Java を使用するよりも Rails 開発が速くなりますか?完全ではありません。これは、コードの削減というレールの別の設計哲学からも恩恵を受けるからです。 Rails がその設計言語 Ruby のおかげでこれを達成できると主張できる言語はありません。 Ruby を使用すると、他の言語では不可能な、少量の言語で多くの機能を記述することができます。 Rails をマスターするには、Ruby を理解する必要があります。 誰かがかつてこう言いました。「Zope (有名な Python Web フレームワーク) は Python のキラー アプリケーションであり、Python は zope の秘密兵器です。」 この文は、rails と Ruby の関係を説明するのに最も適切だと思います。
拡大する