もっとプログラミングってわかりやすくならないのぉ~~~!?
どうした、たこ、プログラミングの悩み?
うん、プログラミング勉強してるんだけど、
プログラムコードはわかってきたけどこれを実際にWebサイトにするイメージがまったくつかないんだよ。
フレームワークを使って開発していくんだよ。
何、それ!
フレームワークに沿って開発すれば、割と簡単にWebサイトとかをプログラミングできるツールだよ
すごい、まさにぼくが求めているものだよ!教えて!!
わかった、今日はフレームワークについて解説してフレームワークの便利さを紹介しよう!
フレームワークとは
レゴブロックで何かを作ったことがあるかな?
レゴブロックは、組み合わせることで割と簡単に色々な物を作れるよね。
フレームワークもそれに似ていて、プログラミングの世界で「パーツを組み合わせて、簡単にプログラムを作るための道具セット」と考えるとわかりやすいよ。
レゴブロックのようにパーツを組み合わせることで、プログラミングを簡単にWebサイトの形に落とし込むことができたりするんだ。
フレームワークで何ができる?
フレームワークを使うと、プログラムを作る時に同じような作業を何度も繰り返さずに済むんだ。
例えば、ウェブサイトを作る時によく使うボタンやメニューは、フレームワークがあらかじめ用意してくれているパーツを使って作れるよ。
これで、もっと複雑な部分に集中できるんだ。
ボタン以外にも、データベースにあるデータを一行のプログラムで読み書きができるようにできたりするんだ。
フレームワーク便利すぎない!?
もしかして、フレームワーク使えばプログラミングもいらないんじゃない?
残念、確かにプログラムをほとんど必要としない場合もあるけど、ちゃんとWebサイトとかを作ろうとなるとどうしてもプログラミングが必要になるんだ。
どういうこと?
例えば、Webサイトのユーザー名を登録する画面があったとしよう。
ユーザー登録画面自体はフレームワークにあったりするから、使用すればいい。
けど実際にユーザー名を確認したり、ユーザー名をちょっとだけ変えて、Webサイトオリジナルの形に変えるなんかの処理はプログラミングする必要があるんだ。
オリジナルな形って例えばどんなの?
ユーザー名として登録するのはメールアドレスだけど、ログイン中になると右上に表示されるのはメールアドレスの名前部分だけ
みたいなオリジナルな形だよ。
確かに、そういう画面のWebサイト見たことある!
なるほど、フレームワークを使ってもプログラミングの知識は必要なんだね
そういうこと!フレームワークはあくまでプログラミングを簡単にする一つの手段なんだ。
フレームワークを学ぶメリットデメリット
フレームワークのメリットの一つが効率の良さだ。
よく使う機能がすでにフレームワークとして用意されているので、開発が早くなるメリットがある。
実際に多くの企業でフレームワークを使って開発というのは行われているんだ。
一つのフレームワークをできるようになれば、他の企業でもプログラミングのノウハウを活かせたりするのは使っているフレームワークが同じだからだったりする。
まずは一つフレームワークを学習するのがプログラミング勉強ではおすすめだね。
フレームワークにはデメリットもある。
まずは学習が必要ってこと。
最初はフレームワークの使い方を覚えるのが大変かもしれない。
Webサイトのフレームワークなんかも、どうしてコントローラーとモデルというのがどういう関係にあるのかなど、覚えること仕組みを理解することが必要なんだ。
そしてフレームワークにも限界があるということ。
フレームワークにはできることとできないことがあるから、それを理解する必要があるよ。
できることと、できないこと、自分のプログラミング技術でカバーしきれるところを見極める目を養う必要もあるんだ。
実際にどんな種類のフレームワークがあるのかも紹介しよう。
フレームワークの種類
フレームワークにはいろいろな種類があって、それぞれに特徴があるよ。
例えば、Web開発!
ウェブサイトやウェブアプリを作るためのフレームワークだ。
例えば、Ruby on RailsやDjangoなんかがWebサイト系の開発に適したフレームワークだよ。
続いて、モバイルアプリ開発用のフレームワーク。
スマホのアプリを作るためのフレームワークだ。
例えば、React NativeやFlutterなんかが人気で使いやすいと思う。
うーん、これでも絞ってくれているっぽいけど、もっと具体的におすすめで、実際どれをやればいいの?
おすすめのフレームワーク
どのフレームワークがいいかは、何を作りたいかによって変わるよ。
でも、初心者におすすめのフレームワークをいくつか紹介するね。
Ruby on Rails: ウェブアプリを作るのに使いやすいよ。初心者でも学びやすいんだ。
React: ウェブサイトの見た目を作るのに使われるよ。使い方がわかると、とても強力だよ。
Flutter: スマホのアプリを作るのに使うと、とてもキレイなアプリが作れるよ。
特にこの中でも、まずはReactから手を出すと良いと思う。
JavaScriptを利用してプログラミングを進めていくフレームワークで、HTMLとCSSがわかってきたタイミングでやるWebサイト系をするにはおすすめだ。
また、企業でも採用されているフレームワークだから、将来働く上でも知って損はない知識が手に入るよ!
まとめ
フレームワーク、面白そう?
そうだね!便利そう!ってのはよくわかった。
ちなみにプログラミング言語とフレームワークって何が違うの?
フレームワークごとに使われているプログラミング言語が違うという形だね。
例えばDjangoだったらpython言語、Ruby on RailsならRuby言語といった形だ。
プログラミング言語ってそもそもなんだっけ?
前にも解説したじゃん、プログラミングには言語によってそれぞれ書き方が変わるって話。
詳しくは前の話を読み直してみて
はーーい!
これで、今日からたこもプログラミングを実際の現場で使いこなせる第一歩を踏み出したわけだ!!