JRuby語(yǔ)言實(shí)戰(zhàn)技術(shù)

出版時(shí)間:2008年6月  出版社:電子工業(yè)出版社  作者:(德)駱古道;王德志;姜偉  頁(yè)數(shù):505  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

JRuby語(yǔ)言是目前唯一能夠運(yùn)行Rails應(yīng)用軟件框架的語(yǔ)言。它包括兩個(gè)方面:Java和Ruby,其中,Java語(yǔ)言是當(dāng)今最熱門(mén)的一種跨平臺(tái)的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,Ruby 則是一種簡(jiǎn)單明了、擴(kuò)展性強(qiáng)和移植性好的面向Web應(yīng)用程序的開(kāi)發(fā)工具。實(shí)踐證明,Java與Ruby的結(jié)合與推廣,已經(jīng)給應(yīng)用軟件編程帶來(lái)了革命性的變化。  本書(shū)比較詳細(xì)地介紹了JRuby語(yǔ)言基本概念、運(yùn)行環(huán)境的安裝、集成開(kāi)發(fā)環(huán)境的搭建以及構(gòu)建系統(tǒng)及其運(yùn)用;對(duì)JRuby語(yǔ)言的核心成分:對(duì)象、類、模塊等進(jìn)行了較為深入的討論,并對(duì)其關(guān)系進(jìn)行了全方位的解釋;同時(shí),針對(duì)如何開(kāi)發(fā)JRuby語(yǔ)言終端軟件、JRuby語(yǔ)言桌面軟件、以及如何生成自己的JRuby語(yǔ)言軟件包、如何操控Java語(yǔ)言豐富的資源、利用JRuby語(yǔ)言的專有框架Rails開(kāi)發(fā)網(wǎng)絡(luò)軟件等內(nèi)容進(jìn)行了示范性講解。    本書(shū)適合于希望了解和使用JRuby語(yǔ)言的廣大程序員。

作者簡(jiǎn)介

駱古道,網(wǎng)名Cnruby,八十年代初畢業(yè)于西北工業(yè)大學(xué)數(shù)理力學(xué)系,1988年公派留學(xué)德國(guó),從事組合最優(yōu)化理論研究,從九十年代初期起一直致力于計(jì)算機(jī)領(lǐng)域軟件開(kāi)發(fā)、設(shè)計(jì)和管理等方面工具,個(gè)人博客為“道喜技術(shù)日記”。

書(shū)籍目錄

第一部分  JRUBY語(yǔ)言理論及其開(kāi)發(fā)環(huán)境     第1章  介紹JRUBY語(yǔ)言       1.1  RUBY語(yǔ)言與JRUBY語(yǔ)言       1.2  為什么要學(xué)習(xí)JRUBY語(yǔ)言      1.3  利用JAVA語(yǔ)言資源與JRUBY程序      1.4  JRUBY語(yǔ)言與JAVA語(yǔ)言實(shí)例分析     第2章  開(kāi)始JRUBY語(yǔ)言      2.1  JRUBY語(yǔ)言運(yùn)行環(huán)境搭建      2.2  JRUBY語(yǔ)言開(kāi)發(fā)環(huán)境:NETBEANS      2.3  JRUBY語(yǔ)言開(kāi)發(fā)環(huán)境:ECLIPSE      2.4  JRUBY語(yǔ)言的交互執(zhí)行環(huán)境:JIRB     第3章  JRUBY語(yǔ)言構(gòu)建系統(tǒng)      3.1  構(gòu)建系統(tǒng)概述      3.2  構(gòu)建系統(tǒng)工具:RAKE      3.3  構(gòu)建系統(tǒng)工具:BUILDR      3.4  利用構(gòu)建系統(tǒng)工具開(kāi)發(fā)JRUBY程序     第4章  JRUBY語(yǔ)言和JAVA語(yǔ)言實(shí)例比較      4.1  基于插件技術(shù)的JAVA語(yǔ)言程序      4.2  用JRUBY語(yǔ)言直譯JAVA語(yǔ)言程序      4.3  基于RUBY技術(shù)的JRUBY程序     第5章  對(duì)象和類      5.1  對(duì)象、類和超類概述      5.2  變量、常量、函數(shù)和類的約定和規(guī)定      5.3  開(kāi)放類      5.4  類和對(duì)象的關(guān)系      5.5  虛擬類、變量和函數(shù)      5.6  類繼承      5.7  類OBJECT     第6章  類(CLASS)和模塊(MODULE)      6.1  類和模塊概述      6.2  模塊和命名空間      6.3  進(jìn)一步使用模塊及其相關(guān)類      6.4  單態(tài)類及其使用      6.5  混入技術(shù)    第二部分  JRUBY語(yǔ)言的兩個(gè)世界:RUBY和JAVA     第7章  JRUBY語(yǔ)言終端應(yīng)用      7.1  JRUBY語(yǔ)言終端應(yīng)用的作用      7.2  基于系統(tǒng)終端的JRUBY語(yǔ)言程序      7.3  基于JAVA語(yǔ)言資源的JRUBY終端程序      7.4  現(xiàn)實(shí)世界的FLICKR應(yīng)用實(shí)例     第8章  JRUBY語(yǔ)言GUI應(yīng)用      8.1  JRUBY語(yǔ)言的桌面框架概述      8.2  直接基于SWING的JRUBY桌面程序      8.3  基于線程的JRUBY桌面程序      8.4  PROFLIGACY框架概述      8.5  PROFLIGACY框架的JRUBY程序桌面設(shè)計(jì)      8.6  PROFLIGACY框架的JRUBY程序行為開(kāi)發(fā)     第9章  開(kāi)發(fā)JRUBY語(yǔ)言軟件包      9.1  JRUBY語(yǔ)言軟件包的概念與作用      9.2  開(kāi)發(fā)純JRUBY語(yǔ)言軟件包      9.3  開(kāi)發(fā)混合語(yǔ)言軟件包     第10章  結(jié)合JAVA資源的JRUBY程序      10.1  多核時(shí)代的JRUBY程序      10.2  監(jiān)視程序性能的JRUBY程序      10.3  二進(jìn)制代碼的JRUBY程序     第11章  JRUBY語(yǔ)言的RAILS WEB開(kāi)發(fā)框架      11.1  RAILS WEB開(kāi)發(fā)框架基本環(huán)境      11.2  RAILS框架的第一步      11.3  RAILS框架的控制類與視圖模板      11.4  RAILS WEB應(yīng)用運(yùn)行于網(wǎng)絡(luò)服務(wù)器      11.5  RAILS框架相關(guān)工具     第12章  基于資源的RAILS應(yīng)用軟件開(kāi)發(fā)      12.1  RAILS框架的REST技術(shù)概述      12.2  介紹RAILS框架ACTIVERESOURCE技術(shù)      12.3  開(kāi)發(fā)基于資源的RAILS網(wǎng)絡(luò)應(yīng)用主從程序    附錄A  JRUBY語(yǔ)言和RUBY語(yǔ)言技術(shù)資料    附錄B  本書(shū)相關(guān)軟件及其工具

章節(jié)摘錄

  第1章 介紹JRuby語(yǔ)言  Ruby語(yǔ)言是一門(mén)很成功的語(yǔ)言,它吸收了眾多語(yǔ)言的優(yōu)點(diǎn),成為一種簡(jiǎn)單的面向?qū)ο蟮哪_本語(yǔ)言,并被認(rèn)為是最近十年來(lái)對(duì)軟件行業(yè)有著重大影響的軟件之一。同時(shí),在過(guò)去的十多年里,人們熟知的Java語(yǔ)言也已經(jīng)成長(zhǎng)為業(yè)界最有影響力的面向?qū)ο笳Z(yǔ)言,該語(yǔ)言不僅有著豐富的資源,而且可以運(yùn)行在不同的平臺(tái)之上。于是,如何將Java語(yǔ)言的豐富資源與Ruby語(yǔ)言的簡(jiǎn)明特性結(jié)合起來(lái),充分發(fā)揮兩者的優(yōu)勢(shì),成為人們最為關(guān)注的問(wèn)題。本書(shū)的目的就是向您展示這種結(jié)合的碩果——JRuby語(yǔ)言?! ≡诒菊轮?,我們首先向你介紹Ruby語(yǔ)言和JRuby語(yǔ)言的概念和基本使用方法。然后,我們簡(jiǎn)要地說(shuō)明為什么要學(xué)習(xí)JRuby以及使用JRuby的好處。而在本章的最后,我們將通過(guò)幾個(gè)實(shí)例來(lái)說(shuō)明JRuby的優(yōu)勢(shì)?! uby語(yǔ)言和JRuby語(yǔ)言是貫穿本書(shū)的兩個(gè)最基本的概念,為了便于描述,在書(shū)中我們約定:凡是“Ruby語(yǔ)言”(或“Ruby”),就是指Ruby語(yǔ)言技術(shù)規(guī)范,或者說(shuō)符合Ruby語(yǔ)言技術(shù)規(guī)范的、以C語(yǔ)言實(shí)現(xiàn)的運(yùn)行環(huán)境。凡是“JRuby語(yǔ)言”(或“JRuby”),就是指符合Ruby語(yǔ)言技術(shù)規(guī)范的、以Java語(yǔ)言實(shí)現(xiàn)的運(yùn)行環(huán)境?! ?.1 Ruby語(yǔ)言與JRuby語(yǔ)言  在本節(jié)中,首先介紹Ruby語(yǔ)言的概念及其歷史和理念,然后介紹Ruby語(yǔ)言與JRuby語(yǔ)言的相互關(guān)系。  一般來(lái)講,對(duì)“Ruby語(yǔ)言”概念的理解可以有“廣義”和“狹義”兩種,所謂“廣義”理解就是指它是一門(mén)計(jì)算機(jī)語(yǔ)言的技術(shù)規(guī)范;“狹義”理解則是指這門(mén)語(yǔ)言的一個(gè)具體實(shí)現(xiàn)?! ?.1.1 什么是Ruby語(yǔ)言  Ruby語(yǔ)言是一種面向?qū)ο蟮?、?dòng)態(tài)的解釋性語(yǔ)言,它是由日本人松本行弘(まっもとゅきひぅ,英譯:Yukihiro Matsumoto,外號(hào)Matz)開(kāi)發(fā)完成的。長(zhǎng)期以來(lái),松本行弘一直想發(fā)明一種語(yǔ)言,該語(yǔ)言不僅能夠使軟件開(kāi)發(fā)人員進(jìn)行高效的開(kāi)發(fā)工作而且又能享受到編程的快樂(lè)。于是從1993年2月24日開(kāi)始,他正式啟動(dòng)了Ruby語(yǔ)言的研發(fā)工作,1995年12月正式公開(kāi)發(fā)布了Ruby的第一個(gè)版本:Ruby 0.95。該語(yǔ)言的發(fā)行遵守GPL協(xié)議和Ruby License?! uby語(yǔ)言是一門(mén)特高級(jí)語(yǔ)言(Very High—Level Language,VHLL)。它可以通過(guò)編寫(xiě)較少的指令來(lái)控制復(fù)雜的數(shù)據(jù)結(jié)構(gòu)并對(duì)其進(jìn)行靈活的操作,符合程序設(shè)計(jì)“最少投入原則”(Principle of Least Effort)?! uby語(yǔ)言是一門(mén)腳本語(yǔ)言。它可以使傳統(tǒng)的、煩瑣的腳本操作變得更容易編程,比如運(yùn)行外部程序、檢查系統(tǒng)資源、使用管道(pipe)、截獲子進(jìn)程狀態(tài)和截獲程序輸出信息等。  Ruby語(yǔ)言是一門(mén)動(dòng)態(tài)語(yǔ)言。這意味著方法和變量可以在程序的運(yùn)行過(guò)程中進(jìn)行添加和重定義,不僅減少了像C語(yǔ)言那樣的條件編譯(#ifdef),而且容易實(shí)現(xiàn)反射技術(shù)(reflection)?! uby語(yǔ)言是一門(mén)解釋型語(yǔ)言。其最為顯著的特點(diǎn)就是快速的開(kāi)發(fā)周期(rapid developme cycle)。比如Ruby on Rails就是一個(gè)很好的實(shí)例,它前所未有地加速和簡(jiǎn)化了網(wǎng)站的構(gòu)建。可以預(yù)料,隨著計(jì)算機(jī)硬件設(shè)備性能的持續(xù)提高,Ruby語(yǔ)言的性能將會(huì)得到更大的提高?! £P(guān)于Ruby語(yǔ)言的名字來(lái)歷,有這樣一種說(shuō)法:因?yàn)镻erl的發(fā)音與6月的誕生石pearl(珍珠)相同,因此,Matz就以7月的誕生石ruby(紅寶石)為該語(yǔ)言命名?! ∧壳?,Ruby語(yǔ)言的穩(wěn)定版本是1.8.6(2007年3月12日發(fā)布)。這個(gè)版本也是當(dāng)前應(yīng)用得最為廣泛的一個(gè)版本,它是用C語(yǔ)言實(shí)現(xiàn)的?! ?.1.2 開(kāi)發(fā)Ruby語(yǔ)言的理念  早期的許多程序設(shè)計(jì)語(yǔ)言,由于受到機(jī)器性能的約束,所以其設(shè)計(jì)必須是以機(jī)器為主,關(guān)注機(jī)器的執(zhí)行性能。隨著計(jì)算機(jī)技術(shù)尤其是硬件技術(shù)的持續(xù)快速發(fā)展,機(jī)器性能得到了很大的提高,人們的設(shè)計(jì)思維也從“關(guān)注機(jī)器性能”逐步轉(zhuǎn)向如何適應(yīng)人的角度來(lái)考慮問(wèn)題,換句話說(shuō),要求體現(xiàn)出人本主義的思想?! ∮捎贛atz研發(fā)的Ruby語(yǔ)言十分強(qiáng)調(diào)系統(tǒng)設(shè)計(jì)的人性化,“一直想發(fā)明一種語(yǔ)言,使你既能進(jìn)行高效開(kāi)發(fā)又能享受編程的快樂(lè)”,所以,該語(yǔ)言引人矚目,一經(jīng)推出,便很快地吸引了一大批的擁護(hù)者。在Matz看來(lái),好的編程語(yǔ)言一定要能減少編程人員的工作量,節(jié)省時(shí)間,消除浪費(fèi),同時(shí)又能使編寫(xiě)程序的工作成為一件令人愉快的事情。  事實(shí)上,也正是因?yàn)镽uby語(yǔ)言遵循了上述的設(shè)計(jì)理念,所以才非常直觀,并且按照人們的習(xí)慣思維方式運(yùn)行?! ?.1.3 Ruby語(yǔ)言特性  Matz是這樣形容Ruby的:Ruby>(Smalltalk+Perl)/2。其含義就是:Ruby語(yǔ)言在語(yǔ)法上像Smalltalk,是完全面向?qū)ο蟮哪_本執(zhí)行語(yǔ)言,在功能上又具有類似于Pefl的強(qiáng)大的文字處理功能。Ruby語(yǔ)言的這種編程特點(diǎn),使得人們可以方便、快捷地進(jìn)行面向?qū)ο蟮木幊?,不僅簡(jiǎn)單明了,而且擴(kuò)展性強(qiáng),移植性好?! uby語(yǔ)言的主要特色:  1.語(yǔ)法簡(jiǎn)單 ?。?)傳遞一切可以傳遞的代碼。代碼塊(Blocks,如“...”和“do...end”)技術(shù)可以被引用。第8章將通過(guò)實(shí)例詳細(xì)說(shuō)明有關(guān)內(nèi)容; ?。?)動(dòng)態(tài)一切可以動(dòng)態(tài)的代碼。開(kāi)發(fā)人員不必在編譯前就定義數(shù)組大小,也不必預(yù)先為數(shù)組分配內(nèi)存空間,更不必時(shí)刻警惕其長(zhǎng)度。如使用整數(shù)時(shí)不用考慮它內(nèi)在的形式,因?yàn)镽uby語(yǔ)言會(huì)根據(jù)數(shù)值的大小自動(dòng)選定使用Fixnum類還是Bignum類。后面將會(huì)給出實(shí)例; ?。?)迭代一切可以迭代的代碼。迭代器(iterator)功能強(qiáng)大,像“把代碼塊傳遞到對(duì)象中”這種操作可以輕易完成,如對(duì)于數(shù)組、列表(list)、樹(shù)(tree)等數(shù)據(jù)結(jié)構(gòu)中的每一個(gè)元素都能夠調(diào)用指定的代碼塊; ?。?)忽略一切可以忽略的代碼和符號(hào)。比如在函數(shù)調(diào)用中可以忽略括號(hào);參數(shù)之間可以忽略逗號(hào);函數(shù)返回的關(guān)鍵字“return”也可以忽略;如果僅僅只有一行代碼,則連語(yǔ)句尾的分號(hào)也可以忽略;

編輯推薦

  適合于希望了解和使用JRuby語(yǔ)言的廣大程序員?!  禞Ruby 語(yǔ)言實(shí)戰(zhàn)技術(shù)》的主要特點(diǎn):  1.內(nèi)容新鮮,采用最新的JRuby語(yǔ)文版本1.1;  2.既有實(shí)戰(zhàn)經(jīng)驗(yàn)的介紹又不乏細(xì)致的理論探討;  3.以淺顯易懂的文字和循序漸進(jìn)的方式詳述各個(gè)概述;  4.精心設(shè)計(jì)和挑選的范例配合講解各種工具的使用;  5.所有的代碼均出自作者的編程心得。

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    JRuby語(yǔ)言實(shí)戰(zhàn)技術(shù) PDF格式下載


用戶評(píng)論 (總計(jì)1條)

 
 

  •   內(nèi)容組織不能說(shuō)很?chē)?yán)謹(jǐn)或經(jīng)過(guò)嚴(yán)密思考的。不過(guò),經(jīng)過(guò)反復(fù)的實(shí)踐,終于還是理解了書(shū)中的線索。畢竟,JRUBY的書(shū)還不多。而此書(shū)出自華人之手,有頂?shù)谋匾?。可以?jiàn)得作者是個(gè)java的支持者,H2,tomcat,glassfish都有涉及,選材還是可以贊一個(gè)的。
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7