热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

我思考,为了不让你思考!

最近一段时间,设计做的比较多,感触良多!而感触当中,最感慨的就是,我是程序员,还是一个使用者!其实,我是一个程序员!上一篇博文我已经给自己一个比较精确的定位。可是我觉得,当我在实际开发过程中,尤其是

最近一段时间,设计做的比较多,感触良多!而感触当中,最感慨的就是,我是程序员,还是一个使用者!

 

其实,我是一个程序员!上一篇博文我已经给自己一个比较精确的定位。可是我觉得,当我在实际开发过程中,尤其是在做概要设计和详细设计的时候,更多的时间,我要站在一个程序最终使用者的角度去看待程序,也只有这样,我所作的东西,才更合理,且更容易被人们所接受。而原因就在于,我所设计、所开发的东西不是给我使用,而是要给一个实际需要他的人使用,这个人十之八九不会是个程序员。

 

貌似这些话听起来有些绕口,也有些不清不楚的,不过这的确是个事实。

 

一个程序员在思考问题时,通常想的是程序实现的方式、方法,难易程度,如何规避掉一些问题(至少我是!);而一个系统的实际使用者,所想的就是功能是否强大,操作是否简单。好吧!让我弱弱的欢呼一下,因为矛盾出现了。

 

在完成某个功能的代码时,我们会想着如何简单高效的完成工作,而往往忽略了程序使用的效率问题;心情不爽的时候,我们可能会极其不耐烦的对待某个实现方式较为高深的功能,然后找一条所谓的“捷径”去替代;甚至有时候,我们会想着尽量少的改变原有程序去增添新的功能模块,从而使功能产生新的漏洞……

 

理论上,这些都没错,对于工作而言,没错。但事实上,错了,至少我认为错了。

 

这些做法都会导致一个结果,那就是在工作上节省了一小时,而程序转到实际使用者手里的时候,他们可能每人每天都会多花费几分钟,甚至几十分钟去完成他们的日常学习、工作、娱乐。假定一个erp系统当中的某张单据经过程序员的优化,效率及可操作新均有所提升,一个小职员在使用这张单子的时候,每天节省了一分钟时间,那一年节省了多少时间呢?如果是十个人呢?一百人呢?

 

或许每天一分钟对一个人来说,意义不大,但对于一个人的一生来说,意义是巨大的,对于一家公司来说,意义也是巨大的。

 

记得几年前,看过一本书,叫做《Don't Make Me Think》,书很薄,图很多。怎么看都觉得是本杂志。不过内容却可以让一个程序员,或者一个有思想的人受用。寥寥几十页,却向我阐明了一个程序员应该做的事——别让用你程序的人思考。然是异地以处,我们在使用别人开发的程序,浏览网站的时候,都曾产生过以下想法:

 

1、完全不知所谓!

2、我想看xxx,在哪呢?

3、这个钮是干嘛的?

4、怎么要等这么久才能看到东西?

 

如果夸大一点说,一个消耗比原始工作方式更多时间的程序,是没有存在意义的。

 

总之,都是些很令人烦躁,很痛苦的设计。并不是复杂的操作流程才能显示出软件的魅力,程序的高深。这就好比大夫给病人缝合伤口的时候,不是用标准的针法,反倒打了一个繁琐的蝴蝶结,会让人哭笑不得的。相反,一个简单,见文生意的设计才真的让人赏心悦目,才能真的让人称赞设计者心思缜密,滴水藏海。

 

操作简单,功能强大的程序,才是一个程序员应该最终追求的目标。正如我的一位好友博文中所讲——简单既是美

(http://blog.csdn.net/lingyun2005/archive/2010/11/30/6044531.aspx)。

 

说起来简单,实现起来,却是难度大大地。为了给最终使用者一个真正有意义的功能,一个有意义的设计,一个有意义的程序,程序员需要付出更多的时间,更多的精力去完善自己手中的每一个想法,每一行代码,也许没有称赞,也许仅仅只有一个掩在屏幕后面看不见的微笑。

 

为了这个看不见的微笑,那么就让我来站在使用者的角度去思考!

 

 

 


推荐阅读
  • 本文讨论了读书的目的以及学习算法的重要性,并介绍了两个算法:除法速算和约瑟夫环的数学算法。同时,通过具体的例子和推理,解释了为什么x=x+k序列中的第一个人的位置为k,以及序列2和序列3的关系。通过学习算法,可以提高思维能力和解决问题的能力。 ... [详细]
  • GSIOpenSSH PAM_USER 安全绕过漏洞
    漏洞名称:GSI-OpenSSHPAM_USER安全绕过漏洞CNNVD编号:CNNVD-201304-097发布时间:2013-04-09 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文是一位90后程序员分享的职业发展经验,从年薪3w到30w的薪资增长过程。文章回顾了自己的青春时光,包括与朋友一起玩DOTA的回忆,并附上了一段纪念DOTA青春的视频链接。作者还提到了一些与程序员相关的名词和团队,如Pis、蛛丝马迹、B神、LGD、EHOME等。通过分享自己的经验,作者希望能够给其他程序员提供一些职业发展的思路和启示。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了一些Java开发项目管理工具及其配置教程,包括团队协同工具worktil,版本管理工具GitLab,自动化构建工具Jenkins,项目管理工具Maven和Maven私服Nexus,以及Mybatis的安装和代码自动生成工具。提供了相关链接供读者参考。 ... [详细]
  • IT方面的论坛太多了,有综合,有专业,有行业,在各个论坛里混了几年,体会颇深,以前是论坛哪里人多 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • Jquery 跨域问题
    为什么80%的码农都做不了架构师?JQuery1.2后getJSON方法支持跨域读取json数据,原理是利用一个叫做jsonp的概念。当然 ... [详细]
author-avatar
手机用户2502928867
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有