?? part 4 testing, tuning and debugging the dojo toolkit.mht
字號(hào):
From: <由 Windows Internet Explorer 7 保存>
Subject: Part 4: Testing, Tuning and Debugging | The Dojo Toolkit
Date: Sun, 2 Dec 2007 16:35:46 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
type="text/html";
boundary="----=_NextPart_000_02E8_01C83501.63E0DEA0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198
This is a multi-part message in MIME format.
------=_NextPart_000_02E8_01C83501.63E0DEA0
Content-Type: text/html;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo-0
=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML lang=3Den xml:lang=3D"en" =
xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Part 4: Testing, =
Tuning and Debugging | The Dojo Toolkit</TITLE><!--=0A=
section: docs -->
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dutf-8"><LINK=20
href=3D"/book/dojo-book-0-9/part-3-programmatic-dijit-and-dojo/other-misc=
ellaneous-function/string-functions"=20
rel=3Dprev><LINK href=3D"/book/dojo-book-0-9-0" rel=3Dup><LINK=20
href=3D"/book/dojo-book-0-9/part-4-meta-dojo/using-subversion" =
rel=3Dnext><LINK=20
href=3D"/sites/all/themes/dtk/favicon.ico" type=3Dimage/x-icon =
rel=3D"shortcut icon">
<META content=3Den name=3Dlanguage>
<STYLE type=3Dtext/css media=3Dall>@import url( =
/files/css/4538c7b86f5ddf0e20fe837f59d90fef.css );
</STYLE>
<SCRIPT src=3D"http://dojotoolkit.org/dojo/config/6"=20
type=3Dtext/javascript></SCRIPT>
<SCRIPT=20
src=3D"http://dojotoolkit.org/sites/all/modules/dojo/dtk_build/dojo/dojo.=
js"=20
type=3Dtext/javascript></SCRIPT>
<SCRIPT =
type=3Dtext/javascript>dojo.addOnLoad(function(){dojo.addClass(dojo.body(=
),"tundra");});</SCRIPT>
<SCRIPT type=3Dtext/javascript>dojo.require("dojo.parser");</SCRIPT>
<SCRIPT =
type=3Dtext/javascript>document.documentElement.className=3D"js";</SCRIPT=
>
<SCRIPT src=3D"http://dojotoolkit.org/sites/all/themes/dtk/js/common.js" =
type=3Dtext/javascript></SCRIPT>
<SCRIPT type=3Dtext/javascript>
dojo.require("dijit._base.sniff");
</SCRIPT>
<META content=3D"MSHTML 6.00.6000.16544" name=3DGENERATOR></HEAD>
<BODY class=3D"" id=3Dbdy>
<DIV id=3Dpage-block><!-- region_user_header.php -->
<DIV id=3Dlogin-block><SPAN id=3Duser-header> </SPAN> <SPAN =
id=3Dlogin-prompt><A=20
href=3D"http://dojotoolkit.org/user">Login</A></SPAN> <SPAN =
id=3Dregister-prompt><A=20
href=3D"http://dojotoolkit.org/user/register">Register</A></SPAN> =
</DIV><!-- /region_user_header.php -->
<DIV id=3Dbody-block><!-- region_header.php -->
<DIV id=3Dlogo-block>
<DIV id=3Ddojo-logo><A title=3DHome =
href=3D"http://dojotoolkit.org/"><IMG=20
id=3Ddojo-logo-img alt=3D"The Dojo Toolkit"=20
src=3D"http://dojotoolkit.org/sites/all/themes/dtk/img/banner-logo-text.g=
if"></A>=20
</DIV>
<DIV id=3Dsearch-block>
<FORM id=3Dsearch-theme-form action=3D/search/node method=3Dpost>
<DIV>
<H6 class=3Dhidden><LABEL =
for=3Dsearch_theme_form_keys>Search</LABEL></H6>
<DIV class=3Dcontainer-inline id=3Dsearch>
<DIV class=3Dform-item><INPUT class=3Dform-text =
id=3Dedit-search-theme-form-keys=20
title=3D"Enter the terms you wish to search for." maxLength=3D128 =
size=3D25=20
name=3Dsearch_theme_form_keys><BUTTON class=3Dform-submit =
id=3Dedit-submit-1 name=3Dop=20
type=3Dsubmit><SPAN class=3Dhidden>Search</SPAN></BUTTON> <INPUT=20
id=3Dedit-search-theme-form type=3Dhidden value=3Dsearch_theme_form =
name=3Dform_id>=20
<INPUT id=3Da-unique-id type=3Dhidden =
value=3D3f69e328cbd47ff457e4b25037ebd4be=20
name=3Dform_token> </DIV></DIV></DIV></FORM></DIV></DIV><!-- =
/region_header.php -->
<DIV id=3Dglobal-menu-block>
<UL id=3Dglobal-menu>
<LI id=3Dnav-about><A class=3Dplink =
href=3D"http://dojotoolkit.org/about">About</A>=20
<LI id=3Dnav-demos><A class=3Dplink =
href=3D"http://dojotoolkit.org/demos">Demos</A>=20
<LI id=3Dnav-downloads><A class=3Dplink=20
href=3D"http://dojotoolkit.org/downloads">Downloads</A>=20
<LI id=3Dnav-documentation><A class=3Dplink=20
href=3D"http://dojotoolkit.org/docs">Documentation</A>=20
<LI id=3Dnav-support><A class=3Dplink=20
href=3D"http://dojotoolkit.org/support">Support</A>=20
<LI id=3Dnav-community><A class=3Dplink=20
href=3D"http://dojotoolkit.org/community">Community</A>=20
<LI id=3Dnav-fullmenu><A onclick=3D"return false;"=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo-0#full=
menu">Full=20
Menu</A> </LI></UL></DIV><!-- region_banner.php -->
<DIV class=3Dbanner-docs id=3Dbanner-block>
<DIV id=3Dsection-heading>
<P>Documentation</P></DIV>
<DIV id=3Dsection-subheading>
<P>learn about the dojo toolkit</P></DIV></DIV><!-- /region_banner.php =
-->
<DIV id=3Dtop-breadcrumb-block>
<DIV class=3Dbreadcrumb><A href=3D"http://dojotoolkit.org/">Home</A> =
=C2=BB <A=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9-0">The Book of =
Dojo</A> =C2=BB Part=20
4: Testing, Tuning and Debugging</DIV></DIV>
<DIV id=3Dcontent-block>
<DIV class=3Dcols-narrow-wide>
<DIV class=3D"col-a content-region-container" =
id=3Dsidebar-left-container>
<DIV class=3Dcontent-block><!-- Block: menu -->
<DIV class=3D"block block-menu" id=3Dblock-menu-572>
<H2 class=3Dtitle>The Book of Dojo</H2>
<DIV class=3Dcontent>
<UL class=3Dmenu>
<LI class=3Dexpanded id=3Dmenu-item-296><A=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9-0">The Book of =
Dojo</A>=20
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-312><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-1-life-dojo/quick-=
installation">Quick=20
Installation</A>=20
<LI class=3Dleaf id=3Dmenu-item-652><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/hello-world-tutorial">H=
ello=20
World</A>=20
<LI class=3Dleaf id=3Dmenu-item-651><A=20
=
href=3D"http://dojotoolkit.org/book/book-dojo/part-4-meta-dojo-making-you=
r-dojo-code-run-faster-and-better/debugging-facilities/deb">Debugging=20
Tutorial</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-297><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/introduction">Introduct=
ion</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-324><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-1-life-dojo-0">Par=
t 1:=20
Life With Dojo</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-298><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-2-dijit-0">Part =
2:=20
Dijit</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-299><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dij=
it-and-dojo-0">Part=20
3: JavaScript With Dojo and Dijit</A>=20
<LI class=3Dexpanded id=3Dmenu-item-300><A class=3Dactive=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo-0">Par=
t 4:=20
Testing, Tuning and Debugging</A>=20
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-506><A=20
title=3D"Downloading Dojo using Subversion"=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/using-=
subversion">Using=20
Subversion</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-409><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/develo=
pment-tools">Development=20
Tools</A>=20
<LI class=3Dcollapsed id=3Dmenu-item-414><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/debugg=
ing-facilities">Debugging=20
Facilities</A>=20
<LI class=3Dleaf id=3Dmenu-item-490><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/d-o-h-=
unit-testing">D.O.H.=20
Unit Testing</A>=20
<LI class=3Dleaf id=3Dmenu-item-420><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/perfor=
mance-optimization">Performance=20
Optimization</A>=20
<LI class=3Dleaf id=3Dmenu-item-419><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/packag=
e-system-and-custom-builds">The=20
Package System and Custom Builds</A> </LI></UL>
<LI class=3Dcollapsed id=3Dmenu-item-301><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-5-dojox-extensions=
-dojo-0">Part=20
5: DojoX</A> </LI></UL>
<LI class=3Dcollapsed id=3Dmenu-item-54><A title=3D"The Dojo Book, =
0.4"=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-4">The Dojo Book, =
0.4</A>=20
</LI></UL></DIV></DIV></DIV></DIV>
<DIV class=3D"col-b content-region-container">
<DIV id=3Dmain-container><!-- main_content region -->
<H2>Part 4: Testing, Tuning and Debugging</H2><!--Node: -->
<DIV class=3Dnode>
<DIV class=3Dsubmitted>Submitted by criecke on Sat, 04/28/2007 - =
19:26.</DIV>
<DIV class=3Dcontent>
<P>Up until now, we've been looking directly at Dojo and Dijit. Now =
we'll shift=20
gears for a bit and talk about stuff outside the code itself. When you =
work with=20
a rich toolkit like Dojo to build Enterprise-grade apps, the old =
JavaScript=20
development paradigms aren't so hot:</P>
<UL>
<LI>Debugging with alert() is tedious and inflexible
<P></P>
<LI>Testing by eyeballing pages requires too much manual recordkeeping =
<LI>Notepad just doesn't cut it as an IDE!=20
<LI>Development "frills" like whitepace and comments now get in the =
way of=20
performance. The more you do, the more bytes to download to the =
client, and=20
the slower the load time </LI></UL>
<P>In Part 4, we'll look at ways to combat all of these issues. The Dojo =
people=20
aren't content with dropping the API in your lap and running. Oh no! In =
the=20
course of developing Dojo itself, they have built tools and techniques =
to help=20
you, and they're very generous in sharing them. So let's have a =
look.</P>
<DIV class=3Dbook-navigation>
<UL class=3Dmenu>
<LI class=3Dleaf><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/using-=
subversion">Get=20
the Code from Subversion</A>
<LI class=3Dcollapsed><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/develo=
pment-tools">Development=20
Tools</A>
<LI class=3Dcollapsed><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/debugg=
ing-facilities">Debugging=20
Facilities</A>
<LI class=3Dleaf><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/d-o-h-=
unit-testing">D.O.H.=20
Unit Testing</A>
<LI class=3Dleaf><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/perfor=
mance-optimization">Performance=20
Optimization</A>
<LI class=3Dleaf><A=20
=
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/packag=
e-system-and-custom-builds">The=20
Package System and Custom Builds</A></LI></UL>
<DIV class=3D"page-links clear-block"><A class=3Dpage-previous=20
title=3D"Go to previous page"=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dij=
it-and-dojo/other-miscellaneous-function/string-functions">=E2=80=B9=20
String Functions</A><A class=3Dpage-up title=3D"Go to parent page"=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9-0">up</A><A =
class=3Dpage-next=20
title=3D"Go to next page"=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9/part-4-meta-dojo/using-=
subversion">Get=20
the Code from Subversion =E2=80=BA</A></DIV></DIV></DIV>
<DIV class=3Dlinks>
<UL class=3D"links inline">
<LI class=3D"first book_printer"><A class=3Dbook_printer=20
title=3D"Show a printer-friendly version of this book page and its =
sub-pages."=20
href=3D"http://dojotoolkit.org/book/export/html/970">Printer-friendly=20
version</A>=20
<LI class=3Dcomment_forbidden><SPAN class=3Dcomment_forbidden><A=20
=
href=3D"http://dojotoolkit.org/user/login?destination=3Dnode/970%2523comm=
ent-form">Login</A>=20
or <A=20
=
href=3D"http://dojotoolkit.org/user/register?destination=3Dnode/970%2523c=
omment-form">register</A>=20
to post comments</SPAN>=20
<LI class=3D"last subscriptions_add_node"><A =
class=3Dsubscriptions_add_node=20
title=3D"Receive an e-mail whenever a comment is posted to this Book =
page."=20
href=3D"http://dojotoolkit.org/subscriptions/add/node/970">Subscribe =
post</A>=20
</LI></UL></DIV></DIV>
<DIV id=3Dcomments></DIV><!-- /main_content region --></DIV></DIV>
<DIV class=3D"col-c content-region-container">
<DIV id=3Dsidebar-right-container></DIV></DIV><BR class=3Dclear></DIV>
<DIV class=3Dcols-a50b50 id=3Dafter-content-block>
<DIV class=3D"col-a content-region-container" =
id=3Dafter-content-block-1></DIV>
<DIV class=3D"col-b content-region-container" =
id=3Dafter-content-block-2><BR=20
class=3Dclear></DIV><BR class=3Dclear></DIV><BR clear=3Dall></DIV>
<DIV class=3Dcontent-region-container>
<DIV id=3Dnavigation-block>
<DIV id=3Dbreadcrumb-block>
<DIV id=3Dbreadcrumbs>
<DIV class=3Dbreadcrumb><A href=3D"http://dojotoolkit.org/">Home</A> =
=C2=BB <A=20
href=3D"http://dojotoolkit.org/book/dojo-book-0-9-0">The Book of =
Dojo</A> =C2=BB Part=20
4: Testing, Tuning and Debugging</DIV></DIV></DIV>
<DIV class=3Dcols-abcd id=3Dmain-menu-block><!-- Block: menu -->
<DIV class=3D"block block-menu" id=3Dblock-menu-573>
<DIV class=3Dcontent>
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-574><A title=3D"See the Dojo Toolkit =
in action!"=20
href=3D"http://dojotoolkit.org/demos">Demos</A>=20
<LI class=3Dexpanded id=3Dmenu-item-575><A=20
title=3D"Get started with the Dojo Toolkit, fast"=20
href=3D"http://dojotoolkit.org/docs/quickstart">Quick Start</A>=20
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-576><A title=3D"Get the toolkit"=20
href=3D"http://dojotoolkit.org/downloads">Downloads</A>=20
<LI class=3Dleaf id=3Dmenu-item-577><A title=3D"See examples of the =
Dojo Toolkit"=20
href=3D"http://dojotoolkit.org/demos">Examples</A>=20
<LI class=3Dleaf id=3Dmenu-item-639><A=20
href=3D"http://dojotoolkit.org/spotlight">Spotlight</A> </LI></UL>
<LI class=3Dexpanded id=3Dmenu-item-578><A=20
href=3D"http://dojotoolkit.org/about">About</A>=20
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-579><A=20
href=3D"http://dojotoolkit.org/about">Overview</A>=20
<LI class=3Dleaf id=3Dmenu-item-580><A=20
href=3D"http://dojotoolkit.org/about/features">Features</A>=20
<LI class=3Dleaf id=3Dmenu-item-581><A=20
href=3D"http://dojotoolkit.org/about/press">Press</A>=20
<LI class=3Dleaf id=3Dmenu-item-582><A=20
href=3D"http://dojotoolkit.org/about/contact">Contact</A>=20
</LI></UL></LI></UL></DIV></DIV><!-- Block: menu -->
<DIV class=3D"block block-menu" id=3Dblock-menu-589>
<DIV class=3Dcontent>
<UL class=3Dmenu>
<LI class=3Dexpanded id=3Dmenu-item-583><A=20
href=3D"http://dojotoolkit.org/downloads">Downloads</A>=20
<UL class=3Dmenu>
<LI class=3Dleaf id=3Dmenu-item-584><A=20
href=3D"http://dojotoolkit.org/downloads">Current releases</A>=20
<LI class=3Dleaf id=3Dmenu-item-585><A=20
href=3D"http://archive.dojotoolkit.org/nightly/">Nightly builds</A>=20
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -