当前位置:文档之家› red5入门教程实例(一)

red5入门教程实例(一)

red5入门教程实例(一)
red5入门教程实例(一)

Red5

入门教程

简介:

在flex,java 盛行天下时red5 把二者连为一体成为更强的强者,为即时通信,流媒体开发,

网络在线游戏提供了一个简单易行的方案。越来越多的公司把这个方案当成了首先,熟悉相

关技术的人才的缺少也就成了发展的障碍,而相关资料的奇缺成了技术人员成长的障碍。

本书注重实用,着眼入门,用大量实际的例子力求带领您进入flex,red5 结合开发的天堂。

没一个列子都是精心挑选,每一个列子都代表着一个知识点,每一个列子都将成为您以后项

目的一部分。当然这是入门级别的书籍,不可能把所有的相关知识都讲到,java,flex,spr ing,mina 等等等等都red5 相关,如果要对每一个点讲解那将是一个系列,而不是

一本书。为了突出重点,本书只讲解把这些联系起来的纽扣red5,并讲解如何利用red5 开

发项目。

内容包括red5 的安装,red5 开发中各种概念,各种问题的解决方案,开发工具的使用等

等,但有详有略,如工具的使用只讲解了书本中需要用到的相关知识。最后书本还有数个完

整的列子,也是实际开发中常用的列子,如聊天程序,播放视频程序。

一.Red5介绍及安装

1. Red5 介绍

Red5是一个采用Java 开发开源免费的的Flash 流媒体服务器,功能和Adobe 的fms(F lash Media

Server)相同,可以上官方网站https://www.doczj.com/doc/c514723510.html,/red5免费下载并使用。它支持把音频(MP3)

和视频(FLV)转换成播放流,在下载的同时播放流;录制客户端播放流(只支持FLV),把摄像头,麦

克风等传入的视频音频录制保存到服务器;共享对象;现场直播流发布;远程调用。Red5使用RSTP 作为

流媒体传输协议。

Red5的功能使其在许多领域得到应用。如视频播放网站,远程教育,视频会议程序,聊天程序,网络

游戏等等。

免费开源使软件更加容易扩展,下载后你可以对源代码进行修改;更加经济,比起fms 高昂的费用red5

能为一般的应用节约大笔费用;服务器端的java语言比起fms 服务器端的actionscript2语言更加面向对

象更加成熟。这使得red5还没到版本1就已经红遍世界。

2.red5 安装

第一步上https://www.doczj.com/doc/c514723510.html,下载jdk6并安装。如果不是安装在默认路径请设置classpath和path。设

置classpath和path 的方法请参考其他java 的资料。

第二步上https://www.doczj.com/doc/c514723510.html,/red5下载Red5 v0.7.0 Final 的window 安装版。点击下载到

的exe 文件即开始安装,安装过程中选择要把red5安装到的目录。安装结束后打开浏览器输入

http://localhost:5080/如果能打开显示“Red5 Test Page”表示安装成功。安装成功后可以运行查看

red5自带的例子。

第三步red5的启动和关闭。安装版的red5默认情况下会在计算机启动时启动,如果想关闭自启动可以

右击我的电脑->管理->服务和程序,找到red5的那项把启动方式的自动启动改为手动或其他的。更改了

启动方式后可以找到red5的安装目录下的wrapper 目录下的Red5.bat 文件,双击即可启动,这样可以

从窗口看到客户端连接的情况。关闭窗口即可关闭red5,也可以双击

StopRed5-NT.bat 关闭服务程序。

二.编写运行第一个程序

第一个程序的运行是学习的莫大回报,也是继续下面学习的关键,只有顺利的运行了第一个程序才会

更加信心百倍的去学习更深一步的知识。

Red5+flex 或red5+flash 的项目一般都包括服务器和客户端俩个部分,服务器用java,客户端用

flex 或flash。编写并编译完服务器端代码后需要把服务器的的应用部署到red5的webapps 目录下这和

传统的java应用没区别,客户端可以直接点击flash 文件运行。

下面开始第一个程序的编写,它分成服务器和客户端俩部分,以后的程序也都安这种方式分。

1.编写服务器端

打开eclipse 新建java 工程或javaee 工程chapter2(如果不熟悉eclipse 请参考附件eclipse 的

使用)。把red5安装目录下的red5.jar 以及lib 目录下的jar 都添加到工程的类库中。

新建包first,然后新建类,类名称为Application 并继承ApplicationAdapter。类的代码如下:

package first;

import org.red5.server.adapter.Applic ationAdapter;

import org.red5.server.api.IConnection;

public class Application extends ApplicationAdapter {

public boolean appConnect(IConnection conn, Object[] args) { System.out.println(" 连接");

return true;

}

public String change(String str){

System.out.println(" 客户端调用服务器");

return str.toUpperCase();// 传入的字符串转换成大写后返回

}

}

2.编写客户端

打开flexbuilder3 新建flex 工程(具体flexbuilder 的使用请参考附录),名字取名为chapter2。

打开项目中chapter2.mxml。chapter2.mxml 的代码如下:

layout="absolute"

fontSize="12" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FDF9F9, #FDF9F9]" width="442"

height="344">

import mx.controls.Alert;

private var rtmpURL:String="rtmp://localhost/chapter2";

private var conn:NetConnection=new NetConnection();

private var isConnectSuccess:Boolean=false;

private var responder:Responder=new Responder(resultFun);

private function resultFun(object:String):void{

trace(object);

result.text=object.toString();

}

private function clickConnect(e:MouseEvent):void{

conn.addEventListener(https://www.doczj.com/doc/c514723510.html,_STATUS,netStatus);

conn.connect(rtmpURL);

}

private function click(e:MouseEvent):void{

invoke();

}

private function invoke():void{

if(isConnectSuccess){

conn.call("change",responder,str.text);//change 是服务器端方法名称

}else{

Alert.show("还没连接到服务器");

}

}

private function netStatus(e:NetStatusEvent):void{

trace(https://www.doczj.com/doc/c514723510.html,.code);

if(https://www.doczj.com/doc/c514723510.html,.code=="NetConnection.Connect.Success"){

isConnectSuccess=true;

}

}

]]>

click="this.click(event)"/>

fontSize="12"/>

click="this.clickConnect(event)"/>

3.部署运行程序

进入red5 的安装目录下的webapps 下,复制test 文件夹,把复制的文件夹改名为chapter2,

删除chapter2\WEB-INF 目录下的文件夹。

把服务器项目下的classes 目录下的文件夹first 拷贝到chapter2\WEB-INF 下。

把red5-web.properties 中的/test 替换为/chapter2。

把red5-web.xml 中的

class="org.red5.server.webapp.test.TestService"

singleton="true" lazy-init="default" autowire="default"

dependency-check="default" />

id="echo.service" class="org.red5.samples.services.EchoService" singleton="true" lazyinit="

default" autowire="default" dependency-check="default" />删除。

把org.red5.server.webapp.test.Application 替换为first.Application。

把web.xml 中的/test 替换为

/chapter2

/

tlds/c/WEB-INF/tlds/c.tld

删除

注意:webapps 下的文件夹名chapter2,red5-web.properties 中的chapter2,web.xml中的chapter2

要保持相同,如果一个改了,其他的也改成相同的,所有以后的工程都这样。重新启动red5

在flexbuilder3 中选择运行菜单中的运行项运行chapter2。在文本框里输入字符串,点击连

接按钮,然后点击调用方法按钮。上面如果显示出输入框里的字符串的大写表示运行正常。

服务器端类有俩个方法,appConnect 类从ApplicationAdapter 继承来,当flash

连接时触发,

可以返回true 或false。True表示接受客户端的请求,false 表示拒绝客户端的请求。如果拒绝那么以后

flash 和服务器端的交互服务器都不会理会,所以当想拒绝某些ip 的请求时只需有在用户连接时检查它的ip

是否在拒绝ip 之内,如果在就返回false,那样就可以拒之门外了。change 是自己定义的,客户可以直

接调用的一个远程方法。作用是把客户传入的参数变成大些后返回,此处目的在于运行一个red5 和flex

交互的过程,并没有检查传入的参数是否有大写或都已经是大写。

客户端的代码稍多些,位于之外的是图形界面的

代码,包括俩个按钮,一个输入框,一个显示文本,这就不详细讲解了,注意给按钮添加事件监听器。过

程是这样的,用户点击连接,按钮的监听器clickConnect响应,

conn.connect(rtmpURL)连接到服务

器,在服务器和客户端建立一条信息交流的通道。当这条通道打通时netStatus 执行,把是否是打通的开

关isConnectSuccess 设置为通的。当用户再点击调用按钮时,通过这条通道调用服务器端的方法

conn.call("c hange",responder,str.text) 。传给服务器字符串str.text,当服务器端方法执行完后把返

回值给responder 定义时的方法resultFun,这样一个客户端与服务器交互的过程完成。

三.远程调用

通过red5 服务器端和客户端可以直接通过方法调用来交互,这是非常方便的(想想你在个类里面方法调用发方便性吧),服务器调可以用客户端的方法,客户端也可以调用服务器

端的方法。其实上面的例子就是通过方法调用实现的。

1.客户端调用服务器端方法

通过red5 可以从客户端直接调用服务器上java 编写的方法。调用时指明被调用的方法

名称,如果有返回值则需要指明返回值处理的responder,如果被调用的方法有参数则需要

传入参数。可以引用第一章的例子,conn.call("change",responder,str.text); 表示客户端调用服务器端的名称为change的方法,查看java中change的定义public String

change(String str){//函数体}发现参数是java 中String 类型的;调用时传入的str.text 是

actionscript 中String 类型;假如change 有多个入口参数,则可以把参数列在str.text 后面,

并用''," 隔开。返回值由responder 处理,change 返回值是String 类型的,要求responder 定义

时的函数resultFun的入口参数是String类型。

调用过程中需要注意的是参数类型的对应。具体可以看下列表

表说明假如java 传给flash 的参数是自定义Bean类型时,客户端接收到的是Object 类型

当被调用的方法没有返回值时把responder 设置为null 。具体怎么实现就不再雷述,请

看第二章的例子。

2.服务器调用客户端方法

不带返回的调用

新建eclipse 工程chapter3,并建立包first ,在包里新建一个类Application 并继承

ApplicationAdapter。Application 到代码如下:

package first;

import org.red5.server.adapter.Applic ationAdapter;

import org.red5.server.api.IConnection;

import org.red5.server.api.service.IServiceCapableConnection;

public class Application extends ApplicationAdapter {

@Override

public boolean appConnect(IConnection arg0, Object[] arg1) {

// TODO Auto-generated method stub

callClient(arg0);

return true;

}

private void callClient(IConnection conn){

if (conn instanceof IServiceCapableConnection) { IServiceCapableConnection sc = (IServiceCapableConnection) conn; sc.invoke("clientMethod", new Object[]{"One", 1});

Java actionscript

null null

int/float Number

double Double

boolean Boolean

String String

List Array

Map Object

Bean Object

}

}

}

复制webapps 下的chapter2 文件夹,并改名为chapter3,把工程下class 目录下的first 拷贝覆盖以前

的first ,把red5-web.properties 中的/chapter2,替换为/chapter3。把web.xml 中的/

chapter2替换为/chapter3

重启red5。

新建chapter3 客户端项目,chapter.mxml 代码如下:

layout="absolute"

fontSize="12" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FDF9F9, #FDF9F9]" width="442"

height="344">

import mx.controls.Alert;

private var rtmpURL:String="rtmp://localhost/jiaocheng";

private var conn:NetConnection=new NetConnection();

private var client1:Object=new Object();

private function clickConnect(e:MouseEvent):void{

client1.clientMethod=this.clientMethod;

conn.client=this.client1;

conn.addEventListener(https://www.doczj.com/doc/c514723510.html,_STATUS,netStatus);

conn.connect(rtmpURL);

}

private function netStatus(e:NetStatusEvent):void{

}

private function clientMethod(str:String,num:Number):void{

Alert.show("接收"+str+(num+1));

}

]]>

click="this.clickConnect(event)"/>

点击调试程序运行客户端,然后点击连接按钮可以发现输出“接收One2”表示服务器调用

客户端到方法成功。

服务器端还是只有俩个方法,当客户端连接时服务器调用appConnect,在appConnect里

调用callClient 。在callClient 中服务器调用客户端的方法clientMethod,并传给客户端俩个参数,一个

字符类型,一个数字类型。只有IServiceCapableConnection 类型的连接才可以调用客户端方法,所以

要先对连接类型进行强制转换。

再看客户端,有三个方法,因为不需要处理连接状态的变化事件所以用个空方法以便简单突出重点。用

户点击按钮连接,调用clickConnect 方法连接服务器。还有一个方法给服务器调用的,这个方法附着在

conn.client 上。因为ActionScript3 中NetConnection 是封闭的,无法直接把

方法附着在其上,但他

的一个属性client 是Object 类型的,是动态的。

服务器不但可以调用客户端的方法,还可以把客户端方法处理的值返回给服务器。

理服务器调用客户端方法有返回值就就必须实现IPendingServiceCallback 接口,并调用方式

改为sc.invoke("clientMethod", new Object[]{"One", 1},this); this 是任意一个实现

IPendingServiceCallback 接口的类,在接口的resultReceived 方法中处理返回值。现在把上面

的类改成下面样子

package first;

import org.red5.server.adapter.Applic ationAdapter;

import org.red5.server.api.IConnection;

import org.red5.server.api.service.IPendingServiceCall;

import org.red5.server.api.service.IPendingServiceCallback;

import org.red5.server.api.service.IServiceCapableConnection;

public class Application extends ApplicationAdapter implements IPendingServiceCallback{

@Override

public boolean appConnect(IConnection arg0, Object[] arg1) { callClient(arg0);

return true;

}

private void callClient(IConnection conn){

if (conn instanceof IServiceCapableConnection) { IServiceCapableConnection sc = (IServiceCapableConnection) conn; sc.invoke("clientMethod", new Object[]{"One", 1},this);

}

}

public void resultReceived(IPendingServiceCall arg0) {

System.out.println(" 来自客户端到返回:"+arg0.getResult());

}

}

把客户端的

private function clientMethod(str:String,num:Number):void{

Alert.show("接收"+str+(num+1));

}

改成

private function clientMethod(str:String,num:Number):String{

Alert.show("接收"+str+(num+1));

Return "客户端返回来的字符串";

}

测试可以从red5 的框里看到输出“客户端返回来的字符串"

photoshop基础教程(新手入门)(免费)

Photosop的基础知识 一、Photosop是ADOBE公司推出的图形图像处理软件,功能强大,广泛应用于印刷、广告设计、封面制作、网页图像制作、照片编辑等领域。利用Photosop可以对图像进行各种平面处理。绘制简单的几何图形、给黑白图像上色、进行图像格式和颜色模式的转换。 二、Photosop7.0的启动与退出 1、启动Photoshop的方法: 单击开始/程序/Photoshop7.0即可启动.或者打开一个Photoshop文件也能够启动Photoshop. 2、退出Photoshop的方法: 单击关闭按钮或按下CTRL+Q组合键或ALT+F4组合键,都可以退出Photoshop。 三、Photoshop的窗口组成(标题栏、菜单栏、工具栏、工具箱、图像图口、控制面板、状态栏、Photoshop 桌面) 1、标题栏:位于窗口最顶端。 2、菜单栏:其中包括9个菜单。位于标题栏下方。 3、工具栏:位于菜单栏下方。可以随着工具的改变而改变。 4、工具箱:位于工具栏的左下方。 5、图像窗口:位于工具栏的正下方。用来显示图像的区域,用于编辑和修改图像。 6、控制面版:窗口右侧的小窗口称为控制面版。用于改变图象的属性。 7、状态栏:位于窗口底部,提供一些当前操作的帮助信息。 8、Photoshop桌面:Photoshop窗口的灰色区域为桌面。其中包括显示工具箱、控制面板和图像窗口。 四、图像窗口:图像窗口由(标题栏、图像显示区、控制窗口图标) 1、标题栏:显示图像文件名、文件格式、显示比例大小、层名称以及颜色模式。 2、图像显示区:用于编辑图像和显示图像。 3、控制窗口图标:双击此图标可以关闭图像窗口。单击此图标,可以打开一个菜单,选择其中的命令即可。 五、工具箱和工具栏

dedecms织梦二次开发视频教程

韩顺平dedecms织梦二次开发视频教程联系方式QQ1805571531 韩顺平老师主讲,是我听过最好的织梦二次开发的视频教程,填补了国内织梦dedecms二次开发视频教程的空白!非常珍贵的一套资料,实体教室讲课全程实录,原价可是1万多的VIP课程,7天特训织梦二次开发防站实战经典再现视频教程。 视频目录如下: 第1天 06-27(no6)(dede快速入门)\2012-6-27(no6)(dede快速入门) 第2天 06_28_dedecms\(no1)[dede四张核心表的关系分析] 06_28_dedecms\(no2)[dede在DEDE中增加内容的基本步骤和如何去掉广告] 06_28_dedecms\(no3)[dede在DEDE中标签的使用 06_28_dedecms\(no4)[dede在DEDE中标签的使用和把dede首页面替换成a67首页面 06_28_dedecms\(no5)[将dede首页面栏目换成a67电影网的首页面栏目] 06_28_dedecms\(no6)[点击对应的栏目,可以看到对应的栏目列表页面] 06_28_dedecms\(no7)[电影的自定义字段] 第3天 06_29_dedecms_自定义标签\(no1)[把首页面的今日更新的数据] 06_29_dedecms_自定义标签\(no2)[sql标签的使用] 06_29_dedecms_自定义标签\(no3)[a67网的首页的添加我的电视剧,并完成各个栏目对应的列表页]

06_29_dedecms_自定义标签\(no4)[我点击我的电影,只取出国语电影] 06_29_dedecms_自定义标签\(no5)[主页面和栏目列表的今日更新,点击后进入内容页面] 06_29_dedecms_自定义标签\capture-1 第4天 07_02_dedecms\(no1)[当小手移动到星星的时候,星星根据实际情况变化和取出热门电影] 07_02_dedecms\(no2)[显示下载地址信息] 07_02_dedecms\(no3)[当某个用户评分后,在内容页实时的显示评分值] 07_02_dedecms\(no4)[动态的取出评分值] 07_02_dedecms\(no5)[自定义搜索功能] 第5天 07_03_dedecms\(no1)[把检索结果页面,换成a67 提供的检索结果页面,并分页] 07_03_dedecms\(no2)[需求做出我们自己的分页导航] 07_03_dedecms\(no3)[在搜索时带自定义参数] 07_03_dedecms\(no4)[在搜索时带多个自定义参数,分页时可以传递到下页] 07_03_dedecms\(no5)[显示自己网站的所有分类检索,并可以按照地区来检索信息] 07_03_dedecms\(no6)[完成点击列表页的某个连接,跳转到对应的检索页面] 07_03_dedecms\(no7)[完成列表页小星星的评分功能] 第6天 07_05_数据采集\(no1)当我们点击检索结果的某个电影超链接时,如何跳转到对应的内容页

openmeetings二次开发详解(本人都已实践成功)

openmeetings十万个如何(不断更新) 事先声明,我用的是最新的openmeetings源码(包括客户端与服务端),最新版本openmeeting是有多种风格 默认为蓝色 一.如何绕过登陆 找到base\auth\checkLoginData.lzx,在第一个oninit加上this.login() this.pressEnter = new LzDelegate(this, "login"); lz.Keys.callOnKeyCombo(this.pressEnter, ["enter"]); lz.Focus.setFocus(https://www.doczj.com/doc/c514723510.html,ername,true); this.login(); 这样,一进入登陆界面就会自动登陆. 二.如何传参数给openmeetings 如http://localhost:5080/openmeetings/index.jps?userName=土匪&pwd=123 可以修改index.jsp,在openmeetings for java的源码找到它 var so = new SWFObject("main.lzx.swf8.swf", "lzapp", "100%", "100%", "8", "#ffffff"); so.addParam("quality", "high"); so.addParam("id", "lzapp"); so.addParam("allowScriptAccess", "always"); so.addParam("scale", "noscale"); so.addVariable("yxUserName",'<%=request.getParameter("userName")%>' ); so.addVariable("yxUserPass",'<%=request.getParameter("pwd")%>'); so.write("flashcontent"); 以上so.addVariable是我加的,就是把传过来的用户名与密码加入到openlaze 中,这里的yxUserName与yxUserPass在 openLaze中是全局变量

DedeCMS专题功能使用详细教程

爱雅逸整理 https://www.doczj.com/doc/c514723510.html,
DEDECMS 专题详解
DEDECMS 专题详解
一个网站通常会在不同时期推出一些针对性的专题内容,专题的功能其实就是将站点的内容根据特 定的需求进行一次检索,将这些不同形式的内容进行一次整合,这个我们可以看看一些大的门户网 站,例如新浪、搜狐,他们有自己的专题频道。一个专题可以包含几个不同栏目的内容或者包含不 同内容模型如:文章、图片、音频、视频等,不同的专题需要有自己符合当时环境的页面风格,比 如在元旦、新年就需要红色主题的专题模板,在春天、夏天就需要绿色主题的专题模板等。一个好 的专题容易让网站会员更全面的了解相关信息,以增强对网站的关注度,下面我们介绍如何使用 DedeCMS 的专题功能来制作一个专题。 我们以超级管理员身份登陆后台,在系统的[核心]-[专题管理]中对专题进行管理。
因为这里的常用管理同文档管理类似,一些常用操作如添加、删除、更新、推荐这些操作在这里不 做冗述,本教程主要介绍如何通过专题结合模板文件制作出自己的专题页面。 制作一个专题页面,需要准备 2 样东西:内容、模板,当然如果你没有自己设计的模板文件,系统 默认是自带了一套专题页的风格的,可以在后台[核心]-[内容模型管理],点击专题类型的模板 会查看到以下内容:
文档模板:/templets/default/article_spec.htm [修改] 列表模板:/templets/default/list_spec.htm [修改] 频道封面模板:/templets/default/index_spec.htm [修改]
这几个默认模板文件用户可以自己进行全局统一修改,但一般情况下都是在添加专题时在常规参数 的“专题模板”中进行指定。 当然有一些专题也不必用到已经发布在内容管理系统中的内容,这种专题直接可以用静态页面就可 以完成,不需要标签进行调用,但又希望在专题列表中显示出来,为了解决这个问题,建议用户在 制作专题页时候把专题页面做成一个不含标记的模板文件,在添加专题时候指定模板即可。 接下来我们介绍下织梦的专题功能是如何划分的。 我们以 chinaz 两个专题页面为例: DedeCms V5.3 经典解析与揭秘(https://www.doczj.com/doc/c514723510.html,/zt/dedecms/)
第 1 页共 6 页

图书管理系统的C#代码(完整版).docx

. C# 代码清单 共 1 个项目,包含 5 个类。 项目: librarysystem 类 :Program.cs Readers.cs Manage.cs Menu.cs Publications.cs 主类代码: namespace librarysystem { ///

///类名: Program ///功能:项目主类 ///时间: 2015-11-19 /// class Program { static void Main( string [] args) { Menu meu = new Menu (); meu.ShowMainMenu(); Console .ReadLine(); } }

} 出版物类代码: namespace librarysystem { ///

///类名: Publications ///功能:馆藏出版物信息 ///时间: 2015-11-19 /// class Publications { /* 出版物编号 */ private string PublicationISBN; public string PublicationIsbn { get { return PublicationISBN; } set { PublicationISBN =value ; }

} /* 出版物名称 */ public string PublicationName; /* 出版物作者或出版机构*/ public string PublicationAuthor; /* 出版物在架状态 */ public bool PublicationStatus; /* 出版物类型 */ public string PublicationType; public Publications() { } public Publications( string PublicationISBN, string PublicationName, string PublicationAuthor,string PublicationType, bool PublicationStatus) { this . PublicationISBN = PublicationISBN; this .PublicationName = PublicationName; this .PublicationAuthor = PublicationAuthor; this .PublicationType = PublicationType; this .PublicationStatus = PublicationStatus; } }

中文版word基础教程

W o r d 2003基础教程 编 撰 花 椒 文 刀 版权归属:中国盲文出版社信息无障碍中心盲人挚友聊天室 前 言 结合阳光读屏软件强大的Word 朗读功能, 由信息无障碍中心开办的于2008年11月至 2009年3 月,推出在线《Word2003基础讲座》。同期,我们将讲座内容编纂成册,免费提供给 阳光软件的广大用户,以便查阅。 本教程用Word2003编写, 您可以通过单击目录快速跳转到需要查阅的文本,具体操作方法是:用上下光标逐行朗读目录,听到您想查阅的条目后,按下 Ctrl+小键盘的斜杠键,这样,光标会自动跳转到目录对应的文本,以方便您的查阅,同时,在阅读过程中,教程所提及的所有操作,您均可在当前窗口尝试,当然,为了保持教程的完整,建议您在关闭本 教程时选择不保存修改。 本教程由阳光软件免费提供,版权归属中国盲文出版社信息无障碍中心盲人挚友聊天室, 请勿用于商业用途,违者必究。

目录 第一章 初识中文版Word2003 中文版word2003是微软公司推出的中文版office2003软件套装中的重要组成部分,它具有 强大的文本编辑和文件处理功能,是实现无纸化办公和网络办公不可或缺的应用软件之一。 第一节安装、启动和退出程序 一、安装程序 安装word2003和安装其它软件并无二致,需要说明一下的是光盘版的安装。当您将中文版 office2003光盘放入光驱后,请不要自动播放,因为自动播放会弹出图形化的安装界面,读 屏软件无法操作。您可以在插入光盘后,打开“我的电脑”找到CD驱动器,application键 弹出快捷菜单,通过“打开(O)菜单”来打开光盘,然后在列表中选中office文件夹,打开 以后,列表中出现几个文件夹,由于版本不同,文件夹数量和名称可能会略有区别,不过没 关系,在这些文件夹中寻找setup.exe并回车执行,您就能顺利地用键盘完成安装操作了。 二、启动程序 按下Windows键弹出“「开始」菜单”,展开“所有程序(P)菜单”后。上下光标到 “MicrosoftOffice子菜单”,右光标展开该子菜单后,上下光标找到 “MicrosoftOfficeWord2003菜单”回车即可启动Word程序。另外,当您在资源管理器中选 择任意一个后缀名为.doc的文档回车时,计算机也会为您启动word程序,同时打开您选中 的文档。 三、退出程序 在程序窗口按下快捷键:“Alt+F4”是退出程序最简便的方法。当然您还可以在程序窗口按下 Alt键激活菜单栏,下光标展开“文件(F)子菜单”并找到到“退出(X)菜单”回车,或在程 序窗口按下“Alt+空格”弹出控件菜单,上下光标找到“关闭(c)菜单”回车即可退出程序。

ps工具使用入门教程

PS工具使用入门教程 想要用好Photoshop,首先要了解Photoshop中最常用到的工具箱。Photoshop的工具箱就像是一个百宝箱,它里面提供了几乎所有能够辅助我们进行各种操作的有用的工具。 图1-1- 2 1、轻松学会基本工具的使用 工具箱中的工具大致可以分为:选择工具、绘图工具、路径工具、文字工具、切片工具以及其它类的工具,此外还有一些提供独立控制功能的按钮和选项。由于不同的工具使用起来的基本方法和原理都差不多,这里举一个简单的例子让大家对工具箱的使用有一个大致的了解,在这个例子中我们将使用“选择工具”和“绘图工具”来制作一个立体球,一起来看看怎么做的吧! 步骤1 新建一个图像文件 首先我们创建一个新的图像文件。执行【文件】|【新建】命令打开【新建图像】文件对话框,在“名称”中填入图像的“名称”为“立体球”;将“宽度”和“高度”都设置为400;分别在右边的下拉框中选择单位为“像素”;在“模式”中选择图像的色彩“模式”为我们通常使用的“RGB 颜色”模式(如图1-1-4所示)。其它为默认设置,单击【好】按钮,这样一个新的图像文件就建好了。

图1-1- 4 图1-1- 5 步骤2 建立一个圆形选区 接着来制作一个圆形选区。选区的制作是Photoshop中常用到的操作,通过设定选区我们可以指定对图像处理的范围。如本例将要制作一个实心的圆形,那么先用选区来指定这个圆形的范围,下面我们就来看看怎样使用【椭圆选框工具】来制作一个正圆选区。首先要选中【椭圆选框工具】,在一般情况下,我们可以通过用鼠标点击工具箱中相应的工具图标来选中我们需要的工具,可是在Photoshop中有些工具在默认状态下是隐藏起来的,比如椭圆选框工具。我们可以在相应的工具图标上按住鼠标左键并停留一会直到弹出一个选择列表(如图1-1-6所示),这时将鼠标移动到列表中相应的工具图标上点击,我们就可以选择那些被隐藏起来的工具了,效果如图1-1-7所示。 图1-1- 6 图1-1- 7

DEDE织梦仿站实例系列教程(花钱培训自学最终整理完整版)_仿拳击网

DEDE织梦仿站实例系列教程第一讲——准备工作 首先,我们找一个目标网站,以便我们来仿制。 经过福星网络的寻找,确定以拳击在线(https://www.doczj.com/doc/c514723510.html,)为目标站来完成织梦模板的仿制教程。 其次,关于以后教程的一些说明: 1、将目标站网页另存为,会得到一个网站,及相关的文件夹。里面有相关的图片,样式和JS文件。我们需要将这些文件复制到织梦模板的相关文件夹下。在这个系列教程中,此文件夹为templets\fuxing5。 2、我们会制作一个通用的头部和底部,以便全站调用。所以我们会优先制作头部和底部。 3、朋友们需要有HTML知识,还有DIV+CSS的一些知识才行。 4、不断更新。。。 最后,希望朋友们跟着我们一步一步的做,学会织梦的仿站。呵呵,别人的教程可是收费的哦! DEDE织梦仿站实例系列教程第二讲——首页框架 首先,打开目标站拳击在线(https://www.doczj.com/doc/c514723510.html,),然后将网页保存到本地。如图:

保存类型选择网页,全部(*.htm;*.html)。如下图所示: 将织梦(DEDECMS)的默认模板文件夹复制一份,以备做在模板制作时做为代码参考。 然后打开保存文件夹,如下图中箭头所指的文件夹: 将文件夹中的文件归类,将CSS文件拷贝到templets\default\style目录下,将JS文件拷贝到templets\default\js,将图片文件拷贝到templets\default\images。 接着用网页编辑器软件FrontPage或者Dreamweaver打开刚刚保存的拳击在线网页文件和templets\default目录下的index.htm(首页)、head.htm(通用头部)、footer.htm(通用底部)。还要打开刚刚备份的默认模板首页文件templets\复件default\index.htm。 先清空index.htm文件,将拳击在线网页代码拷贝到里面。 接下来,就是正式的代码修改了。一行一行的来修改。 首先将CSS样式表的路径修改成织梦的CSS路径代码(从备份的默认首页文件中拷贝),如下图所示:

图书管理系统的C#代码(完整版)

C#代码清单 共1个项目,包含5个类。 项目:librarysystem 类: Program.cs Readers.cs Manage.cs Menu.cs Publications.cs 主类代码: namespace librarysystem { ///

///类名:Program ///功能:项目主类 ///时间:2015-11-19 /// class Program { static void Main(string[] args) { Menu meu = new Menu(); meu.ShowMainMenu(); Console.ReadLine(); } } } 出版物类代码: namespace librarysystem { /// ///类名:Publications ///功能:馆藏出版物信息 ///时间:2015-11-19 /// class Publications { /*出版物编号*/ private string PublicationISBN; public string PublicationIsbn { get { return PublicationISBN; }

{ PublicationISBN = value; } } /*出版物名称*/ public string PublicationName; /*出版物作者或出版机构*/ public string PublicationAuthor; /*出版物在架状态*/ public bool PublicationStatus; /*出版物类型*/ public string PublicationType; public Publications() { } public Publications(string PublicationISBN,string PublicationName,string PublicationAuthor,string PublicationType,bool PublicationStatus) { this. PublicationISBN = PublicationISBN; this.PublicationName = PublicationName; this.PublicationAuthor = PublicationAuthor; this.PublicationType = PublicationType; this.PublicationStatus = PublicationStatus; } } } 读者类代码: namespace librarysystem { ///

///类名:Readers ///功能:已获取权限读者的信息 ///时间:2015-11-19 /// class Readers { private string ReaderID; public string ReaderId { get { return ReaderID; } set

DedeCMSV5.6版自动采集功能规则使用基本知识详细讲解教程

DedeCMSV5.6版自动采集功能规则使用基本知识讲解教程(一) 2011-05-05 17:09:01 来源: 作者: 【大中小】浏览:5026次评论:0条★★我要投稿★★ 将此页添加到网摘: DedeCMS采集功能使用基本知识讲解 采集是指有着确定方向、明确目的的采撷和记录写作材料的一种活动。它主要指调查采访和查阅和搜集资料。采集最主要的作用在于为写作、分析、报表获取直接的和间接的材料。今天我们讲的采集主要是指网站采集,网站采集的概念主要是:程序按照指定的规则定向获取其他网站数据的一种方式,另一种简单的说法 就是将CTRL+C CTRL+V 程序化,系统化,自动化,智能化 DedeCMS早期就已经加入了这个采集的功能,以前我们添加网站内容一般都是通过复制、粘贴、编辑然后再发布,这样对于少量的文章还是可以,但如果对于一个新站,什么内容都没有,那就需要复制粘提大量的文章,这是一个重复、枯燥的过程,内容采集就是解决这个问题,将这个重复的操作简化成规则,通过规则进行批量操作。 当然采集还可以通过一些专门的采集器来进行采集,国内比较出名的采集器有火车头。 今天我们这里以DedeCMS程序自带的采集功能来讲解如何使用采集,并介绍如何对采集的内容进行一些批量的管理。

首先我们进入系统后台,打开[采集]-[采集节点管理],在学习使用这个采集工能之前先介绍一些基本的技术知识。 首先我们需要知道HTML基本内容,我们知道浏览器中显示的各种各样的页面其实都是由最基本的HTML组成的,我们可以在我们DedeCMS系统后台发布一篇内容,然后对内容进行一些格式上面的设置。 也就是说我们的页面都是HTML代码经过浏览器解析后显示出来的,这些基本的HTML代码是给机器看的,而解析出来显示的内容是给我们的用户看的,机器其实是一个死东西,他阅读网页不像用户一样,直接看到某一个部分的内容,机器 能够看到的是某一部分代码。

Scratch2.0入门中文使用教程

儿童编程 SCRATCH2.0入门中文使用教程 目录: 1. Scratch的简介 第1课下载与安装 第2课初识Scratch 2.Scratch基础课程 第3课让角色动一动 第4课键盘控制 第5课迷宫程序 第6课会飞的巫婆 第7课三角形的面积 第8课造型切换---人物走动 第9课移动人物教师进阶使用 第10课判断人物位置 3. Scratch进阶课程--打蝙蝠 3-1 第一节课 3-2 第二节课 3-3 第三节课

4. scratch进阶课程2-打地鼠 4-1 设计背景、铁锤及地鼠 4-2 撰写地鼠的程序 4-3 撰写铁锤程序 4-4 分数的计算 5. 接球游戏 5-1 设计球部份的程序 5-2 人物部份的程序 5-3 程序计分 5-4 扣分的构想 6.如何分享SCRATCH作品 7.如何把sb2文件转化成swf格式的flash文件

SCRATCH2.0入门中文使用教程 1. Scratch的简介 Scratch是 MIT (麻省理工学院) 发展的一套新的程序语言,可以用来创造交互式故事、动画、游戏、音乐和艺术。很适合8岁以上儿童使用,目前1.4版已经完全支持中文界面,更方便使用,完全不用背指令,使用积木组合式的程序语言,让学习变得更轻松,并充满乐趣。 官方网站:https://www.doczj.com/doc/c514723510.html,/ 目前已经推出2.0版本,支持在线和离线模式。 由于国外网站速度较慢,gateface门面,已经集成了scratch的程序,所以只要安装了伽卡他卡电子教室(15.5以上版本)或这个gateface5.5以上版本,都有scratch,不用另外安装。(伽卡他卡电子教室集成了gateface,scratch在gateface的门面编辑器里,点击相应按钮,就可以启动scratch) Gateface门面中,集成的是离线程序,可以不用登录scratch网站,在本机使用。搜索伽卡他卡电子教室或者gateface都可以到官网或者华军下载。 分享SCRATCH作品的方法: 方法1:放到网站共享。SCRATCH网站,可以上传sb2格式的文件,这样,别人通过访问SCRATCH网站来访问你的作品,需要在SCRATCH

Photoshop基础入门教程

Photoshop入门教程 第一课: 这是一个PS高手的体会,希望能对大家有所启迪。 1.不要看到别人的作品第一句话就说:给个教程吧!你应该想这个是怎么做出来的。当你自己想出来,再对照别人的教程的时候,你就知道自己和别人的思路的差异 2.初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久PS,都是只对部分功能熟悉而已,不系统还是不够的 3.看help,不要因为他们很难而我们自己是初学者所以就不看;帮助永远是最好的参考手册,虽然帮助的文字有时候很难看懂,总觉得不够直观 4.不要被蒙版,通道等词汇所迷惑;通道就是选区,呵呵 5.不要放过任何一个看上去很简单的小问题——他们往往并不那么简单,或者可以引伸出很多知识点;不会举一反三你就永远不等于会了PS 6.会用PS处理相片,并不说明你会设计; 7.学PS并不难,AI,CD等等也不过如此——难的是长期坚持实践和不遗余力的博览群书; 8.看再多PS的书,是学不全PS的,要多实践

浮躁的人容易问:我到底该学什么;——别问,学就对了; 浮躁的人容易问:PS有钱途吗;——建议你去抢银行; 浮躁的人容易说:我要中文版!我英文不行!——不行?学呀! 浮躁的人分两种:a)只观望而不学的人;只学而不坚持的人; 9.把时髦的技术挂在嘴边,还不如把过时的技术记在心里; 10.学习PS最好的方法之一就是多练习; 11.在任何时刻都不要认为自己手中的书已经足够了; 12.看得懂的书,请仔细看;看不懂的书,请硬着头皮看; 13.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍; 14.请把书上的例子亲手到电脑上实践,即使配套光盘中有源文件; 15.把在书中看到的有意义的例子扩充;并将其切实的运用到自己的工作中; 16.不要漏掉书中任何一个练习——请全部做完并记录下思路; 17.当你用PS到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和工作; 18.别心急,用PS确实不容易;水平是在不断的实践中完善和发展的;

DedeCMS自学教程1:使用织梦CMS搭建网站,空间环境配置要求

DedeCMS自学教程1:使用织梦CMS搭建网站,空间环境配置要求 本文是织梦吧(https://www.doczj.com/doc/c514723510.html,)推出的《织梦CMS自学教程》教程第一讲:使用织梦CMS搭建网站,空间环境配置要求,转载请注明出处:https://www.doczj.com/doc/c514723510.html,/dedecms/dedecms-ad/10820.html。 我们下载一份DedeCMS v5.7 sp1压缩包(下载地址),解压后在DedeCMS-V5.7-GBK-SP1\docs文件里会看到一个名为readme.txt的文件。打开后,会看到官方对空间环境给出的如下要求: 一、平台需求 1.Windows 平台: IIS/Apache/Nginx +PHP4/PHP5.2+/PHP5.3+ + MySQL4/5 如果在windows环境中使用,建议用DedeCMS提供的DedeAMPZ套件以达到最佳使用性能。 2.Linux/Unix 平台 Apache + PHP4/PHP5 + MySQL3/4/5 (PHP必须在非安全模式下运行) 建议使用平台:Linux + Apache2.2 + PHP5.2/PHP5.3 + MySQL5.0 //上面2点里,加粗加绿色的字体是我们要看的,至于windows、linux、unix,和apache、iis、nginx,虚拟主机用户没权限去管这些,主机商不可能为你一个用户去重做更改服务器的操作系统、服务器环境。 3.PHP必须环境或启用的系统函数://这一点可以飘过,一般情况下虚拟主机空间默认都是支持以下函数的,服务器或VPS可以自行开启。 allow_url_fopen GD扩展库 MySQL扩展库 系统函数—— phpinfo、dir 看到以上这么多条要求,可能你会感觉不知所措。事实上,我们中小站长完全没必要担心。 1、如果您是虚拟主机用户,那根本不用去考虑是windows主机,还是linux主机,也不用去考虑安装DedeAMPZ,这些服务器环境配置的问题,主机商会为你配置。虚拟主机的你和其他很多站长共用一台主机,可想而知你和其他站长都没有对服务器环境配置操作的权限。只要你购买的虚拟主机适合php+mysql架构的程序(dedecms、dz、phpwind

外汇交易MT4编程入门自定义指标的结构

外汇交易MT4编程入门:自定义指标的结构 MT4自定义指标一般由四个部分构成:(1)文件头部(2)参数、变量和数组的定义(3)初始化函数init()(4)主函数start()一、文件头部,也称为预处理程序预处理程序以“#”开头,行尾无语句结束符“;”常用的预处理程序有:1、#property indicator_chart_window把指标显示在主图。如:均线、SRA等类指标用到此语句2、#property indicator_separate_window把指标显示在副图。如:MACD、RSI、威廉等类指标用到此语句3、#property indicator_buffers 3显示3根指标线4、#property indicator_color1 Red第1根指标线的颜色为Red5、#property indicator_width1 1第1根指标线的粗细分别为16、#property indicator_level1 0.00在0.00值位置横划1条虚线二、参数、变量和数组的定义全局性的参数、变量、数组在此定义,局部变量可在start()函数中定义三、初始化函数init()init()在自定义指标加载时运行一次。初始化函数的功能是“设置”。如果自定义指标需要划线,则必然用到此函数四、主函数start()当数据有变动时,start()就被触发。数据变动一次,start()就运行一次。自定义指标的编程主要依靠此函数进行。start()函数的作用主要是取值和给指标线赋值,报警也在此函数内发起。另外,还有一个反初始

化函数deinit()deinit()在自定义卸载时运行一次,可用以去除指标加载时init()所做的初始化操作。

DEDECMS织梦制作手册超详细

D E D E C M S织梦制作手册 超详细 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

DEDECMS模板制作教程 1.Arclist 标记的应用,使用率很高,相当实用,所以我们使用都必须熟练掌握。 2.Field标记在封面模板、列表模板、文档模板的使用频率很高,实用。主要用来获得到系统变量的值或者路径,用法很灵活。可以直接展示数据,如调用position,得到栏目一 > 栏目二”这样形式的链接;或者,调用templeturl得到/templets这样路径。 3.Channel 标记主要用于获取栏目列表,用法非常简单,主要是区分“type = top,sun/son,self ”的所调用的对象就行了。 4.Type标记表示指定的单个栏目的链接,用法非常简单。 5.Autochannel标记使用实例 6.Mytag标记使用实例板中多次出现的相同元素用一个自定义标记表示出来,从而达到,一次更改,全局更换的效果。辅助插件的广告管理也有相似的效果。 7.Type标记用于获取一组投票表单。其使用范围限于:封面模板。 8. Flink 标记使用实例用于获取友情链接。调用该标记后可以得到四种友情链接的形式。 9.Mynew标记使用实例用于获取站内新闻。站内新闻有利于站长及时与会员沟通。 10.ChannelArtlist标记使用实例用于获取当前频道的下级栏目的内容列表。该标记在封面模板(包括主页)中的经常被用到 11. List 标记使用实例 12.Pagelist 标记使用实例 13.Pagebreak标记使用实例 14.Prennext标记使用实例 15.Pagetitle标记使用实例 模板教程【Arclist 标记使用实例】(一) Arclist标记的使用思路、步骤: 一、明确使用范围 我们在使用任何标记的过程中,都必须明确其使用的范围,否则可能无法正常调用该标签,【Arclist 标记】的使用范围是: 封面模板、列表模板、文档模板。 即对应templets\default\文件夹下的 index_识别模板、list_识别模板、article_识别模板) 二、通过调试了解其使用方法 我调试的方法是: 将templets\default\文件夹下的文件代码,全部掏空。放入调用【Arclist 标记】的代码,再在IE 中访问网站主页,就可以得到返回的数据。 注意:其它文件保持不变,我不懂PHP,只能用这种方式调试,相信朋友们很容易上手的。 我调试【Arclist 标记】的具体代码如下: {dede:arclist typeid='' row='1' titlelen='20' infolen='' imgwidth='100' imgheight='80'} 文章ID:[field:ID/]
文章标题:[field:title/]
文章短标题:[field:shorttitle/]
文章标题的文字链接:[field:textlink/]

Red5性能测试

Red5性能测试工具

1.修订记录 (1) 2.介绍 (1) 2.1目标(GOAL) (1) 2.2范围(SCOPE) (1) 3.推荐Red5服务器系统环境 (1) 4.测试工具 (1) 4.1技术背景 (1) 4.2界面 (2) 4.3技术细节 (3) 4.3.1参数介绍 (3) 4.3.2 2.0版本的特点 (4) 5.实测例子 (4) 5.1网络拓扑 (4) 5.2客户端截图 (5) 5.2.1发布端发布视频,名字为123 (5) 5.2.2 压力测试端 (6) 5.3服务器端性能指标截图 (7) 5.3.1 100用户 (8) 5.3.2 200用户 (8) 5.3.3 300用户 (9) 5.3.4 400用户 (9) 5.3.5 500用户 (10) 5.3.6 600用户 (10) 5.3.7 700用户 (11) 5.3.8 800用户 (11) 5.3.9 900用户 (12) 5.3.10 1000用户 (12) 5.3.11 1100用户 (12) 5.3.12 1200用户 (13) 5.3.13 继续增压的要求 (13) 6.备注 (14) 6.1高性能Red5完全解决方案(跨平台和集群技术) (14)

1.修订记录 2.介绍 2.1目标(GOAL) 实现Red5媒体服务器的性能测试工具 2.2范围(SCOPE) 3.推荐Red5服务器系统环境 ?硬件环境: Intel(R) Xeon(R)CPU E5506 @2.13GHz (2 处理器),内存8G ?网络环境: 1Gbps ?软件环境: OS:Red Hat Enterprise Linux Server release 5.6 (Tikanga) Java:Java SE Development Kit 7 Update 17,x64 Red5:mh2.0.1,基于Red5 1.0深度定制 ?其他要求: 保证系统环境是干净的,例如需要先卸载掉原有的JDK、不需要的程序等; Red5 server应独立部署,不得和其他server共用同一台机器; 4.测试工具 4.1技术背景 流媒体服务器性能测试一般都采用如下三种方式: ●综合测试工具LoadRunner ●命令行测试工具 ●可视化测试工具 LoadRunner是综合性的测试工具,可以生成漂亮的测试图表,但是对rtmp协议的支持不是很好,有些版本需要安装插件; 命令行测试工具主要有开源项目flazr,但是缺点是没有可视界面,表达能力差,给客户做报告的时候资料也不够漂亮;

织梦建站系列教程

织梦建站系列教程:安装篇 今天将要向大家介绍的是如何快速安装织梦CMS及后台管理功能简介。 一、环境配置 织梦CMS是一款在PHP和MYSQL环境下运行的程序,无论是在网络空间上还是在本机上运行 织梦CMS都需要这个环境的支持,所以学习织梦建站之前我必须先完成环境的配置。如果你要 在网络空间里安装织梦程序,请咨询空间,是否支持。我这里主要介绍下如何快速搭建本地环境。完成本地环境的搭建,我们需要下载APMSERV这个软件。(点此下载APMServ5.26) 1、下载完成后,我们可以看到APMServ5.26是一个7zip自解压文件,是一个绿色安装包,我们 将其解压到我们的硬盘里就可以使用了,这里我们要注意一点:由于APMServ5.26程序不能识 别非英文字符的路径,所以请我们解压时注意选择英文路径,例如:E:\APMServ5.26)。解压 完成后我们打开程序目录找到APMServ.exe双击运行。打开界面如下:

2、点击“启动APMServ”,注意状态栏一定提示Apache、mysql启动成功才表示启动成功。 (提示:如果无法启动,可能是被迅雷、PPLIVE等软件占用了80端口,你可以关闭80端口 或将Aphache端口改为其它的,比如:8080。) 3、点击右上角的访问本地网站或运行http://127.0.0.1,运行http://127.0.0.1/phpinfo.php可 查看php组件运行情况。到这里为止我们的Aphache+php+Mysql运行情况就架设好了。二、安装织梦CMS程序 当我们完成本地环境配置后,我们就可以安装织梦CMS程序了。请大家下载一个织梦CMS 程 序,官方最新版本为V5.5。(点此下载织梦V5.5) 1、下载完成后,请大家将程序解压出来,你发现有一个uploads文件夹,请大家打开这个文 件夹,然后把所有的文件复制到APMServ5.26程序目录下的htdocs文件夹下。(例如E:\APMServ5.2.6\www\htdocs) 2、请大家现运行http://127.0.0.1看看,应该会出现织梦CMS的安装界面了。

Web前端开发工程师技能列表

Web前端开发工程师技能列表 要打造一流的Web(https://www.doczj.com/doc/c514723510.html,/zt/webqianduan/)产品开发团队,在团队成员基础能力上一定要下功夫。对于Web前端产品开发来说,仅仅掌握Web1.0时代简单的”网页套接”是完全不够的。特此罗列了Web前端产品工程师所涉及的技能列表如下: 通过许多实际项目,个人认为一个完备的前端产品开发团队,必须拥有如下的人才配备,也希望大家补充: 团队全体成员达到所有技能中的a级标准 团队全体成员必须掌握两项技能中的b级标准,并保证所有的b级标准在该团队中有50%以上成员能达到 团队全体成员必须掌握一项技能中的c级标准,并保证所有的c级标准在该团队中有25%以上成员能达到 具体技能描述: 【必备】UserInterface PhotoShop/Fireworks Design

a –配合美工将草图形成具体的符合WebPage的设计 b –有快速制作分层高品质PSD、PNG的能力 c –能迅速将PSD、PNG的内容构思成div+css或者table等HTML代码 Flash Design a –基本动画效果 b –复杂的交互体系设计,了解第三方swf辅助设计软件 c –复杂的交互体系设计以及较强的对各类外埠资源(PNG、JPG、MP3、WAV 等)的整合能力。精通部分第三方辅助设计软件(AE、SwishMax、Swift3D等) 【必备】Browser-side (Web Application) XHTML/CSS a –基本的layout实现 b –严格跨平台的layout实现以 c –优雅的HTML code,尽可能符合标准并有SEO的考虑因素。在任何平台、浏览器下基本保持一致。不要求了解各种CSS的hacks,但要求知道遇到问题应该如何查阅资料以在第一时间内解决。能够为JavaScript开发人员提供最好操作的DOM结构,让JS开发人员在开发的时候认为”一切都已经准备就绪了”,而不是”捉襟见肘”。 JavaScript/Ajax/DOM a –基本的DOM操作,了解AJAX,可以实现数据通信 b –基本的DOM操作,能写高效率的OOP代码,以降低维护成本 c –基于需求,进行不同的开发,选择合适的框架,做到代码效率最高,用户体验最好,代码下载量最小,并且可以在单独甚至更多产品线中最大限度重用代码 Flash Developement a –基于Timeline的ActionScript操作,能实现简单交互 b –掌握a外,能实现数据层通信(与服务器以及本地SharedObject)

相关主题
文本预览
相关文档 最新文档