@
jtn007 什么是敏捷开发我不懂……协作的话在我这边可读性肯定是放在第一位,无论任何语言。当然这也不是一棒子打死的,还要看小团队的默契程度,几个人水平相当,写代码的方式和想法都差不多,就算不考虑什么语法糖也能看得懂想得到,那就可以用一些技巧或高级特性简化代码
比如,我团队里的同事PYTHON水平都差不多,达到了了解PYTHON大部分特性的程度,我要实现一个取100以内可以被2整除的自然数列表:
>>> s_list = filter(lambda x:not x%2, xrange(0, 100))
>>> print s_list
一行就搞定了
反之,如果团队里有刚刚了解编程的,为了尽量能让他读懂,我会这样写:
>>> s_list = []
>>> for i in range(0, 100):
>>> if i % 2 == 0:
>>> s_list.append(i)
>>> print s_list
这样不高级特性,不用说xrange和range有什么区别,不用说lambda和filter是什么东西,随便有点编程基础的人都可以大致猜到这段代码的功能
要说这两种方式有多大的语言效率影响?我想实际应用中如果不是大量频繁使用是可以忽略的
不知道我举例的意思能不能说清楚我想表达的,大概就是说,要不要考虑语法,还是要看与你协作人的各项特征(当然别人也会迁就你,如果他考虑到这点的话)