锘??xml version="1.0" encoding="utf-8" standalone="yes"?>一本到12不卡视频在线dvd,久久久精品日韩欧美,国产精品yjizzhttp://m.shnenglu.com/zft19/archive/2011/08/11/153079.htmlSmileSmileThu, 11 Aug 2011 10:20:00 GMThttp://m.shnenglu.com/zft19/archive/2011/08/11/153079.htmlhttp://m.shnenglu.com/zft19/comments/153079.htmlhttp://m.shnenglu.com/zft19/archive/2011/08/11/153079.html#Feedback0http://m.shnenglu.com/zft19/comments/commentRss/153079.htmlhttp://m.shnenglu.com/zft19/services/trackbacks/153079.html

鍘熸枃鍦板潃錛?/h1>http://tom.preston-werner.com/2010/08/23/readme-driven-development.html


Readme Driven Development

23 August 2010 - San Francisco

I hear a lot of talk these days about TDD and BDD and Extreme Programming and SCRUM and stand up meetings and all kinds of methodologies and techniques for developing better software, but it's all irrelevant unless the software we're building meets the needs of those that are using it. Let me put that another way. A perfect implementation of the wrong specification is worthless. By the same principle a beautifully crafted library with no documentation is also damn near worthless. If your software solves the wrong problem or nobody can figure out how to use it, there's something very bad going on.

Fine. So how do we solve this problem? It's easier than you think, and it's important enough to warrant its very own paragraph.

Write your Readme first.

First. As in, before you write any code or tests or behaviors or stories or ANYTHING. I know, I know, we're programmers, dammit, not tech writers! But that's where you're wrong. Writing a Readme is absolutely essential to writing good software. Until you've written about your software, you have no idea what you'll be coding. Between The Great Backlash Against Waterfall Design and The Supreme Acceptance of Agile Development, something was lost. Don't get me wrong, waterfall design takes things way too far. Huge systems specified in minute detail end up being the WRONG systems specified in minute detail. We were right to strike it down. But what took its place is too far in the other direction. Now we have projects with short, badly written, or entirely missing documentation. Some projects don't even have a Readme!

This is not acceptable. There must be some middle ground between reams of technical specifications and no specifications at all. And in fact there is. That middle ground is the humble Readme.

It's important to distinguish Readme Driven Development from Documentation Driven Development. RDD could be considered a subset or limited version of DDD. By restricting your design documentation to a single file that is intended to be read as an introduction to your software, RDD keeps you safe from DDD-turned-waterfall syndrome by punishing you for lengthy or overprecise specification. At the same time, it rewards you for keeping libraries small and modularized. These simple reinforcements go a long way towards driving your project in the right direction without a lot of process to ensure you do the right thing.

By writing your Readme first you give yourself some pretty significant advantages:

  • Most importantly, you're giving yourself a chance to think through the project without the overhead of having to change code every time you change your mind about how something should be organized or what should be included in the Public API. Remember that feeling when you first started writing automated code tests and realized that you caught all kinds of errors that would have otherwise snuck into your codebase? That's the exact same feeling you'll have if you write the Readme for your project before you write the actual code.

  • As a byproduct of writing a Readme in order to know what you need to implement, you'll have a very nice piece of documentation sitting in front of you. You'll also find that it's much easier to write this document at the beginning of the project when your excitement and motivation are at their highest. Retroactively writing a Readme is an absolute drag, and you're sure to miss all kinds of important details when you do so.

  • If you're working with a team of developers you get even more mileage out of your Readme. If everyone else on the team has access to this information before you've completed the project, then they can confidently start work on other projects that will interface with your code. Without any sort of defined interface, you have to code in serial or face reimplementing large portions of code.

  • It's a lot simpler to have a discussion based on something written down. It's easy to talk endlessly and in circles about a problem if nothing is ever put to text. The simple act of writing down a proposed solution means everyone has a concrete idea that can be argued about and iterated upon.

Consider the process of writing the Readme for your project as the true act of creation. This is where all your brilliant ideas should be expressed. This document should stand on its own as a testament to your creativity and expressiveness. The Readme should be the single most important document in your codebase; writing it first is the proper thing to do.



Smile 2011-08-11 18:20 鍙戣〃璇勮
]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              黄色一区二区三区四区| 亚洲精品欧美| 欧美在线一二三四区| 亚洲视频在线看| 国产精品你懂的在线| 午夜伦欧美伦电影理论片| 亚洲欧美日韩国产精品| 国内精品久久久久影院薰衣草| 欧美在线视频不卡| 久久久久9999亚洲精品| 亚洲国产裸拍裸体视频在线观看乱了中文 | 午夜精品视频网站| 极品少妇一区二区三区精品视频| 欧美刺激性大交免费视频| 欧美成人午夜激情| 宅男精品视频| 香蕉久久久久久久av网站| 激情五月综合色婷婷一区二区| 免费成人网www| 欧美伦理91i| 欧美伊人久久久久久久久影院 | 欧美成人在线免费观看| 欧美韩国日本综合| 欧美在线一二三四区| 久久亚洲欧美| 亚洲在线一区| 久久久久在线观看| 亚洲在线免费观看| 久久另类ts人妖一区二区| 一区二区三区产品免费精品久久75| 亚洲视频在线观看视频| …久久精品99久久香蕉国产| 99成人免费视频| 黄色一区二区在线观看| 999在线观看精品免费不卡网站| 国产精品一区在线播放| 欧美激情一区二区三区全黄| 国产精品久久久久久超碰| 欧美国产精品| 国产日韩欧美在线观看| 亚洲免费观看| 在线激情影院一区| 亚洲午夜视频在线| 日韩小视频在线观看专区| 久久精品人人| 欧美一区二区三区四区夜夜大片| 免费视频最近日韩| 久久天堂成人| 国产精品丝袜xxxxxxx| 亚洲激情专区| 极品少妇一区二区| 先锋影音久久| 亚洲免费网站| 欧美三级电影一区| 91久久久久久久久| 亚洲国产一区二区三区高清| 欧美在线国产精品| 欧美一区永久视频免费观看| 欧美日韩精选| 亚洲日本久久| 亚洲免费高清| 欧美大胆人体视频| 欧美激情在线有限公司| 在线观看国产欧美| 久久综合九色欧美综合狠狠| 久久久九九九九| 国产女主播一区| 亚洲自啪免费| 欧美一区在线看| 国产视频观看一区| 欧美中文字幕精品| 美女国内精品自产拍在线播放| 国产主播一区二区| 久久精品免费播放| 久久视频在线免费观看| 一区二区三区在线高清| 久久只有精品| 亚洲第一黄网| 99视频一区二区| 欧美日韩免费| 亚洲一区在线播放| 久久超碰97中文字幕| 国产午夜精品一区二区三区欧美 | 欧美激情一区二区在线| 亚洲国产日韩综合一区| 在线综合亚洲欧美在线视频| 国产精品h在线观看| 午夜精品亚洲一区二区三区嫩草| 久久精品国产精品| 一区二区三区自拍| 蜜桃久久精品一区二区| 99热这里只有成人精品国产| 欧美一级电影久久| 在线看片欧美| 欧美精品一区二区三区高清aⅴ| 亚洲精品乱码久久久久久蜜桃91| 一区二区91| 国产欧美日韩免费看aⅴ视频| 久久久女女女女999久久| 亚洲欧洲精品成人久久奇米网| 在线视频中文亚洲| 国产一区日韩欧美| 欧美日本亚洲| 欧美在线观看网址综合| 亚洲茄子视频| 久久久在线视频| 99国产精品久久久| 国产欧美69| 欧美人牲a欧美精品| 欧美亚洲免费在线| 亚洲精品社区| 麻豆久久婷婷| 午夜精品福利视频| 91久久极品少妇xxxxⅹ软件| 国产精品国产三级国产普通话三级 | 欧美在线精品免播放器视频| 亚洲狠狠婷婷| 久久久亚洲精品一区二区三区 | 亚洲日本电影| 国产亚洲综合精品| 欧美日韩亚洲一区在线观看| 久久狠狠一本精品综合网| 亚洲欧洲精品一区二区| 久久婷婷丁香| 亚洲一区二区日本| 亚洲国产日韩欧美一区二区三区| 国产伦精品一区二区三区高清版 | 久久琪琪电影院| 亚洲欧美综合v| 亚洲精品一区二区三区樱花| 欧美 日韩 国产精品免费观看| 亚洲欧美日韩一区二区| 亚洲精品少妇30p| 亚洲电影毛片| 伊人春色精品| 国产真实乱偷精品视频免| 国产精品欧美风情| 欧美视频一区二区在线观看 | 午夜精品视频| 亚洲在线视频网站| 一本色道久久综合狠狠躁篇的优点 | 亚洲精品一区二| 亚洲高清精品中出| 欧美超级免费视 在线| 久久精品一区二区国产| 欧美一区二区成人6969| 亚洲欧美日韩精品久久| 亚洲在线视频观看| 亚洲综合激情| 亚洲欧美综合国产精品一区| 亚洲欧美区自拍先锋| 亚洲一区二区三区成人在线视频精品| 亚洲精品一级| 亚洲天堂成人| 午夜精品一区二区三区四区| 午夜精品久久久久久久久久久久久| 亚洲综合导航| 久久se精品一区精品二区| 欧美在线播放一区| 久久天天综合| 亚洲大片精品永久免费| 亚洲欧洲另类国产综合| 亚洲美女在线国产| 亚洲欧美日韩另类| 欧美在线观看你懂的| 久久美女艺术照精彩视频福利播放| 久久久久久国产精品mv| 美国十次成人| 欧美三级网址| 国产午夜精品在线观看| 亚洲国产专区校园欧美| 亚洲视频第一页| 久久精品日产第一区二区三区| 久久久美女艺术照精彩视频福利播放| 美女久久网站| 亚洲片在线资源| 亚洲欧美日本日韩| 噜噜爱69成人精品| 国产精品福利影院| 伊人久久大香线蕉综合热线| 亚洲免费不卡| 久久免费视频网站| 亚洲国产一区二区视频| 午夜日韩av| 欧美精品久久久久久久久久| 国产精品免费观看在线| 亚洲黄色小视频| 午夜性色一区二区三区免费视频| 久久综合网络一区二区| 亚洲精品小视频在线观看| 久久精品视频99| 欧美体内she精视频在线观看| 国内精品视频在线观看| 亚洲影院污污.| 久久综合色88| 亚洲欧美变态国产另类| 欧美精品情趣视频| 在线不卡欧美| 久久精品国产99国产精品澳门| 亚洲激情在线观看视频免费|