タグ

関連タグで絞り込む (280)

タグの絞り込みを解除

Programmingに関するringo6119のブックマーク (194)

  • Future と Promise

    Philipp Haller, Aleksandar Prokopec, Heather Miller, Viktor Klang, Roland Kuhn, Vojin Jovanovic 著 Eugene Yokota 訳 概要 Future は並列に実行される複数の演算を取り扱うのに便利な方法を提供する。それは効率的でノンブロッキングな方法だ。 大まかな考え方はシンプルなもので、Future はまだ存在しない計算結果に対するプレースホルダのようなものだ。 一般的に、Future の結果は並行に計算され後で集計することができる。 このように並行なタスクを合成することで、より速く、非同期で、ノンブロッキングな並列コードとなることが多い。 デフォルトでは、Future も Promise もノンブロッキングであり、典型的なブロッキング演算の代わりにコールバックを使う。 コールバックの使用を

  • JavaScript Promiseの本

    この書籍はCreative Commons Attribution-NonCommercialの ライセンス で公開されています。 また、PDFとしてレンダリングしたバージョンは以下からダウンロードすることができます。

    JavaScript Promiseの本
  • Rails で十分に活用されていなくてもったいない ActiveRecord::Relation のメソッド TOP 10 - 杉風呂2.0 - A Lifelog -

    2013年12月2日更新: 参照されることが多いので Rails 4 の情報を訳注として追記しました。また、Rails 4 に関する情報は、 WEB+DB PRESS Vol.73 が非常に参考になるので、一読をおすすめします。 この文章は Mitch Crowe 氏のブログより 2012年4月14日の記事を翻訳したものです。 The 10 Most Underused ActiveRecord::Relation Methods http://blog.mitchcrowe.com/blog/2012/04/14/10-most-underused-activerecord-relation-methods/ 昨日は ActiveRecord::Relation のコードに膝まで浸かって、使われているのをこれまで全然見たことがない面白いナゲットを思い出させてくれた。この記事で、十分に活用

    Rails で十分に活用されていなくてもったいない ActiveRecord::Relation のメソッド TOP 10 - 杉風呂2.0 - A Lifelog -
  • エンジニアならこれ読んどけって本まとめ - だったらこうしてみたら?

    改訂:2014/10/20 備忘録としてまとめていきます。 今まで集めていた情報まとめていきます。 すでに読んだやつも今これから読んでこうってやつもまとめにまとめちゃいまっせ。 アウトプットも大事だけど、自分より先輩の方がアウトプットし続けて頑張って得た知見をあっという間にインプットできる""という形での学習も超大事なのです。 エンジニアとしての心得みたいな ハッカーと画家 コンピュータ時代の創造者たち 作者: ポールグレアム,Paul Graham,川合史朗出版社/メーカー: オーム社発売日: 2005/01メディア: 単行購入: 109人 クリック: 4,884回この商品を含むブログ (594件) を見る YCombinatorの共同設立者の彼の。 CODE COMPLETE 第2版 上 作者: スティーブマコネル,Steve McConnell,クイープ出版社/メーカー: 日

    エンジニアならこれ読んどけって本まとめ - だったらこうしてみたら?
  • あなたは全部知っていますか?プログラミングの業界用語30選 | POSTD

    Stack Overflowは、私が学習に役立ててきた多くのオンライン・コミュニティと同じように、自然と厳しくなってきました。第一にこれは、自己防衛機能です。子どもが初めて学校や託児所に入ると広大な世界にさらされて、 髄膜炎菌症を発症 して日々くしゃみやせきを繰り返しながら成長するのと同じような免疫システムです。常に好ましいことだとは言い難いですが、生き残るためには必要なプロセスなのです。 2年前に投稿された、下記の質問のことを考えてみてください。 あなたが新しく作ったプログラミングの業界用語は何ですか? あなたが作り、あなたの周りで使われるようになった、プログラミングの用語は何ですか?(他の人が真似して使っているのを聞いた、など)あなた独自の言い方が、職場内でのみ使われていたり、インターネット上で幅広く普及していたりすることもあるでしょう。 独自のプログラミングの用語、単語、言い回しを太

    あなたは全部知っていますか?プログラミングの業界用語30選 | POSTD
  • Writing Fast Rubyというスライドが良い | mah365

    ちょっとしたコードの書き方でパフォーマンスが変わることがあります。リーダビリティを重視する向きからすれば小手先のテクニックに映るかも知れないのですが、リーダビリティを維持しながらちゃんとしたパフォーマンスを出すためにも、テクニックを知ることは大事なことだと思うのです。 結構違うもんですなー というわけで、そんなテクニックをまとめたスライドがWriting Fast Ruby。見ていて参考になったのでメモ。 たとえば引数に&blockをとってcallするよりも、yieldの方が5倍速い、とか、 def slow(&block) block.call end def fast yield end mapにブロックを渡すよりも、シンボルを渡す方が20%速い、とか (1..100).map {|i| i.to_s} (1..100).map(&:to_s) mapしてからflattenを呼び出すよ

    Writing Fast Rubyというスライドが良い | mah365
  • ガントチャート上でドラッグ&ドロップでタスクの並び替えられるようにしてほしい – Customer Feedback for Backlog

    ヌーラボブログ「Backlog」カテゴリの記事一覧です。ヌーラボのブログでは、コラボレーションやプロジェクト管理に関するコラム、社内文化やイベントレポートなど、多彩な情報をお届けしています。最新の記事を通じて、ヌーラボの取り組みや最新情報をご覧ください。

    ガントチャート上でドラッグ&ドロップでタスクの並び替えられるようにしてほしい – Customer Feedback for Backlog
  • 使いやすいシェルスクリプトを書く

    できればシェルスクリプトなんて書きたくないんだけど,まだまだ書く機会は多い.シェル芸やワンライナーのような凝ったことではなく,他のひとが使いやすいシェルスクリプトを書くために自分が実践していることをまとめておく. ヘルプメッセージ 書いてるシェルスクリプトが使い捨てではなく何度も使うものである場合は,体を書き始める前に,そのスクリプトの使い方を表示するusage関数を書いてしまう. これを書いておくと,後々チームへ共有がしやすくなる.とりあえずusage見てくださいと言える.また,あらかじめ書くことで,単なるシェルスクリプトであっても自分の中で動作を整理してから書き始めることができる.関数として書くのは,usageを表示してあげるとよい場面がいくつかあり,使い回すことができるため. 以下のように書く. function usage { cat <<EOF $(basename ${0})

  • コマンドラインツールを作るときに参考にしている資料 | SOTA

    コマンドラインツールについて語るときに僕の語ること - YAPC::Asia Tokyo 2014 コマンドラインツールが好きで昔からつくってきた. 今年のYAPCで,そのコマンドラインツールをつくるときにどういうことを意識して作っているのか?どのような流れで開発しているのか?といったことを語る機会をもらえた. 具体的な内容については,是非トークを聴きに来てもらうとして, スライドをつくるにあったって過去に読んだ資料や,よく参考にしている記事を集め直したので,その一部を参考資料としてまとめておく. UNIXという考え方 UNIXという考え方 Mike GancarzによるUNIXの思想や哲学をまとめた.古いが全然色あせてない. コマンドラインツールの作り方を書いたではないが,これらの思想の上で動くツールはこの思想に準拠して作られるべきだと思う.何度も読んで考え方を染み付かせた. 小さい

  • モナド教

    前提知識:モナド モナドを理解せずともモナド教を信ずることは出来ますが,理解していればより深く納得できるでしょう. 操作 :: 型 -> 型 は,"型"から"型"へ写す"操作"の存在を表します. モナドの文脈 m が必要とする2つの操作: return :: a -> m a で,値を保ちつつ文脈 m の中に入れ込むことが出来ます. (=<<) :: (a -> m b) -> (m a -> m b) で,「値を文脈に入った別の値へ写す操作」を「文脈に入った値を同じ文脈に入った別の値へ写す操作」に変換します. id :: a -> a は値をそのまま返す操作です. id を =<< で変換して得られる操作 join :: m (m a) -> m a で,二重に文脈に入った値を一重の文脈に入った値に戻すことが出来ます. 文脈の値から生の値を取り出す型 m a -> a を持つ操作は,一般

    ringo6119
    ringo6119 2014/08/14
    あの世で死んでも生き返ることができるのです.
  • 5分でわかるBatteryHistorianによるAndroidアプリの解析方法 - クックパッド開発者ブログ

    モバイルファースト室の@tomorrowkey です。 Google I/O 2014で発表されたProject VoltaのBatteryHistorianについて調べました。 目次 注意 Battery Historianってなに? BatteryHistorianを使おう 開発中のBatteryHistorianを使おう 各項目の解説 まとめ 参考 注意 この記事は2014年8月12日 現在 正式リリースされていない開発中のツールを解説しています。 正式リリース時にはツールの使い方や解析結果の見かたなどが変わる場合がありますので、ご注意ください。 Battery Historianってなに? Google I/O 2014でProject Voltaが発表されました。 Project VoltaはAndroidアプリの電力消費の解析をするためのツールを作ったり、アプリの電力消費を抑え

    5分でわかるBatteryHistorianによるAndroidアプリの解析方法 - クックパッド開発者ブログ
  • スクールガールストライカーズの 内製クライアントエンジン

    近年、ハイスペックなスマートフォン、高品質なネットワークが普及し、それによりモバイルゲームの制作手法やそれを取り巻く環境も変化してきました。スクウェア・エニックスでは、そのような環境の変化に対して、日々新たなチャレンジをし続けています。そして、このようなスピード感溢れる業界の流れには、会社の枠を超えた技術情報の共有、交流が欠かせないと感じております。 そこでこの夏、社内のエンジニア・テクニカルディレクターによる最新のモバイル開発の技術情報や社内モバイルエンジン、開発秘話によるセッションをメインに、スクウェア・エニックス モバイル オープンカンファレンスを開催する運びとなりました。また、セッションの後は登壇する弊社スタッフと直接ディスカッションやフリートークができる場を設けております。この機会にスクウェア・エニックスという会社についても、より詳しく知って頂ければ幸いです。 マネージャー・テク

  • - Open-Closed Principle とデザインパターン

    1999/09/03 更新 石井 勝 さて,このセクションではデザインパターンを統一的に理解するために,「 Open-Closed Principle (OCP) 」 という設計ルールに基づいてパターンを眺めてみることにします.まず OCP の意味と解説を行い,その後デザインパターンを OCP の観点から見てみます.実は,デザインパターンのうちの多くは OCP を満たすために用意されたものと考えることができるのです.このセクションでは, OCP を理解し,数あるデザインパターンの中からどういう場合にどのパターンを使うのが一番効果的なのかを考えます. GoF のデザインパターンは,全部で 23 個ものパターンがあります.このデザインパターンは,多くの局面で繰り返し現れる設計を抽出したものですから,オブジェクト指向のエッセンスを集めたものだと言えるでしょう.オブジェクト指向には,カプセル化,継

  • 関数合成のススメ 〜 オブジェクト指向プログラマへ捧げる関数型言語への導入その1 - ( ꒪⌓꒪) ゆるよろ日記

    こんにちわ。今日は、関数合成の話をします。 標準入力から何行か読み込んで、ソートして返す以下のようなScalaのコードを例にします。 例なので、あえて冗長なコードを書いてます。 このコードでは、4つの関数が用意されています(unlines/putstr/sort/lines)。 この4つの関数を組み合わせて、読み込んだ文字列を行に分解して、ソートして、 また改行コードをつけて文字列にもどして表示、ということをやっています。 object Main extends App { val in = scala.io.Source.stdin.getLines.mkString("\n") // 改行をつけて結合する関数 val unlines = (s:Seq[String]) => s.mkString("\n") // 文字列を表示する関数 val putStr = (s:String) =

    関数合成のススメ 〜 オブジェクト指向プログラマへ捧げる関数型言語への導入その1 - ( ꒪⌓꒪) ゆるよろ日記
  • The Go Gopher - The Go Programming Language

    Tips for writing clear, performant, and idiomatic Go code Packages

    The Go Gopher - The Go Programming Language
  • Go言語での構造体実装パターン

    Go言語での構造体実装は、埋込や独自コンセプトのインターフェースといったGo言語独自の機能を理解して行う必要があります。 今年からGo言語を始めましたが理解が曖昧なままだと実装に迷うことが何度かありました。今回よい機会なので、Go言語での構造体実装パターンとしてまとめてみることにしました。 構造体実装パターン 実装パターンの洗い出しとして、GoFデザインパターンをGo言語で実装する手法をとりました。 その中で繰り返し現れる実装をGo言語での構造体実装パターンとしてまとめてみました。 コンストラクタ関数 エクスポートによるアクセス許可 インターフェースによるポリモフィズム 構造体によるポリモフィズム 構造体によるサブクラス・レスポンシビリティ 構造体による移譲 関数による移譲 以下、それぞれのパターンを解説していきます。 コンストラクタ関数 Go言語には構造体のコンストラクタがないため、構造

    Go言語での構造体実装パターン
  • 高速にGo言語のCLIツールをつくるcli-initというツールをつくった

    高速にGo言語のCLIツールをつくるcli-initというツールをつくった tcnkms/cli-initGitHub cli-initを使えば,Go言語コマンドラインツール作成時のお決まりパターンをテンプレートとして自動生成し,コア機能の記述に集中することができる. デモ 以下は簡単な動作例. 上のデモでは,addとlist,deleteというサブコマンドをもつtodoアプリケーションを生成している.生成結果は,tcnksm/sample-cli-initにある. 背景 Go言語で作られたコマンドラインツールを見ていると,codegangsta/cliというパッケージがよく使われている. これは,コマンドラインツールのインターフェースを定義するためのライブラリで,これを使えば,サブコマンドをもつコマンドラインツールを簡単につくることができる(Usageを自動で生成してくれたり,bash

  • InfoQ: Domain Driven Design(ドメイン駆動設計) Quickly 日本語版

    あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。

  • https://www.emacswiki.org/pics/static/TabsSpacesBoth.png

  • Coveralls.io - Test Coverage History and Statistics

    We help you deliver code confidently by showing which parts of your code aren’t covered by your test suite. Free for open source repos. Pro accounts for private repos. Instant sign up through GitHub, Bitbucket, and Gitlab.