タグ

2010年1月6日のブックマーク (21件)

  • [JavaScript] 猿でもわかるクロージャ超入門 1 問題 - DQNEO起業日記

    問題です。 問題: 呼び出すたびに、1,2,3,...を返すような関数 f( )を定義せよ。 f(); // 1 f(); // 2 f(); // 3 この問題、解けますでしょうか? 普通の関数では、できないと思います。 しかし「クロージャ」というのを使えば、このようなことができます。 クロージャって何だ? 「クロージャ」という言葉を、プログラムのやサイトで目にすることがありますよね。 私が最初に見たのは続・初めてのPerl 改訂版(アルパカ)でした。 まったく理解できませんでした。 その後、404 Blog not foundやnaoyaさんのブログなどで「クロージャ」という単語を目にしました。 やはり、まったく分かりませんでした。 とどめの一撃はWikipediaの解説記事。 クロージャ (クロージャー、Closure) は、プログラミング言語において引数以外の変数を実行時の環境

    [JavaScript] 猿でもわかるクロージャ超入門 1 問題 - DQNEO起業日記
  • Cookieセッション、BASIC認証マジパネー - komagataのブログ

    Rails検証報告書: プログラマの思索 Railsで特徴的なのは、CookieでHTTP セッションを管理できることだろう。 ここの仕組みが非常に分かりやすい。 Railsの後から付いた機能で一番素敵だと思うのがこの機能です。 「Cookieなんて仕様上は4KBしか保存出来ないんだから寧ろ弱体化してね?」 とか認識されることが多い気がしてならない。 コレ、導入時にも度肝を抜かれて、以降常に、 「ハンパねー、マジCookieセッションハンパねー!」 と脳内のアフロの人が言ってるんですが、大した利点に感じる人は少ないのか、他の言語やWAFで全面採用している例を見たことが無い。 そもそもセッションという言葉自体が複数の処理をまとめた単位という広義の意味とWebアプリケーションで複数リクエストにまたがってサーバー側に保存されるデータという狭義の意味が混在して使われているという事情があってWeb上

  • 米Google、Javaコレクションライブラリ「Collections Library 1.0」を公開 | OSDN Magazine

    Googleは2009年12月30日、Javaのコレクションライブラリ「Google Collections Library 1.0」を発表した。Java 5以上の基コレクションライブラリで、Java Collections Frameworkの拡張と位置づけている。 Google Collections Libraryは、Javaのコレクション型、実装、関連機能などを集めたもの。List、Set、Mapなどの既存のコレクションフレームワークのユーティリティクラス、MultiMap、MultiSet、BiMapなどの新しいコレクション型、コンカレントハッシュマップビルダのMapMaker、クラスとコレクションのソーティングに必要な共通の作業を支援するメソッドを追加するOrderingなどを含む。 コレクションの振る舞いをカスタマイズできるForwardingSetなどのフォワーディング

    米Google、Javaコレクションライブラリ「Collections Library 1.0」を公開 | OSDN Magazine
  • レビューで鍛えるJavaコーディング力 その2(バリデーション) - 谷本 心 in せろ部屋

    前回の問題は、そこそこ好評だったようで、嬉しい限りです。 これからも、週に1〜2回ぐらいのペースで問題を出していこうと思います。 では、今回の問題です。 問題 以下のコードの問題を指摘し、修正してください。 ただし、問題は複数あることもあれば、全くないこともあります。 public class EmpService { EmpDao empDao = new EmpDao(); public void register(Emp emp) { validate(emp); empDao.insert(emp); } protected void validate(Emp emp) { // 他のチェックは割愛。 // 例外処理や、メッセージ部分は、分かりやすさのためにベタ書きしているため指摘対象外。 if (ValidatorUtils.checkRequired(emp.getName()

    レビューで鍛えるJavaコーディング力 その2(バリデーション) - 谷本 心 in せろ部屋
  • 2009年書いた Emacs 人気記事ベスト10。 - 日々、とんは語る。

    追記 この記事を元に書籍が出来ました! 時間と命を削って、より詳細に解説しましたので、Emacs に興味がある人はぜひ一度手に取ってみて下さい。 Emacs実践入門 ?思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus) 作者: 大竹智也出版社/メーカー: 技術評論社発売日: 2012/03/07メディア: 単行(ソフトカバー)購入: 22人 クリック: 396回この商品を含むブログ (1件) を見る僕が Emacs を使いはじめたのは2008年に入ったくらいで、08年の終りくらいに少し Elisp を触りはじめて Emacs の面白さに目覚めました。 Emacs の機能を詳しく紹介したサイトや、入門記事は多いのですが、実際に導入してから、バリバリ使える/使っていくための続編的な記事が少ない様な気がします。 インストールが済んで、操作はとりあえず分かったけど、

    2009年書いた Emacs 人気記事ベスト10。 - 日々、とんは語る。
  • IE8における拡大縮小バグ

    IE8における拡大縮小バグ 先日リリースされたIE8だが、多くのバグを含んでおり、まだまだWEB製作者を悩ませそうです。 (追記)Firefox3でも発生しますね。検証不足でした。 例えば、私が見つけたのは拡大縮小に関するバグ。(文字ではなくズームによる) ul{ margin:10px; width:600px; border:1px blue solid; } ul li{ list-style-type:none; margin:2px; border:1px red solid; width:194px; height:194px; float:left; display:inline; } サンプル などのようにリスト要素を利用して表状の形態を表現した際、通常は以下のように表示される。 IE8 100%で表示。 これを95%に変更すると以下のようになる。 IE8 95%で表示。

    IE8における拡大縮小バグ
  • 知っておきたい15個のCSS TIPS

    知っておきたい15個のCSS TIPS IN THE WOODSでまとめられている15 CSS Tricks That Must be Learnedを紹介します。 原文は素敵なイラスト付きで解説されていますので、合わせてチェックしてください。 positionがabsoluteの要素をpositionがrelativeの要素の中に入れる positionがrelativeを指定した要素の中にpositionがabsoluteを指定した要素を入れることにより、計算した場所に配置することができます。 参考:positionプロパティの考察 z-indexによる配置 z-indexを利用する場合は、「position:relative」と共に利用することにより要素の重なり順を制御することができます。 margin auto widthを指定した要素の左右にmargin:autoを指定すると中央

    知っておきたい15個のCSS TIPS
  • each、each_with_object、inject、map - プログラミングは素晴らしい

    Ruby の each、each_with_object、inject、map は使いどころが微妙に違う。 それぞれ適切な状況で使い分けられれば、コードはより分かりやすくなる。 どんな状況でも each で書くことはできる。だから、each だけ使いこなせればいいという考え方はある点で正しい。そのような考え方の人にとってはeach で書くのがもっとも分かりやすいコードになるだろう。 しかし慣れてみると上記のメソッドを使い分けられる方が簡潔で分かりやすいコードになる。その理由はメッセージ性の違いだ。 each ですべてを書く場合は余計なコードを書く必要があり、その分、どうしても、質的なコードが埋もれてしまう。余分なコードがないほど、質的なコードが際立つ。メッセージが伝わりやすくなる。意味があるコードの比率を下げることは、中級プログラマへの道を開く鍵だ。 それでは題に入ろう。 まずは簡単

    each、each_with_object、inject、map - プログラミングは素晴らしい
  • YUIのfonts.css

    YUIのfonts.css ブラウザ間やOS間のフォントの差異を吸収してくれるCSSライブラリにYahoo! Developer Networkで公開されているYUI(Yahoo! UI Library)の「fonts.css」があります。 利用方法は非常に簡単でhead要素などでfonts.css を読み込むだけで利用できます。 <link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.6.0/build/fonts/fonts-min.css"> Yahoo!のサーバー上のファイルを直接読み込んでも良いですし、ダウンロードしたファイルを読み込んでも大丈夫です。 fonts.css を読み込むとブラウザやOSは関係なく、font-familyは「Arial」、font-sizeは「13 px 」、lin

    YUIのfonts.css
  • not found

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • MySQLからCSVをダンプした後にするべきたった一つの修正 - 射撃しつつ前転 改

    毎回なんかすごい苦労してアドホックに解決してきたが、毎回苦労するのにうんざりしてきたので、頑張って調べてみた。正しい(と思う)手順を書いておく。 まず、MySQLからCSV形式でダンプするときに、ちゃんとenclosed byとescaped byをつけておくべきである。mysqlコマンドでデータベースに接続して、 select * from tablename into outfile '/tmp/output.csv' fields terminated by ',' enclosed by '"' escaped by '\\' lines terminated by '\r\n'; で出力する。しかし、これだとダブルクォートもバックスラッシュでエスケープされることになり、このエスケープはRubyCSVパーザでは受け付けてくれない(一般的な方法はダブルクォート2つらしい)ので、悲し

    MySQLからCSVをダンプした後にするべきたった一つの修正 - 射撃しつつ前転 改
  • 2009年に書いた記事とかを振り返る - 射撃しつつ前転 改

    1月から12月までに何を書いたかとか、その時にどんな事を考えていたかとかを振り返ってみます。後日談もいくつか書いたよ。 2009年1月 昨年の12月に書いたComplement Naive Bayesの記事がウケたが、 Confidence Weighted Linear Classificationを読んだ (あ、これは1月じゃなかった…) SVMにおける損失と正則化 といった記事はウケず、機械学習がウケているのではなく、"はてなが使っている"というところが注目を集めたんだ、とわかってちょっと悲しくなった。 Confidence Weightedはオンライン学習で今のところ最強、と目されてきたわけだが、今年のNIPSでAdaptive Regularization of Weight Vector (AROW)という論文をK. Crammerらが発表した。こちらのアルゴリズムはConfi

    2009年に書いた記事とかを振り返る - 射撃しつつ前転 改
  • 最近vimで覚えた便利な操作 « ふぃふmemo

    へっぽこvimmer丸出しですが、vim歴1年未満ということでご勘弁ください。 コマンドモードにコピーした文字を貼り付け :を叩いてコマンドモードにしたら、 CTRL+rを押して、「"」(ダブルクォーテーション)を押すと、ペーストできます。 不便だなぁと思いつつも、今まで手打ちしてました。 カーソル下の文字を手軽に検索 検索したい単語(多分wとかbでジャンプ出来るワード単位)の上にカーソルを持っていって、前方検索なら「#」、後方検索なら「*」を叩くと、即座に次に見つかった単語にジャンプされます。 今までは、.vimrcに以下のような設定をしておいて、ビジュアルモードで選択してから検索していました。 PLAIN TEXT TEXT: vnoremap <silent> // y/<C-R>=escape(@", '\\/.*$^~[]')<CR><CR> まぁこれはこれで便利なんですけど

    threeMonths
    threeMonths 2010/01/06
    ":を叩いてコマンドモードにしたら、 CTRL+rを押して、「"」(ダブルクォーテーション)を押すと、ペーストできます。"
  • レビューで鍛えるJavaコーディング力 その1(日付バリデーション) - 谷本 心 in せろ部屋

    現場でJavaのソースをレビューしていると、一目で「問題だ」と気づくコードによく出会います。 しかも、同じような問題をアチコチで見かけることも、少なくありません。 FindBugsを導入したおかげで、そういう問題が多少減ったものの、 やはりゼロになるわけではありません。 、、、ということで、 そんな問題コードに即座に反応できるようになるために、 私が見てきた問題コードをクイズ形式で紹介していきます。 ぜひ皆さんも、脊髄反射でNG部分を見つけてください。 見つけられなければ、適当にブクマでもしてください(笑 では今回は、日付チェックに関する問題です。 問題 以下のコードの問題を指摘し、修正してください。 ただし、問題は複数あることもあれば、全くないこともあります。 /** * 日付が正しい形式であり、存在する日付であることを検証します。 * * @param date 日付を示す文字列 *

    レビューで鍛えるJavaコーディング力 その1(日付バリデーション) - 谷本 心 in せろ部屋
  • JavaでLL風な開発を実現するWebフレームワーク「Play Framework」 | gihyo.jp

    RubyPHPなどLightweight Language(LL、軽量言語)な世界では、フルスタックなWebフレームワークが乱立している状況です。しかしJavaには有名と言えるフルスタックなWebフレームワークはありません。そんな中、まるでRailsのようなスタイルで開発ができるJavaフレームワーク「Play framework」が登場しました。 Play frameworkはPure Javaでコントローラやモデルを記述しますが、コード量は驚くほど少なく済みます。 しかも、Javaファイルを編集してブラウザを更新するだけで反映させることができます。これは内部でEclipse JDTコンパイラを利用していることで実現できています。ソースに記述ミスがあってもブラウザ上にコンパイルエラー部分を行番号付きでカラフルに示してくれるのも親切です。 モデルはHibernateベースのJPA(Jav

    JavaでLL風な開発を実現するWebフレームワーク「Play Framework」 | gihyo.jp
  • 「示へんの禱」と「ネへんの禱」 | yasuokaの日記 | スラド

    以前から気になっていたのだが、Internet Explorerは特定の日語環境下で、CP932以外の漢字に対し、MSゴシックやメイリオではなくSimsunを表示してしまうことがある。この結果、たとえば「禱」だと、こちらはMSゴシックの「示へんに壽」を意図したつもりが、なぜかSimsunの「ネへんに壽」が表示されてしまう。MSゴシックで「禱」が表示できるにもかかわらず、勝手にSimsunで代替してしまうのだ。 まあ、同じU+79B1だから仕方ないと言えば仕方ないのだが、このあたり、どうも気にする人が多いらしく、人名用漢字の新字旧字「祷」と「禱」にも、文化庁あたりからクレームがついて、あわてて編集さんに直してもらうハメになった。でも、FONT指定できる場合はいいけど、FONT指定の効かないこの日記とかは、さて、どうすればいいのかしら?

  • 簡単で難しい“正確なC言語”

    記者は日経ソフトウエアでここ4年半ほどC言語を使ったプログラミングの連載記事を担当している。「C言語好き」を自認してもいる。プログラムを書くことを直接の生業としていないので,プロのエンジニアに比べればずいぶんお気楽な「好き」には違いないが。 最初に連載を手がけたころはJavaの台頭がめざましい時期で,日経ソフトウエアでCプログラミングを連載するのもそろそろ最後かという空気すらあった。ならばということで,思い切り基礎に立ち返った内容で有終の美を飾ろうとしたところ,その連載がかなりの好評をいただいた。「やっぱりC言語の連載は必要だね」ということになり,現在に至るまで何らかの形でCプログラミングの連載が載り続けている。 C言語好きとしてはC言語の記事が載り続けるのは喜ばしいのだが,担当するようになって1年たち2年たつうちに,これでいいのかという問題意識が頭をもたげてきた。月刊誌の連載記事は長くて

    簡単で難しい“正確なC言語”
  • APサーバを問わずJavaアプリケーションを動かすには?

    APサーバを問わずJavaアプリケーションを動かすには?:Java Review(1/2 ページ) Webシステムでは複数のベンダーのアプリケーションサーバを利用していたり、Webシステム更改の際アプリケーションサーバを変更したりする場合がある。このような場合に動くはずのアプリケーションが動かなくなったという経験はないだろうか。今回は、Webアプリケーションサーバを変更した時にJavaの業務アプリケーションで留意すべき点について説明する。 Webアプリケーションサーバごとの違いを考慮する Javaの業務アプリケーションを異なるWebアプリケーションサーバで動かす場合には「バージョンの違い」、「Webアプリケーションサーバごとの違い」を意識しておく必要がある。前者の「バージョンの違い」では、WebアプリケーションサーバでサポートしているJava EEやJava SEのバージョンに違いが無いか

    APサーバを問わずJavaアプリケーションを動かすには?
  • Tumblr

    threeMonths
    threeMonths 2010/01/06
    "コードを書くというのは、例えて言えば地面にタイヤが接地するようなもので、有能な人がコードを書くべきです"
  • uessai-text

    threeMonths
    threeMonths 2010/01/06
    今のところファイル名に日本語を使わないほうがよい