《那些年啊,那些事——一个程序员的奋斗史》——35
最后更新于:2022-04-01 11:50:09
段伏枥好不容易搞明白窗口创建的流程之后,接下来的事情,倒是让他发愁了。UI界面肯定不止是一个界面那么简单,还有什么背光设置啊,多媒体之类,那这些应该如何组织呢?之前段伏枥的做法,是将所有的函数写在一个文件内,当然那是只有一个窗口的情况下,一切都好控制,但现在是有这么多窗口,应该怎么弄呢?每个窗口都用一个文件,这是必然的。可是,函数要怎么命名呢?比如主窗口的创建函数叫CreateWindow,由于形参什么的都是一样的,设置窗口的函数就不能叫CreateWindow了。难道在前面加个前缀,变为SettingWnd_CreateWindow?虽然是可以,但这也太麻烦了吧?毕竟大家都是窗口,重名的函数会非常多,特别是窗口也多,这么一来,这些函数的命名也太混乱了吧?甚至可以说,让人看了觉得恶心想吐。有没有办法可以让不用改那么多函数的名字呢?
段伏枥想到了类这玩意。他不管三七二十一,每个文件都套上class这个关键字,比如主窗口就叫CMainWnd,设置窗口就是CSettingWnd,然后成员函数无非就是什么CreateWindow之类,也就避免了之前要在函数前加前缀的尴尬。但段伏枥使用这个类,也仅仅是用其形,而不知其神。功能类似的函数,段伏枥的做法是:复制,黏贴,修改,而根本不是什么继承之类。所以段伏枥现在使用类,其实只是批上了一件外衣,没有真正用到C++的精髓。这也无可厚非,试问哪个高手一开始上手就懂得在实际使用中如何很好地使用继承啊,虚函数之类的?这些都是在慢慢的代码书写当中,一点一点领悟的。但如果一开始就惧怕,甚至于拒绝使用这些高级特性,那么也就意味着从来没有踏进这个门槛,谈何来的进步。甚至有些程序员还会想,这些东西我还不会用,等我技术水平高了,回头再来使用;可问题是,隔行如隔山,如果你一直不用,那么面前永远就有一座山,只有开始使用了,才能翻越这座大山,看到胜利的彼岸。
于是,在段伏枥的代码中,第一次出现了类这个玩意。虽然离精髓还差了十万八千里,但在面向对象的实际道路上,迈开了第一步。
这几天老柳也是开始忙了,因为板子已经回来了。一般的车载产品,常见的流程是从原厂获得开发板,配套的资源自然有BSP代码和原理图。然后驱动工程师根据CPU的资料,以及原厂的原理图,和硬件工程师相配合,得出和需求相符合的原理图,这个时间一般在五天左右。之后便是将原理图交给画板工程师进行布局画板,一般也需要两三天。当然,如果器件比较多,那么所花的时间更久。接着便是找相应的工程打板,这也有一些讲究。如果工程管控不佳,也不做相应的飞针测试,那么这板子很可能短路。板子回来后,便是贴片。如果是大批量,这倒不是个什么问题,直接用盘料上贴片机。但对于只有十片左右的样板,这是不切实际的,所以往往采用手贴的方式。正是因为这种需求,深圳有不少手贴的公司,不仅生存没问题,甚至还活得很滋润。
但从利剑公司成立伊始也不过两周左右,如果从时间点来算,短短根本不可能完成从原理到贴片的流程;但事实摆在眼前,板子不到两周已经回来。也就是说,在浩程微的时候,老柳不仅仅是学习了AU1200的相关资料,其实已经偷偷地开始这板子的前期准备了。只不过对于硬件一窍不通的段伏枥来说,暂时是不明白这其中的道理的。
虽然黄华中和老柳在作风上说不上什么正派,但在产品的设计中还是有一定的亮点的。这款手持式产品采用了核心版+主板的方式。核心版主要放置了CPU,内存,FLASH,然后引出所有的引脚;而主板,则是搭载了GPS,蓝牙等外围器件。这样做,其实在很大程度上也起到了降低成本的作用。因为AU1200的引脚不少,所以布板必须要用六层板;而如果像主板这样的大小都采用六层板的话,不仅没有必要,并且也极度浪费。虽然在构思上很取巧,但还是有些小问题,那便是核心版和主板的连接部分,采用的是插座的形式。在汽车颠簸的环境,这插座很容易松动,从而导致接触不良。这个隐患其实和浩程微的A6的微硬盘如出一辙,但刚开始谁都没有放在心上,仅仅觉得A6的问题在于料件不过关而已——只要使用正品的插座,那么一切都会顺利。
一般来说,产品的第一版,因为大多数是参考开发板然后直接按产品的规格进行重新设计的,所以通常会出现不少问题。自然现在打的这一版,也逃脱不了这样的厄运。老柳所能做的,是将程序下载到FLASH,查看系统能否跑起来,也仅仅如此而已。因为板子的LCD显示不正常,嗯,应该说“不正常”已经是算是抬举了,其实是根本无法工作。虽然老柳做驱动,平时少不得和硬件也有所打交道,但其实对硬件也是知之甚少,遇到这种情况也就束手无措,只能等待王健来解决。不过,王健白天因为还有自己的事情要忙,所以一般都是晚上六点之后过来,然后大家一起吃个小饭,大概七点半左右才开始真正开始调试。也许武总本来对黄华中和老柳的技术实力就存在疑问,或是生怕这两人会偷懒,所以他下班后也会赶过来,呆在办公室,什么都不做,就盯着他们在调试板子。
只不过这样一来,段伏枥要陪着受罪了。正常下班是六点,晚上九点下班已经是很晚了,那时候的段伏枥已经非常疲倦,根本就无法集中精力去写代码,对着电脑已经麻木,一片空白。但武总在旁边,想偷懒又不敢打开网页,偶尔也只是上上QQ,和朋友打哈哈几句。除此以外,就是盯着代码,犹如行尸走肉一般。段伏枥已经疲惫到了极点,可又不能走,应该说是不敢走。当板子回来第一天的时候,段伏枥九点下班,武总非常惊讶地说道:“啊?你这就走了哦?不留下来一起奋斗啊?”
结果第二天,段伏枥就不敢九点下班了,只能一直拖到十一点,公交只剩最后一班的时候,才带着愧意回家。可是即使是这个时候,武总也会很惊讶地重复这句话:“啊?你这就走了哦?不留下来一起奋斗啊?”王健是六点之后才到的,肯定不会九点就回去,否则那一两个小时能干得了啥?所以一般都是拖到晚上12点之后。可段伏枥已经干了一天的活,哪里还有那么多精力陪着他们折腾?
呆着,脑子已经疲劳得不听使唤;回家,又要忍受武总的白眼。于是,晚上的段伏枥,就处于一个非常尴尬的状态。可是武总才不管这些,给段伏枥的感觉是,不管晚上在公司能不能做事,或者有没有什么事可做,那都不管,只要呆在公司,那他就觉得舒坦了。虽然这感觉很糟糕,但段伏枥想着,公司刚成立,辛苦一点就辛苦一点吧。
其实黄华中和老柳如此的拼命也是有其原因的。前几天吃饭的时候,黄华中就说了,公司的股份,黄华中和老柳各占30%,武总占40%,段伏枥没有。当时段伏枥听了,也没觉得什么不妥,觉得自己是菜鸟,还有很多东西要去学,现在人家给了这么好的一个机会,还有并不算低的薪水,自己如果还要更多的东西,怎么良心上都觉得过意不去。何况,公司大了,难道还会亏待自己吗?黄华中不是说了么,报酬可是大大的。只不过,股东忙算是给自己打工,段伏枥这忙,也只能是舍命陪君子了。
不仅仅是平时的晚上,周六也搭进去了。也就是说,一周七天,有六天加班,并且这六天还是九点上班,十一点下班。难怪乎做程序员的,单身的为多。可这有什么办法呢?一周只有一天的休息时间,估计大部分的人都选择睡懒觉,这么一来,唯一的一天休息就过了一半了。试问,哪里还有多少机会去接触异性?即使好不容易找了个女朋友,可这三天两头见不着面的,还能维持多久?对于这点,段伏枥深有体会。
话说有一天十点多,武总为了犒劳大家,让段伏枥到下面的肯德基去买个全家桶。在等待食物的时候,看到不远处有个穿得性感的标致女孩,正在搂着一个帅帅的小伙子。因为这女孩子确实长得比较漂亮,所以段伏枥忍不住多看了几眼,但没想到听到的话语,却让他大跌眼镜。只听见那女孩对着小伙子说:“没事的,我们还有的是时间,我老公是做IT的,他现在还在加班呢!”
老公……IT……加班……还有时间……那一刹那,段伏枥凌乱了。以前做IT是一件光荣的事,现在咋成了贬义词了?比如说,骂人可以骂:“你才是做IT的!你全家都是做IT的!”只到此时,段伏枥才觉得做IT有那么点凄凉,不仅为那女孩的老公,同时也为自己;但转眼想到自己还是一个人,不用担心会顶着个绿帽,倒也阿Q精神舒心了一把。只是,现在能有更好的选择吗?除了程序员这行,自己还能做得了什么?喝不了酒,抽不了烟,做销售连个基本的入门资格都没有。哎,还是好好走程序员这条有前途的路吧,让别人七嘴八舌说去~提着买到的全家桶,段伏枥哼着小调往办公室走去……