私はプログラミングが初めてで、フォーラムで人々に尋ねる以外に、特定のことのために必要なJavaクラスを見つける方法があるかどうか疑問に思っていましたか? Sun の Web サイトで API を見たことがありますが、適切なクラスを見つけるための適切な検索オプションがありません。
8 に答える
Java(またはプログラミング)を初めて使用する場合は、自立するためにドキュメントを読んで理解する方法を学ぶことが重要になります。これは、他の人からの依存を減らすための最初のステップです。場合によっては、学習とプログラミングの速度が向上します。
以下は、いくつかのヒントと提案です。
JavaAPI仕様を理解してください。
最初は、API仕様のJavadoc形式は検索機能がないと少し力不足に見えますが、ブラウザーでドキュメントを参照できることは非常に強力であることがわかりました。
Javadocは単なるHTMLファイルであるため、ブラウザで簡単に表示およびナビゲートでき、ページのブックマークも簡単です。また、API仕様はダウンロード可能であるため、情報を入手するために常にWebにアクセスする必要はありません。
ドキュメントは単なるウェブページであるため、ブラウザの検索機能を使用するとページ内の情報をすばやく見つけることができます。それが失敗した場合は、Googleまたはお気に入りの検索エンジンを使用してドキュメントをすばやく簡単に見つけることができます。
Google(またはお気に入りの検索エンジン)はあなたの友達です。
StringBuilder
クラスに関する情報が必要ですか?次のクエリを試してください。
StringBuilder
最初の結果は、クラスのJavaAPI仕様ページになります。ヒントはjava 6
、クエリの最後に文字列 ""を追加することです。これにより、ほとんどの場合、API仕様が最上位に表示されるようです。
API仕様の構造に慣れてください。
Javadocツールの表示構造は非常に素晴らしく論理的です。
+-----------+-------------------+
| | |
| Packages | |
| | |
+-----------+ Details |
| | |
| Classes | |
| | |
+-----------+-------------------+
Javadocは3つのフレームに分割されています。
- 左上のフレーム:JavaプラットフォームAPIのすべてのパッケージのリスト。
- 左下のフレーム:選択したパッケージ内のすべてのクラスのリスト。
- 右フレーム:現在選択されているパッケージまたはクラスの詳細。
一般に、クラスの検索は、左上のフレームからパッケージを選択し、次に左下のフレームでクラスを検索し、最後に右側のフレームの詳細を参照することから始まります。アイデアは次のとおりです。
Package -> Class -> Details
クラスとパッケージの右側のフレームの詳細も非常に構造化されています。クラスの構造は次のとおりです。
- クラス名
- 継承階層
- 実装されたインターフェース
- 関連クラス
- クラスに関する情報と説明。使用例。
- フィールドサマリー
- コンストラクターの要約
- メソッドの概要
- フィールド/コンストラクター/メソッドの詳細。
メソッドに関する情報を探しているときは、[メソッドの概要]まで下にスクロールして、目的のメソッドを見つけ、そのメソッド名をクリックすると、[メソッドの詳細]にジャンプします。
また、クラスに関するすべてが1ページに文書化されています。1ページには情報が多すぎるように見えるかもしれませんが、クラスについて必要なすべての情報を1か所から簡単に取得できます。他のドキュメント形式では、同じクラスの複数のメソッドに関する情報を取得するために、複数のページをめくる必要がある場合があります。Javadoc形式では、すべてが1ページにまとめられています。
JavaプラットフォームAPIを学ぶ
次のステップは、JavaPlatformAPIの重要なパッケージを学習することです。これは、プラットフォームAPIの膨大なクラスのコレクションからクラスをすばやく見つけるのに役立ちます。
心配しないでください、ゆっくりしてください-一度にすべてを学ぶ必要はありません!
関心のあるいくつかのパッケージは次のとおりです。
java.lang
--すべてのJavaプログラムに自動的にインポートされる、、、、およびその他String
のSystem
クラス が含まれます。Integer
java.util
--Javaコレクション(、、、およびそれらの実装などList
)、、Set
およびその他の功利主義クラスが含まれています。これはおそらく、一般的な操作を実行するのに役立つクラスを見つけるために行く最初のパッケージです。Map
Date
Random
java.io
File
-- 、Reader
s、Writer
s、およびさまざまなsなどの入力と出力に関するクラスStream
。java.awt
およびjavax.swing
-グラフィカルユーザーインターフェイスの場合、JavaはAbstract Window ToolkitまたはSwingを使用し、これら2つのパッケージはJavaでGUIを処理するために使用されます。
クラスがどこにあるかを知り、膨大な量のドキュメントのどこを見ればよいかを理解し始めると、情報を見つけやすくなります。慣れるまでには少し時間がかかるかもしれませんが、慣れればもっと簡単になり、自分で情報を見つけることができるようになります。
幸運を!
ほとんどの場合、それが言語のコア (サードパーティのライブラリではない) にある場合、次のリンクを使用します。
http://java.sun.com/javase/6/docs/api/allclasses-frame.html
Java SE のすべてのクラスをリストします。
クラスが機能するかどうかを知るために、Ctrl-F を押して、適切なクラスを推測します。
最終的に、クラスに慣れると、検索がより簡単になります。
たとえば、配列を使用するとします。
Ctrl+F 配列の結果:
Array
Array
ArrayBlockingQueue
ArrayDeque
ArrayIndexOutOfBoundsException
ArrayList
Arrays
ArrayStoreException
ArrayType
ArrayType
それぞれをクリックしてドキュメントを表示します。意味のないものもあれば、まさに私が必要としているものもあります。
なかなかうまくいかないこともあります。ウィンドウを作成する方法を見てみましょう:
Ctrl+F は正解である JFrame を表示しませんが、感覚を調整するだけです :)
これが役立つことを願っています。
それはあなたが何を意味するかによります。たとえば、"Where was BufferedReader again?" のような正確なクラスの場所を知りたい場合は、Google 検索を行います。
site:java.sun.com BufferedReader
タスクの実行方法を知りたい場合、たとえば「端末からエコーせずにパスワードを読み取るにはどうすればよいですか?」(java.io.Console)、アドバイスを求めて初めてわかることもあります。
DocJarを使うのが好きです。
eclipseのプラグインもありますが、まだ試していません。
http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=959
- Java ライブラリをお探しですか? データベース接続プール Javaなどの Google 検索を試してください。
- コア Java ライブラリ内のクラスをお探しですか? IDE をインストールし、クラスを探します。たとえば、EclipseでCtrl-Shift-T を試して、名前を入力してください: LinkedList。Eclipse では、*Listなどのワイルドカードを使用して、名前が List で終わるすべてのクラスを取得することもできます。
- パッケージ内の特定のクラスをお探しですか? Sonatype の Maven リポジトリを試して、高度な検索をクリックし、新しいドロップダウンでクラス名を選択します。
Java チュートリアル ( http://java.sun.com/docs/books/tutorial/ ) と Java API ( http://java.sun.com/javase/6/docs/api/ ) は、検索に不可欠なリソースです。何かを行う方法と、どのクラスを使用するか。
Java SE API の優れたリファレンスであるJava In A Nutshellなどの本をお勧めします (Java 5 のみをカバーしていますが、ほとんどのニーズには問題ないはずです)。
チュートリアルが優れており、検索エンジンが一般的に優れていることに同意します (しかし、それらはすべて SO に戻ってきます)。フォーラムの他に見逃せないリソースの 1 つは、あなたの周りにいるプログラマーです。開発チームやクラスに参加している場合は、必要な回答を得ることができます。また、共同で検索を行うこともできます。探しているものを正確に理解しているかどうか確信が持てない場合は、人間が助けてくれる方が簡単です。