タグ

javaに関するArthur7のブックマーク (48)

  • Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~前編

    Scalaとは Scalaは、2003年にJavac(コンパイラ)やJavaのGenericsの設計/開発貢献者であるMartin Odersky氏(スイス・ローザンヌ工科大学教授)によって、開発が開始された比較的新しいプログラミング言語です。Javaは実用言語として幅広いシステムで使用されてきましたが、下位互換性を保つという要請の中、言語としての機能強化がなかなか進まないといった限界も見えてきています。そのような現状もあることから、ScalaJavaの後継として実用的な言語を目指して開発されています。 Scala最大の特徴は、Javaの良さを最大限継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、先進的な機能/文法を取り入れている点です。また、今後のハードウェアのマルチコア化を見据え、簡易に並列処理プログラミングを行うことができるライブラリが付属しています。 Scalaのメリ

    Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~前編
  • PHP以外では: 既にあたり前になりつつある文字エンコーディングバリデーション - 徳丸浩の日記(2009-09-14)

    _既にあたり前になりつつある文字エンコーディングバリデーション 大垣靖男さんの日記「何故かあたり前にならない文字エンコーディングバリデーション」に端を発して、入力データなどの文字エンコーディングの妥当性チェックをどう行うかが議論になっています。チェック自体が必要であることは皆さん同意のようですが、 チェック担当はアプリケーションか、基盤ソフト(言語、フレームワークなど)か 入力・処理・出力のどこでチェックするのか という点で、さまざまな意見が寄せられています。大垣さん自身は、アプリケーションが入力時点でチェックすべきと主張されています。これに対して、いや基盤ソフトでチェックすべきだとか、文字列を「使うとき」にチェックすべきだという意見が出ています。 たとえば、id:ikepyonの日記「[セキュリティ]何故かあたり前にならない文字エンコーディングバリデーション」では、このチェックは基盤ソフ

  • 良いプログラマを目指すなら「Java並行処理プログラミング」は今すぐ読むべき - higepon blog

    Java並行処理プログラミングを読み終えた。ここ 1 年に読んだ技術書の中でダントツのベスト。(2位はWorking Effectively With Legacy Code) 「Javaだから関係ない」と思った人にこそ読んで欲しい。僕もここ数年 Java のコードなど一切書いていないが、このを読んで得たものは非常に大きかった。 このでは マルチスレッドプログラミングにおける問題と背景、その対処方法 Java が提供している API の設計と実装 を解説している。分かりやすさとレベルの高さを兼ね備えたとても良い。翻訳も最高。 僕はこのを読んで、Java の並行処理プログラミングは、想像を遙かに超えて進化している事に驚きを隠せなかった。何回も twitterJava すげーと叫んだ。 これを読んでしまうと、最近僕が熱心な Scheme も含めて、自分の身の回りにあるプログ

    良いプログラマを目指すなら「Java並行処理プログラミング」は今すぐ読むべき - higepon blog
  • 【コラム】イマドキのIDE事情 (33) これが定番! オープンソースのEclipseプラグインリスト | エンタープライズ | マイコミジャーナル

    定番のEclipseプラグイン 連載でもさまざまなEclipseプラグインを紹介してきたが、今回は豊富なオープンソースのEclipseプラグインの中からJava開発において定番と呼べるものをピックアップして紹介する。 Webアプリケーション開発 Web開発ではなんといってもEclipse Foundationで開発されているWTPが標準プラグインと言えるだろう。EclipseのWebサイトではEclipse for JavaEE DeveloperパッケージとしてWTPがインストール済みのEclipseが提供されている。ただし、WTPは動作が重いという場合にはSysdeo Tomcat LauncherやEclipseHTMLEditorなどの軽量プラグインを組み合わせて利用してもいいだろう。 データベース JDBCのフロントエンドとしてはEclipse Foundationで開発されて

  • Google Android用携帯アプリ作成のための基礎知識 (1/5) - @IT

    Android”って何? 人造人間のこと? Androidは、Googleが発表した携帯電話のプラットフォームです。発表と同時にいろいろな媒体で紹介されましたから、ご存じの方も多いことでしょう。まだ、ご存じでない方は、ニュース記事「グーグルが「アンドロイド」SDK公開——動画デモも〜エミュレータも提供〜」が参考になるでしょう。 Linux 2.6カーネルをベースとしていて、アプリケーションの開発にはJavaを使うことができます。早速、SDK(ソフトウェア開発キット)をダウンロードして試用してみました。 携帯電話アプリ向けのJava MEとの互換性がない ところで、携帯電話などで動作するアプリケーション向けのJava Platformといえば、SunのJava ME(Java Platform, Micro Edition)があるわけですが、Androidで動作するJavaアプリケーション

    Google Android用携帯アプリ作成のための基礎知識 (1/5) - @IT
  • 【連載】Java開発者のためのRuby / Ruby on Rails入門 (1) 忙しいJava開発者のために | エンタープライズ | マイコミジャーナル

    忙しいJava開発者のために 「Ruby on Rails(以下、RoR)」の登場が大きな契機となり、現在、Rubyユーザーの数は増加の一途をたどっている。最近では多くのプラットフォームで対応が進められており、Javaにおいても、JVM上で動作するRuby実行環境「JRuby」が用意されているのはご存知のとおりだ。 こうした背景から、Java開発者の中にはRubyに興味を持っている方が少なくないのではないだろうか。もっとも、その多くは、日々の業務に追われ、新たな言語の学習に十分な時間がとれないという状況だと推測する。そこで、連載では、Rubyという言語、およびその言語の魅力を最大限に引き出しているフレームワークRoRについてJava開発者の皆さんが効率的に学習できるよう、JavaプラットフォームとRubyプラットフォームの特徴を比較しながら解説していこうと思う。 なお、連載の前半では、J

  • [実装編]スレッドセーフにすることを忘れてはいけない

    スレッドセーフとは,アプリケーションをマルチスレッドで動作させても問題がないことを指す。サーバー向けアプリケーションは,マルチスレッドで動作するように設計・実装することが望ましい。そのほうが通常はパフォーマンスが向上するからだ。 だが,マルチスレッドのアプリケーションは,注意深く設計・実装しないとトラブルが生じる。例えば,あるスレッドで保持していた変数の値がほかのスレッドからアクセスされ,処理結果が上書きされたり,ほかの利用者の情報が見えてしまったりする。 こうしたトラブルは,開発者が1人で単体テストしているときには見つけられず,多数の利用者で限界時の挙動テストをしたときや,番移行した後で,たまたま見つかることが多い。トラブルが発生するタイミングを再現することが難しいので,デバッグは困難になりがちだ。 マルチスレッドでのトラブルを防ぐため,開発者は,スレッドセーフな設計と実装を心がける必

    [実装編]スレッドセーフにすることを忘れてはいけない
    Arthur7
    Arthur7 2007/09/19
  • プログラマーの“宿命”? ファイル操作に関する常識

    プログラマーの“宿命”? ファイル操作に関する常識:プログラマーの常識をJavaで身につける(7)(1/4 ページ) 連載は、Java言語やその文法は一通り理解しているが、「プログラマー」としては初心者、という方を対象とします。Javaコアパッケージを掘り下げることにより「プログラマーの常識」を身に付けられるように話を進めていきます。今回は「ファイル操作」について。OSやアプリケーションなどのさまざまなプログラムでよく行われ、とても身近な存在であるファイル操作の仕方を一から解説します

    プログラマーの“宿命”? ファイル操作に関する常識
  • 【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ?:現場から学ぶWebアプリ開発のトラブルハック(6)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) 【第1章】Tomcatが無応答!? トラフィックの多い大規模サイトでは、その負荷のためにさまざまな問題が発生する。それらの問題を回避するには、性能を考慮して作られたアプリケーションや、ノウハウに基づいたミドルウェアのチューニングが必要となる。 TomcatはServletコンテナとしての長い歴史を持ち、多くの採用実績を持つオープンソースのアプリケーションサーバ(以下、APサーバ)だ。大規模なサイトで採用される事例も出てきており、To

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT
  • 【特集】Tomcat 6の実力を早速試す - 移行するべき? その時期は? (1) Apache Tomcat 6.0.xにおける変更点(1) | エンタープライズ | マイコミジャーナル

    Apache Tomcat 6.0.x安定版リリース 去る3月1日(米国時間)、The Apache Tomcat Teamは「Apache Tomcat 6.0.10」をリリースした。それ以前にも6.0.xというバージョンは公開されていたが、それらは開発版という位置づけであったため、この6.0.10が6系では初の安定版ということになる。 稿ではApache Tomcat 6.0のインストールやNetBeans/Eclipseでの使用方法を解説する。その上で、新たに対応したServlet 2.5やJSP 2.1などを利用したいくつかのプログラムの例を紹介したい。 Apache Tomcat 6.0.xにおける変更点 まずは、Apache Tomcat 6.0.xにおける主な変更点や、5.x系から移行する際に注意すべき点から見ていこう。 Servlet 2.5およびJSP 2.1のサポート

  • 任天堂のゲームがブラウザで遊べる「vNES」 - ネタフル

    Play your favorite NES games onlineというエントリーより。 Web site vNES lets you play any of over 200 NES games online, in your browser. Lifehackerで紹介されていた「vNES」は「Virtual Nintendo Entertainment System」の略で、なんとブラウザ上で395もの任天堂のゲームで遊ぶことができてしまいます(Java 1.5.0以上が必要)。 英語版が250、日語版が85の他、プロトタイプなどのゲームもありました。 コントローラーとキーボードは次のように対応しています(アプリケーション部分をクリックしておかないと、キーボードがアクティブにならないかもしれません)。 いくつかゲームを試してみましたが、しっかり動いていました。 チープかつ

    任天堂のゲームがブラウザで遊べる「vNES」 - ネタフル
  • 注目のJSONとJavaデータの相互変換ライブラリ"JSON-lib 1.0"登場 | エンタープライズ | マイコミジャーナル

    The JSON-lib projectは11日(米国時間)、JSON-libの最新版となる「JSON-lib 1.0」を公開した。JSON-libはJavaBeans、MAP、コレクション、配列、XMLデータなどをJSONデータへ変換するためのJavaライブラリ。JSONデータからJavaBeansやDynaBeansへの変換も実施できる。Apache License Version 2.0のもとオープンソースソフトウェアとして公開されている。 今回公開されたJSON-lib 1.0成果物はJDK 1.3対応とJDK 1.5対応の2種類が用意されている。JDK 1.3対応版はJDK 1.3.1およびそれ以降のバージョンを対象としたもので、JDK 1.5対応版はJSONArrayやJSONObjectにおいて列挙型も対応した成果物になっている。 json-lib-1.0-jdk13.jar

  • ITはまだまだ新鮮で面白い

    人は何をもって物事を評価するだろうか---。記者の場合は,そもそもの発想の新しさや,ビジネス・プレゼンテーション(意味付け)の美しさと完成度に,コロリとやられてしまう。プライベートでは夕刊フジやZAKZAKのセンスの良さに純粋に笑い声を上げることも多いのだが,ビジネス分野での評価は我ながら辛い方だと思っている。 かつて記者は,記者の眼や記者のつぶやきといったコラムで,IT(情報技術)のパラダイム・シフトに関する興味深いトピックを取り上げてきた。思い出すのは,「運用管理製品はイノベーションの宝庫」,「情報漏えい対策で加速する企業システムの“集中化”」,「“WAN高速化”VS“画面情報端末”,勝つのはどっち?」,「InfiniBandと10GbE,勝つのはどっち?」---,といった具合だ。 もっとも,ここ15年ほどを鳥瞰すると,割りと少ない文字数で“ITのパラダイム・シフト”を説明できることに

    ITはまだまだ新鮮で面白い
    Arthur7
    Arthur7 2007/02/09
    2006年から2007年にかけて記者を感動させた製品について
  • @IT Special PR: Java開発からO/Rマッピングを取り除くCacheが“POJO”を取り込んでさらに進化した!

    Java開発からO/Rマッピングを取り除く Cachéが“POJO”を取り込んでさらに進化した! ~新技術Jalapeñoテクノロジ」の実力とメリットをさぐる~ O/Rマッピング不要でオブジェクトを永続化できるデータベースとして、Java開発者から支持されているCaché。2006年11月に正式リリースされた「Jalapeño(ハラペーニョ)テクノロジ」によって、CachéはJava開発者にとって一層便利なデータベースに生まれ変わった。POJOサポートによって何が変わったのか、具体的に見ていこう。 Java開発者の大きな悩みの1つに、オブジェクトの永続化におけるインピーダンスミスマッチがある。これはオブジェクト指向の開発言語であるJavaによって定義された永続クラスを、リレーショナル・データベース(以下、RDB)に格納したり復元する際に生じる、データモデルの不整合のことだ。 この問題は、

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • 西川和久の不定期コラム - 「去年からSNS作ってます!」

    2005年の1月、『Blogサーバーの引越し(中?)』という記事を書き、最終的にsbと言うブログエンジンを使い、自前でブログサーバーを構築した。現在もそのまま運営しているが、実はあの話には続きがある。 その後、SNSにも興味を持ち、今話題のmixiやGREEはもちろん、米国のMy Space.comなども会員になり、それなりに遊んでいたのだが、何か違う……。ではブログ同様、自前でサーバーを上げ、カスタマイズすればと、オープンソースのSNS、OpenPNEも試してみたがこれも趣向に合わない。「自分の欲しいSNSが無いなら一から作るか!(笑)」と始めだしたのが、このblueプロジェクトだった。 Text by Kazuhisa Nishikawa 実際SNSに参加している人も多いと思うが、機能的には日記、メッセージ、コミュニティ、この3つが大きな柱となり、加えて写真やスケジュール、レビューなど

  • NTTデータ子会社が国内トップのJavaScript Webフレームワーク製品をオープンソース化,Seasar財団に寄贈

    NTTデータイントラマートは同社のWebアプリケーション・フレームワーク製品「intra-martフレームワーク」の基盤部分をオープンソース化し,NPO法人Seasarファウンデーションに寄贈,無償公開する。同製品はJavaScriptでサーバー側のプログラムも開発できることが特徴。オープンソース化によりユーザーの拡大を狙う。 NTTデータイントラマートはNTTデータの子会社で,intra-martフレームワークの開発,販売などを行っている。intra-martフレームワークは約1700社が導入している。2002年の日経ソリューションビジネスによる調査では,商用Javeフレームワークとしては国内で販売金額1位トップ。2006年のノークリサーチによるSAPのフロントシステム構築ツールシェアでも28.6%で1位となっている。商用フレームワークとしては2000年と早期から販売を開始し,サポートや

    NTTデータ子会社が国内トップのJavaScript Webフレームワーク製品をオープンソース化,Seasar財団に寄贈
  • 便利なプラグインの集大成MyEclipse

    前回までの連載を通じて、Eclipseを利用してアプリケーション開発を行ううえで便利なプラグインを、オープンソースのものを中心に数多く紹介してきました。 個別にプラグインをインストールする方法は、オーダーメイドで自分好みの開発環境を作ることができるというメリットもありますが、以下のようなデメリットもあります。 1. インストールに時間がかかる Eclipseの最大の売りの1つに、オープンソースおよびサードパーティから提供されている豊富なプラグインがありますが、Web上に散在するプラグインを個別にインストールするには、それなりの手間が掛かります。 また、プラグインによっては、前提となるプラグインが存在する(例えば、Visual EditorプラグインにおけるGEF、EMFなど)場合があり、その分ダウンロード/インストールの手間が掛かります。 2. プラグイン同士の相性やバージョンに気を使う必

    便利なプラグインの集大成MyEclipse
  • 【レポート】Black Hat Japan 2006 - 外部からイントラネット内にも攻撃可能、JavaScriptマルウェア (1) イントラネットには外部からアクセスできないという「認識」 | ネット | マイコミジャーナル

    5日から都内で開幕したセキュリティカンファレンス「Black Hat Japan 2006 Briefings」の初日、「外部からのイントラネット内のWebサイトハッキング」と題し、WHITEHAT SECURITY創業者兼CTOのJeremiah Grossman氏が講演を行った。米国のBlack Hatでの講演と同じものなので、そちらも参考にしてほしいが、ここでは実際の攻撃手順を紹介したい。 Jeremiah Grossman氏 Grossman氏の講演のポイントは、ファイアウォールで守られているはずのイントラネット内にある機器やサービスのWebインタフェースが攻撃対象になりえる、というもの。 プリンタやファイルサーバ、開発マシン、IP電話、グループウェアなどがその対象となり、設定に使うWebインタフェースはイントラネット内からしかアクセスできないことが前提だ。 しかしGrossm

  • 初心者がJavaを“超高速”で学ぶためのコツ:ITpro

    皆さんの中には,「いまどきJavaくらいできなきゃねぇ~」と言われてからもう何年も過ぎちゃった…なんて人も多いのではないでしょうか。いつ何時「新しいプロジェクトJavaでいくから」なんて上司に言われたりしないか,内心ドキドキしてる方もいらっしゃるでしょう。私が受け持つJavaの授業でも,受講生の方からそういった悩みをよく聞きます。 しかしよく聞いてみると,なんだかとても効率の悪い勉強をしているなあと驚くことがあります。なぜなら多くの方が「Javaの入門書で勉強しているのにJavaのプログラムを作れるようにならない」と言われるからです。COBOLやC言語のプログラミング経験があるにもかかわらずです。 なぜJavaの学習がなかなか進まないのでしょうか。残念ながら「Javaのスキルが上がらない」という方の多くは,「データとアルゴリズム」「Javaの文法」「オブジェクト指向」の三つをきちんと学べ

    初心者がJavaを“超高速”で学ぶためのコツ:ITpro