効率の良いプログミングの勉強法を教えてください
現在pythonを勉強しています、今度からはC言語も勉強するつもりです
参考書を読んで理解し、書かれているコードをそのまま入力したりして、ある程度ページが進んだら同じようなやり方で前のページに戻って復習をしています
しかしなんとなく進みが遅い気がするので、今以上に正確に、かつ速いペースで修得できる方法がないか探しています
役に立つ勉強法があったら教えてください
現在pythonを勉強しています、今度からはC言語も勉強するつもりです
参考書を読んで理解し、書かれているコードをそのまま入力したりして、ある程度ページが進んだら同じようなやり方で前のページに戻って復習をしています
しかしなんとなく進みが遅い気がするので、今以上に正確に、かつ速いペースで修得できる方法がないか探しています
役に立つ勉強法があったら教えてください
効率の良いプログラミングの勉強方法はあまりなく、人それぞれ勉強のスタイルは異なります。
そのため、自身にあうスタイルを探すのが一番かと思います。
それでも成長するために必要な共通している要素は存在していると感じています。
Pythonの次に、C言語を勉強されるとのことですが、どうしてC言語を使う必要があるのかを考えると良いかと思います。OSを作りたい、効率的なプログラムを書きたいという場合にはC言語を勉強するのはとても良さそうです!
もし明確な目的がないのであれば、Pythonを突き詰めていくなど、目的を軸に考えると良いかもしれません。
仮説検証ですが、プログラムのエラーが出たときにネットを探すのではなくまずはエラーメッセージとコードを読んで、どう解決すれば良いのか、原因はどこかを考えると良いかも知れません。
質問の文章に誤字脱字はないか、句読点の打ち方は正しいかなどを意識されると良いかと思います。
初心者というか初学者なら、そんなに急いでも良い方法は特にないです。一番の近道は何か作ってみたいもの、テキストベースのテトリスとか、数理的な問題 (巡回セールスマン問題は分かりやすいのと問題を簡単に読み込める) を解くとかやってみると良いです。
やってみて、言語はわかったけれど、きれいなコードを書けるようにしたい、デザインパターンを学んでみたい、アーキテクチャを考えられるようになりたい、IDE を使いこなしたい、Web にも挑戦したいなどなど自分なりのもっと学びたい点が出てくると思うので、そこをまた学んでいくのが良いと思います。
学習はやり方も大事ですが、なによりも身に付けたい!というモチベーションが大事です。
あせらず、がんばって!!
現在は、系統学習を実践されているわけですね。
そうしてある程度基礎を学ばれたら、並行して問題解決学習も試されてはいかがでしょうか。
ganariyaさんも挙げられているように、目的を持って望むことは効率を高めると思います。
何のためにプログラムを学ばれるのかを意識して、成果を上げたい分野で実践的な課題を設定し、それを達成していくことで、楽しく意欲的に学べるのではないかと思います。
@harada211
Questioner
効率の良いプログラミングの勉強方法はあると思います。プログラミングはスキルなので練習することが必要です。少し例えの話ですが、料理を上手になりたい時は料理本とかYoutubeビデオでナイフの正しい使い方を学び、それを実際に試します。ただ、ナイフの切り方がわかるから料理ができるというわけではありません。料理を上手になるために実際に料理をしないといけません。
参考書を読んで、配列やif文やループの使い方を練習してもいいんですが、プログラミングを上達したいんであれば、プログラミングを練習するべきだと思っています。私からの提案は、何かのプロジェクトを選んで実装することです。検索したら色々なアイディアがあるんですが、特にやりたいのがなければWebアプリはいいスタートポイントだと思っています。
Webアプリでは、MVC (Model/View/Controller)の概念を通じて、クラスの使い方を練習することができます。データベースと連携して、取得したデータをループすることや正しいデータ型に変換することが練習できます。ルートを扱うことで、文字列の扱い方やregexを練習することができます。APIとの連携方法も練習できます。
もちろん、Web以外の分野には興味あれば、その分野のプロジェクトをやっててもいいですよ!(iOSもタグとして追加されているから、Swiftでのアプリ開発もありじゃない? :D )
@harada211
Questioner