関西の文系学生が渋谷でエンジニアとして働いてみる。

こんにちは!インターファームにてインターン中の高田です。
今年の2月からインターンをしています!同じインターン浦川くんと一緒に、railsで写真共有サービスを開発中。

ざっと僕のスペックについて
・関西の某国立大学の4年生(来年は5年生に☆)
・学部は経営学部。大学3年まではプログラミングやったことない
・大学3年終了後にインドに行く。ITすげえと感じる(棒読み)
・インド人からインターネットの仕組みと、phpについて学ぶ。ITすげえと感じる(棒)
・エンジニアの社会人「webアプリ作るならphpじゃなくてRubyやっとけ」→Rubyを勉強し始める。
・インターファームであったgit勉強会のシェアをfacebookで見る→「gitって何かわからんけど行ってみよ☆」
・インターファームでインターンをさせていただくことに。写真共有アプリの設計と開発をやる←今ここ

文系の視点から色々書いていきたいと思います。


《今の開発の流れ》
インターン生の二人で新しいWebアプリを作ろうってことでRuby on Rails を勉強しつつ開発しています。
サービスの設計部分が僕にとっては難しいと感じているので、ここを主にインターファームのスーパーエンジニアの方々に聞いています。

あとは、

パーフェクト Ruby on Rails

パーフェクト Ruby on Rails


Ruby on Rails Tutorialrailstutorial.jp

とにらめっこしつつ機能の実装とかをやっています。

Ruby on Railsで最初に学んだこと 〜MVCアーキテクチャ〜》

せっかくなので、railsを学ぶ上で最初に触れたMVCアーキテクチャについて説明したいと思います。
Ruby on Rails を勉強する上でまず理解しないといけないのが、MVCアーキテクチャという概念。

MVCとは、
M(Model):データベースとやりとりを行う部分。
V(View):ユーザーにどんな結果を見せるかを扱う部分。
C(Controller):ユーザーからの信号を変換し、モデルやビューに指示を出す部分。
の3つのことになります。

Railsでは、どうやらこの3つが非常に重要(らしいです。)
まだ勉強不足ですが、この3つの概念を図に表すとこんな感じです。
f:id:techinterfirm:20150318174354p:plain
Ruby on Rails Tutorialより画像参照

つまり、
firefox「近くのいい感じのお店教えて。」
controller 「了解です!モデルくん、お店の情報って確かデータベースの中にあったよね?」
model「はいよー。データベースのここにあったなー。ほれ。」
controller「ありがとうモデルくん!ビューくん、これがお店情報だから、画面に映せる感じに変換してくれない?」
view「わっかりましたー!こんな感じでいいっすか?」
controller「お、いいね!ありがとう。」
controllerfirefoxさん、いい感じのお店の情報はこんな感じです!」
firefox「さっすがMVC三兄弟!頼りになるわ〜。」

って感じでしょうか。
僕が理解している範囲だとこんな感じです!
理解が浅くて薄っぺらい説明になっていまいましたが、これからrailsの開発を進めて
進捗をブログで報告できればと思っています!