タグ

ブックマーク / codezine.jp (15)

  • Java特有の冗長なコードを簡潔に記述する「Lombok」

    Javaは言語仕様上の制約により、ボイラープレートコード(自明だが省略できないお決まりのコード断片)がいくつかあります。例えば、メンバ変数を読み書きするだけのgetterメソッドやsetterメソッドがこれにあたります。Lombokを使えば、これらJava特有の冗長なコードを、見やすく簡潔なものにすることができます。記事ではLombokを利用して、ボイラープレートコードをシンプルに記述する方法について解説します。 はじめに 今やJava開発に必要不可欠となったものの一つに、IDEの存在があります。例えばEclipseではメンバ変数さえ定義すれば、getter/setterの自動生成や、equalsメソッドやhashCodeメソッド、toStringメソッドなどの自動生成などさまざまな場面でコーディングを強力にサポートしてくれます。 これは大変便利な機能ですが、裏を返せばJavaの言語仕様

    Java特有の冗長なコードを簡潔に記述する「Lombok」
  • Webサイト高速化対策の現状

    はじめに はじめまして、こんにちは。クラスメソッド株式会社でWebを担当している野中です。 この度、「これから身につけるWebサイト高速化テクニック」と題して記事を連載させていただくこととなりました。 連載ではWeb担当者やWebデザイナー、コーダーの方々に向けて高速化に関する手法や技術について調べ、身につけたテクニックを細かな解説を加えて紹介していきます。中には少し難しいテクニックも含まれますが、できる限り分かりやすく、すぐに実践できるよう紹介していきたいと思います。とても長い連載ですが、よろしくお願いいたします。 なお、連載はクラスメソッド開発ブログで連載されている「身につけておきたいWebサイト高速化テクニック」の増補改訂版です。 連載の流れ 連載はできるだけ多くの方に興味を持っていただけるように、最初に高速化対策の全体像と必要な知識を紹介します。その後、具体的な高速化対策と

  • 「Usermodel API」を利用したExcelの計算式・図形操作

    JavaからMicrosoftのドキュメントを操作するためのAPI「POI」の最新版では、Office 2007形式のファイルも扱えるようになりました。稿では前回に引き続き、名前の定義、計算式、図形や画像の利用用など、Usermodel APIの使用方法を確認していきます。 はじめに POIはJavaからMicrosoftのドキュメントを操作するためのAPIで、2007年6月からApache Software Foundationのトップレベルプロジェクトに格上げされました。オープンソースとして提供されているので誰でも無償で利用することができます。 なぜ初期のリリース後、7年以上も経過し、多くの情報が存在するPOIを今回あらためて取り上げることにしたかと言うと、2009年9月リリースの Version 3.5でOffice Open XML形式(以降、OOXML形式)への対応という大きな

    「Usermodel API」を利用したExcelの計算式・図形操作
  • Scala+LiftフレームワークのView/Template

    はじめに 前回は、関数型Webアプリケーションフレームワークというコンセプトで構築された、ScalaのWebアプリケーションフレームワーク「Lift」の概要を紹介しました。 第2回となる稿では、LiftにおけるView層であるテンプレート、Snippetについてサンプルを用いて解説したいと思います。 対象読者 Javaは知っているが、Scalaも学んでみたいと思っている方 ScalaでのWebアプリケーション開発に興味がある方 必要な環境 最低動作環境 J2SE 5.0 JDK 推奨環境 J2SE 6.0 JDK Apache Maven 2.10 Scala 2.7.5 LiftのViewはSnippet+Template LiftのView層は、基的にテンプレートとSnippetによって構成されています。開発者は、HTMLページのテンプレートを用意し、動的な出力を行う部分をSnip

    Scala+LiftフレームワークのView/Template
  • JaxerによるサーバーサイドJavaScript

    はじめに 既に「Ajax」という言葉が陳腐に感じてしまうほど、JavaScriptはWeb開発者の間に広く浸透しています。今では、クライアント側でのUI構築にJavaScriptは不可欠となっている、といってよいでしょう。クールなサイトを目指してJavaScriptを必死に勉強する人はずいぶんと多いはずです。 が、ある程度まで学習が進むと、多くのJavaScriptプログラマは「壁」にぶつかってしまいます。それは「サーバーサイドプログラム」という壁です。Ajaxによるサーバーへの非同期通信が当たり前のように使われるようになった今、JavaScriptプログラミングといえども「サーバー側に用意されるプログラム」の作成なしには行えなくなりつつあります。 サーバーサイドのプログラム作成はどうすべきなのか。PHPを勉強するのか、Perlあたりがいいのか、はたまたRubyPythonか。いずれにせ

    JaxerによるサーバーサイドJavaScript
  • ScalaによるWebアプリケーションフレームワーク「Lift」とは

    Java仮想マシン上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 連載ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 はじめに Java仮想マシン(以下JVM)上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。 Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 稿ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 対象読者 Javaは知っているが、Scalaも学んでみたいと思っている方 ScalaでのWebアプリケーション開発に興味がある方 必要な

    ScalaによるWebアプリケーションフレームワーク「Lift」とは
    Yamashiro0217
    Yamashiro0217 2009/09/16
    scalaですからっ!
  • Eclipse 3.4のコード生成&リファクタリング機能(続)~Eclipse 3.4入門~

    はじめに 今回は、第8回「Eclipse 3.4のコード生成&リファクタリング機能」で紹介しきれなかったEclipse 3.4のリファクタリング機能の続きです。 前回説明したとおり、リファクタリング機能は、作成済みのプログラムを編集するときに関連する編集を自動化してくれる機能です。今回も、Eclipseがコード生成機能とリファクタリング機能として提供しているたくさんの機能から、初心者にも利用しやすいいくつかをサンプルの流れに沿って説明します。 今までの記事 第1回「Eclipse 3.4のインストールと日語化」 第2回「Eclipse 3.4の各種設定と利用方法」 第3回「Eclipse 3.4プラグインのインストール/設定方法」 第4回「Eclipse 3.4でのアプリケーション開発方法(swing/JSP/サーブレット)」 第5回「Eclipse 3.4を使ったデバッグとテスト」 第

    Eclipse 3.4のコード生成&リファクタリング機能(続)~Eclipse 3.4入門~
  • 相関サブクエリで行と行を比較する

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    相関サブクエリで行と行を比較する
  • Oracleの階層問い合わせ(1) (start with句、connect by句)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Oracleの階層問い合わせ(1) (start with句、connect by句)
  • Google Developer Day 2009で学んだ Java版Google App Engineの勘所

    はじめに 6月9日に開催された「Google Developer Day 2009」で、夷藤勇人氏と鵜飼文敏氏により「Javaで動かすGoogle App Engine」というセッションが講演されました。稿では、その概要をお伝えします。 Google Developer Dayとは、Googleが主催する開発者向けのイベントです。例年、Google Japanのスタッフのみならず、世界中のオフィスからソフトウェアエンジニアやデベロッパーアドボケイト(advocate;支持者)、API Expert(Google認定のサードパーティエンジニア)が駆けつけて、Googleが関わる最新のテクノロジーのセッションが行われています。 セッションでは、前半で夷藤勇人氏がGoogle App Engineの概要を説明し、後半で鵜飼文敏氏がデータストアについて説明しました。 以下、罫線で囲んだ部分は、セ

    Google Developer Day 2009で学んだ Java版Google App Engineの勘所
    Yamashiro0217
    Yamashiro0217 2009/06/18
    [gae/j]
  • はじめて使うJazz ― チーム開発のためのオープンな統合プラットフォーム

    チーム開発のためのオープンな統合プラットフォーム「JazzJazzプロジェクトと言っても日ではご存じない方もいらっしゃるかもしれません。「Jazz」とは、ソフトウェア開発チームのコラボレーションを支援するための新しいテクノロジー・プラットフォームであり、それらを開発するプロジェクトの名称です。大きな成功を収めたEclipseプロジェクトの次のステージとしてIBMが進めているプロジェクトです。Jazzプロジェクトは、人々がソフトウェア開発においてどのように協調して働くべきか、すなわち、いかにコラボレーションし、生産性を向上させ、透明性を確保してソフトウェア開発を行うかという観点で開発されています。 Eclipseは、エディター、コンパイラー、デバッガーなど開発者がこれまで別々に利用していたツール群を1つの環境に統合したプラットフォームを提供することによって開発者個人の生産性を向上させて

    はじめて使うJazz ― チーム開発のためのオープンな統合プラットフォーム
  • find/grep/xargsコマンドを使いこなす 業務で楽するためのUNIXテクニック集「検索」編

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    find/grep/xargsコマンドを使いこなす 業務で楽するためのUNIXテクニック集「検索」編
  • コーディングスタイルの常識をぶち壊せ

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    コーディングスタイルの常識をぶち壊せ
  • 業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine
  • 「Google Collections Library」でJavaのコレクションを補完する:CodeZine

    はじめに 何年も前のことですが、私が初めてJavaに興味を覚えた理由の1つは、Javaプラットフォームに標準でコレクションライブラリが組み込まれていたからでした。当時、C++の世界ではまだSTL(Standard Template Library)が定着しておらず、開発者たちは適当なコレクションライブラリを購入して利用するか(Rogue Waveが流行っていました)、自分の手でライブラリを書くしかありませんでした。正確な数は忘れましたが、私自身も、さまざまな目的でさまざまな種類のプリミティブやオブジェクトの連結リストを実装しました。さらに、もっと複雑なコレクションや平衡2分探索木、ハッシュテーブルなども自分で実装しました。そのようにしてソフトウェア工学の原理を絶えず意識することは決して無駄なことでありませんでしたが、生産性を考えるとそうとばかりも言えませんでした。 しかし、Javaによって

  • 1