No Programming, No Life

プログラミング関連の話題や雑記

2011-01-01から1年間の記事一覧

Ruby基礎文法ひとめぐり

はじめに やっぱり日本人ならRubyをやっとくべきかなと思いとりあえずひとめぐりしてみることにした。文法がGroovyに似ていることもありこれまで "わかったつもり" でいたのを払拭していきたいと思います。 表示 print が改行なし puts が改行あり p は主に…

ネットの情報発信の場の使い分け(私の場合)

最近はこんな感じになっています。 No Programming, No Life 技術系ネタ。やっぱりメインはこのブログかな。結構前から書き続けているので一番愛着のあるブログです。最近ふものしっぽと役割を2分化したので、より明確に技術系のネタを取り扱っていくための…

関数型言語は難しいことを簡単にしてくれるが、簡単なことを難しくしてくれる

言語設計者たちが考えること (Theory in practice)作者: Federico Biancuzzi,Shane Warden,伊藤真浩,頃末和義,佐藤嘉一,鈴木幸敏,村上雅章出版社/メーカー: オライリージャパン発売日: 2010/09/27メディア: 大型本購入: 9人 クリック: 368回…

はてなブックマークのエントリページが機能拡張されたようです

はてなブックマークのエントリーページを改良しました - はてなブックマーク日記 - 機能変更、お知らせなどどうもこのエントリ自体のコメントを見てると、「これはひどい」タグを付けてる人もいたりして、感じ方は人それぞれなんだなとあらためて思いました…

Re:今流行のお題を出してみた(一方通行を許可した迷路を作成)

はじめに 元ネタはこちら。前から取り組んでいたのですが、仕様が複雑なのとアルゴリズムを考えてたら頭がこんがらがってきてしまっていたのと、新年度が始まったので色々と忙しかったので、なかなか取り組めてなかったのですが、力技で作ったやつを公開して…

もしドラ読み終わりました

もし高校野球の女子マネージャーがドラッカーの『マネジメント』を読んだら岩崎 夏海ダイヤモンド社発売日:2009-12-04ブクログでレビューを見る»電子書籍版を購入し、一気に読み終わりました。ストーリー的にもテンポよく進行し、ドラッカーのことに興味を…

お題:時間帯重複チェック(応用編)

プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 前回の時間帯重複チェックについて、後日、お客様から仕様変更を言い渡されました。 仕様変更の内容は…

時間帯重複チェックについてひとこと

はじめに お題「時間帯重複チェック」は昔、実際の業務で私が実装した経験をもとに作成したプログラミングお題です。当時はJavaでコードを記述していました。個人的にこのお題の面白いと思っているところとしては「内容が単純で仕様がすぐに理解でき、簡単に…

Gosuをインストールしてみた

前から気になっていたGosuをインストールしてみました。たぶんGosuは日本ではほとんど流行っていないのでご存知ない方も多いかもしれないので補足しますとJVM上で動くプログラミング言語の一つです。インストール方法は簡単で、よくあるパターンの アーカイ…

Groovyでクラスにプロパティをくっつける

はじめに プロパティは オブジェクト.プロパティ の形式でアクセス可能なものです。Groovyの場合は引数を取らないクロージャとして定義することができます。 サンプルコード 解説 プロパティをくっつける方法は二つあります。 その1. ゲッターで定義 Object…

Groovyソースコード斜め読み(その2)「私をもっと評価して! 」

このシリーズの一覧はこちら はじめに GroovyにゃGroovyShellっていう便利なクラスがおってのぅ、こいつにevaluatしておくれとお願いすれば、なんとまぁ普通の文字列をGroovyコードとして評価してくれるんじゃ。良い時代になったもんじゃのぅ。と、誰得かわ…

GroovyなJDK、それがGDK(Enum編)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

お題:時間帯重複チェック

プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 ある二つの時間帯(日をまたがない)が重複しているかどうかをチェックする処理を書いて下さい。 時間帯…

お題:ランダム文字列

プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 半角英数からなる16桁の文字列をランダムに生成して下さい。使用できる文字は 'a'から'z', 'A'から'Z'…

Groovyでクラスを静的に動的拡張する方法

はじめに GroovyではExpandoMetaClassの機能を利用してメタプログラミングが可能です。これにより動的にクラスにメソッドを定義できるため豊かなプログラミングスタイルを提供できます。 しかし、GroovyにはRubyのようなincludeキーワードがないため、拡張部…

はてブプラスのプライベートブックマークの使い方

はじめに はてなブックマークプラスに申し込むとプライベート(非公開)でブックマークが付けられるようになりますが、いまいち使いどころが分からなかった。 基本全部オープンで活動しておりましたが、先日いい使い方を思いついて今も実践しているのでせっか…

GroovyなJDK、それがGDK(String編その5)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

GroovyなJDK、それがGDK(String編その4)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

GroovyなJDK、それがGDK(String編その3)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

GroovyなJDK、それがGDK(String編その2)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

GroovyなJDK、それがGDK(String編その1)

このシリーズの一覧はこちら はじめに GroovyにはJavaの標準API(JDK)を拡張したGroovy JDK(GDK)があります。大量の便利メソッドが追加されており、これを使いこなすだけでも相当のことができるようになります。このシリーズでは毎回1クラスずつ各メソッドの…

GroovyのList#unique()って破壊的だったっけ?

はじめに タイトルの通りなんですが、以下のようなコードを実行したときに どうも破壊的に動作するようで… def list = [1, 1, 2, 2, 3, 3] assert list.size() == 6 def newList = list.unique() // 破壊的! assert newList.size() == 3 assert newList == …

はてなダイアリーのカテゴリーの一覧を取得する

はじめに はてなダイアリーのカテゴリ 編集設定 > カテゴリー」のテキストボックスで編集可能。">*1は記事を書く際に新しいカテゴリーを指定した際はどんどん増えてゆくのに、記事を編集してカテゴリー名を変更したり、記事自体を削除してしまったりした場合…

IntelliJでフリーカーソルをやめる方法

IntelliJはデフォルトではフリーカーソルとなってしまっていて一部の人には使いにくいですよね。 そこでこれを解除するオプションをメモしておきます。 Preference IDE Setting Editor Virtual Space の Allow placement of caret after end of line のチェ…

やっと整理が終わった

はてなダイアリーをプラスにしてから、ブログが複数つくれるようになった関係で、 「No Programming, No Life」から、この「ふものしっぽ」の方にコードを伴わない内容のブログ記事を移行してきました。 些細な内容からどんどん思ったことを書き綴っていきた…

現場で使えるGroovy(その1)「Windowsのパスは /文字列/ を使おう」

このシリーズの一覧はこちら はじめに 現場で使うマシンは残念ながらWindowsであることが多い。そこで、Groovyスクリプトを書く際のちょっとしたTipsを一つご紹介します。 /文字列/ 表記 Groovyでは正規表現を簡潔に記述するための文字列記述方式として、 /…

現場で使えるGroovy(その2)「今日の日付フォルダを作る」

このシリーズの一覧はこちら はじめに 現場でよくある作業として、今日の日付フォルダを作る作業があります。よくあるのが以下のようなYYYYMMDD形式。 20110318 これをGroovyでやってみようというお話です。わざわざGroovyでやらなくてもバッチ(Windows)やシ…

GroovyのMarkupBuilderで再起的な構造のXMLを生成する

はじめに 発端はid:kyon_mmさんが groovyでパラメータでわたってきたkey,valueをそのままxmlのタグ名とバリューにしたいときってどうやるのがいいんだろう。DOMを使うのがいいのかな? #groovy とつぶやいていたところから。(2011-03-19追記) id:kyon_mmさん…

東北地方太平洋沖地震に募金させていただきました

はてなポイントで募金ができるということなので 少ない金額ですが募金させていただきました。 少しでもお役に立てればと思います。 http://d.hatena.ne.jp/hatenacontrib/20110311私の住む地域はたまたま被害が全くなかったため このようにダイアリーにポス…

GroovyでBrainf*ckインタープリタを実装してみた

はじめに 最近、これを読んでいてBrainf*ck面白いなーと思っていた矢先、こことかこことかでBrainf*ckをScalaで実装されておられるのを発見しました。そこで私もGroovyで実装してみました。 とりあえずHello! Worldだけ (動作確認: Groovy Version: 1.8.0-rc…