タグ

2012年7月27日のブックマーク (9件)

  • DRY原則の利用: コードの重複と密結合の間

    原文(投稿日:2012/05/25)へのリンク DRYは重複とそれに伴うメンテナンスの問題を軽減するものだが、誤用すると密結合を生み、可読性を損うおそれがある。教訓:ソフトウェア開発原則は、ほかの原則やパターン、プラクティスを考慮して適用しなくてはならない。 DRYは Don’t Repeat Yourself の略語であり、Andy Hunt氏とDave Thomas氏が書籍「The Pragmatic Programmer: From Journeyman to Master」(邦訳:「達人プログラマー―システム開発の職人から名匠への道」)で最初に言及したソフトウェア開発原則だ。その原則はこう述べている。 知識のあらゆる部分はそのシステムにおいて単一で、曖昧さのない、信頼できる表現でなくてはならない。 ここでHunt氏は重複による負の影響と、それゆえにDRYを利用することの重要性を強調

    DRY原則の利用: コードの重複と密結合の間
  • Xtend、Javaをエクステンドする

    Eclipse Junoのリリースとともに、Eclipse FoundationはXtendのリリースを高らかに発表した。これはラムダを備えたJava互換の言語で、Javaランタイムに完全な互換性をもつ。XtendはXtextというDSLライブラリおよびエディタ生成のためのプラグインスイートをベースにしている。 ScalaやCeylon、Kotlinと違って、Xtendは独自のバイトコードコンパイラを必要としていない。その代わり、XtendのソースファイルはJavaのソースファイルに変換され、それから通常のJavaコンパイラでコンパイルされる。その結果、Xtendは、標準的なJavaプロジェクトで使えるJavaを生成する、開発時の変換ツールとして利用したり、コンパイル時にJavaソースファイルを生成するのに使うソースモデルとして利用することができる。 Xtendをコンパイルするには2つの方

    Xtend、Javaをエクステンドする
    ecaze
    ecaze 2012/07/27
  • Domain Driven Design Exchange (DDDx) 2012 - OODパラダイムからの決別

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Domain Driven Design Exchange (DDDx) 2012 - OODパラダイムからの決別
  • Java 8 vs Scala: 特徴を比較する

    Java 8はついにラムダ式を導入します。ラムダ式自体は2009年からProject Lambdaで利用することができました。当時はラムダ式はJava Closuresと言われていました。サンプルコードを紹介する前に、ラムダ式がJavaプログラマにとってなぜ歓迎すべき機能なのかを説明しましょう。 なぜラムダ式を使うのか ラムダ式の一般的な使い方はGUI開発においてです。一般的に、GUIプログラミングではイベントと結びつく振る舞いを解決する必要があります。例えば、ユーザがボタンを押したとき(イベントが発生したとき), プログラミングは何らかの処理を実行する必要があります。例えば、Swingでは、次のコードで示すようにActionListenersを使います。 class ButtonHandler implements ActionListener { public void actionP

    Java 8 vs Scala: 特徴を比較する
  • Project Jigsaw: Late for the train | Mark Reinhold

    The aim of Project Jigsaw is to design and implement a standard module system for the Java SE Platform, and to apply that system to the Platform itself and to the JDK. Jigsaw is currently slated for Java 8. The proposed development schedule for Java 8 expects work on major features to be finished by May 2013, in preparation for a final release around September. Steady progress is being made, but s

    ecaze
    ecaze 2012/07/27
  • No Jigsaw for JavaSE 8

    ecaze
    ecaze 2012/07/27
  • Cookbook - Gradle - Codehaus

    1 about this cookbook 1.1 How can you help ? 2 general issues 2.1 problems after upgrade to newer version of Gradle 3 web development 3.1 creation of exploded war 3.2 running selenium tests 4 missing features 4.1 running things from Gradle 4.2 running single tests 4.3 Creating source and resource directories 5 Dependencies 5.1 Creating a fat jar 5.1.1 Include all runtime dependencies 5.2 Gathering

    ecaze
    ecaze 2012/07/27
  • Gradients In JavaFX

    Maximizing Outcomes with Your Data Strategy Despite the increasing investments made by companies in data initiatives, ... Read more e-Zest featured in the ‘ER&D & IoT Services Report 2021' by Zinnov Zones We are excited to announce that e-Zest has been featured as an 'Emerging & ... Read more

    Gradients In JavaFX
    ecaze
    ecaze 2012/07/27
  • Groovy 2.0の新機能

    静的型チェッカーは、戻り型や、代入時の値の整合性も検証します: import groovy.transform.TypeChecked @TypeChecked Date test() { // コンパイルエラー: // Date値はint型の変数には代入できない int object = new Date() String[] letters = ['a', 'b', 'c'] // コンパイルエラー: // String値はDate型の変数には代入できない Date aDateVariable = letters[0] // コンパイルエラー: // Date型を返すメソッドでString値を返すことはできない return "today" } この例では、int変数にDateは代入できないことや、メソッドシグネーチャで指定されているDate値のかわりにStringは返せないことをコン

    Groovy 2.0の新機能
    ecaze
    ecaze 2012/07/27