タグ

Tipsとdevに関するsyo-yuのブックマーク (23)

  • C/C++ 迷信集 | 株式会社きじねこ

    C/C++ を使うプログラマは大勢います。しかし、その多くは OJT を通して言語を学んだのではないでしょうか? 実はそこに大きな落とし穴があります。 コンピュータや工学のことをよく知らない人たちは、時代の先端を歩むプログラマには「迷信」など無関係だと信じて疑わないかも知れません。しかし、迷信や誤解はどんな世界にも常に存在しています。 というわけで、ここでは C/C++ にまつわる迷信、誤解、よくある間違いを採り上げていきます。非常に後ろ向きな企画ですが、暇つぶし気分転換に読んでみてください。もしかすると、ご自身が迷信にとらわれていたことに気付くかもしれません。 追記(2009/03/15) このコーナーでは、C/C++ にまつわる迷信、誤解、よくある間違いを扱っています。決して「迷信」だけではないのですが、タイトルにはすべて[迷信]を付けています。 これは、主に検索エンジンでタイトルを見

  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま

  • 携帯サイト[xhtml]のコーディング前のチェックポイント │ これからゆっくり考L +α

    前回のhtml版に引き続き、今回はxhtmlの場合です。 htmlと比べて出来ることが増えるので色々なデザインの再現が可能ですが、やはり3キャリア1ソースとなると気をつけるべきポイントがいくつかあります。 コーダー(もしくはディレクター?)さんは、デザインをパッと見て「このデザインで組めます!」「組めません無理です...」の判断が咄嗟にできるようになると素敵だと思います。 デザイナーさんは、これからあげるチェックポイントを頭の片隅にいれつつデザインしていただけると、コーダーからの戻しが少なくてすむようになるかと思います。 前置きはこのぐらいにして、早速題へ。 以下が今回のサンプルデザインです。 「これをxhtml、3キャリ1ソースコーディングしてください」 と言われた場合で考えていきます。 前提条件は、 ・3キャリア1ソース ・xhtml ・文字コード:Shift-JIS ・改行コード:

  • やってしまいがちなユーザビリティのミスとその解決方法

    ユーザビリティでやってしまいがちなミスや見落とされがちな10の罪とその解決方法をLINE25から紹介します。 10 Usability Crimes You Really Shouldn't Commit 下記は、やってしまいがちなユーザビリティの10のミスとその解決方法を意訳したものです。 はじめに 1. ラベルがないフォーム 2. トップページにリンクしないロゴ 3. 訪問済みリンクの指定がない 4. アクティブなフィールドが明示されない 5. altの記述がない画像 6. 背景色がない背景画像 7. 長い長いテキスト 8. 下線付きだがリンクではない 9. ココをクリック 10. 均等割付「justified」の使用 はじめに ここで紹介している10のユーザビリティのポイントは、ありがちなミスだったり見落とされがちなものを集めました。 あなたのウェブサイトのユーザビリティを拡張する手

  • livedoor Techブログ : アドオンした事がない人が15分間でFirefoxアドオン開発

    こんにちは。ライブドアの駒井です。 つい先日、友人に誘われて半ば強制的に「Firefox Developers Conference 2009」に参加してきました。誘ってきた友人が、当日の急用で北海道に帰る事になり、何故か私1人で不慣れな場に参加してきました。当日優しくしてくれた皆さんありがとうございました。いただいたFirefoxのTシャツも大事にします。 自分の予想に反してとっても有意義な時間となりました。筆者は普段、JavaScriptを全く書きません。C++JAVAがメインです。そんな私でも気軽に楽しめてしまうのがFirefoxアドオンでした。ということで、Firefoxアドオンを作成するための最低構成で、簡易的なアドオンを15分程度で実験的に作ってみたいと思います。 題材を模索中に自社営業部の人から次のようなアドオンがあったらありがたいと聞きました。営業訪問に際して必ず行う下記

  • 現代的なPerlの記述方法一覧 - Perl入門ゼミ

    Perl › here Perl5.8以降における標準的なPerlの書き方を解説します。 インターネットで検索するとPerl4のころの古い記述がたくさんあります。また書籍などの多くもPerl4の記法で書かれています。Perl4の記法は複雑になりやすく間違いを生みやすいのでこれからPerlを書く人はPerl5の現代的な記法で記述することを強くお勧めします。 strictプラグマとwarningsプラグマ (必須) strictプラグマとwarningsプラグマを有効にします。 use strict; use warnings; use strict;とuse warnings;の2行はスクリプトの最初に必ず記述してください。これらはPerlの文法チェックを厳しくするためのものです。面倒だという軽い気持ちでこれを記述しないと後々当に面倒なことになります。 use strict;とuse wa

    現代的なPerlの記述方法一覧 - Perl入門ゼミ
  • 最近の Emacs のコメント機能についてのまとめ。 - 日々、とんは語る。

    追記 この記事を元に書籍が出来ました! 時間と命を削って、より詳細に解説しましたので、Emacs に興味がある人はぜひ一度手に取ってみて下さい。 Emacs実践入門 ?思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus) 作者: 大竹智也出版社/メーカー: 技術評論社発売日: 2012/03/07メディア: 単行(ソフトカバー)購入: 22人 クリック: 396回この商品を含むブログ (1件) を見る大相撲の場所終了の傷心も癒えてきたので、久しぶりに Emacs について書きます。 エディタの重要な機能のひとつにコメントとコメントアウトがあります。 Emacs のコメント機能はとても優秀で、標準で様々な言語をサポートしています。ですので、拡張やプラグイン的なものをインストールすることなく、簡単にコメントをつけたり、コメントアウトしたり、それを解除したりできま

    最近の Emacs のコメント機能についてのまとめ。 - 日々、とんは語る。
  • ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改

    ディレクトリの中にある大量のファイルを高速に読み込む方法が知りたかったので、実験してみた。想定しているシチュエーションは、一つ一つのファイルは数KB程度だが数が多い、という場合である。適当な順番でアクセスすると、ランダムアクセスになってしまいとても時間がかかる。個々のファイルを読み込む順番はどうでも良く、すべてのファイルを処理することさえできればいいので、原理的にはシーケンシャルアクセスで処理できてしかるべきである。 まず、ファイルシステムについて。HDDやSSDなどのハードウェアにアクセスする際には、ファイル名などという概念はもちろん存在しない。ファイル名と実際のディスク上の対応を管理するのがファイルシステムの主な役割である。ファイルシステムは、ファイル名からそのファイルに対応するブロック番号(メモリアドレスみたいなもんだな)を調べて、そのブロック番号を指定してHDDやSSDにアクセスす

    ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改
  • 5年後に後悔しないJavaプログラムの書き方 - L'eclat des jours(2009-07-02)

    _ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな

  • コードもあんたも最低だ: コードレビューの社会動学 - Sooey

    Originally uploaded by snapperwolf* Your Code Sucks and I Hate You: The Social Dynamics of Code Reviews Twistedを開発するDivmod, Inc.のJonathan Lange氏がOSDC Sydney 2008で行った発表の資料が公開された。「Your Code Sucks and I Hate You: The Social Dynamics of Code Reviews」というタイトルでコードレビューにおける人間同士の関わりとその影響をまとめた内容になっており、オープンソースプロジェクトに限らず、企業内でのコードレビューにおいても考慮すべき点が色々と解説されている。 翻訳しようとして挫けたので、とりあえず見出しだけ日語で書き出してみた。 コードレビューとは何か? (Wha

  • Python の unicodedata モジュール - bkブログ

    Python の unicodedata モジュール Unicode のちょっとしたテキスト処理をしようと思い、 Python の unicodedata モジュールを使ってみました。これは非常に便利です。 unicodedata は Python に標準で付属するため、別途のインストールは不要です。次のようなことができます。 文字の名前を取得する 文字の名前を取得することができます。Unicode の文字にはすべて一意の名前がつけられています。ソースコード内で Unicode のコードポイントを使うときは U+20AC (EURO SIGN) などとコメントをつけておくと便利でしょう。 >>> unicodedata.name(u'A') 'LATIN CAPITAL LETTER A' >>> unicodedata.name(u'あ') 'HIRAGANA LETTER A' 文字の

  • ウノウラボ Unoh Labs: メンテナンス画面を簡単に出してみる

    カレーはあまり好きじゃないKeitaです。 映画サイトの映画生活のデザインリニューアルをして、いくつかデザイン以外の修正もあり、サーバ停止時間が発生するため、メンテナンス画面を作ることにしました。今日はその簡単なトピックスを書いてみたいと思います。 まず最初に、メンテナンス画面は次のような形の要件があるかなと思っています。 ドメイン以下すべてがメンテナンス画面になる クローラー対策でヘッダで503を出力する 癒される 特にクローラー対策は、クローラーがきておかしいものをキャッシュされると結構痛いかなと思うので、503が的確かはともかく、そこらへんのエラーを出すことにしました。 最初、ここら辺のすべての処理をmod_rewriteだけで実現できるかなと思ったのですが、残念ながら、mod_rewriteでは300番系のエラーを出すことができますが、503のエラーは出せないようなのでさくっ

  • ウノウラボ Unoh Labs: WEBアプリのテストに必須なツール7種

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: WEBアプリのテストに必須なツール7種
  • Dependency Injection の基本的なアイディア - bkブログ

    Dependency Injection の基的なアイディア Inversion of Control コンテナと Dependency Injection パターンを読みました。関連する事柄を広くカバーした、隙のない記事です。 ただ、割とボリュームがあるので、「Dependency Injection って結局何なの?」ということを手っ取り早く知りたい向きにはあまり向かないかもしれません。そこで、基的なアイディアを手短にまとめてみました。 Dependency Injection (依存性注入、DIと略) とはその名の通り、依存性を注入するパターン (テクニック) です。もう少し言葉を加えると、依存性を内部に抱え込まずに外部から注入する、パターンです。 Dependency Injection の基的なアイディアは「依存性を外部から注入する」です。 DIコンテナと呼ばれるフレームワ

  • DSAS開発者の部屋:Windowsに土足で乱入?! 〜 API フックのための予備知識

    ■ はじめに 前回の記事では Windows のイベントをフックする方法についてお話しましたが、特定の Windows API 呼び出しををフックするにはどうすればよいでしょう? それを考えるためには、まずどのような仕組みでプログラムが API を呼び出だしているのかを調べておく必要がありそうです。 ご存知の通り、Windows API は、所定の Windows プログラムから呼び出すことの可能なエクスポート関数として OS 環境の DLL(Dynamic Link Library) 群に格納されています。そして、あるプログラムの実行に必要な API を含む DLL は、実行ファイル起動時の初期化時にプロセスへリンクされ、その後は所定の API を透過的に呼び出すことができるようになります。 DLL をプロセスへリンクするには、実行形式をビルドする際に所定のインポートライブラリをリンクし

    DSAS開発者の部屋:Windowsに土足で乱入?! 〜 API フックのための予備知識
  • 川o・-・)<2nd life

    Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :

    川o・-・)<2nd life
  • JavaScript ミニライブラリ

    JavaScript ミニライブラリ ちょっと前から「なくても不便じゃないけど、あったらちょっと便利かもね」っていう JavaScript を書いたりして発表していましたが、一覧とか作ってないからどんなのがあるのかわかりにくかったのでまとめてみました。 onsubmit で disable 以外のスクリプトは全てパブリックドメインとするので、自由に使って下さい。onsubmit のやつはもともと自分が作ったものじゃないので良くわかんない(← 無責任)。 結構作ってるつもりだったけど、並べてみると意外と少ない。 onsubmit で disable にするやつ テキストフィールドのフォーカス時に背景色を変更する JavaScript フォームに入力を促すメッセージを出力する JavaScript パスワードの安全性を教えてくれる JavaScript カーソル位置のセルの上端と横端をハイ

  • PC覚え書き | プログラムのデーモン化

    VvZX(qvZX)Afork()VXeR[gpBVXeR[oAovZXmAvZXRs[B ovZXevZXARs[VvZXqvZXBevZXAqvZXfork()lpB evZXAfork()qvZXvZXIDpAqvZX0pBplAevZXqvZXッBlBAqvZXPvOヲB int main(void){ pid_t child // fork()li[ if( !(child=fork()) ){ // child=0qvZX printf("inchildprocess\n"); exit(0); } // evZXqvZXID\ヲ prinft("inparentprocess:childprocessID=%d\n,child); return 0; }

  • ウノウラボ Unoh Labs: インデントをなるべく浅くするテクニック

    こんにちは satoです。 インデントが浅いと、コードが見やすいです。 インデントが浅くなりそうなテクニックを紹介します。 時と場合にもよりますし、賛否両論もあると思いますが、寛大な目でみてやってください。 1)処理の判定は正常じゃない場合を書く //before $data = getdata(); if ($data) { なんか複雑な処理; } else { return false; } //after $data = getdata(); if (!$data) { return false; } なんか複雑な処理; 2) array か どうかを判断する場合は array にして処理をする //before if (is_array($args)) { foreach() ... } else { .... } //after if (!is_array($args)) {

  • 我的春秋: JavaScript ソースが HTML から消える日

    [2006-06-10 付記]このエントリーは、2006-01-05 時点のもので情報が古くなってます。現時点で把握している最新情報を「続 JavaScript ソースが HTML から消える日」にアップしましたので、あわせてご参照ください。 Behaviour.js ― JavaScript ソースを (X)HTML から完全分離できるライブラリ 昨日、職場の同僚の人がたまたま見つけた JavaScript ライブラリを教えていただたんですけど、これがもうびっくり!なんと、このライブラリがあれば、イベントハンドラーも含めて JavaScript ソースが (X)HTML の body 内から、ほぼ完全に分離できてしまいます! しかも、HTML 内で JavaScript 関数を適用する場所は、なんと JavaScript ソース内に CSS セレクタを書き込むことで指定!あまり日では取

    我的春秋: JavaScript ソースが HTML から消える日