2024/04/18
こんにちは〜まんじです。
今回はPythonの勉強法のようなところで、プログラミング言語自体の勉強にフォーカスせずに、「なんか作りながらPythonを勉強していくのってどうなん?」ってところについて解説したいと思います。
結論から書くと、文法を直接勉強しまくるよりも「作りながら覚える」で問題ないというよりもむしろPythonの文法自体の勉強を真面目にするよりも効率が良いと個人的には思ってます。
作りながら覚えていくことが効率良い理由はざっとこんな感じです。
自分も0から独学でプログラミングを始めた時はドットインストールを2週間~1ヶ月程度しかやりませんでしたし、ウェブアプリ作るために調べながらコピペしたり真似してたら勝手にPythonをそれなりに書けるようになっていたなーと思います。
本をじっくり読んだりオンライン教材で勉強しまくってもそこまで書けるようにならんのですが、なんか作りながら調べてその都度知識を増やしていくと徐々に言語自体の理解も深まっていくという感じです。
この記事ではここら辺の内容についてもう少し深めに解説します。
Pythonを勉強する場合に作れるというか、Pythonを使って作りやすいのは以下です。
Pythonの主な用途としてはAI系、データサイエンス系、ウェブアプリ系(API含むサーバーサイド)の3つだと思います。
どの用途で使っていても1ヶ月単位ぐらいの幅を持って使うことでPythonの文法自体の理解も深まっていきます。
配列とか連想配列とか分岐処理とかループ処理とかそこらへんの定番のオーソドックスな文法は別に勉強する気がなくても必要になるので身につきます。
(もちろん、作りながら不明点をAIとか検索で調べたりする必要はあります)
大体こんな感じの流れで作りつつ勉強をするといいと思います。(例として)
こういう流れをひたすら繰り返していくのがプログラミング言語自体の勉強法としても効率が良いです。
「え、ググる量多すぎなんだが」とか「昔調べたのにまた忘れた...」とか最初は感じたりするものの、ある程度ググりまくってくると知ってることが蓄積されたり反復されて覚えるのでやがてそんなにググる必要がなくなってきます。
ちなみに歴数年ぐらいのウェブエンジニアで働いてる人もある程度はググりながら書いてたりすることも多いです。(定番のこととかはググらないですけど)
あとはググるのも良いのに加えてAI(ChatGPT含む)も使うのはおすすめです。
ただ、ChatGPT(AI)に聞くことでしか問題解決できなくなるとAIが回答をうまく出してくれない時に終わるので、ググりつつAIにも聞くという2つのアプローチができたほうがいいです。
実際、AIがうまく出してくれない場合も結構あります。
その他、動画に関しては適当に暇な時にドットインストールやYoutubeで文法を流し見するとかでもかなり勉強になるので暇な時に見るぐらいで良いのカナーと思います。
動画見てるだけだと書けるようにならないので、注意が必要ですけど!
こういった部分を最初の頃はノートに書いたりしてしまいがちですが、実際はいらないです。
何度もググったりしてると嫌でも目に入ってきて覚えられるので暗記は不要で、ちょっと気になったらググればいいだけです。
プログラミングは受験勉強のように覚えていくというよりも、何か目的のために書いたりコピペしたりしていると自然に覚えて使えるようになってくるっていう感じのマインドでやるのが大事です。
メモったりする場合も、ノートにきれいにメモるというよりかは、Notionとかに適当にコードを貼っておいてたまに参照するぐらいのが効率がいいです。
自分は仕事で使ってる覚えにくいコマンドとかコードで定期的に使うものや始めて勉強した内容のコマンドなんかは、NotionかVSCODEに貼り付けていて、それを必要な時に参照しています。
こんな感じでコメントの内容自体もそんなにガッツリとは書いていなくて、適当に書いてます。
長いコマンドは覚えるのは無理ではないけど覚えても意味ないので、外部に記憶を置いておくみたいな感じです。
という少し脱線しましたが、暗記はいらん!というお話でした。
なので作りながら適宜調べて、勝手にPython含め、プログラミング言語が書けるようになるのが理想的というかみんなそんな感じです。
学校の勉強の暗記科目と違って、覚えようとして覚えられるのではなくて、使ってたら勝手に覚えられます。
Pythonのこれらの内容はある程度作る経験を得てから別途学習が必要カナーと思います。
実務で使っていれば勝手に登場すると思うんですけど、独学とか1人で勉強したりしているケースだとそこまで使う必要もないので、何かを作っていたとしても勝手には身につかないってのはあります。
(実際、出てきたら勉強して覚えたりすればいいだけなのだけど...)
中級っぽい文法に関しても勉強して網羅していくってよりかは、使ってて不明点が出てきた時についでにちょっと調べて真似して書いて〜ってのを繰り返していれば勝手に覚えられます。
そこらへんの内容はこの記事にも書いています。
[blogcard]https://manzi.tokyo/reasons-memorization-no-need[/blogcard]
「作りながら調べてればPythonは勝手にできるようになるぞ!」という1行を伝えたい記事でした。
実際、プログラミングは真面目に勉強するとあんまりできるようにならなくて、何か目的のための手段としてコードを書いたり調べたりしていると3ヶ月スパンぐらいで実力が爆上げぽよぽよされていきます。
「プログラミングの勉強頑張る!」ってよりかは、ウェブアプリ作ったり、目的のためにコード書いたりとかそういう活動がすごく大事です。
ウェブアプリ作ったり仕事でプログラミング使っていたりすると、プログラミング言語自体の理解度も上がっていくし、毎回調べなくても手が勝手に動くようになりやすいです。
ってことで終わりなので、良かったら下の記事もぜひ!
[blogcard]https://manzi.tokyo/how-to-earn-money-by-programming[/blogcard]
[blogcard]https://manzi.tokyo/python-level[/blogcard]
[blogcard]https://manzi.tokyo/review-working-four-times-a-week[/blogcard]