网站大量收购独家精品文档,联系QQ:2885784924

软件工程师的素养与成长.pptVIP

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
相关资源 软件工程师任职标准 在线竞赛 : Google 代码竞赛: /codejam/ ACM 代码竞赛: /welcome.icpc 脑图:MindManager 个人知识管理工具:/pinpkm/ 时间管理 : 书籍 《代码大全》 《个体软件过程》 《高效程序员的45 个习惯》 《卓有成效的程序员》 联系我们 杭州顺网科技股份有限公司 杭州市文一西路98号数娱大厦5楼(310012) 电话:+86 571传真:+86 571 如需了解更多信息,请访问公司网站: * * * 有的工程师不在乎效率,也不管架构或者代码漂不漂亮,上面要求他做什么,他就想办法东凑西凑,从Google找程序剪贴,从MSDN抓范例来用,反正只要能随便测过一个case就能交差了。 他们常常只是因为火烧屁股了,就不管三七二十一先弄出可以动的程序再说,效率或架构等到下一阶段再来改就好…。问题是,下一阶段又有新的功能要做,这些人再度面临抉择时还是会决定先让程序「会动再说」。我看过很多各式各样的程序员,只要碰到这种人,同样的过程是履试不爽不断出现。 所以要成为一个优秀的程序设计师的关键是什么?关键不在于coding速度有多快、懂多少算法,或是背了多少patterns,最重要的是「热情」! 伟大的程序设计师都非常喜欢写程序,写程序的过程是一种绝妙的享受,他们执着的地方或许不同,可能是程序的效率,也可能是开发的效率,甚至是架构的弹性或是程序码的精简美观程度,但他们都非常想要并坚持自己应该写出「好程序」。热情能驱动他们把软体的某一个面向雕琢到极致,这需要超乎常人的毅力和坚持,以及绝不向压力妥协的精神。只要具备这种热情,不管你在乎的是什么,都可以成为一名伟大的程序设计大师。 写程序需要的思考能力第一是逻辑思考,主要其实就是用正确、清晰的逻辑表达想法而已,说来简单但要做好也是需要一定时间的训练。第二是抽象化思考,这是许多人忽略掉的一点,也是我觉得区隔一个平凡与伟大程序设计师的重要特质。 所有的程序都可以看成一个巨大的金字塔,顶端是这个程序的最终目标,一个模煳的概念;底部是细节的程序码。而中间是一个经由不断切割与抽象化所构成的高塔,每一个程序都是切割为许多的元件、模组,再切为更细的class和function,再来是最底下的变数与逻辑判断式。 很有趣的是,不同的人看这个塔就会有不同的样子。初学者看到的塔只有两层,他们和人沟通的方法是鉅细靡遗的描述程序码:「我在这里写个for,第一次把i设成0,在循环内每次检查这个阵列的第i个元素…」,在他们眼中只有程序的目标和程序码本身 有些经验后,会再多看到一层,利用function把一段程序码包装起来,赋予一个名字和独特的意义。学会这个后,就可以利用抽象化后的function名称来沟通,例如:「我在这个循环里每次都用isCaptial来检查这个字串是不是都是大写…」再接下去,可以再利用class,利用design patterns,利用更大的模组、子系统来沟通,认真说起来,这其实是一个无止境的切割。 在开发这个领域,抽象化是个无穷无尽的必要行为。因为世间万物实在太多太复杂,我们只好不断把东西归类,并赋予一个名称、一个意义,经由这样的过程我们才能用抽象的语言和符号来沟通,避免每次都要从最底层的琐碎细节开始说起。而平凡和伟大的程序设计师,我觉得他们之间的差别就在于能看到多少这个高塔中间的分层。厉害的高手都很善于切换自己思考的高度,一下能跟你讨论高阶的系统架构设计,一下又能深入到最底下的代码和debug。他们脑中除了有这高塔每一层的详尽平面图,甚至也非常了解不同楼层之间的交互关系。而平凡的程序设计师大多只能专注于自己所开发的范围,对于其上的架构或其下的细节都不一定能理清头绪,万一出现bug也会搞不清楚到底是哪一层出了错,而被完全无关的细节绊住手脚。 * * 软件工程师的素养与成长 2010年3月 王浩 1.向内看:软件工程师的定位与发展 3. 向前看:我们的未来 2. 向上看:优秀软件工程师的素养与成长 面临的挑战 新技术层出不穷 Ajax、SilverLight、Flex、JSF…. 新概念铺天盖地 SOA、云计算、Web 3.0、物联网、敏捷开发…. 新诱惑迎面而来 新的工作机会,高薪酬的诱惑…. 莫让浮云遮望眼 常见的困惑 你是否听说过: 程序员只能做到35岁 软件行业技术更新太快,学到的技术很快过时 在中国做技术没有前途,只有去做管理、销售… 难道他们说的都是真的吗? 如何实现可持续发展? 软件工程师的典型职业路线 工程师 今天进行了1次权限管理功能模块的Code Review, 修复了2处P3的bug,并根据需求变更流程修订了设计文档的2.3节…. 职业化 技术扎

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档