❶ 脚本的知识
一、啥叫脚本呢?
其实就是一段代码,作用就是:这些代码通过你的浏览器来鼓捣一下你的机器。这样,你就能通过点一下鼠标就可以发点欢迎词、发点情话啥地了。
二、怎么在聊天室放脚本呢?
<script src=您的脚本存放地址></script>
把这段代码放你右下角链接里就可以了。
三、你浏览器咋会知道你放脚本了呢?
因为每段脚本务都放在<script>和</script>之间了。一见到<script>字样,浏览器就会当成脚本来分析了。纯属浏览器的条件反射之一。
四、我从寒江脚本里学到啥了?
1、定义一个变量:
var a=1 的意思就是:定义一个变量a,并给a赋值为1
2、为啥要定义变量呢?
这话说的,干活不用人哪行啊?其实定义变量就是事先找几个人来,留着以后派给任务。
3、定义一个数组变量
var a_name_filter = new Array(。。。);
其实数组变量也是相当于找人,只不过这个人可以干好几样活而已(属于能人类型的)。
4、定义功能函数
function a(){}
这相当于各项任务。事先定义的变量一般会在这里体现出来。当你在脚本里写上a()之后,浏览器就会条件反射了(执行a功能函数中的语句)。
五、脚本的说明文字
啥东西都得有个说明书不是,脚本也得有呀,而且这个说明书最好要写在代码里(要不过后自己都看不明白了,多丢人啊。)
那么怎么写说明呢?
1、某行代码的说明可以放在此行代码的最后面,在行尾打上//然后再写入文字说明就可以了。
例如:
var room_name="悠悠柠檬情"; //聊天室名字
2、如果文字太多,一行写不下那咋办啊?
在此特殊说明一下,其实尽管代码一般都是英文字符,但说明文字绝对可以兼容现代汉语以及文言文的,(←废话)
如果是多行说明文字,可以这样写
//---------------------------------------------
//孤鹤脚本0.9999版just for my Love
//
//失去,也是一种笃定。
//
//就算拥有的时光,是那麽短暂;
//
//能够无怨无悔地为一个人付出,就是幸福。
//---------------------------------------------
看着感觉还不错吧?(^!-)
当然,还有更方便的写法,就是在说明文字的第一行写上/*,再在最后一行写上*/。例子如下:
/*
孤鹤脚本0.9999版 just for my Love
小薇啊,你可知道我多爱你,
我要带你飞到天上去
看那星星多么美丽
摘下一颗,轻轻送给你。。。
*/
本人强烈建议,不要在脚本里写歌词,因为有可能导致看脚本人的情感波动。:-)
六、数据类型
数据类型包括:字符串、数值、布尔三种类型。
javascript带有数据类型强制转换功能,这对编写者(尤其是对喝完酒写代码的人)来讲是一个大大的好事。要不你还得记好多的数据转换函数。
七、JScript的运算符
关于运算符的讲解,将会涉及很多很多的知识,请小学没有毕业的同志自学完成小学课程之后再看。
计算 符号 位运算 符号
-------------------------------------
负值 - 逻辑非 !
递增 ++ 小于 <
递减 -- 大于 >
乘法 * 小于等于 <=
除法 / 大于等于 >=
加法 + 等于 ==
加法 + 不等于 !=
减法 - 逻辑与 &&
等于 =
例一:
x=1+2
=======
答案:x被赋值为3
例二:
if (mylove=="小薇") {
document.write("回答正确,您属于多愁善感型的")
} else {
document.write("回答错误!您属于没事找抽型的")
} ======
运行结果:
如果变量mylove的值为“小薇”,那么,程序会执行document.write("回答正确,您属于多愁善感型的")
否则,则执行document.write("回答错误!您属于没事找抽型的")
我学到的脚本知识(二)
今夜,让我静静地想你(诗配JS语句篇)
今夜,我怅坐一隅静静地想你,
想知道你在做什么,想知道你有没有在想我;
一、if...else 语句[根据表达式的值,有条件地执行一组语句。]
我想你,你想我吗?如果我不想你,那么你还想我吗?
用语句控制如下:
if 我想你 {你想我吗?} else{那么你还想我吗?}
通常都先定义一个变量来做为判断条件。
a='我想你';
if (a=='我想你') { b='你想我吗?'} else { b='那么你还想我吗?' }
二、do...while 语句[第一次执行一个语句块,然后重复循环的执行该语句块,直到条件表达式等于 false。]
折九百九十九只纸鹤我就会去睡的,
用语句控制如下:
i=1;
do
(折一只纸鹤;)
i=i++;
while(i<999)
三、switch 语句[当指定的表达式的值与某个标签匹配时,即执行相应的一个或多个语句。]
我想你,
(假设前面已经为a赋值)
switch(a){
case 想为你点亮一盏桔色的灯,:
静静守候着你疲惫的归来;
case 想为你递上一杯温热的香茗,:
缓缓驱散你脸上的倦容;
case 想用我温柔纤细的手指,:
轻轻抚平你眼角的皱纹;
case 想用我轻柔温情的呢喃,:
抚慰你驿动不安的心灵。;
}
然后静静地看着你……
我祈求,祈求这一刻的宁静、永恒。
四、for 语句[只要指定条件为 true 都执行语句块。]
(第二条语句也可以用FOR语句来表达)
用语句控制如下:
for (i = 1; i < 999; i++) {
(折一只纸鹤;)
}
五、while 语句[执行一个语句,直到指定的条件为 false。]
(第二条语句也可以用while语句来表达)
折九百九十九只纸鹤我就会去睡的,
用语句控制如下:
var i=1;
while (i < 999) {
(折一只纸鹤;)
i++;
}
我学到的脚本知识(三)
前二篇,已经把脚本的基本知识粗略地介绍了一下,基础知识也介绍得差不多了,再有一些不太常用的只能在实战中总结了。
以下结合寒江322脚本解释一下。
粗看了一下寒江322脚本,大概共分四个部分
第一部分:变量定义部分,前516行。
第二部分:加入新的界面元素
第三部分:重新设置原有界面元素的样式
第四部分:系统初始化
=====第一部分====
这部分内容于“我所学到的脚本知识(一)”中有介绍。
其实就是定义了一些变量(包括数组变量),这些定义好的变量会在下面的几个部分中使用。
例一:
var room_name="心梦如语";// 房间名称
定义了一个变量:room_name,并赋值为:心梦如语
注意写法:
var 变量名 = 变量值 ;
定义一个变量,前面一定要有var,每句结束时要有";"符号。
后面的“// 房间名称”部分为说明文字,在脚本执行时将被自动忽略。
例二:
// 按钮背景图片 宽度,文件名
var a_btn_pic = new Array
( 17, "btn17.gif",
18, "btn18.gif",
19, "btn19.gif",
35, "btn35.gif",
46, "btn46.gif",
70, "btn70.gif"
);
定义一个变量数组,每个值中间以“,”分隔。
其实也可以写成如下形式:
var a_btn_pic = new Array(17,"btn17.gif",18,"btn18.gif",19,"btn19.gif",35,"tn35.gif",46,"btn46.gif",70,"btn70.gif");
这样写的话,脚本的体积会减小,但脚本的可读性会差一些。
例三:
//——图片——
var a_picture = new Array
( "你好", "pic/p001.gif",
"鼓掌", "pic/p002.gif",
。。
。 )
与
//——背景色——
var a_bkcolor = new Array
( "FFFFFF",
"fdd242",
"f8fead",
"a0e4a0",
。。
。 )
只是写法的格式不同,其实都是定义变量数组。
好了,到现在为止,你已经完全理解了寒江322脚本的前516行的内容了(322脚本共1956行)。恭喜恭喜
我学到的脚本知识(四)
前三篇已经把脚本的基本知识粗略地介绍了一下,基础知识也介绍得差不多了,再有一些不太常用的只能在实战中总结了。
以下结合寒江322脚本解释一下。
以下内容由发布之日起执行,如有与国家法律法规相抵触,请按寒江322脚本之标准执行。
粗看了一下寒江322脚本,大概共分四个部分
第一部分:变量定义部分,前516行。
第二部分:加入新的界面元素
第三部分:重新设置原有界面元素的样式
第四部分:系统初始化
=====第一部分====
这部分内容于“我所学到的脚本知识(一)”中有介绍。
其实就是定义了一些变量(包括数组变量),这些定义好的变量会在下面的几个部分中使用。
例一:
var room_name="心梦如语";// 房间名称
定义了一个变量:room_name,并赋值为:心梦如语
注意写法:
var 变量名 = 变量值 ;
定义一个变量,前面一定要有var,每句结束时要有";"符号。
后面的“// 房间名称”部分为说明文字,在脚本执行时将被自动忽略。
例二:
// 按钮背景图片 宽度,文件名
var a_btn_pic = new Array
( 17, "btn17.gif",
18, "btn18.gif",
19, "btn19.gif",
35, "btn35.gif",
46, "btn46.gif",
70, "btn70.gif"
);
定义一个变量数组,每个值中间以“,”分隔。
其实也可以写成如下形式:
var a_btn_pic = new Array(17,"btn17.gif",18,"btn18.gif",19,"btn19.gif",35,"tn35.gif",46,"btn46.gif",70,"btn70.gif");
这样写的话,脚本的体积会减小,但脚本的可读性会差一些。
例三:
//——图片——
var a_picture = new Array
( "你好", "pic/p001.gif",
"鼓掌", "pic/p002.gif",
。。
。 )
与
//——背景色——
var a_bkcolor = new Array
( "FFFFFF",
"fdd242",
"f8fead",
"a0e4a0",
。。
。 )
只是写法的格式不同,其实都是定义变量数组。
好了,到现在为止,你已经完全理解了寒江322脚本的前516行的内容了(322脚本共1956行)。恭喜恭喜
下面我写一点题外的话。脚本做为一种解释性的语言,与真正的程序还是有一定的差距的,从我的感觉来看,写脚本是一种应用,而写程序是一种开发。没有脚本可以写成一个系统,而程序可以,另外,写程序有很多的艺术性在里面。就象画一幅山水画一样,创作的是一种意境,而不是一颗树的外形。写这些话的目的是想表达我的一个想法:脚本既然只是一种应用,那么就把它共享吧,不要让它带有更多的商业目的。
我所学到的脚本知识(五)附:出击代码
从第517行开始,会涉及到JS语句了。其实语句也没有什么,万事开头难,已经学会500多行了,还难个啥呀。
(部分同志可能还对第(三)篇的内容还晕乎着呢。今天开始就会让你一点点清醒了。)
先打个比方:
1、把寒江脚本看做一座楼(注意:是楼,不是平房,有住“别野”的一边凉快去)
2、这座楼分四层(就是我前所说的,332脚本的四个部分。)
3、每层楼会有多个房间(就是各个功能函数)
4、每个房间又会有具体的工作和职责(就是各子功能函数)
5、每个房间里的人,暂且看做各个变量吧。
下面以一段332脚本的函数来说明一下
function add_new_element()//加入新的界面元素
{ 。
。
。
write_button("","欢迎",409,60,35,20,"","快速欢迎","autosend(a_welcome)");
。
。
。
}
这段代码的add_new_element 是一个功能函数(也就是自己定制的一个任务,目的就是在聊天室的输入区加入新的界面元素。)
从“{”开始,到“}”结束
在“{”与“}”之间的内容是add_new_element 功能函数的各项具体工作。例如:write_button(...)、write_bkcolor_select(...)、
write_select(...)等等。
而write_button(...)这些又是一些功能函数,这一函数的具体功能是在脚本第1010-1014行的
function write_button(name,value,left,top,width,height,color,title,action) 中。
而1010-1014行的
function write_button(name,value,left,top,width,height,color,title,action)//加入执行一个函数的按钮
{ write_button_style(name,left,top,width,height,color,title,"");
document.write(' onclick="' + action + '">'+ value +'</button>');
}
这段代码又包含了write_button_style(...)功能函数。
这样一层套一层的,有时容易给人套迷糊,但其实这就象是一个大工作,里面又分很多小的工作,每一个小的工作里面又会分为几个小
的工作一样。
你晚上回家做饭的时候,不能光做饭不做菜吧?所以做饭其实是做饭和做菜两样工作。做菜也不能就一个菜吧?(那也喝不进去小酒啊
),标准再低,也得弄个四菜一汤啥的呀,这每道菜就又是一项工作了。[依吾政府提醒广大社员:喝多酒有害身体健康!]
那么为什么有些功能函数后面的括号里要加那么多字母、数字呢?这些字母和数字就是第一篇我们提到的变量,它的作用就好像某一项
任务在分配之前先指定几个人去做一样。
象 write_button_style(name,left,top,width,height,color,title,"");
的意思就是:write_button_style这个任务指派name,left,top,width,height,color,title,""这几个人去做,最后一个""的意思是空缺
,因为每个功能函数是事先定义好的,本来需要五个变量的,你非得派四个变量去,那对不起,你得写一个""来表示缺一个变量,(到
时候算奖金也得多给一份不是。)
至于具体的浏览器怎么去找那段代码,怎么去执行,你就不用操心了,浏览器会象领导查检劳动纪律一样,从头走到尾。(领导的事最
好别管,把自己的工作干好就成,出了事让领导去兜着。)
以上这段如果看明白了,那332脚本里面的功能函数你就都可以理出一个大体的思路了。至于细节问题如“typeof(parent.r.listhtml)
”“document.inputform.USER...”这些都先不用管。
❷ 课件的脚本应该怎样制作
怎么设计课件脚本?
目前课件已广泛应用到我们的教学中,广大教师对课件并不陌生,但在课件制作过程中忽略了一个关键问题——脚本,脚本是制作课件的前提,就像一部影片需要有一个剧本,那么你想要制作课件,首先就要先有脚本。作为教师的我们,并不要求人人都能做出精美的课件,但至少自己要会设计课件的脚本,通过脚本,能把自己的想法与课件的制作者进行沟通,从而使课件达到你最初的设想。即使你自己制作课件,也能做到综观全局,有的放矢,减少重复劳动。所以说,我们可以不会做课件,但决不能不会写课件脚本,那脚本到底有什么样的作用呢?怎样写脚本呢?写脚本应注意哪些问题呢?
现在,我就根据自己的一些体会,以及自己在这方面的一些尝试和实践,谈谈多媒体课件脚本的设计,以作抛砖引玉的目的。
一、为什么要设计脚本,脚本与课件有什么关系。
要制作出方便、实用、效果好的课件,除了要有较好的制作技术外,关键在于创意,即根据教学内容和教学要求,设计出符合教学规律,能激发学生兴趣,能揭示教学重点或难点的课件。而脚本正是创意的体现,是创意的初级表达。编写脚本的目的之一是为了指导制作者去进行课件制作,虽然我们有关于整堂课设计的教案,但教案主要是由学科教师按照教学过程的先后顺序,将知识内容和呈现方式描述出来的一种形式,它还不能作为课件制作的直接依据。课件制作者对计算机软件很精通,但不一定了解各个学科内容和教学设计的具体问题,因而设计者必须交给制作者一套制作脚本,以确保其制作时有据可依。
制作脚本对课件的制作有着很重要的意义。高质量的制作脚本是课件开发成功的保障。脚本是沟通课件的构思者和制作者的桥梁,它为课件的技术制作提供了依据。
二、 怎样设计脚本?
设计脚本是一个连续的工作,在整个过程中,主要要完成以下几个步骤。
(一)明确教学目的,分析教学内容,进行合理选题
众所周知,要制作一个课件要花费大量的人力和时间,如果最终的效果不能符合实际教学要求,也就失去了计算机辅助教学的意义,所以课件作为教育教学的一种辅助工具,它的设计思想一定要与教学目的要求一致,与教学的整体设计一致,为整体教学服务,这样才能达到辅助的效果。于是这就要求我们在设计课件脚本之前应深入理解教学大纲的教学要求,合理选题。
选题是指选内容,也就是说,你的这堂课,你选择那些方面,或哪些要点用课件来表达。课件从内容上分一般可分为两种,一种是贯穿整个教学过程的,它是线型的,另一种是点型的,主要表达教师选定的几点内容。不管是哪种类型,我们都应注意,并不是所有的教学内容,都非用计算机不可,教学过程中出现的有一些问题在黑板上解决更妥当,用计算机模拟现实是不得已而为之,如果某一问题用实物演示效果好,我们就不必在课件中去表达,反而会弄巧成拙,变成传统教学的翻版。在脚本的设计中,很多教师很容易把课件设计成课本上的例题、练习、概念等全都搬到计算机屏幕上,用计算机屏幕代替黑板,这样实际上是一种新的满堂灌式教学。
一般说来,我们应该尽可能地将那些既能够充分发挥计算机功能又能有效完成教学要求、提高学生学习能力的重点、难点性内容作为制作的题材。
(二)结合教学内容,选择课件形式
课件形式是指课件对教学内容的呈现方式,或者说是课件的主要侧重点,随着多媒体教学在教育教学方面的深入开展,以及一些教育工作者的探索和制作,目前,存在的多媒体课件的主要形式有:1. 动画模拟型;2. 图形变化型;3. 实时控制型;4. 应用题库型;5. 智能专家型;6. 网上教学型。
各种课件形式都有不同的特点和优势,也有各自的缺点和不足,选择那种课件形式,要看本节课的具体需要。当然,真正一节优秀的课件课,并不只是运用上述某一种形式,而是实现多种形式与传统教学的组合,共同完成教学任务。在课件运用中,有些教师就因为过多的使用计算机来代替传统的教学模式,而忽略了直观的教具、实验的动手操作和其它电教媒体的使用,所以达不到预期的教学效果,比如课件呈现资料时应讲究画面简洁大方,要给屏幕留出适当的空白,使学生获得视觉的美感,切忌一次性呈现资料太多,而使画面过于拥挤;课件中滥用音乐,也会分散学生的注意力。一节好课,一定是恰当地使用几种媒体或是几种媒体的合理组合的一节课,所以在课件的组织形式上,就应利用各媒体的特有优势服务教学,为学生提供多样的外部刺激,激发学生的学习兴趣,最大限度的提高学习效率。所以在设计脚本的过程中应充分考虑课件形式的合理运用。
(三)设计课件内容和操作过程
课件的流程设计是整个脚本设计过程中的主要也是最重要的环节。在这个过程中,我们要在前两个环节的基础上,对课件的具体内容和操作进行研究。包括界面的元素与布局,页面的时间长度及切换方式、人机交互方式、色彩的配置、文字信息的呈现、音响效果和解说词的合成,动画和视频的要求以及各个知识节点之间的链接关系等等。
其主要内容主要包括两方面:
(1)课件呈现的内容
①具体内容
课件呈现的内容实际上也是我们课堂中要用的东西,主要有:
文字信息:标题、文本
音频信息:背景音乐和以及解说词
视频信息:动画或录像
这些是整个课件的主角,我们要进行精心选择,我们的依据便是你的教学设想,选择这些内容的时候,我们一定牢记自己的教学目标和整堂课的设想,时时想到我需要什么,学生需要什么,而不是课件需要什么。
为了使课件达到我们的设想,我们还要在精心选择的基础上进行合理的优化,其目的是为了达到最好的教学效果。对于音频信息也要仔细考虑,哪个地方该要,哪个地方不要,哪个地方需要背景音乐,哪个地方需要解说,都应该做到心中有数,同样的,视频文件也需要合理的优化。
②组织形式
在设计脚本时,我们还要对课件所要呈现的各种内容进行有机组合、分析,并安排好各个知识点的关系和呈现顺序。一般说来,我们一堂课可分为导课、新课、巩固三个阶段,在课件内容分析时,我们也可把各个知识点分成这几部分,并安排在不同的模块中,一方面提高课件的操作性,另一方面也便于课件制作过程中的修改和链接。当然,对于点型的课件来说,我们只要安排好各个知识点之间的位置和链接就行了。
(2)课件的操作过程
课件的操作过程是要在课件内容分析的基础上,具体到课件流程中具体安排,主要有这三方面的内容:
①屏幕的外观设计
在这个方面主要考虑整个课件的风格以及各个页面的元素和布局,在设计课件风格的时候,我们一定要考虑课件的内容,做到内容和形式的密切统一。一般来说,我们在设计脚本是只要把握大概的布局就可以了,至于细节上具体要用什么颜色搭配什么颜色,要在课件制作的过程中多次比较才能决定。
②各元素的内部链接关系
因为一个课件不可能像流水线一样是单一方向的(这样的课件在实际中却存在多多),因为这样的课件非常不利于操作,某一环节出错,就需要从头开始,显然,这对于课件操作是很不利的。因此,我们需要对课件内部的各元素之间进行合理的链接。在脚本设计时,我们就应该考虑它们之间的隶属、链接关系,这样,能够帮助自己理清思路,利于课件制作者的实际制作和课件程序的维护。
③人机交互机制
如果你对课件制作有一定的了解,那么我想对这个内容肯定很熟悉。人机交互方式因不同的软件方式也不同,但一般都有按钮交互,热区交互,等待等方式,在设计脚本时,应根据你的实际需要考虑选择适当的方式。
(四)撰写课件脚本。
撰写课件脚本的过程,实际上是把我们在设计脚本过程中的各种各样的想法书面表达出来的过程,这也是课件脚本设计的最终成果的体现。这个环节贯穿于整个脚本设计的过程。
俗话说,“磨刀不误砍柴工”,只有保证了脚本的质量,做课件时就会有事半功倍的结果。
三、 设计脚本的过程中要注意哪些问题?
一个精美的课件必定有一个优秀的脚本,蹩脚的脚本再高明的制作者制作出来的也只能是劣质的课件。我们在脚本设计时主要注意以下几个问题:
1、脚本不是教案。
在我接触的一些脚本中,很多是教案式的,也就是在他设计的脚本中,所描述的过程就是整堂课的过程,看起来似乎很完整,很具体,其实,这并不利于课件制作者制作课件,因为他需要的不是课的内容与过程,而是课件的具体操作过程。
2、脚本变成简单的资料堆积。
在这种类型的脚本中,在文科中比较常见,在这种类型的脚本中,几乎全都是课件所需的材料,而关于这些材料的组织以及它们如何出现或哪里出现却很少。这种脚本对于课件制作也是没有多少价值的。
3、多多和课件制作者沟通。
脚本的设计是一个连续的过程,不是一次就能解决的,需要你不断的和课件制作者沟通,了解制作软件的优势和劣势,并积极听取制作者的意见(因为制作者有多次制作的经验,在某些方面有独特的见解),甚至在课件制作的过程中也应该不断的优化脚本的质量。
4、尽量熟悉课件制作者所用的软件
高质量的制作脚本是课件开发成功的保障,它为课件的技术制作提供了依据。工欲善其事,必先利其器。在课件制作中我们应该切实重视脚本的作用,因为我们的最终目的是把课件应用与课堂,提高教学质量与效益,全面提高学生的素质,促进应试教育向素质教育转变。
❸ 关于脚本的知识 详细点
游戏业中的脚本
脚本不是游戏业的新技术,但脚本为业外的人所知悉,却应归功于《魔兽世界》(以下简称Wow)在世界范围的流行。通过Wow伟大的自定义界面系统,Lua这一脚本语言一举成名天下知。
虽然Lua的出名有点横空出世的感觉,但游戏业内早就使用脚本来开发游戏了。即便是在国内,我们所熟悉的网游大多数是用脚本开发的。此前已有人士透露,网游的长青树《梦幻西游》和《大话西游2》就大量应用了脚本技术;特别是《大话西游2》,比Wow早几年做了基于Lua脚本的游戏开发。可以说,国内与国外在脚本技术上并不存在差距,大家都是站在同一起跑线上的,这为国内游戏行业赶超国际水平提供了强大的保障。
回顾过去,我们发现单机版游戏时代很少听到脚本这个词。那么,为什么在网游时代脚本成了业界宠儿?原因是多方面的。比如在单机时代,无论游戏机还是PC的性能都非常低下,需要具有更高执行效率的编译型语言来“压榨”机器性能。但硬件性能的提升并不是脚本流行开来的决定性因素,真正的原因是市场的需要。
网游时代的市场需求快速变化、竞争激烈,如果延用单机时代一年半载才出一个新版本的开发方式,那必然会被市场淘汰。正是这种快速变幻的市场需要和低效的开发工具之间的矛盾,引发了开发工具的革命——脚本语言风生水起。脚本的兴起因为游戏业中传统的编译型语言(asm/C/C++)的性能优势在硬件性能大幅攀升的今天已经不复存在。在网游时代,游戏业中的主要矛盾已经由性能低下的硬件与游戏执行效率之间的矛盾转变为快速变化的市场需要与低效的开发工具之间的矛盾,脚本在网游时代的辉煌是历史的必然。
除了市场和硬件因素外,还有一点不能忽略。那就是C/C++进行游戏开发的高成本性和高项目风险。随着java/.net逐年流行,大学生中学习C/C++编程语言的人越来越少。物以希为贵,人亦如是。C/C++程序员新鲜血液补给少,而网游开始流行,巨大的网游市场需求造成大量的人才空缺,这时也就带来了C/C++的高成本。即便是资本雄厚的公司,可以雇佣大量C/C++程序员开发游戏,也不能无视C/C++高级特性和高度的灵活性带来的高项目风险。C/C++是易学难精的编程语言,应用在大型项目的时候极容易因为程序员的水平参差不齐而引起沟通不畅,还有滥用的高级特性也容易引入大量的bug。游戏公司希望找到一个方案以解决高成本、高风险的问题——这个方案就是在游戏中使用脚本。
脚本的现状
脚本解决了C/C++无法解决的开发效率难题,而且降低了成本和风险。脚本在游戏业中就此蓬勃地发展了起来,现在脚本技术已经成为游戏业中不可或缺的一环。横看当前脚本技术,一片大好形势就如同八九点钟的太阳。不仅语言百家争鸣,而且书籍也层出不穷;不仅在游戏业开花结果,在web等其它应用也大放异彩。
首先,我们来看看现在比较流行的脚本: Python、Lua、ruby和Erlang。Python和Lua是网络游戏开发的中坚力量;ruby凭借ruby on rails的web开发框架的强劲力量,不可小瞧它在游戏业的前途;erlang在高并发性上的原生优势吸引了无数追求高性能的网游服务器的开发人员的目光。
然后让我们来看看书籍和资料方面。大家都知道,文档对语言的普及起到正向催化剂的作用,甚至可以看作是语言的有机组成部分,必不可少。Python经过基金会的多年经营和在NASA、Google得到重用的原因,书籍方面比较丰富;ruby随着RoR的流行水涨船高,这两年行情看好,书籍也出版得越来越多了;反观Lua,虽然流行度一直走高,但出来的书却没有几本,跟他苦涩的接口设计和缺乏针对大型应用的原生支持不无关系;Erlang是典型的少众语言,但随着多核时代的来临和高并发网络应用的需求,有着光明的发展前景,现在《Programming Erlang》等书已经在策划出版了。
最后把焦点重新聚集到游戏开发行业中来,可以发现脚本言语已经在游戏业中开发结果,硕果累累。除了前文提到的《魔兽世界》和网易经典“西游系列”都使用了脚本外,现在大多数流行程序都使用脚本,如腾讯的《QQgame》和搜狐的《天龙八部》等。现在的游戏引擎也都提供了脚本接口,无论是商业的Unreal引擎还是开源的OGRE,无一例外。
脚本的优势
脚本在游戏业中找到自己的一席之地,是因为网游市场需要一个快速开发方案来避免C/C++开发带来的项目高成本和高风险。那么,具体而言脚本相对于C/C++这类编译型语言有什么优势呢?
一、易于学习、代码可维护性强。通常脚本的语法都非常简单,也没有太多高阶的特性,学习的门槛较C/C++低得多。如Python号称只需要花一个下午即可学会。这使得游戏开发公司可以招聘完全没有脚本编程经验的新手,通过低成本的培训,迅速走上工作岗位。除易于学习外,脚本代码也有更好的可维护性(尽管写出没有人看得懂的Lua代码也非难事)。因为脚本不会有很多高阶特性(如C++里的模板元编程就是高阶特性),所以脚本程序员有更多精力关注架构、模式、重用和测试,从而提高了代码的质量;相应地,没有那么多让人困惑的高阶特性,也使得代码“简洁”不少。
二、降低开发成本。如第一点所言,脚本易于学习,使得游戏开发公司可以大量应用新手,是降低成本的有效手段。那么如何来保证新手写的代码的质量呢?这需要我们辩证地看问题。从经验上看新手写的程序无论用什么言语,bug肯定不少。但一个C新手编写的代码和Python新手编写的相同功能的代码相比,C版本应该会有更多的bug。由于C程序需要编译,而脚本程序(大部分)都可以直接解释执行,所以在排除bug方面脚本也有先天的优势,这使得脚本在低成本的同时能够更好地保证代码质量。
三、形成人才壁垒。软件开发行业是一个动荡的行业,无数的程序员都在跳槽和谋划跳槽的状态中过日子。使用脚本开发,形成人才壁垒是游戏业减少人才流动的有效手段。因为脚本现在除了在游戏业中大红大紫外,并没有在其它行业形成杀手级应用(虽然在web开发方面也有燎原之势,但终究不似在游戏业中的地位高尚)。这就让游戏程序员很少会考虑非游戏业的职位,而其它行业的程序员却可能会因为脚本的易学习性转投游戏业。脚本除了能有效形成行业间的人才壁垒外,也能有效地形成企业间的人才壁垒。因为现有的脚本种类繁多,不同公司往往有不同的选择,甚至有些公司使用自己开发的脚本语言。程序员从公司A跳槽到公司B可能就要学习使用另一种脚本,这提高了跳槽的成本,从而使人才流动减少。
脚本的发展趋势
依照目前的趋势来看,脚本语言也一定会更加普及开来,而且会渗透到其它行业中去。随着网游从业人员的增长,脚本程序员也一直相应地增长着,而且Web2.0热潮引起的网络需求,也促生了一批批新的脚本程序员。网游市场就像一个正在滚动的雪球,带动着脚本的普及。
随着脚本在游戏业中越来越流行,市场就会需要更高的生产效率。脚本虽然一定程度上缓解了市场与生产工具之间的矛盾,但仍然不够彻底。由于市场竞争趋于激烈,而网游在很多功能实现都相差无几:如网络、数据库、图形甚至部分逻辑。这必然会催生网游生产组装化——大量的中间件相互组合形成新的网游。从现在来看,Bigworld、PhysX和Unreal等都是比较流行的网游中间件。脚本语言是粘合各个中间件的良好胶水语言,所以随着网游生产组装化,脚本有良好的发展空间。
那么,当脚本发展到如日中天的时候,会取代C/C++这些编译型语言吗?我认为不会。脚本语言和编译型语言在生产效率和执行效率上各擅胜场,网络游戏既需要能快速应变的脚本,也需要能快速执行以提供更绚丽游戏效果的编译型语言,在未来,它们之间会保持长久的和谐互补关系,相辅相成。
结语
综上所述,网游时代是上帝赐予脚本语言的绝好时机,脚本语言很快将迎来自己光芒四射的世代。脚本语言拥有编译型语言无可比拟的生产效率优势,它们将并肩奋战在游戏最前线
❹ 给大家分享几个常见的脚本形式
常用脚本一∶抛出问题 +分析原因+ 引导互动 +具体讲解
案例:"播放量卡在 500,不是因为你的视频拍的不好,而是因为你一直没有用 xxxxx,点赞关注不然就刷不到我了,xxxxx 具体讲解 xxxxx"
这种脚本模版适用于任何行业任何领域。先列出你所在行业的通病问题,然后把问题抛出,再告诉用户遇到这种问题不是你的错,是因为这个行业的乱象问题,不是因为你不聪明不仔细,而是这个行业的不为人知的潜规则,大多数外行人都会中招,随后再引出自己方法论和干货内容。这类脚本架构可以把一个行业的普通知识点,变成用户更容易接受采纳的建议,因为你有站在用户角度思考问题,用户能有被带入感,而不是觉得你在纯粹的说教。
常用脚本二∶技巧价值放大化+不劳而获 + 具体讲解 +案例证明
举例∶"我只做了一个动作,播放量冲破700万,点赞收藏不然就刷不到了"
一个简单技巧或者简单的方法工具就可以达到惊人的效果,本质是在利用着用户不劳而获的心理。浮躁的短视频时代用户越来越没有耐心,越来越急功近利,一些所谓技巧型分享都会引起大量围观。为了后续脚本的合理性,你可以把这个技巧改为某种理念某种思维,为了吸引私域你可以把这个"技巧"改为一张思维导图或者一份 PDF。然后再强调这张思维导图的重要性这份PDF的实用性,通过这些工具你达成了哪些战绩等等。最好能有实际的截图展示这样才会更有说服力,在讲解的过程中也可以同时让个人IP更丰满。
常用脚本三∶疑问抛出 +数据佐证
举例∶"你知道只刷抖音也能分钱吗? 99%的人都还不知道,xXXXXXXX,赶紧点赞收藏"
透露一个行业的信息差,然后再把数据绝对化,"99%的人不知道"、"95后绝对不知道"、"99%的杭州人都不知道"、"只有00后、10后才知道"等等。你认为大家都知道的信息,其实在外行眼里这就是干货,不要担心信息差不够超前,不要把该信息放到自己的圈层比较。
常用脚本四∶指出错误 +给到方法 + 引导互动举例∶
"如果你还在亲自给视频配音手动添加字幕和音乐的话,那你就大错特错啦,高手们都在用XXX"
这类脚本的架构核心是用你的新方式去颠覆老办法,或者用新思维代替旧思维。先否定用户然后激起用户的逆反心理心理,跟着你的节奏把视频看下去。这类脚本框架结构适合真正有效的新方法或者个人的经验绝招。要么可以提高用户效率节省时间,要么是可以带带来明显效果的改变。
常用脚本五:必备XX(必备XX可替换)+数字结构 +举例清晰
举例∶"分享5个自媒体必备神器,第一xxx;第二xxx;第三xxx;第四xxx;第五xxx;"
这类脚本框架输出比较套路化,越是这种简单明了型的方法论拆除越让小白感觉有价值,有据可循,有法有依。
518学姐# 景致育儿说 昨晚有个作品200W播放量。她听校长的话抱着拍100条的决心,拍了97条视频,又从里面挑出来认为最好的发了22条,就有效果了。总有人问我,“老师,我什么时候能火?”我想问的是你在这件事情花了多长时间~别人一天发1条、几天发几条,你是不是可以一天发几条。短视频这个事,就是只要你发出去就会有效果,就跟你发宣传单一样,你发越多,接收到的人就越多,客户可能也越多~
❺ 电脑常识 脚本是什么, 如何制作脚本
脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
常见的脚本语:言:Scala JavaScript,VBScript,ActionScript, MAXScript,ASP, JSP,PHP,SQL, Perl,Shell,python,Ruby, JavaFX,Lua,AutoIt等。
1、脚本简单地说就是一条条的文字命令,这些文字命令是以看到的(如可以用记事本打开查看、编辑),脚本程序在执行时,是由系统的一个解释器,将其一条条的翻译成机器可识的指令,并按程序顺序执行。因为脚本在执行时多了一道翻译的过程,所以比二进制程序执行效率要稍低一些。
2、脚本是批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。