您的位置:首页 > 其它

绝不放过任何问题也是开发人员最优秀的品质

2013-07-25 09:45 190 查看
本来标题是解决问题的思路,仔细一想,这个标题有点太大了,最后有改成现在的标题。不过不影响自己近期的一点思考。

举个例子,不断的发现开发人员在撰写sql时的让人诧异的表现,虽然结果是对的,但是写法实在不敢苟同。当然可能不同人写出来有差异也是正常的,不过如果使用类似于自然语言来写sql恐怕大部分情况下效果会很差。sql毕竟是一门专业语言,不同DBMS实现机理不同,效果自然不一样,写sql重要的是:1、正确性。语义正确、结果是想要的内容;2、有效性。效率高、易读性好,充分利用数据库本身的特性。然而大部分程序员并没有受过专门的教育或者专门的学习过,因此主要是满足要求1.

我面试过很多开发人员,每次都肯定会问到一些数据库方面的,这点之前也提到过,毕竟是企业内部开发,数据库的使用必不可少。但是大部分人都只是了解一些,道听途说也好,确实看过一些也好,但是都不能进一步解释,自然也没有验证或者实践过。其实保持好奇心和探索的精神非常重要,特别是对于IT人员来说。并不要求大家有多精通,而是至少应该有一些理解和意识,并且通过实践来积攒经验和知识。

另外一个例子就是,sql本身操作的是数据,数据结构设计的如何以及数据质量如何对其产生非常重要的影响。在数据结构设计不好或者数据质量不太好的情况下如何解决问题,才是我今天说的重要内容。很多情况下大家满足于多一事不如少一事,写出能够跑出结果的sql就行了,然后赶场开发下一个程序。比如可能由于某些原因,数据库表本身没有增加主键约束或者非空唯一性约束,但是从业务角度来讲或者设计角度来讲,本身内在有这样的要求,由于在程序层面已经导致极少数据出现重复编号,这时有不少程序员直接使用distinct或者干脆group
by来获取唯一的信息,这本身就是基于错误上的错误,掩盖了问题,并且sql导致效率更低。我更欣赏,哪怕是花费多一些时间也要解决这个数据问题,而不是为了眼前尽快干活而置之不理。绝不放过任何问题也是开发人员最优秀的品质。

其实如果真的有这样的品质,我相信他一定干什么都成!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: