toufuの日記 このページをアンテナに追加 RSSフィード

2018-01-03 javaを学ぶ(2) このエントリーを含むブックマーク

Eclipse(Version: Oxygen.1a Release (4.7.1a))を導入後、GitHubリポジトリからExcel Streaming Readerライブラリを取得する。

このライブラリMavenプロジェクトとして提供されている。

依存している緒ライブラリ群を、ネットから自動ダウンロードしてくれるので導入が容易だ。

導入後に、Eclipseのパッケージ・エクスプローラを眺めていると、JREシステムライブラリーという文言が気になった。

今まで、ここら辺のことについてあまり深く気にしたことはなかったけど、アイコンの形といい、他のパッケージやフォルダとの関係性といい、

いまいち理解が不十分だということに何か後ろめたさすら感じてしまった。

このアイコンは、クラスパスコンテナーを表すアイコンで、Maven 依存関係というものも同じアイコンの形をしている。

ビルドするときに依存するライブラリを表示するものということらしい。

JREシステムライブラリー(javaSE-9)のアイコンを展開してみると、63個の牛乳瓶のようなアイコンが縦に並んでいる。

一番上がjava.baseで一番下がoracle.netである。その真横にちょっと薄めの文字で表示されているのは、jarファイルのフルパスである

なるほど、jarファイル複数classファイルを固めたものから、これらjarファイルのフルパスの集まりクラスパスコンテナークラスパスの入れ物)ということなのか。

ちなみに、クラスパスとは「jvmまたはjavaコンパイラ対象とするクラスファイルのある場所」ということなである

JREシステムライブラリーjavaアプリケーション動作するための基本的ライブラリ群が表示されている。

これらのライブラリ理解することはjava言語としての機能理解する上でとても大事なことであろうと感じる。

トラックバック - http://d.hatena.ne.jp/toufu/20180103

2017-12-18 javaを学ぶ このエントリーを含むブックマーク

プログラマを30年近くやっているけど、プログラム言語仕様とか、言語機能の正しい使い方をしっかりと学んでこなかったような気がする。これでは、万年初級プログラマの域を脱することはできないと思い、java言語をしっかり学んで行こうと思う。そして、眠っていたこブログでその足跡を残そうと思った。しかしながら私の怠け癖のため、不定期での更新になると思われるが。

今、Javaライブラリ勉強している。MicroSoft Officeのエクセルファイルを扱う「Apache POI」が提供しているライブラリである。単にPOIと呼ぶことにする。現在POI英語サイトを見ると「15 September 2017 - POI 3.17 available」とあるから3.17が最新なんだろう。3.17Java 6をサポートする最後バージョンであるということで、次のバージョンはJava8以上をターゲットした4.0.0が出るらしい。

Apache POIサイト英語

https://poi.apache.org/

実はこのPOIを今年の4月から使っているのであるが、そこそこ大きなエクセルファイルを扱うとOutOfMemeoryになってしまうという問題があることを最近知った。私のマシンでは百万行2列でギブアップである。物理メモリは4G。それで、「StreamingReader」というライブラリが登場して読み込み時に関してはこの問題解決している。せっかくだがからこのライブラリを後学のため、ちょっと見てみようと思う。

●StreamingReaderのサイト

https://github.com/monitorjbl/excel-streaming-reader

このライブラリメモリバッファリングされたデータファイルシステムに出力して、そのファイルを通してデータを扱う。バッファリングされるデータサイズを設定することで上限メモリを超えないように制御できる。

トラックバック - http://d.hatena.ne.jp/toufu/20171218

2017-05-19 Effective JAVA(1) このエントリーを含むブックマーク

抽象クラスよりインターフェースを選ぶ方がいいと言う。

それでは、抽象クラスインターフェースとは何が違うのだろう。

  1. 抽象クラス単一継承のみが実現できるが、インターフェースは多重継承ができる。
  2. 抽象クラスメソッド実装定義できるが、インターフェースはできない。
  3. 抽象クラス継承した場合抽象メソッドのみを実装すればよいが、インターフェースはすべてのメソッド実装しなければならない。

抽象クラス継承という構造をもたらすが、インターフェースは型を定義する。

トラックバック - http://d.hatena.ne.jp/toufu/20170519

2016-08-13 自分の進むべき道 このエントリーを含むブックマーク

最近重要判断を迫られているとつくづく感じる。いわゆる人生の岐路である。私の人生もとっくに折り返し地点を過ぎてしまった。後先はそう長くない。私は52になるが、もうすぐ七か月になる娘がいる。誕生してから今まで事情があって海外にいるが、来月には誕生以来、彼女に会う予定である。この娘とは、今の自分のままでは会う資格はないのである彼女が生まれる前、彼女特別存在としてこの世に生を受けるだろうと私はなんとなく感じていた。今の奥さんについても、出会う前に、こういう女性が来るだろうなということをある程度考えていて、確かにその通りになった。私の娘は、私にとって、魂の上では先生となる存在であろうと感じている。そんな彼女に、私の今の心の状態で会ってはいけないであろう。彼女を迎えられるだけの自分を作らなければならない。それは自分の使命であり、最低限の義務である。私は正しい自分を作り、彼女人生の先輩として彼女を迎えなければならない。

トラックバック - http://d.hatena.ne.jp/toufu/20160813

2016-04-13 受け身になったらお終い このエントリーを含むブックマーク

このブログは1ヶ月半後に書いています。

依存症という言葉がある。

人間は何かに縋って生きているものだ。

全く何ものにも頼らずに生きている人というのは見たことがない。

金、女、仕事、人、タバコetc

対象は違えど必ず何かに依存している。

しかし依存は心の隙間なのである

依存は囚われる心なので後でいろいろと不都合をもたらす。

まず依存すると、そこで思考が停止することが多い。

よって、間違っていたことでも是正することが困難になる。

自分を振り返ることができないからだ。

人によっては犯罪まで犯す。麻薬などがそう。

依存とは言葉を変えれば、執着である

私が人に依存して、その人の言葉に執着した。

よってその言葉の外から抜け出すことができなかった。

これは一種の洗脳といってもよいのかもしれない。

しかし相手が私を貶めようとしたわけでもなく、

自分から落ちていったのである

ものにも頼らない。

執着しない。

そこに正しさがあるのだ。

トラックバック - http://d.hatena.ne.jp/toufu/20160413
Connection: close