[ 前へ | 目次 | 次へ ]
Japanese English

ステップ 5 - Java™言語で関数/変数を実装する
(プラグイン開発)

ここでは、RINPn の機能を強化するために、Java言語でプラグインを作ってみましょう!

スポンサーリンク


ライブラリ スクリプトによる方法以外にも、Java言語を用いて、新しい組み込み関数/変数を実装する事もできます。 RINPn および Vnano では、組み込み関数/変数を提供する事を目的とした、 Java® 言語で記述されたプログラムの事を「 プラグイン 」と呼びます。

プラグインによる関数/変数定義は、 ステップ 4 のようにライブラリ スクリプトで関数や変数を定義する方法と比べて、 Java® 言語の高い機能性を利用できる事が大きなメリットになるかもしれません。

半面、実装したコードをコンパイルする際には、 別途 Java® 言語の開発環境 (JDK) が必要です。 ここでは、ご使用のPCに既に何らかのJDKが導入されていて、javac コマンドが使用可能になっている事を前提として解説します。 JDK の導入方法については、例えば「 OpenJDK   インストール   (ここにOSの名前) 」などでWeb検索してみてください。

プラグインの使用方法

RINPn では、プラグインは「 plugin 」フォルダ内に置きます。 このフォルダ内には、標準で、以下のようなプラグインのサンプル「 ExamplePlugin.java 」が同梱されています:

(plugin フォルダ内の ExamplePlugin.java をテキストエディタで開いた内容)

public class ExamplePlugin {

    public double pivar = 1.0;

    public double pifun(double arg) {
        return arg * 2.0;
    }
}

このプラグインは標準でコンパイルされており、読み込まれるよう設定されています(それぞれの方法はすぐ後で説明します)。

上のプラグインで定義しているフィールド「 pivar 」やメソッド「 pifun(arg) 」は、 例えば ステップ 1 で扱った、電卓に入力する計算式の中で、 以下のように関数/変数として使用できます:

INPUT:
1 + pivar

OUTPUT:
2

INPUT:
pifun(2)

OUTPUT:
4

同様に、ステップ 2 でコマンドライン引数に指定している計算式の中や、 ステップ 3 でのスクリプト内でも使用できます。

プラグインのコンパイル方法

プラグインのコード内容を編集した場合には、コンパイルする必要があります。 以下のように、普通の Java® 言語のプログラムと同様にコンパイルできます:

cd RINPnのpluginフォルダの場所(パス)
javac ExamplePlugin.vnano

なお、「 plugin 」フォルダ内のさらに org/vcssl/connect フォルダ内には、 Vnano のプラグイン開発に有用なインターフェース類 ( XFCI1 や XNCI1 など ) が、 標準で配置されています。 そのため、必要に応じて、それらのインターフェース類をプラグインから import して使用できます (詳細は Vnanoのドキュメント内の「 プラグインの開発 」をご参照ください)。 その場合でも、特に何かを用意したり、コンパイラにオプション等を指定したりする必要はありません。

新しいプラグインの追加方法(読み込み登録)

新しいプラグインを作成した際は、まず、そのファイルを RINPn の「 plugin 」フォルダ内に置いてコンパイルしてください。 子孫階層のフォルダに置きたい場合は、それに整合する階層のパッケージをプラグインのコード先頭で宣言して、 普通のパッケージ所属クラスと同様の方法でコンパイルしてください。

続いて、そのプラグインのクラスファイルのパスを、「 plugin 」フォルダ直下にあるテキストファイル「 VnanoPluginList.txt 」内に記載(追記)してください。 そうすると、そのプラグインが読み込まれるようになります。

Vnano 標準プラグイン

「 plugin 」フォルダ内のさらに org/vcssl/nano/plugin フォルダ内には、 基本的な機能群(数学関数やユーティリティ関数など)を提供する「 Vnano 標準プラグイン 」が配置されており、 標準で読み込まれるよう設定されています。

標準プラグインによって提供される機能の一覧や詳細仕様については、 Vnano 公式サイト内の、標準プラグインの仕様書ページ をご参照ください。 なお、RINPn において特によく使いそうな関数や変数については、 本文書の「 主な組み込み関数/変数 」のページでもリストアップし、簡略化した機能説明文を掲載しています。

- 本文書内の商標などについて -
  • OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
  • Windows は、米国 Microsoft Corporation の米国およびその他の国における登録商標です。
  • Linux は、Linus Torvalds 氏の米国およびその他の国における商標または登録商標です。
  • Ubuntu は、Canonical Ltd. の米国およびその他の国における商標または登録商標です。
  • その他、文中に使用されている商標は、その商標を保持する各社の各国における商標または登録商標です。


スポンサーリンク



Japanese English
この階層の目次
新しいお知らせ

リニアングラフやVCSSLの最新版をリリース、目盛りの位置や内容を自由に指定可能に!
2024-11-24 - リニアングラフ3D/2Dを更新し、自由な位置に、自由な表記内容の目盛りを描けるようになりました! 併せて、Java言語やVCSSLでの、プログラム制御用APIも拡張しています。詳細をお知らせします。

Exevalator 2.2 をリリース、TypeScript 対応によりWebブラウザ上で動作可能に
2024-10-22 - オープンソースの式計算ライブラリ「Exevalator(エグゼバレータ)」の2.1をリリースしました。新たに TypeScript に対応し、Webブラウザ上での式計算にも使えるようになりました。詳細を解説します。

アシスタントAI作成の舞台裏(その2、作成編)
2024-10-12 - アシスタントAIの作成方法解説の後編です。実際にChatGPTの「GPTs」機能を用いて、アシスタントAIを作成する手順や、独自の知識をもたせたり、精度を出すためのノウハウなどを解説しています。

アシスタントAI作成の舞台裏(その1、基礎知識編)
2024-10-07 - アシスタントAI作成方法解説の前編です。今回はまず、アシスタントAIを作る前に抑えておきたい、基礎知識を延々と解説しています。そもそもLLM型AIとはどんな存在か? RAGとは何か? 等々です。

ソフトの利用をサポートしてくれるアシスタントAIを提供開始!
2024-09-20 - RINEARN製ソフトの使い方の質問応答や、一部作業のお手伝いをしてくれる、アシスタントAIを提供開始しました。ChatGPTアカウントさえあれば、誰でも無料で使用できます。使い方を解説します。

Exevalator 2.1 をリリース、新たに Visual Basic に対応
2024-07-28 - オープンソースの式計算ライブラリ「Exevalator(エグゼバレータ)」の2.1をリリースしました。今回から、新たに Visual Basic(VB.NET)でも使用できるようになりました。詳細を解説します。

関数電卓 RINPn(りんぷん)、Esc キーで計算式の一発クリアが可能に
2024-07-20 - 関数電 RINPn の Ver.1.0.2 をリリースしました。今回から、キーボードの「 Esc 」キーを押すと、入力中の計算式を一発でクリアできるようになりました。詳細を解説します。

Exevalator 2.0 をリリース、互換性に注意が必要なバグ修正が 1 件
2024-07-14 - オープンソースの式計算ライブラリ「Exevalator (エグゼバレータ)」の2.0をリリースしました。今回の更新では、互換性に注意を要する 1 件のバグ修正があります。詳細を解説します。

各ソフトウェアをアップデート、リニアングラフのコマンド拡張やVCSSLの英語対応など
2024-02-05 - 各ソフトの一斉アップデートの内容をお知らせします。今回は、リニアングラフのコマンド機能を大幅拡張したのがメインです。また、VCSSLのメッセージ類の英語対応も行いました。

Vnano の Ver.1.1 で実装した反復計算高速化の内側
2024-01-17 - 前回のお知らせ記事の続編です。スクリプトエンジン Vnano の Ver.1.1 において実施した高速化を、エンジン内部の実装面から掘り下げて解説します。