感悟:几年来编程的感想

2003年,中考结束,意外得到一本《BASIC》编程的书,于是用自己的小霸王学习机的 G-BASIC 编程。

小霸王 G-BASIC 不支持小数(除法运算的结果都是整数),但是自己写成了 质数算法。

G-BASIC 语法 和 书本中的语法不一样,如:书本中  20 NEXT A     小霸王中需要写成  20 NEXT'A(很多类似的不兼容语法都是自己发现的)

2005年,高二,用同学的文曲星BASIC编程。写下了一个 4000 行代码的小程序。

也是那时才知道 文曲星电子词典 的主要编程语言是  Lava ——Lava 之父 Lee 改版Java发明了她。

2006年,孝感学院,进入计科系,开始了我的程序人生。

C,C++,Java,C# 都学过。

Office办公软件学完之后,在PPT演讲比赛《做最好的自己》中,得了二等奖。

学完基本Java之后,Java算法大赛得过一等奖(很简单的二进制转10进制的算法,但我写算法时,支持了多进制互转)。

学到C#之后,开始喜欢上这个语言。

2008年,自己经常沉迷于 四国军棋,PPS,荒废了不少时间,于是我写了 “梦中女孩 1.0“ 用于管理自己的电脑,限制游戏,电影 软件的运行——人,如果不能控制自己的欲望,和动物有什么区别呢?

后来,学到了C#的分层思想,于是扩展了 “梦中女孩 2.0”,内存从  60M降低到 20M。

2009年,一个网友季鹏给我发了一个小软件让我帮忙测试,软件功能是生成代码实体类的。于是我开始了写自己的 代码生成器,前后经历了  CodeCreate 1.0,2.0,2.5  AspGreat 1.0

2010年4月,开始工作,开始发现 AspGreat 代码生成器 有些不适应企业的某些开发,或者意识到 代码生成器的一些弊端——不利于代码的修改,不利于复杂代码的生成。

公司里面,参与了Suf 6 的一些金蝶条码的单据开发。

参与了Flex 的研究,写了一个  审判流,投票流 的业务 Demo。

2011年,在广东江门出差4个月。参与公司标准产品Suf 7 的核心开发。自己的代码量 25%。

对于Suf 7,我还是有点不喜欢  DataSet,DataTable 的数据交互方式。

出差期间,自己住的地方没有网络。无聊之下,自己开始在下班时编写 WebCreate 1.0 2.0  ,同时写成了自己的一个简单的数据库实体框架  Forever.Data 配合代码生成器。

2011年7月,因为三哥的案子的败诉,失望之下,选择了离职 上海隆腾。

离职一个月时间,将 WebCreate 升级到 2.5,Forever.Data 框架升级为稳定的 Forever.Source 

同时将  SqlForever 升级到 2.0——一个跨数据库的客户端。

2011年8月,因为在离职时,我承诺不会带走公司的任何源码,不加入任何与上海隆腾有竞争关系的其他公司。所以从  WinForm 转战 Web,加入了 上海订餐小秘书。

喜欢订餐小秘书的管理方式:公司有自己的台式电脑,员工不能使用自己的笔记本——这让自己和公司都有了名誉保障,利益保障——公司不用担心源码被带走,员工也不用担心下班后还要心力交瘁的忙于项目。

小秘书参与了 内网的 4-5个项目,十几个一天完成的小软件开发。

参与了 外网 的 积分兑换 功能。

最后用1个月时间,完成了 从别人网站扒取  商圈,菜系,餐厅 的扒取软件(分布式,IP变化,递归扒取)

软件在 扒取了几百万家餐厅数据之后,正式宣布稳定。

下班时间,将 Forever.Source 框架升级为  Beetle.Source 框架。

写出了王牌算法:字符串计算。对象集合的字符串指令排序,对象集合的字符串指令检索。

2012年4月,一起来上海,住在一起的朋友要回武汉创业,于是我也离职回去了——毕竟,年轻时没有尝试创业,我怕自己会后悔。

2012年5月,官网上线。战略制定。

我负责WinForm 的进销存开发。老赵和大姐大 负责 Web项目。

期间,我单独完成了一个  管家婆 的 WinCE 软件开发。

老赵大姐大完成了2个网站的开发。

2012年9月,人心思变,创业正式失败。

这段在武汉的时间,

在开发官网时,完成了  王牌Asp.Net 服务器控件 的开发,支持配置式的 网页编程。

在开发进销存时,完成了 王牌二进制字节流的序列化算法——支持WinCE (微软的二进制流不支持WinCE序列化)!并且用到了自己的进销存中,完全稳定。

2012年9月 - 2012年10月,在家里帮忙爹妈过忙月,做农活。同时学习——“何为人情”!

2012年10月,前往桂林解救陷入传销的结义兄弟。

2012年10月,抵达北京,开始新的职场生涯。

————————————————————————————————————

对于算法,程序,架构。

从各种算法中积累。从程序编码中总结。从程序的升级中蜕变。

走过了代码的复制粘贴。

走过了代码生成器。

走过了框架集成。

也走到了现在的超级控件。

编写代码行数超过20W。

思考的王牌算法4-6个。

完成的王牌程序6-7个,业余程序几十个(公司项目不包括在内)。

抽象的框架程序集 10多个。

整理的各式文档50多份。

我知道,自己并没有站在软件架构的顶端。

因为每次当我完成一个让自己自豪的软件而自满时,我也会发现自己软件的弊端和升级的空间。

完成,总结,升级,抽象 ——这似乎一直是我改变程序认知的方式。

————————————————————————————————————

但是,两年了。

相比之下,我可能更多是希望能多和人打交道,而不是程序。

我不希望自己在程序的世界中变得 不谙人情,不食烟火。

孤独的编程可能终究是一个深渊....

时间: 2024-10-20 04:43:11

感悟:几年来编程的感想的相关文章

跨平台ionic和angularjs编程应用感想

WordPress插件小结拖了好久还是不想现在写,既然都拖了那么久了,那再久一点吧.现在还是想写点ionic平台结合angularjs的编程应用体验. 最近由于健康问题,感觉已经进阶到了以下的第三阶段: (原图来自网络) 断断续续的写了快一个月的ionic+angularjs的手机应用.先说说为什么会选择ionic: 各平台上的界面好看,对的,就是好看,就是颜控 对比像monaca之流,其实两者各方面相差并不是很多,单个人偏爱ioni.两者都支持visual studio.Monaca有onli

菜鸟学编程总结集——帮你找到初学编程的回忆

到了期末,照例让同学们都写一篇学习总结.学习工科的同学,写写软文,这个能力还要有.没有刻意强调,有些人可以选择在考试完了以后再写. 这是教这门课的第三年,想将他们的总结做个链接了,这样的文字,远比看代码来得感触多一些.初入大学的同学们开始编程之旅,他们的视角,他们的困难和感受,很多过来人都忘记了. 好吧,少叨叨,上链接. 2011级 教学博客 学生名单 2012级 教学博客及学生名单 2013级 教学博客及学生名单 文体不限,自由表达,他们放得很开 很实在的总结,后悔给他们加了限制 又文体不限了

【JsConf 2016】NingJS, 2 days in NanJing —— The second day

这次参加 Ningjs主要是带着任务来的,所以在记录讲师内容的时候尽量保证客观,避免因为自己的主观情感上的评价误导或影响其他没有到场的同学对讲师内容的理解,这也是我希望大家能够坚持的一个原则,看到别人对某个技术或者某件事评论时,保持独立思考. 在"关注点"和"感想"中会给出一些比较中立的.客观的评价和我的一些思考,同时也会对一些我认为所讲内容容易被误解或者没有讲到位的地方明确指出来,希望大家看到我的提示以后能有所思考,欢迎交流. 9月4日上午 单页应用"联

我与SDN的缘分:一名初学者的学习之路与心得

去年十一月,我在大三的计算机网络课程上与SDN初识.今年三月中旬,我有幸得到老乡学长北邮– 李呈的指引,真正地与SDN结缘,悄然走上学习之路. SDN,Software Defined Network,是对传统网络架构的一次革新.经过短短三四个月的学习和实践,我本着授人以渔的理念,辅以我的一些理解,将我的学习历程和心得叙写出来,送给各位想要入门的或跟我一样刚刚入门的朋友们.文中有理解不到位的地方,还望各位朋友不吝赐教,非常感谢!SDN,软件定义网络,我们关键就是弄清楚三件事:网络.软件.软件与网

最近几年的编程感悟(1)(转)

  最近几年的android编程感悟与经验现总结一下,看大家有没有类似感受.这里主要我主要是抛个砖,有玉的尽管上哈--   1.客户端的功能逻辑不难,UI界面也不难,但写UI花的时间是写功能逻辑的两倍.   2.写代码前的思考过程非常重要,即使在简单的功能,也需要在本子上把该功能的运行过程写出来.  3.要有自己的知识库,可以是一个工具类,把写过的,看过的好的代码放进去,也可以是一个笔记本软件.因为只有放在知识库里的东西,才是你最重要的财富.       4.如果你想做自由职业者,你需要学英语,

最近几年的编程感悟(3)完结

        1. 最近几年的编程感悟(1)         2. 最近几年的编程感悟(2)        文章排版非我所长,各位童鞋讲究着看吧!   51.你可以抱怨工作中用的技术太杂太陈旧,但不能消极对待.在任何项目中你都可以学到东西,就看你是否主动.       52.不管你今后的方向是技术还是产品,工作中你都要站在客户的角度上编写代码.你刚掌握或了解到的新技术,并不是马上用到工作中.       53.任何你花费3天还是没有头绪的问题,你都要放弃目前的思路.       54.掌握更多

最近几年的编程感悟(2)

      由于公司组织旅游,所以耽搁了.第一篇的时候看大家反应比较强烈,所以继续进行总结.如果有不当之处,请大家多多批评! 第一篇直通车 最近几年的编程感悟(1).    28.看android技术书籍最快的学习方法,先通读一次.然后把书本上的demo一个一个写出来.不要觉得太容易不去写.很多东西都是这样,看起来简单,但做起来难.最后再对照自己写出来的程序代码去理解书本的意思.     29.应用和游戏是2个方向,没有一个公司会同时做游戏又做应用,即使是外包公司,大多也只做一块.专精一个就可以

编程即人生:从编代码中学到的三条生活感悟

"如何从一堆袜子中将它们高效地各自配成一对?" 你可能会想,拜托这么无聊的问题有意思嘛?不过作为一名程序员,这类的"奇葩"的想法还真是时常闪过脑海.哈哈,当你把这类问题拿出来和那些非程序员讨论的时候,你能想象他们满是黑线的表情吗? 其实编程就是在持续不断地解决问题,在这个过程中,你会考虑该使用什么样的语言,是否要把你写的代码归类或者分段,如何组织代码?如何让代码运行地更高效?在花了一段时间编程之后,你就会注意到你开始不由自主地将这些技能应用到日常生活中. 但这并不是

漫谈.Net PetShop和Duwamish ADO.NET数据库编程

ado|编程|数据|数据库 概述 ADO.NET为我们提供了强大的数据库开发能力,它内置的多个对象为我们的数据库编程提供了不同的选择.但是在允许我们灵活选用的同时,许多初学者也很迷惑,我到底是应该使用DataReader还是应该使用DataAdapter?我只想读取一小部分数据,难道我一定要Fill满整个DataSet吗?为什么DataReader不能和RecordSet一样提供一个数据更新的方法?DataSet到底有什么好处? 在本文中,我将对.net PetShop的数据库编程模式和Duwa