WEBフレームワークとは?

フレームワークとは?

フレームワークとは?今更聞けないWebフレームワークを始めから丁寧に
上記記事を全面的にコピーさせていただきました。

Webフレームワークとは?

Web制作などのプログラミングでは、フレームワークを使うことが頻繁にあります。フレームワークの基礎知識や特徴についてみて述べます。

さまざまなシステム開発を効率化してくれる機能群、と表現できます。機能群だけではなく、ソフトウェアの骨組みまでを用意してくれているため、少ないコードで意図する機能やデザインが実現できます。それぞれのフレームワーク特有の書き方を学ぶ必要はあるのですが、プログラミングのビギナーにとって、とてもありがたいものです。
WebサイトやWebアプリケーションなどのフロントエンドを実装するためのWebアプリケーションフレームワークや、プログラムのテストに特化したテスティングフレームワークなど。以降では、特に断りのない限りWebアプリケーションフレームワークについて述べます。

フレームワークのメリットとデメリット

フレームワークは便利だからといって、盲目的に使うことはあまりオススメしません。それは、フレームワークには良いところだけでなく欠点もあるからです。フレームワークの魅力を最大限享受するため、フレームワークのメリットとデメリットについて述べます。

メリット

フレームワークの最大のメリットは、何と言っても生産性が向上できることでしょう。フルスタックなフレームワークの場合、すでに必要な機能群が準備されていることになります。フレームワークの書き方がわかっていれば、従来よりも圧倒的に速くプログラムがつくれます。
速いだけではなく、運用管理の工数・コストを減らすことにも効果があります。プログラミングの仕方は千差万別。同じ機能であったとしても、つくる人によってコードは変わってくるもの。これが原因でプログラムの運用管理が大変になることもよくあります。しかしフレームワークを使えばコードの書き方が統一されるため、個々人による違いを大幅に減らせるのです。機能追加や改修もし易くなり、バグが発生するリスクを減らすことにもつながります。

デメリット

まずあげられるのは、学習コストです。フレームワークはとても便利なのですが、フレームワーク特有のコードが書けなければいけません。つまり、プログラミング言語の書き方だけでなく、フレームワーク特有の書き方についても勉強が必要です。
また、フレームワークではコーディングの量を減らすことができると言いました。これはメリットでもあるのですが、裏を返せばデメリットとも言えます。仕組みがわかっていなくても、その機能を使うことができてしまうからです。プログラミングの技術を上げたいのなら、フレームワークを使わない場合の書き方についても学んでおくこと。

フレームワークの具体例3つ

Ruby on Rails

Web関連のプログラミング言語の中ではめっぽう人気のRuby。Ruby on Railsは、Rubyのためのオープンソースのフレームワークです。「設定より規約」や「同じことを繰り返さない」などの設計思想は、他の言語やフレームワークへも影響しているほど世界的に評価されています。
Ruby on Railsを使っている企業としては、クックパッドやWantedly、価格.comなどが有名です。

React

Reactは、Facebookが開発したJavaScriptのフレームワークです。JavaScriptではGoogle製のAngularJSも有名なのですが、最近ではReactの名前を聞くことも多くなってきました。Reactの設計はFluxを用いていて、Webアプリケーションではフロント側の機能を担当します。Facebookで使われていることからもわかるように、規模の大きなアプリケーションに向いているフレームワークと言えます。
Reactは開発元のFacebookやInstagram、Airbnbなどで利用されています。

Bootstrap

Twitter社が公開しているCSSフレームワークです。CSSと聞いてわかるとおり、WebサイトやWebアプリケーションのレイアウトをするための機能が豊富に揃っています。代表的なものとしては、グリッドシステムがあります。Bootstrapでは画面を12分割しています。このグリッドレイアウトを使うことで、CSSのプログラミングに慣れていなくても、自由にページ要素を配置することができるのです。リキッドレイアウトにすることも可能で、スマホ対応などのレスポンシブデザインも簡単に実現できます。
Bootstrapの活用事例としては、ドットインストールやQiita、SlideShareが知られています。

フレームワークとは?今更聞けないWebフレームワークを始めから丁寧に
以上を参照させていただきました。

↑人気ブログランキングに参加しています。よろしければ1票を!

投稿者: 管理者

大学で工学部電気工学科演算工学講座で学び卒業論文で「小型コンピューターのオペレーティングシステム(ジョブの連続処理)」を書いた。卒業してコンピューター会社に入社し以来コンピューター一筋SE、SAとして働いた。退職後趣味でWeb開発をしている。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です