プログラミング初心者にはRuby on Railsが難しく感じるのはなぜ?
Ruby on Railsは、Webアプリケーションの開発を効率化するための強力なフレームワークである、と様々なところで言われています。なので、なんとしてでもマスターしたい。けれども、私のようなまったくの初心者にとっては理解するには難しく、書籍を読んでも、動画を観てもまったく頭にはいってきませんでした。
なぜにこんなにも理解できないのか、正直なところ自分には無理なのではないかとあきらめかけてしまいました。でも、いくつかのYoutube動画を何度も見直して、手元にある超初心者向けのいくつかの書籍を何度も読み返して、わからないところをネット検索し続けて、ようやく「こういうものなんだ」と思えるようになり、最初はまったく意味不明な文章だった初心者向けの書籍をようやく最後まで理解して読み通すことができるようになりました。これで、やっとRailsを本格的に学習できるスタートラインにたどり着くことができた!と安堵しているところです。
Railsを学習する上で、
「なぜに躓いてしまうのか」
「どうして理解が進まなかったのか」
を考えてみると、自分の場合には、特に次の2つのことが障壁になっていたように感じています。
◆コマンドプロンプトを使って作業をしたことがない
◆そもそもフレームワークの概念がわかっていない
まず、コマンドプロンプトに慣れていない、というよりも、使ったことがないのです。ふだんはグラフィカルなインターフェースを持つ様々なアプリケーションを利用することに慣れているので、1行ずつテキストベースの命令文を打ち込むコマンドラインのインターフェースにはまったく馴染みがありません。
ましてや、コマンドプロンプトを使いながらWebプログラムを開発していくというイメージがまったくつかめない状態が続いていました。
次に、フレームワークの概念をまったく知りませんでした。Rails初心者向けという動画や書籍には必ず簡潔に「フレームワークとはなんぞや」ということを説明されています。わかってしまってからそれらの説明を聞いたり読んだりしてみるとさらっと進めることができるのですが、最初はこれらがまったく理解不可能。
フレームワークは、開発しやすいようにあらかじめ設計されたファイルやコードが用意されていて、開発者が一から全てを書く代わりに、用意されたファイルやコードなどを利用して効率的に開発を進めることができるとのこと。しかし、この「あらかじめ設計されて用意されているものを使う」という考え方は、自分にとっては抽象的でかなり捉えにくいものでした。また、フレームワーク内での「規約に従うこと」や「MVCモデル」などの概念も説明されても「だから何?」という状態になってしまい、これも自分の理解が進まない原因のひとつになっていたように思います。
結果として、自分の場合のRailsの学習手順としては、学習を進めるにあたり、まず以下の点について理解することに時間を費やすことになりました。
◆コマンドプロンプトとは何か。コマンドプロンプトを利用しながらWebプログラムを開発するイメージをつかむ。
◆フレームワークの概念をつかむ。具体的にフレームワークが用意してくれるものは何か、どのような動作原理になっているのか、それらはWebプログラム開発とどう関係しているのか、を理解する。
自分の場合は、ようやくこれらがある程度理解できたと思っているので、次はRailについて実際に手を動かしながら学習を進めていくことになろうかと思っています。
遠回りした感は否めませんが、「急がば回れ」の意識で進めていけるといいよね、と自分に言い聞かせています(笑)。
Ruby on Railsは一度理解すれば非常に強力なツールになるはずであり、初心者の自分でもRailsの世界を楽しめるようになることを信じて、まだまだ学習を進めていきます。