ゼロからWEBプログラミング(PHP)をマスターするのに何時間かかる?

おはようございます。松本です。
さて、本日のテーマはタイトルのとおりです。以前受講生の方に「ゼロからWEBプログラミング(PHP)をマスターするのに何時間かかる?」と聞かれました。
「マスターする」の定義が非常に難しく、私自身まだマスターしたとは言えないでしょう。
ただ一通りのことができて未経験者が中途で入社できるぐらいのレベルでしたらなんとかわかります。
そこで「完全な未経験者がWEBエンジニア(就職可能なレベル)になるまで」に身につけることと、それにかかる時間を考えてみましょう。
なお動的言語はPHP、データベースはMySQLとします。
またかかる時間の定義ですが、下記を基準にします。
- 教えてくれる人間がいる
- カリキュラム通りに学習がすすむ
- 時間は基本の学習時間と成果物(目に見えるアプリを作る)を作る時間を合計する
調べてうんうん悩んでいたり、学習の順番が前後すると簡単に数倍の時間になってしまうので、スムーズに身につけた場合を考慮します。
Contents
WEBエンジニアになる前に身につけておくべき知識とかかる時間
就職可能なWEBエンジニアっていっても定義が難しいですが、とりあえずは下記のような点を基準にしたいともいます。
HTML/CSS/JavaScript
- HTML/CSSを理解し、一般的なWEBサイトが作れる
- JavaScript/jQueryを簡単に理解し、サイトにアクセント的な装飾を加えることができる
まずはともあれこれがわからないとはじまりません。HTML/CSSも極めるとなるととっても難しいです。
CSSの組み方もきれいな組み方をするには当然経験や知識もあります。私も完全に組むことはいまだにできません。
ただあくまで簡単なブロックに分割して、一般的なサイトが作れ、基本的な修正ができることを目標にします。
またJavaScriptは判断が難しいですね。全く使わずに実装することもできますが、一般的なWEBサイトでJavaScriptがないものはほとんどありません。
一応はjQueryで簡単なアクセントがつけられる程度を求めるとします。(プログラミングとしてがっちりは理解していなくても良いレベル)
基本 15~25時間
成果物作成 40~50時間
動的言語/データベース(PHP/MySQL)
- オブジェクト指向を簡単に理解し、まとまった機能をクラスとして作ることができる
- ロジックとテンプレートの分離をすることができる
- 外部データのやり取りにはデータベースを使う(ただしテキストファイルも使える)
- セッションやクッキーといった技術を使っている
- ソースをMVCに簡単に機能分割できる
- 上記を実装した簡単な掲示板(データの一覧/新規登録/編集/削除)を実装することができる
- データベース作成、テーブル作成、簡単なSQLコマンド(SELECT/INSERT/UPDATE/DELETE)ができる
- リレーションについて簡単に理解し、複数テーブルを結合させられる
一番の山場ですね。とりあえずプログラミング言語/データベースができないと話しになりません。
とりあえず就職がなんとかできるレベル(上記のスキル)を基準にします。
基本 70時間~100時間
成果物作成 100時間~150時間
サーバー
- 簡単なLinuxコマンド(ls,cd,cp,mv,find,grep)を操作し、ファイルの操作、検索できる
- ユーザー権限とパーミッションに関して簡単に理解している
ようは作ったものをサーバーに公開してリリースできるようにすることですね。
基本 10~15時間
成果物はなし
※サーバーにもいろんなタイプのものがありますので、簡単なものでしたらサーバーの知識はなくても大丈夫です。
私も一番最初に外注で働いたときはほとんど知りませんでした(汗)。ただあれば選択肢としてはできることが当然増えます。
結論
トータルの見積もりですが250時間~350時間程度でしょうか。(不必要に悩んだりする時間は除く)
もちろん実際に学習を始めるとこんな簡単にはいきません。
そもそも成果物を作りながら覚えるということが一般的なので上記のように基本と成果物を学校のように分けて学習することはあまりないかと思います。
ただあくまで目安として考えていただければ幸いです。
毎日数時間(3~5時間)休まずやるとして3ヶ月~6ヶ月程度かなという気がします。
ただこれはあくまでそばに教えてくれる人が存在し、順調に学習した場合です。特殊な事情がない限り、こんな理想的なケースはあまりないです。
普通に学習した場合にはわからないところで悩んだり(これが一番大きい)、休んだり、モチベーションが落ちてやらなかったりするので現実問題は1年~2年程度はかかってしまうのではないかなと思います。
関連記事
-
-
プログラミングをする上で超大切な検索方法の身につけ方
今日はプログラミングで大切な検索方法の身につけ方について私なりのコツなどを書いていこうかなと思います
-
-
もうエラーメッセージで挫折しない! 4つのエラーメッセージ対処法
このブログで何回か書いたのですが、PHPに限らずプログラミングの独学はかなり難しいです。 その
-
-
データを扱ってみよう その2(配列)
こんばんは松本です。 少しずつ暖かくなってきましたね。暖かいのはいいんですが、オフィスでブログ
-
-
初心者でもできる!作れる!WEBサービスの開発 その1 準備編
前回までは掲示板作成をテーマにPHPの基本的な学習内容について書いてきました。 今回は題材にあ
-
-
セミナー告知のお知らせ
突然ですが2018/06/16にIT業界への就職希望者を対象とした無料プログラミングセミナーを開催さ
-
-
「初級」〜「中級」のPHPエンジニアのスキルについてまとめてみる(DB編)
本日はデータベース系の必要な技術について。 ウェブエンジニアといっても技術領域が非常に広いので
-
-
PHPで掲示板を作ろう! 掲示板の作成方法 その3(エラーチェックとファイル書き込み)
今回はPHPのコードの説明です。 掲示板の作成方法についてやります。 えー、前回の掲示板
-
-
初心者が読みやすいコードを書くときに気をつけたい4つのポイント
本日のお題は、「読みやすいコードの書き方」についてです。 プログラミングをやりたての頃は機能を
-
-
お問い合わせフォームを作ろう! その3(PHP)
それでは前回のコードを例に少しずつ内容について説明をしていきます。 値を取得するには まず一番最
-
-
ガチンコ塾、人気記事ベスト5
このブログも開設して約半年たちましたね。 思った以上にたくさんの方に読んでもらえてうれしいです
- PREV
- 開発を便利にする道具たち
- NEXT
- PHPはなぜ簡単といわれるのか?
Comment
Linuxコマンドは不要でしょう。
レン鯖借りてFTPでアップする程度の知識で基本いける。
Linuxコマンドは鯖管寄りの仕事なのでアプリ開発者は「知ってればより良い」という程度。
ウコンさん
コメントありがとうございます。ご指摘助かります。
コンテンツに関して若干修正をさせていただきました。