並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 385 件 / 385件

新着順 人気順

golangの検索結果361 - 385 件 / 385件

  • 【Golang】1 バイトデータのビットローテーション【左循環シフト】 - Qiita

    Go 言語(以下 Golang)で、1 バイトのデータを左シフトさせたのち、右側末尾にビット・ローテーションさせたい。いわゆる、ひとつの循環シフト。 普通にビットシフトすると溢れたビットは消えてしまうのです。 func main() { v := uint8(0b11110000) w := v << 1 // 1 ビットの左シフト fmt.Printf("%08b\n", v) fmt.Printf("%08b\n", w) } // Output: // 11110000 // 11100000

      【Golang】1 バイトデータのビットローテーション【左循環シフト】 - Qiita
    • Crafting a Language Server in Golang: A VSCode LSP for Lama2

      Crafting a Language Server in Golang: A VSCode LSP for Lama2 Dive into our journey at Hexmos, where we bridged Lama2 with VSCode using Golang's LSP. From challenges to insights, we're excited to share it all! 🦙🚀. This post narrates our journey to developing advanced functions in our VSCode extension for Lama2, a plain-text API manager built at Hexmos. We will see how our thinking and implementat

        Crafting a Language Server in Golang: A VSCode LSP for Lama2
      • Go言語(golang) flagパッケージでコマンドライン引数をパース - golangの日記

        Go言語の標準ライブラリ flag パッケージを使ったコマンドラインオプション(フラグ)の基本的な解析方法と、 独自の型(例えば、URL や JSON など)を扱えるようにするための実装方法 flagパッケージ ドキュメント: https://golang.org/pkg/flag ソースコード: https://github.com/golang/go/tree/master/src/flag 目次 引数の在り処 flag パッケージの基本的な使い方 オプション(フラグ)の作成方法 具体的な使い方 golang の flag パッケージで面倒だったり、不便に感じること FlagSetの使い方 FlagSet を使ってサブコマンドを設定する 独自の型実装 引数の在り処 実行ファイルに渡したコマンドライン引数は os.Args に配列で入っている。 0 番目は実行したファイルのパスで、それ以

          Go言語(golang) flagパッケージでコマンドライン引数をパース - golangの日記
        • How to kill a dragon: Rewriting your app to Golang

          Let’s imagine that your application is written in some scripting language — e.g. Ruby — and you want to rewrite it in Go. You may ask a reasonable question: what is the point in rewriting a program that is up and running?.. Why?Firstly, let’s assume that your program is connected to a certain ecosystem. In our case, the ecosystem includes Docker…

            How to kill a dragon: Rewriting your app to Golang
          • Golang - How to Prevent Output from log Package

            2019-11-19 tips Golang Go の 標準 log パッケージ からの出力を実行時に抑止する方法について モチベーション CLI ツール を作っている際に、 所謂 verbose モード を提供したいと思った。 OPTIONS: -verbose 詳細メッセージを出力する 各種CLIツールでよくお目にかかるオプションかと思う。 各種ロギングライブラリは、大抵実行時に出力するログレベルを制御する機能が提供されているため、 main.go だけで完結する様な 簡易なツールである場合は それらを導入してしまえば実現は簡単だ。 しかし、今回作ろうとしている ツール は基本的な処理はライブラリとして単独で提供し、 エントリーポイントとして main パッケージを実装する構成にしていたため、既存のロギングライブラリ の採用はリスクが伴う。 既存のロギングライブラリを使うのは絶対に止め

              Golang - How to Prevent Output from log Package
            • VSCode Remote DevelopmentでGolangの開発環境を爆速で構築する - Qiita

              この記事は株式会社クロノスの「~2020年春~勝手にやりますアドベントカレンダー」の10日目の記事です。 「~2020年春~勝手にやりますアドベントカレンダー」インデックスはこちら(随時更新) 前回の記事で作成したカレンダーはこちら はじめに 開発環境、どうやって構築していますか? ローカルに色々インストールしちゃう人も多いと思いますが、言語のバージョン違いや環境変数などで、「自分の環境では動くんやけど、他人の環境では動けへん。なんでや・・・」みたいな光景を開発者であれば一度は目にしてきたのではないでしょうか。 解決方法はいくつかありますが、今回はVSCodeのRemote DevelopmentとDockerを使った方法を紹介したいと思います。 DockerはもはやWebエンジニアにとっての必須教養と言っても過言ではないと思いますので、これを期にDockerでの環境構築を始めてみても良い

                VSCode Remote DevelopmentでGolangの開発環境を爆速で構築する - Qiita
              • GolangのContext入門 - 体はドクペで出来ている

                Contextとは何か? Golangには context という標準パッケージがあります(以前は実験パッケージ golang.org/x/net/context でしたがGolang1.7から標準採用されました)。これは「コールグラフの下流をまとめてキャンセルさせたい」「リクエストスコープな値をコールグラフの下流に伝播させたい」という場合に使用します。 Webアプリケーションを作る場合で想定してみましょう。リクエストが来るとHTTPハンドラーが何か値を取り出して関数に渡し、その関数が更に別の関数を呼び、DBから情報を取得したりと諸々の処理を経てユーザーへレスポンスを返すとします。この時何らかのトラブルがあってDBのレスポンスが極端に遅くなるとユーザーはいつまでも待つことになってしまうのでタイムアウトをかけたいですね?しかし真っ当に実装するとchannelをあちこちに持ち回したりしないとい

                  GolangのContext入門 - 体はドクペで出来ている
                • 【Golang/Go言語】Airでホットリロードをする方法 - Awesome Blog

                  【Golang/Go言語】Airでホットリロードをする方法

                  • Casbin · An authorization library that supports access control models like ACL, RBAC, ABAC for Golang, Java, C/C++, Node.js, Javascript, PHP, Laravel, Python, .NET (C#), Delphi, Rust, Ruby, Swift (Objective-C), Lua (OpenResty), Dart (Flutter) and Elixir

                    In Casbin, an access control model is abstracted into a CONF file based on the PERM metamodel (Policy, Effect, Request, Matchers). So switching or upgrading the authorization mechanism for a project is just as simple as modifying a configuration. Besides memory and file, Casbin policy can be stored into lots of places. Currently, dozens of databases are supported, from MySQL, Postgres, Oracle to M

                    • SSH クライアント設定入門 for Golang - じゃあ、おうちで学べる

                      概要 離れた場所にあるLinuxサーバーをリモート操作する為には、SSHは欠かすことができません。 本記事ではSSHの基本と実装までをやっていきます。 誤まった内容があればnwiizo までご指摘いただければと思います。 概要 SSH の基礎 接続設定 ssh.ClientConfig SSHサーバーに接続情報を登録する 最後に SSH の基礎 SSH(Secure Shel)は、遠隔のホスト間の通信でサービスを安全に運用するための暗号化ネットワーク技術です。強力な認証機能と暗号化により、ファイルの転送やリモート操作を安全に行うことができます。Linuxでは、OpenBSDによるOpenSSHが一般的に利用します。 SSHは前述した通り通信の暗号化を行って安全な通信を実現します。たとえば、telnet を使った場合、通信内容はプレーンテキストなので、通信経路を盗聴されると容易にID/PAS

                        SSH クライアント設定入門 for Golang - じゃあ、おうちで学べる
                      • GitHub - linyows/go-retry: A retry command by golang on CLI.

                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                          GitHub - linyows/go-retry: A retry command by golang on CLI.
                        • Using Domain-Driven Design(DDD)in Golang

                          Domain-Driven Design pattern is the talk of the town today. Domain-Driven Design(DDD) is an approach to software development that simplifies the complexity developers face by connecting the implementation to an evolving model. Note This is not an article that explains the "ideal" way to implement DDD in Golang because the author is no way an expert on it. This article is rather the author's unders

                            Using Domain-Driven Design(DDD)in Golang
                          • golang error handling (Go1.13) - Qiita

                            初めに 自分で簡単なWebサービスを作っていくにあたり、どこでどういうエラーが起こったのかわかりにくく、エラー解消に多くの時間を割くということがおきた。そのため、エラーハンドリングを学び、この問題を解消したいと考えた。 version go version go1.13.3 対象読者 エラーハンドリングって何?という人 エラーハンドリングをやっていきたいが、何が正解かわからない人 一緒にエラーハンドリングについて考えてくれる方 躓いたところ GolangのVersionが上がりライブラリerrorsに変更が加えられた。そのため、今までのエラーハンドリングと違うやり方になったらしい。それでは、どういう場合にどういうエラーハンドリングを採用すればいいかというところで沼にハマってしまった。 Go1.13 ライブラリerrors エラーハンドリングをする意義 初めにで書いたように、エラーハンドリン

                              golang error handling (Go1.13) - Qiita
                            • GitHub - knchan0x/umeshu: Umeshu is a mini web framework written by Golang for for learning purposes.

                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                GitHub - knchan0x/umeshu: Umeshu is a mini web framework written by Golang for for learning purposes.
                              • RESP(Redisプロトコル)を話す in Golang. - Nullable

                                概要 ひょんなことをキッカケにGo言語で簡易的なRedisのサーバを書いたので簡単にまとめようと思う。 https://github.com/0n1shi/beehive-redis 動作としては以下のように普通のRedisサーバとなんら変わりなく、redis-cliからも接続することができる(コマンド数は極端に少ないが)。 # terminal 1 $ beehive-redis run --config conf.yaml 2022/02/20 09:17:27 starting Beehive Redis server ... # terminal 2 $ redis-cli 127.0.0.1:6379> keys * (empty array) 127.0.0.1:6379> set msg "hello world" OK 127.0.0.1:6379> get msg "he

                                  RESP(Redisプロトコル)を話す in Golang. - Nullable
                                • sqlc と golang-migrate で PostgreSQL を扱う

                                  これは Go Advent Calendar 2021 の 5 日目の記事です。 はじめに sqlc は SQL から Go のコードを生成するライブラリです。一般的な ORM にはコードから SQL を生成するものが多いと思いますが、 sqlc はそれらと真逆のアプローチを取るユニークなライブラリです。 本記事では sqlc と golang-migrate を使って PostgreSQL を扱う Go アプリケーションの構築を行ってみます。 kyleconroy/sqlc: Generate type safe Go from SQL golang-migrate/migrate: Database migrations. CLI and Golang library. ディレクトリ構成 . ├── db │   ├── db.go │   ├── migrations │   │  

                                    sqlc と golang-migrate で PostgreSQL を扱う
                                  • bmf-tech.com - Golangでロードバランサーを実装する

                                    概要この記事はMakuake Advent Calendar 2021の24日目の記事です。(大遅刻しました・・) ラウンドロビンで負荷分散するロードバランサーをGolangで自作してみるという話です。 ロードバランサーとは何かロードバランサーはリクエストを複数のサーバーへ振り分けて負荷分散する(ロードバランシング)機能を持ったサーバーです。 サービスの可用性を高めてくれるリバースプロキシの一種です。 ロードバランサーの種類は大きく分けて2種類あります。アプリケーション層で負荷分散するL7ロードバランサーと、トランスポート層で負荷分散するL4ロードバランサーです。 ロードバランサーは、ロードバランシングの他、パーシステンス(セッション維持)とヘルスチェックの機能を兼ね備えています。 ロードバランシングの種類負荷分散には静的な方式と動的な方式のものでそれぞれ種類があります。 静的なものの代表

                                      bmf-tech.com - Golangでロードバランサーを実装する
                                    • 【Golang】Github actionsでカバレッジを取得しCodecovにアップロードする - Simple minds think alike

                                      Go言語で作ったアプリケーションのGithubリポジトリでGithub actionsワークフローを設定し、 codecov にカバレッジを送る設定方法を紹介したいと思います。 codecov は、テストのコードカバレッジを取得してくれるツールです。テストスイートを実行した時にソースコードの実行箇所を視覚的に示してくれて、どこに新しいテストを書くべきか分かりやすくなります。 緑: テストスイートによってソースコードが実行されている箇所 黄: テストスイートによってソースコードが部分的に実行されている箇所(具体的には、真偽値が返るところで、 true か false のどちらかしか返っていない箇所) 赤: テストスイートによってソースコードが実行されていない箇所 忙しい時はテストコードを書くのが手抜きになったりするのですが、 codecov を使っているとカバレッジが定量的・視覚的に表現され

                                        【Golang】Github actionsでカバレッジを取得しCodecovにアップロードする - Simple minds think alike
                                      • Golang APIレイヤードアーキテクチャで組んでみた。 - Qiita

                                        初めに 今回アーキテクチャを触れるきっかけは、Golangで成果物を作りたいと考えたときに、文法などの知識を知っていてもどのようにフォルダの構造を決めてどの実装から取りかかればいいかわからなかったことです。アーキテクチャを勉強することでどのpackageがどのpackageに依存しているのかを明確にすることができるとともに、どの実装から取りかかれば良いのかも依存関係から知ることができる。 対象読者 アーキテクチャってなんだろうという方 Goで何か成果物を作りたいが最初何から実装すればいいかわからない方 他 実装内容 今回実装したのは、TodoリストのRESTAPIである。この記事を書いたのはGetAll()APIを実装した段階である。

                                          Golang APIレイヤードアーキテクチャで組んでみた。 - Qiita
                                        • How To _Avoid_ Parallel Execution of Tests in Golang

                                          Because in some circumstances, this can cause random failures and even a loss of hair. Photo by Aarón Blanco Tejedor on UnsplashYesterday, I spent quite a bit of time trying to figure out why a certain number of integration tests (i.e., those that range from the API endpoints down to the database) were failing when running the usual go test ./... command (it’s a bit simplified here, but I’m sure y

                                            How To _Avoid_ Parallel Execution of Tests in Golang
                                          • Golang で標準出力をテストする - oden77のブログ

                                            はじめに Golang で fmt.Printf などの標準出力結果をテストしたい場合、出力をキャプチャすることでテストが可能になります。 標準出力するプログラム 例として物凄く単純な標準出力するだけの関数を用意します。 func print(str string) { fmt.Printf("%s", str) } 出力のキャプチャ 出力をキャプチャするには出力先を一時的に切替て、出力結果を値として取得することで実現可能です。 fmt.Printf の出力先である os.Stdout の型は *os.File です。 *os.File で出力を受けて、値を取得するには os.Pipe() が役に立ちます。 os.Pipe() は戻り値として writer と reader が取得できます。 つまり出力先を os.Stdout から writer に切り替えて、 reader から値を取得

                                              Golang で標準出力をテストする - oden77のブログ
                                            • 初心者がGolangでDiscordBot作って痛い目にあった話 - Qiita

                                              概要 GolangでDiscord用抽選Botを開発した ライブラリの挿入や構造体の定義が初心者には注意が必要と悟った 経緯 モンハンで使うBotが作りたかった。以上! モンハンワールド・アイスボーン専用のBotを作っていた 毎回モンハンアイスボーンで一緒に狩猟をする友人(HR/MR:999)が クエストと狩猟対象もルーレットで決めたい と変なことを言っていたため、HR400の私は恐怖のあまり拒否できずワールドで出現する武器・モンスター・クエストを全て抽選できるBotをPythonで開発しました。名前を「受付ジョー」としています。食欲が伺える最高の名前ですね。 食事をするだけでなく、武器などの抽選を行ってくれます。 ちなみにHerokuにコードをぶん投げて、そこで仕事させています。 新作に向けて改修が必要になっていた 現在は次回作であるモンスターハンターライズが発売されており、今夏にはサン

                                                初心者がGolangでDiscordBot作って痛い目にあった話 - Qiita
                                              • GitHub - jojoarianto/go-ddd-api: API with domain driven design approach using golang, gorm, and mysql

                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                  GitHub - jojoarianto/go-ddd-api: API with domain driven design approach using golang, gorm, and mysql
                                                • Rethinking Error Handling in Golang

                                                  Image: https://stackify.com/learn-go-tutorials/Errors are one of the most important aspects of a programming language. The way you handle errors impacts the performance of the application in many ways such as, ConsistencyTraceabilityDebuggabilityMaintainabilityHow errors are defined in Golang is a bit different from languages like Java. In Go, errors are values. For example, you can assign an erro

                                                    Rethinking Error Handling in Golang
                                                  • Golang for Web (Part-I): Build your first REST API with Golang & Fiber

                                                    Golang for Web (Part-I): Build your first REST API with Golang & Fiber This is the first part of this series on Golang for Web. My goal is to show the newcomers how easily we can build REST APIs with Go by breaking down big apps into small ones. Here, we're going to build a simple TODO app webserver with Gofiber by separating all routes, controllers, etc. Go: An open-source programming language Go

                                                      Golang for Web (Part-I): Build your first REST API with Golang & Fiber