Implements Developer 循序渐进学编程

  We developers are the masters of an ever-changing field. What programming is today usually isn’t the same as programming tomorrow. IT is improving, changing, trends arise and die, new languages, new platforms are born, better solutions come forth for old problems. We need to keep up with the changes and also constantly improve ourselves. This is not optional, this is crucial.
  软件开发者是一个日新月异的领域——IT 中的大师,今天的编程方式与明天的编程或许截然不同,技术在不断地革新,新语言、新平台的如雨后春笋般出现、更好的解决方案的冒出,因此我们需要跟得上节奏,我们没有选择,唯有努力提高自己。
  Below you can find a few tips which will help you walk the line, become a better developer.
  下面的几点建议或许能帮助你成为一个优秀的开发者。
  Have you heard the term ‘Kaizen’? If not, shortly it’s a term for improvement. Of course it’s more than a mere word, it’s a philosophy, a philosophy of constant change for the better. It requires objective monitoring and improvement. Go ahead, read a bit more about it here, you won’t regret.
  你是否听说过 Kaizen 这个词呢?简单地说就是“改良”的意思。当然它不仅仅是一个单词,同时代表着一种哲学,一个不断完善自我的理念。它需要客观的监督和改善。更多的细节可以从这里了解。


  My tips are, without any specific order:
  当然下面的建议是没有先后顺序的。


  Read code
  Read others code often and thoroughly. Look for proven quality code in production software. Learn how things work. See others’ solutions to the problems you also face or will surely face sometime. Compare solutions, techniques.
  阅读代码:
  经常认真阅读他人的代码。寻找大家公认的优秀软件作品,学习其背后的运作原理,领悟他人解决问题的方法,有时候你也会要到同样的问题,试着对比其技术和解决方案。
  Write code
  Choose a problem you’ve never solved before. Work your way through it, give it time. Try to objectively study yourself, your ways of thinking, your mental patterns. You will realize _many_ very interesting things by doing so. It’s not that hard and it’s an immense source of good feedback. Also try to implement things in different ways and compare the pros/cons of your solutions. Use aspects like “modularity” and “system integration”. Write code which is pure, simple. Almost everything can be solved in a simple way.
  编写代码:
  在一个你还从未解决过的问题上多花点时间,尝试着培养自己的思考方法以及思维模式,你会因此而获得很多的乐趣。这样做并不难,而且它还是很好的问题反馈源。对于每个问题几乎任何时候都有不同的解决方法,学者用不同的方法解决问题,对比它们之间的优点和弊端,使用诸如模块化和系统集成的方式编程,那样写代码非常的简洁,清晰。
  Keep up to date with technologies and trends
  You’re on twitter and facebook anyway, start following tech leaders and tune up your RSS source list. Don’t be the last to know about that new language. Of course be picky about what you delve into, don’t follow trends like a blind sheep. A big part of tech improvement is in fact improvement, so get to know it, as early as possible.
  跟上技术潮流:
  在 twitter 和 facebook、weibo 等社交网络关注技术大牛,订阅他们的 RRS。及时了解新语言,对技术要有深入研究而不是仅仅停留在只会调用 API 的层面上。技术是要靠实力说话的,光忽悠没用,所以尽可能早的深入了解。
  Try to look at things from many different points of view
  Sure, you’re a developer, but would you use your own product as a plain simple user? What about business values? Does that new pice of l’art pour l’art code bring any value? Did you make a change? What resources did it take? Weren’t there any more important things which would have brought greater value? What is the meaning of the software you’ve just delivered? What’s is role in the big picture? These questions seem banal and trivial, but they aren’t. We should be asking these questions constantly. Start and you’ll see the difference.
  从不同的角度思考问题:
  没错,你就是一个开发者,但是你会把自己的作品当做普普通通的产品吗?商业价值怎么样?写出来的软件能给你带来什么样的价值?需要用到哪些资源?有比软件带来更多价值还重要的事情吗?软件所表达的思想在于什么?用户在使用过程中软件能扮演什么样的角色?这些问题看似很老套或者微不足道,其实不然,我们应该不断地去回答这些问题,开始不同角度思考问题。
  Test your code, measure your code
  Untested code is just a promise. Unmeasured code is hard to learn from or improve. Would you give your money to a complete stranger on a vague promise? Do your testing in many levels, starting from unit testing. Do functional and integration tests. Prove that your code works. Convince others. Push your code to that git repo with a big smile instead of a worried look. Measure your code coverage, code complexity and code smell. Tune. Improve.
  测试是开发者的工作:
  未测试的代码就像一个未知的承诺,不去测试代码,编程技巧很难得到提高。作为用户你会因为一个得不到保证的承诺而把钱交给一个完全陌生的人吗?用测试单元做功能和集成测试,证明你的代码可以正确执行,使他人放心地使用。把代码放到 GitHub 资源库上去。记住:扩大代码测试覆盖范围,减少代码的复杂度、去除代码的坏味道,不断调整、提高。
  Seek community with other developers
  Learn from others. Discuss problems with others. Take reading their code to a higher level. Help them if you can. Be open-minded, accept and analyse other solutions and ideas.
  在社区和开发者交流
  向他人学习,和他人探讨问题。通过阅读他人代码提高自己的水平,同时尽可能去帮助他人,用一种开放地思维接受和分析他人的解决方案以及思想。
  Deliver something useful ever day.
  Learn to break down long projects into smaller, deliverable parts. Do milestones. Do tested, proven, working milestones. Deliver something. Show your value. Don’t sit on projects for long weeks. Show your progress. Analysis and synthesis are essential to our trade. Deliver something, now, today. Watch the difference it’ll make in your self-confidence and in how others view you. Be a happier coder.
  每天交付可使用的部分
  学会把大项目分解成为更小的,变成可交付使用的部分。做里程碑、做测试证明、做进度规划。分析和总结是必不可少的,此刻就把它记录下来,注意前后的变化,长期的积累将使你更加自信,外人对你刮目相看,做一个快乐的程序员吧。
  Break away from programming from time to time
  Recreation. Different activities, sports, nature. Your body and your brain needs it. Also the best ideas often arise not while sitting and staring at the screen but while walking in the forest.
  忙里偷闲:
  参加娱乐、体育活动、接触大自然。你的身体和大脑需要休息,经常站起来活动活动,切忌一直坐着盯着屏幕。

 

  英文地址:http://blog.mostof.it/continuous-improvement/

你可能感兴趣的:(Implements Developer 循序渐进学编程)