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

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>
              亚洲综合欧美日韩| 国产精品裸体一区二区三区| 国产专区综合网| 久久久久久婷| 午夜精品福利一区二区蜜股av| 欧美午夜片在线免费观看| 亚洲影院高清在线| 欧美在线网址| 在线精品国产欧美| 亚洲国产色一区| 欧美成人一品| 亚洲综合色在线| 久久成人精品无人区| 亚洲高清在线精品| 一区二区成人精品| 国产亚洲欧洲997久久综合| 猛男gaygay欧美视频| 欧美激情第3页| 欧美一区二区黄| 免费不卡亚洲欧美| 午夜精品福利一区二区三区av| 欧美一二三视频| 日韩一级二级三级| 欧美亚洲系列| av成人手机在线| 欧美一区二区三区播放老司机 | 亚洲国产99| 欧美午夜久久| 亚洲第一久久影院| 国产精品成人久久久久| 乱码第一页成人| 国产精品第三页| 欧美激情2020午夜免费观看| 欧美先锋影音| 欧美护士18xxxxhd| 国产目拍亚洲精品99久久精品| 欧美成人综合在线| 国产精品一区二区在线| 91久久中文| 黄色成人在线网址| 亚洲制服欧美中文字幕中文字幕| 亚洲精品小视频| 久久精品午夜| 欧美在线观看你懂的| 欧美日韩国产精品一区二区亚洲 | 亚洲电影在线| 欧美一区三区二区在线观看| 9l国产精品久久久久麻豆| 久久精品中文字幕一区| 欧美在线三级| 欧美视频精品在线| 亚洲人成7777| 亚洲欧洲久久| 蜜桃视频一区| 欧美成人一区二区三区| 国产一区二区三区在线播放免费观看| 亚洲精品乱码久久久久久| 亚洲精品日韩激情在线电影 | 亚洲精品在线二区| 亚洲国产视频直播| 久久精品免费| 久久免费99精品久久久久久| 国产欧美日韩伦理| 亚洲欧美在线免费观看| 午夜精品婷婷| 国产精品日韩精品欧美在线| 亚洲少妇一区| 午夜精品影院在线观看| 国产精品卡一卡二| 亚洲欧美日韩国产一区| 久久精品国亚洲| 国产亚洲激情在线| 亚洲欧美在线x视频| 久久精品欧洲| 一色屋精品亚洲香蕉网站| 久久久噜噜噜久久人人看| 嫩草影视亚洲| 亚洲精品视频在线播放| 欧美日韩国产精品专区 | 猛男gaygay欧美视频| 国产一区二区三区久久精品| 欧美一区二区三区视频免费| 久久天天躁夜夜躁狠狠躁2022| 一区二区三区在线观看欧美| 久久视频在线视频| 91久久综合| 亚洲欧美日韩精品一区二区| 国产美女高潮久久白浆| 久久精品一区二区三区四区| 欧美高清视频www夜色资源网| 99国产精品久久久| 国产精品久久一级| 久久蜜桃av一区精品变态类天堂| 亚洲电影免费在线观看| 亚洲视频一起| 国内精品国产成人| 欧美精品乱码久久久久久按摩| 亚洲午夜久久久久久久久电影网| 久久久久久夜| 亚洲片在线观看| 国产精品久久久免费| 久久综合狠狠综合久久综青草| 亚洲精品久久久一区二区三区| 欧美影片第一页| 亚洲精品欧洲| 国产一区二区三区久久悠悠色av | 欧美福利视频在线| 亚洲午夜精品一区二区| 男男成人高潮片免费网站| 亚洲色图综合久久| 伊人成人开心激情综合网| 欧美精品一区二区在线播放| 欧美一区免费| 亚洲图色在线| 亚洲精品乱码久久久久久黑人| 久久av二区| 亚洲一区二区三区精品动漫| 亚洲电影免费观看高清完整版| 国产精品嫩草影院一区二区| 欧美成人免费网站| 久久人人爽国产| 午夜精品一区二区三区在线播放| 亚洲精品在线免费| 亚洲第一黄色| 欧美1区视频| 久久人人看视频| 久久国产婷婷国产香蕉| 亚洲综合色激情五月| 日韩一二三区视频| 亚洲免费高清| 一本色道久久综合亚洲精品高清| 美女91精品| 久久久久久久综合色一本| 欧美一区二区精品久久911| 亚洲私人黄色宅男| 一本色道久久综合亚洲精品高清 | 欧美一区二区三区在| 国产精品99久久久久久久久久久久| 91久久在线视频| 91久久国产综合久久91精品网站| 一区二区亚洲| 影音先锋亚洲一区| 在线观看日韩av| 亚洲成色999久久网站| 在线精品视频一区二区| 怡红院av一区二区三区| 加勒比av一区二区| 激情综合中文娱乐网| 尤物网精品视频| 亚洲国产精品999| 亚洲人成网站777色婷婷| 亚洲第一福利视频| 亚洲精品在线观看免费| 亚洲精一区二区三区| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美在线视频一区二区| 久久精品国产久精国产爱| 久久米奇亚洲| 欧美精品成人91久久久久久久| 欧美日本在线看| 欧美日韩一区二区三区四区在线观看 | 亚洲国产精品女人久久久| 亚洲人成网站在线播| 亚洲精品一区二区三区樱花| 亚洲狼人精品一区二区三区| 亚洲视频免费在线观看| 欧美一区二区视频在线观看2020 | 欧美伊人久久| 美女精品在线| 欧美激情免费在线| 亚洲乱码国产乱码精品精天堂| 一区二区三区精品在线| 欧美在线播放视频| 欧美欧美在线| 国产亚洲欧洲一区高清在线观看| 亚洲激情在线播放| 亚洲在线黄色| 欧美黄色小视频| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久成人av少妇免费| 欧美精品v日韩精品v韩国精品v | 久久综合久久久| 欧美性视频网站| 在线电影国产精品| 亚洲欧美日韩国产成人精品影院 | 亚洲嫩草精品久久| 欧美高清在线视频| 亚洲欧美国产日韩中文字幕| 美女在线一区二区| 国产精品影音先锋| 亚洲免费福利视频| 久久手机精品视频| 中国成人黄色视屏| 欧美韩日视频| 韩国三级电影久久久久久| 亚洲自拍电影| 亚洲精品在线观看视频| 久久一区二区三区四区| 国产偷久久久精品专区| 亚洲图片欧美日产|