zoukankan      html  css  js  c++  java
  • 程序员的专业素养 --序言至第一章专业主义

    序言和引言部分就不多说,总之是溢美之词多一些。当然引言部分说了一下bob大叔的个人经历是如何从吊死转型的。

    第一章 专业主义

    清楚你要什么

    “专业主义”不但象征着荣誉与骄傲,而且明确意味着责任与义务。专业主义就意味担当责任。{当然在后面的章节里 责任和担当是经常被强调的,其实无论对于那个行业来说能够担当责任都是一种非常重要的品质。这让我回顾最近两三周的自己,好像沾染了很多不良恶习 ……}

    担当责任

    “我因为不负责任尝尽了苦头,所以明白尽职尽责的重要意义”--这段是回顾bob刚出道时的一些事情所说的,就在引言部分里。{我个人来说感觉有些幸运,至少看到了这本书,不过也正如本章开头所说的 我想成为一名专业的软件工程师。}这部分讲述了一个 因为没有经过测试就上线的结果惨遭报应的案例。未对程序进行测试是不负责任的。

    {想来我的代码也是未经测试的,只是让他跑了跑没问题然后叫告诉老大说,可以了,呃 ,所以一个新的计划就是要在假期期间看看测试是怎么一回事。}

    首先,不行损害之事

    不破坏软件的功能与架构。

    不要破坏软件功能

    不要留bug。没人能写出完美的软件,但这并不代表你不对不完美负责。所谓专业人士,就是能对自己犯下的错误责任的人,哪怕那些错误实际上在所难免。所以要练习的第一件事就是“道歉“ 。道歉势必要的但是不能一而再而三的犯同样的错误。职业经验多了之后,你的失误率应该快速减少,甚至渐进于零。失误率永远不可能等于零,但你有责任让他无限接近零。

    让QA找不出任何问题

    {QA(QUALITY ASSURANCE)中文意思是“品质保证”,这还是处在iso中的内容,索然我上学时考取过iso9000的证书但是这个还真忘记了。哎 真是 ……}

    QA会发现bug,所以准备好道歉吧,然后反思那些bug是怎样跳过你的注意,想办防止它再次出现。

    要确信代码正常运行

    你怎知道代码能不能运行呢?很简单测试,一遍一遍的测试翻来覆去的测试。你写的每一行代码都要测试! 这是要求!

    怎么可能,那么最好的办法就是先写测试,就是测试驱动开发。TDD

    自动化QA

    执行单元测试和验收测试。

    不要破坏结构

    成熟的专业开发人员知道,聪明人不会为了发布新功能而破坏结构。结构良好的代码更灵活。以牺牲结构为代价,得不偿失,将来必追悔莫及。

    所有软件项目的根本指导原则是,软件要易于修改。如果你希望自己的软件灵活可变,那就应该市场修改它。

    该在什么时候做些小的修改呢?随时! 所谓的”无情重构“ ”童子军守则“ 对每个模块,每检入一次代码,就要让他比原来更为简洁。每次读代码,别忘了进行点滴的改善。专业开发人员对待代码,就如同雕塑家对待泥巴一样,要多他进行不断的变形与塑造。

    职业道德

    雇主除了钱,你必须付出时间和精力。就用每周工作40小时来说,这40小时应该用来解决雇主的问题,而不是你自己的问题。你应该计划每周工作60小时,前40小时是给雇主的,后20小时是给自己的。在这剩余的20小时里,你应该看书,练习,学习,或者做能够提升职业能力的事情。每周二外增加20小时,也就是每天3小时。如果你在午饭时间看书,在通勤路上听听播客,花90分钟学一门新的语言,那么你就能兼顾到了。

    一周168小时,你个雇主40小时,为自己的职业发展留20小时,剩下的108小时再留给睡眠,那么还剩52小时可做其他的事情。

    或许你不愿意那么勤勉。没问题,只是那样的话你也不能自视为专业人了。

    了解你的领域

    设计模式,GOF书中的全部24种模式,POSA书中的多数模式

    设计原则,必须了解SOLID原则

    方法 理解XP,Scrum,精益,看板,瀑布,结构化及结构化设计等

    实践 掌握测试驱动开发,面向对象设计,结构化编程,持续继承和结对编程

    工件 必须了解如何使用uml,DFD 结构图,Petir网络图,状态迁移图表,流程图和决策表

    坚持学习

    .net 去学学java ,java学学ruby ,c学学lisp 想练练脑子学学Prolog和Forth吧

    {PHP呢?学什么?我假期准备学习python}

    练习

    业精于勤。真正的专业人士往往勤学苦干,以求得自身技能的纯属精炼。

    合作

    辅导

    教学相长

    了解业务领域

    与雇主/客户保持一致

    谦逊

  • 相关阅读:
    Tp控制器
    thinkphp总体设计
    视频会议管理系统操作步骤(新)
    视频会议(旧)
    HCIE实验LAB_1(1)
    HCIE实验LAB_1(2)
    HCIE实验LAB_1(3)
    HCIE实验LAB_1(4)
    HCIE实验LAB_1(5)
    HCIE实验LAB_1(6)
  • 原文地址:https://www.cnblogs.com/joqk/p/5578002.html
Copyright © 2011-2022 走看看