2013/12/20 このエントリーをはてなブックマークに追加 はてなブックマーク - あなたはログに何を求める?【Webサイトにおけるログ出力観点】(what do you need ' logging ' for web system?)

あなたはログに何を求める?【Webサイトにおけるログ出力観点】(what do you need ' logging ' for web system?)

カテゴリ: , ,



システムにおけるログのイメージ
Webサイトにおけるログ_イメージ

俗に言う、SI企業で働いている僕ですが、
Webサイトでのログの出力方針について自分なりにまとめてみました。




 そもそもログってなに?


システムにおいてログはとても重要です。
それをもとにシステムがどのように動いているかを確認し、
おかしな動きをしていないかを確認したり、誰が何をしているかを確認するわけです。




でもプログラマーのあなたに突然、「実装画面でログを出してくださいねー」、とだけ言われたとしましょう。






何を出力すればいいの??



ってなりませんか?
デバッグ用に仕掛ける分には自分の好きなように埋め込めば良いですが、



製造工程が終わったとき・・・。どのログを残せばいいのやら?
「例外をcatchしたここは、、、エラーログで良いのかなぁ。。。」
「ここって業務的にプログラムの内部でしか見えない処理だけど、
ログ出しておいた方が良いよね?」



今回はそういう話なんですが、、ググってみたところ、僕の求めている内容の記事が少なく、
他の方々がどういった観点を持っているのかを知りたいとともに、
なにかしら皆さんの助けになればと思い、書いています。


突っ込みどころがあれば、コメントなどでレスをいただければと思います。




2013/10/27 このエントリーをはてなブックマークに追加 はてなブックマーク - ビジネスマンとエンジニアを別物と思うな

ビジネスマンとエンジニアを別物と思うな

カテゴリ:


ちょっと強めのタイトルにしましたけども。



僕はSI業界で働いているわけですが、
やっぱり技術的にすごい人はたくさんいます。


もちろんこの世界は技術力が物を言うし、
設計や提案などに関しての顧客折衝の能力も重要です。


2013/10/08 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Android】Activityスタックを削除する

【Android】Activityスタックを削除する

カテゴリ:
Activityスタック

今回はスタック(アプリの画面履歴)の一括削除を行いたい場合の実装を紹介したいと思います。




 まずは仕組みについて




Activityは遷移するごとにスタックされていきます。
スタックされた情報はActivityManagerが保有しているようです。


2013/08/04 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Android】ActionBar/ActionBarSherlockを使おう2~使い方編~(try to use ActionBarSherlock API 2)

【Android】ActionBar/ActionBarSherlockを使おう2~使い方編~(try to use ActionBarSherlock API 2)

カテゴリ:





今回はActionBarSherlockについてのエントリの第2弾です。




例のごとく、ActionBarSherlockのサイトの内容を日本語意訳してみました。




ちなみに、「」で囲まれているのが原文、その下に日本語訳、★で囲まれているのが補足です。

2013/07/30 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Android】これは使っちゃだめよ!~非推奨APIをまとめてみた~(Summarize deprecated Class and Method)

【Android】これは使っちゃだめよ!~非推奨APIをまとめてみた~(Summarize deprecated Class and Method)

カテゴリ:



 何つかっちゃダメなんだ?





AndroidのAPIというのは大きく変遷してきた。
Android2.x、3.x、そして今では4.x系まで進んでいる。

Honeycomb (3.x)、
Ice Cream Sandwich (4.0.x)、
Jelly Bean (4.1.x, 4.2.x, 4.3.x)と

なんだかついていけないですね。



古くから開発をしているベテランの人はさておき、
大体の人が2.x系から開発を始めた、もしくは今から始めるという方なのではないでしょうか。


そこで、今回は2.x系から開発をしている方を対象に、また今から開発を始める人でも
流れが分かるように、APIの変遷について書いてみようと思う。




ということで、ネット上で情報が散乱している、非推奨クラスやメソッドについて
ある程度まとめてみた。(まだまだあると思うし、非推奨の定数などは含んでなかったりする)



2013/07/17 このエントリーをはてなブックマークに追加 はてなブックマーク - 【JavaBeans】BeanとDTOとEntityとVOとFormの違いって何?

【JavaBeans】BeanとDTOとEntityとVOとFormの違いって何?

カテゴリ: , , , , ,






色んなシステムに携わっていると、様々なJavaのクラス名に遭遇する。






○○Beanとか ○○DTOとか ○○Entityとか ○○VOとか ○○Form







ここらへんって


「MVCのModelのデータ部分にあたるって意味で同じだし」

とか

「ゲッター/セッターがあるクラスで意味的に一緒じゃない?なんで色々名前つけてんの?」

って思いませんか?



ってことで、今回はそれぞれの定義を改めて考えてみようと思う。


2013/07/13 このエントリーをはてなブックマークに追加 はてなブックマーク - 【バグは0になるか】プログラマーとバグ(close connection about programmer and bug)

【バグは0になるか】プログラマーとバグ(close connection about programmer and bug)

カテゴリ: ,







今回は、現場でミスしまくった自分への戒めとして、



また、バグについて再認識のために持論を書いてみる。
とても、現場では言えないが、、、(笑)
開き直ってると思われかねない。



2013/07/10 このエントリーをはてなブックマークに追加 はてなブックマーク - 【プロジェクトでどう振る舞うか】プログラマーを演じよう

【プロジェクトでどう振る舞うか】プログラマーを演じよう

カテゴリ:



 はじめに



社会人3年目になります。IT業界(Web・オープン系)に入ってからは2年ぐらいです。
正直、プログラムちょっとかじったぐらいの感じですが、ふっつーに仕事は出来てます。


ということで、今回のエントリでは新卒とかに向けて現場での振る舞いとして僕がやっていることを
伝えたいなーと思い、書いています。
+ 自分のメモとしての意味合いもありますけどね。



コミュニケーション、作業の進め方、成長戦略の3つの観点から書いてみます。



2013/06/30 このエントリーをはてなブックマークに追加 はてなブックマーク - ActionBarSherlockを使おう(try to use ActionBarSherlock API)

ActionBarSherlockを使おう(try to use ActionBarSherlock API)

カテゴリ:


今回は、紹介エントリです。





アンドロイドのアプリを作るときに、開発者として悩み所なのは
アプリのデザイン(UI)ではないでしょうか。


現在、アンドロイドアプリで主流となっているのは
アクションバーとタブを使ったUIデザインです。

2013/05/12 このエントリーをはてなブックマークに追加 はてなブックマーク - 【本当にPM > SE > PG?】プログラマーとしてどう生きるか(続編)

【本当にPM > SE > PG?】プログラマーとしてどう生きるか(続編)

カテゴリ:




さて、前エントリではタイトルに反して自分の個人的な転職話について書いてしまったが、
本エントリでは、キャリアパスについてもう少し考えてみる。

2013/05/10 このエントリーをはてなブックマークに追加 はてなブックマーク - 【本当にPM > SE > PG?】プログラマーとしてどう生きるか(転職話)

【本当にPM > SE > PG?】プログラマーとしてどう生きるか(転職話)

カテゴリ:






最近は、わりとマジで自分の将来について悩んでいた
というのも、自分に転職のチャンスが巡ってきたことが原因である。

2013/04/23 このエントリーをはてなブックマークに追加 はてなブックマーク - 「○○である3つの理由」みたいなエントリを書かない5つの理由

「○○である3つの理由」みたいなエントリを書かない5つの理由

カテゴリ:





※このエントリは様々な構成要素(パクリ)から成立しています。

2013/03/20 このエントリーをはてなブックマークに追加 はてなブックマーク - 【オレオレ.bat作成】めんどくさいことはサボろう(Avoid the hassle)

【オレオレ.bat作成】めんどくさいことはサボろう(Avoid the hassle)

カテゴリ:





今日も小ネタです。



みんなよくやってるのではないかと思うけど、自分用にバッチを作る話。
毎日事務的に同じ作業するのなんか馬鹿らしいし、
極力、そういった作業は避けたい。




だってめんどう業務上非常に効率がよろしくない。



ということで、僕が使ってるオレオレ.batをまとめてみようと思う。


手順としては

・batファイルの作成
・vbscriptの作成
・システムの起動ファイルへbatファイルを追加


これだけです!

実装もものすごい簡単です。

以下、ソース。

・バッチファイル(connect.bat)
@echo off
rem ネットワークドライブの割り当て(Lドライブ)
NET USE L: \\yank-net.yy-group.yy.yank.com\share 【パスワード】 /USER:【ユーザー名】

rem VBスクリプトの呼び出し
for /f "usebackq tokens=*" %%i IN (`call cscript //nologo c:\yy\yank\msgbox.vbs`) DO @set result=%%i
echo
 
rem OKの場合戻り値は1なのでEclipseを開く
if %result%==1 (
    start c:\Users\yy\yank\Desktop\eclipse4.2Juno.lnk
) else (
    echo bad
) 
・VBScript側(msgbox.vbs)
'変数の宣言
Dim result

'ダイアログ呼び出し
result = MsgBox ("Eclipceを起動しますか?", 65, "起動の確認")

'result の値は、クリックされたボタンによって、1 または 2 になります。
WScript.Echo result





何をしているかというと、
バッチファイルからネットワークドライブの接続(Windows7だと毎回設定が初期化されちゃう?ので)
VBScriptでダイアログ呼び出しして、eclipseを起動するか確認。
押されたボタンによって、起動するかどうか判断。って感じです!

これでPCを立ち上げるだけでネットワークドライブの接続とeclipseの起動を勝手にやってくれる
という算段です。バッチはいいですよねー。自分の必要に応じて色々付け加えられるし、
必要ないと思ったら、削ることも出来るし。


msconfigから起動時実行ファイルに作ったbatを追加すれば完了!




2013/03/10 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Java】アップキャストでClassCastException

【Java】アップキャストでClassCastException

カテゴリ:


久しぶりにブログ書きます。

最近ちょっとずつ、本業務の方が忙しくなってきたので、
疎かになってしまっておりました。。。




○ClassNotFoundExceptionのワナ





JavaでClassNotFoundExceptionが発生するとき、
あなたならまず何を疑いますか?

2013/02/20 このエントリーをはてなブックマークに追加 はてなブックマーク - 【個人的レビュー】携帯がINFOBAR(iida a02)になりました(I got INFOBAR iida a02 by HTC )

【個人的レビュー】携帯がINFOBAR(iida a02)になりました(I got INFOBAR iida a02 by HTC )

カテゴリ:



今回のエントリは携帯を変えた喜びだけで書いています笑

さてさて、今まではSHARP制のIS03ヘビーユーザーだった僕ですが、
INFOBARに変えてみました!




○スペック




【電池容量】 
2,100mAh
【外部メモリ】
32GB
【内部ROM】
16GB
【内部RAM】
1GB
【OS】
Android4.1

2013/02/16 このエントリーをはてなブックマークに追加 はてなブックマーク - Javaからスクリプト呼び出し

Javaからスクリプト呼び出し

カテゴリ: , , , ,







知らなかったので、メモ。
Java6からJavaソースからスクリプトを呼び出すAPIが標準で
入ってるんですね。。。知らなかった。
javax.scriptというパッケージです。

Java7ではRubyとかGroovyとかに対応してるとかしてないとか。


ちょっと調べてみるとJavascriptを利用しているパターンばっかり出てきてしまいます
ね。

他のスクリプトも試してみるのもいいかもしれないけど、
とりあえずはJavascriptでやってみた。






ソースはこんな感じ。

2013/02/15 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Javaトリビア】○○ableインターフェース

【Javaトリビア】○○ableインターフェース













今日はふと気になったことをエントリに書いてみよう。
企画的には「トリビアの種」系です(笑)
トリビアってほど無駄ではない。




Javaのインターフェースでよくある「○○able」




意味合い的には「~の能力を付与する」ってものです。
これっていったいどのくらいの数がライブラリに存在するんだろう、、、って考えたことあり ますか?

2013/02/09 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Android】Intentでメールに画像を添付する(Intent to attach images to email)

【Android】Intentでメールに画像を添付する(Intent to attach images to email)

カテゴリ:





○まずはIntentを試してみるか





自分で作ってるAndroidアプリのバージョンアップとして、
検索した画像と情報をメールに添付しようと考えた。

これが地味にハマってしまったので、自分と誰かしらのために、メモしておく。


文章は割と楽に送れた。
実装はこんな感じ。

2013/02/02 このエントリーをはてなブックマークに追加 はてなブックマーク - dojoの勧め~基本文法編~【recommended dojo(javascript framework)】

dojoの勧め~基本文法編~【recommended dojo(javascript framework)】

カテゴリ:







引き続き、dojoの紹介。




ライブラリの日本語化は色々骨が折れそうだなあ。。。(汗)
やってみたいんだけど。





とりあえず、dojoの使い方はこんな感じです。




クラスの宣言、クラスフィールドの宣言、functionの宣言などに
焦点を当て、説明します。










//クラス宣言
dojo.provide("DojoSample");

/**
 * クラス定義。
 * 第一引数宣言クラス名
 * 第二引数継承クラス指定(nullなら継承なし)
 *
 */
dojo.declare("DojoSample", yank.DojoSuper, {
    
    //クラスフィールドの宣言
    property : null,
    
    //functionの宣言
    onLoad: function(){
        // このthisを変数に詰める。インスタンスを内部functionで使うためと思ってもらっていい
        var _this = this;
        // ボタンのイベントを拾う
        dojo.connect(dijit.byId("button"), "onLoad", function() {
            _this.executeSomething();
        });

    },// ←カンマでつなぐ
    
    // 何かしらの処理を定義
    executeSomething: function(){
        // 処理
    } // ←最後の宣言はカンマなし
});












簡単。

ね。Java使ってる人なら抵抗ないでしょ。
javascript慣れてる人やAndroid慣れてる人とかも使いやすいと思います。




で、この作ったクラスを使用する際には
dojo.require(DojoSample);
とすれば良い。(イメージ的にはimportに近い)





今回は簡潔に以上!



2013/01/25 このエントリーをはてなブックマークに追加 はてなブックマーク - JavaMVCフレームワークたち(about Java MVC framework)

JavaMVCフレームワークたち(about Java MVC framework)

カテゴリ:






JavaのMVCフレームワークはたくさんある。



Struts、Spring、Seaser2、Wicket、JSF、Tapestoryなどなど。。。。

2013/01/20 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Java技術者にオススメ?】dojo ToolKit(introduce dojo)

【Java技術者にオススメ?】dojo ToolKit(introduce dojo)

カテゴリ:




業務で使っているdojoツールキットについてまとめていこうかと思う。





○dojo Toolkit


dojoはDojo Foundationの開発しているjavascriptフレームワークであり、
ajax等の非同期通信や、カレンダー表示などを通信なしで行えるリッチクライアントを提供する。
サーバーサイドjsフレームワークって感じがする。(別にajaxを使わなくてもウィジェット使うだけでもいいと思うけど。)

可変長引数メソッドの呼び出しについて (about variable length arguments method call)

カテゴリ:








ちょっと知らなかったので、メモ。


可変長引数メソッドの呼び出しは、実は引数なしの形でも呼び出させる(!!)
知らなかった。びっくりした。







実際にはこんな感じ。

2013/01/12 このエントリーをはてなブックマークに追加 はてなブックマーク - 【JavaからSVN接続】SVNKitを利用してみた(exporting SVN log to use Java-library SVNKit )

【JavaからSVN接続】SVNKitを利用してみた(exporting SVN log to use Java-library SVNKit )

カテゴリ: , ,










業務で今回のプロジェクトで追加したリソースを調査しなければならなくなった。

ただ、単純にSVNのヒストリーやリビジョンの比較をして目を酷使するのも嫌だったの で、
Javaからどうにかプログラミングが出来ないかとググってみた。









あった。

2013/01/07 このエントリーをはてなブックマークに追加 はてなブックマーク - 【Android】イベントリスナー実装のベストプラクティスはなんだろう(the best coding  to use EventListener for Android )

【Android】イベントリスナー実装のベストプラクティスはなんだろう(the best coding to use EventListener for Android )

カテゴリ:




前々から気になっていたこのテーマ。


Androidにおけるイベントリスナーの実装はどのようにすべきか。考えてみたいと思う。
同じようなエントリは少しはあったのだけれども、僕にとっては不十分に感じたので、書いてみたい。



イベントリスナーとはボタンウィジェットのOnClickListenerとか
アラートダイアログのDialogInterface.OnClickListener(であってるかな・・?)とか
そういった類のものである。
実装方法は僕の思いつく限りでは4つある。

2013/01/06 このエントリーをはてなブックマークに追加 はてなブックマーク - 初投稿!!(First Contribution)

初投稿!!(First Contribution)

ブログを始めさせていただきました。


本ブログでは、主にJava周辺の技術的なことを書いていこうと思っています。

今はいわゆる客先常駐専門の中小企業に勤めています。
主に業務システムのJava案件の二次請け、三次請けになることが多いですね。

GA