タグ

PL-Javaに関するsasaplus1のブックマーク (76)

  • honeplusのメモ帳 [Java]CSVライブラリの比較

    ※ 上記はこの記事を書いている2010年10月時点の内容です。 このうち、実際に使おうと試してみたのは「opencsv」と「Super Csv」、「OrangeSignal CSV」の三つ。 他は、情報収集の時点でいまいちピンと来なかったり、環境面で使えなかったりしたので、除外した。 他にもまだまだありそうだが、調べてて名前を見かけるのはこれぐらいかと思われる。 (その他、Commons LangのStringEscapeUtilsにもCSV関係のメソッドがあるが、エスケープ/アンエスケープしか出来ないので問題外。) で、使ってみた感覚としては・・・結論として「Super Csv」が一番使い勝手がよさそうだった。 いろいろと高機能ではあるらしいものの、単純にCSVMapのように読み込むだけであれば簡単なコードでさくっと書くことができる。 こういう使い方ができれば、多くの場合目的をカバーで

  • JavaとScalaとC#のジェネリクス機能比較表 - Onion開発しつつ、PEGEXを開発する日記

    JavaScalaとC#のジェネリクスは、いずれも継承を持ったオブジェクト指向言語においてParametric Polymorphismを実現するための手段であり、それぞれ異なった特性を持っている。というわけで、それぞれの言語においてジェネリクスがどのようにサポートされているかを比較した表を用意してみた。後で気が向いたら、各項目の説明を追加するかも。 Java(5.0以降) Scala C#(4.0) ジェネリックなクラス ○ ○ ○ ジェネリックなメソッド ○ ○ ○ 型パラメータの上限 ○ ○ ○ 型パラメータの下限 × ○ × 型パラメータの推論 ○ ○ ○ 全ての型のサブタイプ(ScalaにおけるNothing) × ○ × definition-site variance × ○ ○ use-site variance ○(Wildcard) ○(Existential Typ

    JavaとScalaとC#のジェネリクス機能比較表 - Onion開発しつつ、PEGEXを開発する日記
  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
  • TEXTdrop|翻訳・オンラインカジノ 日本円のプログラミング

    Text Drop 翻訳、プログラミング、写真、カメラなどについて書いてます。スタイルガイド/コーディング規約やチートシートなど、ちょっと便利なものを翻訳しています。 TEXTdropでは、C++プログラマーも利用できるパワフルな機能を搭載。C++のコードを書く際に行う手順や避けておきたい工程などを詳しく説明しています。コードスタイルラインの日語版では、日語訳やJ P Yへの換金もサポート。話題性があるオンラインカジノ 日円変換や入金の際のバグにも対応しています。統一性のあるコードを書くためのポイントや規約の種類を参考にする事ができます。

  • 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
  • コンパイル方法 - スキルアップ輪講

    予備知識 † プログラムのコンパイルを理解するにはいくつかの予備知識が必要です。ここでは前準備として、いくつかの予備知識について説明します。 ↑ 機械語とアセンブリ言語 † コンピュータが理解できる言語は機械語だけです。よって、プログラムは最終的に機械語で実現されることになります。たとえば、9+11=20を計算する機械語は、16進数で表すと b0 09 04 0b となります。これだけでは人間には何のことやらさっぱりわかりません。 そこで、機械語を人間にもわかりやすい表記したものがアセンブリ言語です。先ほどのプログラムをアセンブリ言語で記述すると、 mov al,09 add al,0b となります。一般的に、mov、addなどの命令部分をオペコード、alなど命令に渡す引数をオペランドと呼びます。アセンブリ言語で記述されたソースコードはアセンブラで機械語のプログラムに変換されます。 どんな

  • Javaバイトコード入門

    JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライドToshiakiArai

    Javaバイトコード入門
  • Archive: Java[tm] Technology Products Download

    The Oracle Java Archive offers self-service download access to some of our historical Java releases WARNING: These older versions of the JRE and JDK are provided to help developers debug issues in older systems. They are not updated with the latest security patches and are not recommended for use in production. For production use Oracle recommends downloading the latest JDK and JRE versions and al

    Archive: Java[tm] Technology Products Download
  • あなたの知らない、4つのマニアックなJava文法

    あなたの知らない、4つのマニアックなJava文法:【改訂版】Eclipseではじめるプログラミング(17)(1/3 ページ) これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipse 3.4とJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります 知ってました? Javaでも、あんなことやこんなことが… 前回の「“ネスト”した型で始める軽量Javaプログラミング!?」では、通常のJavaプログラミングよりもライトウェイト(軽量)なプログラミングをするために、「ネストした型/クラスとは何か」について基的な説明をしました。 ネストした型をきちんと利用できるようになるには、「staticのネストしたクラス」「内部クラス(インナークラス)」「エンクロージン

    あなたの知らない、4つのマニアックなJava文法
  • 時間の比較

    java.util.Date の場合、after(),before(),equals(),compareTo() にて比較可能。 但し、比較はミリ秒単位で行われる為、注意が必要。 ソース記述例 Date date1 = new Date(); Date date2 = new Date(); date1.before(date2); date1.equals(date2); Calendar cal1 = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); cal1.set(Calendar.HOUR, 0); cal1.set(Calendar.MINUTE, 0); cal1.set(Calendar.SECOND, 0); cal1.set(Calendar.MILLISECOND, 0); cal2.set

  • 「検査例外はアジャイルやオブジェクト指向の考えに反するという事実」について一部誤解あり - かとじゅんの技術日誌

    追記: id:Nagiseさんからエントリいただきました。 というわけで、ややしつこく感じられるかもしれないけど誤りだと思うところはツッコミを入れさせてもらいます。人に恨みがあるとかそういうわけじゃなくて、説に用事があるってところをご理解いただければ幸いです。 こちらも建設的な議論をしたいと思っているので、もちろん、そのつもりです。 中間のクラスが〜という話題は、開放閉鎖原則を破って境界面に変更を加えた場合に話であって、検査例外が開放閉鎖原則を破るわけじゃない。 なるほど。よくわかりました。 目的と手段で分離してみた場合、「開放閉鎖原則」を「検査例外」を使って破っているだけであって「検査例外」自体の存在が「開放閉鎖原則」を破っているわけでない。「開放閉鎖原則」を破るのは「非検査例外」でもできるわけで、直接の因果関係は成立しないということですね。これは、私の論じ方に問題あったようです。ここに

    「検査例外はアジャイルやオブジェクト指向の考えに反するという事実」について一部誤解あり - かとじゅんの技術日誌
  • Play framework で Java Web アプリケーション開発をもっと簡単に

    Play framework で Java Web アプリケーション開発をもっと簡単に ついに Web デベロッパによって Java フレームワークが開発されました。 ぶくぶくに膨れ上がったエンタープライズ Java をクリーンに置き換える魅力に気付いてください。 Play は開発者の生産性に注目し、RESTful アーキテクチャを目指します。 ★ リリース 1.0.2 ダウンロード そして はじめてみよう ! 概要 バグを直したらリロードするだけ Java ファイルを修正して、保存して、ブラウザをリロードすれば、すぐに結果を見ることができます! コンパイルもデプロイもサーバの再起動も必要ありません。 ステートレスモデル Play は "Share nothing" なシステムです。 同じアプリケーションの多数のインスタンスを複数台のサーバ上で動作させることで容易にスケールし、REST に

  • Play Framework - Build Modern & Scalable Web Apps with Java and Scala

    Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Pekko (Play 3) and Akka (Play 2), Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications. Developer friendly. Make your changes and simply hit refresh! All you need is a browser and a tex

  • 列挙型

    Enumクラス 従来の Java 言語、及び Java Framework API の大きな問題の一つに、列挙型が存在しないということがありました。 そのため、Java API では、方向や種類を表すための一定の定数コレクションをインタフェースの数値定数メンバとして管理していました。 確かにこの方法で実装することは可能でしたが、便利なものとはいえません。 例えば、方向を表す定数は javax.swing.SwingConstants インタフェースで定義されています。 メンバは全て数値で、SwingConstants.BOTTOM や SwingConstants.LEFT という形で値を得ることができました。 SwingConstants インタフェースを実装するクラスの例に javax.swing.JLabel などがあります。 ラベル内容の X 軸に沿った配置方法を指定する getH

  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

  • オブジェクト指向と型システムの狭間で例外を考える - プログラマーの脳みそ

    「検査例外はアジャイルやオブジェクト指向の考えに反するという事実」について一部誤解あり - じゅんいち☆かとうの技術日誌のあんまりな釣りタイトルにやれやれだぜ、と思いつつも非チェック例外多用作戦のトレードオフ認識 - 都元ダイスケ IT-PRESSでツッコミたかったことが突っ込まれてしまってるので、しょうがないのでオブジェクト指向と型システムの話でもしよう。 Javaの静的型システム ≠ オブジェクト指向 僕が10年ほど前、Javaを使い始めてからしばらくたってやっとオブジェクト指向プログラミングが掴めて楽しくなってきた頃合、これこそがオブジェクト指向なのだと誤解をしていたころ、オブジェクト指向は型がチェックできてなんぼだと思ってた。 javascriptのプロトタイプ型のオブジェクト指向に憤り、「あんなものはオブジェクト指向ではない」などと思うのがJavaプログラマ的中二病というやつだが

    オブジェクト指向と型システムの狭間で例外を考える - プログラマーの脳みそ
  • 例外との正しいつきあい方

    例外ってなに? プログラムを書いていると、try ... catch を書くのがめんどうになったことはありませんか。 たとえば、リスト 1 はファイルを読み込んで単に標準出力に出力を行うプログラムです。これを javac でコンパイルすると、図 1 のようにコンパイルエラーが起きて、コンパイルできません。そこで、「しょうがない、try ... catch を書くか」といって、リスト 2 のように書いたとします。「これでコンパイルはできたから OK」と済ませていませんか。 これでは例外から得ることのできるさまざまな有用な情報を捨ててしまっています。それだけでなく、想定していた動作を行うことができないかもしれません。 逆にいえば、例外を有効に使いこなせるようになれば、プログラムの堅牢性を高めることができ、また保守性も向上させることが可能です。そんな例外の基から例外を使いこなす

  • Java ID3 Tag Library

    Project Abstract This library reads song information, such as song title, artist, and album, from an MP3 file. It supports ID3v1, ID3v1.1, Lyrics3v1, Lyrics3v2, ID3v2.2, ID3v2.3, and ID3v2.4 tags. MP3 Frame Headers can also be read. There is a FilenameTag, a ID3v2.4 tag that is intelligently derived from the file name. It contains tag synchronization utilities, multiple save options, and easy tag

  • 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
  • Ubuntu 10.04 (lucid) でSunJDKを使う方法 - ヽ( ・∀・)ノくまくまー - s21g

    Ubuntu 10.04 では、JDKのデフォルトが SunJDK から OpenJDK に変更され、SunJDK はパッケージにも含まれなくなりました。 恐らく、今後の Sun によるサポートを不安視する声が多く、 将来的に安定したパッケージリリースを行うために独立する流れになったのだと思われます。 [Ubuntu] Sun JavaはPartnerリポジトリに移動しました しかしながら、OpenJDKは若干機能的にSunJDKに遅れている事もあり、 SunJDKが使えないと困る局面があるのも事実です。 その場合、以下のpartnerパッケージを追加することで、 10.04でもSunJDKが利用できるようです。