質問: Javaの学習を始めて一ヶ月ほど経ち、Javaの基礎を一通りとデータベース、サーバサイドなどの学習をしました。 ログイン機能や、複数のページを遷移しながら、データベースから検索や登録、削除機能などを実装することにも挑戦しました。 そこで自分が今まで身につけてきたものを生かして何か作ってみたいと思っています。 同じようなものを再度つくるのもいいのですが、例えばインスタグラムのAPIなどを使ったりもできるのかなと思っています。 APIについての知識はまったくな行けれど、学習しながら一週間程度で実装までできるのか知りたいです。 難しいとも聞いたので、厳しそうでしたらまた他のアイデアを見つけられたらと思っています。 なにかご教授いただけたら嬉しいです。 (追記) Javaの基礎、DB連携の知識でどんなことでができるのでしょうか。 何か面白そうなものを作ってみたいです。 いまのところ、簡単なショッピングサイトやツイッターもどきのようなものしか想像できません。
回答: APIの仕事は必要なリクエストパラメータを受け取ってそれによって処理を行い、結果をレスポンスとして呼び出し元に返すだけです。 「難しい」という根拠がいまひとつわからないのですが、別に1か月であろうと今日始めたばかりであろうと時間は関係ないと思います。 APIでなくても「リクエスト」「レスポンス」は存在する概念となりますので、そこをきちんと理解できているかどうかがネックになってきます。 どのAPIでも、一般に公開されている、ご提示の「インスタグラムのAPI」についてもAPI仕様書というのがあるはずです。 どのAPIにもあるのは冒頭に書いた「リクエストパラメータ」と「レスポンス」です。 表現はものによって違うかもしれません。「インプット」「アウトプット」かもしれません。 ただ意味するところは同じです。 つまり、「APIの機能に正しくアクセスできる方法を用い」「その機能が求めるパラメータを正しく渡す」ことができれば、あとはAPIが結果を返してくれます。 返ってきた結果をどう使うかは、利用者側に委ねられることになるので、ここを「難しい」ということでしたら「どう使うか決めてから、そのような使い方が可能なデータを返してくれるか」をAPI仕様書・ドキュメントから確認すれば良いです。