Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esui开发时的几个约定问题 #2

Closed
ecomfe opened this issue Mar 9, 2013 · 8 comments
Closed

esui开发时的几个约定问题 #2

ecomfe opened this issue Mar 9, 2013 · 8 comments

Comments

@ecomfe
Copy link
Collaborator

ecomfe commented Mar 9, 2013

私有成员

私有成员与方法是下划线_开头,还是仅仅通过注释标识?

常见集合数据类型的命名

状态是一个kv,做为控件的属性,是命名为statestatesstateMap

对Array类型的,应该是+s,这点应该没有疑问。

@otakustay
Copy link
Member

私有成员

ER的作风是@Private的以下划线开始,@Protected的和普通的一样

个人比较喜欢仅通过注释标识,用下划线起头的多数是property,原因是可能出现同名的函数

集合类型

支持states这个提案,集合统一复数命名,以屏蔽集合的类型,正确来说,状态应该是个 Set 而非 Map 吧?

当然对于一些映射关系的东西,会叫xxxMapping,不过这里也是 Mapping 而非 Map ,个人觉得用xxxMap和匈牙利命名有点类似。

@otakustay
Copy link
Member

既然说到这个,我在想 MapSet 要不要实现一下,以便未来接到ES6的2个原生类上面去

@errorrik
Copy link

errorrik commented Mar 9, 2013

集合类型

我也支持states

私有成员

_protected_的为什么和普通的一样?这是给子类用但不给控件使用者用的啊

Map 和 Set

貌似很遥远。ES6来了,我们还会用amd么?

@errorrik
Copy link

errorrik commented Mar 9, 2013

Map 和 Set

关键是,我们没有办法实现,因为有个method是delete,我擦,这东西是个关键字!

@otakustay
Copy link
Member

protected问题

原因是,私有方法其实全都不在prototype上,都是在闭包里一个函数,然后用.call去调用,不暴露出来了。

唯独私有属性必须在对象上面,所以私有的只有属性,用下划线起头,所有方法都是正常的。

Map和Set

这蛋疼的事我知道,虽然可以['delete'](xxx),不过算了,我现在收回这想法了

@errorrik
Copy link

errorrik commented Mar 9, 2013

protected问题

比如,按规则生成dom id的方法,是createId还是_createId,这东西不能放闭包里不暴露出来的。当然,这个例子可以放lib里,但估计还有其他类似的东西

@otakustay
Copy link
Member

这个东西就是 @Protected 的了,所以我的想法就是createId,真正的private method是不会暴出来的,暴出来且一定是private的肯定是property(其实也能不暴出来,但实现太蛋疼对吧),因此所有method统一不加下划线(好讨厌下划线)

然后,听更多人的意见吧

@errorrik
Copy link

errorrik commented Mar 9, 2013


这东西属于esui实现,不属于标准,不需要太多意见。你是ria的负责人,你定了就行

关了

@errorrik errorrik closed this as completed Mar 9, 2013
bobshen added a commit that referenced this issue Aug 1, 2013
Fire pagechange events when setProperty or set.
Fixed the Problem #2 of Issue #105
otakustay pushed a commit that referenced this issue Feb 4, 2015
3610cn added a commit that referenced this issue Jul 20, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants