developmentに関するPockeのブックマーク (12)

  • クライアントアプリの為のREST API設計 - Qiita

    エンジニアがアプリ担当とAPI担当で分かれているチームで、API担当のエンジニアがアプリ開発経験が無かったりすると、アプリ担当のエンジニアはどんなAPIがクライアントアプリにとって使いやすいのか、上手く伝えるのに苦労する事がありますよね?記事はそんな場面でAPI担当のエンジニアに読んでもらう事を想定しています。 APIと型 アプリ側はRESTクライアントにRetrofitやRestkit等、既に広く使われているライブラリを使用する事が多いです。それらのライブラリは、オブジェクト・JSON間の変換機能があり、アプリ側ではJSON等シリアライズされるデータ形式を意識せずに、処理系上のオブジェクトをそのまま扱えます。即ちAPI経由でやり取りされるデータは全て型を持つのです。 例えばAPI側のコードで以下の様に定義されたクラスが

    クライアントアプリの為のREST API設計 - Qiita
  • Vue.js v0.11の変更点(予定)まとめ

    Vue.js v0.11のrc版もリリースされて、v0.10からの変更点が多いのでchangesを参考にまとめてみました。 ** rc3がリリースされたので修正・追記しました ** APIの変更も多いですが、data継承の仕組みが完全に変わっているのでその辺りは注意が必要ですね。 npm install vue@0.11.0-rc2 まだ安定してなかったりドキュメントはv0.10のものしかなくてchangesとmergeしながら読む必要があったりするので、これから開発する人は今のタイミングはどのバージョンを使えばいいのかちょっと悩ましいですね。v0.11系を使っていった方がいいとは思いつつ。 今回の変更でも見えるのですが、Angular.js以外にもBackbone.jsやReact.jsなど様々なフレームワークからいいところを持ってきてるところがVue.jsの面白いところですね。 htt

    Vue.js v0.11の変更点(予定)まとめ
  • inforno :: LuaのGo言語実装を公開しました

    LuaをGo言語のみで実装した GopherLua を公開しました。 詳しくはGithubのREADMEを見ていただくとして、特徴としては以下になります。 Lua5.1ベース 5.1の機能はほぼ実装済み Compiler, VMともに完全にGo言語のみで実装 引数の受け渡し以外でのスタック操作が不要で使いやすいAPI なぜ作ろうと思ったか もともとC言語でものを作るときにはLuaを設定ファイルの代わりとして取り入れていました。Goではあまり拡張言語実装がないので、jsonだったりiniだったりを設定ファイルとして使っていましたが、やっぱり微妙にめんどくさい。変数くらい欲しいなあ・・・とか。 結局、固い言語だけでモノを作るのは難しく、やわらかさが必要になるポイントがあります。そういうところはまず、「設定ファイル」として外だしされます。そしてその設定ファイルがどんどん肥大化したり複雑化したりし

  • Ruby on Rails のConditionalGet について - Qiita

    cuzic です。 Ruby on Rails Advent Calendar 24日目の記事です。 今日はクリスマスイブです。 実は生まれて初めての Advent Calendar への投稿です。 さらに Qiita で書いたのも初めてです。 ちょっとドキドキです。 今日は、Ruby on Rails における Conditional Get に ついて書きます。 ConditionalGet とは ここで書こうとしている ConditionalGet とは、 HTTP1.1 で規定されている取得済みのコンテンツであれば ブラウザ内のローカルキャッシュを使わせることで、 トラフィック量を削減する機能のことです。 一般に、ブラウザは動作を高速化するため、トラフィックを 軽減するため、コンテンツを一旦キャッシュとして保管します。 とはいえ、キャッシュを使う限り、そのキャッシュは今でも 有効な

    Ruby on Rails のConditionalGet について - Qiita
  • これだけ押さえておけばあらゆるAPIを呼び出せる! Google APIを使用するための基本

    対象読者 GoogleのサービスやAPIに興味のある方、悩んだことがある方 Google Cloud Platformに興味のある方 GoogleではないAPIの経験がある方(推奨) 必要な環境 Googleアカウント Webブラウザ サンプルコードを実行する場合は、Javaの開発環境 Google APIの基礎知識 Googleが提供する大抵のプラットフォームやサービスは、それらのリソースへアクセスするためのAPI(以下、Google API)を提供しています。まずは、Google APIを理解するための基礎となる事項を押さえておきましょう。 APIとの通信方式とDiscovery Document Google APIと通信する方式には次の2つがあります。 OAuth1でアクセス許可を得て、ATOM書式で通信する OAuth2でアクセス許可を得て、JSON書式でhttpsを使って通信す

    これだけ押さえておけばあらゆるAPIを呼び出せる! Google APIを使用するための基本
  • GoでTUI (Text User Interface)つくるやつ作ってた - 暮らしの技術

    tanatana/aspirin · GitHub termboxラッパみたいな感じ,go-visual_widthにもお世話になってます…… これまだ完全に作ってる途中で,一切まともに使える状況では無いですけど,まあもう2014年も終わるし忘年しようぜって感じで放出します. Aspirin Hello, world demo - YouTube こういう感じで,tigみたいなTUIアプリケーションを気軽に作ることにフォーカスしてる.いまのところの機能としては ペイン分割 ウィンドウ分割 ページャ テキストの挿入 テキストへのアクションの設定 みたいなのは使える. もともとgithubのissuesをターミナルから見たりタグの編集したり……といったことを気軽にしたくて,気軽にしたいなーっておもって作ってたやつの副産物. とにかく気軽につかいたいな〜って思ってたら結局あんまり使いやすいとは思

    GoでTUI (Text User Interface)つくるやつ作ってた - 暮らしの技術
  • sync.RWMutexを使おう - Qiita

    昨日GoCon2014がありまして、発表の機会を頂いたのですが発表後に @rui314さんから指摘のあったグローバル変数への読み込み・書き込みの競合の問題、これに関してはsync.RWMutexを使うのがいいので、使ってみました。 RLockとLock 通常のsync.MutexはLockのみしか提供しない。これをRead, Write双方で使ってみると非常に効率が悪くなります。そこでsync.RWMutexはRLockというもう一つのLockを提供しています。 この2つの違いは、 RLock: Read向けのLock。RLock同士はブロックせず、Lockのみがブロックされる。解除時はUnlockではなくRUnlockする。 Lock: いわゆる普通のLock。RLock, Lock双方をブロックする。 上記を使い分けることで効率よくLockを行えるようです。 使ってみる 実際にどう動く

    sync.RWMutexを使おう - Qiita
  • microservicesに分割する際に注意するべき5つのこと - Qiita

    はじめに マーティンファウラーがmicroservicesの記事で、小さな役割をもったサービス群にアプリケーションを分割することを提案しています。 cookpadが、サービスをマイクロサービス群に分割していることの記事が注目を浴びており、最近急速にバズワード化しているように感じます。 バズワード化して、ポイントが損なわれる前にいくつかの注意点をまとめておきます。 1.インフラコストは基的に増大する microservicesは、今まで単一のアプリケーションコードで行われていたことを複数のサービスサーバーに分割して管理・運営していくことです。ですので、プロセスを跨いだ通信が大量に発生します。その結果、サーバー台数は増大します。 つまり、インフラコストの増大と開発速度の高速化のコスト感覚をバランスして判断していく必要があります。疎結合性が高まり、アーキテクチャとしては美しく感じますが、実施に

    microservicesに分割する際に注意するべき5つのこと - Qiita
  • inotify-toolsでファイルやディレクトリを監視する - Qiita

    Linux2.6から追加されたinotifyというAPIは、ファイルやディレクトリーでオープン、クローズ、移動/名前変更、削除、作成、属性の変更などといったファイルシステムイベントを監視することができます。 inotify API群を利用して自分でファイルシステムイベント監視プログラムを実装することができますが、 今回は、inotify-toolsというinotifyを利用したファイルシステムイベント監視ツールを使用します。 inotifyイベント inotifyでは対象のファイルまたはディレクトリに対して以下のファイルシステムイベントが監視できます。 ※対象がディレクトリの場合は、ディレクトリ自身とその配下のファイルが対象となります。 イベント名 イベント発生タイミング

    inotify-toolsでファイルやディレクトリを監視する - Qiita
  • Raspberry Pi メモ (23) - カメラモジュールの使い方

    Raspberry Pi のカメラモジュールの最新情報 (2020-05-01) この記事を書いてから7年近く経過して、今日調べてみると13万ページビューにもなっています。更新していなくて申し訳ないです。 その間に Camera Module v2 (8MP) が発売され、さらに最近 High Quality Camera(12.33MP) が発売されました。 raspistill と raspivid のコマンドは今でも使用できるようですが、オプションなどが追加されています。 新しい情報は公式サイトのCamera Module または MagPi Camera Guide を参照して下さい。 Raspberry Pi のカメラモジュールの使い方 (2013/07/26, 2013/12/01) 5月22日頃に発注したラズベリーパイ専用のカメラモジュールが届きました。 今回は RSオンライ

  • R2D2 on RaspberryPi Project

    制作の様子 09-16-2014 2nd DevMeeting 1st DevMeeting 目的 家の中を走り回り人間のサポートをしてくれるR2D2を作成する 日語命令に反応し行動する 関連記事 長くなってきたので分けました I2C電圧・電流センサ活用 http://kouzu.info/ina226-sensing-on-raspberrypi-python/ サーボモータで頭ドライブ http://kouzu.info/r2d2head-servo-drive/ 必須機能 動き周る Hasbro社 R2D2は単一4,単三4で動作するがバッテリ化したい WebSocket通信対応 R2D2自体を制御できる HTML5で簡易リモコンを作成したい リモコン機能(TV/エアコン...) 「R2 テレビの音量上げて/下げて...」 音楽再生 「R2 ネットラジオ流して」 機能を組み合わせ

  • GoのExampleテストが便利

    Goでは、Example用のコードをgodocに表示させたり、テストとして実行して結果をチェックをすることができます。Example用のコードを書いて、それをドキュメントにコピペする作業や、その内容が古くなって動かないということから開放してくれます。 この仕組についてはtestingパッケージに説明があります。 testing - The Go Programming Language http://golang.org/pkg/testing/ 実際に適当なパッケージを作って試してみます。パッケージ名をexexとします。 $ mkdir -p go-example-example/src/exex $ cd go-example-example $ export GOPATH=`pwd` 適当に関数や構造体を用意します。 go-example-example/src/exex/hello

    GoのExampleテストが便利
  • 1