Sun:创建于1982年,主要做工作站(一种高端的通用微型计算机)和服务器。1986年在美国成功上市,1993年进入财富500强。1995年5月,Sun公司将Oak语言改名为Java,并且正式推出市场,Sun公司大肆宣传,许诺这种语言可以”一次编写,到处运行”(Write Once, Run Anywhere)。
"与其说我爱Javascript,不如说我恨它。它是C语言和Self语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好:'它的优秀之处并非原创,它的原创之处并不优秀。'(the part thatis good isnot original, and the part thatis original isnot good.)"
Asynchronous Javascript And XML,异步JavaScript和XML。1999年W3C发布第四代HTML标准,同年微软推出用于异步数据传输的ActiveX,随即各大浏览器厂商模仿实现了XMLHttpRequest,这标志着Ajax的诞生,但是Ajax这个词是在六年后(2005年)问世的,特别是在谷歌使用Ajax技术打造了Gmail和谷歌地图之后,Ajax获得了巨大的关注。 在2005年之前,也即Ajax问世之前,Web应用可以称之为Web 1.0时代。此时的Web应用甚至不能称为应用,顶多算Web网页。 Web 1.0时代的网页大致有以下三个特点:
REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。Fielding将他对互联网软件的架构原则,定名为REST,即Representational State Transfer的缩写,翻译为中文大概是”表现层状态转化”,如果一个架构符合REST原则,就称它为RESTful架构。 RESTful架构中的“表现层”,指的是资源“Resources”的表现层。所谓”资源”,就是网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的实在。你可以用一个URI(统一资源定位符)指向它,每种资源对应一个特定的URI。要获取这个资源,访问它的URI就可以,因此URI就成了每一个资源的地址或独一无二的识别符。所谓”上网”,就是与互联网上一系列的”资源”互动,调用它的URI。”资源”是一种信息实体,它可以有多种外在表现形式。我们把”资源”具体呈现出来的形式,叫做它的”表现层”(Representation)。比如,文本可以用txt格式表现,也可以用HTML格式、XML格式、JSON格式表现,甚至可以采用二进制格式;图片可以用JPG格式表现,也可以用PNG格式表现。它的具体表现形式,应该在HTTP请求的头信息中用Accept和Content-Type字段指定,这两个字段才是对”表现层”的描述。 互联网通信协议HTTP协议,是一个无状态协议。这意味着,所有的状态都保存在服务器端。因此,如果客户端想要操作服务器,必须通过某种手段,让服务器端发生”状态转化”(State Transfer)。而这种转化是建立在表现层之上的,所以就是”表现层状态转化”。客户端用到的手段,只能是HTTP协议。具体来说,就是HTTP协议里面,四个表示操作方式的动词:GET、POST、PUT、DELETE。它们分别对应四种基本操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源。 因此,一个RESTful架构大概要包括以下描述:
// 关闭回显,加上这句,当前执行的命令不会显示(即,下面这些代码不会显示在屏幕上)
@echo off
// 读取run_config.txt文件第一行数据,以参数domain存储,然后跳转到secondArgs命令执行
// 我这么写不可取,跳转secondArgs命令主要用于读取第二行数据
for /f %%i in (run_config.txt) do (
set domain=%%i
goto secondArgs
)
// 读取第二行数据以参数dir存储
:secondArgs
for /f %%i in (run_config.txt) do (
set dir=%%i
)
// 输出参数domain、dir
echo the root path is:%domain%
echo the project path is:%dir%
echo AUTO RUNING, PLEASE ENTER ACCORDING THE TIPS......
// begin命令
:begin
echo ************TIPS START************
echo at the first use,please input 'm' to set root path and project path according the tips.
echo ************TIPS ENDS!************
// 改变字体颜色,可选颜色不多
color 07
// 以命令选择的形式,给使用者选择的权利,其中将各个项目(各应用)需要的打包分离出来,分别对应相应的自动化构建脚本命令
// 以字母RCAPMQ一一对应,例如输入Q,则进入exit命令
choice /m ROOT,COMMONS,APP,PORTAL,MODIFY,EXIT /c:RCAPMQ
if errorlevel 6 goto exit
if errorlevel 5 goto modify
if errorlevel 4 goto portal
if errorlevel 3 goto app
if errorlevel 2 goto commons
if errorlevel 1 goto root
:root
color 0a
// 用于进入对应的盘符
%domain%
// 用于进入对应的项目目录
cd%dir%
// 执行当前目录下的gulp命令
node %domain%%dir%\node_modules\gulp\bin\gulp.js
echo -----------------------------ROOT PROCESS FINISHED!----------------------------
// 跳转begin命令,可以让使用者进行下一次使用
goto begin
// 以下几个命令类似上面
:commons
color 0d
%domain%
cd%dir%\commons
node %domain%%dir%\node_modules\gulp\bin\gulp.js
echo ----------------------------COMMONS PROCESS FINISHED!--------------------------
goto begin
:app
color oe
%domain%
cd%dir%\app
node %domain%%dir%\node_modules\gulp\bin\gulp.js debug
echo ---------------------------APP_BASE PROCESS FINISHED!--------------------------
goto begin
// 该命令可以进行多个应用的一键构建
:portal
color 0a
%domain%
cd%dir%
node %domain%%dir%\node_modules\gulp\bin\gulp.js
cls
echo -----------------------------ROOT PROCESS FINISHED!----------------------------
echo ***************************COMMONS PROCESS STARTING!***************************
color 0d
%domain%
cd%dir%\commons
node %domain%%dir%\node_modules\gulp\bin\gulp.js
cls
echo ----------------------------COMMONS PROCESS FINISHED!--------------------------
echo ******************************APP PROCESS STARTING*****************************
color 0e
%domain%
cd%dir%\app
node %domain%%dir%\node_modules\gulp\bin\gulp.js debug
cls
echo ------------------------------APP PROCESS FINISHED-----------------------------
echo *******************************************************************************
color 0f
goto begin
// modify命令用于修改盘符及项目目录路径
:modify
// 删除config文件
del run_config.txt
// '/p'会暂停当前命令
// 此处主要用于获取用户输入
set /p domain=please input yours root path,end with ':', eg.'d:':
echo the root path is:%domain%
// 输出输入的信息并保存到config文件中
@echo %domain%>>run_config.txt
set /p dir=please input yours project path, start with '/', eg. '/xx/xx':
echo the project path is:%dir%
@echo %dir%>>run_config.txt
goto begin
// 关闭当前窗口
:exit
pause