有感而发,欢迎讨论。我对软件开发的几点认识。

老夏Max 2008-06-14 06:07:00
加精
最近在论坛上看到很多热议语言和前途(钱途)的帖子,很多人在热议:我有多少多少年工作经验,我会多少多少门语言,我做过多少多少个项目,等等。我现在以我的个人观点来说一说:
1、能力是否强和工作多少年无关。同样是工作,但是可能在不同的公司、从事不同的项目、不同的工作流程和工作压力,即使是相同资质的人也会获得不同的知识和经验。
2、会的语言多并不能代表能力强。人的精力是有限的,一个人不可能同时精通很多东西,多而不精的人只适合做架构师,还需要他或者她有丰富的项目经验和对软件背后的本质的深刻认识。
3、项目的多少并不能代表实际能力。姑且不论项目的大小区别,且谈自己在项目做所充当的角色才是公司和雇主所关心的,还有就是项目的相关性和连续性也是考察的一方面,东一榔头西一棒的项目经验其实也是没有太大作用的,个人觉得软件的精细分工的时代已经到来,项目再多、工作经验再长也只能代表你对开发工具有多么熟悉。

说了这么多的东西,乱七八糟的,呵呵,也许该说说我觉得什么样的人才是好的人才:
1、诚实、有热情,不浮躁。不是仅仅为了糊口而工作,对这个行业有足够的热情和耐心。
2、精通一门语言,熟悉算法,并且能看到语言背后的东西,最好能对语言的本质和硬件的关系有所了解。编程风格良好、认真。
能写让计算机认识的程序的人很多,能写让别人能认识的程序的人很少。
能写正常情况下运行正确的程序的人很多,能写在各种情况下都能运行正确的程序的人很少。

3、某一行业的长时间的工作和项目经验。
4、良好的团队合作能力,沟通和表达能力。
5、足够好的英语能力。
...全文
2500 225 打赏 收藏 转发到动态 举报
写回复
用AI写文章
225 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzg0001 2008-08-27
  • 打赏
  • 举报
回复
[Quote=引用 64 楼 rageliu 的回复:]
5、足够好的英语能力。

这条太让我伤心了
[/Quote]

1、MFC中的逻辑坐标和设备坐标是什么意思,有什么用,怎么转换?
这是 windows 本身的概念,不是 MFC “创造”出来的,一个是程序中“指定”的位置坐标,另一个是屏幕上“实际”的位置坐标,两者通常情况是 “相同”的,不过可以更改其间的映射关系,即不一定都是“像素对应”的,也可以是“英寸”等。好像除默认模式以外的各对应模式的逻辑坐标 Y 方向都和设备坐标 Y 方向相反。
MFC只是借用了这一概念,体现在滚动条的实现上,每调整滚动条就调整两个坐标的体系“原点”,使程序不必关心滚动条状况。

2、C++的虚函数在内存中是怎么表达的?纯虚函数又是什么东西,它又有何用?
构造一个对象时先在内存中构造父类对象再构造子类自己的部分,虚函数在内存中什么位置 ? -- 没想过,覆盖父类对象内存? 不太可能,应该是修改类对象虚表指针,使指针指向子类自己的函数地址(不过是不是有点浪费内存?)。
纯虚函数有什么用? 1.给子类定义函数接口、子类必须实现; 2.纯虚类不能构造对象 -- 没想到别的用处!

3、菱形继承灾难是什么?怎么解决?
假设 A 类有一个数据成员 a,B、C 类均继承了 A 类,则 B、C 均有了一个数据成员 a,类 D 同时继承 B、C,则 D 对象也有了一个数据成员 a,问题是此时 D::a 指向对象中 B::a 还是 C::a ?
怎么解决? -- 在 D 类中使用 a ,加上所属标识 B::a、C::a 行不行?

4、C++的继承和包含是什么意思?分别在何种情况下使用?
继承:子类对象的内存固定有父类部分存在,且每构造子类对象总是要先在内存中构造出父类对象再在后面加上子类自己的部分。
包含:父类对象(这里其实不再是“父”类)只是子类对象(这里其实也不再是“子”类)的一个数据成员。

5、多线程的一些同步措施是什么?各有何优劣(即适用的情况)。
个人一般情况下只用关键代码段和事件对象,前者工作在用户级别消耗小,但一个线程死掉可能造成其它线程也“挂”死,后者是系统内核对象。
一个线程对一个对象只有一个引用点,用该引用点只是简单 32 位变量时根本不用访问控制。


=========================================================================

随便答一下,看来很长一段时间还只能在目前 2K - 3K 之间混日子了!


iamcaicainiao 2008-08-27
  • 打赏
  • 举报
回复
up
树先生 2008-08-27
  • 打赏
  • 举报
回复
楼主很强 争取超越你哈哈
lashengcrh 2008-08-26
  • 打赏
  • 举报
回复
顶了
passionhip 2008-08-22
  • 打赏
  • 举报
回复
LZ这几句话我会牢记在心的。
ximi0000 2008-08-01
  • 打赏
  • 举报
回复
up起来
ximi0000 2008-08-01
  • 打赏
  • 举报
回复
接分
songsu 2008-08-01
  • 打赏
  • 举报
回复
楼主说的有道理。
stivenjia 2008-07-29
  • 打赏
  • 举报
回复
现在的公司招人都要问有没有工作经验,对于刚走出校门的学生来说哪里来的工作经验有的连实习经验都没有。

现在的学校一切都向钱看其想实习好拿钱来,就这样的学校还为数不多很多学生根本没有实习过,有实习机会的也仅限于那些“211重点”大学普通高校是没有实习机会的或者需要花很高的代价来买实习机会。

对那些招人的时候一脸很不满意的样子问对方你有多少年工作经验阿?!
这里我要说句你现在或许很得意但不要忘记了你也有孩子你的孩子也面临高考,大学,工作,等等问题。
stivenjia 2008-07-29
  • 打赏
  • 举报
回复
都说大连缺乏软件人才,其实怎么样呢?到处都是日语,英语培训到处都是速成班。
软件产业能作为一门科学一个行业(虽说在中国还不成熟)但也很成熟了也有了自己一套机制岂能在短短6个月内完全掌握,
还有在这里我要告诉全中国所有打算来大连投身软件行业的人们如果你来大连创业这里在好不过,人力资源便宜(相对于其他城市),有政府补助。但是如果你是来工作的那么前提是必须日语二级以上能说会写并且会翻译哪怕计算机一般都可以。
其实作为外包行业又需要你多少技能呢?
stivenjia 2008-07-29
  • 打赏
  • 举报
回复
大哥说的太好了,我自会一样C/C++很多很多人看不起我,不仅认为人张的丑而且因为没有学历还有只会一样C/C++
而其他人呢几乎是C/C++/C#,Java等等全通,但是公司到底需要什么样的人呢?是夸夸尔谈的还是实际工作的。
我在外游荡大概有一年各个公司均摇头,我也很无奈虽然这是中国形势呢谁让我tmd是个中国人。

例如:06年的时候华为来大连招聘 程序员 我去了后连门都没进去 说要求硕士以上学历 英语6级以上
07年大连文化财经 该公司考iq虽说很让人反感但既然我应约去了,也就测了结果不是让人很满意
03年大连英极 对这个公司我不想多说什么 狗眼看人低

iq,eq如今在这信息化爆炸的年代随便在网上一搜都能搞到很多试题之需要熟记便能得到满分,我当时去文化财经面试的时候就有这样一个女人iq得分很高当时面试他的主管就问她是否做过类似的试题,她还坦诚。

其他的不想多说什么了

软件是一个特殊的产品 他有家族性质 有持续性 有维护性 同时还有协作性,

为什么说vista发布后引来如此多的争议,最明显的问题就是 向后兼容性 作为同一家族的系列产品 竟然对现存的家族产品出现兼容问题。
jhwcd 2008-07-29
  • 打赏
  • 举报
回复
[Quote=引用 214 楼 anjie4402211 的回复:]
学习,
[/Quote]
wshcdr 2008-07-29
  • 打赏
  • 举报
回复
vcleaner的生理周期 还没结束啊

有失控的趋势啊

我表示深深的担忧
anjie4402211 2008-07-29
  • 打赏
  • 举报
回复
学习,
m278261631 2008-07-29
  • 打赏
  • 举报
回复
来看看未来
思危 2008-07-27
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 jameshooo 的回复:]
进入这行已很多年,对国内的软件产业现状应该是相当熟悉,对国产程序员的脾性也非常了解。

借用听到的华为的一句口号“板凳能坐十年冷”,国产程序员很难找到这样的人(包括我在内),浮躁、急功近利是普遍现象,但是不能都归罪于程序员自身,大环境使然,首先要怪的就是管理者,管理者拿软件开发作为盈利工具,脑袋里装满的都是如何尽快赚到钱,技术不技术的都是其次,不添乱少添乱的程序员才是这些老板最想要的,赚钱第一,…
[/Quote]
咱们的认识是一致的,哈哈
red-fly 2008-07-26
  • 打赏
  • 举报
回复
楼主说得基本上没错,只是有些说的有些绝对些罢了,但有其道理

一个人能有多牛,是由很多方面决定的,而不是某一项两项决定的
本人的能力,是否“聪明”、是否善于举一反三等
比如上学时,自己是否好学、当时上了什么学校、老师的影响、校风的影响,等
工作之后,公司的好坏、公司里的牛人是否会热心帮助、公司的领导决策、自己的求知欲、机遇、接触到的东西和人等
... ...

对于不同的人,其中的某一项或者几项可能是很重要的,而有些人却是很重要的,有些人虽然比较“笨”,但善于学习,最后可以很牛,而有些人很“聪明”,却不学一本书,结果很差,等等
但是有一点,对于技术,需要有耐心,因为在技术上没有不明确的结果,只会是要么某一个值是正确的,要么是一个错误的,所以需要细心,而不能有“做大事的人不需要扫地”的思想存在,一个小的螺丝可能很不重要,但它却有可能让整列火车脱轨酿成重大事故!
fescort 2008-07-26
  • 打赏
  • 举报
回复
good
SuperPc_Bull 2008-07-25
  • 打赏
  • 举报
回复
受教了
chtitaxie 2008-07-24
  • 打赏
  • 举报
回复
很好,很强...
加载更多回复(205)

1,649

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧