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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Java

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

PHP

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

JavaScript

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

jQuery

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

Q&A

解決済

3回答

9229閲覧

APIリファレンス 使い方

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

PHP

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

JavaScript

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

jQuery

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

0グッド

1クリップ

投稿2016/04/17 07:30

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

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

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

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

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

こんにちは。
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/17 10:11

編集2016/04/17 11:13
jun68ykt

総合スコア9058

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/04/18 00:01

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

0

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

投稿2016/04/17 07:39

unau

総合スコア2468

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/04/17 09:01

入門書は何冊か読んだのですが、APIリファレンスの使い方や実装したい機能の調べ方とか詳しく載っているものが見当たらないような気がします。 Javaは、スッキリわかるJava入門の入門編と実践編を読んだのですが、APIリファレンスに関することはあまり詳しくない感じがしました。 実際に、作りたい機能を実装するためのAPIリファレンス内の検索の仕方や内容の読み方を説明してくれる本もAmazonで検索したのですが、うまくヒットしませんでした。(「APIリファレンス 使い方」等で検索しました。) APIリファレンスの使い方とかがわかる入門書でオススメとかあったら、教えてください。
unau

2016/04/17 09:06

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

退会済みユーザー

2016/04/23 05:02

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

0

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

投稿2016/04/17 08:44

dsuzuki

総合スコア1682

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/04/17 09:03

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

2016/04/17 14:19

おまけで、ykt68 さんとは別のアプローチになりますが、APIリファレンスからレシピ集で利用されているクラスやメソッドを探すときに、利用しなくても、そのクラスや継承関係にあるクラスのメソッドを一通り目を通しておくことをお勧めします。 慣れてきたら(時間があれば)、同じパッケージの別クラスも眺めておくといいかな。 どんなクラスがどんなメソッドを持ちどんなパッケージに分類されているか、をぼんやりでも覚えていれば、APIリファレンスから目的のクラスやメソッドを探すときに範囲を絞ることが出来ます。 これが unau さんのおっしゃる「アタリをつける」ことになると思います。 もちろん全く未知のクラスを探すときには、ググるのが早いと思いますが。
退会済みユーザー

退会済みユーザー

2016/04/23 05:04

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問