在网上搜这个名字,发现没啥好内容,除了有个介绍简短的编程历史。想来自己写一个试试。游戏不好写,这些往事应该还可以些。
主要想找一些编程里遇到的事情,通过代码和工作里需要做的开发。
编程可以做很多事情,一步步迭代。自己做起来的话,好像又没有什么可做的,自主开发的话。想起来以前学习的时候大多在了解框架是怎么运行的,好像对编程里边的设计是一个可以好好钻研的课题,而且好多搞不懂的东西。随着参加了一些工作,渐渐有些不是那么很在意那些事情,似乎可以去关注另一层的抽象。
最近遇到的好事,就是上次工作的时候比较有经验的同事说的一句话。“你这样做不就是想把功能放到一个地方容易维护吗”。没有啥设计上的名词,直接点透本质的感觉。我在那里一层一层的关联类,似乎一句话被弄懂本质。虽然这样说听上去有些搞笑。
大部分时间都在设计功能,更大部分时间其实是在完成基本可用的功能,只是在意的部分是那小部分时间的功能设计。总是想着怎么排放这些用例才可以让所有的事情通过类和类的交互很容易地串联起来。比如这个类是这个名字,那么相应地应该聚合这样那样地功能。这个包是这个名字,相应地聚合相关地类。或者说把这个包该具有地功能划分出相关的类。站在类设计和封装的角度,有很多可以钻研和考量的事情。像怎么把合适的功能职责挂载到合适的类,这样以后想找这个功能的时候,会很容易自主寻觅到这个地方,并且以后类似的功能也可以很容易安置在这个地方等等。会思考很多事情,显得有些凌乱。 其实这样做的目的,只是 容易复用。围绕这个中心一切都方便了很多,也没有很多取舍,直接把功能写出来放在那里。稍微做一些可见的聚合,然后就不需要做更多思考了。或者说即使还要做更多的思考,也有了主心骨,朝容易复用靠拢就好。 那些面向对象之类的观点,显得不再那么迷乱。就像和写C代码一样,经常用到的功能放到一个文件里,类似的文件放到一个文件夹里。差不多是这样。编程的思想没有变过,只是多了一些显得无厘头的高级描述。
在这些描述里展现出很多门派,在诉说着很多内容。似乎每一个方面都有研究的方向。不清楚各色各样的编程人会遇到怎样的编程往事。