Cassandra Rant
Xexex's Java 和其他二三事
Java | 星期一 三月 15, 2010 | By ingramchen
昨天看了一篇 Cassandra 的 modeling 範例
WTF is a SuperColumn? An Intro to the Cassandra Data Model
這一篇我看兩次了,現在終於看懂一半了... NoSQL 號稱 schema free ,可以自由設計,可是遠比 Relational 還難設計很多。設計 Cassandra 的 'schema' 時,我們必需先想好要怎麼 query (你的 use case) ,然後才能下手。然後幾乎是一個 query...
JavaScript 函式與 new 運算子
良葛格的 Blog
function prototype javascript constructor 良葛格 | 技術 | 星期四 三月 04, 2010 | By caterpillar
小小筆記...
如果定義:
function Test() {
}
相當於:
var Test = {};
Test.constructor = Function;
Function.call(Test);
而建立物件:
var test = new...
最得意的專案
出頭鳥的Blog
工作心情 | 星期二 二月 02, 2010 | By secretguest0824
今年年初做了一個電信業的案子,當時還在外商,和幾個大陸同仁合作,
擔任SA,控管專案的工法和實作方式及任務分工,
我沒要求過同仁加班,甚至要求儘早下班,
偶爾互相送個小東西(收到成都帶來的辣椒醬真的很好吃),
一個34百萬的案子,準時開始,準時結束,
大家工作愉快...
從這個專案中,我體會到了,帶人就是帶Fu~Fu對了,
溝通直接了,簡單了,不會做錯了才講,
互相補位,有team的感覺,專案失敗率大為降低,
相信我,最重要的不是規範,
因為
這是個靠人的產業.
Gmail POP3 登入帳號一直顯示錯誤
piaoyi's blog - 站在煩惱裡仰望幸福
username accepted pop3 gmail error password | Tech | 星期一 二月 01, 2010 | By piaoyi
這二天,Outlook 的 Gamil 帳號突然莫名的不能用了= =
一直跳帳號密碼錯誤,要重新輸入,打了N 遍是不行,掯,是又 bug 了嗎
但 web 又可以 login ,哇咧
不過最後終於找到了,原來是 pop3 的帳號密碼被 google 鎖住了,
可能是昨天我在設 HD2 手機上的信箱,打錯帳密,然後幾次就鎖住了,被懷疑是攻擊,但我手機設的是 IMAP4 丫,鎖我 POP3 幹啥呀,嗚~~~
不管如何,提供下找到的解決方法,不然又會像我一直掯掯掯還不知為啥= ="
去...
counting sort
low level programmer
java sort counting | Java | 星期五 一月 29, 2010 | By shooeugenesea
description
覺得如果不是寫程式的話, counting sort 還蠻難想像的.
照自己以為的 counting sort 寫出來, 如果有錯請指導了謝謝.
reference
這是 wiki 上的說明以及 C 的實作.
codes
package test;
public class TestCountingSort {
/**
* @param target is the unsorted number array
...
打包不同環境設定檔的 build.xml
low level programmer
ant | Others | 星期日 一月 24, 2010 | By shooeugenesea
description
上次做了可以部署不同環境的 build.xml 之後,
隨著產品的完整與使用的其他專案愈來愈多, 設定檔對應的環境也愈來愈多了.
不可能每次加個環境的設定檔就加個 target.
所以就改寫 build.xml 使能夠給定參數決定要複製哪一份設定檔.
另外原本的版本每次打包前都要跑測試, 不過這有點慢,
而且只有負責開發的人才需要測試, 給 user 自己部署的話是不用跑測試的,
所以就加了 target 使能夠直接打包不用跑 test.
...
炒一下泛型的冷飯
良葛格的 Blog
java 良葛格 equals generic | 技術 | 星期四 一月 14, 2010 | By caterpillar
考慮你要製作一個節點物件,節點可內含的物件可以指定其型態(就如同List、Set等內含元素可指定型態),你可以使用泛型語法如下進行定義: class Node <T> { Node< T > next; private T value; T getValue() { return value; } void setValue( T value) { this.value = value; ...
在變與不變之間
良葛格的 Blog
nonvariant 良葛格 contravariance scala covariance | 技術 | 星期二 一月 12, 2010 | By caterpillar
如果你定義了以下的類別: class Node[T](val value: T, val next: Node[T]) 如果在以下的例子中: class Fruit class Apple extends Fruit { override def toString = "Apple" } class Banana extends Fruit { override def toString = "Banana" } val apple = new...
呱呱呱
良葛格的 Blog
structural-typing 良葛格 duck-typing scala | 技術 | 星期五 一月 08, 2010 | By caterpillar
對於物件所共用擁有的行為,如果是同一種物件,可以將共同行為抽離設計至父類別,由子類別實作共同行為,對於非同種物件,可以將之抽離出來設計為特徵(Trait),讓不同的類別之間實作該特徵。 然而有時候,你就是有像這樣的需求 : class Duck { def quack = "呱...呱..." } class Man { def quack = "呱~~呱~~" } 也許這個人是穿著鴨子吉祥物服裝要呱呱叫也說不一定,你如何設計一個方法,讓鴨子...
Scala 路徑相依型態(Path-dependent type)
良葛格的 Blog
enumeration scala path-dependent-type 良葛格 | 技術 | 星期五 一月 08, 2010 | By caterpillar
類別中可以有類別,基本上稱之為內部類別(Inner class),例如: class Outer { private val x = 10 class Inner { private val y = x + 10 } } 內部類別可以存取外部類別的成員(包括private成員),而外部類別無法存取內部類別的private成員,如果你想要外部類別可以存取內部類別的private成員,可以參考 存取修飾 的介紹 。 ...
轉mis的人生
出頭鳥的Blog
工作心情 | 星期三 一月 06, 2010 | By secretguest0824
轉來MIS快半年了,這是生涯第一次當MIS,
一切沒有太大的驚奇和意外,這個行業我太熟了,
沒有超乎預期的狀況,不過還是有一些心得.
1.進了不動產業,準備過一次不動產經紀人考試,雖然因時間體力不支少學一科而棄考,但專業已學到,對以後的投資和資產配置很有助益.
2.MIS的臨時需求真的很多,scope都不大,但技術上的難度不見得就低.不過不會同時跨太大的領域,不會同時要會Java 和 C#,但要同時會MS系列的一堆東西.ASP,VB,vbs,.Net...
3.就升遷來說不用想太多,喜歡穩定的人適合這...
Scala 特徵(Trait)的堆疊修飾(Stackable modification)
良葛格的 Blog
scala stackable decorator 良葛格 modification trait | 技術 | 星期日 十二月 20, 2009 | By caterpillar
特徵(Trait)可以讓你定義沒有實作的抽象方法,也可以讓你定義有實作的具體方法, 事實上,抽象類別可以作的事,特徵幾乎都可以作(特徵也可以定義資料成員以持有狀態), 你可能會想,特徵跟抽象類別有何不同? 就語法上來看,除了 類別可以繼承或具有多個特徵 ,但只能繼承一個抽象類別之外,特徵與抽象類別間的不同點,就是 特徵不能定義主要建構式的參數 ,還有就是 特徵中定義方法時,super呼叫是動態綁定的 (類別中的super是靜態綁定的,也就是你在類別中寫下super.somMethod()時,你知道所呼叫的...
物件相等性
良葛格的 Blog
java 良葛格 equals hashcode | 技術 | 星期二 十二月 15, 2009 | By caterpillar
在Java中,如果要比較兩個物件的實質相等性,並不是使用==,而是必須透過equals()方法,例如: String s1 = new String("Java"); String s2 = new String("Java"); System.out.println(s1 == s2); // 顯示 false System.out.println(s1.equals(s2)); // 顯示 true ...
Struts2 + Tiles2 架構整合
Allen's Java Blog
tiles2 struts2 | Java | 星期四 十二月 10, 2009 | By jiaming
我們知道 Struts2 提供了 plug-in 可以與 Tiles2 整合, 但此種整合方式是在 struts2 上面暴露 tiles2 的使用方法~如:
<package name="default" extends="tiles-default">
<action name="IndexAction" class="tutoial.IndexAction">
<result name="success" type="tiles">base....
When will seam create compoent instance.
閣樓貓的五四三 (About Cat)
component create seam | JBoss&Seam | 星期一 十一月 30, 2009 | By atticcat
When will seam cerate component instance?
When component was referenced by a EL in pages.xml or .xhtml.
When @In(create=true) a component
@In
Bean2 bean2;
When @AutoCreate on a component's class element.
@Name("bean2"...
C pointer to a function
low level programmer
C/C++ | 星期三 十一月 25, 2009 | By shooeugenesea
description
純粹拿來方便回憶
codes
#include <stdio.h>
void bubble( int numbers[], int length, int (*compare) (int, int) );
// 也可 void bubble( int numbers[], int length, int (*) (int, int) );
int ascending( int a, int b ) ;
int descending( int...
codeline 的控制
low level programmer
codeline | Others | 星期三 十一月 18, 2009 | By shooeugenesea
專案通常會有三種環境: DEV / UAT / PROD.
為了讓每次的佈署與修改的 bug 都有好的版本管理方式, 我列一下一個需求進來該有怎樣的操作流程.
希望看官們能給點意見, 謝謝! :D
(這只是草稿, 希望以後可以適當的完整, 也不要太複雜好讓人容易記住).
- create branch for development
- create branch from trunk to /branches/DEV/
- develop in...
C + bubbleSort + linearSearch + binarySearch
low level programmer
binarysearch c linearsearch bubblesort | C/C++ | 星期日 十一月 15, 2009 | By shooeugenesea
description
最近在學 C, 書上講到 bubble sort 和 linear search 和 binary search.
自己練習寫, 練習完要往接下來的章節看就要刪掉練習程式了感覺有點可惜.
記錄一下...
codes
#include<stdio.h>
#define ARY_SIZE 20
#define RANDOM_RANGE 20
void bubbleSort(int ary[], int length);
void...
adapter
low level programmer
pattern design | design pattern | 星期日 十一月 15, 2009 | By shooeugenesea
description
adapter pattern 有很多正式的講解方式,
不過為了快速回憶大概是什麼東西,
所以寫一點小小的程式來記.
不一定正確, 如果觀念不對請多質疑討論謝謝.
對我來說, adapter 就是拿來隱藏第三方程式,
例如第三方程式提供了數百個 method 或功能可用,
為了 user code 不依賴在那數百個功能上,
所以寫一個 adapter 只提供幾個願意開放的功能給 user code.
另外 adapter...
Get rid of getter and setter, toward domain driven...
Xexex's Java 和其他二三事
Java | 星期日 十一月 08, 2009 | By ingramchen
這是一個老題目囉,會再次寫是因為現在又多了一些經驗,有了新的想法。getter setter 這類的 property accessor 是相當常見的程式手段,
很多語言甚至內建。開發期間,我大部份的時間都在避免使用 getter setter,盡可能採用別的寫法,也希望別的開發人員能 follow。不過,有人反駁說,getter/setter 在語言或IDE都內建了,即然創作者設計出這個功能來,不就是要鼓勵開發者運用這個功能嗎?為何有方便的工具/寫法卻不去用咧!?針對這種問題,請各位看一下下面的例子:...
[分享] 節錄版本控制與平行開發文章重點的投影片
low level programmer
Others | 星期五 十一月 06, 2009 | By shooeugenesea
今天在公司分享介紹一篇文章
Streamed Lines: Branching Patterns for Parallel Software Development
有做投影片節錄重點.
http://docs.google.com/present/view?id=dcsswcvv_5f65vrwfp
不過這篇文章好像蠻久的了, 而且也只是大概看一下, 如果有誤解或是該抓的重點沒抓到請提出來討論喔.
A Little Functional Programming Experience
Xexex's Java 和其他二三事
Java | 星期六 十月 24, 2009 | By ingramchen
很久沒寫 blog 了,沒為什麼,就是懶而已... 另一方面則是沒什麼感想可以寫。過去一兩年來,寫的程式比較雜,也多學了 haskell, python, actionscript 和 scala 幾個語言。haskell, scala 和 python 我都是寫來玩的,actionscript 則是工作上需要寫遊戲,硬著頭皮去學。actionscript 到了 3.0 之後,越來越像 java,所以一開始寫起來沒什麼障礙,總之當做 java 用,大概都會對。
後來學了 scala 之後,想寫個 toy...
FRC筆記 - Event Dispatching Thread (二)
Javaの設計哉之道
edt swing | Swing | 星期五 十月 09, 2009 | By UndeadJ
Swing 中執行緒是基於單一規則:
EDT 負責去執行任何修改元件狀態的方法。 也就是說我們在建立Swing時,應該在EDT上建立而不是在其它地方。 不個上面這點,是很多人容易犯錯的地方,如下: public static void main(String[] args) { <br /> final JFrame f = new JFrame(); <br...
SwingX - Painter
Javaの設計哉之道
swingx swing java | Swing | 星期四 十月 08, 2009 | By UndeadJ
來看看,即將在JDK7中加入到Swing的Painter在玩什麼花樣... ( P.S 在第四個時程已經加入 ) SwingX 使用了這個介面(沒錯,Painter是個Interface),來繪製它元件的外觀。 這點從各類的元件(SwingX)在覆寫 protected void paintComponent(Graphics g) 中就可以得知。 下面是JXPanel覆寫paintComponent(Graphics g)的程式碼 ( backgroundPainter就是Painter ) ...