<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    yeshucheng
    追逐自己,追逐方向,心隨悟所動
    posts - 24,comments - 24,trackbacks - 0
     

    云計算應該所具備的特質如下:

    1.         高負載

    2.         正常運轉

    3.         容錯性

    4.         分布式

    5.         容易伸縮

    Erlang(讀音:['?:læ?]厄蘭,中文意思為:占線小時(話務負載單位))正是由于它屬于開放的電信業務平臺,也就不難理解它的意義了。幾乎完全具備以上特質,而且它也是典型的函數式語言。和我們OOP的思想有著截然不同的概念。在以下的學習過程中主要還是以《Erlang程序設計》這本書作為一個學習的依據。

    原子

    定義:在Erlang中原子用來表示不同的非數字常量值。這里說白了其實就是一種常量的定義。Erlang中原子是全局有效的,不需要像以前c/c++那樣通過宏來定義或者包含文件。在定義原子的時候只需要注意以下一些特點就可以:

    1.         一般情況原子是以一串以小寫字母開頭,后面有數字、字母、下劃線、郵件符號(@);

    2.         使用單引號引用起來的字符也屬于原子,例如’Monday’

    3.         一個原子的值就是原子本身;

    元組(tuple

    定義:首先它是Erlang中具有特質的一個定義,如果說把它和我們java中的一個JavaBean來類比可能稍顯類似,書上引用的是c語言數據結構來解說元組的結構,盡管非強淺顯能看懂。但是作為一個java程序員我覺得采用自己熟悉的語言結構來對比,學習效果更佳吧(對于記憶有很大幫助)。

    比如我們一般對于JavaBean的定義是如下結構:

    public class Person {

        private String name;

        private int height;

        private int footSize;

        private String eyeColor;

        // get/set...

    }

    那在我們引用定義的時候就可以直接:

    Person person1=new Person();

    person1.setName("yeshucheng");

    person1.setHeight(111);

    person1.setFootSize(40);

    person1.setEyeColor("black");

    ......

    與之相對應的是我們使用Erlang來定義了,對于Erlang的定義就截然和c/c++或者java有著明顯不同,相對于更加精煉明了:(這里我直接使用書上說的所謂二元組)

    Person={person,{name,yeshucheng},{height,111},{footsize,40},{eyecolor,black}}.

    沒錯,就是這么直截了當的來定義,甚至賦值(嚴格說Erlang不能這么說,但是為了好記憶可以這么理解)

    對于以上的定義這里要說明注意的地方:

    1.      定義元組,元組中字段沒有名字,通常可以使用一個原子作為元組的第一元素來標明(請注意這里花括號內第一原子都是解釋逗號后面一個說明),這個元組所能代表的含義就是上面列出的程序定義了。

    2.      創建元組,在聲明元組的同時其實已經創建了元組,這個也是Erlang的一大特點之一了。如果不再使用,也隨之銷毀。Erlang使用的垃圾搜集器去收回沒有使用的內存。

    如:F={firstName,wan}

    L={lastName,andy}

    P={person,F,L}//這里就應對我們第一條說明的一樣第一個名稱表示就是后面所有逗號的整體列舉,如果在Erlang環境中對于上面寫完后,直接敲回車(語句結束后存在”.”這里稍微注意下)就會得到以下結果,正好印證我們所說明這這個問題了

    =={persong,{firstName,wan},{lastName,andy}}.

    如果在創建過程中存在一個未定義的變量,則程序編譯就會產生錯誤。

    3.      提取元組的字段值,剛才我們在程序中有定義一個Person的元組而且也設置值了,現在如果我們想得到或者說提取我們的值,那需要如何而做呢?首先我們采用基本的元組方式來試著看看如下:

    1>    Point={point,10,45}.

    2>    {point,X,Y}=Point.

    3>    X.

    10

    4>    Y.

    45

    注明:這里又再次強調下point逗號后面的都是為他而說明的。

    1>Person={person,{name,yeshucheng},{height,111},{footsize,40},{eyecolor,black}}.

    2>{_,{_,Who},{_,_},{_,_},{_,_}}=Person.

    3>Who.

    yeshucheng

    說明下,如果上面想得到的是值,那么位置響應對號入座然后Who換成What就成(我開始也犯錯誤,編譯立馬出錯,后來想想用過一個What試試,果然正確,呵呵)。

    列表

    定義:列表第一個元素稱為列表的頭(head,后部分稱為列表尾(tail),一般[H|T]來標示列表了。

    注:列表的頭可以是任何東西,但是列表的尾通常還是一個列表。

    至于具體的細節問題還是需要找找相關文檔看下為好,它的概念牽涉到后面的非常多的定義了。

    posted on 2008-12-09 10:20 葉澍成 閱讀(1014) 評論(0)  編輯  收藏 所屬分類: erlang學習

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产免费无码一区二区| 欧洲美女大片免费播放器视频| 国产又黄又爽胸又大免费视频| 亚洲福利中文字幕在线网址| 亚洲国产成人AV网站| 午夜视频在线在免费| 亚洲成aⅴ人片久青草影院按摩| 成人啪精品视频免费网站| 亚洲精品第一国产综合野| 野花高清在线电影观看免费视频 | a级毛片无码免费真人| 亚洲校园春色另类激情| 九九九精品成人免费视频| 亚洲av永久无码一区二区三区| 日韩一区二区三区免费体验| 羞羞视频免费网站含羞草| 亚洲宅男天堂在线观看无病毒| 99久9在线|免费| 精品亚洲国产成人| 国产资源免费观看| 一级做a爰片久久免费| 亚洲αv在线精品糸列| 黄色网址免费大全| 亚洲av无码一区二区三区天堂| 亚洲精品岛国片在线观看| 暖暖免费在线中文日本| 91嫩草亚洲精品| 免费人成在线观看视频播放| 少妇性饥渴无码A区免费 | 国产成人免费网站在线观看| 一区视频免费观看| 亚洲高清视频免费| 国产真人无遮挡作爱免费视频| 国产人成网在线播放VA免费| 久久久亚洲AV波多野结衣| 日本a级片免费看| 玖玖在线免费视频| 亚洲精品无码专区在线| 亚洲国产一二三精品无码| 国内免费高清在线观看| 未满十八私人高清免费影院|