首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

曾经,我也是一名光荣的程序猿

编程不只是一种技能,更是一种思考和生活的方式。

算算自己其实已经快三年没有正mei儿ri八mei经ye地写过代码了。所以,这貌似是一篇迟到的文章。不过我所想写的,也并不是三五年前的事儿,而是十六年前,初识编程的那一小段时光。

当然,一开始,我仅仅把它当做一台打着学习的名义,在百无聊赖时打发时光的玩意儿。只不过当我熟悉了其所有的功能后,一直不明白“换算”这级菜单下的“GVBASIC”是什么意思。所以只好转而去玩“游戏”菜单下的“搬运工”。直至今天,从产品的角度看,如此重要的特色功能,入口藏得这么深,又没有合理的引导,这说明文曲星当年多么缺少一个产品经理。

“搬运工”一玩就是快两年,直到一个偶然的机缘,我看到了一个同学在他的文曲星下运行了一段GVBASIC代码。我的“潘多拉魔盒”就此被神奇打开,放出了一连串的“Hello, World!”。

借着那一小段代码,无师自通,从此走上了不归路。还记得当年高考前,别人在拼命复习,而我在CC800上拼命写游戏的日子……回头看来,那段时光却是我编程生涯中最美好的日子。没有需求、没有业务、没有KPI,只有天马行空的想象、追逐兴趣的快乐以及钻研技术的热情。当然,还有父母的训斥(在那个游戏被妖魔化的时代,一切与功课无关的活动都是不务正业)。

不过,最终使我被迫收手的,不是父母的管制,而是——按键疲劳失灵了。当时电子词典的按键,其实触点就是一层石墨,磨秃了之后,我又拆开贴了点锡纸,但总之不大灵光。现在想想,从那个时候我就应该知道,程序员需要一副好键盘。

可惜当时没有人告诉我这是编程,导致高考报志愿并没有选择计算机,而是选择了以为是画飞碟的飞行器设计。然并卵,这并不能影响我成为一个程序员的“悲惨”命运?

所以有时候想想,人生真是一种偶然组成的必然。有很多自以为深思熟虑的选择,却常常被命运开了玩笑。但无论如何选择,最终还是会回到最适合你的那个终点。以前常常不知道是我在控制着自己的命运,还是命运在控制着我。现在才明白,命运即自我,自我即命运。

我猜想,编程之所以让人着迷的一个重要理由,也是控制感。毕竟,在程序世界里,调兵遣将,尽在掌握。而喜欢做架构的人,还往往有着造物欲。毕竟,程序是对客观世界的映像。

就比如面向对象,只不过是将客观世界向虚拟世界进行映像的一个造物法而已。理解这个概念,与其去深挖定义,倒不如简单翻翻软件工程发展史。面向过程向面向对象的过渡,本质上和人类社会生产力的发展,导致的分工细化没什么两样。面向对象就是程序世界一种更先进的生产关系而已,它所要解决的,就是在程序规模足够庞大时,代码与代码之间如何良好分工协作,共同提高生产力的问题。

但更进一步的,这种分工再次回馈到客观世界,又推动了程序员彼此之间的分工。无论是从程序的架构,到类的划分,再到方法的定义,实际上都是对职责的划分,这种职责,一方面看是代码的职责,但落到实处,其实是人的职责。于是逐渐产生了前端、后台、数据库这种纵向分工的岗位,以及按照功能模块横向分工的岗位。

所以,面向对象绝不仅仅是一个软件领域的概念,举一反三,深入体会,可以有助于任何组织架构的划分和管理工作……

突然发现开始跑题了,程序员喜欢谈论技术的职业病又犯了。那么——就这样打住吧。

谨以此小文纪念我的职业程序员岁月

— END —

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171211G0VB8000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券