こんにちは。膝小僧です。
今回は、文系出身の私がどのようにプログラミングを勉強したかを紹介しながら、どの言語を選ぶべきかや学習方法はどれがいいかなどを、解説して行きたいと思います。
あくまで、個人の所感ですが、参考にしていただければと思います。それでは始めて行きましょう。
何のために学ぶのか?ゴールをハッキリさせること
当ブログを読んで下さりありがとうございます。さて、このページに来て頂けたということは、少なからず何らかの理由があり、プログラミングに興味を持っているということだと思います。
『なんとなく興味がある』とか、『就職に役立てたい』『実現させたいwebサービスがある』など理由は人それぞれだと思いますが、はっきりとした目標があるとないとでは大きく違ってきます。
なぜなら、プログラミングを勉強することは試行錯誤の連続で、うまくいかないことだらけだからです。それゆえに初学者が挫折してしまうのです。
だからなんでもいいのでまずは、目標、ゴールを定めましょう。
ちなみに私のプログラミングを勉強し始めた理由は『競馬予想AIを作って儲けたい』という安易で不純な理由でしたが、その儲けたい執念によって、何度も訪れるエラーを解決し学習を前に進めていくことができました。
プログラミング言語の種類とそれぞれの特徴
次に主な言語の種類と特徴を紹介して行きます。
プログラミング言語には全部で100種類以上あるらしく(膝小僧もびっくり)全てを紹介しきれませんが現在よく使われる代表的な言語を挙げてみました。
言語 | 特徴 |
---|---|
Python | AIの分野に強く、比較的学びやすい言語。webアプリケーションも開発できる |
Java | androidアプリから大規模な業務システムまで幅広く活用されている言語 |
JavaScript | HP等に動きをつけることができる言語。使用用途は広く市場ニーズもかなり高い |
C言語 | 最も歴史のある言語の一つ。膝小僧には習得難易度はかなり高く感じる |
PHP | 習得難易度は優しめでワードプレスにも用いられている言語 |
Ruby | まつもとゆきひろ氏の開発した言語でwebアプリ開発、サーバーサイドシステム開発でも利用されている。習得難易度は優しめ |
Swift | iosの開発に特化したappleが開発した言語 |
Kotlin | androidアプリ開発がメインの比較的新しい言語 |
学習方法
それでは具体的な学習方法について解説します。
書籍を使って勉強する
もっともお金をかけずに自分のペースで学習できる。
メリットは学習コストが低く、自分のペースで学習できる。デメリットは困ったときに自分で調べて解決することが基本なので時間効率が悪い。
メリット | デメリット |
---|---|
自分のペースで学習できる 自分の学びたい言語を選べる | 学習コストが低い自分で問題を解決しなければならない 学習効率が悪い |
動画サービス(YouTube,Udemy等)を活用する
YouTubeで公開されている動画や、有料の動画サービスUdemy等を活用する。
メリット | デメリット |
---|---|
コードを書きながら実践的に学べる | 学習コストが低い初学者向けのものが多く中級者以上になるとコンテンツが少ない | 学びたいことがピンポイントで見つけるのが難しい
プログラミング学習アプリ、webサービスを使う
Progateなどのアプリ、webサービスを使う。
メリット | デメリット |
---|---|
環境構築の必要がケースが多い | 手軽に幅広い言語の基礎を学べる基礎的な内容が多く、実務レベルまでは他の学習も必要になる | 具体的な成果物のイメージがつきづらい
プログラミングスクールに通う
オンライン、もしくは対面形式でのポログラミングスクールに通う。
メリット | デメリット |
---|---|
疑問点をすぐに解決できる 他の学習法より高いレベルまで習得できる モチベーションを維持しやすい スクールによっては就業サポートがある | 時間効率よく短時間で学習できる費用が高くなる |
講師を探してマンツーマンで教わる
ココナラなどで講師を探して学習する。
メリット | デメリット |
---|---|
学習効率が高い | マンツーマンで学習することができる講師との相性が合わない可能性がある | 探すのが大変
結局どの学習法がいいの?
主な学習法を5つ挙げましたが、結局どの学習法がいいか?と聞かれれば、その人次第ということになってしまいます。
ただ、プログラマーとして転職を目指している人であれば間違いなくプログラミングスクールに通うか、自分で講師を探すというのがベストだと思います。
その理由は時間効率と、基礎をしっかり学べることです。
私が書籍や動画サービスを使って独学で勉強して自分の作りたいものに必要な技術を優先して学んできた結果、『あれ?これどうやるんだっけ』と初歩的なことを調べ直したり、トラブルに悪戦苦闘していました。今振り返ってもかなり効率の悪いことしていたなーと思います。
1・プログラミングを学ぶ目的を確認し、ゴールを決めよう。
2・自分のゴールに合う言語を選ぼう。
3・プログラマーを目指すのであればスクールに通うのがオススメ。
今回は以上になります。最後まで読んでいただきありがとうございました。それではまた。