"Devise" は自分にはまだ早かった話
Railsを利用して、1本学習系のサービスを開発中です。
そこに付与する認証機能として、
やはり独自でemailなどの情報を保持しておきたくないので、
Omniauthを利用して
を利用しようかと考えています。
Google先生に教えていただきながら進めていくと、
どうしても出てくるのが Devise
という名前。
認証に関わるような「あるある処理」を一括実装できるようで、
いろいろ説明を読んでいると、たしかにすごい。
でも、触っていると(私が初心者だからもあると思いますが)疑問が湧いてきます。
なんでも出来過ぎじゃないのかな?という疑問
いろいろな機能が一気に突っ込まれることは理解できましたが、
私自身使いこなせる気がしていません。
たしかに各所に存在する情報を利用すると、
簡単に認証系が実装できましたが、
一部はなんとなく動作を把握できましたが、細かいところは個人的にブラックボックスです。
「使いこなせないお前が悪い」、と言われたらそれまでなのですが、
まずはRuby on Railsでの認証のなんたるかを把握してから
こういうものに手を出したほうがいいのでは?という気持ちになってきました。
果たして何か起きた時に対応できるのか?
普段の業務では Java/javascript を利用しており、
OSSのライブラリやフレームワークを利用することも多々あります。
ただし、トラブルが起きた際にはソースを読んで動きを追うことも多々あります。
javascript系のライブラリであれば、実際に手を加えて直すこともあります。
ただ、これをJava/javascript初心者だったころにやれと言われたら無理だった気がします。
というわけで...
今のところ一人で進めている開発なので、
何か起きた時に自分で対応できるよう、認証系でDeviseは利用しないことにしました。
でも。。。
正直、DeviseというGemはすばらしいと思いました。
あれだけのものを、瞬く間に作れてしまう。これはやはり驚異的です。
こういったものを有効活用して効率的に作成するのもRailsの魅力だと考えているので、
いずれ自作した認証部を置き換えてみたいと思います。
でも実際のところ業務とかでは使うのだろうか?
認証と言っても、やはりサービスモデルによって色々差異はあると思いますし、
すべてが共通だとは思えないです。
Deviseを入れてカスタマイズするのと、スクラッチで作るのを天秤にかけて
より効率的なほうを選んでいく感じなのかな?
うーん、やはりまだまだ未熟でございます。。