grpc-gatewayの開発に学ぶ、ソフトウェアの設計手法~Yuguiが定めた、2つの基本設計方針 良いソフトウェアとはどのような方針のもとに設計されているのでしょうか。広く使われているOSSであるgrpc-gatewayの開発過程を作者のYuguiさんが振り返り、その設計手法を解説してもらいました。 こんにちは。 Yuguiと言います。 本記事では読者がより良いソフトウェア設計を行うための参考として、筆者が経験してきた設計上の決定をご紹介します。 筆者はこれまでRuby 1.9のリリースマネジメントを担当したり、Google Mapsの日本向け地理データ処理やgrpc-gatewayの開発などをしてきました。そしてこれらを通じて、広く長く使われて拡張されていくソフトウェアを設計するための方針決定に携わったり、方針に関わる良い議論を目にしたりする機会に恵まれてきました。中でも本記事では、
目次1 はじめに1.1 用意するライブラリ2 OAuth認証のしくみ3 アプリケーションの登録3.1 現在の手順3.2 以前の手順4 実装4.1 OAuthToken取得4.2 TwitterAPIの呼び出し4.3 その他5 ライブラリ部5.1 修正等5.2 以前のバージョン6 サンプルアプリケーション:アクセストークン取得6.1 UI6.2 コード6.3 実行結果7 サンプルアプリケーション:ツイート投稿7.1 UI7.2 コード7.3 実行結果 はじめに 今回はデスクトップアプリケーションから、OAuth認証を利用してTwitterにつぶやきを投稿してみます。OAuth認証を用いると、Tweetの下部にクライアントアプリ名が表示され、ちょっと見栄えもよくなります。また、APIの呼び出し回数の制限も緩和されるらしいです。 OAuth認証は、手間のかかる実装がいくつかあるため、今回はライブ
AngleSharpを使ってスクレイピングできるか? AngleSharp でスクレイピング。突然ですがプログラミングをはじめました。C#を猛勉強中です。教科書ばかりやっていてもつまらないのでいろいろとウェブを検索してます。こちらのサイトに記載がありました AngleSharp なるパーサを使うとモダンにできるそうなのでサンプルとか打って勉強してみたいと思います。 AngleSharpをインストール? まずはVisual Studio 2017にAngleSharpをインストール?せねばなりません。メニューバーの「ツール」→「NuGetパッケージマネージャ」→「パッケージマネージャコンソール」を開きます。 コンソールが開いたらドキュメントどおり「Install-Package AngleSharp」を入力します。 ソリューションエクスプローラー内の参照にAngleSharpが入ります。 H
はじめにGCP のサービスにプログラムからアクセスするためには必ず認証・認可が必要ですが、以下のような様々なコマンドや概念が出てくるので少しとっつきにくい印象があります。 gcloud auth logingcloud auth application-default loginService AccountApplication Default Credentialsこれらの概念は認証・認可のベースとなっている OAuth2 の文脈で眺めてみると全体像が理解しやすくなるので、本記事でまとめてみたいと思います。 GCP での認証・認可GCP の認証・認可は一部(*)を除いて全て OAuth2 ベースでやり取りされています。(* API Key) OAuth2 は三者間の手続きです。 3-Legged OAuth2Client が Resource Owner の代わりに Resource
はじめまして、さくらインターネット 技術本部の山野です。 サーバは故障したり障害を起こしたりして停止するものですが、ダウンタイムをより短くしなければならないものが有ります。 そこで、ストレージレプリケーションソフトウェアDRBDと、HAクラスタ管理ツールPacemakerを用いて、1台のサーバが故障しても動き続けるアクティブ/スタンバイ形式のZabbix監視サーバの作成方法をご紹介します。 基本的な構成はLAMP構成ですので、WordPressなど他のLAMP環境にも利用することができます。 試してみる環境 2台のうち、アクティブなホストでのみMySQLや仮想IPアドレスを立ち上げ、サービスを提供する構成を構築します。 MySQLが書き込む /var/lib/mysql はDRBDでスタンバイのホストにレプリケーションし、MySQLや仮想IPアドレス等の起動及び停止の制御をPacemake
前置き(とばしてください〜) めっちゃ久しぶりに更新します。 プロフィールなども古いですがとりあえず今度そのあたりも更新しようと思っています。 簡単に今の私について。 携帯の販売→スマートフォンアプリの専門学校→Web制作会社→フリーランス→フリーランスの時に仕事を受けたスタートアップの会社に就職(まだ2週間前の話) こんな感じです。 フリーランスのときは(今もまだ仕事はちょこちょこ受けてますが) 基本的に私ができる仕事はなんでも受けていました。 ので、エンジニアの仕事があればデザインの仕事、Botのシナリオ作成(UXライター的な)、プログラムとはかけ離れた仕事などなどもしていました。 また、ガッツリエンジニア!!という仕事はなかったので、(なぜが割とがっつり常駐していたスタートアップではメンバー半分がエンジニアだった!) 逆に、仕事で新技術学べる機会は殆ど無く… 今の自分が活躍できる領域
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く