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