2009年5月31日 星期日

國二病



學名:中二病
解說:
指思春期特有的思想、行動、價値觀
以國中生為主。
死小孩的基本特徵。
症狀:
1.經常說「學了因數分解又有什麼用?」
2.經常說「大人好骯髒」。
3.開始尋找<真正的>好朋友。
4.激昂地向母親主張「給我尊重隱私權!」
5.晚飯後,毫無目的地在外面徘徊。
6.還不懂得穿衣服怎麼搭配,就用起髮膠之類的物品。
7.「我己經從jump那種東西畢業了。」然後開始看young jump。
8.對擁有A片感到自豪。
9.突然開始評價拉麵的味道。
10.鑽研各種詭異的打手槍方法。
11.對於用星星記號遮住局部的圖,容易產生微妙的性興奮。
12.以「老母」或「家裡人」等稱呼母親。女性的會以「那個人」稱呼父親。
13.認為在咖啡中添加砂糖是可恥的。
14.要找東西卻在自己的皮包中和書桌裡都找不到,就感到絕望。
15.下定決心要告別和尚頭髮型,可是也沒有特定想留的髮型,於是某天突然隻將瀏海部分分邊。
16.對(女性)同學會有「隻要肯出錢,誰都能上啦」的觀感。
17.看到當紅的樂團會說「我早知道他們會紅了」,又莫名其妙的生起悶氣。
18.開始聽西洋音樂。
19.當母親似乎有話要說時,就一句「知道啦!」大聲蓋過,絲毫不聽內容。
20.禮拜六的早上會對媽媽說「我不吃早飯了,換錢給我吧」
21.開始喜歡從自動販賣機買咖啡,但又隻(能)買一兩罐。
22.幻想自己是學園(後宮)漫畫主角
23.會說「我不會拿真正喜歡的女孩子當打手槍對象」。
24.把「做什麼都好就是不當上班族」當口頭禪。
25.「上班族→齒輪」、「警察→權力的走狗」、「學校→廢人工廠」使用這樣的稱呼。
26.懷疑畢業典禮「到底是慶祝什麼方面畢業了?」
27.還沒有執照就準備將來買車、計畫要改車,並開始看相關的專門雜誌。
28.對社會和歷史有一定程度理解後,會脫口而出「美國真是骯髒」
29.看偶像的照片會自己排「最想當妹妹Best 10」等自創排行榜。
30.不抽煙也帶防風打火機(拿來耍著玩)。
31.想偷一台車來飆,但實際上沒有去做。(好險)
32.覺得隻要盡力去拼任何事都能成功。
33.洗澡時看見陰毛就想要剃掉。
34.想自助旅行、但又沒去過。
35.不會作曲就想作詞。
36.上課時老師罵「給我出去!」會回罵「出去就出去!」,但還是不動。
37.以重量訓練排解無從抒發的性慾。
38.不想讓別人見到自己的家人。
39.對服務業(如超商店員的態度)的要求嚴格起來。
40.對賭博產生興趣、開始預估賽馬的結果,但又不(能)賭馬。
41.對環境問題變得積極,但馬上又陷入絕望。
42.開始覺得三壘安打比全壘打更有魅力。
43.覺得穿三角褲很遜,改穿四角褲。
44.迷上DQ或FF係列作品而想成為遊戲設計師,但頂多隻想出外傳劇情或新道具。
45.購買太陽眼鏡。
46.當母親問「去哪裡?」,隻會回答「就外面」。
47.想湊人組樂團,又沒有組。
48.有時後會跟風買些當紅的鑰匙圈(之類的小物)。
49.會產生覺得自己班上所有女生都是公車的被害妄想。<
50.隻是看了赤川次郎的書,就自以為是愛書人士(就像看了倪匡便自認懂文學)。
51.偶而聽強調低音的音樂。
52.趁校外教學時抽煙。
53.突然覺得自己過去收集模型或棒球卡之類物品的行為很幼稚,急著把東西處理掉。
54.在浴室洗頭髮的時候,會突然把髮型弄成飛機頭然後觀察鏡中自己的造型。
55.會說「我就是我,不是別人。」
56.在飲料Bar將各種飲料混合。
57.認為上了高中後,起碼可以交到一兩個女友。
58.對於專業人士的評論很嚴格。
59.覺得『紀錄片 = 作假、綜藝節目 = 無趣、新聞節目 = 流水帳』,又不關電視。
60.在開玩笑時,一定會拿現場身邊的友人來開人身攻擊的玩笑,當對方生氣就會說對方開不起玩笑,叫大家鄙視他,當對方反擊開玩笑回他時,就會不爽動人打人。
61.會很在意中二病這個詞而跑去查詢。
62.對線上角色名稱的設定有一定的執著,取出來的名字通常很做作。
出處: Komica Wiki

2009年5月28日 星期四

求神問鬼(vow of death)

2800

正確的說應該是恐怖片+kuso

其實裡面沒有什麼很恐怖的劇情

只有靠一些噁爛的畫面來嚇唬人

重點在那裡呢?

就是拜拜求神問鬼時

如果真的如願以償了

一定要去還願喔

當地球停止轉動(The Day the Earth Stood Still)

2720

這是一部具有環保教育預義的片子

人類:外星人,你為什麼要來我們的星球?

外星人:你們的星球?地球並不是你們的。

這句話真的很令人深思

我們一直以為地球是我們的

事實上我們只是生存在地球上的一個物種

人類使用著地球上的資源

但是

人類並沒有地球的擁有權

卻加速地球的毀滅

在這個生態圈裡面

人類是具有毀滅性的

毀滅這個生態圈的

所以在外星人的眼裡

要救地球最快的方法

就是諾亞方舟

但是

不需要載人類

2009年5月26日 星期二

最強的團隊


在同事的推薦下
知道了醫龍這部日劇

劇中的一句話
一直讓我謹記在心
"只有最強的人,才配和你一起工作"

在一個團隊中,要盡心盡力的把自己負責的工作。
做到最好
不要讓其他的夥伴分心觀照自己
這夥伴們才能專心的做好自己的工作

好的團隊
成員之間是在溝通協調
而不是指揮駕馭

在執行任務前一定要先做好準備
不要到時才手忙腳亂的

以一個手術團隊來說
只能有100分的完美手術
不能接受其他的結果

一個強的團隊
並不需要什麼能以一抵百的神人
只需要每個成員都能做好自己的分內事。

T8裙子給騎士穿,褲子給我穿

WoWScrnShot_052609_014546

今天索林姆死很大

還好過了十二點有過

今天公會團很少打那麼晚

我也順利的那拿到第58個牌子

混到大法師群中

不過很明顯的英雄等級的NPC

還是比我高了一點

2009年5月25日 星期一

DbProviderFactories,DbProviderFactory

利用DbProviderFactories.GetFactory取得DbProviderFactory 如此一來在Project中就不需要把ODP或是System.Data.OracleClient.dll加入參考了。 而且隨時可以自由的透過config檔作切換 程式也不需重新編譯過 在TDD的開發方法中,你也可以自己作一個Mock的DataProivder。
class Program
{
static void Main(string[] args)
{
DbProviderFactory factory = DbProviderFactories.GetFactory(ConfigurationManager.ConnectionStrings["DB"].ProviderName);
DbConnection conn = factory.CreateConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["DB"].ConnectionString;
DbDataAdapter da = factory.CreateDataAdapter();
da.SelectCommand.CommandText = "Select * From table1";
da.SelectCommand.Connection = conn;
DataTable dt = new DataTable();
da.Fill(dt);
}
}

App.config檔

<?xml version="1.0" encoding="utf-8" ?>




老情歌

今天突然想聽個音樂
提神一下
翻呀翻的
"經典情歌"
這是啥?
看看裡面有什麼
疑「老情歌」跟「小情歌」有什麼不一樣
聽看看

前奏一下
就讓我回到80年代
那是我還在唸國小
好懷念的感覺

聽著聽著
聽到…
我說情人卻是老的好 曾經滄海桑田分不了
短短18個字 卻扣人心弦
眼淚已經在眼眶打轉了

她就要回高雄了
最近只要提到這件事
她就心神不寧
我也不知道怎麼安慰她

我想我找到可以安慰她的18個字了






作曲:陳耀川
填詞:李安修

我只想唱這一首老情歌 讓回憶再湧滿心頭
當時光飛逝 已不知秋冬 這是我唯一的線索

人說情歌總是老的好 走遍天涯海角忘不了
我說情人卻是老的好 曾經滄海桑田分不了

我只想唱這一首老情歌 願歌聲飛到你左右
雖然你不能和我常相守 但求你永遠在心中

我只想唱這一首老情歌 讓往事迴盪在四周
啊事到如今 已無所可求 這是我僅有的寄託

2009年5月24日 星期日

1408

今天吃晚餐時
打開電視
疑…
這是什麼
電視畫面右邊寫著1408
1408是什麼意思?
看裡面人物的穿著不像是西元前後1408年都不像
繼續看下去…

原來他是一部可怖片
1408是一間猛鬼套房
劇情大概就是這樣

在一個勇士的面前
能泰山崩於面前而面不改色
能擊倒一個戰士的
並不是什麼可怕或是邪惡
而且內心真正的脆弱

本片就是用子女的逝去
擊倒一個父親

可怕的畫面都只是突然來一下
並沒有什麼很特別的點

2009年5月18日 星期一

她要回高雄了

這已經不是她第一次這麼跟我說
看來她真的很想回高雄
我很想要用盡辦法留住她
但又不忍心看她被兩股力量拉扯
勢必要有一邊先放手
才有辦法讓她輕鬆自在一點

所以我決定放手了

不知道他還在留在這裡多久
我現在能做的
就是珍惜現在我所能掌握的時間
讓她能多留一點回憶

再來就要過著單身的生活
或許
我會跟她一起去高雄

凡事都要留一手

從小到大
我看到的電視劇
師父教授徒弟功夫
總是會留下最後一招
為了防止不肖徒弟反咬師父一口的時候可以用

踏入職場
父母經常也都是這樣子叮嚀我

工作2年了
在職場上真的看到一些有留一手的前輩們
最後就因為留一手
讓自己變成了井底之蛙、敝帚自珍的情況

然而
我也見識到分享的力量
當大家發現新的知識、技術、方法時
彼此無保留的交流
大家都有成長茁壯
在分享的過程中
分享的人並不是單純的在付出
在其中會與大家碰撞出火花
大家會給你許多的回饋
施比受更有福

我們真的不需要為了防止那幾個
不肖徒兒

武裝自己,處處提防

這樣人生就太不快樂

2009年5月14日 星期四

Interface Base Data Access


using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.OracleClient;

namespace DBTypelessDEMO
{
class Program
{
static void Main(string[] args)
{

OracleConnection conn = new OracleConnection();
DataAccessLayer da = new DataAccessLayer();
DataTable dt= da.GetUserInfoTable(conn);
string name = da.GetUserNameByID("123123");
List list = da.GetUserList(conn);
}
}

public class DataAccessLayer
{
//DEMO1
public string GetUserNameByID(IDbConnection conn, string id)
{
string sql = "SELECT name FROM user WHERE id = :id";
IDbCommand cmd = PrepareCommand(conn, sql);
AddWithValue(cmd, ":id", id);

ConnectionState state = conn.State;
try
{
if (state == ConnectionState.Closed)
{
conn.Open();
}
IDataReader dr = cmd.ExecuteReader();

if (dr.Read())
{
return ProcRecord(dr);
}
return string.Empty;
}
catch (Exception ex)
{

throw ex;
}
finally
{
if (state == ConnectionState.Closed)
{
conn.Close();
}
}
}
//DEMO2
public List GetUserList(IDbConnection conn)
{
string sql = "SELECT name FROM user";
IDbCommand cmd = PrepareCommand(conn, sql);


ConnectionState state = conn.State;
try
{
if (state == ConnectionState.Closed)
{
conn.Open();
}
IDataReader dr = cmd.ExecuteReader();

List result = new List();

while (dr.Read())
{
ProcRecord(dr,result);
}
return result;
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (state == ConnectionState.Closed)
{
conn.Close();
}
}
}
//DEMO3
public DataTable GetUserInfoTable(IDbConnection conn)
{
string sql = "SELECT * FROM user";
IDbCommand cmd = PrepareCommand(conn, sql);
DataTable dt = new DataTable();
Fill(cmd, dt);
return dt;
}


private string ProcRecord(IDataRecord record)
{
if (record["Name"] == DBNull.Value || record["Name"] == null)
{
return string.Empty;
}
else
{
return Convert.ToString(record["Name"]);
}
}
private void ProcRecord(IDataRecord record,IList list)
{
if (record["Name"] == DBNull.Value || record["Name"] == null)
{
list.Add( string.Empty);
}
else
{
list.Add( Convert.ToString(record["Name"]));
}
}

//產生Command
private IDbCommand PrepareCommand(IDbConnection conn,string sql)
{
//準備 IDbCommand
IDbCommand cmd = conn.CreateCommand();
cmd.CommandText =sql;
return cmd;
}

//新增Parameter
private IDbDataParameter AddWithValue(IDbCommand cmd, string paraName, object value)
{
IDbDataParameter para = cmd.CreateParameter();
para.ParameterName = paraName;
para.Value = value;
cmd.Parameters.Add(value);
return para;
}

//Adapter 中的Fill功能
private void Fill(IDbCommand cmd, DataTable dt)
{
IDbConnection conn = cmd.Connection;
if (conn == null)
{
throw new NullReferenceException("conn");
}
ConnectionState state = conn.State;
try
{
if (state == ConnectionState.Closed)
{
conn.Open();
}
using (IDataReader dr = cmd.ExecuteReader())
{
dt.Load(dr);
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (state == ConnectionState.Closed)
{
conn.Close();
}
}
}
}
}

非同步寄Mail

非同步(Asynchronous)的設計方式。我在們程式結束前,常常沒有辦法確定所有的mail是否傳送完成。所以這個範例如使用ManualResetEvent類別,利用WaitOne()Set()方法控制。等到所有的mail傳送完成才對離開foreach loop
using System.Net.Mail; 
using System.Threading;

protected static void SendMail(IEnumerable<MailMessage> msgs, string smtp_host)
{
foreach (MailMessage msg in msgs)
{
SmtpClient smtp = new SmtpClient(smtp_host);
smtp.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
ManualResetEvent wait = new ManualResetEvent(false);
smtp.SendAsync(msg, new object[] {wait });
wait.WaitOne();
}
}
public static void SendCompletedCallback(object sender, AsyncCompletedEventArgs e)
{
object[] tokens = (object[])e.UserState;
ManualResetEvent wait = (ManualResetEvent)tokens[0];
wait.Set();
}