目前分類:臥龍論IT (87)

瀏覽方式: 標題列表 簡短摘要

從單機到主從式,在走向雲端架構。有人說未來的世界將是兩個端點:雲端+終端。在此我把它稱之IT未來的『兩端經濟』,在本文中我將著眼在終端設備的整個演進跟走向,以及未來的商機。

 

劉逸 發表在 痞客邦 留言(0) 人氣()

前陣子看了一本不錯的書『The 3th screen(中譯本叫做:決戰第三螢幕)。原本只是順手在誠品翻了翻,但覺得有些關念不錯於是買回來在過年期間看了一下。行動的商機早就已經成形,尤其是智慧手機的來臨,世界已經變的不同了。人們從早期的電視螢幕,來到PC的第二個螢幕,如今第三個螢幕敲敲來襲:智慧手機的降臨與擴散將顛覆許多的商業慣性跟行銷模式。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

『硬帶軟』內在的實質含意是『軟體加值,來提高硬體裝置的價值』;『硬到軟』則不同,他訴求的是『從硬性商品走向軟性商品,乃是一種革新』。當value add vs revolution想必後者對世界產業的影響更為劇烈,這將是IT未來的幾個趨勢之一。若要抓住消費者的心,或許該跳脫提高附加價值的角色,進而轉向提供截然不同的創新體驗。這種創新體驗革命儼然已經在IT產業中發酵,軟性經濟已經來臨只是大家還渾然不覺而已。

 

劉逸 發表在 痞客邦 留言(0) 人氣()

前一陣子跟member在做系統效能調校,發現只要跑久一點就會出現heap out of memory,初步認定應該是有地放造成了memory leak的問題,所以開始去找了一個可能的方向,也還算順利後來問題解掉了,在此也提供一些心得,讓其他飽受memory leak這種問題的使用者參考~~

 

劉逸 發表在 痞客邦 留言(1) 人氣()

抽象藝術(Abstract Art):泛指20世紀反歐洲模擬自然之傳統,所產生的繪畫風格。其風格呈現有二:一是將自然的外貌約簡為簡單的形象,二是將不以自然形貌為基礎的藝術構成。上述觀點若套用在程式之上,其實程式的發展到後其不也是再追求抽象化的發展方式,舉例而言從程序語言到物件導向、從單機到雲端,這些趨勢不都是往抽象化程式高的發展。本文中會中藝術的發展來衍生到程式語言的發展,算是天馬行空的一篇文章,有興趣的讀者可以姑且聽聽囉!

 

劉逸 發表在 痞客邦 留言(1) 人氣()

泛型(Generic):一邊解放類別跟函式的僵固型態,一邊提供編譯驗證機制。看視彈性至極、又兼具嚴格規範的一種機制。對程式設計師而言他的出現使得很多程式可以有更高reuse的機會;對編譯器而言,也更能檢查出原本應該於runtime出現的error。提供彈性、提供可驗證性,一個極具巧思的機制,在這我就依照自己的想法來對此加以論述,有興趣的朋友們不妨聽聽。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

在OO的世界中,多型就是利用dynamic binding的機制,在執行期間才動態決定所需呼叫的實際instance之函式為何,達到相同的呼叫方式而能產生不一樣的行為反應(即同名異式)。但從廣義的多型來看其實他還細分成兩大類,且各自可以在往下細分,下面將針對廣義的多型加以描繪希望對讀者能有所助益。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

老樣子,還是強調名詞的存在是讓他能更容易的溝通,簡潔的敘述就可以讓雙方達成共識。但若只是想要用硬背的將名詞定義記住而不知當中的內涵,我想那倒不如捨去這些名詞,直接以白話開場還來的更有意義一些。在O.O.中常會聽到兩個名字”is-a”跟”has-a”下面就針對兩者做介紹,希望對讀者有所幫助。

 

劉逸 發表在 痞客邦 留言(3) 人氣()

我常這樣認為:簡單是藝術、複雜是工程,兩者並不會互相排斥而應該是合作無間。極簡的iPhone顛覆了手機的使用行為,背後卻是複雜的觸控原理、輕薄的機身跟一機成形的機構,這些複雜的工程才能成就出iPhone帶給大眾的豐富使用者體驗。在我來看,藝術才能帶給人們直接的感官或使用體驗上的刺激,而工程是上述光鮮外表背後默默苦幹的功臣。

 

劉逸 發表在 痞客邦 留言(2) 人氣()

最近一直再談雲,也努力在看如何在雲端的世界中跳脫me too,獲取青睞。造雲…造雲…造雲…突然想到趙雲。或許要造雲真的需要用趙雲的氣魄來造雲~~

 

劉逸 發表在 痞客邦 留言(3) 人氣()

在程式設計當中常會聽到這兩個詞彙:『Overloading』、『Overriding』。但也發現好像有一些programmer對此兩的名詞不太清楚,所以下面會加以說明,提供大家參考。另外,定義只是初步的認知而已,我不管在上課或工作上都不斷強調請搞清楚Why的層次,在此也會盡可能簡單的說明一下!

 

劉逸 發表在 痞客邦 留言(8) 人氣()

IPO model在MIS當中應該很常聽到這樣的術語,概念其實很簡單,主要就是四個重點:input、process、output跟feedback等四塊。而其中,其實程式不就也是如此,當有一個函式,也是先透過parameter list接收外界資料(input)、在進行函式的處理(process)、之後再將資料輸出(output),而其將輸出將回饋給系統做進一步的決策判斷或運作處理。專案的進行其實也是如此,但卻往往很多人忘了最後一個步驟也就是feedback。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

介面為OO中不可或缺的標準化規範,當有類別需要共同遵循每些規範時,我們變可以使用介面來制訂出這些規則,之後再交由下層的類別實做以確保這些類別會共同遵循介面所開之規範。如此,以後就可以利用介面來操作物件。這也就是design pattern中一直強調的『針對介面撰寫程式,避免針對具象類別撰寫程式』。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

為什麼會把ORM、database跟serialization這些詞一起談呢?因為常聽到許多人再討論怎麼用ORM?ORM的相關技術?database的連接方式JDBC語法如何使用?serialzation(序列化)又是什麼一回事?在Java中怎麼將物件做為可序列化?好多人一直談技術、談語法,但我只是想提醒why ORM?why JDBC?why serialization?

 

劉逸 發表在 痞客邦 留言(1) 人氣()

OO世界裡一直是真實世界的縮影,在真實世界中並非所有的事物皆可具體化,既然如此OO中當然也產生了不可實體化的類別來對應描述之,我們謂之『抽象類別』。

 

劉逸 發表在 痞客邦 留言(1) 人氣()

現代電腦系統大多依照Von Neumann Architecture設計而成,其中一特色stored programming乃指『程式執行一定要將欲執行的指令跟資料放入記憶體方可執行』,由此可知執行過程中記憶體所佔的地位厥偉之處。但許多工程師卻搞不清楚記憶體中的stack跟heap space到底有何居別,下面簡單針對兩者加以論述,希望對讀者有所幫助~

 

劉逸 發表在 痞客邦 留言(16) 人氣()

OO中使系統能具備彈性跟動態擴充的利器:Polymorphism(多型)。多型色是OO四大特色中對初學者而言較為抽象的概念,簡單來說多型只是想延後function binding的時間,等到執行時期才決定要呼叫哪一個function。如此,可使程式的執行不在於編譯時期決定,而延後到執行期間才動態決定呼叫何者。例如:編譯時期只定義動物有一個walk() function,而在執行期間若為獅子那就動態呼叫獅子此類別的walk() function;反之若為人那就動態呼叫人此類別的walk() function。

 

劉逸 發表在 痞客邦 留言(7) 人氣()

繼承!OO中程式再利用大幅提昇的小幫手。為了避免重複開發造成的成本浪費及日後難以維護等問題,於OO中通常採用繼承的方式來再利用父類別已經定義好的屬性跟方法(在C++成為運作)。但需切記適度的繼承是好的撰寫習慣,若過渡濫用反而會招致許多不必要的問題產生喔。

 

劉逸 發表在 痞客邦 留言(2) 人氣()

封裝是物件導向中四大特色之一,簡單來說封裝就是適度的將資訊隱藏(Information Hiding),避免外界不當使用。在抽象化的過程,善加將定義類別中的屬性跟方法封裝,有利於日後系統維護時造成的許多不必要的問題喔。

 

劉逸 發表在 痞客邦 留言(2) 人氣()

在物件導向中,第一個要學會的不外乎就是Data Abstraction(資料抽象化)囉!其實,資料抽象化聽起來很籠統實際上就是定義類別的過程。而定義類別說來簡單,但如何將現實世界直觀的抽象化成類別也是一門學問勒。 

 

劉逸 發表在 痞客邦 留言(2) 人氣()