![]() | 1 fangzhzh 2014-10-21 15:58:08 +08:00 via Android ![]() 学好英语 |
3 jsonline 2014-10-21 16:02:57 +08:00 via Android ![]() 备好字典 |
![]() | 4 drush 2014-10-21 16:06:35 +08:00 ![]() 就算英语好,遇到 object_get() 跟 get_object() 这两种风格都够你纠结一番。 |
5 zooeys 2014-10-21 16:28:20 +08:00 不是有规范么? 按照规范来~~~ |
![]() | 6 chmlai 2014-10-21 16:33:36 +08:00 Naming is hard; 老外都这么说. |
![]() | 7 sojingle 2014-10-21 16:39:27 +08:00 不去试图取个短名字的话,就会容易很多 |
![]() | 8 kmvan 2014-10-21 16:48:19 +08:00 via Android |
10 Doubear 2014-10-21 17:05:42 +08:00 |
![]() | 11 drush 2014-10-21 17:07:07 +08:00 @jsonline 我也知函数以动词开头, 但很多其他cms ,框架不按这个的。 例如在 drupal 里,很多都是动词结尾的, 如 node_load 等。 Laravel 里的 helper function 也是,array_fetch() array_get() .... |
![]() | 13 curiousjude 2014-10-21 17:22:30 +08:00 这个世界性难题。 就我个人经验而言,遵循规范(语言层面,框架层面等等都可以Google到比较通用的规范)就可以解决大部分问题了。同时自己也做一下积累,建个自己的词汇库,这在涉及到业务方面的命名时,很有效果。 |
![]() | 15 sunocean 2014-10-21 17:49:30 +08:00 前缀+动词+域(可选)+名词+加写好注释 |
![]() | 17 wangccddaa OP @curiousjude 是个好方法~ |
![]() | 18 mhycy 2014-10-21 18:46:47 +08:00 动词在后便与排序 动词在前便与阅读 |
![]() | 19 curiousjude 2014-10-21 19:10:15 +08:00 我觉得要从「从函数名称一眼就可以看出函数功能」,需要一定的积累。 一些常见的动作,最好使用大家普遍使用的,比如入队列,用「enqueue」,而不要用「addToQueue」之类的。 另一方面,要明确函数的功能,举个反例,我们项目中有个方法是做迁移游客账号数据到会员账号的,结果命名这方法的人理解为同步了,于是命名为「syncUserData」了,这样光看名字就会误解它的功能了,我觉得准确的描述应该是「migrateUserData」. |
22 c742435 2014-10-21 23:58:37 +08:00 中文命名 |
![]() | 23 oott123 2014-10-22 00:16:43 +08:00 via Android @kmvan php的函命名不是臭名昭著么… 看手册里 str 开头的,和 str_ 开头的……简直233 |
![]() | 25 hitsmaxft 2014-10-22 12:11:31 +08:00 好的命名? 见 oc .. 不过那么长的名字, 写代码的人烦死了 |