青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

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 夢在天涯 閱讀(697) 評論(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

搜索

  •  

積分與排名

  • 積分 - 1811728
  • 排名 - 5

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              亚洲欧美久久久| 国产美女搞久久| 欧美bbbxxxxx| 欧美在线播放| 久久久国产精品亚洲一区 | 国产在线拍偷自揄拍精品| 黄色成人在线网站| 一本久久知道综合久久| 欧美诱惑福利视频| 久久蜜臀精品av| 国产精品国产三级国产普通话三级| 国产日韩欧美黄色| 夜夜嗨av色综合久久久综合网| 亚洲精选中文字幕| 久久久999精品| 国产精品户外野外| 久久久久久久久久久久久9999| 久久综合给合久久狠狠狠97色69| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲人成7777| 久久天天躁狠狠躁夜夜爽蜜月| 日韩视频在线一区二区| 久久一区二区三区四区| 正在播放欧美视频| 亚洲国产精品免费| 欧美一区二区在线免费播放| 先锋资源久久| 国产精品户外野外| 欧美成人国产| 久久在线精品| 欧美在线免费观看亚洲| 亚洲一区二区三区高清不卡| 欧美日韩免费在线| 91久久国产综合久久蜜月精品| 在线亚洲美日韩| 欧美日韩调教| 欧美国产在线观看| 免费观看成人www动漫视频| 亚洲女优在线| 中文av一区二区| 亚洲精品1区2区| 欧美国产一区二区三区激情无套| 国产精品乱人伦中文| 亚洲欧美日韩另类精品一区二区三区| 久久九九国产| 欧美资源在线观看| 国产精品久久国产愉拍 | 欧美成人日本| 欧美国产一区视频在线观看 | 国产日韩精品入口| 久久久99国产精品免费| 国产精品久久久久aaaa| 最新国产精品拍自在线播放| 欧美日韩在线播放三区| 欧美激情第二页| 亚洲第一天堂av| 亚洲黄色在线观看| 亚洲成人原创| 久久综合狠狠综合久久综合88| 欧美日韩精品一区二区| 亚洲一区精彩视频| 亚洲欧美另类久久久精品2019| 亚洲天堂男人| 久久国产精品电影| 亚洲精品久久久久久一区二区| 亚洲区第一页| 国产欧美一区二区白浆黑人| 一区二区三区高清| 在线观看免费视频综合| 日韩视频不卡| 亚洲永久字幕| 国产精品免费观看视频| 亚洲一区欧美二区| 久久久噜噜噜久久中文字免| 欧美韩国在线| 一本色道久久加勒比88综合| 亚洲综合第一| 国产日韩精品在线播放| 久久人人97超碰精品888| 欧美激情影院| 在线视频精品一| 国产日韩综合| 久久最新视频| 日韩午夜在线视频| 欧美在线免费观看| 亚洲风情亚aⅴ在线发布| 午夜欧美不卡精品aaaaa| 老司机精品福利视频| 国产偷自视频区视频一区二区| 久久www成人_看片免费不卡| 亚洲一区二区免费视频| 免费观看亚洲视频大全| 99re热这里只有精品免费视频| 午夜视频一区二区| 国产精品久久中文| 久久深夜福利免费观看| 亚洲精选久久| 久久男女视频| 亚洲一区二区免费视频| 精品99一区二区三区| 欧美诱惑福利视频| 亚洲人体偷拍| 久久久久久久久久久久久女国产乱 | 玖玖国产精品视频| 亚洲午夜一区二区三区| 一本色道**综合亚洲精品蜜桃冫| 国产精品三级视频| 欧美国产一区二区在线观看| 羞羞答答国产精品www一本| 亚洲黄网站黄| 久久亚洲精品伦理| 亚洲制服丝袜在线| 亚洲精品影院在线观看| 欧美经典一区二区| 亚洲人屁股眼子交8| 久久久www成人免费毛片麻豆| 99综合电影在线视频| 永久久久久久| 国产欧美91| 国产精品久久波多野结衣| 免费观看日韩| 久久青草福利网站| 欧美一区在线直播| 亚洲一区二区三区四区五区黄| 91久久国产综合久久蜜月精品| 久久久久免费视频| 久久精品30| 伊人精品久久久久7777| 99re66热这里只有精品3直播| 久久婷婷麻豆| 久久精品夜色噜噜亚洲a∨| 亚洲欧美另类国产| 亚洲一区二区三区在线播放| 99亚洲精品| 99在线精品视频| 亚洲精品在线视频| 日韩视频在线你懂得| 欧美日韩一区二区三区在线视频| 免费欧美高清视频| 蜜桃久久av一区| 亚洲午夜羞羞片| 亚洲天堂av在线免费| av成人毛片| 欧美成人免费小视频| 免费日本视频一区| 夜夜精品视频| 一区二区91| 亚洲一级网站| 亚洲欧美日韩国产成人| 欧美一区2区三区4区公司二百| 午夜欧美大尺度福利影院在线看 | 激情欧美丁香| 亚洲国产91| 日韩视频在线播放| 亚洲深夜激情| 欧美亚洲一区三区| 一区二区欧美国产| 亚洲字幕一区二区| 欧美在线网址| 免费影视亚洲| 亚洲精品老司机| 亚洲午夜免费视频| 久久精品亚洲精品| 欧美国产日韩一区| 国产精品麻豆va在线播放| 国产手机视频精品| 亚洲精品一区二区三区在线观看| 亚洲天堂成人在线观看| 久久精品99国产精品日本| 女同一区二区| 亚洲婷婷免费| 久久亚洲私人国产精品va| 欧美久久精品午夜青青大伊人| 久久九九电影| 欧美日本在线播放| 国产亚洲va综合人人澡精品| 亚洲人成网站在线观看播放| 亚洲网站视频福利| 久久综合狠狠综合久久激情| 亚洲精品无人区| 久久gogo国模裸体人体| 欧美精品一区二区三区视频 | 女生裸体视频一区二区三区| 国产精品对白刺激久久久| 一区视频在线| 亚洲欧美久久久| 亚洲国产日本| 久久成人人人人精品欧| 欧美色大人视频| 欧美日韩亚洲高清| 一区在线播放| 亚洲欧美视频在线观看视频| 欧美v亚洲v综合ⅴ国产v| 亚洲欧美日韩一区在线观看| 亚洲在线不卡| 欧美日韩理论| 亚洲激情不卡| 久久久亚洲成人| 亚洲欧美成人| 国产精品久久国产精麻豆99网站|