フリーランス チャレンジ!!

読者です 読者をやめる 読者になる 読者になる

フリーランス チャレンジ!!

週休4日制に俺はなる!

ライブラリを使ったシステム開発のメリット・デメリットを技術者目線で語るよ

f:id:ksakae1216:20161129223008j:plain

みなさん、コウタロウです!!

 

今日はタイトルについて。

 

 

ライブラリを使う理由

システム開発において、ライブラリは避けて通れないでしょう

現在のシステム開発でライブラリをまったく使わないという現場はないはずです

 

なぜならライブラリを使えば一からコードを書く必要がなく、開発コストが削減できます

 

私が今常駐している現場は、AngularJsのui-gridを使いで表(グリッド)を画面に表示しています

http://ui-grid.info/

 

このui-gridって凄いんですよ

codezine.jp

 

codezine見てもらえればわかるんですけど、htmlにコードを1行書いて

表示したいデータをjavaScriptで定義してあげるとグリッド(表)が表示されます

 

たったこれだけ、スゴくないですか?

これがライブラリの威力です!!

 

ライブラリを使ったメリット

さて、簡単にライブラリの威力を示したところで、ライブラリを使ったメリットの話

 

メリットはなんといっても

「一からコードを書かずにやりたいことが簡単にできる!」です

 

グリッド(表)にしてもHTML書いたり、表示するための仕組み作ったりと大変ですがui-grid使えば、表示はライブラリにまかせて表示したデータをjson形式で渡せば何も加工せずに表示することができるんです

 

例えば、データを表示する一覧画面を作成したい場合、ライブラリを使わずに画面作成する場合と、ライブラリを使う場合では、期間が全然違います

 

ライブラリを使えばコスト(金額)が抑えられるというのは、IT業界では常識です

 

しかもライブラリは多機能で処理が速いのばかりなので使わない手はないでしょう

 

ライブラリを使ったデメリット

次にデメリット

 

流石に良いことばかりではありません

デメリットも沢山あります

 

学習コストがかかる

学習コストとはライブラリを使うための調査や勉強時間のこと

 

ライブラリの使い方は、ネットや本で調べながらとなります

ただ、ライブラリによっては日本語のマニュアルがないものもあるのでさらに学習コストがかかります

 

できないこともある

当たり前ですがライブラリがあれば全てできるわけではありません

できないこともあります

 

今の開発でもui-grid使っててユーザーから「あんなこと」や「こんなこと」もしたいと言われるけど、ライブラリは万能じゃないんだよと教えてあげます

 

こっちもライブラリを採用したけど、全ての機能を知っているわけではないのでわからないことは調べながら、できる、できないを判断します

 

ハマったら地獄

ネットを参考にライブラリを使ってコードを書くけどうまくいかないことも結構あります

このうまくいかない時ってものすごい地獄なんですよ

 

ライブラリって多機能であればあるほど複雑なので思い通りにさせるのがすごい大変

今回、グリッドの一部のヘッダをグループ化する必要があったんだけど、チョ~苦労した、2日間かかった。。。

 

こだわりすぎないのが大事

如何でしたか?

 

ライブラリの威力、メリット、デメリットを書かせてもらいました!

 

ライブラリのメリットを大いに生かせれば、プロジェクトは円滑に進みコストは削減できますが、デメリットが強く出てコストが多くかかってしまうとライブラリを導入しないほうがよくなってしまいます

 

間違えちゃいけないのがライブラリを使えば必ずコストが削減できるわけではありません

 

そのライブラリを使った経験がないメンバーばかりだったり、ライブラリ導入したからあれもこれもやりたいと欲張ったりすると結局ライブラリを導入しないほうが安くすみます

 

正直、日本はライブラリのメリットを活かす方向ではなく、自分達が作りたいシステムに無理やりあわせようとして結果、コストがかかることばかりです

 

ちゃんとデメリットも踏まえた上でライブラリを使ったメリットを十分享受できるようにライブラリを導入したいですね