ブックマーク / golang.rdy.jp (2)

  • TinyGo Tutorial

    この記事はQiita AdventCalendar 2019 Go6の17日目のエントリです。 「TinyGoでマイコン開発に入門してみよう!」という内容で現状のTinyGoをご紹介。 TinyGoって? Goフロントエンドを使ってバックエンドにLLVMを利用する形で マイコンに向いたバイナリを出力可能にしたものです。 特徴 Goのマイコン向けサブセット AVRやARMシリーズに対応 WASMPC向けバイナリも出力可能 LLVMバックエンドのため高効率(サイズ、処理性能) なぜGoはマイコンに向かないのか? OS依存が大きいとかランタイムが大きいなど ネットワークライブラリがモノリシックで巨大 メモリの利用方法が富豪的 組込に必要なGCの保留やvolatile機能の不足 TinyGoがサポートする標準ライブラリ まだ、Goとの差異はいくつか残っていてその影響で半数ほどのパッケージは

    kawasin73
    kawasin73 2019/12/21
  • Go初心者が気を付けること

    Go初心者がやってしまいがちなやらない方がいいことを書き出してみました。 情報検索や環境構築 golang.jpを見に行ってしまう Golang(ごーらんぐ)と呼んでしまう(by hogedigo) depが最新推奨のパッケージマネージャだと勘違いする(Go標準の「go mod」を使おう) 「GO???」環境変数を理解せずに設定しまくる(わからない場合は一切設定しないのが正しい) しょっぱなからgvm,gobrew,goenvなどのマルチバージョンのマネージャを入れようとしてエディタ連携環境構築に失敗する (複数バージョンのGoの運用は既に標準のGoだけでできるようになっている) エディタにgoimportsやgolintを設定し忘れる OSのパッケージマネージャまかせで古いGoやgccgoをインストールしてしまう エラーハンドリング周り err変数名のバリエーションを増やしすぎる(ほとん

    kawasin73
    kawasin73 2019/12/18
  • 1