你的位置:水利图书 >> >> 电脑编程 >> 详细内容 在线投稿

Java脚本编程:语言框架与模式

热度99票 浏览25次 【共0条评论】【我要评论 时间:2010年6月10日 14:22

[&C^8N;yBTF0Java脚本编程:语言框架与模式

;SHEig_0

]-c9tFD7J!d0正在读(2人), 已读过(5人) |   放入书架水利图书8c7k,Kr)hXa7a'`

水利图书}6\"j\U r

丛书名: SUN公司核心技术丛书水利图书7An-D-yzI M

[?,_] kI#n0

f2\ q-AZ%i2`2d0

RQ@B%Eto;O:tk0作  者: (美)波斯安耐克 著,翟育明 等译水利图书1t!@y M'o,K2UIJ

Qi4W'l6fj0出 版 社: 机械工业出版社水利图书 s$p-c6Iw$~X!_|

水利图书:sn P`YRSo

出版时间: 2008-5-1水利图书pPvPK7Y

6t:|^d"M'm v+i{0字  数:水利图书;c N'|Y7]c`$K

AH(h0^ X|"a0版  次: 1水利图书J6I Cu;\ pdQD

水利图书_1D.xR?L^

页  数: 308水利图书9C/{Ebf1q

水利图书r/{7P/`wwd0^PR

印刷时间: 2008-5-1

(F FM_k^-V9r0 水利图书6RKoY;[h

开  本: 16开

a/uAJ ]0

u ZJ/P#@)fY0印  次: 1水利图书9cbf5a*n`Z3?WI a

水利图书:fL:PB2BgF

纸  张: 胶版纸水利图书6H"a\hdUM,}

水利图书&HcI$R!f*KY

I S B N : 9787111238492

oQUa^,C4qZ%sCt0

^HeEN6_,t b0包  装: 平装

9Ve h2G$Xp'z:b-g0

.UF&W}:uo w&f;L+Y0所属分类: 图书 >> 计算机/网络 >> 程序设计 >> Java Java Script J2EE

'z,vQxNa*S0

:x"m9?QSk+s$u0最佳拍档水利图书J,_no(]&^

水利图书8x@y|s%~-|4d7@

水利图书'y-f_F0no(X

#@$vm9D)D%~0水利图书2F'q c1?dlr,{Px

水利图书/x7DV$y:A"y!RlH

1z-TuDW-r:}0 水利图书9n\{*g"z$s7PKf([(w

Groovy入门经典水利图书|i|v Q/Xr

水利图书&j4WI U N f"g

Java脚本编程:语言框架与模式水利图书| { N2U.I3KT

Fzvk!w+gXe0与此 1 件拍档商品一同购买

/?/gPUjN:y0

`;l quf!vrp m%Y0总定价:¥94.00水利图书Kl:t0G r:z5hD

水利图书\#?%p6r's#c3S+c*c

总当当价:¥75.50

7C:N y0^0I&Zj4wIc0 水利图书4Y&IT,ts;f\

g(|Qq9@L1Oo/`1e9N@0 水利图书G0Wj7zzeQb/N

请至少保留一件商品。水利图书X P(YW"B$K.` H'B

水利图书8G U^)b.cedT!f

编辑推荐

5r I4t3_W&oIhb$t L0

b3X_dF+L$}i;C0  利用Java平台新的脚本支持,可以提高效率,简化开发过程,并解决从原型到Web应用程序编程的各种问题。本书涵盖了利用Java编写脚本的主要方面,包括振奋人心的新Groovy脚本语言及Java的新脚本API以及Web Scripting API。水利图书(VF&pW vOP

O9NOaZq:Pqq0  本书从回顾脚本语言的角色和价值入手,然后针对Java平台系统地介绍了当今最好的脚本解决方案。介绍了Java脚本框架,指明了将脚本整合到Java应用程序中去的公认模式,并展现了从单元测试到工程构建的一切实用技术。本书用大量代码实例来阐述重要的概念,示范了在现实Java工程中运行的脚本。水利图书qd-M/[,?\IZ

水利图书k V(LD @ K {s

  本书内容包括:水利图书*~)ng9P4~#}~{

&g4{s J.G k0  为什么脚本语言能为Java编程人员提供惊人的价值。

}$B?hE|e}:VF0

{]4HT9w }$VG*s0  在JVM内部运行的脚本语言:BeanShell、JavaScript和Python。水利图书S }1C!E:N+[t-JO"Z

水利图书'JR"T%M+`xP$gk

  Groovy详解:安装、配置、与Java类似的语法、Java整合及安全等。

w8^2TzU&Bo0 水利图书8D]W'Zz-y2R-@

  Groovy扩展:访问数据库、使用XML,并构建简单的Web应用程序和基于Swing的UI。

OOf w3t6[.MA8ox9jR0

x3B#a9O*K d3rEyl0  Bean脚本框架:实现、基础抽象和使用范例。水利图书(C ^ nO"kH

Sg:N;AUt`Y#x0  基于Java脚本的传统模式和新模式。

SL,f] tr6G$i0

d3\ VLv0u8` {+t0  JSR 223 Scripting API:语言绑定,发现机制,线程、可插拔的命名空间等。水利图书W2bs!L8}

水利图书Ki!O!~C#hoG4ow

  JSR 223 Web Scripting Framework:编写在Servlet容器内生成Web内容的脚本。水利图书g!KkQ4]#O j

9W%W].i6Z(F A&K!I!\0  所有代码范例都可以在华章网站(www.hzbook.com)和(www.scriptinginjava.net)上下载得到。水利图书P$G&YZ*dd3i

,I`g${i&k'TQ'S0内容简介水利图书Ei s(s:_1y PZ

水利图书 j]4U&Ko&ma-^

本书讲解了脚本语言的基本概念和使用方法,概括了Java开发人员可以使用的解决方案,并探讨了在Java应用程序中应用脚本语言的用例和设计模式。内容分为五部分:第一部分介绍脚本语言的基本特征及适合用脚本语言的应用程序;第二部分介绍Java平台实际的技术和解决方案,详细讲解了Groovy脚本语言;第三部分介绍脚本语言在实际项目中的使用;第四部分介绍Java平台的脚本编程规范;第五部分提供了关于文中涉及的技术的安装和使用细节。水利图书6mv.m]&k2vC)B B

水利图书I-i9]u8Q/\ l

  本书内容丰富,讲解清晰,适合作为软件开发人员的参考书。水利图书mT4m\r4T7oh

水利图书J5J4N,]4DS(R,B

作者简介

$YGV~}0

`)P2iW"zM#p0Dejan Bosanac是一名专业的软件开发人员和技术顾问。他致力于各种技术的整合和互用,尤其是与Java和Web相关的应用。他花了几年的时间开发复杂的软件项目,从高流量的网站到企业级应用程序。他是JSR 223专家组的成员之一。水利图书.z,h j/jT6?j

W\Q1G!U&t#F v A qv0目录

qG Y"k {OZ L0

9|J N&@CC2d$k0第一部分水利图书t E5U%?ot-A!p

水利图书0b-z)[#v0UM!r#A

 第1章 脚本简介 水利图书?2g fn#_!u5_

&](nx5F8Wjh4sa0  1.1 背景 

7Y(e@*ql a0

Y5k`'ihX:@p%w0  1.2 脚本语言的定义 水利图书 K ZZ6v;n)Pnp| `PY

水利图书 {fYfN C1f%t~9@

   1.2.1 编译器与解释器

u+]VZC,Q0 水利图书%t qP]:LB

   1.2.2 产品中的源代码

/S5C/B+`!LQ c8RW4{Rk0

4{Gua7L0   1.2.3 类型策略

Y#C!}P0S4~0 水利图书0T1f#?.N&s*liw#g

   1.2.4 数据结构水利图书V$a4jY^r5q.J5o8D| jc

水利图书 W~RT5Z D X7o7c4Q9U#L

   1.2.5 代码作为数据

B4k$jss[u0

@K@NL&R*@0   1.2.6 小结水利图书H,{4Pyvg*X

le!p7[w0  1.3 脚本语言和虚拟机

T N,y&hR U;xv0 水利图书 S^(]2f*S0y

  1.4 脚本和系统编程的对比水利图书(@$w/N^7G P

水利图书 HwK$[.Acip

   1.4.1 运行时性能

Jj'sm ^9l3p0

|_wj \s0   1.4.2 开发速度水利图书W'oj sq]#_/Nlr

!tUU,L6x&li\0   1.4.3 健壮性

S.f$Bj"PBPE0 水利图书6X T,v:l%`6w*~

   1.4.4 维护水利图书$b2ig+~$@+B-n

4X*? vt6~?0XM0   1.4.5 极限编程

6| @Gfw;Zg]%j0

'J.ME~/PRi0  1.5 混合法水利图书{m;F-B GCW%G

水利图书[M c%k7{aqs

  1.6 一个脚本案例

x G%];}$^0

z)iI(|ZK g4h0  1.7 小结

%Y G/w5f%[P0 水利图书'];G*F5[/GO$t

 第2章 适用脚本语言的应用程序水利图书6^;j%D)oW-_.O

水利图书*^2](A;?W _

  2.1 组装水利图书'Bn F*b!Pl

R U'CO M X8|0   2.1.1 UNIX Shell语言水利图书X x&q"O*M)a

水利图书]C)nC [?-w

   2.1.2 Perl

ee8C'OAg'@:o2p0 水利图书 b,_.RTP CJ

   2.1.3 Tcl水利图书*qMnx+V.`tY8Y([

水利图书Y*n"e7a(im

  2.2 原型水利图书4y c"t.\)z7\l2Dc

水利图书,F o,g9~&?}7} {-F"M

  2.3 定制

ExY%Td_7W0 水利图书ib N#`G }.r

  2.4 软件开发支持

&xk y,O2]lK0 水利图书v7{ mN8lK

   2.4.1 项目构建

k5s!sm3M'ee0 水利图书4Xf:r*l}o

   2.4.2 测试

^0b1PU&I.[] q0

E+F0t p ]]0  2.5 运维与管理

3lhE(E3xuz0 水利图书wmm:pH [

  2.6  用户界面编程水利图书d*u n].V

[a-K!y c/GH6ln0  2.7 用例2

&V!s5f[ zhI$F"y0

)NeD`? U,h0   2.7.1 Web应用程序

OTw'VX6pk%Jx0

$Ndh7H.Ao,ii*q0   2.7.2 脚本和UNIX水利图书*}*}#`p|/R ] s

^p uKd)fb0   2.7.3 游戏中的脚本水利图书t ["_*{#I |

_3EKE,QA0  2.8 其他特征水利图书L4\OsA'Q

水利图书w`,~J0Ky@

   2.8.1 可嵌入

k0s9OH}&C0

@ xW{2L/l"wV0   2.8.2 可扩展

0r1RQQ {d%m0

3k(RQiN2^0   2.8.3 易于学习和使用

+N{Z"gt1L9t#O0 水利图书elJ y O dq

  2.9 小结水利图书6c'rT&LNb4`

+r9k5TE~(Y!^1T0第二部分

;s lV_'bn L0

H X8tK/a;gCi \u0 第3章 JVM内部的脚本语言

YWW8m |7C0

#^w/yy};@-T]B0  3.1 帽底乾坤水利图书 I3U5f}{

_$y R5kTG*U0  3.2 脚本语言概念水利图书` @Qh-X f'n:nI%m

水利图书r5r6t!p;Fi+BSX

  3.3 BeanShell

O c1\$N+f,c0 水利图书3YGD:zW3?H

   3.3.1 入门

x;@xK6G+O D&]0 水利图书3Qnyg;N {&i

   3.3.2 基本语法水利图书rp,u b1A-[h

水利图书 QB'W Vd4z

   3.3.3 松类型的语法水利图书N&z x({I"J!N5[AQ

水利图书a#\ GLs

   3.3.4 语法风格水利图书}~2NlT Z.Y6N4l

Yt^tzL ~-X/U y0   3.3.5 命令水利图书]m0_xx p.?5s

.V/YCg4^i0   3.3.6 方法水利图书8Yiwwzr m"k0~

w ru"@N"xT4Ljw0   3.3.7 对象

"V^ h+f1_;zx0

@5CcN3B.q m0   3.3.8 实现接口

6t8W[l%i0 水利图书5V'm-Q&iH

   3.3.9 嵌入Java

"?"U _4lf-D_/`S0 水利图书IXM8wDI!@K

  3.4 Jython

a U:S9r$j&@&r2F0 水利图书;F:DyhG3ag,g

   3.4.1 入门水利图书9G2Kh t+c2LE|

水利图书:k,WS3B.zK7VV'P

   3.4.2 基本语法水利图书[8WXM w)J

m,oj`@0   3.4.3 使用Java水利图书V2dz$e ODi_&R N

水利图书/z,ZZ#dw&M}

   3.4.4 实现接口

qH*~j,w0

sg/e%wudR0   3.4.5 异常处理

'c~l-U1U'GwX0

$~]1^:D`h%U9iV0   3.4.6 嵌入Java水利图书o}FP` E s'ynT

(w,x(X~K9A/hU0   3.4.7 小结

wc L*o^DM0

uVv r]0  3.5 Rhino

)_(sq)pY$u0

!` h!vig'F0   3.5.1 入门水利图书Q'g0@Rjq*a5P$M

水利图书0^1U(g{9C(R

   3.5.2 使用Java水利图书.G8Z0YPehE

CM*bXy1iT*V0   3.5.3 实现接口

j @*VQ&ah0

9fF%f Q\6~0   3.5.4 JavaAdapter水利图书_b9~)~ H4A2{N~#s C

!B1]8kc D}3W@0   3.5.5 嵌入Java水利图书?$ob#n9\&rR

水利图书ruE\4]S _P/V:c

   3.5.6 Host Object

2`Q.?'cP E9E'K%N O9L0

b)T R2fe;S0   3.5.7 小结水利图书@e Z ?_x

/}@@3F!K0  3.6 Groovy水利图书3p?R`?%tA-h.J@

g^F4S._5qF(n/J6W9E0  3.7 其他脚本语言水利图书Ab!E R,z6e5V

水利图书0^wg$C-o3Q

   3.7.1 JRuby

(fB O;_*p#n0

p4S^1?Rh/l c-F%f9w0   3.7.2 Tcl/Java水利图书+cY.[e kW)K%`

水利图书7O ?!W*y9icoM

   3.7.3 JudoScript水利图书0x J ~i ~s @ Ng[0\

%f;UOD-D;J0   3.7.4 ObjectScript

R'O1CO/f:^0

{NS:L9mq3?lQ0  3.8 小结水利图书,AO3V3b-a+V;_c,u

A6j1E3v0^%P,\r0 第4章 Groovy

c:d|O,p0 水利图书F y @2p%Zj

  4.1 为什么需要Groovy水利图书W jn4nW)b.x

Sp?4~8w*_%~k0V*`0  4.2 安装

0w%t9f{Q4ZKqh0 水利图书 RL2`t|} F Pa

  4.3 运行Groovy脚本

rn-^_5W0 水利图书US+AyM`} @C"k

   4.3.1 用交互式的Shell水利图书4Z(? n*uGOn

LaXp q/EJ$Z2]0   4.3.2 用交互式的控制台水利图书EZ:G)M3M2Y_K

wp~#Z2u;o0   4.3.3 执行脚本文件水利图书\6jf`)\(b

8x6X f&T;Ry0  4.4 编译Groovy脚本

~0iI c7BJfz0

JX:\:j&_m0   4.4.1 依赖水利图书&_ Eml]i2{i

水利图书Z#w-lD6bU6J+j

   4.4.2 Classpath

?)Z0M q1? _R0 水利图书Q/O8m0zT`

  4.4.3 Ant Task水利图书K`3N8BZ{4^t,e

'Q3BauJ_0  4.5 脚本结构

7r4YS f:d2J`0 水利图书)fux N|)@1O

  4.6 语言语法

| m lYQGb)U0 水利图书&PvPwkp

   4.6.1 Java兼容性

H7f+fe"t;NR0 水利图书n l+^8g8n|#Me(nrO

   4.6.2 语句水利图书:O"N9t%R\,TZx*JW

水利图书H8pV^0da/_V

   4.6.3 松类型

TG!d1Quw@0

Xc&?#w@S RX o0   4.6.4 类型技巧水利图书g x2f:`!M}Qlp*Um

水利图书M(X9fBDUB

   4.6.5 String

IeD^-F8M+J#T1bE0 水利图书H CB6qw,Axz(d

   4.6.6 GString水利图书5F0@a9Pc G

水利图书S7{;],F Yvg

   4.6.7 正则表达式

m$?;[:e F`|B-x0

9[7R`o^,c&]f@0   4.6.8 集合

[$Q7hyZ9U%t0 水利图书A&q0aW$uq

   4.6.9 逻辑分支水利图书 {h8w2R'TuI

)RNcGvH ^n0   4.6.10 循环

3hGts H vH0 水利图书6J:O6pL&xL4Ah FE

   4.6.11 类水利图书-U;n4F{}%cDB'c1H

水利图书(JX;s V!i-o$tt

   4.6.12 操作符重载

6VT-i9y;l%K w0 水利图书5UZ"qPV"X"N Op

   4.6.13 GroovyBean

xHh;aX+t&q1f0

h0t3EqgWF0   4.6.14 闭包水利图书j$fW nV\,Q

]X bi*lm1M0  4.7 系统操作

x*X;VN.~E[(_0 水利图书:B-m0i5r [ z5|

   4.7.1 文件

L R8e)Ec3k:ZF,P0

A%o&Tu j0   4.7.2 进程

L f@Q6ID C u:r"tw0

| A3|2Q c'n5_0  4.8 嵌入Java

Wz:n6C{0

D"npK0r ~[0z0  4.9  安全性水利图书 P-cc!d g1UU

水利图书6am-pDC(ZV u$dD;@

  4.10 小结水利图书B.T:e~8sW]4^ tb;E R

Su6n.Q2vrD+i0 第5章 高级的Groovy编程

{Y t!D6At v\%~0 水利图书c u8Fg)|X%_]

 5.1 GroovySQL

(F$tYMu*XK Mk^C0

S7rv-] }tt~ G0  5.1.1 groovy.sql.Sql

{iB)Q*pO0 水利图书6q7q+CL/A_E

   5.1.2 groovy.sql.DataSet水利图书9E~CL6\0eM

水利图书s_;Z/gD&go+X&o^1T

  5.2 Groovlet水利图书0A&{'qNY_*j:U

水利图书;l+ANEqH G:b$u

  5.3 Groovy模板水利图书;OiAv+@_3]

水利图书m"m5sC:G*K

  5.4 GroovyMarkup水利图书oD%{%i:l |9?2^

水利图书(d"p*B%_/k

  5.4.1 groovy.xml.MarkupBuilder水利图书3hci$T5b y+q$FZ

3c:_r"g]Ja-b:e0   5.4.2 groovy.util.NodeBuilder水利图书GU7{pU${7ds1o

I?0Z8N2C4u3zQ/\0  5.4.3 groovy.xml.SaxBuilder水利图书&}/Y#d%b(pT~

bB oy-rl!SQ$o0  5.4.4 groovy.xml.DomBuilder水利图书9?Cz*u N,Q-W&Z KS

水利图书 R!n bx {Wu:Zk m}s

   5.4.5 groovy.xml.Namespace水利图书'UIT-P9jgW xcL

7S/wY&Kd0  5.4.6 groovy.util.BuilderSupport水利图书;i,Z0^r+p\o&i_*C

水利图书[m#o*Z(E.` X

  5.5 Groovy和Swing

C`4\o&P%\!a&L0

CU?{NK1h x0    5.5.1 TableLayout

5d a R o`\s4HZ0

Y#Q5h!tgs0  5.5.2 TableModel水利图书0tm9H1lU4u {

水利图书 c_-V4j+]G'T!t

  5.6 小结水利图书.v#Tc TF$To

水利图书s0bztS

 第6章 Bean Scripting Framework

@QFH#KB0 水利图书fLj-T4l,u?o(l Rt

  6.1 Bean Scripting Framework简介水利图书)E2k5z:\?H u

水利图书4ZE*V~ h5a O

  6.2 入门水利图书SYD w-i/a.z

B A/[,^/k0  6.3 基本概念

C R2ApO7Ox0

$pRy R,|.H*w}f0   6.3.1 架构

_ ^j5rih)^0

N:^Ad;fs4R0   6.3.2 脚本语言的注册水利图书@y(Y'dyO.HDQ+X

水利图书:A2I&? Dy)Z

   6.3.3 管理器和引擎初始化

t8E,W P }d)[wv R0

'`c-~Qe3W-_0   6.3.4 使用脚本水利图书(S6T]eH;M*?;w4t

水利图书g)a Dv `3i"?+D

  6.4 使用脚本文件水利图书5C1_s4f N

水利图书'o*Z0U N5@1cW@-aU

  6.5 方法和函数

b!W],{r0Ec{0

gl,A2n+G9_s#T|,W0   6.5.1 call()水利图书6b*IX h!e8GY

fR3u3s+Jdc0   6.5.2 apply()

8^A2VtX1LQg0 水利图书NM2bHT5US8N3Yy

  6.6 数据绑定

)T:Qh'?uRGC0

i!K P P9`!B G]0@m{0   6.6.1 注册Bean

gs9I6y7f0 水利图书^%d"z7Q$WimD

   6.6.2 声明Bean

+@:d;O1ht H*{b0

(jq&yrw6t0  6.7 编译水利图书Rc#J I4P-x,N+z1nU

水利图书C pH(QE;o K#G6cC

  6.8 应用程序

J0Cp8[H$}D3G%W0

O*n8Q h-w3JwB }0U0   6.8.1 JSP水利图书"[*l I`Z

p(U l;L&?%t {(?5O0   6.8.2 XalanJ(XSLT)水利图书 Id&g8Ebl{-e

水利图书4I Hi{l ~]

  6.9 小结水利图书-yrR%|1s4[v

u(jo9r,tn:T:GX0第三部分

#c*z\f+m0c3t/C` X,z0 水利图书#?l5kQ"@-v

 第7章 在Java实践脚本水利图书(_,v9Q1J_qp

水利图书;j$zewQWN#`_

  7.1 单元测试

|[2^ d&Z0 水利图书Y6dR)`vyK*w

   7.1.1 JUnit基础知识水利图书1UN_*S~

Lw0MLp3E(hc)n3m0  7.1.2 GroovyTestCase类

"^WZ_|7^m ]0

'_7| D/V,~y s+B0   7.1.3 断言方法水利图书]v,[8J:z|/L

水利图书 vm\%V$h z!fUm\

   7.1.4 测试套件水利图书yq}2am4zq+{

.j\S%{;@:a!@0   7.1.5 用脚本作为单元测试案例

;dEqx}(Xb v$N0

"f c'jZ9?2HW0   7.1.6 小结水利图书(ic VY}x7I;U

1L E#i0Qw)L1J0  7.2 交互式调试

9RE[F_Oz0

(n6fs }M-^}D ^0  7.3 构建工具

"y1p @gF)M"bEZ0 水利图书zR7J6lF(VZ e7E

   7.3.1 BSF支持

"v]5A$CO(sY8O?8A9Q0 水利图书-SDB]\K"{

   7.3.2 GroovyMarkup(AntBuilder)水利图书'K.gO(vW&{.G[

水利图书$@2YmB!R0vL+N`%eb6C*\

   7.3.3 小结水利图书^ |,[Q8aI.?E9H

lk[,G/@cT#\/H}0  7.4 Shell Scripting

JcnXZ'm)?9m0 水利图书GZ @#q?^ ^

   7.4.1 Classpath水利图书 h6J*{T(~6SD7[/Z

o _M7?fW[0   7.4.2 实例 

7sZ r1W0W0 水利图书:SsL[2v} ^[

  7.5 管控和管理

#bz3z _9ZqiU0 水利图书B4Zo~r

  7.6 小结

:D/[ oMph Nh&q0

Q\eJ iBO0 第8章 脚本模式

-u p&[cQB+]0 水利图书!]fR k(Y)T;T

  8.1 脚本化组件模式水利图书W5a-N%I'] {O9D

水利图书8kUA$M5As4`0?

   8.1.1 问题

!t~g5GmT%\0 水利图书`0} Prs/q

   8.1.2 解决方案

6s} Y:i%q~E0 水利图书4?6ODH(m$^M]"V

   8.1.3 结果

[[_x$t-Le;_2Q0 水利图书*KIu#Q*Q*[X c N ^)YV

   8.1.4 范例代码水利图书:d7Ep&|i0d

水利图书iU1| w @(y

   8.1.5 相关模式

5C*CeuAq*FJ0 水利图书n$v c.Eu

  8.2 中介者模式(胶合代码模式)水利图书l4X \hT|!U n

jHe?4y8J2G*YT0   8.2.1 问题

s;o8D m tP |H!V,]%Q0 水利图书fW*I~{-E$M^

   8.2.2 解决方案水利图书"p(K/e r |Us9h!QH

水利图书8N6^{]}6\(oL^rQy

   8.2.3 结果水利图书 J5{4p bhF,O,kOZ:j2{V

水利图书y["P0wZqbwT

   8.2.4 范例代码水利图书Z#Mrw0U1Z+_*A6x Jl,d

水利图书g3\R-[W

   8.2.5 相关模式

(|%{c\4O N0 水利图书0pbhoTUB

  8.3 脚本对象工厂模式

adh4RI@YKd@0

t-q }R;EL0   8.3.1 问题水利图书^w?$SQX[q

YD/YX ^ Hg.w'PP0   8.3.2 解决方案

i0^R:Q2E0

/Q3s k;}kQ0   8.3.3 结果水利图书C!vG,oA(`1](`!Q

水利图书f4?L6T [v yQ

   8.3.4 范例代码水利图书9P%Y#_zo*m|

水利图书 kZ.cY C4l2k Y

   8.3.5 相关模式

:nU,g6_%x5D8C0

`s6w2F2u w8` z HwN0  8.4 观察者(广播)模式

(Y,qy]n`2e0 水利图书e u+@t K#H5I

   8.4.1 问题水利图书 R)M^#nN

水利图书/be8S%@CF:x;@v

   8.4.2 解决方案

h"X(v{0K y \9cckvR0

A1e,r.Gp0   8.4.3 结果

,[@ Y#R/A0 水利图书E2?B7b~B7Lf

   8.4.4 范例代码

Un!P1_[m!R0

VL S` vk0   8.4.5 相关模式

Lr8z;l^Om0 水利图书\6UN#V:t0RgW-zn8Z0j

  8.5 扩展点模式水利图书:cM"e{;V

.]2\tc~6Ed0   8.5.1 问题

+I5U5r V(|f;D)\0

7I$yA.?&x&@0   8.5.2 解决方案

.{Y6X0V'_w!I6~D |0

x^lD e~0   8.5.3 结果水利图书-Ie.Pre0X5t%l

水利图书g+E/[g[i

   8.5.4 范例代码水利图书Po$DK0`PfL

水利图书^F&P c J%dJP

   8.5.5 相关模式

p7^-ir2S0 水利图书[)h:M(n4Tg0a

  8.6 Active File模式水利图书Y `+y._X~(|

2Kvn8y+`bv3q4uJD.U#~0   8.6.1 问题水利图书[A'xC%UP}

O}*N8im8Qm0   8.6.2 解决方案水利图书#gw m,[T YcqI

水利图书!X QFgGW8|1f9h

  8.6.3 结果

Pq{ H0S? o9O y3{J0 水利图书9g8t$A2sN

   8.6.4 范例代码水利图书*IDVR7GHArk

bqo2K z"S0  8.7 小结水利图书$k#tX#a8F4j)k+@

水利图书Z:~s7y@:m$b#a%i

第四部分水利图书&uq?}}e0t ].z

水利图书)a[!}2C`-rL1m

 第9章 Scripting API水利图书2NDC(?x+r;`0fxb2o

sM|.O x@A%o0  9.1 动机和历史水利图书%]7}9AY1O;VT&z

水利图书U8?"[(XnO:aY@

  9.2 简介

see"M.B3fV$v"?0

/|.e(F-V4U4s0  9.3 入门

1REE%W)ZU"I0us0

V-}-}4WcU zRc0  9.4 架构

1^z5SZ y'~0

`q v:@ofK0  9.5 发现机制水利图书BeFO(k.c/M

水利图书:g0s^\3[/YW"W`

  9.6 引擎元数据

R4W s7mawM5Y0

's.xq(A|Avizvvw`0  9.7 创建和注册脚本引擎

.Kf&h AF0

lCS.}h:VqaO0   9.7.1 创建方法水利图书aQ;n&Q0Z8FH

5C{;A.ScZ0   9.7.2 注册方法水利图书%ZvC7W*R)m

+v#A)b)o(V@gJX6p0  9.8 执行求值水利图书jdM7]ls

C}8U$e[&`L#p z0  9.9 ScriptException水利图书's\9^A d?&z\

水利图书+E/cbY2t/NB J k

  9.10 绑定

~ r3||m7H0

y+c;n\4w6nlg/tw0   9.10.1 引擎范围水利图书b#q#H2^|

水利图书KZ*b0P'f"E

   9.10.2 全局范围

"@-gh*\2xB0

zY#P+f zl0   9.10.3 脚本上下文

CHl/Dg0 水利图书R xK` iL8P

  9.11 代码生成

&dg"GcB6{5[0 水利图书lZ3S*B ?`

   9.11.1 输出语句

)@a#I"Oj0

+I;pi [/`1H| t+sI0   9.11.2 方法调用语法水利图书Kb4d%z'Y)t4o!j{'f

水利图书Y4G Q(cO

   9.11.3 程序水利图书:u [1L\9om&hX8b5\

水利图书*CQ-O_Vq!u

  9.12 其他引擎接口水利图书 s,d#n [R u3bF M1U8G\

水利图书6Y-^B[W4n

  9.12.1 可调用

~*gxbl2_5L0

h2d `xD0Y;GN*bhR0   9.12.2 可编译

D%zTy a#f0

DZ,g?t\/ay7F)q0  9.13 线程

h1HN:Z2o)wf0

ky Qp NX h0  9.14 动态绑定水利图书 Bh'W3?tW+k?

水利图书,N^FJQaU

  9.15 小结

%Je{)D6v5Ah0 水利图书-{`|.G-] X K{

 第10章 Web Scripting Framework水利图书'iEm;Gl,X5K

sV3N,Z;j4Q y+L!F@w0  10.1 架构

b(W'vs+k-]sN0

%{K?*G] |/y8_FTe0  10.1.1 上下文水利图书 C?,[oE}

水利图书 ]3p:~5o2c3i e4~

   10.1.2 Servlet水利图书R+peKD%a

X:`TO~ A)`wX;hL0  10.1.3 交互水利图书9W LWfC~J

水利图书m"~6K%M p Qh,~1U

  10.2 入门

&Ql9t)k7QKF(S0

)@A X5XN"L0  10.3 配置水利图书l2[rfH Y?F _

#vU4a-uQn`$}0   10.3.1 取消脚本水利图书V^*u|pu&mJ T

&iK5p0s4c.E4A s0   10.3.2 脚本路径

*ZA sybc#B!g]M1] j0 水利图书/|"g@e#fb

   10.3.3 脚本方法水利图书bAuo8}

%r_*PqJ I5bW M0   10.3.4 语言许可

,mmy:yG/p8QjY0

q `t T2p0   10.3.5 显示结果

#BK^'c;o9BW r0 水利图书"MZ ah*?j

  10.4 绑定水利图书h6kU atF

J;j_p9^ivv\g0   10.4.1 应用程序

3jY P1c9k v+Rp2[3o0

0F}a:C%[j8jm0   10.4.2 请求水利图书-D&rmI9m(x

水利图书c%[M&|+xY u2}}

   10.4.3 响应水利图书?$in]q'mz },d cH

5P5w*K*n q$`:Y5EJ0   10.4.4 Servlet水利图书7c6M$RU)D4`(Qx

:WA.H#[3P0  10.5 include方法

A s bPX3T1@oX!B0

I-yo${/w5N1C6{O0  10.6 forward方法

1zS D]3Uk1H!M\` o m0 水利图书*rO0a;rb"D

  10.7 会话共享水利图书9i YO$?(x[t~

水利图书R`/Ypz0Kg5sN.?![

  10.8 语言标签

Bh!@/_6]b(g0

L RNzVx }C0  10.9 线程问题水利图书}\V5ap\ ?(?

水利图书bh},g+k0wK

  10.10 架构挑战

X)}5o$yX)f:^0 水利图书9?c IY0c-e

   10.10.1 Java与PHP应用程序的整合水利图书]8`:FQ%p'Q7G T

水利图书 }.k)T3u(j

  10.10.2 PHP Web应用程序中的Java业务逻辑

t6D lF1As`0

8Zyt4yvj!G0   10.10.3 Java Web应用程序中的PHP视图水利图书%jyk8P[1@

水利图书8?k4i0nS$m:c5R

  10.11 小结

(eXQkn(f'tY0 水利图书v3H6uL _

第五部分水利图书 Y%dSG_4b&Dq*f

水利图书Nd@!~m$I

附录A Groovy的安装

I9q$e{"K0 水利图书 x6P8xx^+k+J?

附录B Groovy的IDE支持水利图书J8_uW)T%f)}#A

)z/yo)m0?qU0附录C 安装JSR 223水利图书4X2P9nQ)VB*aj

T+|/gcy nk1t4@0书摘插图

5U5`zvR0

A/t;Av2a9k0第1章 脚本简介

.^3E"a%z0_c:G0

xR,vm#Pz0本书的主题结合了脚本技术与Java平台。它描述了Java开发人员可以用来创建一个更加强大的开发环境的项目,以及使脚本变得有用的一些实践。

)j n-i `(vB/C0 水利图书4f'O HJ/t.Y+rk/D

在开始讨论Java领域中的脚本应用程序之前,先整体概括一下脚本背后的一些理论,以及它在信息技术基础结构中的用途。这是本书开头两章的主题,这样,可以更好地了解脚本技术,以及这项技术在Java平台内部起着什么样的作用。水利图书5^%U,p4v,Iq4s N

!|.J#}4hg7a'O0首先,我们必须定义什么是脚本语言,并描述它们的特征。它们的特征很大程度上决定了它们可以(应该)用在哪些场景中。在本章中,我解释了术语脚本语言的含义,并讲解了它们的基本特征。

5d1y/h7Pb+a0

x0xx x1_0本章最后讨论了脚本语言与系统编程语言之间的区别,以及这些区别如何使它们符合开发中的某些场景。水利图书.b0w Th[!b(cG'H'p

水利图书f(vQ0N.iWd

  1.1 背景

d"G!v}$hWP+u8U9K0

7utJ)A h}:D0脚本语言的定义很含糊,有时候与脚本语言在现实中的使用方式不太一致,因此,最好整体概括一些关于编程与计算的基础概念。这样可为定义脚本语言和讨论它们的特征提供必要的基础。水利图书/my4l?~fh]

9exO*g\T0D(HW2R/S0让我们从头开始。处理器执行机器指令,它操作处理器的寄存器或者外部存储器中的数据。简单来说,机器指令由一系列二进制数字(很多0和1)组成,是特定于它在其中运行的特殊处理器的。机器指令由告诉处理器它应该执行什么操作的操作码和表示操作应该在其中执行的数据的操作数组成。水利图书8PT|*h.Z7t)qfH

水利图书 Ukr7L$veX

例如,将一个寄存器中包含的值添加到另一个寄存器中这样一个简单的操作。现在让我们假设一个简单的处理器,包含8位指令集,其中前5位表示操作码(比如,00111为“加”的寄存器值),且寄存器都以3位的模式进行处理。我们可以将这个简单的实例写成如下:水利图书ei0b)LU

水利图书A&q/I\8Vd,lX6x1mS

00111 001 010

A)dn4Kj`%{0

~w\#\@~y0在这个例子中,我用了001和010对处理器的寄存器数字1和2(相应为Rl和R2)进行操作。

}-JB&|y0 水利图书!]x1k/nV

这个基础的计算方法已经广为人知几十年,我相信你对它也很熟悉。各种处理器对于它们指令集的外观有着不同的策略(RISC或者CISC架构),但是从软件开发人员的角度来说,唯一重要的是,处理器只能执行二进制指令。无论使用什么编程语言,最终的应用程序都是通过处理器执行的水利图书4t b?h/DCcu;w

水利图书2Cq"h/Jcd,UX `

一系列机器指令。

+v&V4A'yg!_0

E2]~F4c#P&m0随着时间而改变的是人们如何创建执行机器指令的顺序。这个有序的机器指令称为计算机程序。由于硬件的成本变得越来越低,且功能越来越强,因此用户的期望在增长。软件开发作为一门学科,其目标就是提供一些机制,使开发人员用与以前同样的(或者更少的)工作,就能编写出更加复杂的应用程序。水利图书I@]#B8`c

水利图书x3W3^ R(Z]?E~)F

一个特定处理器的指令集称为它的机器语言。机器语言属于第一代编程语言。以这种方式编写的程序通常非常快,因为它们针对特殊处理器的架构进行了优化。但是除了这点好处之外,人类却很难(即便不是不可能的话)用机器语言编写大型且安全的应用程序,因为人类不善于处理大量的0和1。

j Z/I&n2e)KfY8C X0 水利图书K;t0s#r{0X

为了解决这个问题,开发人员们开始为二进制数创建符号,这样就引人了汇编语言。汇编语言是第二代编程语言。汇编语言中的指令就是机器指令的上一级,它们在该级别中用容易记的关键字(如ADD、SUB等等)替代了二进制数。如此一来,你就可以用汇编语言将前面那个简单的指令实例重写成如下:水利图书0d"h%J6X^I#St2^

水利图书'I8U{N `#Y

  ADO R1,R2水利图书z'Hf b;Mk

水利图书3j |p&jl%wP d\i

在这个例子中,ADD关键字表示指令的操作码,R1和R2定义操作中涉及的寄存器。即使只看这个简单的实例,也可以看出汇编语言显然使程序变得更容易让人阅读,从而能够创建更复杂的应用程序。水利图书f.N4v Bwi0UA.q

水利图书r3_}L K

尽管第二代语言更加面向人类了,但它们无论如何都没有扩展处理器的功能。水利图书O2`6Gmf%K U.N Y0J

水利图书_w+I \?3d

到了高级语言,它允许开发人员用更高级别的语义形式表达自己的想法,这些语言称作第三代编程语言。高级语言提供了各种功能强大的循环、数据结构、对象等等,使得利用它们创建许多应用程序变得更加容易。水利图书U%F$p2BZ FL

M)]uW'M:\-c0随着时间的推移,各种不同的高级编程语言也相继出现了,它们的特征也大不相同。其中有些特征将编程语言归类为脚本(或者动态)语言,就像我们在接下来的小节中将看到的。水利图书,F$EO-M5O ?

水利图书,pU5S?6}u5e7}

对于编程语言如何在主机上执行的问题上也有区别。通常,编译器将高级语言构造翻译成内存中的机器指令。虽然以这种方式编写的程序最初与用汇编语言编写的程序相比,效率稍微低一些,因为早期的编译器不能有效地使用系统资源,但随着时间的推移,编译器和机器都得到了改进,使得系统编程语言比汇编语言更高级。最后,高级语言在各种开发领域中变得普及起来,从业务应用程序和游戏到通信软件和操作系统实现。

+vD"?3I3o*UF]"bO0 水利图书&B Hq4OCMA]

但是,将高级别的语义转换成机器指令还有另外一种方法,也就是当它们被执行的时候解释它们。这样,应用程序就以它们原始的形式存在于脚本中,并且这种构造由名为解释器的程序在运行时进行转换。一般而言,你是在执行解释器,它读取应用程序的语句然后执行它们。这类语言称为脚本或者动态语言,提供了一种比系统编程语言更高级别的抽象,我们将在本章稍后详细讨论它们。水利图书B!QR4Y+Y*[!i @'QS

水利图书:M:Hr w*RlDn[

包含这些特征的语言天生就适合于某些任务,例如过程自动化、系统管理和将现有的软件组件整合在一起;简而言之,由于系统编程语言引入的严格语法和约束,在任何地方都成了开发人员与他们的工作之间的障碍。对脚本语言常用场景的描述,是第2章的重点。

.e6i9Q8O1e"t)c2z0 水利图书8b#OQ?8Nyh,L*^:S!V

但是所有这些与Java开发人员有什么关系呢?为了回答这个问题,让我们首先简要地概括一下Java平台的历史。由于平台变得越来越多样化,也为开发人员编写能在大多数现有系统中运行的软件增加了难度。就在这时候,Sun公司开发了Java语言,它具有“一次编写,随处运行”的简单性。

V:r:FkC|C;?0 水利图书4i$O9W!zB/p

 ……水利图书 x^^2[(lO

3Ld8Kl(q;|0书摘与插图

`6g7G |1`| a!IE4C0O_0

8X@d SY0

9AwN,WOC+`Z0
顶:7 踩:11
对本文中的事件或人物打分:
当前平均分:-0.53 (30次打分)
对本篇资讯内容的质量打分:
当前平均分:-1.04 (26次打分)
【已经有25人表态】
下一篇:游戏编程数学和物理基础(含盘)
上一篇:嵌入式Linux C语言开发入门与编程实践

水资讯网广告招租

查看全部回复【已有0位网友发表了看法】

广告投放

广告投放