新宿御苑の紅葉
どんなつまらないことでもいつかは役に立つことがある。という前提で脈略もなくメモを書きなぐっています。
2011.01.01 KISHI Yasuhiro
禁煙宣言! since 2007/02/21(Wed)
戻る
システム・アーキテクチャ
High Availabilityのシミュレーション
キャッシュマネジメント
トレーサビリティの本質
D言語
D言語で連想配列
D言語でHello, world!
C言語/C++
I/O
realloc()を使った予測できないサイズのファイルハンドルへの対応
スレッド
クリティカルセクションとマルチスレッド -- mutexの使用
クリティカルセクションとマルチスレッド -- semaphoreの使用
ThreadとSemaphore
cygwinでpthreadを試す
ポインタ
関数ポインタの引数渡し
関数ポインタの引数渡し -- その2
基礎中の基礎 -- ポインタのポインタ
realloc関数
広域ジャンプ
setjmp.h そして setjmp()/longjmp()
ネットワーク
pollシステムコールを使ったTCPサーバ
selectシステムコールを使ったTCPサーバ
C言語でHTTPクライアント -- 少しまともなもの -- 2006/10/14
HTTPクライアント(ヘッダとボディの分離)
HTTPクライアント
TCP/UDPソケットの例
SVR4-IPC
SVR-IPC 共有メモリの使い方(例)
Message Queue
正規表現
正規表現 -- URLからホスト名、ポート番号、PATHを切り出す
正規表現 -- より使いやすくしてみる
C言語で正規表現
データ構造
C言語で単方向リスト(改良版)
C言語で単方向リスト
双方向リストの使い方
g++でハッシュマップ
std::mapの使い方
C言語を使った連想配列の実装例
Mics
C++のstringをprintfで出力する
C++からCのライブラリを読み込む
クラスファイル -- 宣言部(ヘッダファイル)と実装部の分離
継承とライフサイクル
メッセージダイジェスト -- SHA1SUM
ファイルの内容を全てメモリに取り込む
ファイルサイズを求める
ハノイの塔(再帰)
SHELL・コマンドなど
cygwinで日本語を利用可能にする
sedでファイルの内容を一括置換する
straceの使い方
dirnameとbasename
gpgの利用例
xargsコマンドの使用例
caseコマンドによる条件分岐
bashのIF-THEN-ELSE
PERL
Net::LDAPの利用
PERLでTCPサーバ
PERLでメール内のMIMEヘッダを切り出す
PERLでUUIDを生成する
PERLでスレッド
PERLでBASE64
PERLでメッセージダイジェスト
Apacheのアクセスログを正規表現でパースする
ある種のスパイダー
正規表現で繰り返し部分(ハイパーリンク、画像URL)を取り出す
PERLで正規表現
ファイルを添付したメール送信
HTMLのタグをエスケープする
JAVA
スパイダー
クロールした結果を抽出する
IntelligentSpiderの設計
CookieContainerクラスの設計
(仮称)インテジェントスパイダーの仕様
JAVAアプリケーションでTRACKBACKする
フォーム認証後にクッキーを掠め取る
サイト内におけるページ間のリンク構造を可視化する
JTable
JTable内の行を操作する(特定行の削除など)-- ListSelectionModel, ListSelectionListenerなどの使い方
JTableで表示するカラムをJCheckBoxで設定する
JTable内の特定の行を選択する
TableCellRendererを試す
JTable内のセルをソートする
JTableのカラム幅を設定する
DBからデータを取得してJTable内に表示する
JTableを使う
設計技法
ロバストネス図の例
MVCみたいなもの
XML関連
RSSアグリゲータおよびキーワードフィルタ
既存のURLのソースを解析してRSS2.0文書を生成してみる
CDATAセクションを生成する
CDATAセクションの値を取り出す
DOMを使ってRSS2.0文書を作成する SimpleDateFormatの使い方(RFC822タイムゾーン等の処理)
DocumentBuilder#parse()の引数にInputStreamを使ってみる
RSSリーダ(RSS0.91対応)
RSSリーダ(RSS1.0対応)
RSSリーダ(RSS2.0)
XMLで定義されたGUIテンプレートを作成してみる
XMLでGUIを定義してみる(超プロトタイプ) -- ノードが保有する属性と値のMapを全操作して取得する -- NamedNodeMap, Node#getAttributes()の使い方
DOMを使ったXML文書のトラバーサル(JAXP)
DOMを試す(J2SE 5.0)
disable-output-escapingの使用例
XSLTに対して外部から変数パラメータを与える
Xalanを使ってXPATH APIを試す(より汎用的に!)
XPATHを使って内容を取り出しURLピングする
Xalanを使ってXPATH APIを試す
XSLTを試す(J2SE 5.0)
全文検索
Luceneのインストール
Ant
antを使って差分ファイルだけをバックアップする
ant -- build.xmlの例
Network
スピード測定(より現実に近いもの)
スピード測定
HTTPリクエストおよびレスポンスの取り扱い
HTTPレスポンスコードを取得する
URLからコンテンツを取得して文字コード変換
クラサバとエージェント
ソケットクラサバ(java.nio.*)
ServerSocketの使い方
UDPソケットとブロードキャストアドレス(*.*.*.255)
デザインパターン
RSSリーダのファクトリメソッド対応
Observer/Observableモデル -- Observerパターンの簡単な事例
在庫管理とシングルトン
Template Methodの使い方 -- enumを使った改良版
正規表現
HTMLの特定の部分を抽出する(とあるBLOGサイト)
スライドショーと正規表現
HTMLのテーブルの中身を抽出する
HTMLから特定の箇所を切り出す
スレッド
同時起動スレッド数の制御
同時に一定個数のスレッドを起動するようにする
スレッドの同期・非同期
スレッドの開始・停止・再開およびActionインタフェースの使い方
Threadクラス、Runnableインタフェースおよびシングルトン
スレッドの同期(join)
複数スレッドで素数を計算するタスクを分業させる
スレッドの開始・終了を制御する
DAO
DAOについて
DAOを利用したWebシステムアーキテクチャ
リソース
Jarファイル内のリソースをストリームとして読み込む
Jarファイル内のリソースを読み込む
ビジネスロジック
プロセスフローマネージャ
P to C
Producer to Consumer
SCMを可視化する(その1)
SCMのエミュレーション
生産者・ブローカ・消費者のシミュレーション -- PART3
生産者・ブローカ・消費者のシミュレーション -- PART2
生産者・ブローカ・消費者のシミュレーション
プロセスランナー(フローチャートをXMLで表現する)
ステートチャートダイアグラムをJavaアプリで作ってみたりする
JTree
TreeCellRendererをためす -- その3 -- JPanelとの組み会わせ
TreeCellRendererをためす -- その2
TreeCellRendererをためす
TreeSelectionListenerをためす
XMLをJTreeにマッピングする
JTreeを使う
JLayeredPane
JLayeredPaneをJScrollPaneにはめ込む
JLayeredPaneを使って背景画像の上にお絵かきしてみる
JLayeredPaneを使ってオーバーレイ画像を編集する
画像の取り扱い
複数のクライアントによるお絵かきコラボレーション
コンポーネントの画像キャプチャをしてファイルに保存する
パネル上で編集したイメージを保存する(BufferedImageとImageIO)
ImageIOクラスを使って、画像(ファイル、URL)を表示する
アプレット
アプレット作品(その1)
Appletでサーバ内の画像をロード・表示する方法(その1)
ホモサピエンス
正弦波の合成
SwingでApplet
Applet間通信
Java Plug-in
Java Plug-in -- HTMLコンバータの使い方
Java Web Start
Java Web Startを試す
マウスオペレーション
コンテナ内のコンポーネントをマウスでドラッグする
MouseAdapterとMouseMotionAdapterの使い方 -- マウスを使って線分、矩形を描く -- 矩形領域の交差判定
JScrollPane
文書のテンプレートを作成してみる
JScrollPaneを使って画像をスクロール表示する
JTabbedPane
JTabbedPaneを使ってみる
ダイナミックプロキシ
ダイナミックプロキシクラスの使用例
タイマー
java.util.Timerおよびjava.util.TimerTaskの使用例
ProgressMonitorを試す(およびjavax.swing.Timerの使い方)
プログレスバー
JProgresBarの使い方
JButton
JButtonでキー入力(Returnキーなど)を捕捉する -- KeyAdapterの使い方
JButtonの矢印線での繋ぎこみとatan2()について
JButtonを使ったメニュー
JButtonを使ったメニュー(その2)
オリジナルのJComponent
フレーム上でボタンをドラッグしてみる
画像などを使った独自のボタン
JDialog
ウィンドウを閉じるときにダイアログを出す
Look&Feel
Windowsライクなルックアンドフィールにする
フォーム・デザイナ
作成したフォーム(=Panel)をシリアライズ、デシリアライズする -- JColorChooserの使い方なども含む
パネルに背景画像を配置して、コンポーネントをオーバーレイする
印刷
java.awt.print.Printableインタフェースを使った画面ハードコピー
JToolBar
JToolBarを試す(およびコンポーネントのドラッグアンドドロップ)
JRadioButton
JRadioButtonを試す
JMenu
JMenuBar, JMenu, JMenuItemおよびAbstractActionの使い方(メニューの階層化)
JMenuBar, JMenu, JMenuItemおよびAbstractActionの使い方
メニュー選択とパネル表示内容の切り替え
PDF
iTextを使ってPDF出力
Jakarta POI
EXCELファイルをJavaアプリケーションから操作する
Drag'n'Drop
ツールバーに配置したコンポーネントをDrag&Dropする
AWTでドラッグアンドドロップを試す(Panel間)
AWTでドラッグアンドドロップを試す
SWING関係もろもろ
JPopupMenuの使用例
シングルトンと親ウィンドウ・子ウィンドウ
オブジェクトのシリアライズ
編集可能なJComboBoxを作ってみる
ファイルチューザを使ってファイルの読み書きをする
SwingでTicker表示
HTMLのエレメント部分を色付けして表示する -- JTextPaneの使い方
マウスイベントの捕捉およびサブウィンドウの表示
SWINGでHTML
稚拙なシミュレーション
SWINGでGraphicsオフジェクトを使う
ToolTipを試す -- setToolTipText()メソッドの使用例
指定したコンポーネントにフォーカス指定をする
Swingで送信用フォームを作成する
セキュリティ
トークンを毎回変えたダイジェスト生成による認証
ログイン認証時のトークンを毎回ランダムに変化させる(APOP的アプローチ)
リフレクション
リフレクションAPI -- おまけ!
リフレクションAPI -- メソッド、フィールドの処理
クラスとは
Class.forName( クラス名 ).newInstance() の使い方
データベース
ツリー構造(MODEL/VIEW)
O/Rマッピング余り好きではありません(DbUtilぐらいで十分)
DBアクセスの抽象化
Misc
UUIDの生成
インタフェースおよびクラスの継承
Javaでsprintf
BASE64エンコーダ・デコーダ
JavaアプリケーションからOSコマンドを起動する(ブラウザを起動する例)
Java VMの最大ヒープサイズの指定
C言語のprintf(),sprintf()のようなもの
CharsetDecoderクラスを使ってみる
プロパティ
PropertyManager
XMLにより記述されたプロパティファイル(その2)
XMLにより記述されたプロパティファイル
コレクション
java.util.Mapインタフェースを実装したクラスの挙動の差異
java.util.Stackの基本的な使い方
スタックの使い方(応用例)
キューを使ってみる
初等数学
正規分布 -- Random#nextGaussian()を使う
最小二乗法をためす
度数分布を求める
素因数分解
62進数の取り扱い
ソート
Arrays.sort()とインタフェースComparatorを使って多次元配列をソートしてみる
データ構造
クロスリファレンス
ファイルシステムのツリー構造を走査する
サイト内のリンク構造を解析する
三角関係
データ構造 -- スモールワールドの検証(続編)
データ構造 -- スモールワールドの検証
戻る