そもそも自分のサービスをGoで始めたのは
GOなら小さくできるので貧乏VPSでも動くだろう
というのが主要な理由と
デプロイが簡単そう
という理由でした. 使いにくいというわけではないのですが, 個人開発のプロジェクトとして面倒が増えてきました.
またRuby on Rails(RoR)はAPIサーバー開発が面倒と勝手に思い込んでいたのもありました.
理由 | RoRでの対処 |
---|---|
DB | ActiveRecordがある |
SPA | webpackオプションが指定できる |
APIサーバー | apiオプションが指定できる |
構成 | 検索できる |
Goのフレームワーク選定がイマイチだったのかもしれませんが, 検索できるってのは安心材料ですし, セキュリティについても懸念が払拭できませんでした. RoRなら素人が頭を悩ますような問題はフレームワーク側でしっかりやってくれているでしょう. 対象が勉強のツールというのもRoRへ変更しようと思った理由です. 開発速度を上げるには多少深い理解を犠牲にして, 作ってしまおうとk我慢できなくなったわけです. これと関連してビルド待ちが面倒というのもあります.
「俺にはGoは早すぎた」という結論なのですが, Goをやって良かったのはGoは基礎を学ぶのに良い言語だということです. C with Memory Managementという感じのシンプルな文法や比較的低レベルの話がGoでは読めたりしますので, また勉強していきたいです. 後は少しWeb関係の語彙が増えたぐらいでしょうか.
上述の点をもう少し明確にしておこうと思います.
この辺のGo + Echoでメンドくさかった所です.
rails new project_name
DBの指定も簡単です.
rails new project_name --database=mysql
rails new project_name -d mysql
RoRのことはよく知りませんがMVCパターンでWebアプリを開発するということは知っていました. そのためAPIサーバーの開発に使えるとは思っていませんでした.
rails new project_name -d mysql --api --skip-turbolinks
Reactも指摘できます.
rails new project_name -d mysql --api --skip-turbolinks --webpack=react
こんなに簡単でいいんでしょうかって感じですが便利です.
Using Rails for API-only Applications
Building and Consuming a JSON API with Rails and React
Androidアプリ開発者を目指しています. 興味あることリスト: https://t.co/ew3bb6grdJ Github: https://t.co/9btqysHqWr Qiita: https://t.co/ZVRhjouauX
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント