JP2021505983A - 新しいプログラミング言語 - Google Patents
新しいプログラミング言語 Download PDFInfo
- Publication number
- JP2021505983A JP2021505983A JP2020521323A JP2020521323A JP2021505983A JP 2021505983 A JP2021505983 A JP 2021505983A JP 2020521323 A JP2020521323 A JP 2020521323A JP 2020521323 A JP2020521323 A JP 2020521323A JP 2021505983 A JP2021505983 A JP 2021505983A
- Authority
- JP
- Japan
- Prior art keywords
- item
- identity
- role
- data
- items
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
アイデンティティデータ型は、すべてのシーンの情報を含む。識別情報は、定義されるときに、各シーンで果たす役割を記述する必要がある。たとえば、テーブル:データベース内の1つのテーブルである。それは、マスターとして働くとき、すなわち、独立した管理インターフェースにある間、フロントインターフェースでのグリッド制御である。また、他のインターフェースによって呼び出されたとき(ゲストとして働くとき)、ドロップダウン制御またはツリー制御などである。
関係データ型は、以下の2つのアイデンティティ、すなわちアイデンティティA、アイデンティティBなど、様々なシーンにおける2つのアイデンティティ項目の間の関係を記述し、それらは、データベース内の1対多の関係であり、アイデンティティAは1、アイデンティティBは多を示す。UIインターフェースでは、アイデンティティAのレコードが変更されると(変更項目は、この新しいプログラミング言語を使用して開発者によって構成することができる)、アイデンティティBは、操作をリフレッシュする。
役割データ型は、2つ以上のアイデンティティ項目間のアクションまたは相乗効果を記述する。アイデンティティ項目がタスクを完了するために他のアイデンティティ項目と協力する必要があるとき、役割が必要である。役割項目は、アイデンティティ項目と関係項目の両方が明確であることに基づいて定義され、すなわち、役割を定義するとき、関係項目が最初に定義され、次いで、役割が定義される。たとえば、アイデンティティAおよびアイデンティティB:それらの間には1対多の関係があり、時として、ユーザは、インターフェース上でそれらを使用する場合がある。アイデンティティAについて、アイデンティティAがアイデンティティBの情報を検索する必要がある場合、またはアイデンティティAがアイデンティティBの情報をカウントする必要がある場合、この場合、アイデンティティAは役割を使用する必要がある。役割項目は、役割スキルを含む。
シーンデータ型は、ソフトウェアの各実行ポイントを定義し、たとえば、データベースは、データベースエンドを示し、クライアントは、クライアントエンドを示し、サーバは、サーバエンドを示し、ブラウザは、ブラウザエンドを示し、モバイルは、モバイルエンド(またはフォンエンドもしくはパッドエンド)を示す。メンバーの定義はシーンごとに異なる。
スキルデータ型は、アイデンティティスキル項目および役割スキル項目に分けられ、これらはそれぞれ、アイデンティティ項目のアクションおよびシーン項目のアクションに使用される。1つのスキルが複数のシーンにまたがる可能性があるので、スキルデータ型は、シーン情報を含む。
データフロー型は、データフローまたはデータの宛先およびソースを定義する。テーブルレベルのフィールド項目を定義する必要がある場合、このフィールドのデータのソースを定義する必要がある。以下のようにいくつかのソース分類がある。
Design:設計ユーザの入力または選択から
Debug:デバッグのユーザの入力または選択から
Install:インストールユーザの入力または選択から
User:最終的な操作ユーザの入力または選択から
UserSelect:ユーザ選択から、選択される項目を示す
Table:テーブルまたは他のアイデンティティ項目から、他のテーブル項目を指定する
Field:テーブル内のフィールドから
Record:テーブル内の1つのレコードから
Function:関数から、関数名を示す
Interface:インターフェースから
Instance:インスタンスから
Machine:マシンまたは機器から
Other:他の項目から
構成データ型は、以下のレベルに分けられ、誰がそれらを別々に構成するかを示す。
design:設計者または開発者
debug:テスター
install:インストーラ
user:ユーザ
everyone:全員
Integer:nullオプションが許可されるかどうか、最小値、最大値を含む整数項目
Decimal:nullオプションが許可されるかどうか、最小値、最大値、および10進数を含む整数項目
Number:nullオプションが許可されるかどうか、最小長、および最大長を含む数値項目
String:nullオプションが許可されるかどうか、最小長、最大長、許可された項目、拒否された項目、正規表現、カスタム関数項目を含む文字列項目
Datetime:nullオプションが許可されるかどうか、日付の最小値、日付の最大値、日付形式を含む日付項目
File:nullオプションが許可されるかどうか、最小値、最大値を含むファイル項目
"businessCheck":ビジネスロジックチェック項目
新gradグリッド制御データ型は、通常のグリッド表示機能に加えて、パラメータエリア、表示エリア(ビューエリア)、編集エリアを追加するという点で、従来の制御とは異なる。これら3つのエリアは、1つの制御に統合され、それらの間の相互作用は、この新しいプログラミング言語によって調整または解釈される。パラメータエリアは、データを抽出しながらフィルタリングするためのグリッド制御を提供する。表示エリアは、ユーザがグリッド制御のレコードの行をクリックすると、詳細を表示する。編集エリアは、ユーザがボタンをクリックした後に編集する必要があるコンテンツの詳細をユーザに表示する。表示エリアと編集エリアを組み合わせることができる。ここで、gradグリッドの各内部項目、パラメータエリアの各内部項目、編集エリアの各内部項目、および表示エリアの各内部項目は、設計者または最終ユーザによって構成することができる。
{
//システムの基本的なデータ型
system sheet object [アイデンティティ項目、役割項目](
string name [アイデンティティ項目、役割項目]
, string parent [アイデンティティ項目、役割項目]
, string comx [アイデンティティ項目、役割項目]
, string summery [アイデンティティ項目、役割項目]
, string tName [アイデンティティ項目、役割項目])
{
{ …… }
{int, , , "システムの基本的なデータ型", struct}
{long, , , "システムの基本的なデータ型", struct}
{string, , , "システムの基本的なデータ型", class}
{ …… }
}
}
c#.netなど、現在の主流のプログラミング言語では、以下の通りである。
namespace byt
{
public class Class1
{
public string name {get; set;}
}
}
package test;
public class abc {
}
bydatabase by
{
//すべてのシステムの基本的な型、言語レベルのコンテンツを配置する。
}
database stock
{
//ユーザによって定義または構成されたすべてのコンテンツを配置する。
}
1.システムテーブルのデータ型の実現
database by
{
system sheet cmd[関係項目、アイデンティティ項目、役割項目](string name[関係項目、アイデンティティ項目、役割項目], string summery )
{
{config, "構成キーワード"}
{constraint, "制約項目"}
}
}
実行時間中のシステムテーブルとデータテーブルとの間の呼出しを実現するには、以下の2つの実現方法がある。
キャッシュテーブルは、他のテーブルのデータを一時的に記憶するためにのみ使用される。キャッシュテーブル内のデータは、他のテーブルからのものである必要がある。以下のように、レコードの1つの参照項目、またはテーブルの1つの参照項目のみが記録される。
/*システム環境テーブル*/
cache sheet environment [ identity.cache ] (
string tableName [ identity.refTable ]
, string fieldName [ identity.refField ]
, object ID [ identity.refRecord ]
, string summery [ identity.summery ] )
{
{ language , name , cn , "デフォルトの簡体字中国語" }
}
1.オブジェクトの実現
オブジェクトの実現は、"object"テーブル、"object.state"テーブル、および"object.attribute"テーブルの3つのテーブルを含んでいる。合わせて、これら3つのテーブルは、このプログラミング言語ですべてのシステム内に含まれるオブジェクト、およびユーザによって追加されたオブジェクトを記述する。オブジェクトが追加されるたびに、オブジェクトの名前、親オブジェクト、組合せ項目、説明項目、およびアイデンティティ項目のレコードがオブジェクトテーブルに追加される。"object.state"テーブルは、オブジェクトテーブルに対して実行可能な操作を含む。"object.attribute"テーブルは、各オブジェクトテーブル内のオブジェクトが所有する属性(プロパティ)を含む。
global system sheet object [アイデンティティ項目、役割項目]
(string name [アイデンティティ項目、役割項目],
string parent [アイデンティティ項目、役割項目],
string comx [アイデンティティ項目],
string summary [アイデンティティ項目],
string tName [アイデンティティ項目])
{
…
{ int , , , "システムの基本的なデータ型" , struct }
{ table.rows , table , include , "システムの基本的なデータ型" , class }
…
}
system sheet object.state [アイデンティティ項目、役割項目]
(string belong[アイデンティティ項目],
string name[アイデンティティ項目],
string summary[アイデンティティ項目])
{
…
{button.add , add , "追加"}
{button.add , complete , "完了"}
…
}
system sheet object.attribute [アイデンティティ項目、役割項目]
(string belong [アイデンティティ項目],
string name [アイデンティティ項目],
object obj,
bool isStatic,
bool isPublic
)
{
…
{int, max, int, true, true}
{dataview, rowFilter, string, false, true}
…
}
system sheet method(
string belong [アイデンティティ項目],
string name,
string[] paraType [アイデンティティ項目],
string[] paraName,
string returnType [アイデンティティ項目],
bool isStatic,
string body,
string summary [アイデンティティ項目]
)
{
…
{nodes, add, [node], [treeNode], int, false, {by}, {ノードをコレクションに追加し、ノードインデックスを戻します}}
{nodes, clear, [], [], void, false, {by}, {コレクション内のすべての要素を削除します}}
…
}
System sheet A [ identity.dictionaryRecord, relation.recordToField.record, role. recordActualize.record ](
string f1 [ identity.ID, relation.partner.A, role.valueDisplay.value ]
, string f2 [ identity.summery, relation.partner.B, role.valueDisplay.display ] )
{
{id1, "第1のレコード"}
{id2, "第2のレコード"}
}
System sheet B [ identity.actualize, relation.recordToField.actualize, role.recordActualize.actualize ] (
string id1 [ identity.refRecord : A.id1 ]
, string id2 [ identity.refRecord : A.id2 ] )
{…内容省略…,…内容省略…}
1.アイデンティティ項目(アイデンティティ型)の定義
アイデンティティ項目(アイデンティティ型)は、アイデンティティテーブルで以下のように定義される。
System sheet identity [ identity.master, role.masterDetail.master, role.masterExtend.master ] (
string name [ identity.ID, role.tree.current ]
, string parent [ identity.refField : identity.name, role.tree.parent ]
, string comx [ identity.refField : reserve.family ]
, string summery [ identity.summery ] )
{
{ system, , , "by 言語システムアイデンティティ" }
//フィールド項目およびその子項目
{ field, , , "フィールド項目" }
{ ID, field, inherit, "固有のアイデンティティフィールド" }
{ summery, field, inherit, "説明フィールド" }
{ reference, field, , "参照項目" }
{ refField, reference, inherit, "参照項目フィールド(このフィールドはプライマリキーではありません) }
{ refRecord, reference, inherit, "参照テーブルの1つのレコード" }
……
// テーブル項目およびその子項目
{ table, , , "テーブル項目" }
{ master, table, inherit, "マスターテーブル" }
{ extend, table, inherit, "拡張テーブル" }
{ actualize, table, inherit, "実現化テーブル" }
{ dictionary, table, inherit, "辞書テーブル" }
{ dictionaryRecord, dictionary, inherit, "辞書レコードテーブル" }
……
//ブロック項目およびその子項目
{ block, , , "ブロック項目" }
{ masterExtend, block, inherit, "マスター拡張テーブル項目" }
{ masterDetail, block, inherit, "マスターテーブル詳細アイデンティティ" }
……
//機能項目およびその子項目
{ function, , , "機能" }
{ language, function, inherit, "言語項目" }
……
//すべての項目およびその子項目
{ everyone, , , "すべて" }
{ design, everyone, inherit, "設計者" }
{ debug, everyone, inherit, "テスター" }
{ install, everyone, inherit, "インストーラ" }
{ user, everyone, inherit, "ユーザ" }
……
}
アイデンティティ項目の使用方法は、次の2つの方法に分けることができる。
1.テーブル名またはフィールド名の後の"[]"内にアイデンティティ項目を追加する。
2.アイデンティティ項目構成テーブルにおいてそれらを構成する。
System sheet A [ identity.dictionaryRecord ]
留意されたいのは、フィールド項目のアイデンティティを使用するとき、項目の親が「参照アイデンティティ項目」であり、参照フィールドを明示的に指定する必要がある場合、"[]"内の式は"identity.identityItemName: referenceTableName.referenceFieldName"となり、例として表Bのフィールドid1およびフィールドid2を取り上げる。
string id1 [ identity.refRecord : A.id1 ]
, string id2 [ identity.refRecord : A.id2 ]
{A_instance, identity.dictionaryRecord, A}
1).構築項目の定義
構築項目は、以下のようにアイデンティティ構築テーブルにおいて定義される。
system sheet identity.compose (
string belong [ identity.refField : identity.name ]
, string name [ identity.config ]
, string configType [ identity.reference ] /*宣言型、または型制約*/
, string cName [ identity.refField : reserve.config ]
, string roName [ identity.refField : role.detail.name ]
, string constraint [ identity.refTreeRecord : reserve.constraint ] //制約項目
, string summery [ identity.summery ] )
{
{ dictionaryRecord, idField, identity.ID, design, valueDisplay.value, must, "値項目としての役割を有するフィールドを含める必要があります" }
{ dictionaryRecord, summeryField, identity.summery, design, valueDisplay.display, must, "表示項目としての役割を有するフィールドを含める必要があります" }
}
列1:構築する必要があるアイデンティティ項目の名前
列2:構築項目の名前
列3:構築項目のアイデンティティ制約
列4:構成項目、すなわち、開発者によって手動で構成する必要がある
列5:構築項目の役割の制約
列6:制約項目であり、"Must"は「必須項目」、"Option"は「オプション項目」、および"condition"は「条件項目」を表す。
列7:構築項目の記述情報。
アイデンティティ構成テーブルの各アイデンティティインスタンス項目について、対応する構築項目をアイデンティティ構造構成テーブルにおいて構成する必要があり、これらの構築項目はすべて、アイデンティティ構築テーブルの定義からのものである。例としてテーブルAを取り上げる。
system sheet config.identity.compose (
string belong [ identity.refField:config.identity.name ]
,string composeName [ identity.refField:identity.compose.name ] //構成要素名
, string belongTo [ identity.reference ] //構成対象)
{
{ A_instance, idField, f1 }
{ A_instance, summeryField, f2 }
}
アイデンティティチェック項目は、アイデンティティチェックテーブルにおいて定義されている。テーブルAのアイデンティティチェック項目の定義は以下の通りである。
system sheet identity.check [ identity.extend, role.masterExtend.extend ] (
string belong [ identity.refFieldAsID : identity.name ]
, script body )
{
{ dictionaryRecord,
{
if(!compose.idField.isIdField)
{
popup.show("プライマリキー項目を含める必要があります!");
}
if(!compose.summeryField.isSummeryField)
{
popup.show("説明項目を含める必要があります!");
}
……
}
}
}
インスタンス化は「構文チェック」段階でシステムによって実行され、ユーザがアイデンティティ項目とそれが含むすべての項目(構築項目、チェックスクリプト...)を構成すると、「構文チェック」は一時的に中断される。そして、ユーザが構成プロセスを完了した後、アイデンティティのインスタンス化が開始される。例としてテーブルAのアイデンティティのインスタンス化を取り上げる。
次のように、テーブルAのアイデンティティのインスタンス名、A_instanceを介して、アイデンティティ構成テーブル内の対応するレコードを見つける。
{A_instance, identity.dictionaryRecord, A}
{ table, , , "テーブル項目" }
{ dictionary, table, inherit, "辞書テーブル" }
{ dictionaryRecord, dictionary ,inherit, "辞書レコードテーブル" }
スクリプトが実行される前に、これらの構築項目の制約をチェックする必要がある。このステップでは、まず、以下のように、アイデンティティ項目"dictionaryRecord"を介してアイデンティティ構築テーブルにおいて定義されている構築項目を見つけることができる。
{ dictionaryRecord, idField, identity.ID, design, valueDisplay.value, must, "値項目としての役割を有するフィールドを含める必要があります" }
{ dictionaryRecord, summeryField, identity.summery, design, valueDisplay.display, must, "表示項目としての役割を有するフィールドを含める必要があります" }
{A_instance, idField, f1}
{A_instance, summeryField, f2}
アイデンティティ項目を介してアイデンティティチェックテーブル内の対応するスクリプトを見つけ、システムは、スクリプトを解釈し、実行する。スクリプトが実行された場合、アイデンティティのインスタンス化は成功である。実行中にポップアップボックスが表示された場合、アイデンティティのインスタンス化が失敗したことを意味し、この場合、ユーザは、ポップアップボックスによって促された内容に従って、アイデンティティ構造構成テーブルをチェックする必要がある。
アイデンティティ項目とスキルとの間の対応関係は、アイデンティティスキルテーブルにおいて定義されている。さらに、どのアクション下でスキルが呼び出されるか、およびどのアイデンティティ内でスキルが呼び出されるか(ここでは、アイデンティティはマスターアイデンティティまたはゲストアイデンティティを指す)もテーブルにおいて定義されており、子は親のすべてのスキルを含む。以下は、「言語項目」アイデンティティ「翻訳」スキルの定義である。
system sheet identity .skill [ identity.detail , role.masterDetail.detail ](
string belong [ identity.refField : identity.name ]
, string name [ identity.ID ]
, string[] paraType [ identity.refField : object.name ] /*型1,型2, 型N...*/
, string[] paraName /* パラメータ名1,パラメータ名2, パラメータ名N...*/
, string returnType [ identity.refField : object.name ] /*戻り値型*/
, string summery [ identity.summery ]
, script body )
{
{ language, translate, query, guest, "翻訳",
{
//スキルメインコード
}
}
}
アイデンティティ項目、シーン、およびシーンで表されるアイデンティティ項目の意味(システムによって解釈される式の形式で記述される)は、アイデンティティシーンテーブルにおいて定義される。例として「マスターテーブル」アイデンティティ項目のアイデンティティシーンの定義を取り上げる。
system sheet identity.scene (
string iName [ identity.refField : identity.name ]
, string sName [ identity.refField : scene.name ]
, script isWho
, string summery [ identity.summery ] )
{
{ master, database, datatable, "マスターテーブル" }
{ master, client, [ host:object.grad, guest:object.popupList ], "グリッド制御がホストとして働き、ポップアップウィンドウがゲストとして働くとき" }
{ master, browser, [ host:object.grad, guest:object.popupList ], "グリッド制御がホストとして働き、ポップアップウィンドウがゲストとして働くとき" }
{ master, pad, [ host:object.grad, guest:object.popupList ], "グリッド制御がホストとして働き、ポップアップウィンドウがゲストとして働くとき" }
{ master, mobile, [ host:object.grad, guest:object.popupList ], "グリッド制御がホストとして働き、ポップアップウィンドウがゲストとして働くとき" }
}
ここでは、以下の例の「従業員情報シート」を参照する。
data sheet employees[ identity .master] (string ID, string NO, string name, string pwd ,string email, datetime entryDt, datetime dt )
{
}
アイデンティティアクション項目はアイデンティティアクションテーブルにおいて定義されており、例としてアクション項目"insert"の定義を取り上げる。
system sheet identity.action [ identity.detail, role.masterDetail.detail ](
string belong [ identity.refField : identity.name ]
, string name [ identity.config : config.data.flow.reference ], string summery [ identity.summery ] )
{
{ table, insert, "追加" }
}
例として上記のアクション項目を取り上げると、その使用は以下の通りである。
identity.table.insert.insertFlow
1.関係項目の定義
関係項目は、「テーブル関係項目」および「フィールド関係項目」に分けられ、テーブル関係項目は、2つ以上のテーブルに適しており、フィールド関係項目は、1つのテーブル内の2つ以上のフィールドに適している。関係項目は、どのメンバーが関係に含まれるか、関係詳細テーブルにおいて定義された、各メンバーの制約を含む関係テーブルにおいて定義される。
system sheet relation [ identity.master, role.masterDetailSlavery.master ] (
string name [ identity.ID, role.valueDisplay.value ]
, string summery [ identity.summery, role.valueDisplay.display ] )
{
//テーブル関係項目
{ recordToField, "レコード実現化" }
……
//フィールド関係項目
{ partner, "パートナー" }
……
}
system sheet relation.detail [ identity.slavery, role.masterDetailSlavery.slavery ] (
string rName [ identity.refField : relation.name ]
, string member [ identity.slaveryID ]
, string csName [ identity.refField : identity.name ]
, string summery [ identity.summery ] )
{
//テーブル関係項目
{ recordToField, recordToField.record, csTable, "レコードテーブル" }
{ recordToField, recordToField.actualize, csTable, "実現化テーブル" }
……
//フィールド関係項目
{ partner, partner.A, csField, "フィールドA" }
{ partner, partner.B, csField, "フィールドB" }
……
}
関係項目の使用は、"relation.relationItemName.relationItemMember"の形式で、テーブル名またはフィールド名の後の"[]"の中に関係項目を追加することである。例として以下のテーブルAおよびテーブルBの関係項目の使用を取り上げる。
System sheet A [ relation.recordToField.record ] (
string f1 [ relation.partner.A ]
, string f2 [ relation.partner.B ] )
System sheet B [ relation.recordToField.actualize ]
関係項目、シーン、およびシーン内の関係項目の意味(システムによって解釈される式の形式で記述される)は、関係シーンテーブルにおいて定義される。例として関係項目「マスターテーブル、拡張テーブル」の関係シーンの定義を取り上げる。
system sheet relation.scene (
string rName [ identity.field : relation.name ]
, string rSence [ identity.refField : sence.name ]
, script exp /*関係式*/
, string summery [ identity.summery ] )
{
{ masterExtend, database, one_to_one at least one ; all: solo, "1対1、少なくとも1つ" }
{ masterExtend, client, design config click refresh, "マスター項目をクリックして関連項目をリフレッシュする" }
{ masterExtend, browser, design config click refresh, "マスター項目をクリックして関連項目をリフレッシュする" }
{ masterExtend, pad, design config click refresh, "マスター項目をクリックして関連項目をリフレッシュする" }
{ masterExtend, mobile, design config click refresh, "マスター項目をクリックして関連項目をリフレッシュする" }
}
1.役割項目の定義
役割詳細テーブルにおいて定義される、役割に含まれるメンバー、各メンバーのアイデンティティ、各メンバーの関係を含めて、役割項目は役割テーブルにおいて定義されており、役割項目は、アイデンティティ項目および関係項目はいずれも明確であることに基づいて、設定する必要がある(「役割データ型」の説明を参照されたい)。
system sheet role [ identity.master, role.masterDetailSlavery.master ] (
string name [ identity.ID ]
, string rName [ identity.refField : relation.name ]
, string summery [ identity.summery ] )
{
{ valueDisplay, partner, "値項目、表示項目" }
{ recordActualize, recordToField, "辞書レコードテーブル、実現化テーブル" }
……
}
system sheet role.detail [ identity.slavery, role.masterDetailSlavery.slavery ] (
string roName [ identity.refField : role.name ]
, string name [ identity.slaveryID ]
, string iName [ identity.refField : identity.name ]
, string rName [ identity.refField : relation.detail.member ]
, string summery [ identity.summery ] )
{
{ recordActualize, record, dictionaryRecord, recordActualize.record, "辞書レコードテーブル" }
{ recordActualize, actualize, actualize, recordActualize.actualize , "実現化テーブル" }
{ valueDisplay, value, ID, partner.A, "値項目" }
{ valueDisplay, display, summery, partner.B, "表示項目"}
}
役割項目の使用は、テーブル名またはフィールド名の後の"[]"の中に、"role.roleItemName.memberName"の形式で役割項目を追加することである。例としてテーブルAおよびテーブルBを取り上げる。
System sheet A [ role.recordActualize.record ] (
string f1 [ role.valueDisplay.value ]
, string f2 [ role.valueDisplay.display ] )
System sheet B [ role.recordActualize.actualize ]
役割項目はスキル項目を含み、役割項目とスキル項目との間の対応関係は、役割スキルテーブルにおいて定義される。
{AVG, "対応するテーブルの平均を求める"}
{sum, "対応するテーブルの合計を求める"}
{max, "対応するテーブルの最大値を求める"}
{min, "対応するテーブルの最小値を求める"}
{count, "対応するテーブルの数字を求める"}
プロジェクトが生成されるたびに、新しく作成されたプロジェクトに対するユーザの設定を保存するために、対応する2つのテーブルが作成される。"project"という名前のシステムテーブルは、プロジェクトのカテゴリを保存するために使用され、"project.config"という名前のシステムテーブルは、ユーザによって作成されたプロジェクトのシステム構成を保存するために使用される。
system sheet project(
string name [アイデンティティ項目],
string summary [アイデンティティ項目]
)
{
…
{singleClient, "シングルクライアントエンドプロジェクト"},
{clientServer, "クライアントエンドサーバエンドプロジェクト"}
…
}
system sheet project.config(
string pName [identity.refField: project.name],
string sName [identity.refField: sence.name],
string defaultDevelop [identity.refField: reserve.language],
string licence [identity.refField: reserve.config],
string summary [identity.summary]
)
{
…
{singleClient, database, sqlServer, design, "MS SQL Server"}
{clientServer, database, sqlServer}
…
}
以下は、「employees」という名前のデータテーブル(一例)である。
data sheet employees[ identity .master] (
string ID
,string NO
,string name
,string pwd
,string email
,datetime entryDt
,datetime dt
){ }
system sheet config.data.source[identity.config](
string belong [identity.refRecord]
,string name [identity.name]
,string equal [identity.refField]
,string sourceDic [identity.refRecord:reserve.source]
,string sourceParameter [identity.refRecord:reserve.source]
,string fromAction [identity.refRecord:reserve.dataAction]
,string currentAction [identity.refRecord:reserve.dataAction]
,string hostGuet [identity.refRecord:reserve.hostGuest]
)
{
{employees.ID,autoNo, ,function,object.field.generation.autoNO(), ,insert,host}
{employees.NO,userInput, ,user, , ,insert,host}
{employees.name,userInput, ,user, , ,[insert,update],host}
{employees.pwd,userInput, ,user, , ,[insert,update],host}
{employees.email,userInput, ,user, , ,[insert,update],host}
{employees.dt,getDate, ,function,datetime.now().format(reserve."yyyy-MM-dd HH:mm:ss"), ,insert,host}
}
system sheet config.data.flow [ identity.table ](
string NO[identity.ID]
, string belong [ identity.refTable ]
,string action[identity.refRecord:reserve.dataAction]
,string summery [ identity.summery ]
,string[] body[identity.refField:dataSource.name]
)
{
{ employeesInsert , employees ,insert, "employeesテーブルにおいてデータを追加する" ,
{
employees.ID:autoNo,
employees.NO:userInput,
employees.name:userInput,
employees.pwd:userInput,
employees.email:userInput,
employees.dt:getDate
}
}
{ employeesUpdate , employees ,update, "employeesテーブルにおいてデータを更新する" ,
{
employees.name:userInput,
employees.pwd:userInput,
employees.email:userInput
}
}
{ employeesDelete , employees ,delete, "employeesテーブルからデータを削除する" ,
{
//employees.ID.autoNo
}
}
}
system sheet config.data.flow.reference [ identity.table ](
string belongFlow [ identity.refField:flow.NO ] //データフロー
,string belongTo [ identity.reference ] //このデータフローがそのために構成されている
,string belongFrom [ identity.reference ] //構成されるべきデータのデータソースアドレスを指定する
)
{
{employeesInsert,employees,identity.table.insert}
}
"{employeesInsert, employees, identity.table.insert}"
1."config.data.guide"テーブルは、構成パラメータのガイドテーブルである。
この項目は、型のために構成されたテンプレート制約項目、または構成パラメータのソース項目であり、テーブル、ライブラリ、フィールド、またはレコード項目を構成することができる。このテーブルにおいて設定された項目は、構成の範囲を宣言するテンプレート制約項目である。テーブルの詳細は以下の通りである。
system sheet config.data.guide(
string belong [identity.refRecord:reserve.config]
,string name [identity.name]
,string range [identity.reference]
,string constraint[identity.refTreeRecord:reserve.constraint]
,string poser [identity.refTreeRecord:identity.everyone]
,string vertify [identity.vertify]
,string summery [identity.summery]
)
{
{database,name,string,must,install,{vertify.string.Variable},"サードパーティデータベース内の名前、この項目は、インストールレベル以上のユーザによって構成されます。"}
{database,IP,string,must,install,{vertify.string.IP},"IPアドレス、この項目は、インストールレベル以上のユーザによって構成されます。"}
{database,user,string,must,install,{vertify.string.Variable},"ユーザ名、この項目は、インストールレベル以上のユーザによって構成されます。"}
{database,password,string,must,install,{vertify.string.password},"パスワード、この項目は、インストールレベル以上のユーザによって構成されます。"}
//構成フィールド項目
{field,summery,string,option,design,{vertify.string.length128},"説明項目"}
{field,dbName,string,must,design,{vertify.string.Variable},"データベース内のフィールド名"}
{field,dbDataType,string,must,design,{vertify.string.Variable},"データベース内のフィールド型"}
{field,dbDefaultValue,string,option,design,{},"データベース内のフィールドデフォルト"}
{field,dbPrimaryKey,bool,must,design,{},"データベースの現在のフィールドがプライマリキーであるかどうか"}
{field,UIName,string,must,everyone,{vertify.string.length128},"ユーザインターフェースに表示される名前"}
{field,UIEditName,string,option,everyone,{vertify.string.length128},"ユーザインターフェースの編集エリアに表示される名前"}
{field,UIViewName,string,option,everyone,{vertify.string.length128},"ユーザインターフェースの表示エリアに表示される名前"}
{field,UIParameterName,string,option,everyone,{vertify.string.length128},"ユーザインターフェースのパラメータエリアに表示される名前"}
//構成テーブル項目
{table,summery,string,option,everyone,{vertify.string.length128},"説明項目"}
{table,UIName,string,option,everyone,{vertify.string.length128},"ユーザインターフェースに表示される名前"}
}
system sheet config.data(
string name [identity.reference]
,string belongConfig [identity.refRecord:reserve.config]
,string belongGuide [identity.refField:config.data.guide ]
,string value [identity.parameter]
)
{
//フィールド
//構成例
{employees.ID,field,summery,"自動ナンバリング"}
{employees.ID,field,dbName,ID}
{employees.ID,field,dbDataType,{reserve.developer.sqlServer:int}}
{employees.ID,field,dbDefaultValue, }
{employees.ID,field,dbPrimaryKey,true}
{employees.ID,field,UIName,"ナンバリング"}
{employees.ID,field,UIEditName,"自動ナンバリング"}
{employees.ID,field,UIViewName,"自動ナンバリング"}
{employees.ID,field,UIParameterName,"自動ナンバリング"}
//フィールド
//入力日
{employees.entryDt,field,summery,"入力日"}
{employees.entryDt,field,dbName,ID}
{employees.entryDt,field,dbDataType,datetime}
{employees.entryDt,field,dbDefaultValue, {datetime.now().format(reserve."yyyy-MM-dd HH:mm:ss")}}
{employees.entryDt,field,dbPrimaryKey,true}
{employees.entryDt,field,UIName,"入力日"}
{employees.entryDt,field,UIEditName,"入力日"}
{employees.entryDt,field,UIViewName,"入力日"}
{employees.entryDt,field,UIParameterName,"入力日"}
//フィールド
//入社日
{employees.dt,field,summery,"入社日"}
{employees.dt,field,dbName,ID}
{employees.dt,field,dbDataType,datetime}
{employees.dt,field,dbDefaultValue, {reserve.developer.sqlServer:getdate()}}
{employees.dt,field,dbPrimaryKey,true}
{employees.dt,field,UIName,"入社日"}
{employees.dt,field,UIEditName,"入社日"}
{employees.dt,field,UIViewName,"入社日"}
{employees.dt,field,UIParameterName,"入社日"}
//データテーブル
//構成例
{employees,table,summery,"従業員情報フォーム"}
{employees,table,UIName,"従業員情報"}
}
検証データ型の実現は、3つのテーブル、すなわち、"verify"テーブル、"verify.detail"テーブル、および"verify.detail.identity"(アイデンティティ検証詳細)テーブルによって実現される。"verify"テーブルは、システムにおける異なる項目に対して実行することができるすべてのタイプの検証を記憶するために使用される。"verify.detail"テーブルは、検証の特定の方法、および必要なパラメータ/デフォルト値を保持する。"vertify.detail.identity"テーブルは、アイデンティティ項目の検証のタイプを保持する。
system sheet vertify [identity.master, role.masterDetailSlavery.master](
string name [アイデンティティ項目、役割項目],
string parent [アイデンティティ項目、役割項目],
string summary [アイデンティティ項目]
)
{
…
{int, , "整数"},
{string.IP, string, "IPアドレス"}
…
}
system sheet vertify.detail [アイデンティティ項目、役割項目](
string belong[アイデンティティ項目、役割項目],
string name[アイデンティティ項目],
string defaultValue [アイデンティティ項目],
string summery [アイデンティティ項目]
)
{
…
{ int, min, -2147483648 },
{ string.password, min, 6, "最小入力"}
…
}
config sheet vertify.detail.identity(
string belong [identity.refRecord: identity.field],
string name [identity.refField: vertify.detail.name],
string defaultValue,
string poser [identity.config: identity.everyone]
)
{
…
{ID, int.min, 1, everyone}
{NO, int.min, 1, everyone}
…
}
grad新グリッド制御データ型は、オブジェクトテーブルに記憶された制御データ型の"ctrol.grad"によって実現される。gradデータ型が作成された後、ユーザは、これを操作用のグラフィカルインターフェースとして生成することができる。グラフィカルインターフェースは、ビュー(表示)エリア、編集エリア、クエリ(検索)エリア、リスト(詳細)エリアを含み、各エリアは、システムが所有する制御を含む。
{ ctrol.grad , ctrol , inherit, "グリッド制御" , class }
{ ctrol.grad.list , ctorl.grad , include , "リストエリア" , class }
{ ctrol.grad.edit , ctrol.grad , include ,"編集エリア" , class }
{ ctrol.grad.query, grad , include , "クエリエリア", class }
{ ctrol.grad.view, ctrol.grad , include , "ビューエリア" , class }
「グローバルアクセス」の実現は、インデックステーブルを介して実現される。「グローバルアクセス」とは、ユーザが変数を宣言し、その変数にオブジェクト型およびアイデンティティを割り当てた後、システムは、変数のオブジェクト型およびアイデンティティの対応するテーブルを変数自体に直接バインドすることができ、したがって、変数がその型、そのアイデンティティメソッドなどの関連を直接呼び出すことができるようになることを意味する。
system sheet index(
string name[identity.ID],
string ref[identity.reference]
)
{
…
{long, object.long},
{double, object.double}
…
}
Claims (24)
- 新しいプログラミング言語であって、この言語におけるオブジェクトの作成方法は、「テーブル」データ型を使用してオブジェクトを作成し、記述することであり、
オブジェクト名、継承関係/包含関係、記述などは、システムの「オブジェクト」テーブルによって記録され、記述され、
オブジェクト属性名、クラス、特徴などを含むオブジェクト属性は、"object.attribute"テーブルによって記録され、記述され、
オブジェクトテーブルの操作および"object.attribute"テーブルの操作は、"object.state"テーブルによって記録され、記述される、
新しいプログラミング言語。 - この言語における「メソッド」は、テーブルデータ型を介して記録され、記述され、前記メソッドが属する前記オブジェクト、メソッド名、メソッドパラメータ、メソッドタイプ、メソッド本体、メソッド記述などを前記システム内に記録するために、この言語におけるシステムテーブルのメソッドテーブルが使用される、請求項1に記載の新しいプログラミング言語。
- アイデンティティ項目(アイデンティティ型)、関係項目(関係型)、役割項目(役割型)を含む新しいプログラミング言語。
- 前記アイデンティティ項目(アイデンティティ型)、および前記アイデンティティ項目(アイデンティティ型)の実現方法は、
アイデンティティ項目の定義であり、アイデンティティ項目はツリー構造の形式でアイデンティティテーブルにおいて定義され、子項目は親項目を継承することができ、ユーザは必要に応じて前記アイデンティティテーブルを動的に拡張することができるが、カスタム定義された前記アイデンティティ項目は、システム定義されたアイデンティティ項目を継承しなければならない、アイデンティティ項目の定義と、
アイデンティティ項目の使用方法であり、アイデンティティ項目の使用の方法は、1.テーブル名またはフィールド名の後の"[]"にアイデンティティ項目を追加すること、および2.アイデンティティ構築テーブルにおいてアイデンティティ項目を直接構成することとの2つがある、アイデンティティ項目の使用方法と、
アイデンティティ項目の構築であり、構築項目は、前記アイデンティティ構築テーブルにおいて定義され、前記システム定義されたアイデンティティ項目またはユーザ定義されたアイデンティティ項目のすべてが対応する構築項目で明確に定義されなければならず、前記子項目が前記親項目と同じ構築項目によって定義されている場合、前記子項目は前記親項目の同じ項目(項目)を上書きし、前記構築項目の構成は、アイデンティティ構造構成テーブルにある、アイデンティティ項目の構築と、
アイデンティティ項目チェックであり、前記アイデンティティ項目チェックは、スクリプトによって完了され、アイデンティティ項目とスクリプトとの間の対応関係がアイデンティティチェックテーブルにおいて定義され、前記システム定義されたアイデンティティ項目は、前記システム内の前記スクリプトによってチェックされ、前記ユーザによって追加された前記アイデンティティ項目は、前記ユーザによって書き込まれる必要がある対応するチェックスクリプトによってチェックされる、アイデンティティ項目チェックと、
アイデンティティ項目インスタンス化であり、アイデンティティ項目のインスタンス化のプロセスは、1)ソースチェック:アイデンティティ項目およびその親項目が前記アイデンティティテーブルにおいて定義されているかどうかを検証し、次いで、ルート項目が正しいかどうかを検証する(テーブルのアイデンティティルート項目はテーブル項目でなければならず、フィールドの前記アイデンティティルート項目はフィールド項目でなければならない)、2)構築項目チェック:前記アイデンティティ項目内に含まれる構築項目のすべての必須オプションが構成されているかどうかを検証する、3)スクリプトチェック:各構築項目がアイデンティティ制約および役割制約を満たしているかどうかを検証する、の3つのステップを含む、アイデンティティ項目インスタンス化と、
アイデンティティ項目スキルであり、前記アイデンティティ項目と前記スキルとの間の前記対応関係がアイデンティティスキルテーブルにおいて定義され、さらに、どのアクションの下で前記スキルが呼び出され、どのアイデンティティ(ここでは、前記アイデンティティは、マスターアイデンティティまたはゲストアイデンティティを指す)で前記スキルが呼び出されるかも前記テーブルにおいて定義されており、子は、親の前記スキルのすべてを含む、アイデンティティ項目スキルと、
アイデンティティ項目シーンであり、アイデンティティ項目、シーン、およびこのシーンにおけるアイデンティティ項目によって表される意味(前記システムによって解釈される式の形式で記述される)は、アイデンティティシーンテーブルにおいて定義される、アイデンティティ項目シーンと、
アイデンティティ項目の前記アクションであり、アイデンティティアクション項目は、アイデンティティアクションテーブルにおいて定義され、データフローは、前記アイデンティティアクション項目を使用することによって操作することができる、アイデンティティ項目の前記アクションと
を含む、請求項3に記載の新しいプログラミング言語。 - 前記関係項目(関係型)および前記関係項目(関係型)の実現方法は、
関係項目の定義および使用であり、関係項目は、関係項目テーブルにおいて定義され、どのメンバーが関係に含まれるか、および各メンバーの制約条件は、関係詳細テーブルにおいて定義される、関係項目の定義および使用と、
関係項目の使用であり、前記関係項目の使用方法は、"relation.relationItemName.memberName"である、関係項目の使用と、
関係項目シーンであり、関係項目、シーン、およびこのシーンのアイデンティティ項目によって表される意味(前記システムによって解釈される式形式で記述される)は、関係シーンテーブルにおいて定義される、関係項目シーンと
を含む、請求項3に記載の新しいプログラミング言語。 - 前記役割項目(役割型)、および前記役割項目(役割型)の実現方法であり、前記役割項目は、特定のアイデンティティ項目および特定の関係項目に基づいて設定する必要があり、
役割項目定義であり、役割項目は、役割項目テーブルにおいて定義され、どのメンバーが当該役割に含まれているか、ならびに各メンバーの前記アイデンティティおよび関係は、役割詳細テーブルにおいて定義される、役割項目定義と、
役割項目の使用であり、前記役割項目の使用方法は、"role.roleItemName.memberName"である、役割項目の使用と、
役割項目スキルであり、役割項目とスキルとの間の対応関係は、役割スキルテーブルにおいて定義される、役割項目スキルと
を含む、請求項3に記載の新しいプログラミング言語。 - 新しいプログラミング言語であって、検証データ型の実現方法であり、
検証(チェック)項目名、検証(チェック)項目親名、および検証(チェック)項目説明は、検証テーブルによって記録され、
検証(チェック)項目の所属、検証(チェック)項目名、検証(チェック)項目のデフォルト/パラメータ、および検証(チェック)項目の説明は、verify.detailテーブルに記録され、
アイデンティティチェック(検証)の所属、前記アイデンティティチェック(検証)の名前項目、前記アイデンティティチェック(検証)のデフォルト値項目、前記アイデンティティチェック(検証)のパブリッシャ項目を含む、前記アイデンティティテーブルの検証(チェック)テーブル、
を含む、新しいプログラミング言語。 - 型チェック(検証)に必要な前記パラメータおよび所属などを記憶し、名前フィールドを介して、それがどのような種類のチェック(検証)であるかを示し、テーブルの関連付けを容易にするために、テーブルを使用する方法をさらに含む請求項7に記載の新しいプログラミング言語。
- 迅速なグローバルアクセスの方法であり、この言語の前記システムにおける"index"という名前の固定テーブルに記憶される型オブジェクトは、グローバルにアクセスすることができ、型名項目、型参照項目を含む、新しいプログラミング言語。
- インデックステーブルのタイプ、および実現化方法が記憶されている前記テーブルのインデックスを1つのテーブルに入れることをさらに含み、それを介して、ユーザは、いくつかのタイプのクイックグローバルアクセスを直接完了することができる、請求項9に記載の新しいプログラミング言語。
- 表示エリア、編集エリア、クエリエリア、リストエリア、およびグラフィックエリアを含む可視化グリッド空間を実現した"grad"という名前のデータ型を介した"grad"データ型の実現方法、新しいプログラミング言語。
- 前記可視化グリッド空間内の前記表示エリア、編集エリア、クエリエリア、およびリストエリアによって一緒に実現されるコラボレーションの実現方法をさらに含み、前記コラボレーションを介して、ユーザがグラフィカルインターフェースを使用することによってデータを操作することができる、請求項11に記載の新しいプログラミング言語。
- 言語の構造が、システムテーブルのデータ型の様々なシリーズを含む、新しいプログラミング言語。
- 前記システムテーブルのデータ型がシステムキーワードによって修正され、システムテーブル構造が、テーブル名、括弧"[]"内の補足指定、丸括弧"( )"内のテーブルフィールド、波括弧"{}"内のテーブルレコード項目によって順に構成される、請求項13に記載の新しいプログラミング言語。
- 前記括弧"[]"が前記テーブル名またはフィールド項目の後に続く場合、前記括弧"[]"内の内容は、テーブルまたはフィールドの前記アイデンティティ項目(アイデンティティ型)、関係項目(関係型)、および役割項目(役割型)である、請求項13に記載の新しいプログラミング言語。
- 前記システムテーブルのデータ型をデータテーブルのデータ型に変換し、実行時にデータベースに追加することができる実現方法、新しいプログラミング言語。
- キャッシュテーブルが他のテーブルからのデータを記憶するための一時的ストレージとして使用される実現方法、新しいプログラミング言語。
- 構成の実現方法であり、config構成テーブルは、他のテーブル、ライブラリ、フィールド、またはレコード項目のために構成するように実装される、新しいプログラミング言語。
- 構成データ型の許可が、設計者の許可、テスターの許可、インストーラの許可、ユーザの許可、および全員の許可を含む高から低までの5つの許可レベルに分けられることをさらに含む、請求項18に記載の新しいプログラミング言語。
- 前記構成テーブルのネーミング方法は、元のテーブル名を前記構成テーブルに追加する前記方法を介して、ツリー構造の形式で命名されることをさらに含み、異なるタイプのテーブル、ライブラリ、フィールド、レコードエントリごとに、その対応する前記構成テーブルが異なる、請求項18に記載の新しいプログラミング言語。
- 構成テーブルを識別する方法をさらに含み、テーブルヘッダの"belong"項目を介して、前記構成テーブルは、このテーブルがどのテーブルによって構成されたかを識別することができる、請求項18に記載の新しいプログラミング言語。
- 各構成テーブルが、その対応する名前および説明フィールドを有することをさらに含み、異なるテーブルに属する構成テーブルごとに、前記構成テーブルの他のフィールドが異なることができる、請求項18に記載の新しいプログラミング言語。
- 「データフロー」データ型の実現方法であり、前記データフローデータ型は、データの所在、トレース、およびソースを定義する、新しいプログラミング言語。
- データフローデータ型の構成方法であり、前記構成テーブルによる構成の前記方法を介して、前記データフローがデータテーブルに構成される、請求項23に記載の新しいプログラミング言語。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810075131.4 | 2018-01-26 | ||
CN201810075131.4A CN110083339A (zh) | 2018-01-26 | 2018-01-26 | 一种新型计算机编程语言 |
PCT/CN2019/072449 WO2019144852A1 (zh) | 2018-01-26 | 2019-01-20 | 一种新型计算机编程语言 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021505983A true JP2021505983A (ja) | 2021-02-18 |
JP7250009B2 JP7250009B2 (ja) | 2023-03-31 |
Family
ID=67395197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020521323A Active JP7250009B2 (ja) | 2018-01-26 | 2019-01-20 | クライアントエンドのプログラミングツールにより実行される方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20200241848A1 (ja) |
EP (1) | EP3745255A4 (ja) |
JP (1) | JP7250009B2 (ja) |
CN (1) | CN110083339A (ja) |
AU (1) | AU2019211612A1 (ja) |
BR (1) | BR112020007044A2 (ja) |
CA (1) | CA3078659A1 (ja) |
RU (1) | RU2020113119A (ja) |
WO (1) | WO2019144852A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112394910A (zh) * | 2019-08-12 | 2021-02-23 | 拜椰特(上海)软件技术有限公司 | 计算机编程语言类型开新实例方法 |
CN112783479A (zh) * | 2019-11-04 | 2021-05-11 | 拜椰特(上海)软件技术有限公司 | 计算机编程语言访问方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03116229A (ja) * | 1989-06-14 | 1991-05-17 | A T R Tsushin Syst Kenkyusho:Kk | プログラム構造自動設計装置 |
JPH07182152A (ja) * | 1993-12-22 | 1995-07-21 | Mitsubishi Electric Corp | オブジェクト型モデル作成システム、故障診断システムおよび故障診断システム作成システム |
JPH1040090A (ja) * | 1996-07-02 | 1998-02-13 | Internatl Business Mach Corp <Ibm> | プログラム開発支援システム及び支援方法、プログラム開発支援のために用いられるプログラム部品を格納する記憶媒体 |
JP2012507073A (ja) * | 2008-10-23 | 2012-03-22 | マイクロソフト コーポレーション | コンピュータ記憶システムにおけるパーティ識別のモデル化 |
US8635204B1 (en) * | 2010-07-30 | 2014-01-21 | Accenture Global Services Limited | Mining application repositories |
US20140279823A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Lifecycle product analysis |
US20150242194A1 (en) * | 2002-11-20 | 2015-08-27 | Byron D. Vargas | System for Translating Diverse Programming Languages |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4636948A (en) * | 1985-01-30 | 1987-01-13 | International Business Machines Corporation | Method for controlling execution of application programs written in high level program language |
US6609128B1 (en) * | 1999-07-30 | 2003-08-19 | Accenture Llp | Codes table framework design in an E-commerce architecture |
US6889359B1 (en) * | 1999-10-07 | 2005-05-03 | International Business Machines Corporation | Method for providing a visual representation of dynamic HTML table attributes |
US6915303B2 (en) * | 2001-01-26 | 2005-07-05 | International Business Machines Corporation | Code generator system for digital libraries |
US20030056195A1 (en) * | 2001-07-19 | 2003-03-20 | Hunt Joseph R. | Code generator |
CN1307584C (zh) * | 2003-11-17 | 2007-03-28 | 中兴通讯股份有限公司 | 一种用二维表实现的树的存储、访问的方法 |
US7962497B2 (en) * | 2005-02-18 | 2011-06-14 | Microsoft Corporation | Relationship modeling |
US7668608B2 (en) * | 2006-09-01 | 2010-02-23 | Fisher-Rosemount Systems, Inc. | Graphical programming language object editing and reporting tool |
US8756616B2 (en) * | 2006-12-29 | 2014-06-17 | Core Wireless Licensing S.A.R.L. | System and method for reducing the static footprint of mixed-language JAVA classes |
CN101126984A (zh) * | 2007-09-30 | 2008-02-20 | 北大方正集团有限公司 | 一种对象属性的描述方法 |
US20110088011A1 (en) * | 2009-10-14 | 2011-04-14 | Vermeg Sarl | Automated Enterprise Software Development |
US8713514B2 (en) * | 2011-05-06 | 2014-04-29 | Microsoft Corporation | Heterogeneous language data typing without executable regeneration |
AU2012362383B2 (en) * | 2011-12-29 | 2018-05-10 | Bibo Labs, Inc. | Spreadsheet-based programming language adapted for report generation |
US9329849B2 (en) * | 2013-08-26 | 2016-05-03 | Facebook, Inc. | Systems and methods for converting typed code |
US9436507B2 (en) * | 2014-07-12 | 2016-09-06 | Microsoft Technology Licensing, Llc | Composing and executing workflows made up of functional pluggable building blocks |
US9038037B1 (en) * | 2014-07-22 | 2015-05-19 | Ted J. Biggerstaff | Automatically solving simultaneous type equations for type difference transformations that redesign code |
US9459848B1 (en) * | 2015-05-29 | 2016-10-04 | International Business Machines Corporation | Obtaining correct compile results by absorbing mismatches between data types representations |
DE102015117111A1 (de) * | 2015-10-07 | 2017-04-13 | Gip Ag | Verfahren zum Erzeugen von Programmcode |
US9652203B1 (en) * | 2015-11-24 | 2017-05-16 | Corpa Inc. | Application development framework using configurable data types |
US10437564B1 (en) * | 2016-09-16 | 2019-10-08 | Software Tree, LLC | Object mapping and conversion system |
US20180189035A1 (en) * | 2016-12-29 | 2018-07-05 | TechRev, LLC | Application development tool using graphic objects to bind object sets of different distinct divisions of a design pattern |
JP7182152B2 (ja) | 2017-09-27 | 2022-12-02 | パナソニックIpマネジメント株式会社 | 駆動装置の組み立て方法 |
US11567738B2 (en) * | 2021-04-15 | 2023-01-31 | Red Hat, Inc. | Code generator for creating a unified data model for multiple language specifications |
-
2018
- 2018-01-26 CN CN201810075131.4A patent/CN110083339A/zh active Pending
-
2019
- 2019-01-20 BR BR112020007044-0A patent/BR112020007044A2/pt unknown
- 2019-01-20 RU RU2020113119A patent/RU2020113119A/ru unknown
- 2019-01-20 EP EP19744056.3A patent/EP3745255A4/en not_active Withdrawn
- 2019-01-20 WO PCT/CN2019/072449 patent/WO2019144852A1/zh unknown
- 2019-01-20 AU AU2019211612A patent/AU2019211612A1/en not_active Abandoned
- 2019-01-20 US US16/755,440 patent/US20200241848A1/en not_active Abandoned
- 2019-01-20 CA CA3078659A patent/CA3078659A1/en active Pending
- 2019-01-20 JP JP2020521323A patent/JP7250009B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03116229A (ja) * | 1989-06-14 | 1991-05-17 | A T R Tsushin Syst Kenkyusho:Kk | プログラム構造自動設計装置 |
JPH07182152A (ja) * | 1993-12-22 | 1995-07-21 | Mitsubishi Electric Corp | オブジェクト型モデル作成システム、故障診断システムおよび故障診断システム作成システム |
JPH1040090A (ja) * | 1996-07-02 | 1998-02-13 | Internatl Business Mach Corp <Ibm> | プログラム開発支援システム及び支援方法、プログラム開発支援のために用いられるプログラム部品を格納する記憶媒体 |
US20150242194A1 (en) * | 2002-11-20 | 2015-08-27 | Byron D. Vargas | System for Translating Diverse Programming Languages |
JP2012507073A (ja) * | 2008-10-23 | 2012-03-22 | マイクロソフト コーポレーション | コンピュータ記憶システムにおけるパーティ識別のモデル化 |
US8635204B1 (en) * | 2010-07-30 | 2014-01-21 | Accenture Global Services Limited | Mining application repositories |
US20140279823A1 (en) * | 2013-03-15 | 2014-09-18 | Microsoft Corporation | Lifecycle product analysis |
Also Published As
Publication number | Publication date |
---|---|
RU2020113119A (ru) | 2022-02-28 |
WO2019144852A1 (zh) | 2019-08-01 |
CA3078659A1 (en) | 2019-08-01 |
EP3745255A4 (en) | 2021-10-27 |
US20200241848A1 (en) | 2020-07-30 |
CN110083339A (zh) | 2019-08-02 |
BR112020007044A2 (pt) | 2020-10-13 |
RU2020113119A3 (ja) | 2022-02-28 |
AU2019211612A1 (en) | 2020-04-30 |
EP3745255A1 (en) | 2020-12-02 |
JP7250009B2 (ja) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lange | An object-oriented design method for hypermedia information systems | |
US9465590B2 (en) | Code generation framework for application program interface for model | |
US9087296B2 (en) | Navigable semantic network that processes a specification to and uses a set of declaritive statements to produce a semantic network model | |
US10817575B2 (en) | Performing an object relational model query against a database that includes fields defined at runtime | |
JP7096762B2 (ja) | コントロールを使用して汎用プログラムを構成する技法 | |
US10671361B2 (en) | Automatically determining data dependencies to facilitate code execution | |
US10474435B2 (en) | Configuration model parsing for constraint-based systems | |
JP7250009B2 (ja) | クライアントエンドのプログラミングツールにより実行される方法 | |
US11693652B2 (en) | Automated authoring of software solutions from a data model | |
US11966390B2 (en) | Virtualization of configuration data | |
Kiswani et al. | Using metadata in optimizing the design and development of enterprise information systems | |
US10412149B2 (en) | Logical data object web services | |
WO2019148343A1 (zh) | 一种新型计算机编程语言 | |
Bakhtin | A tool for querying multi-model data | |
US11947931B2 (en) | Generic factory class | |
Kaczmarczyk et al. | A Simple and effective ADO. NET-based ORM layer | |
CN117785943A (zh) | 一种基于Spring Boot和ElasticSearch的数据查询方法及系统 | |
CN100495329C (zh) | 对象过程图系统 | |
Liljas et al. | NHibernate 4. x Cookbook | |
JP2015167006A (ja) | 書類、バリデーションチェック及び開発ドキュメント作成用コンパイラ及びそれを用いた稟議システム | |
CN112162741A (zh) | 网页代码的生成方法、装置、设备及介质 | |
Privat et al. | Understanding core data | |
Gunaratne et al. | Automating Enterprise Application Development Process using BizCode Framework | |
Dathan et al. | Language Features for Object-Oriented Implementation | |
Miller | C# Collections: A Detailed Presentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200608 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210914 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20211101 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220301 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20220301 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20220310 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20220314 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20220603 |
|
C211 | Notice of termination of reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C211 Effective date: 20220613 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20220829 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20221011 |
|
C13 | Notice of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: C13 Effective date: 20221031 |
|
C302 | Record of communication |
Free format text: JAPANESE INTERMEDIATE CODE: C302 Effective date: 20221208 |
|
C22 | Notice of designation (change) of administrative judge |
Free format text: JAPANESE INTERMEDIATE CODE: C22 Effective date: 20230110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230123 |
|
C23 | Notice of termination of proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C23 Effective date: 20230130 |
|
C03 | Trial/appeal decision taken |
Free format text: JAPANESE INTERMEDIATE CODE: C03 Effective date: 20230227 |
|
C30A | Notification sent |
Free format text: JAPANESE INTERMEDIATE CODE: C3012 Effective date: 20230227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230320 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7250009 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |