NoahWeb 什么是动作?

 更新时间:2016年9月20日 19:05  点击:1232

动作是NoahWeb中极为重要的一个概念,浏览器与服务器一个完整的上下交互行程都可以理解成一个动作。

动作编程与以往的过程编程和对象编程是截然不同的一种编程思路。过程编程已经被某种意义上被淘汰在此就不做讨论,而动作编程与对象编程相比较,他们之间最大的区别在于“高度”的不同。

类、对象带给我们的面向对象编程可以让我们方便的在众多领域中进行复杂、高效的编程实现应用。每个有过对象编程学习经历的人在最初学习时也许都被问过“这个世界是由什么组成的?”通过这个方法以便让大家能直观的了解对象和类,而对象和类更可以让我们用最初认知的世界方式来理解和描述计算机中的各种功能和值。可是,对于网站、MIS或业务系统这些轻量级B/S架构的应用,对象编程也许并不是一种最好选择。

对于客户——程序结构设计重要还是流程设计重要?

类、对象提供了我们一种去描述计算机程序内各种能力和值的方式,可类、对象也是一种很“低级”的描述方式。

我们可以通过类和对象的方式来假设设计一个批发商买卖矿泉水的程序:

首先,您需要使用对象的方式描述水的各种属性和它具有的能力,而水是被装在瓶子里,所以对于装水的瓶子您也需要用类或对象的方式去描述一下瓶子的属性和能力,瓶子需要被装在箱子里,所以您也需要去用类或对象的方式去描述一下箱子……到此暂停!

回头看一下使用类和对象的时候我们在做什么?我们在进行对象之间的关系设计。而我们最初目的是什么?是设计一个批发商买卖矿泉水的流程。

看一下使用动作编程是怎么设计整个流程的:

订单确认—>出库—>装货—>送货—>收款

订单确认、出库、装货、送货、收款每个都是一个动作,而这些动作组合在一起构成了一个买卖矿泉水的动作流程。或许您还认为上述整个买卖矿泉水流程不合理应该是另一个更合理的流程。这样考虑就对了,因为您现在更多的时间已经花在为您的用户设计流程,而不是考虑设计整个类和对象之间的关系。

对于系统的用户我们为他考虑的不应该是程序结构方面的设计,而应该更多的是流程方面的设计。在使用动作方式后,您关注的不再是类和对象之间的关系,而是整个流程的设计。

一级还是多级?

我们还是继续来看批发商买卖矿泉水的流程设计,对象编程时,水和瓶子之间是存在关系,瓶子和箱子之又存在关系,再往上设计,或许还有批发商对象,买卖矿泉水的这个行为是由箱子这个对象来具备的,如下图所示:

<

  web2.0

  博客的出现之所以被称为网络世界的革命,是因为其极大的降低了建站的技术门槛和资金门槛,而使每一个互联网用户都能方便快速的建立属于自己的网上空间。随着配套应用的快速发展,个人博客将在很短的时间内加速成长为类门户型的微型个人网站。博客走进千家万户和各行各业,从而将形成基于个人或小团体的以内容为导向的群体,而其中一定会出现的佼佼者将在很大程度上从门户频道乃至专业网站手里夺走部分甚至大部分读者。这在IT业界和互联网行业正在得到验证。

  Web2.0的定义,我认为是在web1.0的服务基础上,是互联网络用户从信息接受者转变成为信息制造者和传播者,从受众转向主体,从单个个体转向社团的新型互联网服务模式。在这种情况下,为用户提供优秀的发布平台、便捷的沟通和展示平台、顺畅的进入和退出机制、高效的信息整合机制变的与提供高质量信息一样重要,甚至更加重要。Web2.0时代的竞争,将不仅仅是内容的竞争,而是综合服务的竞争,其中的关键点包括以上的数个方面。博客是web2.0的最主要的代表。

  [文摘]web2.0是一个读写的互联网、一个依靠链接组织起来的互联网。

  一边是写,写的人活跃在各种各样的“节点”上,使用各种工具向互联网上传递着数字化的内容,这些内容被保存在数据库、文件系统,甚至是行动中的手机、PDA;一边是读,读的人活跃在各种各样的“主页”上,这里的“主页”已经不能简单的称呼为某个网站的主页,而是互联网上N个活动的节点的主页,一个“主页”上的内容,可能来自几十个节点,“主页”的编写者同节点的所有者一样,也在使用各种各样的工具,从节点读取内容,“主页”的编写者的主要工作已经从创造内容变成了收集和整理内容。

  博客

  博客的出现,在很大程度上满足了用户由单纯的信息接受者向信息提供者转变的需要,从而得到快速的发展。博客通过RSS、博采、Trackback、TAG等技术,在个体之间已初步形成了社团氛围和初步的社团机制。可以预见,博客服务提供商们将能提供更多的技术手段来加强这种社团性联系,如SNS等。博客圈子的形成,将在另一层意义上大规模提高其内容产生质量和数量。

  互动

  博客与互联网络的互动、博客之间的互动客观上要求BSP提供商适时提供博客与博客网站之间的互动,需要博客网站为博客提供展示自己的舞台。只有这种互动,才能将博客内容提供质量提高,而进一步深化博客信息质量。从某种程度上说,博客网站的门户效应将极大影响某类博客的发展态势和发展程度,而博客门户也会因为博客发展程度的原因而停滞或加速发展。两者相辅相成。

  在国内现有BSP竞争格局下,单纯的BSP服务和单纯的门户内容提供模式都是缺乏竞争力的。必须把两者结合起来,这就需要从博客网站和频道定位开始,逐步强化互动意识,探索互动的方法和技术。Web2.0时代的门户频道建设虽应从传统门户借鉴成功的经验和做法,更重要的是要探索出一条新路,挖掘自身网站博客的优秀内容。才能使2.0门户拥有大大超越1.0时代门户的资讯生产能力和整合、吸纳传统门户优秀内容的能力。极端的说,即便有更好的产品来取代博客,探索门户同博客的深度互动平台也必不可少。

  [文摘]

  随着支持RSS和XML-RPC的BLOG站点的兴起,WEB2.0的概念也跟着兴旺发达广为传播,就可以理解了。BLOG作为能够体现web2.0中“节点”概念几乎全部要素的一种形式,是存储和输出数字化内容的最佳载体。但是,纵观国内BLOG站点,多数都是提供了输入数据的界面,却没有能有效的让自己再次成为“节点”,实在是有些可惜。

  博客相关技术

  伴随博客出现而围绕博客服务的技术主要有:博采技术、内容聚合技术、同步技术、SNS技术和tag。博采技术为用户组织了随时摘取有用内容的有效工具,其前提是用户认知到这个信息;RSS技术则将有用的信息源聚合起来,随时将信息源提供的信息发送到用户平台,Trackback技术则将博客团体内其他成员的动向信息传递给用户,保持成员间的有效沟通;SNS技术用于凝聚社团的整体意识,tag是网民自主分类工具。可以说,基于博客单体的技术开发已形成体系并走向深化。与此对应的是,博客网站门户和频道的技术实现还停留在零的状态,甚至连第一代门户的技术都不如。

  [文摘]如果把wikipedia中的web 2.0的描述当成“定义”或者“经典”是非常片面的。 其实wekipedia并没有能下出一个定义,只是说明了哪些东西属于目前所说的web 2.0的技术:
 
  CSS + XHTML

  AJAX (最近很红火的新概念老技术,我自己的理解和定义是:通过网页内的javascipt调用来减少web页面刷新的必要性来提高web可用性的一种古老技术)

  通过RSS/ATOM同步数据

  通过RSS/ATOM聚合数据

NoahWeb™引擎为计算机编程专用语言解析引擎,属于新一代解析型编程语言执行引擎,用于快速开发B/S结构下的应用或网站。同NoahWeb™紧密相关的有NoahWeb Engine、NoahWeb Designer以及其他设计器辅助工具。

NoahWeb™使用有别于传统编程语言的编程结构和语法,语法分逻辑层和表现层两类。使用NoahWeb™对B/S的项目进行开发,逻辑层和表现层已经被NoahWeb™全新的编程结构分离。表现层(前端)使用HTML或是说XML内的注释标签方式描述基本的控制指令,逻辑层使用XML格式NoahWeb™语法进行逻辑开发,从而大大加快了开发速度。

NoahWeb™内包含对各种常见数据库的支持。NoahWeb™使用内部的数据库无差异支持引擎来对数据库进行方便快捷的访问,从而让使用NoahWeb™开发的项目能够轻松的移植到不同数据库运行。

NoahWeb™提供了功能强大的Form表单的管理和设计支持。

NoahWeb™集成了国内各种常见协议的支持。

NoahWeb™对表现层代码、字符资源、数据库查询、页面表单、变量、动作、函数等资源提供统一管理,各种资源具有极高的可重用性。

NoahWeb Designer用来协助开发人员使用NoahWeb™对项目进行快速开发。在NoahWeb Designer中可管理使用NoahWeb™开发的动作(Action)、名称空间(NameSpace)、模组(Moudle)、表单(Form)、字符资源(String)、数据库操作(SQL)等资源。

NoahWeb Designer可根据项目的配置信息管理数据库连接,提供针对已连接数据库表结构的数据库操作的快速生成和编辑,还可进行对字符资源的编写和提供在其他编写工具中编写NoahWeb™的各类编写支持,最后NoahWeb Designer会将所有生成内容使用NoahWeb™语言和语法进行保存以保证NoahWeb Engine的正常解析和执行。




    大家可能有这样的体验,在相同的条件下,有些网页不仅美观,大方,打开的速度也非常快,而有些网页却让人长久等待。这就说明网页制作不仅仅是以文笔流畅,图片精美,布局整洁而取胜,很大程度上依赖于网络技术。因此一个很简单的主页不仅是制作者审美观、阅历的体现,更是制作者知识面、技术等综合素质的展示。

    我们来一起熟悉一下跟主页制作相关的网络术语,只有了解了网络相关的知识,我们才能制作出自己具有艺术性和技术性的主页。

  万维网:

    万维网的英文缩写是WWW,是一个基于超级文本的信息查询工具。

  超级文本: 

    超级文本与普通文本不同,它是一种使用用户于计算机之间进行交流的文本显示技术,通过对关键词或图片的索引链接,可以使这些带有链接的词语或图片指向相关的文件或者文本中的相关段落。类似于普通书本中的目录,我们要看某一个章节,就要用手翻页到相关的页面,在这里,我们用鼠标点击相关的链接(相当于书本中的目录)就能打开相关的页面或内容。

    通常当鼠标指针指向带有超级链接的时候,鼠标指针从原来的箭头形状变为“手”的形状,文本的下方也会出现下划线或者做出颜色的改变,这是软件默认的超级文本的链接形式,依据设计制作者的不同选择,会出现不同的显示。

  浏览器:

    浏览器是安装在电脑中(客户端)用来查看万维网中超级文本的一种工具(软件)每一个万维网的用户都要在电脑上安装浏览器来“阅读”网页中的信息,这是使用万维网的最基本的条件,就好像我们要用电视机来收看电视节目一样。目前大家所用的Windows操作系统中已经内置了浏览器。

    目前主流的浏览器主要分为两种:

  1、微软公司开发的 Microsoft Internet Exploere浏览器,简称IE,目前最高版本是6.0。

  2、网景公司开发的 Netscape Navigator浏览器。

    这两个浏览器开发公司不同,但使用界面大致相同,他们占有了网络浏览器市场的绝大部分份额,还有一些其他公司的浏览器,因为其占有市场份额相对太小,这里不作介绍了。需要提醒大家注意的是,尽管微软和网景浏览器界面大致相同,但是对于浏览使用了特效的同一个网页,显示的效果也可能不同,即便是同一个公司的不同版本的浏览器也有这样的状况。因此我们在网页制作过程中应该考虑到浏览对象的不同而选择不同的制作方式。例如如果我们的主页主要面对的对象是国内用户,而国内用户大多使用Windows自带的浏览器,我们就可以选择目标浏览器是IE,同时要兼顾一下还在使用IE5.0版本的用户;如果我们面对的对象是海外用户,而海外很多人习惯使用网景浏览器,我们就可以选择Netscape的浏览器。

  FTP(文件传输协议): 

    FTP是文件传输协议的英文缩写,是快速、高效、可靠的信息传输方式。这个协议能把文件从一台计算机传输到另外一台计算机中,而不必管这两台计算机位置在何处,也不用管这两台计算机使用什么操作系统和使用何种网络,只要它们都遵循FTP协议,并且能够通过网络互联。

    由于FTP是一个交互式的会话系统,因此两台计算机可以作为一个客户端一个服务器端来看待,它们之间要建立双重连接,一个用于控制,一个用于数据传输。这是制作网页所要使用的重要技术之一。

  URL(统一资源定位器): 

  URL主要用于指明通信协议和地址,以获取网络的各种信息服务。它包括:

  通信协议:http、FTP、Telnrt、Mailto等。
  主机名:指服务器在网络中的IP地址或域名。
  所要访问的文件的路径和文件名:主机名与文件夹(目录)及文件之间用“/”符号分隔。
  我们在上面所说的浏览器的地址栏中输入的就是URL。

  IP地址: 

  IP地址是分配给网络上计算机的一组由32位二进制数值组成编号,来对网络中计算机进行标识,为了方便记忆地址,采用了十进制标记法,每个数值小于等于225,数值中间用“.”隔开,一个IP地址相对一台计算机并且是唯一的,这里提醒大家注意的是所谓的唯一是指在某一时间内唯一,如果我们使用动态IP,那么每一次分配给我们的IP地址是不同的,这就是动态IP,在我们使用网络的这一时段内,这个IP是唯一的指向我们正在使用的计算机的;另一种是静态IP,它是固定讲这个IP地址分配给某计算机使用的。网络中的服务器就是使用的静态IP。

  域名:

 
EB标准
WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些标准大部分由W3C起草和发布,也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。我们来简单了解一下这些标准:

1.结构标准语言
(1)XML

XML是The Extensible Markup Language(可扩展标识语言)的简写。目前推荐遵循的是W3C于2000年10月6日发布的XML1.0,参考(www.w3.org/TR/2000/REC-XML-20001006)。和HTML一样,XML同样来源于SGML,但XML是一种能定义其他语言的语。XML最初设计的目的是弥补HTML的不足,以强大的扩展性满足网络信息发布的需要,后来逐渐用于网络数据的转换和描述。关于XML的好处和技术规范细节这里就不多说了,网上有很多资料,也有很多书籍可以参考。

(2)XHTML

XHTML是The Extensible HyperText Markup Language可扩展标识语言的缩写。目前推荐遵循的是W3C于2000年1月26日推荐XML1.0(参考http://www.w3.org/TR/xhtml1)。XML虽然数据转换能力强大,完全可以替代HTML,但面对成千上万已有的站点,直接采用XML还为时过早。因此,我们在HTML4.0的基础上,用XML的规则对其进行扩展,得到了XHTML。简单的说,建立XHTML的目的就是实现HTML向XML的过渡。

2. 表现标准语言
CSS是Cascading Style Sheets层叠样式表的缩写。目前推荐遵循的是W3C于1998年5月12日推荐CSS2(参考http://www.w3.org/TR/CSS2/)。W3C创建CSS标准的目的是以CSS取代HTML表格式布局、帧和其他表现的语言。纯CSS布局与结构式XHTML相结合能帮助设计师分离外观与结构,使站点的访问及维护更加容易。

3.行为标准
(1)DOM

DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范(http://www.w3.org/DOM/),DOM是一种与浏览器,平台,语言的接口,使得你可以访问页面其他的标准组件。简单理解,DOM解决了Netscaped的Javascript和Microsoft的Jscript之间的冲突,给予web设计师和开发者一个标准的方法,让他们来访问他们站点中的数据、脚本和表现层对像。

(2) ECMAScript

ECMAScript是ECMA(European Computer Manufacturers Association)制定的标准脚本语言(JAVAScript)。目前推荐遵循的是ECMAScript 262(http://www.ecma.ch/ecma1/STAND/ECMA-262.HTM)。

 

[!--infotagslink--]

相关文章