• 2024-11-21

オープンソースソフトウェアの定義と例

ACQUAのじかん12月19日予告ムービー

ACQUAのじかん12月19日予告ムービー

目次:

Anonim

オープンソースソフトウェア(OSS)は、修正のために利用可能なソースコードとともに配布されているあらゆる種類のコンピュータソフトウェアです。つまり、プログラマが選択した方法でソフトウェアを変更するためのライセンスが通常含まれています。バグを修正したり、機能を向上させたり、ソフトウェアを自分のニーズに合わせて調整したりできます。

オープンソースソフトウェアの基準

1998年に設立された世界的な非営利団体であるOpen Source Initiative(OSI)は、OSSの主導的機関として機能します。オープンソースソフトウェアの定義には、次のような事項に関する10の基準が含まれています。

  • ソフトウェアの再配布
  • ソースコードの可用性と整合性
  • ライセンスの配布と特性
  • 派生作品
  • 差別禁止

ライセンス

ライセンスが異なると、プログラマはさまざまな条件を付けてソフトウェアを変更することができます。 Black Duck KnowledgeBaseによると、約200万のオープンソースプロジェクトのデータベースで、最も人気のある5つのライセンスは次のとおりです。

  1. MITライセンス
  2. GNU一般公衆利用許諾契約書(GPL)2.0
  3. Apache License 2.0
  4. GNU一般公衆利用許諾契約書(GPL)3.0
  5. BSDライセンス2.0(3節、新規または改訂)

あなたがソースコードを変更するとき、OSSはあなたがあなたの方法と同様にあなたが変更したものを含めることを要求します。コードの変更後に作成されたソフトウェアは、無料で利用できるようにすることもできないこともあります。

オープンソースソフトウェアと商用ソフトウェア

ソフトウェアは他人の知的財産であるため、市販のソフトウェア、別名商用ソフトウェアまたは独自ソフトウェアは、そのソースコードにアクセスできません。その結果、ユーザーはしばしばそれに対して支払いをします。一方、OSSは共同作業です。このソフトウェアは、開発または変更を手助けしたすべての人が共有する知的財産です。

オープンソースソフトウェアとフリーソフトウェア

これらの用語はしばしば同じ意味で使用されますが、OSSはフリーソフトウェアとは少し異なります。どちらも制限なしにソフトウェアをダウンロードして変更する機能を扱います。しかしながら、フリーソフトウェア - MITコンピュータサイエンス研究者、リチャードストールマンによって1980年代に開発された概念 - は、非営利フリーソフトウェア財団によって概説されたように、4つの条件によって定義されます。これらの「4つの自由」は、ユーザーが適切と思うようにソフトウェアを使用して楽しむための機能を強調しています。

対照的に、10年後にオープンソースイニシアチブが策定したOSS基準は、ソフトウェアの変更、およびソースコードの変更、ライセンス、配布の結果に重点を置いています。

明らかに、この2つは重なり合っています。 OSSとフリーソフトウェアの違いは実用的というよりも哲学的であると言う人もいます。ただし、どちらもフリーウェアと混同しないでください。フリーウェアとは通常、ユーザーが無料でダウンロードできるが、そのソースコードを変更することができない独自のソフトウェアを指します。

オープンソースソフトウェアの利点

OSSにはコストがかからないことが大きな利点ですが、OSSにはさらにいくつかの利点があります。

  • その品質は、そのソースコードが引き渡され、テストされ、そして修正されたときに容易にそして大いに改善することができます。
  • それはプログラマーにとって貴重な学習の機会を提供します。彼らは今日利用可能な最も人気のあるプログラムにスキルを適用することができます。
  • バグは迅速に識別され修正されるため、プロプライエタリソフトウェアよりも安全です。
  • これはパブリックドメインであり、常に更新の影響を受けるので、使用できなくなったりすぐに時代遅れになったりする可能性はほとんどありません。これは長期的なプロジェクトにとって重要な利点です。

オープンソースソフトウェアの人気のある種類

オープンソース技術はインターネットの大部分を確立するのを助けました。さらに、毎日使用されているプログラムの多くはオープンソース技術に基づいています。適切な事例:Android OSとAppleのOS Xは、それぞれカーネルとUnix / BSDオープンソース技術に基づいています。

他の人気のあるオープンソースソフトウェアは:

  • MozillaのFirefoxウェブブラウザ
  • Thunderbirdメールクライアント
  • PHPスクリプト言語
  • Pythonプログラミング言語
  • Apache HTTP Webサーバー

オープンソースソフトウェアと開発者

OSSプロジェクトは、スキルを向上させ、現場でのつながりを築くコラボレーションの機会です。開発者が作業できる分野は次のとおりです。

  • コミュニケーションツール 電子メール、リアルタイムメッセージング、フォーラム、およびWikiを使用すると、開発者は解決策を見つけたり、アイデアをやり取りすることができます。
  • 分散型改訂管理システム 地理的に異なる場所にいる複数の開発者がデータとファイルを変更すると、これらのシステムが異なるバージョンとアップデートを管理します。
  • バグトラッカーとタスクリスト。 これらの機能により、大規模プロジェクトで問題を監視し、修正を追跡することができます。
  • テストツールとデバッグツール これらの機能はシステム統合時のテストを自動化し、他のプログラムをデバッグします。

ボトムライン

オープンソースソフトウェアは、独自のソフトウェアに代わるものです。 OSSプロジェクトに参加することは、ソフトウェア開発のキャリアを築き、プログラマーが世界最大のソフトウェアプログラムに取り組むことによって自分のスキルを磨くことを可能にするための道筋になります。 Facebook、Google、LinkedInはすべてOSSをリリースしているので、開発者は知識を共有し、ソリューションを革新し、安定した機能的な製品に貢献することができます。


興味深い記事

1978年妊娠識別法

1978年妊娠識別法

妊娠識別法について学びます。妊娠中の従業員や求職者を保護する方法をご覧ください。あなたの雇用主がそれに違反した場合に何をすべきかを調べてください。

陸軍サービスリボン賞について

陸軍サービスリボン賞について

最初の入国訓練が無事終了した時に、隊員は陸軍奉仕リボンを授与されます。これがこのアワードの詳細です。

積極的な従業員認識がなぜそれほど重要なのか

積極的な従業員認識がなぜそれほど重要なのか

従業員の認識を積極的かつ強力なものにする方法を知りたいですか。これらのヒントは、従業員を最善の方法で認識するのに役立ちます。

疲れた警官の問題とそれについて何をすべきか

疲れた警官の問題とそれについて何をすべきか

法執行機関の疲労の問題と原因、および仕事で疲れた警官に関連するリスクと闘うために何ができるかについてもっと学びましょう。

プロジェクト管理ライフサイクルの説明

プロジェクト管理ライフサイクルの説明

どのプロジェクトでも、タスクを完了するための期間がどれほど長くても短くても、共通の段階を経ます。もっと詳しく知る。

プロジェクト管理チーム内の重要な役割

プロジェクト管理チーム内の重要な役割

すべてのメンバーの義務と責任を含め、プロのプロジェクト管理チームのそれぞれの役割について学びましょう。