golangに関するgreenbowのブックマーク (6)
-
はじめに つい先日、HTTP3がRFC9114として正式に発表されました。 RFC読むよりとりあえずパケット見る派なので、とりあえずコード書いて動かしてキャプチャしたいところです。quic-goは http3 ディレクトリがあり、対応してそうなのでサンプルコードを書いてみました。 数日前にcommitが入っていて開発も活発そうですね。 サンプルのサーバ側コードを試す時はお手数ですが、opensslやmkcertコマンドなどでご自分で公開鍵&秘密鍵を生成してください。 クライアント まずはクライアントのコードを書いてみます。 go.docを見ると、RoundTrip という関数に *http.Request を渡すとHTTP3のクライアントコードになりそうです。 こんなコードになりました。 package main import ( "crypto/tls" "fmt" "github.c
-
https://www.kbaba1001.com/entry/2021/09/17/073149 ︵該当記事が削除されました︶ RubyのサービスをGoで置き換えるのは3倍人手がかかる 何するにも機能不足 JSONの読み書きにわざわざ構造体書くの面倒 同僚がGoを選ぼうとしたら愚かな選択ですねと答える サーバーサイド開発にGoを使うのは危険 っぽい内容だったかと。 だいぶGoの特徴や既存の言語との考え方の違いが広まってきてるのかなぁと思っていた矢先だったので十年くらい前のような指摘をあえて今されていてびっくりした。 正直、ここに書かれたようなヘイト項目は既出すぎるので、もし影響の大きい項目を多くの人が同様に嫌っているならばGoはここまでの人気のある処理系になることはなかったと思う。︵もしくは多くの人が嫌ってはいるが影響の小さい項目ということ︶ Goは出た当初、こういうヘイトが世界中のブロ
-
プログラミング言語の学習に関心があるのに、どこから始めればよいかわからない場合は、 ここから始めましょう。 Goで単純なプログラムを構築するために必要な基本的な構文と思考プロセスについて説明します。 このラーニング パスの内容は次のとおりです。 Goコードの最初の行を記述するために必要なツールをインストールします。 Goで制御フローを使用する方法について説明します。 Goでのデータ型について説明します。 エラーを処理する方法について説明します。 メソッドとインターフェイスを使用する Goでの同時実行のしくみについて説明します。 プログラムを作成してテストします。
-
Go、Rust、Elixir――。21世紀になってから生まれた新しいプログラミング言語を採用する企業が、日本でも少しずつだが増えている。PythonやRubyなどのスクリプト言語のように手軽にアプリケーションを開発できたり、SwiftやKotlinのようにスマートフォンアプリケーションをすぐに開発できたりするわけではないが、システムを開発するプログラミングでは抜群の適性を発揮することも少なくない。本特集はそんな新世代のプログラミング言語の使いどころを、事例に基づいて解説する。第1回は﹁Go﹂だ。 Goは2009年に米Google︵グーグル︶が発表した比較的新しいプログラミング言語だ。C/C++の代替として開発され、コンパイルが速く、並列処理の記述が容易という特徴がある。言語仕様がシンプルなので覚えなければならないことが少ないのもメリットだ。 さらにGoは、C/C++で問題だったメモリー関連
-
はじめに こんにちは、StackdriverあらためGoogle Cloud Operations担当者です。Google Cloud Operationsもさることながら、Go Conferenceの運営など、長らくGoコミュニティに関わってきましたが、まだまだ知らないことがあったということを昨日今日で知ったので共有します。 time.minWall time.minWall という値があります。 src/time/time.go - go- GitatGoogle const (hasMonotonic = 1 << 63 maxWall = wallToInternal + (1<<33 - 1) // year 2157 minWall = wallToInternal // year 1885 nsecMask = 1<<30 - 1 nsecShift = 30 ) こ
-
Google が開発したプログラミング言語です。﹁Go言語﹂や﹁Golang﹂と表記されます。 UNIX、B言語(C言語の元)、UTF-8の開発者ケン・トンプソンや、UNIX、Plan 9、UTF-8の開発者ロブ・パイクによって設計されました。 静的型付け、メモリ安全性、ガベージコレクションを備えるコンパイル言語です。 シンプル、高速、メモリ効率が良い、メモリ破壊が無い、並行処理が得意などの特徴を備えています。 メモリ破壊が無く、並行処理を得意とする、進化したC言語という側面があります。 Linux、Mac OS X、Windows、Android、iOS で動作します。 おおよそ半年に一度バージョンアップを行っているようです。このページは Go1.14 をターゲットに記述しています。 Go1.18 2022年3月15日 速度改善、ジェネリクス、ファジングテストツール、ワークスペースモ
-
1