设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2948|回复: 6
打印 上一主题 下一主题

[讨论] 命名空间与$imported

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1190
在线时间
1564 小时
注册时间
2008-7-30
帖子
4418

贵宾

跳转到指定楼层
1
发表于 2010-8-8 07:39:13 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

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

x
在之前的FSL策略中,是将模块嵌套的:
  1. module FSL
  2.   module Conf
  3.     module A_Game
  4.     end
  5.   end
  6. end
复制代码
沉影前辈提出了宝贵的意见,说可以取消嵌套,想了一下,可以把第一层修改为FSLConf或者直接采用FSL。就像下面这样:
  1. module FSL
  2.   module A_Game
  3.   end
  4. end
复制代码
这样看起来就会简洁得多,而且因为在使用这些模块的时候是用的include混成进去的,所以要修改的地方并不是很多。(保留FSL只是出于形式上的考虑,同时也意味着可以存在与非FSL脚本相同的脚本名)。

关于$imported变量的问题,我也一直拿不定主意,$imported和$fscript各有千秋,$fscript可以检查版本,但在实际用途中目前还没用到过。

有很多脚本使用了$imported,我们是因该随大流,还是标新立异?

Lv3.寻梦者

梦石
0
星屑
1190
在线时间
1564 小时
注册时间
2008-7-30
帖子
4418

贵宾

7
 楼主| 发表于 2010-8-9 12:58:15 | 只看该作者
回复 沉影不器 的帖子

打错了,代表脚本名称。
不一定要和每个脚本兼容,只要是需要兼容的才这样做。
   
回复 支持 反对

使用道具 举报

Lv1.梦旅人

归去之风<

梦石
0
星屑
50
在线时间
14 小时
注册时间
2010-8-5
帖子
45

开拓者

6
发表于 2010-8-8 22:20:44 | 只看该作者
即使常量、方法被明文标记出来,但是无法了解这个脚本的架构、它做了什么,对于整合又有什么意义?
无论使用哪一条都已经背离了“自由、简易”的第一原则,请问这样嵌套的两级甚至三级以上的模块何处体现“简易”?
不如归去,风吹的那么刺骨。
又何必再这样流连,曾经的流年已如风般逝去
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
帖子
2558

第1届Title华丽大赛新人奖

5
发表于 2010-8-8 21:59:53 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
4
发表于 2010-8-8 11:07:12 | 只看该作者
module FSL
  module A_Game
  end
end
这个可行

$fscript 提供的功能是 $imported 的超集,目前由于 FSL 的脚本还没多少(自然也没有多少版本的更新),看不到实际效果,不妨等 FSL 推广后实际产生冲突时再看是否有保留价值
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
3
发表于 2010-8-8 09:56:26 | 只看该作者
理论上$fscript可以实现并扩展$imported的所有功能,但我觉得$fscript不利于在总体上的维护,某个脚本的一次升级可能导致所有与之冲突的脚本的更新。虽然$imported也有类似问题不过似乎轻微些?
我认为如果用$imported的时候最好声明:“本脚本兼容1.X版的XXX脚本,如果发现XXX脚本版本不对请更换”之类的……
顺便,我觉得FSL更需要一个统一的文档,记录已经发布的FSL脚本中哪些脚本的哪些方法可能导致冲突
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

Lv2.观梦者

旅之愚者

梦石
0
星屑
275
在线时间
812 小时
注册时间
2007-7-28
帖子
2148

贵宾

2
发表于 2010-8-8 08:06:19 | 只看该作者
回复 DeathKing 的帖子
module的嵌套关键还是看第二层是否有用,是否有config
而FSL愚者认为还是有用的,将相关的模块都包围住,在编程中需要反射判定时会很容易。

至于$imported和$fscript,因为具体没用过,也不好说,但统一的编程习惯能减少程序员间的改造或重用时的劳动量,而遵循前人的统一规范总是一种美德
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-28 20:16

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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