ソース コードとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > デジタル大辞泉 > ソース コードの意味・解説 

ソースコード(そーすこーど)(yen loan)

コンピュータプログラム記述したテキストファイル

基本ソフトOS)やアプリケーションソフトなどのコンピュータプログラム開発するにあたって、その動作のすべてを記述したもの。通常人間読み書きできるテキストファイル形式保存される

ソースコードで使われる言語人間には意味が分かるが、コンピュータそのままでは理解することができない。そこで、ソースコードを機械語翻訳してコンピュータ理解できる形式変換したものがOSアプリケーションソフトとして配布される

一般に機械語人間にとって解読不可能であるため、開発者がソースコードを公開しない限りコンピュータプログラム詳細な設計図を知ることはできない最近では、ソースコードを公開しないマイクロソフト開発手法に対して、ソースコードを公開するリナックスなどの「オープンソース」と呼ばれる開発手法広がり見せている。

マイクロソフトOSウィンドウズ」のソースコードが、厳重に管理されているにもかかわらずインターネット流出していることが明らかになった。マイクロソフトからソースコードが提供される特別な契約を結び、アプリケーションソフト開発していた会社関与疑われている。

(2004.02.16掲載


ソース・コード


ソースコード

別名:ソースプログラム
【英】source code, source program

ソースコードとは、計算機動作させる実行形式プログラムの元となる、プログラミング言語記述仕様に従って記述され文書のことである。

計算機は、機械語呼ばれる中央処理装置直接解釈できる命令実行することによって動作する。しかし、人間にとって、機械語を扱うことは非常に難しい。そのため、プログラミング言語用いてソースコードの命令記述し、そのソースコードを機械語書かれ実行形式プログラム変換してから計算機与える、という手順がとられている。

プログラムは、多く場合コンパイル経て生成されネイティブ機械語の状態で実行されるコンパイルされる前のソースコードはテキスト形式データであり、テキストエディタなどで読むことができるが、実行形式プログラムバイナリ形式であり、テキストエディタなどでは読むことができないまた、コンパイルを経る手順の他にも、ソースコードを逐次機械語変換しながら実行するインタープリタ形式呼ばれる場合がある。インタープリタ形式は、インタープリタ型言語呼ばれる種類プログラミング言語において用いられる形式である。この場合は、実行形のプログラムがすなわちソースコードであるということになる。

あるアプリケーションプログラム構成するソースコードは、通常は、モジュールごとに複数テキストファイル分割されている。個々ファイルにおいて記述されるプログラムコードは、使用するプログラミング言語に応じて区別されそれぞれのプログラミング言語規定する文法に基づく命令文などが記述されている。文法通り記述されているソースコードは、それぞれの言語ごとに用意されているコンパイラインタープリタによって処理される。ソースコードがコンパイルされると、ネイティブ機械語オブジェクトコード)が出力されリンカによって実行ファイル変換される

商品として有償提供されているソフトウェア多くは、利益逸しないためなどの理由で、ソフトウェア改変複製不可能な状態で提供されている。このようなソフトウェアプロプライエタリソフトウェア呼ばれるが、その多くは、ソースコードを提供せず機械語書かれ実行形式プログラムだけを配布することで複製などを不可能にしている。

プロプライエタリソフトウェアとは逆にプログラム誰でも利用した改変改良加えたりできるように、ソースコードが敢えて公開されているソフトウェアは、オープンソースソフトウェアOSS)と呼ばれている。

また、Webページ構造記述しているHTMLXHTMLなどの文書のソースコードについては、Webブラウザ機能用いたりファイルダウンロードしたりすることで簡単に見ることができる。

ソースコードは、プログラム直接的な元となる文書であり、人間によって改良変更などの手加えられる重要な文書である。そのため、ソースコードの可読性が高いことが重要視されている。可読性向上させるための約束事は、コーディング規約などと呼ばれており、それぞれの組織プロジェクトごとにあらかじめ設定されるプログラミング言語種類によってもコーディング規約内容異なるが、コーディング規約として示される具体的な例としては、インデント用い方をはじめ、変数関数名クラス名命名方法、あるいは括弧使い方、といった事項がある。なお、コーディング規約包含するより広義コーディングやり方を、プログラミング作法と呼ぶ場合もある。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/12/31 07:56 UTC 版)

ソースコード: source code)は、プログラミング言語で書かれた、コンピュータプログラムを表現する文字列(テキストまたはテキストファイル)である。


注釈

  1. ^ ただし、動的なウェブページの制御に使われるプログラミング言語であるJavaScriptのソースコードは、ウェブサイト作成に使われるHTMLCSS同様、本来ウェブブラウザでいったんローカルにダウンロードして実行するものであるため、閲覧可能なウェブページのものであれば誰でも見ることが可能である。
  2. ^ オープンソース支持者の考えでは、例えば有用なソフトウェアの場合、ソースコードを公開すると直ちに世界中のソフトウェア開発者が興味を引かれてソースコードを読み漁るので、重要なバグは直ちに修正される。足りない機能は直ちに追加される。レイモンドはこのことを論文「伽藍とバザール」の中で「目玉の数さえ十分あれば、どんなバグも深刻ではない」[1]と言い表した。これはLinuxのような成功したオープンソースプロジェクトに共通する性質である。
  3. ^ 軍用機の例では日本の国産戦闘機開発計画FS-Xの交渉に際して、原型となった戦闘機F-16の飛行制御用プログラムについて、ソースコードの閲覧を許すソースライセンスの供与の可否が米国で問題となり、否決されたという例がある。

出典

  1. ^ Source code (also referred to as source or code) is the version of software as it is originally written (i.e., typed into a computer) by a human in plain text (i.e., human readable alphanumeric characters). LINFO. Source Code Definition.
  2. ^ 島内剛一「数学者用ワープロSPE」『数学』第40巻第3号、日本数学会、1988年7月29日、72頁、doi:10.11429/sugaku1947.40.2642019年5月2日閲覧 



ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/07/15 10:19 UTC 版)

RT-11」の記事における「ソースコード」の解説

アセンブリ言語書かれている。MACRO-11アセンブラ条件付アセンブリ機能とマクロプログラミング機能多用することで、構成変更自由度向上しており、通常の機械語にはない高度な命令使用可能になっている。OSデバイスドライバコメント除去したソースコードもOS配布物含まれており、"SYSGEN" というプログラムOSドライバユーザー設定した構成ビルドシステム生成)できる。開発者向け文書には、コメント付きのカーネルリストが含まれていた。

※この「ソースコード」の解説は、「RT-11」の解説の一部です。
「ソースコード」を含む「RT-11」の記事については、「RT-11」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/16 02:52 UTC 版)

Chromium」の記事における「ソースコード」の解説

Google Chromeはこのソースコードを引き抜いて開発されたものである。 このプロジェクト開発されるChromiumスナップショットは、Googleによるいくつかの追加機能除いてGoogle Chrome最新ビルド本質的に似ているGoogle ChromeにありChromiumにない代表的な機能要素は、Googleブランド自動アップデート機能クリックラップ契約英語版)(利用許諾に「同意する」を押下することで承諾するもの)、RLZトラッキング機能以前Adobe Flash Player同伴されていた。 Chromiumプロジェクト名前の由来は、などのめっきに使われることで知られる金属系元素クロム(英語でchromium)である。そのクロムめっき施した金属を英語で chrome と呼ぶことから、「(Google) Chrome作るのに使うモノ」という意味でこの名称となったGoogle自身考えとして、開発者向け文書上でChromiumオープンソースプロジェクトの名称で、最終的な製品名称はChromeにすると述べた。ただし、他の開発者たちはChromiumコード用いて"Chromium"という名前でのビルド作成している。 プロジェクト大きな目的のひとつとしてChromeウェブにおけるタブ付きウィンドウマネージャもしくはシェルになることであり、既存ウェブブラウザとは対照的である。この考えWindows ExplorermacOSのFinder簡素化させるのと同じようにこのアプリケーション簡素化図っている。このことについて開発者は「(体感および物理的に軽量高速感じなければならない」と説明している。

※この「ソースコード」の解説は、「Chromium」の解説の一部です。
「ソースコード」を含む「Chromium」の記事については、「Chromium」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/08 06:04 UTC 版)

LastPass」の記事における「ソースコード」の解説

クローズドコードだが、非バイナリモードで動作することのできる多くエクステンションソース利用可能である。それでもLastPass全権利を保持している。 LastPass Password Manager開発者1人であるサミールソフトウェア理論的整合性オープンソース無し検証できること主張し開発者LastPass Password Managerユーザインタフェース将来オープンソースして開くことができると言及した

※この「ソースコード」の解説は、「LastPass」の解説の一部です。
「ソースコード」を含む「LastPass」の記事については、「LastPass」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/13 05:17 UTC 版)

Microsoft Windows NT 3.5」の記事における「ソースコード」の解説

2020年Windows NT 3.5Build 782の完全なソースコードがリークされ、4chanオンライン公開された。もともとソースコードはanonfiles.comにアップロードされていたが、マイクロソフトによって取り下げられてしまった。ソースコードはまだインターネットアーカイブ残っている。

※この「ソースコード」の解説は、「Microsoft Windows NT 3.5」の解説の一部です。
「ソースコード」を含む「Microsoft Windows NT 3.5」の記事については、「Microsoft Windows NT 3.5」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/27 00:06 UTC 版)

Emacs Lisp」の記事における「ソースコード」の解説

Emacs Lispコードは、「.el」という拡張子ファイルに、テキストファイルとして格納される(ただし、利用者初期設定ファイル名は、Emacs21以前では例外として「.emacs」である)。ファイル読み込まれると、Emacsプログラムインタープリタ部分が、関数変数読んだ解析したりして、メモリ格納する。そうして、他の編集関数利用者コマンド使えるうになる関数変数は、自由に修正したり、読み込みなおしたりできる。 メモリ空間節約のため、Emacs機能多くは、必要になるまで読込まれない。追加機能一式それぞれは、「ライブラリ」というEmacsコード集まり実装されている。たとえば、プログラムソースコードのキーワードの強調ライブラリやテトリス・ゲームで遊ぶライブラリなどがある。各ライブラリは、ひとつまたは複数Emacs Lispソース・ファイル実装される。 一部関数C言語書いてある。これは「プリミティブ」と呼ばれる(「組込み関数」とか「サブル」ともいう)。プリミティブLispコードから呼び出すことができ、C言語ソース・ファイル修正しコンパイルすることでのみ変更できるGNU Emacsでは、プリミティブ外部ライブラリにすることはできず、Emacs実行形式一部分となる。XEmacsでは、オペレーティング・システム動的リンクサポート使ってプリミティブ実行時読み込める。関数プリミティブで書くのは、Emacs Lispからはアクセスできない外部データライブラリ用いる必要があったり、C言語Emacs Lisp実行速度の差が十分認められるほど頻繁に呼ばれたりする場合である。 ただし、C言語でのエラーはすぐにセグメンテーション違反やより些細なバグにつながるため、エディタクラッシュさせるし、Emacs Lispガベージ・コレクタ正しく相互作用するC言語コード書くことエラー引き起こしやすいので、プリミティブ実装されている関数比較少数である。

※この「ソースコード」の解説は、「Emacs Lisp」の解説の一部です。
「ソースコード」を含む「Emacs Lisp」の記事については、「Emacs Lisp」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/17 21:21 UTC 版)

Population-based incremental learning」の記事における「ソースコード」の解説

これは、Java実装された、ソースコードの一部である。論文では、learnRate = 0.1、negLearnRate = 0.075、mutProb = 0.02、mutShift = 0.05 が使われている。小さな問題場合、N = 100、ITER_COUNT = 1000 で十分である。 public void optimize() { final int totalBits = getTotalBits(domains); final double[] probVec = new double[totalBits]; Arrays.fill(probVec, 0.5); bestCost = POSITIVE_INFINITY; for (int i = 0; i < ITER_COUNT; i++) { // N個の遺伝子作成する final boolean[][] genes = new boolean[N][totalBits]; for (boolean[] gene : genes) { for (int k = 0; k < gene.length; k++) { if (rand.nextDouble() < probVec[k]) gene[k] = true; } } // コスト計算する final double[] costs = new double[N]; for (int j = 0; j < N; j++) { costs[j] = costFunc.cost(toRealVec(genes[j], domains)); } // 最小最大コスト遺伝子探す boolean[] minGene = null, maxGene = null; double minCost = POSITIVE_INFINITY, maxCost = NEGATIVE_INFINITY; for (int j = 0; j < N; j++) { double cost=costs[j]; if (minCost> cost) { minCost = cost; minGene = genes[j]; } if (maxCost < cost) { maxCost=cost; maxGene=genes[j]; } } // 最良コストの遺伝子と比較する if (bestCost> minCost) { bestCost = minCost; bestGene = minGene; } // 最小最大コスト遺伝子確率ベクトル更新する for (int j = 0; j < totalBits; j++) { if (minGene[j] == maxGene[j]) { probVec[j] = probVec[j] * (1d - learnRate) + (minGene[j] ? 1d : 0d) * learnRate; } else { final double learnRate2 = learnRate + negLearnRate; probVec[j] = probVec[j] * (1d - learnRate2) + (minGene[j] ? 1d : 0d) * learnRate2; } } // 突然変異 for (int j = 0; j < totalBits; j++) { if (rand.nextDouble() < mutProb) { probVec[j] = probVec[j] * (1d - mutShift) + (rand.nextBoolean() ? 1d : 0d) * mutShift; } } }}

※この「ソースコード」の解説は、「Population-based incremental learning」の解説の一部です。
「ソースコード」を含む「Population-based incremental learning」の記事については、「Population-based incremental learning」の概要を参照ください。


ソースコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/18 08:31 UTC 版)

RIOT (オペレーティングシステム)」の記事における「ソースコード」の解説

RIOTのソースコードは、GitHubから入手可能であり、オープンソース開発者の国際的なコミュニティーによって開発されている。

※この「ソースコード」の解説は、「RIOT (オペレーティングシステム)」の解説の一部です。
「ソースコード」を含む「RIOT (オペレーティングシステム)」の記事については、「RIOT (オペレーティングシステム)」の概要を参照ください。

ウィキペディア小見出し辞書の「ソース コード」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ

ソースコード

出典:『Wiktionary』 (2021/08/13 03:32 UTC 版)

名詞

ソースコード

  1. (プログラミング) プログラミング言語用いて記述されたもので、CPU直接実行できる言語変換(コンパイル)される前の状態。

語源

発音(?)

ソ↗ーコ↘ード

類義語


「ソースコード」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ソース コード」の関連用語

ソース コードのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ソース コードのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
時事用語のABC時事用語のABC
Copyright©2024 時事用語のABC All Rights Reserved.
JERICHO CONSULTINGJERICHO CONSULTING
Copyright (C) 2024by Jericho Consulting Co.,Ltd. All Rights Reserved.
OSS iPediaOSS iPedia
Copyright © Information-technology Promotion Agency, Japan. All rights reserved 2006-2024
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリソースコードの記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのソースコード (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのRT-11 (改訂履歴)、Chromium (改訂履歴)、LastPass (改訂履歴)、Microsoft Windows NT 3.5 (改訂履歴)、Emacs Lisp (改訂履歴)、Population-based incremental learning (改訂履歴)、RIOT (オペレーティングシステム) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。
Text is available under Creative Commons Attribution-ShareAlike (CC-BY-SA) and/or GNU Free Documentation License (GFDL).
Weblioに掲載されている「Wiktionary日本語版(日本語カテゴリ)」の記事は、Wiktionaryのソースコード (改訂履歴)の記事を複製、再配布したものにあたり、Creative Commons Attribution-ShareAlike (CC-BY-SA)もしくはGNU Free Documentation Licenseというライセンスの下で提供されています。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2024 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2024 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2024 GRAS Group, Inc.RSS