タグ

ブックマーク / gihyo.jp (44)

  • Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp
    Kiske
    Kiske 2016/11/07
  • 鵜飼文敏氏「Goに入ってはGoに従え」可読性のあるコードにするために~Go Conference 2014 Autumn基調講演2人目 | gihyo.jp

    Go Conference 2014 Autumnレポート 鵜飼文敏氏「Goに入ってはGoに従え」可読性のあるコードにするために~Go Conference 2014 Autumn基調講演2人目 この記事では2人目の鵜飼文敏氏の基調講演についてレポートを書きたいと思います。この基調講演では「Goに入ってはGoに従え」というタイトルで、Go言語らしく書く方法について話がされました(スライド⁠)⁠。 写真1 鵜飼文敏氏の講演の様子 Go言語の可読性レビュー Go Readability Approver まずはじめに、「⁠Go Readability Approver」と呼ばれる、GoogleにおけるGo言語のReadability(可読性)をレビューするチームについて話がありました。このチームは、コードレビューを通じてGo言語の良いコードの書き方を教えることを目的としているそうです。メンバー

    鵜飼文敏氏「Goに入ってはGoに従え」可読性のあるコードにするために~Go Conference 2014 Autumn基調講演2人目 | gihyo.jp
    Kiske
    Kiske 2016/07/27
  • 第1回 事業会社における開発とポエム | gihyo.jp

    この連載ではピクシブ株式会社という東京にある事業会社で盛んになっている「ポエム」によって駆動する開発について、その特徴をお話します。第一回は舞台となっているピクシブという会社はどのような環境か、その会社で書かれている「ポエム」とは何なのかをお話します。 「ポエム」で開発を駆動するとは 駆動開発という言葉はソフトウェア開発文脈でよく使われます 例えばテストコードによって開発を駆動するテスト駆動開発という言葉は開発者にとってお馴染みでしょう。 ではポエム駆動開発という言葉を聞いた事はあるでしょうか? ポエム駆動開発のオリジナルはppworks氏によるポエム駆動開発によるWEBサービスの作り方 pplog誕生ものがたりというエントリーで発表された手法です。 意思決定の際大事なのはポエムなのです。「⁠pplogのポエムは俺たちのゆるふわインターネット「pplog⁠」⁠ をリリースしました(してまし

    第1回 事業会社における開発とポエム | gihyo.jp
    Kiske
    Kiske 2015/07/10
    PDD
  • 第6回 UNIXプログラミングの勘所(3) | gihyo.jp

    ネットワークプログラムとSIGPIPE 「私の書いたサーバが突然死するんです。どうしてでしょうか」という質問を受けることがあります。これは多くの場合、SIGPIPEの処理を忘れていることが原因です。SIGPIPEとは、切断されたネットワークソケットなどにデータを書き込もうとした際に送出されるUNIXシグナルです。特に設定しない限り、プロセスはSIGPIPEを受け取ると強制終了されます。そのため、通信が突然切断される可能性のあるTCPサーバにおいては、SIGPIPEを無視するよう設定する必要があります。 # デフォルトの動作(SIGPIPEの場合はプロセスの終了)に設定 $SIG{PIPE} = 'DEFAULT'; # SIGPIPEを無視するよう設定 $SIG{PIPE} = 'IGNORE'; # SIGPIPEを受信した際に実行するサブルーチンリファレンスを # 設定 $SIG{PI

    第6回 UNIXプログラミングの勘所(3) | gihyo.jp
    Kiske
    Kiske 2013/01/22
  • 2013年のソーシャルWeb | gihyo.jp

    この傾向だけを見れば、今年は「すでに飽和状態に近い市場に対して、一定数のユーザのシェアを奪い合う」という構図になるということが言えるのですが、事情はそこまで単純ではありません。「⁠当に飽和しているのか?」ということをもっと考える必要があります。 無料通話アプリが開く新たなゲーム市場 筆者が「飽和していないのでは?」と懐疑的になる根拠は、昨年に大ヒットした無料通話・トーク機能を持つスマートフォンアプリの存在です。LINE、comm、そしてカカオトークといったアプリが多くのユーザに使われ出した年が昨年だったと言えます。これらのアプリを使っているユーザは、おそらくGREEやMobageといったソーシャルゲームのアクティブユーザとは被っていないと考えられます。どちらかというと、mixiやTwitterを使ってきたユーザと言えます。 例えば、すでにLINE POPは多くのユーザが遊んでいます。この

    2013年のソーシャルWeb | gihyo.jp
    Kiske
    Kiske 2013/01/09
  • Symfony Advent Calendar JP 2011 | Gihyo Digital Publishing … 技術評論社の電子書籍

    Symfony Advent Calendar JP 2011 著者 Symfony Advent Calendar JP 2011 参加有志 著 発売日 2012年11月7日 更新日 2012年11月12日

    Symfony Advent Calendar JP 2011 | Gihyo Digital Publishing … 技術評論社の電子書籍
  • 第8回 エンジニアの魔法の手~おもしろいプロジェクトに関わるには | gihyo.jp

    おもしろいプロジェクトに関わるには 前回のコラム「プラットフォームは乗るものではなく担ぐもの」では、自らが開拓者・先駆者となって「ほかの人たちに進むべき方向を示す」ことの重要性を述べた。「⁠そうは言っても日々の仕事が忙しくて新しいことを勉強している暇がない」「⁠やりたいことをなかなか上司がさせてくれない」「⁠おもしろいプロジェクトに関われる人なんてごく一部の幸運な人たちだけ」などの声も聞こえてくるので、今回は、もう少し具体的に「どうやったらおもしろいプロジェクトに関わることができるのか」について私の経験に基づいて述べてみよう。 運だけではない「姿勢」の重要性 私はパソコンの黎明期からさまざまなおもしろいプロジェクトに関わりエンジニアとしての経験も積んできたし、数々の楽しい思いもさせてもらってきた。パソコンの黎明期にアスキー出版から「Game80コンパイラ」(⁠注1)や「CANDY」(⁠注

    第8回 エンジニアの魔法の手~おもしろいプロジェクトに関わるには | gihyo.jp
    Kiske
    Kiske 2011/07/21
    いい文章。
  • 第1回 バーストトラフィックの発見と対処 | gihyo.jp

    はじめに 初めまして、(⁠株)ミクシィの中野和貴です。私はシステム部運用部インフラグループネットワークチームという部署で働いており、ほかのメンバーと共にmixiのネットワーク部分全般に関して設計・保守・運用を行っています。ここでは『WEB+DB Press』Vol.50~55にて連載されていた「大規模Webサービスの裏側」で紹介しきれなかったエピソードや、その後のインフラ事情を紹介していきます。 日々大量のトラフィックが流れるmixiのネットワークですが、大きくなってくるとやはりいろいろな問題も出てきます。今回はそれらの問題の中で普段運用しているとなかなか気付きにくいバーストトラフィックに起因する問題事例を紹介します。 ミクシィのネットワーク構成と問題の発覚 mixiでは主要なネットワーク機材にはお金をかけていますが、サービス規模からどうしてもラック数が多くなってしまうため、エッジスイッ

    第1回 バーストトラフィックの発見と対処 | gihyo.jp
  • [はまちちゃんのセキュリティ講座]ここがキミの脆弱なところ…!:第1回 HTTPのしくみを復習しよう|gihyo.jp … 技術評論社

    こんにちはこんにちは ! ! はまちや2です! 今日からぼくと一緒にWebプログラミングのセキュリティについて、ちょっぴり勉強してみませんか!今回はHTTPがどんなやりとりをしているのか、簡単におさらいしてみましょう!

    [はまちちゃんのセキュリティ講座]ここがキミの脆弱なところ…!:第1回 HTTPのしくみを復習しよう|gihyo.jp … 技術評論社
  • 2011年5月17日 CentOS 6.0は本当にリリースされるのか?─メイン開発者の離脱が意味するメッセージ | gihyo.jp

    Linux Daily Topics 2011年5月17日CentOS 6.0は当にリリースされるのか?─メイン開発者の離脱が意味するメッセージ Red Hat Enterprise LinuxのクローンOSとして、ホスティング事業者やクラウドサービス事業者の間で高い人気を誇るCentOSだが、どうも最近、様子がおかしい。昨年11月にRed HatがリリースしたRHEL 6.0を受け、来ならとっくにCentOS 6.0がリリースされていなければならないのに、一向にその気配がない。そんな中、CentOSの主力開発者であるDag Wieers氏がプロジェクトからの離脱を表明した。いったいCentOSはどうなってしまうのだろうか。 Dag Wieers氏は5月5日付の自身のブログで、「⁠コアチームのメンバーたちは、提題として上がっている問題(CentOS 6.0のことか?)を無視し、巧妙なご

    2011年5月17日 CentOS 6.0は本当にリリースされるのか?─メイン開発者の離脱が意味するメッセージ | gihyo.jp
    Kiske
    Kiske 2011/05/19
    Scientific Linux知らなかったのでチェックしておこう
  • 第1回 詳説:デベロッパーツールの使い方 | gihyo.jp

    こんにちは、Google Chrome ExtensionsのAPI ExpertとChromium-Extensions-Japan管理人を担当している、太田と申します。いつもはクロスブラウザで連載していますが、今回はGoogle Chromeのデベロッパーツールについて紹介します。 昨今のJavaScriptHTMLCSSブームの背景には、開発環境、特にFirebugに代表されるようなデバッグツールの目覚しい発展が大きく貢献していると思われます。その反面、高機能化するデバッグツールの各種機能を使いこなすことが難しくなってきているという現実もあります。そこで、今回から全4回でGoogle Chromeに搭載されているデベロッパーツールの使い方とそれを利用したデバッグ・チューニングのノウハウをお届けしたいと思います。第1回はデベロッパーツールの機能紹介と基的な使い方を解説します。 な

    第1回 詳説:デベロッパーツールの使い方 | gihyo.jp
  • Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp

    Google Chrome 5のリリースが刻一刻と迫ってきました。その注目の新機能と開発者向けの変更点に加え、Chrome 6を見据えた今後のスケジュールなどを詳細にお届けしたいと思います。 まず、Chrome 5の最大ニュースはなんといってもMac版、Linux版がそれぞれ正式にリリースされる予定という点です。これまで、Mac版とLinux版はベータ版と開発版が提供されていましたが、ついに安定版がリリースされる予定です。特にMac版はMac OS Xに馴染むようにかなりの改良が加えられているので、注目のリリースとなりそうです。 さて、これまでのリリースを簡単に振り返ってみます。シンプルで高速なブラウザとしてChromeがリリースされてから、Chrome 2では基機能の充実と高速化、Chrome 3ではテーマのサポート、Chrome 4では拡張機能のサポートとブックマーク同期、Chrom

    Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp
    Kiske
    Kiske 2010/05/20
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
  • 第1回 ウェブブラウザとJavaScriptの未来 | gihyo.jp

    こんにちは、id:os0xこと太田昌吾です。今回から、クロスブラウザ対策を中心としたJavaScriptの初級から中級の方向けの連載を開始します。JavaScriptの基礎的な文法は理解されているという前提での解説となりますので、ご了承ください(間違いやすい、わかり難いと思われるところは適宜補足します⁠)⁠。初回である今回はJavaScriptやウェブブラウザの背景など盛りだくさんの内容でお届けします。 JavaScriptのイマ JavaScriptは2010年現在において、最も重要な言語となりつつあります。旧来はすべての処理をサーバーで行って、結果をウェブブラウザ上に表示するだけというのがウェブの一般的な姿でした。2005年に登場したGoogle Mapsを一つの契機として徐々にウェブブラウザ・クライアント側での処理が見直され始め、近年ではクラウドやSaas、そしてHTML5の流行によ

    第1回 ウェブブラウザとJavaScriptの未来 | gihyo.jp
  • 2010年のJavaScript:「これまで」と「これから」 | gihyo.jp

    2010年のJavaScriptと題しまして、JavaScript周辺の「これまで」と「これから」についてまとめてみたいと思います。 2009年までのJavaScript JavaScriptは各ブラウザベンダなどが個別に実装するという特殊性から、ブラウザ(実装)ごとの非互換性の問題に悩まされ続けてきた言語です。まず、そのJavaScript歴史を簡単に振り返ってみます。 ECMA-262 3rd editionとスピードコンテスト JavaScriptNetscape社によってLiveScriptという名前で誕生し、その後ECMAScriptとして標準化が進みました。1999年12月にECMA-262 3rd editionが策定されてから、Internet ExplorerのJScript、MozillaのSpiderMonkey(TraceMonkey⁠)⁠、SafariのJav

    2010年のJavaScript:「これまで」と「これから」 | gihyo.jp
  • 第5回 PHPUnitの便利な機能とPhingとの連携 | gihyo.jp

    今回は、PHPUnit3の便利な機能とPHPプロジェクトビルドシステムであるPhingとの連携について見ていきます。 既存クラスからテストを作成する さて、別の開発チームで作成していた決済用クラス(Checkoutクラス)が届きました。 <?php require_once 'Cart.php'; class Checkout { private $cart; public function __construct(Cart $cart) { $this->cart = $cart; } public function getSubTotal() { return $this->cart->getTotal(); } public function getShippingCharge() { if ($this->cart->getTotal() > 1500) { return 0;

    第5回 PHPUnitの便利な機能とPhingとの連携 | gihyo.jp
    Kiske
    Kiske 2009/12/17
  • 第1回 検索エンジンとは | gihyo.jp

    はじめに 検索エンジンと聞くと、みなさんは何を思い浮かべるでしょうか? GoogleYahoo!などの検索ページを思い浮かべる方がほとんどだと思います。近年は、それら企業の努力によって検索エンジンというものが非常に身近になり、私たちの生活に欠かせないものとなりつつあります。 しかし、検索エンジンと一言で言っても、上記のような一般の方々へのUI(ユーザインターフェース)を指す場合もあれば、そのUIの裏側(バックエンド)にあるシステムを指す場合もあります。 連載では、Google,Yahoo!などを代表とする検索エンジンの裏側のしくみに着目し、検索エンジンというシステムのアーキテクチャやその内部で使われているデータ構造やアルゴリズムを、近年の手法や研究事例などを交えて解説していきたいと思っています。 検索エンジンとは 検索エンジンには、さまざまな種類があります。GoogleのWeb検索のよ

    第1回 検索エンジンとは | gihyo.jp
    Kiske
    Kiske 2009/11/11
  • 続・先取り! Google Chrome Extensions 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    続・先取り! Google Chrome Extensions 記事一覧 | gihyo.jp
    Kiske
    Kiske 2009/10/19
  • 第4回 UTF-8の冗長なエンコード | gihyo.jp

    今回は、文字コードに関連するセキュリティの話題では古参ともいえるUTF-8の冗長なエンコードというテーマについて紹介します。 UTF-8とは UTF-8は、各文字を1~4バイトの可変長で表現するUnicodeの符号化方式のひとつです。 U+0000からU+007Fの範囲の文字を0x00から0x7Fの1バイトで表現しているため、US-ASCIIと互換性がある、バイト列の途中からでも文字の先頭バイトを簡単に検出できる、多バイト文字の途中に0x00や0x5C(\⁠)⁠、0x2F(/)などが現れない、などの特徴があります。 UTF-8での文字のビットパターンは表1のようになります。 表1 UTF-8でのビットパターン

    第4回 UTF-8の冗長なエンコード | gihyo.jp
  • 第2回 バイナリプロトコルの扱い方 | gihyo.jp

    株式会社ミクシィの前坂です。第1回でmemcached 1.4の簡単な紹介をしました。今回は新しく正式導入されたバイナリプロトコルの扱い方をご紹介いたします。 バイナリプロトコルの扱い バイナリプロトコルを扱うには、アプリケーションのプログラミング言語に合ったバイナリプロトコル対応のクライアントライブラリが必要です。バイナリプロトコルは最近導入されたこともあり、ネイティブ対応していると報告されているクライアントライブラリはC言語のlibmemcachedとJavaのspymemcachedだけです(2009年8月時点⁠)⁠。ただし、世の中にはlibmemcachedをwrapした、さまざまの言語で記述されたクライアントライブラリがいくつかあり、それらを使ってバイナリプロトコルを扱うことが可能です。 今回の記事ではそれらのクライアントも含めて, C、JavaPythonPHPでのデモコー

    第2回 バイナリプロトコルの扱い方 | gihyo.jp