• <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++ Programmer's Cookbook

            {C++ 基礎} {C++ 高級} {C#界面,C++核心算法} {設計模式} {C#基礎}

            為什么要開源!

            Introduction

            I bet that many of today's programmers have heard about Open Source, but don't want to use the principle in their programs. That's a shame, because it's a beautiful concept.

            I've tried to make the information in this article as brief as possible, so don't look weird at the many lists in this article. This is mostly information put together from various sources, just for usefulness. And, this is my first article and English is not my native language, so don't be too hard on me. Any comments (good or bad) and suggestions are always welcome!

            For those people who don't know what the Open Source concept is, here is a brief description.

            The idea behind Open Source

            The idea behind Open Source is that by giving the source of a program away, people can learn from it, improve it, extend it and fix bugs. The Open Source concept goes hand in hand with free software. Free like in freedom, not price.

            For example: Linux. Yes, Linux is Open Source too. Linus Torvalds developed the base of this operating system, and gave away the source. Currently, multiple major companies are working on their own Open Source versions of Linux (SuSE, Red Hat, Debian and Mandrake are some examples), and even many more people are working on it too. Thanks to this, bugs are fixed very fast (advanced programmers even fix bugs while using Linux), and functionality is extended.

            Your own protection

            When you give away the sourcecode of your very own program, how can you be sure that people won't steal it and say that it is their own? By using a license. A license protects your rights, and can help you in a lawsuit against anyone who infringe these rights. There are many licenses that may be used for Open Source programs. You can find them here. The two most widely used licenses are the GNU General Public License (GPL) and the GNU Lesser General Public License (LGPL). Here a short explanation of why these licenses are important:

            • People may copy your code under the same license.
            • People may modify and distribute the (modified) source code.
            • People can't say that they wrote your code (it's copyrighted or 'copyleft').
            • Patents may not make the program proprietary, so patents must be licensed for everyone's free use.
            • People can't change the license applied to the source code.

            The difference between the GNU General Public License (GPL) and the GNU Lesser General Public License (LGPL) is that the latter permits use of the source code in commercial programs, while the GPL does not.

            Why applying the license to your company's program(s)?

            If your boss agrees upon applying the GPL or LGPL to the company's program(s), then the company will have the following benefits:

            • Faster software development.

              Many people work on the same project.

            • Faster bug fixes.

              When a bug is found, there are many people available who can fix the bug in no-time!

            • More people will use the program.

              The program's sources are available, and people help develop the program. Through this, many more people will get to know about the program.

            • The wishes of the general community will be automatically integrated in the program.

              Because the general community develops the program, the program will be more likely to satisfy the general community.

            • Less development costs.

              People help developing, mostly for free.

            • Better beta testing.

              Many people use the program. People from beginners to experienced users.

            Implementing the GNU (Lesser) General Public License

            If you want to put your program and source code under the (L)GPL or any other license, then you'll have to put a short notice at the top of each source file. You will also have to include the license itself, and put a short notice in the documentation. You can use these steps for any license, but since the GPL is the most common used license, I'll discuss that here. Follow these steps:

            Source code files

            Add the following notice to the top of your source files, and change the information to suit your program:

            Copyright (C) [year] [name of author]
            
            This program is free software; you can redistribute it 
            and/or modify it under the terms of the GNU General Public 
            License as published by the Free Software Foundation; 
            either version 2 of the License, or (at your option) any 
            later version.
            This program is distributed in the hope that it will be 
            useful, but WITHOUT ANY WARRANTY; without even the implied 
            warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
            PURPOSE. See the GNU General Public License for more 
            details.
            You should have received a copy of the GNU General Public 
            License along with this program; if not, write to the Free 
            Software Foundation, Inc., 59 Temple Place, Suite 330, 
            Boston, MA 02111-1307 USA

            Also mention how you can be contacted by paper and electronic mail.

            Splash screen/About box

            On the program's splash screen, or if there is no splash screen used in the About box, put the following notice:

            [program name] version [versionnr.], Copyright (C) [year] [author's name]
            [program name] comes with ABSOLUTELY NO WARRANTY.

            And mention how the user can let the program show the license (or provide a 'License' button on the About box).

            You may also want to place the OSI-approved or Open Source logo on your splash screen/About box. You can find it here.

            License file

            You must add a file containing the full license you use to the files that accompany the source files and your program. Usually, this is a file named COPYING.

            Copyright disclaimer

            If you work for an employer or school, then you should let them sign a copyright disclaimer. The how and why of this disclaimer is explained at the end of the GPL.

            Open Source programs

            Here is a short and incomplete list of Open Source programs that might replace (expensive) programs.

            • Windows -> Linux.
            • InstallShield installers -> NSIS (Nullsoft Scriptable Install System).
            • Photoshop & Paint Shop Pro -> The Gimp.
            • Microsoft Office -> OpenOffice.
            • Filesharing -> E-mule and Shareaza.
            • .NET Framework -> Mono.
            • MSN Messenger & AIM & ICQ -> Gaim.

            Thousands of Open Source programs can be found at the following sites (among others):

            Discussions

            I write this update, now many months since I first wrote this article. Open Source has always been a point of discussion, and will always be. As it worked out, this article got the best votes and the worst votes, and the rating got stuck somewhere in the middle.

            There was one goal I wanted to achieve by writing this article, and I met that goal: to make people think about Open Source. Why Open Source? Figure that out by yourself. This article became part of the discussion, and I hope that this discussion will be continued for a long, long time...

            Links and resources

            You can find any useful links here:

            About Dani?l Pelsmaeker


            Dani?l is a student at the Hanzehogeschool in Groningen, Holland, where he studies Architecture.
            He knows too much about computers, and thanks to that, unfortunately, everyone keeps asking him for advice and cyberaid.

            A long, long time ago, in a galaxy far away... erhm. No!
            When he was little, he knew little about computers. He started learning about them by pulling the PC's plug from the socket, and his mother constantly lost all her work.
            Then, Commodore 64 programming started at the age of six:
            1: PRINT "Hello world!"
            2: GOTO 1

            From then, trough QBasic, Visual Basic 4, 5, 6 and now Visual Studio 2002 with C# and .NET.

            That was his history, in short.

            Click here to view Dani?l Pelsmaeker's online profile.

            posted on 2005-12-29 15:30 夢在天涯 閱讀(692) 評論(0)  編輯 收藏 引用 所屬分類: Open source

            公告

            EMail:itech001#126.com

            導航

            統計

            • 隨筆 - 461
            • 文章 - 4
            • 評論 - 746
            • 引用 - 0

            常用鏈接

            隨筆分類

            隨筆檔案

            收藏夾

            Blogs

            c#(csharp)

            C++(cpp)

            Enlish

            Forums(bbs)

            My self

            Often go

            Useful Webs

            Xml/Uml/html

            搜索

            •  

            積分與排名

            • 積分 - 1808403
            • 排名 - 5

            最新評論

            閱讀排行榜

            一本色道久久88综合日韩精品| 亚洲国产精品综合久久网络| 久久精品无码一区二区WWW| 久久精品人人做人人爽电影| 久久w5ww成w人免费| 日韩欧美亚洲综合久久影院d3| 久久99精品久久久久久秒播| 一本色道久久88精品综合| 91麻豆精品国产91久久久久久| 久久男人AV资源网站| 欧美一区二区三区久久综| 久久久久亚洲精品天堂久久久久久| 精品国产青草久久久久福利| 久久99精品免费一区二区| 色婷婷久久综合中文久久蜜桃av | 久久久噜噜噜久久中文字幕色伊伊 | 久久精品久久久久观看99水蜜桃| 久久综合久久综合久久综合| 久久久久国产精品嫩草影院| 国产精品日韩欧美久久综合| 欧美牲交A欧牲交aⅴ久久| 亚洲国产成人精品无码久久久久久综合| 亚洲愉拍99热成人精品热久久| 国产叼嘿久久精品久久| 精品少妇人妻av无码久久| 2021国内久久精品| 国产精品对白刺激久久久| 伊人精品久久久久7777| 久久精品女人天堂AV麻| 久久精品国产只有精品2020| 国产精品一区二区久久国产| 中文字幕乱码人妻无码久久| 思思久久精品在热线热| 久久精品中文字幕大胸| 区久久AAA片69亚洲| 一极黄色视频久久网站| 久久婷婷人人澡人人爽人人爱| 老男人久久青草av高清| 国产精品99久久久精品无码| 亚洲综合精品香蕉久久网| 久久久免费精品re6|