西西河

主题:【原创】编程心得 -- 荆棘探兴

共:💬198 🌺258
全看分页树展 · 主题 跟帖
家园 所谓纸上谈来终觉浅

这个结论很早就看过,只是觉得很虚,很形式。但事实上当有一天突然又想起这些分析的时候又觉得很有体会,但现在我仍然认为这句话很虚,可能是我理解仍然很浅,我觉得这个结论对解决我的问题帮助不大。

我现在最烦的是,编程过程中仍然有大量重复性的脑力劳动,无法用程序自动化,但每次东西都差不多,模式都差不多,就是这里改一点那里变一点,大量的底层支撑细节要处理;其实在看到一个需求的时候我脑子里已经有了一个设计,而且觉得自然而然就是这样的,根本就没啥特别有新意的东西嘛,但做的时候很快就淹没在细节里了,而且这就是我现在工作的主要内容。当然这可能是我现在做的东西都比较小(大部分在20K行代码以内),但一直就在想这个问题,既然计算机就是用来处理重复性劳动的,有办法解决这些复杂一点的重复性编程不?就算不能完全代替自然语言所能表达的内容,那能由人脑处理完关键信息后剩下都由编程解决不?为啥做一个不同的需求时,需要重新做的事远不止需求上的一点不同?一句话,我还是觉得现在的编程语言层次还是太低太低。

做为一个一线工人,我有个浅见,我觉得现在看到的东西里有个东西做得比较好,就是浏览器(浏览器还一个名字叫layout engine),在做UI布局方面,我觉得HTML/CSS的抽象层次就很高,基本上写出来的东西就直接对应着一个一个的需求,对大部分需求无细节或很少细节需要处理,不需要一堆if else,不需要计算来计算去,简单说,不需要为支撑需求做太多底下功夫,“哥做的直接就是需求”。最近我做客户端程序,写一些支撑库,布局(及各种各样的动态变化)和事件处理就是按浏览器思想来,用一个很智能但规则简单的东西满足各种各样的变化,解决了很多重复性劳动;现在看来的确省了不少事,但这还是只是大量重复性细节中的一小部分,而且是比较低技术层次的事,更不要说别的重复性劳动了,完全想不出该搞个啥库才好,要么写的库太specific,要么就太空或是不现实。有时候我想,这里可能就是我软件设计能力的顶了。

乱扯一通,希望与大家交流。

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河