質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.48%

  • PHP

    20834questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • JavaScript

    17006questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • Java

    14102questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • jQuery

    6926questions

    jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

APIリファレンス 使い方

解決済

回答 3

投稿

  • 評価
  • クリップ 1
  • VIEW 2,309

szk24

score 70

Java、JavaScript、JQuery、PHP辺りを勉強しているのですが、APIリファレンスの使い方がわかりません。

自分が実装してみたい機能があったとして、APIリファレンスでどうやってそれを見つけたらよいのでしょうか?

あと例えば、JavaのArraylistの部分を見たのですが、よくわかりませんでした。説明が難しいのですが、どうやったら理解できたり、実装の仕方がわかるのでしょうか?

質問の説明も合っているのかよくわかりませんが、教えてください。よろしくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

+3

szk24 さんが、まだ API リファレンスを見てプログラミングできるだけの経験を積まれていない、ということではないかと思います。2, 3 種類のプログラミング言語である程度まとまってものを作ったりすれば、まったく新しいプログラミング言語やライブラリなどのリファレンスのどこをどうやって調べればいいかのアタリがつくようになるはずです。
まずは、その言語の入門書で勉強されるほうがよいと思います。それである程度自由に作りたいものが作れるようになったときには、自然と API リファレンスを使いこなせるようになっていることでしょう。API リファレンスを使いこなすことは目的ではなく手段のはずです。そこに目標を置くのではなく、自分が作りたいものをしっかりイメージして、それを実現すべくもがいているうちに、手段として使えるようになるのではないでしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/04/17 18:01

    入門書は何冊か読んだのですが、APIリファレンスの使い方や実装したい機能の調べ方とか詳しく載っているものが見当たらないような気がします。

    Javaは、スッキリわかるJava入門の入門編と実践編を読んだのですが、APIリファレンスに関することはあまり詳しくない感じがしました。

    実際に、作りたい機能を実装するためのAPIリファレンス内の検索の仕方や内容の読み方を説明してくれる本もAmazonで検索したのですが、うまくヒットしませんでした。(「APIリファレンス 使い方」等で検索しました。)

    APIリファレンスの使い方とかがわかる入門書でオススメとかあったら、教えてください。

    キャンセル

  • 2016/04/17 18:06

    API リファレンスを使いたい、というのが目的化してるのがちょっと違うかな、と思うのです。変な言い方ですが、アタリをつけて API リファレンスを引けるようになるだけのスキルがつかない限り、API リファレンスを使えるようにはならない、という感じで。
    「実装したい機能の調べ方」については、dsuzuki さんの回答にあるような逆引きリファレンスがいいのかもしれません。

    キャンセル

  • 2016/04/23 14:02

    ありがとうございます。
    逆引きリファレンスから始めたいと思います。

    キャンセル

checkベストアンサー

+2

こんにちは。
 unauさんの「APIリファレンスは手段なので、作りたいものを作り始めたら、自然とAPIリファレンスを読むので慣れるはず」というアプローチと、dsuzukiさんの挙げられている、「逆引き」本の実装例から、APIリファレンスを参照して理解を深めるという方法、いずれも効果的だと思います。

 私の提案として、これら加えて、もう二点ほど挙げます。

1.入門書ではない書籍に挑戦する。

Javaであれば、具体的には

といったあたりです。

 ただし、これらは、APIリファレンスに書いてある内容の理解度を深めてくれることになるとは思いますが、Javaである程度、実践を積んでからのほうがよいかもしれません。
 なお、上記で実践というのは、「開発に使える時間を決められて、ある機能要件を満たすものを作らないといけないという、差し迫った状況」を意味しています。

2.欲しいAPIリファレンスに早くたどり着くために英語力を高める。

 ご質問の中には、おそらく

 「何か目的を果たすプログラムを作ろうとして、そのために必要なクラスやメソッドが分からないから、そもそもAPIリファレンスのどこを見たらよいかも分からない」

 という問題も含まれているものと思います。それはどうやったら解消されるか(あるいは、自己解決する力がつけられるか)について、メソッドとクラスの順に以下、書きます。

 まず、メソッド名については、たくさんプログラムを書いているうちに、類推できるようになります。何かを取得するメソッドだったら、getやfindから始まってその後欲しいものが英語になっているメソッドがないか探してみればよいかと思います。逆にいうと、一度使ってみたメソッドの名前に意識を向けて、次に、同じような機能のメソッドが必要になったときにそれを類推できるように、普段から心がけておくとよいでしょう。値を取得するメソッドはたいていgetで始まりますが、findもあれば、fetchも使われますし、retrieveなんてのも使われる。これらのように、同じ「取得する」でも複数の動詞があり、これらの微妙なニュアンスの違いも意識して自分のものにしておけば、APIリファレンスを「こういうメソッド、ないかな?」という調べ方であたるときに、欲しいメソッドに早くたどり着けるようになります。

 次にクラスですが、これは例を挙げます。
 たとえば今、複素数を使うプログラムをJAVAで書きたいとしましょう。
 今これを書いている時点で、実はこの私も、複素数クラスを誰かが既に書いているとは思うけど、誰が作っていて、どこからダウンロードしたらいいのか、APIドキュメントがどこにあるのかわかりません。
 そのときはまんまGoogleで検索してしまいます。複素数は英語で、complexですから
「complex java api」
あたりでググります。
 すると、(ラッキーなことに)一番上に
 Complex (Apache Commons Math 3.6.1 API)
が出てくるので、Apache commonsのライブラリを入手して、このComplexのJavaDOCを読めば、おそらくほとんどやりたいことは解決できるのではないでしょうか。

 上記で、メソッド名を推定するにしても、自分の欲しい機能を提供してくれるクラスの名前で検索するにしても、上記の例でいえば、「複素数」と言われて、「complex」がすぐ思いつくかで、正解にたどり着くスピードが変わってきますので、英語に慣れるのが効果的という結論になるのですが、分からない単語も和英辞典で調べることを習慣にしていけばよいと思います。
 たとえば、何かの製品の受発注システムを作るときに「注文」というクラスを書く場面があったときに、「注文」の英訳が分からないからといって、和英辞典で引く手間を惜しんで、ローマ字まんまの 

public class Chuumon

なんていうクラスを書くのはダメで、和英辞典で調べてちゃんと

public class Order

というクラス名にするとかです。そういう細かいところで差がつくと思います。

以上、ご参考になれば幸いです。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/04/18 09:01

    おお、詳しい回答ありがとうございます。

    入門書以上の本を読んでみます。あと、メソッド名や英語に慣れていきたいと思います。
    ありがとうございました。

    キャンセル

+2

書籍で「逆引き」リファレンスが複数あります。
Java逆引きハンドブックなど。いわゆるレシピ集です。
これらで作りたい機能をどのように実装するのかを学び、そこで利用されているクラスやメソッドの詳細を知るためにAPIリファレンスを参照する、というのはどうでしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/04/17 18:03

    Java逆引きハンドブックですか。本自体はあることは知っていたのですが、レシピ集だったんですね。買ってみます。
    ありがとうございます。

    キャンセル

  • 2016/04/17 23:19

    おまけで、ykt68 さんとは別のアプローチになりますが、APIリファレンスからレシピ集で利用されているクラスやメソッドを探すときに、利用しなくても、そのクラスや継承関係にあるクラスのメソッドを一通り目を通しておくことをお勧めします。
    慣れてきたら(時間があれば)、同じパッケージの別クラスも眺めておくといいかな。

    どんなクラスがどんなメソッドを持ちどんなパッケージに分類されているか、をぼんやりでも覚えていれば、APIリファレンスから目的のクラスやメソッドを探すときに範囲を絞ることが出来ます。
    これが unau さんのおっしゃる「アタリをつける」ことになると思います。
    もちろん全く未知のクラスを探すときには、ググるのが早いと思いますが。

    キャンセル

  • 2016/04/23 14:04

    少しづつでもAPIリファレンスに慣れるために、クラスや継承関係にあるクラスのメソッドにも目を通したいと思います。
    ありがとうございました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.48%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    Java APIリファレンスについて (Java学習中)

    JavaにAPIリファレンスというものがあり、そこにはパッケージやクラスについての情報がたくさんあり、得ることができるということを今知りました。 エンジニアとして、活躍するため

  • 解決済

    LocalTimeのisAfter()文の解決と、LocalTimeをDurationに変換したいの...

    Java初心者です。 2つ質問があります。 LocalTimeの判定式isAfter文の解決と、 LocalTimeをDurationに変換できません。 🔴 if(t

  • 解決済

    キー入力処理について

    コード public class Part01 extends JApplet{ public void init(){ setSize(1000, 800

  • 解決済

    Javaの弱参照について

    弱参照を生成するためのクラスであるjava.lang.WeakReferenceについての質問です。 public class Hoge { Foo strongFo

  • 解決済

    図形の回転

    コード public class Test extends JFrame{ int frameW = 500; //フレームの幅 int frame

  • 解決済

    double型で有効数字を使う

    題名の通りです。double型で有効数字の桁数を設定することは可能でしょうか? 可能ならばやり方を教えてください。 よろしくお願いします。

  • 解決済

    一時ファイルのコピー

    前提・実現したいこと javaを触るようになって数日の初心者です。 下記のコードでcreateTempFileで作成したファイルをコピーしたいのですが、どのようにやるのがよいのでし

  • 解決済

    Date Calendar 使い方

    前提・実現したいこと javaでDate Calendar型を使った今日と昨日の日付を出力するコードを作りたいです。 発生している問題・エラーメッセージ 複数個所で ”シンボル

同じタグがついた質問を見る

  • PHP

    20834questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • JavaScript

    17006questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • Java

    14102questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • jQuery

    6926questions

    jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。