游戏蛮牛学习群(纯技术交流,不闲聊):959392658
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2370

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 1754|回复: 28

[志远] 大话链式编程之前言(一)

[复制链接]  [移动端链接]
排名
9506
昨日变化
1

4

主题

159

帖子

741

积分

Rank: 9Rank: 9Rank: 9

UID
21402
好友
4
蛮牛币
187
威望
0
注册时间
2014-4-14
在线时间
337 小时
最后登录
2018-12-10

认证开发者

发表于 2018-7-5 12:03:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 zhiyuan 于 2018-7-6 12:08 编辑

推荐初级水平的程序认真思考,并细细回味。
推荐中级水平的程序多多验证,扩展思路
推荐高级水平的程序多多指点,欢迎指教。
推荐大牛水平的程序,这里没你事了!你可以走了 =-=

所谓链式编程在我看来有几点好处,首先编程性强可读性强代码简洁扩展性强,但是 对程序的能力要求较高新手不太利于调试。
实现链式编程的方式有很多种,常见的几种方式分别运用到扩展方法单例模式事件委托等。
1).假设大家都用过iTween如果没有可以点击<----
用iTween写出来的代码是这样的
[C#] 纯文本查看 复制代码
//键值对儿的形式保存iTween所用到的参数Hashtable args = new Hashtable();
//这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中
//例如移动的特效,先震动在移动、先后退在移动、先加速在变速、等等
args.Add("easeType", iTween.EaseType.easeInOutExpo);
//移动的速度,
args.Add("speed",10f);
//移动的整体时间。如果与speed共存那么优先speed
args.Add("time",1f);
//这个是处理颜色的。可以看源码的那个枚举。
args.Add("NamedValueColor","_SpecColor");
//延迟执行时间
args.Add("delay", 0.1f);
//移动的过程中面朝一个点
args.Add("looktarget",Vector3.zero);
//三个循环类型 none loop pingPong (一般 循环 来回)        
//args.Add("loopType", "none");
//args.Add("loopType", "loop");        
args.Add("loopType", "pingPong")                 
args.Add("position",Vectoe3.zero);
//处理移动过程中的事件。
//开始发生移动时调用AnimationStart方法,5.0表示它的参数
args.Add("onstart", "AnimationStart");
args.Add("onstartparams", 5.0f);
//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,
//那么就得在接收对象的脚本中实现AnimationStart方法。
args.Add("onstarttarget", gameObject);
//移动结束时调用,参数和上面类似
args.Add("oncomplete", "AnimationEnd");
args.Add("oncompleteparams", "end");
args.Add("oncompletetarget", gameObject);
//移动中调用,参数和上面类似
args.Add("onupdate", "AnimationUpdate");
args.Add("onupdatetarget", gameObject);
args.Add("onupdateparams", true);
//最终让改对象开始移动
iTween.MoveTo(gameObject,args);


上面的代码是我们平常使用的方式  我们发现几点问题  1.参数名为字符串不利于记忆,也不利于书写,事件的回调一看就是用的sendmessage ,总之一句话代码非常冗余!
2).在看看另外一个插件DoTween 自行百度吧亲

DoTween

DoTween

myTween.SetLoops(4, LoopType.Yoyo).SetSpeedBased();
看 可以一直设置想要的属性,或者向下面一样设置回调函数 也就是 事件

myTween.OnStart(myStartFun).OnComplete(myFunction);
这样写的好处,可以看的出来,可读性有了很高的提升,并且简单易懂快速开发,其实链式编程的优点我觉得还应该加一条 那就是 小逻辑紧凑管理  
前言就先写这么多 <-看不见我!


大话链式编程之Audio改造术(二)
http://www.manew.com/thread-139408-1-1.html




评分

参与人数 5蛮牛币 +10 鲜花 +17 收起 理由
我是程序猿AAA + 5
a258539 + 2 很给力!
kckbkckb2 + 5 很给力!
1320494699 + 5 很给力!
ubbs + 10

查看全部评分


回复

使用道具 举报

7日久生情
1512/5000
排名
1861
昨日变化
6

0

主题

399

帖子

1512

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
135463
好友
0
蛮牛币
20
威望
0
注册时间
2016-1-23
在线时间
417 小时
最后登录
2018-12-10
发表于 2018-7-5 13:34:26 | 显示全部楼层
zxfsdgfdgdfgfdgfd

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1033/1500
排名
3091
昨日变化
1

1

主题

166

帖子

1033

积分

Rank: 6Rank: 6Rank: 6

UID
139214
好友
0
蛮牛币
1554
威望
0
注册时间
2016-3-12
在线时间
408 小时
最后登录
2018-11-22
发表于 2018-7-5 13:50:15 | 显示全部楼层
期待后续内容。、、

回复 支持 反对

使用道具 举报

3偶尔光临
165/300
排名
16496
昨日变化
4

0

主题

75

帖子

165

积分

Rank: 3Rank: 3Rank: 3

UID
36729
好友
0
蛮牛币
5
威望
0
注册时间
2014-7-28
在线时间
50 小时
最后登录
2018-11-27
发表于 2018-7-5 14:56:26 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
2001/5000
排名
1335
昨日变化

2

主题

202

帖子

2001

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
161991
好友
2
蛮牛币
446
威望
0
注册时间
2016-8-12
在线时间
911 小时
最后登录
2018-12-10
发表于 2018-7-5 14:57:28 | 显示全部楼层
感謝分享...................................................

回复

使用道具 举报

3偶尔光临
205/300
排名
10172
昨日变化
3

0

主题

45

帖子

205

积分

Rank: 3Rank: 3Rank: 3

UID
272015
好友
0
蛮牛币
359
威望
0
注册时间
2018-3-12
在线时间
58 小时
最后登录
2018-12-10
发表于 2018-7-5 15:51:31 | 显示全部楼层

感谢楼主分享

回复

使用道具 举报

5熟悉之中
689/1000
排名
6016
昨日变化

0

主题

325

帖子

689

积分

Rank: 5Rank: 5

UID
199799
好友
0
蛮牛币
1173
威望
0
注册时间
2017-1-7
在线时间
144 小时
最后登录
2018-7-5
发表于 2018-7-5 16:33:05 | 显示全部楼层
期待后续内容。、、

回复 支持 反对

使用道具 举报

7日久生情
3423/5000
排名
1722
昨日变化

0

主题

2127

帖子

3423

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
219676
好友
1
蛮牛币
2610
威望
0
注册时间
2017-7-12
在线时间
554 小时
最后登录
2018-12-10

活力之星

发表于 2018-7-5 16:58:41 | 显示全部楼层
谢谢分享

回复

使用道具 举报

6蛮牛粉丝
1432/1500
排名
3200
昨日变化

8

主题

251

帖子

1432

积分

Rank: 6Rank: 6Rank: 6

UID
66029
好友
0
蛮牛币
591
威望
0
注册时间
2015-1-5
在线时间
727 小时
最后登录
2018-10-20
发表于 2018-7-5 17:09:55 | 显示全部楼层
这篇内容偏少啊
[发帖际遇]: bce 在论坛发帖时没有注意,被小偷偷去了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

6蛮牛粉丝
1304/1500
排名
1519
昨日变化
1

0

主题

176

帖子

1304

积分

Rank: 6Rank: 6Rank: 6

UID
137070
好友
0
蛮牛币
2573
威望
0
注册时间
2016-2-20
在线时间
314 小时
最后登录
2018-12-10
发表于 2018-7-5 19:07:59 | 显示全部楼层
短小精(wu)悍(力)又一章!
不过还是感谢楼主分享!
[发帖际遇]: kckbkckb2 乐于助人,奖励 2 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

7日久生情
2023/5000
排名
2732
昨日变化

0

主题

1186

帖子

2023

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
189581
好友
0
蛮牛币
2910
威望
0
注册时间
2016-12-5
在线时间
323 小时
最后登录
2018-12-10
发表于 2018-7-6 09:03:12 | 显示全部楼层

期待后续内容。、、

回复 支持 反对

使用道具 举报

5熟悉之中
512/1000
排名
9597
昨日变化

2

主题

291

帖子

512

积分

Rank: 5Rank: 5

UID
282383
好友
0
蛮牛币
477
威望
0
注册时间
2018-5-23
在线时间
109 小时
最后登录
2018-8-20
发表于 2018-7-6 09:35:26 | 显示全部楼层
duoxie fengxiang . duoxie fengxiang .

回复 支持 反对

使用道具 举报

5熟悉之中
758/1000
排名
5398
昨日变化
26

0

主题

339

帖子

758

积分

Rank: 5Rank: 5

UID
265286
好友
0
蛮牛币
899
威望
0
注册时间
2018-1-19
在线时间
163 小时
最后登录
2018-12-10
发表于 2018-7-6 09:46:24 | 显示全部楼层
很好用的插件,很给力,

回复 支持 反对

使用道具 举报

5熟悉之中
849/1000
排名
5603
昨日变化
1

0

主题

438

帖子

849

积分

Rank: 5Rank: 5

UID
146677
好友
9
蛮牛币
2749
威望
0
注册时间
2016-4-25
在线时间
169 小时
最后登录
2018-12-10
QQ
发表于 2018-7-6 10:22:01 | 显示全部楼层
厉害,厉害,谢谢分享
[发帖际遇]: LiuBen 捡了钱没交公 蛮牛币 降了 1 . 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

排名
9506
昨日变化
1

4

主题

159

帖子

741

积分

Rank: 9Rank: 9Rank: 9

UID
21402
好友
4
蛮牛币
187
威望
0
注册时间
2014-4-14
在线时间
337 小时
最后登录
2018-12-10

认证开发者

 楼主| 发表于 2018-7-6 11:27:13 | 显示全部楼层
马上写完第二节 感谢支持

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表