其实中间有不少现成的工具可以用来帮助整个工程团队维护整体的代码质量,同时大大减轻code reviewer的工作负担。以Java为例,在业界比较常用的代码质量校验工具包括:
Aloha,我是娄琦彬,欢迎来到的我的个人网站 :-)
一句话了解我——
复旦大学计算机科学2015届毕业生,前Google软件工程师,现就职于Squarspace,一个步履不停的人。
自称是码农界里写诗写的最好的,文学界里拍照拍的最好的, 摄影圈里喝酒喝得最优雅的,狄俄尼索斯门徒里走过的路最长的。
All in Programming
其实中间有不少现成的工具可以用来帮助整个工程团队维护整体的代码质量,同时大大减轻code reviewer的工作负担。以Java为例,在业界比较常用的代码质量校验工具包括:
提到Java没有人不想到大名鼎鼎的NPE(Null Pointer Error),可见广大程序员受其毒害之深。所以做接口设计的时候,一个好的习惯就是注明Nullbility。 对于Nullable的参数或者返回值,从Java 8后Optional 是推荐的方式,因为它强迫接口使用者显示进行空值检测。 但如果接口设计中是想注明非空的情况呢,通常情况下你会发现有两个看起来很类似的annotation, @NotNull 以及 @Nonnull, 而且你可能会发现代码库里使用两者的都有。但是,正如Stackoverflow上的这个帖子分析道…
It is a rule in math that the absolute value of a number must be no less than zero. Is it true in computer languages? Well, most of the case except one. Let me take C language for example.
For a 32-bits C interger, its value ranges from [-2147483648, 2147483647] .So for x = -2147483648
, what is the result of abs(x)
? 2147483648
, -2147483648
, 2147483647
, 0
or something else?
…
很多情况下在写一些小页面时想用一些字符串模板,但Javascript又不原生支持字符串模板,只好用一些第三方库,但引用第三方库的缺点在于很多功能的冗余, 浪费前端加载时间和流量,甚至会造成命名冲突等问题。 其实有时候的需求很简单,不需要很高级的字符串模板功能,只需要像'My Name is {name}. Hello {herName}
这样的线性替换就行。其实这个需求实现起来非常容易,四行代码就搞定了。如下…
ORM中通常将对象引用映射到外键,但是对于继承,关系数据库中没有自然有效的方法来对应。从数据存储的角度来看,在映射继承关系时,可以采用几种方式(参考JPA中的InheritanceType.定义):
使用单个表,在JPA中称作SINGLE_TABLE。整个继承树共用一张表。使用唯一的表,包含所有基类和子类的字段。 每个具体类一张表,在JPA中称作TABLE_PER_CLASS。这种方式下,每张表都包含具体类和继承树上所有父类的字段。因为多个表中有重复字段,从整个继承树上来说,字段是冗余的。 每个类一张表,继承关系通过表的JOIN操作来表示。在JPA中称作JOINED。这种方式下,每个表只包含类中定义的字段,不存在字段冗余,但是要同时操作子类和所有父类所对应的表。
Django的ORM也支持上述三种继承策略,同时,得益于python的动态特性,还支持代理模型和多重继承关系的映射。
本文转自:http://happylaoyu.i.sohu.com/blog/view/111505796.htm 估计入门时都会遇到的。我是在windows下用的Python25自带的IDLE编辑运行的,发现运行脚本得出的结果有一些中文显示是乱码,但有一些是正常的。百思不得其解。首先查看了一下源文件的编码格式,是UTF-8。经过搜索再搜索,调试再调试,也换了几个编译器,发现比IDLE还糟糕(可能需要进行encode设置)。问题终于解决了,一共花了俺将近5个小时,写在这里,希望遇到问题的人能搜索到这里,不再重犯…
eb服务器。在DOS里cd到准备做服务器根目录的路径下,输入命令:
python -m Web服务器模块[端口号,默认8000]
例如:
python -m SimpleHTTPServer 8080
在客户端编程语言中,如javascript和ActionScript,同源策略是一个很重要的安全理念,它在保证数据的安全性方面有着重要的意义。同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。那么什么叫相同域,什么叫不同的域呢?
…