By admin, 27 十一月, 2015
  1. 文件统一使用UTF-8编码
  2. 类名使用StudlyCaps风格
  3. 方法名使用camelCase风格
  4. 常量名使用CONSTANT_VARIABLE风格
  5. 属性名、变量名建议使用以下三种风格之一:$StudlyCaps, $camelCase, or $under_score。在一定作用域范围内,这种风格应该是一致的。
  6. 使用空格做缩进,而不是TAB。编辑器可以设置把TAB转换成空格。
  7. 行的长度应尽量保持在80个字符以内,不应超过120字符。编辑器可以在80个字符处设置一条竖线。
  8. 左圆括号后、右圆括号前不应有空格。例如:if ($a === $b) 不应写成if ( $a === $b )
  9. 赋值、运算符号两边应该有空格,但++除外。例如:for ($i = 0; $i < 10; $i++)
  10. 适当的地方加空行把代码按逻辑归类

 

代码风格示例:

标签

By admin, 27 十一月, 2015

1. 代码结构不直观

教程教开发者通过php app/console server:run来启动服务器,但没有告诉开发者如果用Apache或Nginx服务器时应该把document_root指向web子目录。这令用户一开始比较迷惑,不知道怎样把demo程序运行起来。同样的问题也发生在Model、View、Controller目录的寻找上,它不像ThinkPHP那样简单直观,MVC的代码不能直觉地找出来。

2. 复杂难懂的路由方式

教程里的路由例子在demo工程里并不能运行,原因是demo工程的路由插入了语言标记,而教程对这没有解释(这是在routing.yml里定义的)。demo工程里,如果把一篇文章的标题改成中文,demo程序会报错,原因是demo的URL包含了标题,而标题包含中文时会出问题。路由的代码居然是以注释的方式出现,这令初级的PHP程序员很不习惯。路由除了和注释有关之外,还和一个routing.yml的文件有关,这又是一个非PHP代码的方式,让人很不习惯,好像无缘无故要多学一种标记语言似的。类似的地方还有权限控制,权限控制不是通过PHP方式实现,而是yml+PHP代码注释方式实现。

标签

By admin, 26 十一月, 2015

有研究表明经常玩手机、即时聊天会降低人的智商,或者说注意力不集中做事会更慢、质量会更差。

TED的演讲不超过20分钟,这是根据人的专注力持续时间作出的决定。在学校,一节课的时间大概是45分钟。专注力时间长的学生显然能够学得更好。

公司里有位员工,老是带着耳机听歌,他声称一边听歌一边工作的效率更高。然而,他的工作效率显然是最低的。我刚毕业开始工作得时候也喜欢边听歌边写程序,但是隔几分钟我就可能想换歌,甚至连续进很多首歌,情绪很浮躁,时间不知不觉间就过去了。

记得小学一年级就学小猫钓鱼的故事,故事告诉我们专心做事的重要性,只要专注才能有所成。

西方喜欢使用电子邮件,中国人却很少使用。一些管理者喜欢通过口头吩咐、会议、电话、QQ、微信去处理事情,而不使用简单的流程管理系统。很多时候这些事情会被忘记、效果没有被确认、不了了之。现代人生活在超多任务处理的环境中,把多任务变成单任务处理,让某一时刻只专注于一件事并不被打扰,这是效率的关键。我们要避免与那些不尊重别人时间、喜欢一时想到什么就去立刻打断别人工作的人共事。

标签

By admin, 26 十一月, 2015
  • Blade:Laravel使用的引擎,但据说语法不太好,放在Laravel上性能也比较差。
  • Mustache:这是一个历史悠久,支持超过30种语言的模板引擎,但功能不够多。
  • Smarty:历史也比较长,ThinkPHP中默认使用这种引擎,给人感觉有点旧。
  • Twig:Symfony和Drupal用的模板引擎,技术新,功能好,文档好。
  • Volt:Phalcon使用的模板引擎,用C写,部署较困难。

 

参考:

标签

By admin, 25 十一月, 2015

限制history文件不可删除:

chattr +a .bash_history

在/etc/profile里添加如下命令:

 

export HISTFILE=$HOME/.bash_history

export HISTIGNORE=

export HISTTIMEFORMAT="%Y-%m-%d - %H:%M:%S "

 

typeset -r HISTFILE

typeset -r HISTIGNORE

typeset -r HISTTIMEFORMAT

 

shopt -s cmdhist

shopt -s histappend

 

PROMPT_COMMAND="history -a"

typeset -r PROMPT_COMMAND

标签