タグ

Javaに関するda-yoshiのブックマーク (40)

  • ジェームズ・ゴスリング氏、グーグルへ

    Javaの生みの親ジェームズ・ゴスリング(James Gosling)氏は自身のブログOn a New Roadにポストした記事「Next step on the road...」で、グーグルに就職したことを報告しています。 I find myself starting employment at Google today. 今日からグーグルの社員として働き始めるのだ ゴスリング氏はオラクルがサン・マイクロシステムズを買収した後の2010年4月2日にオラクルを退社していました。それ以来、多くの企業からオファーがあったようです。 One of the toughest things about life is making choices. I had a hard time saying "no" to a bunch of other excellent possibilities. 人

    ジェームズ・ゴスリング氏、グーグルへ
    da-yoshi
    da-yoshi 2011/03/29
    OracleはJavaを駄目にするだけだからGoogleに全ての権利を売ればいいのに
  • Javaプログラマであるかを見分ける10の質問 - やさしいデスマーチ

    元ネタはこちらですが、「優れたJavaプログラマ」を見分ける質問ではありません*1。次のような状況を想定してください。 受託業務を中心にしている弊社は、Javaで業務系ウェブアプリケーションの開発を行う事になりました。しかし社内のリソースを使うにも1−2名足らない事が見積もりから解っています。そこで、中堅エンジニアを1−2名募集することになりました。正社員か派遣かは問いませんが、経験が3年程度の中堅プログラマが必要です。同等またはそれ以上のスキルを持つ正社員がプロジェクトを牽引しますが、ゼロから教えながら教育することはできないので、必要最低限のスキルを持っていることが条件になります。 こんな状況を想定して、面接の質問を考えてみました。経験が3年程度あれば、問題なく答えられるはずです*2。尚、質問はホーム言語がJavaである前提です。 下記質問にそれぞれ50文字以内を目安に簡単に説明すること

    Javaプログラマであるかを見分ける10の質問 - やさしいデスマーチ
    da-yoshi
    da-yoshi 2011/03/05
    1行で完結する処理なら、+を使ってStringを連結してもStringBuilderを使用した連結に内部的に置き換えられるから、使ってはならないという質問の前提が間違っている
  • Javaプログラマが知るべき9のこと - @katzchang.contexts

    はじめに ソースコードは設計であり、コードの記述は品質に直結するのは言うまでもない。ちなみに、プログラマにとって特に重要なのは保守性だ。コードは書いた直後から保守対象となるからだ。コードは要求文書の範囲で動けばいいと思っている人がいれば今すぐ、ソースコードをコピペして100klに増えるプラグインがいつの間にかインストールされる呪いをかけてあげよう。幸い、ここを読んでいる人にはそんな人はいないだろうと思うけれども。 ということで、コードの品質を下げる要因、すなわちシステム全体の品質を下げる要因となり、かつ使われやすいアンチパターンを挙げ、対策を検討していくことにする。対象は以下: 出力パラメータ 処理状態返却 意味のある配列 無意味な初期化 多すぎるtry-catch 暗黙の順序 コンパイラ警告の無視 過剰なコメント e.printStackTrace() 出力パラメータ メソッドの引数にオ

    Javaプログラマが知るべき9のこと - @katzchang.contexts
    da-yoshi
    da-yoshi 2011/02/09
    try catch書く度にそれぞれがstacktrace出していて、最終的にエラーログに同じエラーが5、6回出力されているのを見たことがあります
  • SI業界(日本)のJavaプログラマーにはオブジェクト指向より忍耐力が求められている? - 達人プログラマーを目指して

    私自身は10年以上も前(JDK1.1の頃)にSJC-Pの認定を取って以来、Javaプログラミング関連の認定試験は受けていないのですが、昨日たまたまネットを検索して、SJC-Pとは別にJavaプログラミング能力認定試験という試験が存在していることを知りました。結構メジャーな認定試験のようですので、現役のJavaプログラマーJavaプログラマーを目指している学生さんで、今後受験に向けて勉強されている方々も多くいらっしゃるのではないかと思います。 試験は難易度に応じて3級から1級までランクが分かれており、2級まではJava言語の知識に関する筆記試験ですが1級の試験では実際のプログラムの修正を行う能力が実技試験として課せられます。試験範囲は以下で公開されています。 Javaプログラミング能力認定試験(試験範囲) 私は(自分で言うのも変ですが)、Javaプログラミングについてはこの道15年近くのキ

    SI業界(日本)のJavaプログラマーにはオブジェクト指向より忍耐力が求められている? - 達人プログラマーを目指して
    da-yoshi
    da-yoshi 2011/01/11
    (Javaがよく使われる)中堅以上向けのプロジェクトは企業内・企業間の様々な理由で理想からは程遠いシステム構築を余儀なくされることが多いので、そこに拘るなら大手を捨ててベンチャー相手に小規模でやる方がいい
  • オラクル対オープンソース: 今度はHudson - karasuyamatenguの日記

    人(http://twitter.com/kohsukekawa)がリードする継続的インテグレーションツール(http://ja.wikipedia.org/wiki/Hudson)の開発コミュニティーとオラクルの間に摩擦が生じている。 http://www.hudson-labs.org/content/whos-driving-thing バックグラウンド: Hudsonはフリーソフトウエア(MIT License)だが、Kohsuke KawaguchiさんがSunにいたころ開発されたため、同社がプロジェクトのトレードマークを持っていたらしい。 買収によりSunのHudsonにたいする権利もオラクルのものになった。 元記事に詳しいタイムラインがあるが、肝心なところを拾うと: 開発はjava.netでホスティングされていたが信頼性の問題などからメーリングリストはgoogle gro

    オラクル対オープンソース: 今度はHudson - karasuyamatenguの日記
    da-yoshi
    da-yoshi 2010/12/01
    Oracleが破壊し尽くした後、Javaには何が残るんだろうか
  • JavaとPHPの文法比較

    こんにちは、スパイシーチキン弁当に慣れてきつつある浦です。 今回はJavaPHPの文法を比較し、何が同じで何が違うかを説明します。 Java開発者にとってはPHP入門になりますし、 PHP開発者にとってはJava入門になります。 (追記:というよりはPHPプログラミングで気をつけたい点として読んでいただければ、幸いです。) ■まずは共通点から クラスの継承 PHPJavaのどちらも、同時に1つの親クラスを継承できます。 extendsの書き方も同じです。

    JavaとPHPの文法比較
    da-yoshi
    da-yoshi 2010/11/18
    チェック例外は後発言語がどこも採用しなかったことからみても採用すべきではない。現実のJavaフレームワークも、最近は実行時例外のみを利用するものが多い
  • そろそろIDEよりコマンドラインのほうが理解が深まるという有害な妄想は捨ててはどうか? - きしだのはてな

    Java入門ブックガイド(入門編)よりよき入門書と出会うために」を読んで。 第一印象として、よりよきJava入門ブックガイドに出会う必要があるなということ。 コマンドラインでは慣れ親しめない サブタイトルに「慣れ親しむことが上達の秘訣」とあるけども、コマンドラインで慣れ親しむのは難しいと思います。 「慣れ親しむことが上達の秘訣」が正しいのであれば、IDEで慣れ親しんだほうが上達するのではないでしょうか? 現実問題として、書籍を買って勉強する人は強制されて勉強するわけではないです。自分の時間をやりくりして入門書を読んでいます。 そして、まだプログラムの面白さを知りません。 コマンドラインでコンパイルエラーが出たとき、じっくりとそのエラーを読み解くのではなく、そこでくじけてやめる可能性が高いと思われます。 それよりは、IDEでエラーを入力段階で修正しつつ進むほうがいいと思います。 javac

    そろそろIDEよりコマンドラインのほうが理解が深まるという有害な妄想は捨ててはどうか? - きしだのはてな
    da-yoshi
    da-yoshi 2010/09/01
    元記事流し読みしてたら、10数年ぶりにプログラミングしたとか書いてあって唖然とした
  • Java入門ブックガイド(入門編) よりよき入門書と出会うために(6/6):CodeZine

    補足:入門者に統合開発環境は必要か?筆者の考え よく意見が分かれ入門者が悩まされやすいため、補足しておきます。 筆者は統合開発環境が悪いと言いたいわけではありません。基を理解せずに統合開発環境に頼ってしまうと、自分が何をしたかも意識せずプログラムができてしまいます。基をきっちりと理解した上での統合開発環境の利用は生産性を飛躍的に高めてくれるというのが、周りの技術者から得た感想です。基を理解してからでも遅くはありません。理解を深めるという視点から 『わかりやすいJava』はEclipseという統合開発環境を使います。このような統合開発環境は開発者から煩わしい作業を軽減してくれます。入門段階ではあまりそのありがたさが分からないかと思いますが、次のステップへと進むに従ってその便利さが分かってきます。ただし、『わかりやすいJava』の著者、川場氏もp447から20ページを割き、コマンドライン

    da-yoshi
    da-yoshi 2010/08/31
    「10数年ぶりにプログラミングする機会がありました」・・・おいおい
  • JRuby開発者Charles NutterがOracleの対Google訴訟を考察、「心配するな。特許は大した内容じゃないし、OracleにはAndroidを潰す動機はない」 - ITジャーナリスト星暁雄の"情報論"ノート

    JRuby開発者Charles NutterがOracleの対Google訴訟を考察、「心配するな。特許は大した内容じゃないし、OracleにはAndroidを潰す動機はない」 オープンソースのJRuby(Java実行環境上のRuby言語処理系)開発者であり、元Sun Microsystyems社員でもあるCharles Nutter氏(現在はSunを離れEngine Yard勤務)が、Oracleの対Google訴訟に関して、Blog上で長文の考察を発表している。 Javaテクノロジとオープンソースに強力な関心、知識、実績を持ち、しかも当事者であるSunの事情も承知していて、現在は第3者の立場にある書き手だ。このBlogは、Oracle-Google訴訟の現状を把握する上では必読である。 一言でいって、Nutter氏は「特許は大した内容じゃないし、OracleAndroidを潰す動機は

    JRuby開発者Charles NutterがOracleの対Google訴訟を考察、「心配するな。特許は大した内容じゃないし、OracleにはAndroidを潰す動機はない」 - ITジャーナリスト星暁雄の"情報論"ノート
    da-yoshi
    da-yoshi 2010/08/18
    長期的に考えれば、GoogleはJavaを捨てた方がいいんじゃないかな。今後もヤクザがJavaを支配し続けるんだろうし
  • OracleがGoogleを訴えた理由、「AndroidはJavaと競合する」はどういう意味だろうか

    米国で、オラクルがグーグルを著作権侵害で提訴した、というニュースが流れています。なぜオラクルはグーグルを訴えたのか、その裏にどのような思惑が隠れているのでしょうか? その解説をPublickeyのゲストブロガーとして、ITジャーナリストの星暁雄さんに書いてもらいました。また、記事の要所には星さん自身のブログへのリンクがありますので、興味がある方は参照してみてください。 AndroidJavaの特許と著作権を侵害している? 2010年8月12日、OracleGoogleを訴えた(関連記事)。Oracleの主張は「AndroidJavaプラットフォームに関する特許と著作権を侵害している」というものだ。 一方Googleは翌8月13日に「訴訟には根拠がなく、Googleとオープンソース・コミュニティへの攻撃である」との声明を一部メディアを通して発表した(関連記事)。今後両社は全面対決するこ

    OracleがGoogleを訴えた理由、「AndroidはJavaと競合する」はどういう意味だろうか
    da-yoshi
    da-yoshi 2010/08/17
    Oracleに買われてからJavaがどんどん駄目な方向に向かっている気がする中で、唯一勢いがあったのがAndroidだったんだけどな
  • Togetter - まとめ「javaのクラスローダ同時多発TLのまとめ」

    tissi @tissi まだ実戦投入したこと無いんだけどJava6のスクリプトエンジンは超使える。ゲームとかエンジンはC++で、AIとかLuaで書くけど、あのノリがJavaで使える。ノンストップでビジネスロジックをリロードする箇所を明示的に作れるのがいい。クラスローダいじる系は危なすぎる。 2010-06-15 20:52:52

    Togetter - まとめ「javaのクラスローダ同時多発TLのまとめ」
    da-yoshi
    da-yoshi 2010/06/20
    AOP弄る仕事のときはよくClassLoaderやURLClassLoaderのソースを読んでました
  • 今のJVMに欠けている物

    原文: チャールズ=オリバー=ナター 今日ツイッターで、「JVM及びJDKが、あらゆるプログラミングにおいて真にイケてるプラットフォームになる為には未だ幾つかの欠陥が有る」と呟きました。沢山の人から「もっと詳しく」とせっつかれたので、ここに短く書き起こしておきます。勿論、これで全部という訳ではないのでしょうが、今日思いついたのはこれだけです。 ゼロから起動する際のパフォーマンス現存するJVMの起動はかなり速いですが、Java 7でのHotSpot(訳注:Sun及びオラクルのJVM)にはこれをより良くする為の改良が盛り込まれています。普通、こういった改良は、バイトコードを予め検証したり(或いは検証の為のヒントを与えたり)、クラスデータを幾つかのプロセスで共有したり、在り来たりではありますがプログラムのロード時間やリンク時間を短縮する工夫を凝らす事で成し遂げられます。ところが、多くのアプリケー

  • Time to move on... : On a New Road

    Yes, indeed, the rumors are true: I resigned from Oracle a week ago (April 2nd). I apologize to everyone in St Petersburg who came to TechDays on Thursday expecting to hear from me. I really hated not being there. As to why I left, it's difficult to answer: just about anything I could say that would be accurate and honest would do more harm than good. The hardest part is no longer being with all t

  • Eclipse で Pluggable Annotation Processing API - taediumの日記

    Pluggable Annotation Processing APIJava6から導入されたAPIです。これをつかうと、コンパイル時にアノテーションを読んでコードを生成したり、検証したりできます。javac実行時に処理できるのはドキュメント見るとわかるのですが、実はEclipseのビルド時にフックできます(Eclipseのエディタ上にエラー表示とかもできる)。Eclipseで動かそうとして情報をあさったんですが、なかなかわかりやすいものが見つからなかったのでここに書いておきます。実は簡単なんですけど、それがどこにも見当たらなかったんですよね。 Pluggable Annotation Processing APIの説明サイトはいくつかあって最後にリンクはっておきました。 EclipseはJava6で動かそう まずは、EclipseがJava6でうごいていることを確認するといいです。

    Eclipse で Pluggable Annotation Processing API - taediumの日記
  • Java 7はいらない? | エンタープライズ | マイコミジャーナル

    Java Programming Language Stephen Colebourne氏が自身のブログにおいて次の3つの記事を公開した。タイトルどおり、Java 7はいらない、という内容だ。 No more Java 7 Shedding new light on No Java SE 7 JSR Sun, Apache & IP - in pictures! 4年ほど以前の話になるが、Apacheは2005年5月14日(米国時間)、J2SE 5のオープンソースソフトウェア実装をめざしてHarmonyプロジェクトを開始した。しかし開発はリリース直前で頓挫する。それはJavaとしてリリースするためにクリアすべき互換試験キットの利用に制限が設けられていたためだ。この条項はOSSでプロダクトを公開するというApacheの方針とは相容れないため、Apacheは契約を結ばず文句を言いつづけてきた。

  • なんも考えずに"リテラル".equals(s)と書け - 2008-12-04 - きしだのはてな

    "".equals(stringVariable) は改悪だろうについて。 まず、空文字との比較は場合による。というか、空文字との比較なら s != null && s.isEmpty() か s == null || s.isEmpty() などと書くほうがいい。 あと、件の問題は改悪とは言わないまでも、問題文だけをみてこれを改善といえるほどでもないので、あまり良くない。 中身があるリテラルとの比較。 基的な方針として「二通りの書き方があるとして、実行コストや記述コストが同じならより安全で判断の必要がない書き方を選ぶべき」というのがある。というか、これはコードの書き方だけではなく、すべての行動にあてはまる。判断不要で安全な方法があるのなら、それを選ぶべきだ。シャワーをまっすぐにシャワー置きにかけずに横向きにかけるというのは、これにあてはまる。確かにシャワー置きにはシャワーをまっすぐ置き

    なんも考えずに"リテラル".equals(s)と書け - 2008-12-04 - きしだのはてな
  • 最近のJavaEE事情 ~Java EE 6の向かう先~

    Java EE 5のリリースから2年以上の時間が経ち、次期仕様である「Java EE 6」は仕様策定状態ですが、あまりまとまった情報がありません。稿ではJava EE 6に含まれる予定の技術を解説し、今後のエンタープライズ分野のJavaが進む方向について考察したいと思います。 はじめに エンタープライズアプリケーション向けのJavaの仕様「Java EE」の現行バージョンは「Java EE 5」です。このJava EE 5は、EJB 3.0を中心にDependency InjectionやPOJOを用いたO/Rマッピングなど、Java EE/J2EEの主流に対するオルタナティブとして出てきた技術を取り込んだ、従来のJava EE/J2EEから大きく変化したバージョンでした。 このJava EE 5のリリースから2年以上の時間が経ち、次期仕様である「Java EE 6」は仕様策定状態ですが

    最近のJavaEE事情 ~Java EE 6の向かう先~
    da-yoshi
    da-yoshi 2008/10/22
    JPA1.0でもpersistence.xmlはクラスパス上のMETA-INFフォルダ内に置けば動きます
  • OpenJDK、Mac OS XとFreeBSD対応開始 | エンタープライズ | マイコミジャーナル

    OpenJDKがマルチプラットフォームへ向けて動き出した。Sun Microsystemsが開発してきたJavaはこれまでSolaris、WindowsLinuxをターゲットにしてきた。もちろんこれらがOSシェアの多くをカバーするのだが、それ以外のOSも存在しているわけであり、コードベースはマルチプラットフォーム向けというほどは整理されていない状況にあった。 こうした中、FreeBSDなどのBSD系OS向けJavaをOpenJDKにマージするかどうかOpenJDK Portersグループで投票が実施され、賛成多数で移植作業実施が決定した。BSD系OSへの移植は従来のライセンスにしたがっておこなわれていたためそのままではGPLで提供されているOpenJDKにはマージできない。今回、Sun Microsystemsからパッチ移植の許可がおりたこともあり、同移植作業の認定につながった。Free

  • 静的オブジェクト指向は設計者が苦労を背負込むシステム

    2009-09-26 北陸Scala第1回開催 2009-04-04 第十四回java-ja勉強会 - 第1回チキチキ 地方巡業withひがやすを飲み会in富山開催 2009-03-20 わんくま大阪勉強会#28 「ジェネリクスを使おう!」 2008-11-08 わんくま富山勉強会#1 開催 2008-08-09 わんくま東京勉強会#23 「C#登場前夜」 2008-04-01 *で始まるタイトルはエイプリルフールネタです 2008-01-26 わんくま東京勉強会#16 「ライブプログラミング」 2007-12-08 わんくま名古屋勉強会#1 「わんくま初めてのJava」 2007-07-28 開店 みねこあさんのところで挙がっていた、 静的オブジェクト指向と動的オブジェクト指向の軽さについての話題から。 Javaは経済的事情をうまく捉えて普及した プログラミングの効率と経済で書いていると

  • これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ

    NetBeansの中の人経由でこれを発見した。 Without default value for source encoding, platform encoding is used, which is bad for build reproducibility. Then setting a default value consistently across every Maven plugin will improve build reproducibility. Proposed default value: ISO-8859-1, which must be supported by every JVM (see java.nio.Charset) and is already the default value for some plugins (the majority of

    これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ