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

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

搜索

  •  

積分與排名

  • 積分 - 1811726
  • 排名 - 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>
              欧美日韩卡一卡二| 一本久久a久久精品亚洲| 西西裸体人体做爰大胆久久久| 国产精品白丝av嫩草影院| 亚洲在线一区二区| 亚洲免费中文| 国产一区二区三区高清在线观看| 性久久久久久久久| 欧美一级久久| 亚洲人午夜精品免费| 日韩视频中文| 国产亚洲视频在线观看| 欧美h视频在线| 欧美日韩国产精品一区| 欧美在线观看一二区| 久久精品三级| 亚洲视频在线观看三级| 亚洲欧美日韩综合| 在线播放中文字幕一区| 99国内精品久久| 伊人狠狠色j香婷婷综合| 亚洲国内在线| 国产精品一卡二| 欧美激情一区二区三区在线| 欧美三区在线视频| 久久这里只有精品视频首页| 欧美精品一区二区三区视频| 久久激情五月激情| 欧美日韩国产三区| 美女福利精品视频| 国产精品国内视频| 欧美国产精品久久| 国产日韩欧美在线观看| 午夜精品一区二区三区在线播放| 亚洲激情电影中文字幕| 国产欧美日韩一区二区三区在线| 欧美电影在线播放| 国产精品一二一区| 亚洲国产一区二区三区青草影视| 国产日本亚洲高清| aa级大片欧美| 亚洲精品乱码| 久久久久久亚洲精品中文字幕| 亚洲一区视频在线| 欧美日本高清视频| 欧美激情一区二区三区成人| 国内一区二区三区在线视频| 一本一本久久| 一本一本大道香蕉久在线精品| 久热国产精品视频| 狼人社综合社区| 国产欧美日本| 亚洲免费在线看| 午夜久久久久久| 国产精品久久久久9999吃药| 亚洲精品影院在线观看| 亚洲第一在线综合在线| 久久久久久久尹人综合网亚洲| 欧美一区二区三区免费视频| 欧美午夜a级限制福利片| 亚洲精品中文字幕在线| 日韩一级精品视频在线观看| 欧美国产综合一区二区| 亚洲国产精品视频| 日韩午夜视频在线观看| 欧美另类久久久品| 亚洲精品一区在线观看香蕉| 亚洲深爱激情| 国产精品大片免费观看| 亚洲一二三区精品| 久久国产黑丝| 韩日精品视频一区| 裸体丰满少妇做受久久99精品| 免费中文日韩| 亚洲另类自拍| 欧美私人网站| 亚洲欧美国产va在线影院| 欧美一区二区视频观看视频| 国产一区91| 久久香蕉国产线看观看av| 欧美成人69av| 在线午夜精品自拍| 国产精品每日更新| 欧美在线黄色| 亚洲电影av在线| 亚洲色图综合久久| 国内自拍一区| 欧美精品七区| 香蕉成人伊视频在线观看| 老司机免费视频一区二区三区| 亚洲韩日在线| 国产精品高潮呻吟| 久久久久网站| 99国产精品一区| 久久久久久999| 亚洲美女少妇无套啪啪呻吟| 国产精品久久久对白| 久久久美女艺术照精彩视频福利播放 | 久久人体大胆视频| 亚洲人成亚洲人成在线观看图片| 欧美视频手机在线| 久久久久久香蕉网| 亚洲一区二区三| 亚洲国产成人91精品| 先锋影音一区二区三区| 91久久精品美女高潮| 国产精品你懂的在线欣赏| 久久久之久亚州精品露出| 9色精品在线| 欧美激情一区二区三区高清视频 | 久久久美女艺术照精彩视频福利播放 | 久久亚洲综合色| 中文国产成人精品久久一| 蜜臀久久99精品久久久久久9 | 午夜精品免费在线| 亚洲日本成人女熟在线观看| 久久久久久亚洲综合影院红桃| 在线亚洲欧美| 亚洲精品久久嫩草网站秘色 | 欧美h视频在线| 久久久精彩视频| 午夜精品在线观看| 一区二区毛片| 日韩西西人体444www| 欧美激情成人在线视频| 久久婷婷综合激情| 欧美一区二区视频在线观看2020 | 欧美影院在线播放| 亚洲影视综合| 亚洲一区二区三区三| 洋洋av久久久久久久一区| 亚洲福利视频一区| 在线成人激情| 1024亚洲| 亚洲激情电影中文字幕| 影音先锋久久| 精品成人国产在线观看男人呻吟| 国产女主播一区| 国产精品久久午夜夜伦鲁鲁| 欧美视频导航| 国产精品久久中文| 国产精品无码专区在线观看| 国产精品黄页免费高清在线观看| 欧美日韩亚洲一区三区| 欧美日韩午夜精品| 欧美性感一类影片在线播放| 欧美图区在线视频| 国产精品乱人伦一区二区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久 | 欧美黑人在线播放| 中文网丁香综合网| 一本一道久久综合狠狠老精东影业| 日韩五码在线| 亚洲一区不卡| 久久精品国产综合精品| 久久久久综合| 欧美电影在线观看| 日韩视频在线一区二区| 亚洲欧美在线看| 久久亚洲精品一区| 欧美激情自拍| 国产精品久久久久久久久搜平片| 国产精品视频精品| 精品成人国产| 中文精品99久久国产香蕉| 亚洲欧美成人| 久久综合图片| 亚洲靠逼com| 欧美一级午夜免费电影| 嫩草影视亚洲| 国产精品美女在线观看| 在线免费观看日本一区| 一区二区日韩精品| 久久久久久综合| 亚洲精品日韩在线观看| 欧美亚洲视频一区二区| 免费亚洲视频| 国产日韩精品入口| 亚洲精品国产精品国自产观看| 亚洲欧美精品在线| 亚洲第一精品夜夜躁人人躁| 亚洲香蕉在线观看| 久久亚洲影音av资源网| 欧美午夜精品理论片a级按摩| 国产综合欧美| 亚洲综合电影| 欧美va亚洲va日韩∨a综合色| 99pao成人国产永久免费视频| 欧美有码在线视频| 欧美婷婷久久| 亚洲人成网在线播放| 久久久久一区| 亚洲一区二区三区视频播放| 欧美二区不卡| 加勒比av一区二区| 先锋影院在线亚洲| 日韩视频免费在线观看| 久久亚洲综合色| 国产日韩av一区二区| 亚洲一区二区免费|