经常听到有人说工具不重要,思维才重要,还有,语言不重要,思维才重要。
思维的重要性是毋庸置疑的。
那么,究竟工具、语言重不重要?貌似没有人质疑过此问题。
举几个例子。
1、在一台配置较为普通的电脑上,用Altium Designer打开个四层板,要几十秒时间,想拉根线,都卡得要死。但是用PADS或者Allegro都能秒开,而且轻松拉线。
2、维修时,手头上没有示波器只有万用表,查了半天,还是让老大出马,他用示波器几秒定位了问题。
3、写verilog时,使用case语句穷举32种情况,每种情况都只改个下标,手工输入要2分钟,用python脚本,几秒完成。
4、在Orcad下,画32根并行总线和网络标号,手工画要2分钟,用TCL脚本,几秒完成。
5、使用国产无固件库MCU,花了两周时间自制固件库,但是用ST的MCU,可以节省这段时间。
6、写verilog时,使用quartus或ise自带的编辑器,总想去copy以前写的always语句来改改,用sublime瞬间完成。
7、使用MDK开发STM32,想查个函数都要思考一下,跳转几次没找到,但是用CoIDE瞬间找到。
这么说起来,工具还是挺重要的嘛。
再举几个例子。
1、使用VC自带的MFC开发GUI,动不动就编译不过,一出bug少则查两周,多则查几个月。使用C#的WPF则轻松完成任务,不加班。
2、某公司使用函数式语言Erlang开发软件,一名程序员辞职后,公司招了几个月,还没找到合适的人选。
3、使用JAVA开发某算法,发现执行效率达不到要求。
貌似语言也是挺重要的。
虽然不知道说“XX不重要,思维才重要”这句话的始作俑者,但是以我的经验看来,工具和语言都很重要。选择好的工具和语言,一来可以提高开发效率,二来可以避免招不到人导致项目被耽搁的尴尬境地。
所以,我们要培养一种大局观,去审视整个项目的细节,而不是抛下“XX不重要,思维才重要”这句话,让别人掉坑。