ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
ダウンロード
ブラウザよりも高速アクセス!
 

自動プログラミング

索引 自動プログラミング

自動プログラミング(じどうプログラミング、Automatic programming)は、人間のプログラマがコードを書くのではなく、何らかの機構によってプログラムを生成するプログラミングの一種である。.

50 関係: ALGOLAutocode変換言語婉曲法マクロ (コンピュータ用語)メタモデルメタプログラミングメタデータモデリング言語モデル変換言語モデル駆動型アーキテクチャモデル駆動工学プロトタイプベースプログラミング (コンピュータ)プログラミングツールプログラマプログラム (コンピュータ)プログラム合成テンプレートメタプログラミングテンプレートエンジンデイビッド・パーナスドメイン固有モデリングドメイン固有言語アスペクト指向プログラミングインテンショナルプログラミングウィザード (ソフトウェア)オントロジーオブジェクト関係マッピングオブジェクト指向分析設計クラス (コンピュータ)グラフィカルユーザインタフェースコンパイラコードの再利用コード生成ジェネリックプログラミングスニペットソースコードソフトウェアファクトリーソフトウェアコンポーネント紙テープ統合開発環境統一モデリング言語高水準言語FORTRANMeta-Object FacilityMicrosoft Visual StudioQVTXML Metadata InterchangeXML変換言語.NET Framework

ALGOL

ALGOL(アルゴル)は、命令型プログラミング言語ファミリーの1つファミリー名は大文字/小文字をまじえて表記される場合 と、全て大文字で表記される場合 (ALGOL 68) がある。本項目では ALGOL で統一する。。名前「ALGOL」は「アルゴリズム言語」を意味する英語「algorithmic language」に由来する。1950年代中ごろに開発され、多くの言語に影響を及ぼし、ACMや教科書や学術論文などでアルゴリズム記述のデファクトスタンダードとして30年以上使われた。現代の多くの言語が「ALGOL系」あるいは「ALGOL風」(algol-like) とされているという意味で、ほぼ同世代の高水準言語である FORTRAN、LISP、COBOL に比べて最も成功したと言うこともできる。FORTRANで明らかとなった問題を防ぐよう設計され、BCPL、B、Pascal、Simula、Cといった様々なプログラミング言語に影響を与えた。ALGOLはLisp以外としては「begin と end で囲む」という構文によるブロック構造を導入し、制御構造を自在に入れ子(ネスト)にできる初の広まった言語となったFORTRANにはそのような構造は無い。COBOLではピリオドで全ての入れ子が終端するという仕様だったため(現在はend-ifなどを使う)、入れ子で書ける論理に制限があり、酷いバグの原因にもなりやすかった。。また構文の形式的定義を真剣に検討した最初のプログラミング言語でもあり、"Algol 60 Report" で導入されたバッカス・ナウア記法は、その後のコンピュータ言語等の構文の形式的定義を示す手法として(プログラミング言語だけに限られず)定番の記法となっている。.

新しい!!: 自動プログラミングとALGOL · 続きを見る »

Autocode

Autocode は、1950年代から1960年代にかけて、マンチェスター大学とケンブリッジ大学で使われた各種コンピュータ上で使われた高水準言語の総称である。 最初の Autocode は1952年、Manchester Mark I 向けに Alick Glence が開発したもので、世界初のコンパイラとされることもある。 2つ目の Autocode は1954年、Mark I 向けに R. A. Brooker が開発したもので、"Mark I Autocode" と呼ばれた。 Brooker はまたマンチェスター大学と共同で1950年代に Ferranti Mercury 向けの Autocode を開発した。Mercury Autocode では、変数が a から z までと a' から z' までの52種類しかなく、ある意味で後に登場した初期のダートマスBASIC言語にも似ている。ALGOL以前の言語であり、スタックの概念がなく、従って再帰も配列の動的確保もなかった。Mercury の記憶容量は小さかったため、大きなプログラムは "chapter" に分けられ、オーバーレイを使って動作させた。chapter 間の制御の受け渡しには時間がかかるため、性能を上げるには特殊な技能を必要とした。このようなオーバーレイ技法は、仮想記憶が実現されるまで他のマシンでも広く活用された。Mercury Autocode とは若干異なる方言が Ferranti Atlas にも実装された。Atlas 向けには別に ALGOL 風の Autocode も後に開発された(Atlas Autocode)。他に ICT 1300 シリーズや ICT 1900 シリーズ向けの Autocode も開発されている。 EDSAC 2 用の Autocode は1961年、ケンブリッジ大学数学研究所の D.F. Hartley が開発した。これはALGOL風の構文で、科学技術計算向けに最適化されていた。後継となる Titan(Atlas 2 のプロトタイプ)にもこの Autocode が実装された。.

新しい!!: 自動プログラミングとAutocode · 続きを見る »

変換言語

変換言語(へんかんげんご、transformation language)とは、入力中にあらわれるパターンを検出して置き換えを行ったり、内容の意味を保存しながら別のフォーマットに変換したりする操作を記述する、ドメイン固有言語である。専らルールベースのものが多い。.

新しい!!: 自動プログラミングと変換言語 · 続きを見る »

婉曲法

婉曲法(えんきょくほう)とは一般に、否定的な含意を持つ語句を直接用いず、他の語句で置き換える語法である。具体的には聞き手が感じる不快感や困惑を少なくする目的で、あるいは話し手がそのような不都合やタブーへの抵触を避ける目的で用いられる。 また語句自体が必ずしも不快でなくても、不快な概念を連想させるのを避けるのに用いられる。このタイプは社会的・政治的に利用される場合にはダブルスピークとなる。また、聞き手にとって無意味もしくはかえって不快と感じられれば、「ぼかし表現」として批判の対象となる。 婉曲法が礼儀正しさと同一視されることもあり、敬語として用いられる言い回しも多い。また、悪いことばが不幸を招くという迷信(ことばに対するタブー・言霊思想)や宗教思想に基づく婉曲法もある。 婉曲法では、語句は多少なりとも文字通りの意味を離れ、メタファーの性格を帯びる。.

新しい!!: 自動プログラミングと婉曲法 · 続きを見る »

マクロ (コンピュータ用語)

マクロ (macro) は「大きい」「巨大な」といったような意味の語であるが、コンピュータ関係では、アプリケーションソフトウェアなどの操作などといった、プログラミング言語と比較して粒度が大きい操作をまとめて自動化したりする機能を指して良く使われる。マクロを記述するコンピュータ言語をマクロ言語と言う(言語の無いマクロ機能もある)。また、テキスト等の変換を記述する変換言語もマクロと呼ばれる。 この記事と、マクロ言語の記事は、それぞれに書くべき内容と書かれている内容が混乱している。また以下の内容のいくつかは変換言語についてのものである。.

新しい!!: 自動プログラミングとマクロ (コンピュータ用語) · 続きを見る »

メタモデル

地図情報メタモデルの例。4種類の自己言及のあるメタオブジェクトを持つ。David R. Soller et al. (2001) http://pubs.usgs.gov/of/2001/of01-223/soller2.html Progress Report on the National Geologic Map Database, Phase 3: An Online Database of Map Information Digital Mapping Techniques '01 -- Workshop Proceedings U.S. Geological Survey Open-File Report 01-223. メタモデル(Metamodel)とは、ソフトウェア工学およびシステム工学などにおいて、所定の問題領域でのモデリングに適用可能で有益なフレーム・規則・制限・モデル・理論を意味する。メタモデリング(Metamodeling)とは、メタモデルの分析・構築・開発を意味する。この用語はメタとモデルという用語の組み合わせである。 メタモデリングは「メタ」であるが故に、その活動とメタモデルは、メタ科学、メタ哲学、メタ理論、一般システム理論などで研究されている。そういった意味ではによればメタモデルはゴール指向のメタ知識であり、モデル化する領域(参照領域)に関連している。そのため、理論的に言えばメタモデリングの成果であるモデル階層をメタモデル階層と混同するかもしれない。 計算の観点では、この概念は数学で使われており、計算機科学/計算機工学/ソフトウェア工学で実用のために応用されている。本項目は主に後者の観点で述べている。.

新しい!!: 自動プログラミングとメタモデル · 続きを見る »

メタプログラミング

メタプログラミング (metaprogramming) とはプログラミング技法の一種で、ロジックを直接コーディングするのではなく、あるパターンをもったロジックを生成する高位ロジックによってプログラミングを行う方法、またその高位ロジックを定義する方法のこと。主に対象言語に埋め込まれたマクロ言語によって行われる。.

新しい!!: 自動プログラミングとメタプログラミング · 続きを見る »

メタデータ

メタデータ(metadata)、メタ情報とは、メタなデータ、すなわちデータについてのデータという意味で、あるデータが付随して持つそのデータ自身についての付加的なデータを指す。.

新しい!!: 自動プログラミングとメタデータ · 続きを見る »

モデリング言語

モデリング言語は、ルールの一貫したセットで定義された構造によって情報、知識あるいはシステムを表現するため使われるあらゆる人工言語である。そのルールは、その構造における構成要素の意味を解釈するため使われる。.

新しい!!: 自動プログラミングとモデリング言語 · 続きを見る »

モデル変換言語

モデル変換言語(モデルへんかんげんご、Model Transformation Language)とは、モデル駆動型アーキテクチャにおけるモデル変換を行う(コンピュータ)言語(プログラミング言語ではない)。.

新しい!!: 自動プログラミングとモデル変換言語 · 続きを見る »

モデル駆動型アーキテクチャ

モデル駆動型アーキテクチャ(モデルくどうがたアーキテクチャ、Model-Driven Architecture、MDA)とは、Object Management Group (OMG) が2001年に公式に発表したソフトウェア設計手法である。MDA はソフトウェアシステムにおけるモデル駆動工学サポートを意図したものである。.

新しい!!: 自動プログラミングとモデル駆動型アーキテクチャ · 続きを見る »

モデル駆動工学

モデル駆動工学(モデルくどうこうがく、Model-Driven Engineering、MDE)とは、アルゴリズム的な概念よりも、ドメインモデルの作成と利用を中心とするソフトウェア開発方法論の一種である。ドメインモデルとは、特定の適応領域についての知識や活動を抽象化して表現したものである。 モデル駆動工学(以下、MDE)は、工学的ライフサイクルを通して、モデルをシステム的に利用する工学手法を意味する。また、MDEの適用範囲は、ソフトウェア、システム、データ工学などである。MDEでは、モデルを第一に考える。.

新しい!!: 自動プログラミングとモデル駆動工学 · 続きを見る »

プロトタイプベース

プロトタイプベースとは、オブジェクト指向言語と総称されるプログラミング言語のうち、プロトタイプを基礎(ベース)としてオブジェクトを取り扱うものをいう。インスタンスベースとも。一方、クラスでおこなっているものをクラスベースとよぶ。なおオブジェクト指向のスタイルとして、(Simula由来の、C++などに代表される)クラスベースに対し、もう一つのスタイルとされるのは、プロトタイプベースではなく、(アラン・ケイの)「メッセージ指向」のスタイルである。 プロトタイプベースのオブジェクト指向言語は、クラスベースのオブジェクト指向言語が委譲をクラスの継承関係にもとづいておこなうのに対し、委譲を「プロトタイプ」と呼ぶ既存のオブジェクトに投げる、といったようにしておこなう点が特徴である。そのために例えば、新しいオブジェクトを作る際には、「クラスのインスタンスを作る」のではなく、「既存のオブジェクト(プロトタイプ)のクローンを作る」というようなスタイルになる。Smalltalkを元にクラスの複雑性を排除したSelfが特に有名である。他にJavaScript、NewtonScript、Ioなどがプロトタイプベース(またはその機能を持つ)と考えられる。.

新しい!!: 自動プログラミングとプロトタイプベース · 続きを見る »

プログラミング (コンピュータ)

ンピュータのプログラミング(programming)とは、コンピュータプログラムを作成することにより、人間の意図した処理を行うようにコンピュータに指示を与える行為である。.

新しい!!: 自動プログラミングとプログラミング (コンピュータ) · 続きを見る »

プログラミングツール

プログラミングツールとは、コンピュータなどのプログラミングに使う、ツールと呼ばれるコンピュータ・プログラム類のことである。この記事ではもっぱら、コンピュータ・プログラミング用のツールについて扱う。.

新しい!!: 自動プログラミングとプログラミングツール · 続きを見る »

プログラマ

プログラマ(Programmer)とは、コンピューターのプログラムを作成する人全般を指す。プログラマーとも表記される(#プログラマに対する呼称参照)。.

新しい!!: 自動プログラミングとプログラマ · 続きを見る »

プログラム (コンピュータ)

ンピュータプログラム(英:computer programs)とは、コンピュータに対する命令(処理)を記述したものである。コンピュータが機能を実現するためには、CPUで実行するプログラムの命令が必要である。 コンピュータが、高度な処理を人間の手によらず遂行できているように見える場合でも、コンピュータは設計者の意図であるプログラムに従い、忠実に処理を行っている。実際には、外部からの割り込み、ノイズなどにより、設計者の意図しない動作をすることがある。また設計者が、外部からの割り込みの種類を網羅的に確認していない場合もある。.

新しい!!: 自動プログラミングとプログラム (コンピュータ) · 続きを見る »

プログラム合成

プログラム合成(Program Synthesis)とは、高レベルの仕様から実行可能なコンピュータプログラムを自動的に生成する技術。コンパイルと比較したとき、プログラム合成の入力となる仕様はアルゴリズム的でない。自動プログラミングとも呼ばれるが、一般に自動プログラミングと言った場合、より実用指向のプログラミングパラダイムを意味する。.

新しい!!: 自動プログラミングとプログラム合成 · 続きを見る »

テンプレートメタプログラミング

テンプレートメタプログラミング(template metaprogramming)は、メタプログラミング技法の一種であり、コンパイラがテンプレートを使って一時的ソースコードを生成し、それを他のソースコードと結合してコンパイルする方式である。テンプレートが出力するものは、コンパイル時の定数、データ構造、関数定義などがある。テンプレートの利用は言わばコンパイル時の実行である。この技法は様々な言語で使われている(C++、D言語、Eiffel、Haskell、ML、XLなど)。.

新しい!!: 自動プログラミングとテンプレートメタプログラミング · 続きを見る »

テンプレートエンジン

テンプレートエンジンはテンプレートと呼ばれる雛形と、あるデータモデルで表現される入力データを合成し、成果ドキュメントを出力するソフトウェアまたはソフトウェアコンポーネントである。テンプレートおよび成果ドキュメントは複数のこともある。成果ドキュメントには様々なフォーマットのものがあり、文書・ウェブページ・ソースコードなどがその例で、ドキュメント全体ではなく、その一部を出力することもある。.

新しい!!: 自動プログラミングとテンプレートエンジン · 続きを見る »

デイビッド・パーナス

デイビッド・ロージ・パーナス(David Lorge Parnas、1941年2月10日 - )は、オブジェクト指向の基礎となったモジュール設計の概念を生み出したソフトウェア工学の先駆者。また、精密なドキュメンテーションの支持者としても知られている。.

新しい!!: 自動プログラミングとデイビッド・パーナス · 続きを見る »

ドメイン固有モデリング

ドメイン固有モデリング(ドメインこゆうモデリング、Domain-Specific Modeling、DSM)とは、ソフトウェアなど主にITシステムで使われるシステム設計開発手法である。グラフィカルなドメイン固有言語(DSL)を使用してシステムの様々な面を表現する。DSM言語は汎用モデリング言語よりも抽象度が高く、システムを記述するのに詳細化を要しない。.

新しい!!: 自動プログラミングとドメイン固有モデリング · 続きを見る »

ドメイン固有言語

ドメイン固有言語(ドメインこゆうげんご、domain-specific language、DSL)とは、特定のタスク向けに設計されたコンピュータ言語である。 DSL は一種類のタスクをうまく実行することに集中したものであり、古くから存在した。何らかのプログラミング言語それ自体の構文と処理系を利用する internal DSL(あるいは embedded DSL)と、独立した構文と処理系を持つ external DSL に大別されるが、そのいずれにしても近年の、自由度と機能が高いプログラミング言語により手軽に扱えるようになったことから広まっている。ドメイン固有モデリングの支持者によれば、ドメイン固有モデリングの発達と共にDSLという用語も広く知られるようになってきた、とされる。実際にはドメイン固有言語はモデリングとは特別な関係が何もあるわけでもなく(ドメイン固有モデリングのためのドメイン固有言語、といったものはあるが)、モデリング以外にもあらゆる分野のための言語がある。 例えば、ハードウェア記述言語のVerilog HDLやVHDL、表計算ソフトのマクロ、データベースへの問い合わせ言語(SQLなど)、文脈自由文法を記述するBNFや正規文法を記述する正規表現、図を作成する言語を構築する 、音響や音楽の合成用のCsound、グラフ(ネットワーク)描画システムGraphvizのDOT言語、依存関係解決用のmakeなどがある。.

新しい!!: 自動プログラミングとドメイン固有言語 · 続きを見る »

アスペクト指向プログラミング

アスペクト指向プログラミング(アスペクトしこうプログラミング、Aspect Oriented Programming、AOP)は、オブジェクト指向ではうまく分離できない特徴(クラス間を横断 (cross-cutting) するような機能)を「アスペクト」とみなし、アスペクト記述言語をもちいて分離して記述することでプログラムに柔軟性をもたせようとする試み。アスペクトの例としては、データ転送帯域の制限や例外の処理などがある。Java にアスペクト指向的要素を追加したAspectJ が実験的に実装されている。 オブジェクト指向プログラミングとは直交するプログラミングパラダイムである。 既存のプログラミングパラダイムを置き換えるものではなく、あくまで既存の言語の補助機能として利用されることを目的としている。.

新しい!!: 自動プログラミングとアスペクト指向プログラミング · 続きを見る »

インテンショナルプログラミング

インテンショナルプログラミング(intentional programming)は、プログラミングにおいて、ソースコードにインテンション(意図、意向)と呼ばれる正確な情報を反映させるコンセプトの集合である。インテンションとは、プログラマが構想を練る際に頭の中に生じる概念をさす。プログラマの思考と抽象化のレベルをうまく一致させ、ソースコードの閲覧とプログラムの保守を容易にする。 インテンショナルプログラミングはマイクロソフトに長く勤めたチャールズ・シモニーが提唱した考え方である。彼はマイクロソフトリサーチで、この概念を実証する IP と名づけた統合開発環境の開発を指揮した。理由は不明だが、マイクロソフトはインテンショナルプログラミングに関する作業を止めさせたため、IP の開発は2000年代初期に中止された。 インテンショナルプログラミングに関するよい解説は「Generative Programming: Methods, Tools, and Applications」という本の11章にある。.

新しい!!: 自動プログラミングとインテンショナルプログラミング · 続きを見る »

ウィザード (ソフトウェア)

ウィザード (Wizard) は対話型のコンピュータプログラムであり、使用者に対して段階を踏襲しつつ複雑な作業を行わせるユーザインタフェイスである。一般的な考え方とは異なり、使用者は既定の順序で作業の処理を強いられるものの、複雑でそれほど頻繁に行わない作業の場合、ウィザードを使った方が簡単となることも多い。一部のオープンソースソフトウェアでは、ウィザードをドルイド (Druid) と呼ぶ。 ウィザードは1991年に Microsoft Publisher で最初に使われたとされる。ウィザードの一例はWindowsの「インターネット接続ウィザード」である。これは、どうコンピュータがインターネットに接続しているかについての情報を使用者に要求することによって、コンピュータのネットワーク設定を行う。2001年ごろまでに、ウィザードはエンドユーザの利用するOSでは一般的となった。macOSでは「アシスタント」と呼ばれ、「セットアップ・アシスタント」はMacintoshに最初に電源を入れたときに動作し、「ネットワーク・セットアップ・アシスタント」は前述の「インターネット接続ウィザード」と同様の働きをする。 航空券予約サイトのような、やり取りが長くなるウェブアプリケーションでも、ウィザードが使われる。Oracle Designer などのソフトウェアでもウィザードが多用されている。 対照的に、エキスパートシステムは問題を解決するために、人工知能または他の複雑なアルゴリズムを使用する傾向があり、一連の質問(通常Y / N方式)を通して誘導する。エキスパートシステムを、ウィザードを含むすべての問題解決プログラムを代表する一般のカテゴリと考える場合もある。 ユーザインタフェース設計の観点からの議論として、ウィザードはきわめてモーダル指向が強いという点が挙げられる。一般に、ユーザに状態を強いるモーダルなユーザインタフェースは良くなく、モードレスなほうが良いとする基本的な考え方がある(モード (ユーザインタフェース) の記事も参照のこと。むろん例外も多いが)。ウィザード方式を支持する意見は、しかしそれでも、「ウィザードは使いやすい」ので「使いやすさを優先すべき」というものである。.

新しい!!: 自動プログラミングとウィザード (ソフトウェア) · 続きを見る »

オントロジー

ントロジー()は、哲学用語で存在論のこと。ものの存在自身に関する探究、あるいはシステムや理論の背後にある存在に関する仮定という意味である。これから派生して情報科学等でも用いられる。.

新しい!!: 自動プログラミングとオントロジー · 続きを見る »

オブジェクト関係マッピング

ブジェクト関係マッピング(英: Object-relational mapping、O/RM、ORM)とは、データベースとオブジェクト指向プログラミング言語の間の非互換なデータを変換するプログラミング技法である。オブジェクト関連マッピングとも呼ぶ。実際には、オブジェクト指向言語から使える「仮想」オブジェクトデータベースを構築する手法である。オブジェクト関係マッピングを行うソフトウェアパッケージは商用のものもフリーなものもあるが、場合によっては独自に開発することもある。.

新しい!!: 自動プログラミングとオブジェクト関係マッピング · 続きを見る »

オブジェクト指向分析設計

ブジェクト指向分析設計 (オブジェクトしこうぶんせきせっけい、OOAD、object-oriented analysis and design) は、ソフトウェア工学において、ソフトウェア (システム) を相互作用するオブジェクトの集まりとしてモデル化 (オブジェクト指向モデリング) する、オブジェクト指向に基づくソフトウェア開発の方法である。オブジェクト指向の理論的枠組みに基づくソフトウェア開発、すなわちオブジェクト指向開発を行う際の、ソフトウェア開発工程において、分析工程であるオブジェクト指向分析 (OOA; object-oriented analysis) と、設計工程であるオブジェクト指向設計 (OOD; object-oriented design) の、総称である。なおプログラミング工程は、オブジェクト指向プログラミング (OOP; object-oriented programming) という。オブジェクト指向プログラミングの詳細については同項目を参照のこと。オブジェクト指向開発の具体的な方法論を、オブジェクト指向開発方法論 (object-oriented methodology) という。この項目では、オブジェクト指向開発におけるオブジェクト指向分析とオブジェクト指向設計、およびオブジェクト指向開発方法論を、主に説明する。.

新しい!!: 自動プログラミングとオブジェクト指向分析設計 · 続きを見る »

クラス (コンピュータ)

ラス()は、クラスベースのオブジェクト指向においてオブジェクトの設計図にあたるもの。抽象データ型の一つ。クラスから生成したオブジェクトのことをインスタンスという。 クラスには、インスタンスの保持するデータ(メンバ変数、フィールド(UMLでは「属性」ともいう))と操作(メソッド、メンバ関数)が記述される。 クラスは、継承・ポリモーフィズム・カプセル化などの、オブジェクト指向プログラミングにおける重要な概念を実現する強力な手段である。.

新しい!!: 自動プログラミングとクラス (コンピュータ) · 続きを見る »

グラフィカルユーザインタフェース

GUIを提供するソフトウェアの1つ、GNOME グラフィカルユーザインタフェース('''G'''raphical '''U'''ser '''I'''nterface、GUI)は、コンピュータグラフィックスとポインティングデバイスなどを用いる、グラフィカル(ビジュアル)であることを特徴とするユーザインタフェース。キャラクタユーザインタフェース (CUI) やテキストユーザインタフェース (TUI) と対比して語られることが多い。.

新しい!!: 自動プログラミングとグラフィカルユーザインタフェース · 続きを見る »

コンパイラ

ンパイラ(英:compiler)とは、コンピュータ・プログラミング言語の処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語に(あるいは、元のプログラムよりも低い水準のコードに)変換するプログラムである。.

新しい!!: 自動プログラミングとコンパイラ · 続きを見る »

コードの再利用

ードの再利用(コードのさいりよう)またはソフトウェアの再利用とは、既存のソフトウェアまたはソフトウェアの知識を活用し、新たなソフトウェアを構築すること。コードの再利用はプログラミングの黎明期から行われてきた。プログラマは常にコードの一部、テンプレート、関数、プロシージャを再利用している。ソフトウェアの再利用はソフトウェア工学の研究対象である。.

新しい!!: 自動プログラミングとコードの再利用 · 続きを見る »

コード生成

ード生成(Code Generation)とは、コンパイルの最終段階であり、ソースコードの意味が実現された目的コードを生成する過程である。「何らかの目的コード」が具体的には、機械語である場合もあれば、アセンブリ言語である場合もあれば、バイトコードや、場合によっては「ソースコード側が比較すれば高水準であるのに対して低水準な側であると言える言語(例えばC言語など)」ということもある。同程度の水準の言語間の変換を指すトランスパイルなどという語も近年はできた。.

新しい!!: 自動プログラミングとコード生成 · 続きを見る »

ジェネリックプログラミング

ェネリック(総称あるいは汎用)プログラミング(generic programming)はデータ形式に依存しないコンピュータプログラミング方式である。.

新しい!!: 自動プログラミングとジェネリックプログラミング · 続きを見る »

スニペット

ニペット()とは、「断片」という意味である。情報処理の分野ではよく使う短いプログラムコードを統合開発環境から呼び出す機能の事である。 また、呼び出される短いコードの事をスニペットと呼ぶ場合もある。 オンスクリーン・キーボードのOnboardでは、あらかじめよく使う言葉などを登録しておき、1回クリックするだけでテキストの断片が入力できる短縮入力のことをスニペットと呼ぶ。.

新しい!!: 自動プログラミングとスニペット · 続きを見る »

ソースコード

青で示されているのが有効なコードである。 ソースコード(source code)とは、コンピュータプログラミング言語で書かれた、コンピュータプログラムである文字列(テキストないしテキストファイル)のことである。.

新しい!!: 自動プログラミングとソースコード · 続きを見る »

ソフトウェアファクトリー

フトウェアファクトリー(Software Factory)とは、関連するソフトウェア資産の構造化された集合体であり、特定の外部インタフェース定義に従ったソフトウェアアプリケーションまたはソフトウェアコンポーネントの製造を助ける。ソフトウェアファクトリーは、製造業の技法と原則をソフトウェア開発に適用するもので、それによって製造業の長所を模倣しようとするものである。また、ソフトウェアファクトリーは、一般にソフトウェア製造のアウトソーシングと関係が深い。.

新しい!!: 自動プログラミングとソフトウェアファクトリー · 続きを見る »

ソフトウェアコンポーネント

UML 2.0 のコンポーネント図で、2つのコンポーネントを表現した例。CheckoutコンポーネントはCardProcessingコンポーネントを使用している。 ソフトウェアコンポーネント(Software Componentry)は、ソフトウェアシステムの様々な機能を関心の分離によって分割したものである。システムを独立した結合の弱い再利用可能なコンポーネント群で構成する設計技法は Component-based software engineering (CBSE) と呼ばれ、ソフトウェア工学の一分野となっている。 コンポーネントの考え方は、サービス指向の起点となっている。例えば、Webサービスやサービス指向アーキテクチャ (SOA) ではソフトウェアコンポーネントの考え方を発展させサービスをコンポーネント化するという考え方をする。.

新しい!!: 自動プログラミングとソフトウェアコンポーネント · 続きを見る »

紙テープ

紙テープ (かみテープ、paper tape, punched tape)は、細い一定幅の長い紙のこと。一般に芯に巻きつけた形で提供される(紙巻テープともいう)。価格が安価であり、表面への装飾が可能である。巻きつけた形のためコンパクトであり、ドラムなどに取付けて機械的に駆動すれば時間と同期した出力を得ることができる。このことから過去において初期の記録媒体(電信機、テープレコーダー(磁気テープのベースとして))としても使用された。.

新しい!!: 自動プログラミングと紙テープ · 続きを見る »

統合開発環境

統合開発環境(とうごうかいはつかんきょう)、IDE (Integrated Development Environment) は、ソフトウェアの開発環境。 従来、コンパイラ、テキストエディタ、デバッガなどがばらばらで利用していたものをひとつの対話型操作環境(多くはGUI)から利用できるようにしたもの。最近のIDEには、GUIアプリケーション開発のための迅速なプロトタイピング (RAD) が可能なものが多い。統合開発環境を使うことによって、巨大かつ複雑なソフトウェアでも、作成者に負担をかけることなく開発することが可能になる。.

新しい!!: 自動プログラミングと統合開発環境 · 続きを見る »

統一モデリング言語

統一モデリング言語(とういつモデリングげんご、UML、英: Unified Modeling Language)は、主にオブジェクト指向分析や設計のための、記法の統一がはかられた(Unified)モデリング言語(Modeling Language)である。仕様記述言語であるなどとされることもあるが、統一されているのは構文に相当する記法だけで、仕様を表現するような意味が形式的に与えられていない図もあるので、形式仕様記述言語ではない。 最初期の版はラショナルにおいて、グラディ・ブーチ、イヴァー・ヤコブソン、ジェームズ・ランボーの3人が策定した。この3人はスリーアミーゴスと呼ばれている。現在は Object Management Group(OMG) が管理しており、現在最も普及していると主張されている。2015年7月現在の最新版は UML 2.5 であり、ISO/IEC 19501:2005 として UML 1.4.2 を、また、ISO/IEC 19505-1:2012 ならびに ISO/IEC 19505-2:2012 として UML 2.4.1 を標準化している。 UML 2.0 以降では、ダイアグラム(図法)が13種類もあり(#UMLのダイアグラムを参照)、各種の図法を必要に応じて使い分けなければならない(というより、別に節を改めて説明しているが、単なる肥大化であり、単に必要ないものは無視すべきということである)。よく使う図としては、ユースケース図、ステートマシン図、シーケンス図、クラス図などがある。UMLはデザインパターンを説明するために良く使われている。.

新しい!!: 自動プログラミングと統一モデリング言語 · 続きを見る »

高水準言語

水準言語(high-level programming language: こうすいじゅんげんご、高級言語とも)とは、記述の抽象度が高いプログラミング言語のことである。対義語は機械語やアセンブリ言語を指す「低水準言語」である。「高級言語」の対は「低級言語」である。.

新しい!!: 自動プログラミングと高水準言語 · 続きを見る »

FORTRAN

FORTRAN(フォートラン)は、1954年にIBMのジョン・バッカスによって考案された、コンピューターにおいて広く使われた世界最初の高級言語である。.

新しい!!: 自動プログラミングとFORTRAN · 続きを見る »

Meta-Object Facility

Meta-Object Facility(MOF)とは、OMGの定めたモデル駆動工学のための標準規格である。公式ページは。.

新しい!!: 自動プログラミングとMeta-Object Facility · 続きを見る »

Microsoft Visual Studio

Microsoft Visual Studio(マイクロソフト ビジュアル スタジオ)はマイクロソフトのソフトウェア開発製品群およびそれらを管理する統合開発環境である。.

新しい!!: 自動プログラミングとMicrosoft Visual Studio · 続きを見る »

QVT

QVT(Queries/Views/Transformations)とは、Object Management Groupが定義したモデル駆動型アーキテクチャにおけるモデル変換の標準である。Meta-Object Facility(MOF)に関連する標準であることから、MOF QVT とも呼ばれる。.

新しい!!: 自動プログラミングとQVT · 続きを見る »

XML Metadata Interchange

XML Metadata Interchange(XMI)とは、Extensible Markup Language (XML)を使ってメタデータ情報を交換する標準規格であり、OMGが策定した。Meta-Object Facility (MOF)で表現できるメタモデルに従うメタデータを扱うことができる。XMIの典型的な利用法として、UMLモデルの交換形式としての利用があるが、他の言語のモデル(メタモデル)のシリアライズにも使うことができる。.

新しい!!: 自動プログラミングとXML Metadata Interchange · 続きを見る »

XML変換言語

XMLからXMLへの変換 XML変換言語とは、XML文書を入力とし、何らかの目的に適合したXML文書(に必ずしも限らない)を出力するような変換を行う変換言語である。.

新しい!!: 自動プログラミングとXML変換言語 · 続きを見る »

.NET Framework

Microsoft.NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発・実行環境である。 Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。.

新しい!!: 自動プログラミングと.NET Framework · 続きを見る »

ここにリダイレクトされます:

ソースコード生成生成的プログラミング

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »