なかなかプログラミングのコツがつかめません。
そもそもプログラミング的な考えができないんですかね。
現在はJavaの基礎文法を一通り終えて、今後の学習をどう進めようか、というところなんですが、デザインパターンを学習するべきか、逆引きライブラリのような本をみてよく使うクラスなどに習熟すべきか、アルゴリズムとデータ構造などをかじって一回り血肉をつけるか、というふうに悩んでいます。
趣味で何か作りたい、という動機はなく、一日でもはやく現場での業務用プログラムを読み書きできるようになりたいです。皆さんはどのように力をつけていきましたか?アドバイスがあればきかせてください。
No.1ベストアンサー
- 回答日時:
とりあえず、アルゴリズムとデータ構造をやることをおすすめします。
デザインパターンの参考書は、
基本的なデータ構造の知識があることを前提としており、
いきなり読んでもよく理解できないと思います。
Javaのライブラリもデータ構造を使っています。
アルゴリズム…たとえば、ソートのアルゴリズムの知識などは、
各種ライブラリの存在により、必要性が減ってきていますが、
「アルゴリズム」と「データ構造」はいっしょに解説されることがほとんどだから、
この際一緒に勉強しておいた方がいいでしょう。
私のお薦めは
『定本 Cプログラマのためのアルゴリズムとデータ構造』
という本です。(C言語だけど)
参考URL:http://www.amazon.co.jp/exec/obidos/ASIN/4797304 …
すいません。お礼をしたつもりだったんですけど、書き込まれていないみたいなので、もう一回・・。ライブラリとデザインパターンをやっていこうと思っていたんですが、その土台としてのアルゴリズム、データ構造を学んでおく必要があるんですね。いずれCにも挑戦するためにも土台をかためようと思いました。ありがとうございました。
No.2
- 回答日時:
以下、#1さんとほぼ同じですみません。
プログラミング歴はあまり長くない方かと想像します。
その場合は、アルゴリズムやデータ構造で一回り血肉をつけるのが良いかと思います。
デザインパターンは必須ですが、ある程度実際にモノを作って半年~1年程度の経験を積んでからやらないと、知識としては頭に入っても本質を理解できないと思います。
アルゴリズムやデータ構造を学ぶために、何かテストで作るのも良いかと思います。
例えばファイル入出力関係(File, FileReader, FileWriter等)で、ファイルをコピーしたり、表示したり、バイナリで表示したり、ファイルを作成したり、内容をソートしたりする、などが勉強に良いかと思います。
逆引きライブラリ本は実際に現場でモノを作るときに読むもので、プログラミング(アルゴリズム)を学ぶにはあまり良くないです
趣味で何か作る必要はありませんが、いきなり現場というのもムリ(というかあまり良くない)なので、自分なりにたくさんプログラムを作ってみるのが良いと思います。
私も1冊良本を紹介します。ただアルゴリズムの本質的理解の助けにはなりますが、非常に専門的なので、副本とされたほうが良いかと思います。
プログラミングは必ず基礎→応用の方向で学ばないと非常に無駄な時間を過ごす事になります。何を勉強したら良いかは今後もどんどん人に聞くべきかと思います。
参考URL:http://www.amazon.co.jp/exec/obidos/ASIN/4781907 …
お礼がおくれました。申し訳ありません。
そうですね。やはり基礎体力としてのアルゴリズム等を
勉強して、おっしゃる通りに基礎→応用の線でがんばっていこうと思います。
お二人のご意見でやるべき方向が見えてきたのでよかったです。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スキル高めのIT技術者になぜ左...
-
JavaとAndroidアプリ(Java)違...
-
Perl言語について。
-
プログラミング 学習
-
エクリプスのプログラミングに...
-
vba クリップボードクリアにつ...
-
JSPファイルで生じるエラーをど...
-
VBAの「for i=1 to cells(…」...
-
IISワーカープロセスが原因でCP...
-
CrystalReportsのバージョン確...
-
unzip32.dllの利用について(64b...
-
使用しているJUnitのバージョン...
-
javacのコンパイルでファイルが...
-
MSCOMCTL.OCXのアップデートの方法
-
【javaコンパイル時のエラーに...
-
EclipseでJavaコンパイラのバー...
-
javaでの#if 0 #endif文
-
VBはどのくらいで習得するもの...
-
.NETでEXCHANGE SERVERのメー...
-
Javaでの三目並べのソースコード
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaとAndroidアプリ(Java)違...
-
エクリプスのプログラミングに...
-
授業でプログラミングのJavaの...
-
VBA(えくせる)ってなんでメン...
-
スキル高めのIT技術者になぜ左...
-
Perl言語について。
-
JAVA基礎の課題で自動販売機
-
vectorクラスについて。
-
JavaScriptとC言語の違いについ...
-
Javaに向いてない人はどんな人...
-
プログラミング 学習
-
おすすめサイトを教えてください
-
大学の授業のプログラミング、...
-
JAVA プログラミング ロッカ...
-
ゲームを作りたいのですが
-
Macでゲーム制作
-
C++でおすすめの書籍はありますか
-
プログラミング言語、Pythonに...
-
Javaで簡単なオンラインショッ...
-
C言語の参考書
おすすめ情報