たこぶろ

エンジニアははてなでブログを書くものだそうなので作ったブログです。

ヒカルのgo! #4 (hikarie.go)に参加してきました。


ヒカルのgo! #4 (hikarie.go) - connpass

に参加してきたので、メモ書き程度ですが投下します。


 

Goとリレーショナルデータベース @umisamaさん

Goで楽しくSQLする!

SQLを触る時に便利なライブラリ、方法

お仕事でgoは

 PaaS(B2B

   脆弱性診断管理アプリ

 メールトランスファ

みたいに使われているそうです。

 

SQLを使う方法

・生SQL

 テーブルの把握、エラーハンドリングを

 手でやらないといけないので面倒くさい

 

SQLクエリビルダー

    https://github.com/lann/squirrel

  SQLの一部をオブジェクトとして共通化できる

 普通のSQL文はだいたい生成可能(できないものもある、サブクエリなど)

 PostgreSQLでも利用できる

 →プレイスホルダーを変換してくれる

 

 ↓正しくないSQLを検出するのが強いもの

   https://github.com/dropbox/godropbox/tree/master/database/sqlbuilder (これかな?)

   MySQL以外に対応できない

   プレイスホルダーを使ってくれない

 サブクエリなど使えない

 

 クエリビルダーも面倒くさい!!!!!!!

 

・ORM

 https://github.com/jinzhu/gorm

 リレーションを解釈する(たぶん、唯一)

 soft-deleteのサポート

 マイグレーションをサポート

    変な動きをすることがある 

 

 https://github.com/go-gorp/gorp

 もっとも使われているgo言語のSQL関連ライブラリ

 ORMではないのでリレーションが絡むと対応しない

 →JOINなどはSQLクエリを生で書く必要がある

 あまり開発が活発ではない

 クエリビルダーと併用する

 

銀の弾丸はない!!!!!!

結局ちょっとは面倒くさい 

一長一短

 面倒くささ

 バグの多さ

現状:gorp+squirrelを商用で使用されていて、特に問題はない

 

※クエリビルダーを作成されているので☆を!

https://github.com/umisama/go-sqlbuilder

 

@k0kubunさん

https://github.com/motemen/gore

windowsでは動かない

windowsでも動く快適インタラクティブシェルを作った話

https://github.com/k0kubun/go-ansi

windows対応は大変

 

すごいGolang楽しく学ぼう @T_akmsさん

Golangを勉強した方法!

まずtour of go

次に簡単なものを作成

ちょっとしたツールを作成

or

既存の他言語ツールをGoに翻訳

 基本パッケージを機能のパッケージ化

 structからのfuncの生やし方

 testの書き方

 

Goのテストは初心者だといろいろ考えてしまう

→コードを見て書き方を学ぶ!

 

@7yan00さん

スクレイピングをする

https://github.com/7yan00/hikago-4_handsOn/blob/master/text01.md

 

時間内ではあまりできなかったので、このブログを投稿したらやってみようと思います!

 

 


お寿司とカツサンドをありがとうございました!

Golang意識が高まったので、簡単なものを何か書いてみようかなと思いました。

また参加したいです!ありがとうございました!