2017年6月5日,心中,雨夹雪。
书读的少时,想得太多就很烦恼。
笔者作为一个准独立Android开发者和编程思想爱好者,看的闲书,大概也只能维持在一年一本或者两本(多还是诗集类的韵文),其他时间,都在看专业相关的书籍。其实书读的不多的人,也可以写些东西,就好像学历不高的人,也可以写出一手漂亮字一样。大家同为开发者,技术是我们的硬通货,但开发思想高度呢?难道要用工作经验来衡量?
最近经常查阅《Thingking in Java》,也偶时失眠,越厚的书,那纸张越薄。厚书薄纸的道理也是不难理解的。我是真的把这本书当做词典来查阅的,睡不着时,就在想何为标准,何为规矩,何为法度,难道书中所讲即为标准吗?
说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。 正例: alibaba / taobao / youku / hangzhou 等国际通用的名称,可视同英文。 反例: DaZhePromotion [打折] / getPingfenByName() [评分] / int 某变量 = 3
以上是《阿里巴巴Java开发手册》中截取的一段,像上面这种情况,在其开发手册中还有很多,这个公司在Java标准之下又新增了一些他们的所谓标准。无伤大雅,无关紧要,同时我也无话可说,大家自己思量。
- 我曾经有想过要写一些关于Karel的文章,也推荐诸位在网上搜搜,其实就是一个斯坦福大学曾经的课堂讲义,没有太多的内容,占用不了多少时间。后来写东西的事情夭折了,原因种种,不多赘述,单纯觉得里面另有一套标准,对于主角卡雷尔来说,我当这个标准为卡雷尔世界的法律法规。好的,我来开始今天的正题,编程思想,特别是Android的需求开发思想和法制到底有什么关系?
- Android开发讲求的是用户需求和用户体验。笔者曾经上线过一个小软件,是记事本类的APP,其实就是对SQLite数据库的CRUD,当开发大部分完成之后,我发现了一个BUG,当我做删除操作的时候,是按照Title删除的(这样就会删除同名文件),首先代码一定没问题,编译也能通过,但是这并不符合用户需求,那它就是违法。后来添加ID字段,并设置为自增长,然后再按照ID删除,这样才算是顺利解决。有时我们写的代码能正常运行,满足Java开发标准(如果不符合就报错咯),但为什么还是“违法”了呢?这个问题其实值得深思,你做一款产品是为了什么,就我目前的标准看,有一定受众人群,满足用户基本交互理解能力,这对于我个人来说就是合法的程序。
我上面一直在用法律的合法性来喻程序的合理性,接下来我把其颠倒过来分析一下。Android开发中,所有标准,貌似是开发者制定一套使用标准给用户,但其实是用户用自己需求制定标准给开发者,这种辩证关系,法律法规也该受用的。你用Java开发,编译通过没报错,你满足的就好像是国家基本法律。如果程序不符合正常用户的使用逻辑,这样也不对,就好像你犯的错误其实并不违背基本法律,但要是违背了那些普通法律细则,那也叫违法。那么问题来了,我们为了满足用户需求,去制定我们使用该款软件的标准,只要满足这套使用标准,用户就能得到自己的需求,而且开发者们为了不断满足用户需求标准,还会进行频繁更新迭代优化。那么,法律法规的制定,一旦有像开发者面对用户的勤奋,来对待老百姓,那么我国法律也不至于才达到基本健全的水平,其中存在的有法不依,执法不严的情况可能也不会发生。对待一个产品,如若不能满足用户需求标准,那就是死路一条。法律又何尝不是呢?
总结:产品需要迭代,才能更好存活。法制的存在,不能有一朝法定,万年无忧的想法。中国人自古就喜欢他妈的盲目安稳,也是因为个原因,大家对于房子和墓地都情有独钟。没有一个优秀的产品是一次开发,万年不变的,说法律无情,是不是就是在强调法律不健全。这不值得我们反思吗?
安稳定义:如果一次性给你五百万,你会想着怎么拿到一千万,要是一年给你十万,给你五十年,你打根上也就没有了拿一千万的心,这叫做绥靖。
诚愿诸位:不要绥靖人,也不要绥靖于人。