• <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>

            C++&&Linux

            做自己喜歡的事情

              C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              3 Posts :: 4 Stories :: 1 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(18)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            2014年8月21日 #

            @import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 出售如下二手書:@import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
            《一個操作系統(tǒng)的實(shí)現(xiàn)》
            《Photoshop設(shè)計(jì)寶典》
            《OpenGL編程指南》
            《More Effective C++》
            《Linux系統(tǒng)管理手冊》
            《Imperfect C++》
            《GRE詞匯精選》
            《DSP嵌入式系統(tǒng)開發(fā)典型案例》
            《深度探索C++對象模型》
            《Advanced C++》


            聯(lián)系QQ:121475490
            posted @ 2014-08-21 07:50 Smile 閱讀(308) | 評論 (0)編輯 收藏

            2011年8月11日 #

            原文地址:

            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.

            posted @ 2011-08-11 18:20 Smile 閱讀(1492) | 評論 (0)編輯 收藏

            2007年12月10日 #

            ubuntu 7.10下g++的疑問
                裝完ubuntu 7.10后,在它下面寫了一個基本的C++程序,用g++ 4.1編譯后發(fā)現(xiàn)了一個令我感到迷惑的地方。如下的程序:
               int main(int argc, char* argv[])
                {
                  std::cout << "hello" << std::endl;
                }
            在g++下沒有報(bào)任何錯誤和警告!
            posted @ 2007-12-10 17:30 Smile 閱讀(568) | 評論 (0)編輯 收藏

            久久久精品波多野结衣| 日本精品久久久久中文字幕8| 伊人热热久久原色播放www| 亚洲国产精品无码久久青草| 蜜桃麻豆WWW久久囤产精品| 亚洲av日韩精品久久久久久a| 久久婷婷五月综合色奶水99啪| 久久久噜噜噜久久中文福利| 久久精品国产一区二区| 亚洲成色www久久网站夜月| 91久久成人免费| 亚洲中文字幕久久精品无码喷水| 国产99久久精品一区二区| 久久人人爽人人爽人人片AV麻豆| 久久九九兔免费精品6| 99热热久久这里只有精品68| 久久www免费人成看片| 久久www免费人成看国产片| 久久99亚洲网美利坚合众国| 伊人伊成久久人综合网777| 嫩草影院久久国产精品| 久久香蕉超碰97国产精品| 日批日出水久久亚洲精品tv| 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲 | 亚洲精品高清一二区久久| 国产精品一久久香蕉产线看| 性做久久久久久久久久久| 久久99亚洲综合精品首页| 青青国产成人久久91网| 99久久精品日本一区二区免费| 国产69精品久久久久观看软件 | 国产精品久久久久久久久软件| 99久久国产亚洲高清观看2024 | 久久精品国产亚洲沈樵| 狠狠色婷婷综合天天久久丁香| 日日噜噜夜夜狠狠久久丁香五月| 99久久这里只精品国产免费| 久久久久国产精品三级网| 精品综合久久久久久88小说| 久久99精品九九九久久婷婷| 精品国产乱码久久久久久浪潮|