工具杂谈
最近接触到很多关于编程一些应用领域的工具,这些工具都有一个特点,就是希望使用者更多的使用鼠标拖拉操作来完成更多的工作,让人更少的接触到技术的底层,知道得越少越好。
话说到这工具,如果要让工具能应用到尽可能多的场合,就要让工具应用的环境更多的参数可配置化,但很多的配置却需要使用者花很多的时间来了解该工具的配置方法,而这又会使一些使用者放弃使用这个配置复杂的工具,而使用其它一些专为自己订制的工具,这就需要处理一个平衡问题,就是通用性的需求与复杂配置成本的平衡问题。
像电子邮件客户端软件,MS的Outlook里有大量的配置工作,可以添加很多的邮箱帐号,然后建立相应的文件夹,之后订制规则使指定的邮箱收到的邮件放到指定的文件夹中,而避免使全部的邮件在一起难以区分。但Foxmail就没有这么多的配置,每个邮箱帐号会自动生成自己的各种文件夹,这就使配置简单化。其实,Outlook还有大量的可配置参数选择,让人看得眼花缭乱,如果一不小心,可能作了一些自己都不想的处理,比如删除了服务器中的邮件,所以要花很多的时间来了解Outlook的配置工作,这上工具的配置成本就很高了,这样就会使一些用户放弃使用Outlook,而使用其它的工具。
几天前看到有人在QQ的技术群里问,GAE里怎么读取“file控件”的内容,我就说了,这“file控件”是微软某些工具的概念吧,怎么拿到GAE这里提问呢。这又是一个工具的使用者。
我把WEB编程入门者分为两种,一种是喜欢微软的,一种是不喜欢微软的。喜欢微软的编程入门者就会比较喜欢用工具,工具的拖拉过程就会使用到很多的控件概念,他们也许学的是C#或asp语言。就把大量的时间用在工具的使用上,并认为能熟悉使用那些控件就是掌握了该语言。生成一个表格要用到表格控件,一个file类型的表单就用所谓的“file控件”。不喜欢微软的编程入门者就能从底层的html语义上掌握了WEB编程的本质,无非就是HTTP请求的提交与服务器的处理,要用表格,直接写table标签,表单也都自己写,而不是拖出来的控件。这两种入门者谁学得更扎实,大家都心中有数了。
当然,如果工具用熟的话,工作效率能得到保证,这是蝈蝈跟我说过的一个观点。对于那些已掌握该工具原理的程序人员来说,确实有些道理。但对于编程学习入门者来说,也许并不是一件好事。
开发者分为支持M$和反对M$的,这个观点挺有意思
这说明我是非MS的了