pre{ white-space: pre; } .entry-content pre{ word-wrap: normal; }

ぶらコード

ぶらりオープンソースの旅

ClassLoaderのお勉強

最近、PlexusのClassworldsをぶらついている訳だが、今日はClassworlds全体を俯瞰的に歩き回ってみた。
つまりは、このClassworldsの存在意義というか、こいつは何者で、こいつを使うことで何が嬉しいのかを掴みたかった。

しかし、それを掴むためには、JavaのClassLoaderについての理解が足りていなかった。大枠は理解しているつもりだったが、もっと本質的な部分や、ClassLoaderにまつわる問題点などを把握しないと、Classworldsがそれらの問題を、どの様に解決しようと試みているのかが見えてこない気がした。

なので、今日はソースも読んだけど、お勉強に時間を使った感じ。
まだ、掴みきれていないので、引き続きお勉強が必要。
ただ、これを乗り越えると、ClassLoader周りは結構詳しくなれそうな予感。

GitBook更新:その6:設定ファイルの解析のはじまりはじまり

GitBookにコンテンツを追加。

その6:設定ファイルの解析のはじまりはじまり · ぶらコード:maven

今日は結構読み込んだのだが、コンテンツ化出来たほんの一部になってしまった。
なんとなくPlexusのことが分かってきた今日この頃。

今日はJunitのテストコードも読んだり、実行してみたりしたので、より理解が深まった。
テストコードにはメソッドや、クラスなどの仕様が書かれている一面がある。
また、実装者がどうしたいのかとか、どういった処理がポイントなのかが、テストコードを見ることで分かってくる。

こんなところもコンテンツ化出来ると良いのだが、いかんせん、読んだり考えたりするスピードに比べると、コンテンツ化のスピードが遅いところが、今の課題というところだな。

なかなか時間が確保出来んねぇ

土日は、家族サービスとか、平日の疲れを癒すとか、今回は歯医者があったりとか、なんだかんだと時間が取れない。
仕事やって家帰ってきてからやり始めるとどうしても、こんな時間になってまうねぇ。

楽しいからいいんだけど。

今日、定時で上がろうと思ってたら、急に調査依頼が来てまったのだ。不慣れな部分だったから最初は余り乗り気ではなかったのだが、ちょっと調べだしたら気になってしまい、最後は答えが出せた。
早めに回答できて喜ばれたので、スッキリ上がれて良かった。結局仕事って、手を抜かずにやったほうが楽しいよね。
ただ単に労働時間を多くするという意味ではなくて。結果的にそうなってしまうことも多いのだが。。。

GitBook更新:その5:まずはclassworlds.confの読み込み

GitBookにコンテンツを追加。
その5:まずはclassworlds.confの読み込み · ぶらコード:maven

前回までに見つけた入り口に入ったら、最初にclassworlds.confという設定ファイルの読み込み処理をやってました。

今回ぶらつくに当たって、クラスローダー絡みの知識を改めて整理(コンテンツ化はできておらんが)。
あと、mavenデバッグ実行して、eclipseでステップ実行してみた。
静的にソースコードを読むだけでなく、動的に確かめてみた方が、より理解が深まるってなもんで。

GitBookのIntroductionページに旅の記録を追加

一週間を振り返った前回のエントリに引き続き、GitBookの方にも旅の記録、つまりはGitBookの更新記録を書いておくことにした。
まだまだ、未完成な本なので、更新中であることをアピールする意図もあり。
GitBookのこんな使い方はアリなんだろうかとも思ったが、まあアリだろう。

最初の一週間を振り返ってみるという試み

2017/02/20(月)

 
記念すべき、ぶらりソースコードの旅、のスタート日。前からアイディアとしては、頭の中にあった「ソースコードの旅」。

まだ活用はしていないが、すでに「codetrip.jp」というドメインも取得済み。さらには、ホスティングサーバもレンタルしてあるのだが、どのようにコンテンツを作っていこうか悩みながらも、時だけが過ぎていった。

今はサラリーマンプログラマ(SE)としても就業中の身。さらには通勤も時間かかるし残業も多いしで、なかなか時間が確保できない状況。ソースコードはぼちぼち読んでいるのだが、その結果をアウトプットして、コンテンツ化することが出来ていなかった。

そんなこんなで時が過ぎていったが、自分の中の表現欲が抑えきれず、ついに自分の中から溢れ出した。それがこの日だった。この日は比較的早く帰れたので、帰宅途中に少し喫茶店に寄って頭の中を整理した。とにかく、形は後回しにしてでも、まずは世の中に出そうと思いブログを始めることにした。コンテンツを作りながら、試行錯誤して、どんどん作り変えて行けば良いと思った。

そして、とりあえずはてなブログのアカウントを作成した。ブログに関しても、オリジナルドメインを利用するためにプロアカウントにしようかとか、色々悩んでしまったが、そこで止まっていては先に進めない。というかある意味そんなことを繰り返してきて、この日に至っていた。

だが、とうとうそれも限界に達したというか、自分の中の表現欲が上回った。変に技術的に色々と出来るもんだから、そこら辺も色々とこだわり始めるとキリがなかった。なのでいっその事、一般のブロクサービスから始めることにしたのだった。なんとなく技術系のブログで馴染みのあったはてなブログにお世話になることにした。

この後、実際にぶらコードをスタートさせたのだが、ちょっとした書き方とか色々と調べながらの作業になったので、結局エントリとして書けたのは、日付が変わった2/22であった。

2017/02/21(火)

とりあえず、mavenソースコードをぶらつくことにした。その当たりの経緯は以下のエントリに書いた。

kutami-karamu.hatenablog.com

ソースを貼り付けたはいいけど、シンタックスハイライトさせるのに失敗するという、どうにもこうにも素人丸出しなスタートになった。汗
でも、とにかくスタートできた事は、とても大きいことなのだ。とてつもなく小さい一歩なのだが、0(ゼロ)が1(イチ)になったのだから、ある意味天地がひっくり返るくらいデカイ出来事でもあるわけだ!←大げさ。

この日、早速スターをつけてくださる方が2名いて、とても励みになった。1か月くらいは世の中に認知されないだろうと思っていたので、嬉しい驚きでもあった。
このあたりは一般のブログサービスならではの展開の速さなんだと思う。はてなブログで始めて正解だった。たとえどんなに良いコンテンツを作れたとしても、誰も見てくれなかったら、存在しないのと変わらないもんね。
ま、作ってるだけでも楽しかったりはするんだが。実際に始めて見ないと分からないことであり、やっぱり始めてよかったと実感した。

2017/02/22(水)

この日は、一旦更新はお休み。同僚と飲みに行っていたので〜。

2017/02/23(木)

再開。自分で作ったブログをスマホで読んでみたら、コードの折り返しが行けてない感じで、読みづらかったので改善したかった。
で、色々と調べてgist使って書いてみることにした。折り返しに関しては、良い感じになった。とりあえず、ぶらコード的にも先に進めたので良かった。
この日はブログのタイトルとかデザインとか細かいところもチョイチョイ改善していった。まだ全然満足できてないけど。

2017/02/24(金)

仕事中にLinuxカーネルパラメータに関して調べる必要があって、ググっても中々情報が得られなかった。もうちょい探していると、ひらメソッドで有名なサイトに辿り着いた。
ひらメソッド - LinuxKernelHackJapan

そういえば、ひらメソッドってあったな。改めてぶらコードのコンテンツ作成方法としてみてみると、色々と参考になった。
というのも、ここ何日間かで、コンテンツを書いていったのだが、eclipseやコンソールで読んでいくスピードに対して、ブログでアウトプットできるスピードが圧倒的に遅く、フラストレーションが溜まっていたのだ。

何かもっと改善しないと、ストレスが溜まって仕方ないと思い、前から考えていたツールの開発を先にやるか?とか思ってたけど、それやっちゃうとまたアウトプットが遅れちゃうからなぁ、というもう一人の自分からのお告げがあり、何とか別の方法を模索していた。
なるべくシンプルにやりたい。結局はテキストデータだから、シンプルにmarkdownとかで書いて、SCMとかでバージョン管理して、必要に応じてコンバートしてコンテンツを作成する、とかがベターだと思っていた。

そんな視点で模索していたところ、GitBookに辿り着いた。これも以前から目にしていたサービスだった。
ひらメソッドwiki使ってたけど、ぶらコードではとりあえずGitBookでやってみることにした。ブログだと単なる時系列の並びになりがちで、自分自身も書きづらかった。その点GitBookだと勝手に構造化されていくし、中身のテキストデータはGitHubでバージョン管理されていくので、自分のやりたいことにかなり合致していることに気がついた。自分でツールとかを構築するよりは、早いしシンプルだし、その分、今優先すべきコンテンツ作成にリソースを割り振れるわけだ。

実際に書いてみたら、良いカンンジにできた。これからしばらくは、GitBookを中心にコンテンツを作っていこうと思う。
このブログでは、今回のエントリのようにぶらコードの裏側となる、自分の試行錯誤、悪戦苦闘、七転八倒の軌跡を残していこうと思う。

GitBookを作ってみた。

昨日までにとりあえず書いてみた、mavenのぶらり旅をGitBookで書いてみた。
ブログで書くより綺麗な仕上がりになっていいかも。
読む人的にも電子ブックになってるから、フォントサイズとか変えられるし、目次とかのナビゲーションもついてるから、いいんでないでしょうか。

Introduction · ぶらコード:maven