タグ

Javaに関するkhwarizmiのブックマーク (35)

  • TechCrunch

    Walking through Token2049, it was hard to tell that the crypto industry was going through a “winter” phase. The crypto conference held in Singapore in September attracted an unprecedented

    TechCrunch
    khwarizmi
    khwarizmi 2012/08/31
    こんな大きな脆弱性が残ってるものなのね。
  • Javaプログラマであるかを見分ける10の質問 - やさしいデスマーチ

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

    Javaプログラマであるかを見分ける10の質問 - やさしいデスマーチ
    khwarizmi
    khwarizmi 2011/03/05
    Javaを使わなくなって2年経つけど,意外と覚えてるもんだな./今どき,2とかパフォーマンス的に意味あるのかな?StringBuilder使えってのは理解した上で.
  • Press Enter■:エンジニアライフ

    その夜、日付が変わる直前、ぼくはコメントを追記した。/*返事を待ってますm.h*/きっと君は来ない。翌朝、そんな気分でソースを開いたぼくは、e.kさんの返事が書き込まれていることを発見して小躍りしたく...

    Press Enter■:エンジニアライフ
  • 実用を考えると、文字列リテラルとの比較は文字列リテラルが先のほうが見やすい - きしだのHatena

    もう落ち着いた話題だけど、SwingWorkerのサンプル書いて思い出した。 文字列リテラルの比較の話だけど、"リテラル".equals(s)よりもs.equals("リテラル")のほうが見やすいとか意味を反映しているとかあった。 けど、実際にJavaで文字列リテラルの比較などという無粋なことをする場合は、select〜case的な使い方をすることがほとんどであるような気がする。 PropertyChangeListenerであれば if("progress".equals(evt.getName(){ ・・・プログレスバーの処理 } else if("width".equals(evt.getName()){ ・・・幅がかわったときの処理 } else if("height".equals(evt.getName()){ ・・・高さがかわったときの処理 } のような。 HTTPだと if

    実用を考えると、文字列リテラルとの比較は文字列リテラルが先のほうが見やすい - きしだのHatena
    khwarizmi
    khwarizmi 2008/12/09
    なんか"文字".methodの形式ってJavaっぽくないからすごく気持ち悪いと感じてた(Rubyを覚えて以降そう思わなくなったけど).リテラルが直接メソッドを呼び出せる例ってこれだけじゃない?
  • Cの老害 - odz buffer

    UNIX と C ってのは,やっぱり最悪のコンピュータウィルスだな.この 2 老害のせいで,計算機科学の発達は 20 年遅れた.こいつらのバッドノウハウにそそぎこまれた, 確かに autotools とかバッドノウハウ以外の何者でもないよなぁ。ないともっとアレなんだけど。 で、これを読んで、ふと思い出した。昔 Java-House で高木さんが似たようなこと言ってたような・・・ あった、これだ。 > > 悪しき習慣です。CやC++がプログラミングに携わる人のすべての必携の言語 > > として蔓延りかけてしまったことは、世界の情報産業の生産性をいったいど > > れだけ損失させたか計り知れません。 > > すべての必携の言語にCがなり得たのは、それだけ優れた言語だったからでしょう。 いいえ。一部の人が使うのには優れていますが万人が使うべきものではあり ません。C以外が普及しなかったのは、様々

    Cの老害 - odz buffer
    khwarizmi
    khwarizmi 2008/05/11
    Cのポインタ信仰は確かによくわからないものがある
  • Javaの冗長な記法って小クラス主義の現れではないかな - 矢野勉のはてな日記

    Java以下は無駄に長い駄文です。なんか書いてみたはいいもののうまくまとまらなかった。ごく一部しか表せなかった気がする。これではInputStreamReaderとかがたくさんオブジェクトを連結しないと使えないめんどくささをなぜ許容できるか、しか表せてない... もともとは「 Java における質的でない記述がどのように大規模開発に役立つのか - kwatchの日記」がらみの話です。文中にいくつか「アクセッサが簡潔に定義できない」「FileReader に文字コードを渡せない」のような例があって、「それらが改善されたら大規模開発になにか不利益があるのかどうか」という具体的な質問があったので私はそこにコメントしときました。私はコメント欄に「不利益なんてないよ」と回答しました。実際のところ、後方互換性が維持され、言語としての統一性が維持されるなら別に不利益なんてあるわけない。あるとしたらマネ

    khwarizmi
    khwarizmi 2008/05/04
    javaが小クラス主義になる理由の半分は趣味だろうが,残りはSerializeを考えると,クラスを保存用と操作用に分けたくなるからじゃないかな.
  • Java における本質的でない記述がどのように大規模開発に役立つのか - kなんとかの日記

    まじめな話に切り替えて、Java屋さんJava信者さんに質問したいと思います。 質問: Java における、質的でない冗長な記述は、どのように大規模開発に役立つのでしょうか。 質問の背景を説明すると、以前の晒されエントリで、Java における質的でない記述の数々について話題にしました。それに対する反応で、『Java は大規模開発向けだから記述が長くてもいいんだ (または長くなくてはいけない)』という意見が多くあります。 たとえば、ブックマークコメントより: エンタプライズ分野であの大伽藍が求められたのだから仕方ないですよ。 エンタープライズ分野のような大規模開発こそ、必要な情報を簡潔にわかりやすく記述する必要があると思ってたんですが、世の中は違うようです。 同じくブックマークコメントより: Java屋の怠慢は高層ビル建築をどうサボるかであって、犬小屋を作る時にどうサボるかという視点とは

    Java における本質的でない記述がどのように大規模開発に役立つのか - kなんとかの日記
    khwarizmi
    khwarizmi 2008/05/03
    ライブラリと言語をごっちゃにして批判されてもねえ… ところで,Javaをむやみに批判したがる人ってperl4脳の人が多いと思うのは自分だけ?意味もなくHashのArrayを作ったりとかw
  • Javaにvariant型を実装した - *「ふっかつのじゅもんがちがいます。」withぬこ

    最近Hadoopを使うために5〜6年ぶりにJavaをいじっています。 そんで、ちょっとばかり耐えがたいわけです。 例えばありがちな例題を挙げると、 ["google", "検索","開発"] のようなタグ(文字列)のリスト(でも配列でもなんでもいい)を受け取って [ {tag=>"google", enc=>'google'}, {tag=>"検索", enc=>'%E6%A4%9C%E7%B4%A2'}, {tag=>"開発", enc=>'%E9%96%8B%E7%99%BA'} ] のようなハッシュテーブルのリストに変換しなさい。 ただしパーセントエンコーディングを行う関数(でもメソッドでもなんでもいい) uri_encodingは与えられているものとする。 こんなこと、Webアプリケーションではよくやるじゃないですか。 んで、実際Perlなんかでは結構簡単に書けて #my @tag

    khwarizmi
    khwarizmi 2008/03/19
    要素2コのMapなんてオーバーヘッドを考えると発狂しそうだ.何で,素直にクラスを仕立てないんだろ.
  • The X10 Programming Language

    X10 is an experimental new language currently under development at IBM in collaboration with academic partners. The X10 effort is part of the IBM PERCS project (Productive Easy-to-use Reliable Computer Systems) in the DARPA program on High Productivity Computer Systems. The PERCS project is focused on a hardware-software co-design methodology to integrate advances in chip technology, architecture,

    khwarizmi
    khwarizmi 2008/03/13
    あとで読む
  • Java と巨大メモリ/ファイル - odz buffer

    Java の配列の要素数、インデックスは int じゃないとだめなので、最大で 2^31-1 個の配列しか取れない。これってそろそろ深刻な問題になっているような気がするのであるが、あんまり聞かないなぁ。一応、Bug Database にはのっているけど、Vote が少ないし、Priority も低い。 ref:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4880587 これは配列に限った話ではなくて、たいていの API でオフセット指定は int なので、これまた 2^31 以上になると問題が発生する可能性がある。いまどき 2GB以上 のファイルとか珍しくもないから、多分どこかで問題になっているんだろうなぁ。

    Java と巨大メモリ/ファイル - odz buffer
    khwarizmi
    khwarizmi 2008/03/10
    確かに,巨大行列を1D配列で表現した時にはまった
  • Java が使いにくいのは静的だからではない - kwatchの日記

    Java が使いにくい言語であるというのは、世界中の LL ファンが皆思っていることだろうから改めていうことでもないけど、使いにくいのは静的言語だからというのは間違っている。Java が使いにくいのは単に Java の設計者のセンスが悪かっただけであり、静的言語のせいではない。 たとえばこんなコード。 public Map<String, List<String>> example() { List<String> list = new ArrayList<String>(); list.add("foo"); list.add("bar"); list.add("baz"); Map<String, List<String>> map = new HashMap<String, List<String>>(); map.put("names", list); return map; }

    Java が使いにくいのは静的だからではない - kwatchの日記
    khwarizmi
    khwarizmi 2008/03/06
    何もしないpublicなgetter,setterを作るなら,変数をprivateじゃなくてpublicにすれば1行で済むよw
  • Parallel Java Library

    Prof. Alan Kaminsky Rochester Institute of Technology -- Department of Computer Science Overview Books and Publications Preinstalled Version Download Version System Requirements Installation Usage License Documentation (Javadoc) Overview Parallel Java (PJ) is an API and middleware for parallel programming in 100% Java on shared memory multiprocessor (SMP) parallel computers, cluster parallel compu

    khwarizmi
    khwarizmi 2007/09/21
    並列計算用のライブラリ.並列対応の疑似乱数もあり
  • MacのJavaは日本語環境を考慮してない? - とかいろいろ

    まあ、ちょっとこんなコードを書いたと思ってください。(はてなの仕様上インデントされてません) import java.awt.*; import java.awt.event.*; import javax.swing.*; class Swing_Test1 extends JFrame{ private JTextField inputField = new JTextField(20); private JLabel testLabel = new JLabel(); { setLayout(new FlowLayout()); inputField.addKeyListener(new keyListener()); add(inputField); add(testLabel); testLabel.setText(String.valueOf(inputField.getTex

    MacのJavaは日本語環境を考慮してない? - とかいろいろ
    khwarizmi
    khwarizmi 2007/07/27
    恐怖体験
  • Titanium Project Home Page

    Titanium is an explicitly parallel dialect of Java developed at UC Berkeley to support high-performance scientific computing on large-scale multiprocessors, including massively parallel supercomputers and distributed-memory clusters with one or more processors per node

  • mpiJavaの利用法

    mpiJavaの利用法 梶原 広輝, 廣安 知之, 三木 光範 ISDL Report  No. 20040809005 2004年 7月 7日 Abstract 報告では,並列計算プログラミングのライブラリとして利用されているMPI(Message Passing Interface)におけるJavaでの実装mpiJavaについての報告である. mpiJavaの概要, インストール方法, API, サンプルプログラムを調査し, その結果Java環境において並列計算プログラミングを行うことができた. 1  はじめに 並列計算プログラミングでは, メッセージパッシングを用いるのが一般的である. メッセージパッシングはプロセス間のデータの移動をプログラム中に明示的に記述するプログラミング手法であり, メッセージパッシングのAPIの標準としてMessage Passing Interf

  • 「メモリーを意識してみよう」第4回 進化するメモリー管理:ITpro

    先々週にHotSpot VMでのメモリー管理について解説しました。ここでキーとなるのは世代別GCです。 HotSpot VMで世代別GCが採用される以前は,Old領域のGCで使用されるMark & Sweep GCだけでした。世代別GCが導入されたことにより,GCのパフォーマンスは劇的に向上したのです。 しかし,GCの進化はここで終わってしまったのではありません。Java SE 6(開発コード名Mustang)にいたるまで,様々な改良が加えられてきました。 今週はそれらの新しいGCの手法について解説していきます。その前に,まずは基となるMark & Sweep GCを説明しましょう。 Mark & Sweep GC Mark & Sweep GCは二つのフェーズでGCを行います。 はじめのフェーズで,使用しているインスタンスに印をつけます(Mark,図1a)。Markにはルートインスタン

    「メモリーを意識してみよう」第4回 進化するメモリー管理:ITpro
  • http://d.hatena.ne.jp/nokuno/20070114/1168762326

  • スレッドの実際 -- Pthread と Java

    オペレーティングシステム II 電子・情報工学系 新城 靖 (臨時代講) <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/classes/os2-2003/2004-01-13 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/classes/ http://www.is.tsukuba.ac.jp/~yas/index-j.html ■スレッドの実際 C言語での利用 -- Pthread Java言語での利用 (言語組込み) ◆スレッドとは スレッド(thread) あるいは、 軽量プロセス(lightweight processes) とは、 1つの保護の単位としての プロセス(タスク,あるいは,アド

    khwarizmi
    khwarizmi 2007/01/18
    このスケジューリング方式を見る限りJavaで使用CPUを制限するのは実際に割り当てるしかなさそう.
  • https://bugs.java.com/?bug_id=4349850

    khwarizmi
    khwarizmi 2007/01/17
    Java availableProcessorsの仕様 適切な呼びだしによりJVMの使用可能プロセッサ数は変化. linuxの場合には変化しない. tasksetは動作はするが戻り値には反映されない.
  • Javaでコマンドライン引数を処理する

    文書は、Javaにおけるコマンドライン引数の処理方法について検討・紹介するものです。まずはじめに、コマンドライン引数を含むパラメータの設定方式について整理し、それから題のコマンドライン引数の処理について見ていくことにします。コマンドライン引数の処理には、JDKの範囲でコーディングする方法の他、オープンソースのライブラリを利用する方法について紹介します。最後に、アノテーションを使ったコマンドライン引数の処理を作っていきます。 プログラムにおけるパラメータ設定 はじめに 多くのプログラムでは、パラメータとして設定値を外から与えることが必要となります。パラメータをプログラム中に記述する、いわゆるハードコーディングをしてしまうと、パラメータを変更するためにはソースコードを修正して再ビルドすることになってしまうからです。したがって、プログラムを実行するときにパラメータを外部から取り込んでその設定