こんばんは!
今日はフレームワークのお話です。
フレームワークとは
プログラミング言語における、よく使う機能を予め組んだパックのようなものです。
例えば、Webサービスを作る場合、
新規登録機能、ログイン、ログアウトetcと、このあたりの機能ってほぼ必須ですよね。
それをサービスを作るごとにコードを書いてたんじゃ時間がもったいないので、
よく使う機能はまとめて雛形としてパッケージ化しておく。というものです。
コードをコピぺすればいいのでは?と考えるかも知れませんが、
上記の機能は複数のファイルによってコードが書かれ、
コピペでさえも時間がかかってしまいます。
それをサービスごとに固有の名前などを付けつつ、
手っ取り早く実装できるのがフレームワークなんです。
枠組みなので、人によって好みが別れることから、
同じプログラミング言語にも複数のフレームワークが存在します。
例えば
- Ruby → Ruby on Rails,Sinatra
- PHP → CakePHP,Laravel,yii2
- Golang → Gin,Echo
- JavaScript → Vue.js,Angular
- CSS → Bootstrap
- Python → Django,Flask
個人的にこういう固有名詞大好きなんですよ‥。
スタンド名みたいで笑
Ginとかめっちゃかっこ良くないですか??(サムネはGinのイメージです)
勉強したくなりますよね!
フレームワークのほとんどがオープンソースなのも良いです。
そんな便利なフレームワークですが、デメリットもあります。
それはフレームワークを使う以上、フレームワークのルールに沿って記述する必要があること。
また汎用性を重視しているため、非常に独創的な機能を組み込むにはかえってやりづらくなる可能性があること。などがあります。
まあルールがつくことに関しては、チームでサービスを作る場合、
コードが統一化されるおかげで読みやすくなるといった利点もあると思います。
世に求められ、ヒットするようなサービスは
決して1から全て作者が作ったものだけでなく、
フレームワークを活かし、そこにオリジナリティを少し足したようなものもたくさんあるんですね。
てことで、
「これワンチャンあるんじゃね???!!!」
というサービスを思いついたら、なんでも作ってみましょう!笑
それでは今日はこの辺で!!
2020.12.2 ガオ
コメント