テックキャンプのWEBアプリコース(Ruby on Rails)を受講!その全容と評価

この記事ではこれからテックキャンプのWEBアプリケーションコースを受講しようと思っている方の参考になる記事を書こうと思います。

WEBアプリコースはRubyというプログラミング言語を使います。

別にWEBアプリを作るのにRubyじゃなくてJAVAでもPerlでもPHPでもよいのですが人気があるせいかRubyを習得する内容となっています。

メインカリキュラムがLesson1~4まで。
動画コンテンツがLesson1~2。
応用カリキュラムがLesson1~Lesson9まで

あります。それぞれのレッスンで何を学び、全体を通してどこまでスキルアップしてどんなアプリが作れるようになるかをお伝えします。

テックキャンプWEBアプリコースLesson1
前準備

ここではテックキャンプの教材や教室の使い方についての案内があります。

また準備について触れています。RubyはAmazon AWS Cloud9というクラウド上のサービス(一定まで無料)を使って開発環境とすることができます。Cloud9上でプログラミングのコーディングをしたりWEBに公開したりできるようになるのでCloud9のアカウント作成とかの準備です。

ブラウザを使ってCloud9にアクセスするのでPCはWindowsでもmacでも構いません。

特にWEBアプリに関する授業はありませんのでサラッと流してしまってOKですね。

テックキャンプWEBアプリコースLesson2
基本的なプログラミング

ここではRubyを使いながらプログラミングの基礎となる「オブジェクト」「変数」「メソッド」「数値」と「演算」について学びます。概ねどのプログラミング言語でも避けては通れない部分ですのでここで基礎をしっかり学びましょう。特にRubyだからという部分は少ないですが概念を理解していれば他言語にも応用できますよ。

それから簡単なアプリを作りながらif条件分岐、ハッシュ、出力、while、forループ処理、配列を学びます。これも基本ですね。最後にクラスの概念についても理解を深めることができます。

テックキャンプWEBアプリコースLesson3
HTMLとCSSでサイトを作る

WEBアプリを作るのがこのコースの目的ですが、Rubyの知識だけではなくてWEB(いわばホームページやサイト)を表現するためのHTMLとCSSについて学びます。

簡単なWEBサイトをサンプルで作りながら、1列だけのページとか、このブログのように真ん中が記事の部分で右側がメニューがあるページとかのレイアウト方法とかも学びます。


↑こういうの

ここをしっかりやればRubyプログラミング無しで自分のサイトを作るまでできるようになることでしょう。

テックキャンプWEBアプリコースLesson4
Ruby on Rails!

ここではいよいよRuby on Railsの学習に入っていきます。そして基本カリキュラムの最後のレッスンなのでWEBアプリを作成します。

こういうの作ります↓

Ruby on Railsというのは単にRailsとも言ったりしますけどフレームワークのことで、開発を楽にするツールみたいなものと思えば良いでしょう。

Railsを使った基本的な処理の流れのルーティング、コントローラー、ビューについて学びます。

ルーティングというのはアクセスしてきたURLに対してどの処理をさせるか。
コントローラーはその処理の中身。
ビューはその結果どんな画面を見せるか。

それからデータベースを使えるようにします。ここで使うのはmysqlというポピュラーなデータベースです。またphpMyAdminというツールを使ってブラウザからDBを見たりするのも出来るようにします。(テックアカデミーではこれはやらなかったので当時知ってたらな、と思いました)

レッスン4はRuby on Railsの最重要ポイントだと思います。ブラウザアクセスしてきた人に対してどんな処理をしてデータベースからデータを取り出し、どのように画面に表示するかという一連の流れを学びます

WEBページは常にこの流れなのでここで基礎をしっかりやる形です。

最終的にはTwitterのようなWEBアプリを作りながら学びます。すなわちユーザーアカウント登録、ユーザー情報の編集、ツイート機能によるユーザーからの入力の受付、データベースへのデータ格納まで出来るようになります。

テックキャンプの無料体験≫

テックキャンプWEBアプリコース応用Lesson1
映画レビューアプリ開発

映画のレビューを投稿したり他人のレビューを見たりといったRailsアプリを教材に則りながら作成し、関連する技術を学んでいきます。

レビューサイトを作ろうと思ってる人はココが参考になると思います。画面の遷移とかデータの保持の仕方とか。

あとは外部サイトからHTMLを取得してスクレイピングという仕組みを使ってデータを取得する方法も学びます。

このレッスンは目安時間25時間が設定されていますがもっと時間がかかりそうな内容です。教材としては非常に充実していると感じます。

テックキャンプWEBアプリコース応用Lesson2
JavaScript

ここではRubyやRailsとは全く別でJavaScriptについて学びます

JavaScriptはWEBサイトの画面上で動きのある画面を実現したり地図を表示したりといったことを可能にするスクリプト言語です。サーバーと通信して画面遷移すること無くブラウザ上でプログラムを動かすことができます。

WEBプログラマーになろうと思えば避けて通れない言語でHTML、CSSと並んで必須でありながら非常に重宝される技術です。

プログラミング言語の人気、技術者が多いランキングでも常に上位1位にいる気がしますね。

私も時間があればJavaScriptをじっくり習得したいと思っています。

またJavaScriptのライブラリでjQueryも使います。これを使うことで様々なメソッドが提供されていてやれることの幅が広がったり簡単に出来るようになります。

テックキャンプWEBアプリコース応用Lesson3
Gitでソースコード管理

ここではGithubについて学びます。GithubもRubyやJavaScriptといったプログラミング言語とはまた違ったものです。

これはソースコードを保管しておくための無料のWEBサービスです。

テックキャンプがいい表現でGitについて説明していました。それが「作成中のソースコードのセーブポイントを作ることが出来る」というものです。ソースコードを書いてると期待通りに動いてたのに手を加えたせいで壊れたりすることがあります。そんな時に前のセーブポイントに戻ってやり直し‥なんてことができます。

自分1人でプログラミングをする時にも使えますが、複数人での開発時(企業内など)にソースコードを管理するのに力を発揮します。

テックキャンプWEBアプリコース応用Lesson4
SNSライクなアプリをRailsで開発

ここでもRailsアプリを教材通り作りつつ技術を学んでいきます。作るRailsアプリはSNSのような仕組みです。

こういうの↓

アカウント登録ではメール認証機能をつけます。この機能は同じRuby on Railsの学習をしたテックアカデミーの教材では学ばなかったのでココに来てテックキャンプの教材では色んなトピックや小ネタが豊富だなと思いました。

レッスン1のRailsアプリよりさらに機能やライブラリが増えていて覚えることがたくさんです。

テックキャンプWEBアプリコース応用Lesson5
セキュリティの知識と技術を習得

ここではプログラミングではないけどWEBアプリを作る上で欠かせないWEBセキュリティの知識を学習します。


・クロスサイトスクリプティング
・SQLインジェクション
・クロスサイトリクエストフォージェリ
・セッションハイジャック

自分が作ったWEBアプリのセキュリティが低いばかりにデータベースを改ざんされたり、消されたりなんてことになったら目も当てられません。ましてや顧客に納品するシステムなら尚更なのでこれらの知識を得るとともに対策方法を習得します。

テックキャンプWEBアプリコース応用Lesson6
Ruby on Railsオリジナルアプリ開発

ここではまず指示書を元に簡単なブログアプリを数時間で作る課題があります。

それが終わったらオリジナルWEBアプリを作るための考え方と流れを学習します。

・どんなWEBアプリを作りどんなサービスを提供するかといった企画段階。
・画面設計(ユーザーインターフェイスの設計、簡単なデザイン思想の学習)
・データベーステーブルの設計
・Herokuへのデプロイ(世界中へのサイトの公開)

何か自分でWEBアプリを作ってみたいという方、既に企画を持っている、アプリを作って収益をあげようと思っている、起業したい、そんな方は是非オリジナルアプリ作成へ進みましょう!

ここからメンターに相談しながらオリジナル自作アプリ開発に取り組んでいきます。スマホのLINE登録をしてメンターと面談てから開始します。

他のプログラミングスクールではオリジナルWEBアプリ作成という項目を見つけましたが、テックキャンプにも在ったようです。Rubyエンジニアの講師は多いので期待できます。

テックキャンプWEBアプリコース応用Lesson7
データベースを集中学習!

ここに来るまでに散々やっていますが改めてデータベースを集中的に学習するレッスンとなっています。

RailsではデータベースのSQL文を理解していなくてもデータをデータベースから取得できるメソッドやそれらの組み合わせが用意されているのであまり意識しなくてOKなのですが、しっかり使えるようにするならSQL文を習得しておく必要があります。

データベースの設計、手順について学習したら後は具体的な中身の操作に入っていきます。
mysqlへの接続、データベースの作成、操作。テーブルの作成、カラム追加、修正、削除。

Rubyアプリからデータベースに触りに行くやり方ではなくて、ターミナル上でSQLコマンドを使いSQL文を打ち込んだりphpMyAdminを使って実際にSQL文を入力して学ぶ感じです。例えばSELECT文を使ってデータの検索、取得。テーブルの結合など複雑なデータ検索など。

このレッスンのデータベースの学習に関しては基礎的な部分のみの印象です。

テックキャンプWEBアプリコース応用Lesson8
試験行程

このレッスンでは試験について学びます。プログラミングは作って終わりではなくてその書いたコードが適正に動くかをチェックする必要があります。要はバグが無いことを確認する作業です。もしバグ(不具合)があればその都度コードを修正して完成品に近づけていきます。

またチームで開発をする際には自分が担当したコードと他人が担当したコードを結合してアプリ全体としてちゃんと動くかを試験する必要もあります。試験はチームでやる際にも必要なのでこの行程は必ず必要になります。

試験には細かくいくつかの行程に分かれていますがレッスン8では「単体テスト」と呼ばれる行程をやります。Railsを使うとこの試験を簡単にするダミーデータを作ったりなんかもできます。

テックアカデミーのRubyコースではこの単体試験行程については殆ど解説がなかったのでRuby学ぶなら教材だけ見たらテックキャンプ、って感じがしますね。

テックキャンプWEBアプリコース応用Lesson9
外部APIを利用する方法

最後のレッスンです。ここでは外部APIの利用について学習します。外部APIというのは外部のサービスでデータを提供している会社があります。例えばGoogleとかYahooの地図情報とかがAPIとして提供されています。自分のアプリからタッチしてデータを持ってきたり、と言ったことができます。

このレッスンではPay.jpを使った課金部分の実装、楽天商品検索API、Yahooオークション出品検索API、ホットペッパーAPIを使う事例で学習します。データはJSON、XML形式で来る場合があるのでそれらを自分のWEBアプリに使える形式にする方法もやります。

特にECサイトを作ろうと思っててクレカ決済をどうしようかなと思ってる方はPay.jpを学ぶのでとても参考になるでしょう。

まとめと所要時間めやす

テックキャンプの無料体験≫

テックキャンプのWEBコースはRuby on Railsプログラミングの勉強をします。オリジナルアプリ作成のLessonをクリアすればWEBアプリの企画~作成~試験行程まで学ぶ非常に濃い内容です。

基本レッスン1~4までの所要時間目安は46時間ですが60時間はかかるでしょう。

応用レッスン1~9までの所要時間目安は100時間と提示されています。けどオリジナルアプリを作り始めたらその規模によってかかる時間は増えるでしょう。しっかり作るならここだけで3ヶ月は見ておいたほうがよいと思います。

ここまで来れば人に見せられるWEBアプリが1個作れるので未経験エンジニア転職をしようとしてる方にとっては良いアピールにもなるでしょう。またここで作ったアプリで起業するなんてことも可能です。テックキャンプのWEBアプリコースはおすすめなのでぜひ無料体験に進んでみてください。