2008-10-01から1ヶ月間の記事一覧
Servlet 3.0では、アノテーションを用いてServletに関するメタデータを記述できるようになります。これにより今まで必須だった「web.xml」がオプションになります。また、従来HttpServletクラスのようなJ2EE/JavaEEの仕様が提供する親クラスを継承してServle…
Snippet: Extend Builtins | The Scala Programming LanguageScalaの特徴的な機能であるImplicit Conversion(暗黙的な型変換)。 Implicit ConversionについてはJJUG CCCのBOFでもScalaについて話されていた水島さんの資料がわかりやすいです。 http://www.co…
Snippet: For and Yield | The Scala Programming Languageyieldしたら処理後のものを戻しますよーというサンプル。 package sample.snippet object YieldSample extends Application { val array = Array("a", "b", "c") println("変換前" + array.toString…
Snippet: Complex Operations | The Scala Programming Language Scalaには「演算子」という概念はない。 「+」という名前のメソッドにすぎない。 だから演算子のオーバーライドで悩まされることもない。 package sample.snippet object ComplexOperations e…
Snippet: BigInt | The Scala Programming Language IntからBigIntにはシームレスですよーというサンプルだと思う。 package sample.snippet object BigIntSample extends Application { def functional(n: BigInt): BigInt = { if (n == 0) { 1 } else { n …
Scala公式サイトにあるSnippetを淡々と学んでいきます。 サンプルコードはコピペしちゃだめ!必ず手打ち!写経していきます。Snippet: Abstract Types | The Scala Programming Language package sample.snippet object AbstractTypes extends Application {…
Developing for Android | Scala IDE for Eclipse Space | Assembla そらScalaはコンパイルしたらclassファイルやし、Andoroidで動くよね。。。 今からObjective-Cを学ぼう、とはちょっと思えないし。 # web-career.com読んじゃったし。 そうなるとJava & Sc…
システム開発の仕事は、「自ら考える」ことが必要な仕事です。自発的に工夫したり、考えたりしながら作業を進めているSEにとって、単なる作業マシーンの役目を指示されることは、とても苦痛なのではないでしょうか。 キャリア・働き方を考えるブログ: 第3回 …
下流から見たIT業界: SEとPG、どっちが頭がいい?(2) 例えば企業の会計システムを作るとします。その設計に携わって企業の会計を知ることができるようなSEがどれだけいるでしょう。会計の知識はそんな甘いものではありません。 下流から見たIT業界: SEとPG…
Cedric氏がアップしてくれてます。 Google社内かな?
case class B[F,T](c: B[F, T] => (F => T)) extends (B[F, T] => (F => T)) { def apply(b: B[F, T]) = c(b); } def Y[F, T] = (f: (F => T) => F => T) => B[F, T](x => f(x(x)(_)))(B(x => f(x(x)(_)))) val factorial = Y[Int, Int](f => i => if (i <= …
ScalaにApplicationというtraitがある。 これを継承すると、mainメソッドを記述する必要がなくなり、そのクラスのbody部分が実行される。 object ApplicationTrait extends Application { Console println("Hello Scala!") } 実行結果。 Hello Scala!これはA…
まつもとさんのセッションのレポートがあった。 http://gihyo.jp/news/report/01/pasonaconf2008/0004 自分で考えていたこととスゴく同じで、安堵した。 楽しい仕事をしたかったら,自分はどんな仕事をしていたら楽しいのかということを把握してないといけな…
マネージャやリーダーからプロジェクトの初期に質問されることがある。 「1日に何キロライン書ける?」と。。。 この質問をされたら、そのプロジェクトにおけるマネージメントはよくない可能性が高い。 キロラインというのは1000行ということで、「1日に何千…
『Test Driven: Practical TDD and Acceptance TdDD for Java Developers』買いました。 Manningの本は基本的に読みやすい英語で好きです。Test Driven: Practical TDD and Acceptance TdDD for Java Developers作者: Lasse Koskela出版社/メーカー: Manning…
Javaで書いたこういうTestNGのテストがある。 import static org.testng.Assert.assertEquals; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; public class TestNGSample { private Target target; @Test public void v…
ScalaクラスにJavaアノテーションはそのまま使用できる。 @Test def verifyAdd1() = { } けど、属性をJavaのときと同じように書くとコンパイルエラーになる。 @Test(expectedExceptions = Array(classOf[RuntimeException])) def exceptionTest() = { } エラ…
ScalaはもちろんJavaオブジェクトを扱えるけど。 これはコンパイルエラー。 String.class classOfを使う。 classOf[String]
関数型言語ど素人です。 多忙な Java 開発者のための Scala ガイド: オブジェクト指向のための関数型プログラミング object HelloArguments { def main(args: Array[String]): Unit = { args.filter( (arg:String) => arg.startsWith("G") ) .foreach( (arg:…
まだ理論的なところはわかってませんけど。 HTMLファイルでタグを適用するには、Boot.scalaでSiteMapを追加しないとダメみたい。 // Build SiteMap val entries = Menu(Loc("Home", "/", "Home")) :: Menu(Loc("Sample", "/sample", "Sample Page")) :: User…
.inputrc を作り、内容を set completion-ignore-case on としました。これで小文字で入力してタブキーで補完するときに大文字で始まるものも補完候補になります。 blogSetomits : ターミナルでタブで大文字も補完
解決方法を記してくれているところがありました。 解決方法以下いずれかを実行1. mvn compile する2. プロジェクトの再ビルド。targetフォルダ消して再ビルドする方がよいかも With skill and creativeness ありがとうございます! 僕は2のtargetフォルダを…
ScalaのWebフレームワークLift。 インストールするにはこちらのサイトが大変参考になります。 scalaのWebフレームワーク liftで遊ぶ(2) - インストール - ゆろよろ日記 まずScalaはインストールしておいてね。 Mavenのバージョン。 $ mvn -version Maven ver…
僕も塾講師をしていたから教育について考えることがたまにある。 僕もそうだったが、日本の教育は5教科あれば5教科とも点数を高くすることを求める。 言い換えれば教育としてゼネラリストばかりを育てるという方針だし、 学ぶ側は「すべてによい点数をとらな…
来年2009年3月に『The Art of Unit Testing』って本がManningから出るらしい。 が、その画像がこれ。 武士。。。
TestNG + DbUnitのライブラリDbUnitNGですが、 日々見てもらえてるみたいです。 僕がまったく見ていない日でも1日100ページビューぐらいあって、 ダウンロードもようやく20を超えてくれました。 内輪がどれだけかわからないですがw でも今まで僕1人でやって…
@ITさんの連載でデータ駆動テストで簡単にテストのパターンを増やすを解説した。 DataProviderはTestNGで注目を集める便利な機能だ。 DataProviderのメソッドはObject配列を戻り値とすればよいだけなので、 ファイルからでもデータベースからでもテストデー…
打って変わって、今回は実装の話。 TestNGでは実行時に@Testのさまざまな属性の値を変えることができる。 それがアノテーショントランスフォーマー。 TestNGのバージョン5.3からの目玉機能。 サンプルで試してみる。 まずはテストクラス。@Testのtimeout属性…
@ITさんの連載も終わり、Next Generation Java Testing: TestNG and Advanced Conceptsをネタに記事では書かなかったことを紹介していく。 不定期連載の予定。 ステートフルなテストとは TestNGは各テストメソッドの呼び出しで同じインスタンスを利用する。…
実現場でTestNGを活躍させる“5”つのテクニック (1/3) - @IT via kwout @ITさんで初連載いたしましたTestNG記事の最終回が公開されました! 【1】Antからテストをサクッと実行! 【2】テストを並列実行してスピードアップ! 【3】いままでのJUnitのテストは…