社内勉強会:Outsystemsを用いたローコード開発体験

今回の社内勉強会のテーマは「Outsystemsを用いたローコード開発体験」となります。
担当は第2ユニットのTTとなります。

これまで技術者ブログでも頻繁に取り上げてきたOutsystemsですが、未経験者にも実際に触ってもらい、より理解を深めてもらうことを目的とし勉強会を行いました。
また、今回はOutsystemsによる開発を経験したことのあるメンバーも参加しており、関心度の高さを伺うことができました。

今回の勉強会の流れは以下の通りでした。

①動画視聴による基礎学習

②開発用アカウント取得

③スキャフォールディング機能を用いた高速開発体験

①動画視聴による基礎学習

まず、これまでの振り返りとして、Outsystems公式が提供している学習動画を視聴しました(リンクはこちら)。
上記学習動画はトレーニングコースの一環となっており、各セクションの終わりには復習用の問題が用意されていますので理解度を確認できるつくりとなっています。

勉強会の様子。興味深げな様子で学習動画に聞き入っていました。

②開発用アカウント取得

その後、実際に手元で開発を進めるため、参加者ごとにアカウントの作成を行いました(リンクはこちら)。
アカウントを作成することでクラウド領域上にワークスペースが作成されるため、開発ツールであるServiceStudioをインストールすることで個人単位での開発が可能となります。

③スキャフォールディング機能を用いた高速開発体験

環境構築が整った後は、開発の実演を行いました。

ここでは、Outsysmtesが持つスキャフォールディング機能を用いた開発を体験してもらいました(リンクはこちら)。

本機能は、予め作成しておいたエンティティ(テーブル)の定義を基に、テンプレート化された一覧/詳細画面を自動で作成してくれるというOutsystemsの開発補助機能です。
本機能の存在により、Outsystemsは一般的なマスタ/ディティール画面を、スクラッチ開発と比べて非常に高速で作成することが可能となっています。
実際にWebアプリケーションのスクラッチ開発を行ったことのあるメンバーの一人は「手組みなら2~3日程度は必要とするところを、これだけの単純操作でできるとは想像以上だった」と感心しきりな様子でした。

まとめ

今回の勉強会では、主にOutsystemsによる開発を経験したことのないメンバーをターゲットにしていたため、学習内容も基礎的なものが中心でした。
今後は学習内容を徐々にステップアップさせていき、「スキャフォールディング機能を用いない、Outsystemsでの画面開発」「データの一括取込/出力機能」「オープンソースライブラリ”Forge”の活用」など、より実践的な内容について学習を進めていく予定です。

それでは、次回の勉強会の記事をお楽しみに。

社内勉強会-カードゲーム事情

前回の勉強会の様子

社内勉強会 – SNS映えする写真加工術

今回の勉強会記事を担当する第2ユニットの「TT」です。
さて、今回のテーマである「カードゲーム事情」についてですが、弊社では「HELLO WORLD」というカードゲームを取り扱っております。
そうした中で、本作品のバージョンアップ、もしくは次弾の構想検討に際し、
既存のカードゲームに実際に触れてみることで理解を深め、どのような要素があり、またその内どれを参考にするべきか(あるいは取り入れるべきか)を学ぶことを目的とし開催しました。
以下、実際に当日プレイしたゲームの紹介となります。

1.「はぁって言うゲーム」

今回集まったメンバーはあまりボードゲーム・カードゲームに馴染みのあるメンバーではなかったため、まずは軽いアイスブレイクとしてルールがシンプルで分かりやすい「はぁって言うゲーム」(リンク先:幻冬舎edu様製品紹介ページ)に挑戦。
ジャンルとしてはいわゆる「体験型」に属しており、体や言葉を使ったゲームなので子供から大人まで年齢を問わず楽しめるのが魅力です。

各プレイヤーは、全体に公開されたお題カードと、自身にのみ公開されたアクトカードに従い、お題を演じます。
他のプレイヤーは、どのお題を演じているかを出題者の声と表情からのみ推測し、投票します。
見事正解できれば出題者にも正解した人数分の得点が入るため、多少大袈裟になっても分かりやすい演技をするといいようでした。

プレイ中の様子。「思ってたんと違う!」「そうはならんやろがい!」と大惨事に(笑)

2.「ハゲタカのえじき」

場が温まったところで、続けてプレイしたのは「ハゲタカのえじき」(リンク先:メビウスゲームズ様製品紹介ページ)。
ジャンルとしては「心理戦」タイプでしょうか。与えられたカードを元に相手の動きを読む、駆け引きが白熱するゲームとなっています。

各プレイヤーは1~15までのカードから1枚を選び、一斉に公開します。
公開された中で最も高い数字を出していたプレイヤーが場の中央に置かれた得点札を獲得できるのですが、本ゲームでは「バッティング」と呼ばれるメカニクスが採用されています。
これは、他プレイヤーと同じ数字カードを出してしまうとその数字は打ち消しあい、次に大きな数字カードを出していた人に権利が移るという仕組みです。
たとえば上図の場合、11が最大ですが重複しているため互いに打ち消しあい、次に大きい数字である5を出したプレイヤーが得点札を獲得できます。

プレイ中の様子。最後の最後で大量にバッティングが発生し、高得点カードを掻っ攫っていくまさかの展開に!?

3.「コヨーテ」

この日最後にプレイしたのは「コヨーテ」(リンク先:ニューゲームズオーダー様製品紹介ページ)。
先に挙げた「体験型」と「心理戦」の複合となっており、箱に描かれた女の子のようにカードを額に当てる(=自分からは見えなくする)という変わったプレイスタイルが特徴です。

「ブラフ」と呼ばれるゲームジャンルの作品で、場に出ている札に書かれた数字の合計を下回るように一人ずつ数字を宣言していきます。
ただし、必ず前に宣言された数字よりも大きな数を宣言しなければならないため、どこかで合計値を上回る宣言をするプレイヤーが出てきます。
直前のプレイヤーの宣言が怪しい!と思った場合「コヨーテ!」と宣言し、嘘をついていたら直前に数値を宣言をしたプレイヤーの負け、本当のことを言っていたらコヨーテを宣言したプレイヤーの負けです。
ここで重要になってくるのが「プレイヤーが見ることのできる札は自分『以外』の札だけである」という点です。
誰かがコヨーテを宣言するまで自分が何の札を持っているか分からないため、周りのプレイヤーの表情や宣言から推測するしかないのです(そして多くの場合、周りのプレイヤーはあなたを勘違いさせようとするでしょう)!

プレイ中、平然と上限を上回るような宣言をし、それに釣られて数字を釣り上げてしまう隣のプレイヤーを見て大爆笑…といった具合に、こちらも大いに盛り上がりました。

最後に

社員の多くが社外へ出向していることに加え、昨今のコロナ禍により中々大勢で集まって何かをやるという機会に恵まれませんでしたが、今回の勉強会ではソーシャルディスタンスを保ちつつも、多くの人数が集まり大いに盛り上がりました。
冒頭で述べたカードゲームの研究の他にも、社内交流の活性化という面でも期待がもてそうです。
今後も折を見て開催していけたらいいですね。

社員紹介(8-3)

閲覧いただきありがとうございます。
今回の社員紹介記事を担当する第2ユニット所属の「TT」です。
今回が三回目の紹介となります(前回はこちら

現在の業務内容

前回の報告に引き続き、ローコード開発ツール「OutSystems」を用いたシステム開発に従事しております。
今回参画しているプロジェクトでは、以前本ブログにて紹介した「ReactiveWebApp」および「MobileApp」形式のアプリケーション開発を行っています。
モバイル端末で操作することを念頭に置いた設計が求められ、これまで行ってきたデスクトップ端末から操作するWebアプリケーションとの考え方の違いに苦労しつつも、豊富に用意されているテンプレートやUIパターンに助けられどうにか要求に応えるものが出来たと自負しております。

また、今回のプロジェクトでは要件定義フェーズより参画させていただくことができ、上流工程にてお客様の要件を整理する貴重な経験が得られるなど、実りの多い案件でありました。

近況報告

つい最近まで自宅ではノートパソコンを使っておりましたが、長年にわたる使用であちこちガタがきていました。
そこでつい先日、デスクトップ型パソコンを新しく購入することに。

開封前の状態。サイズ比較用のトランプと比べて結構な大きさですよね…
いざ開封!手前味噌ですが、中々かっこいいのではないでしょうか?

なお、これを購入した日の気温は35℃を超えていました。
交通手段が基本的に徒歩+公共交通機関な人間であったため、炎天下の中重たい段ボールを持ち帰る羽目になり、大層しんどい思いをしました…。
7月も半ばになり、蒸し暑い日が続いておりますので、皆様くれぐれも熱中症にはお気を付けください…。

今回の社員紹介は以上となります。
次の社員紹介もどうぞお楽しみに!

技術者ブログ:(Outsystems)Reactive開発方式の紹介

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ:『Reactive開発方式の紹介』

今回は、前回の記事にて触れたTraditional形式の開発ではなく、
より新しいReactive形式での開発について紹介します。

Reactiveとは?

OutSystemsの新しいアプリケーション開発フレームワークです。
これまで用いられてきたTraditional形式と比べて、以下のような強みがあります。

  1. 通信を伴わない処理の負荷軽減
    TraditionalではScreenActionとServerActionの2種類のアクションがありましたが、
    これらの両方がサーバサイドで処理を行うものでした。
    一方でReactiveではClientActionとServerActionの2種類のアクションが用意されており、
    このうちClientActionではサーバへの通信を伴いません。
    そのため、選択値に応じて見た目を変えるなど、通信を伴わない処理では負荷を軽減することができます。

  2. 画面表示時間の短縮
    Traditionalでは画面の初期表示時にPreparationと呼ばれるアクションを実行し、
    一括でデータ取得するのが一般的な方法でした。
    しかし、このやり方では複数のデータ取得処理を直列でしか処理できず、画面表示までに時間がかかる場合があります。
    一方でReactiveではデータ取得処理を非同期で並列処理でき、画面表示までの時間を軽減できるため
    ユーザビリティの向上が期待できます。

    (上図:TraditionalにおけるPraparation。
    他のアクション同様フローによる直列処理のため、画面表示までに時間がかかる場合がある。
    下図:Reactiveにおけるデータ取得処理。
    At Start(開始時)に、複数のデータ取得処理を非同期で行うため画面表示までの時間短縮が期待できる)


  3. UI部品の自動更新
    TraditionalではUI部品を更新する際にAjax Refreshと呼ばれる更新処理を実行する必要がありました。
    しかし、画面内に大量の部品が存在する場合、全て更新するのは大変ですし、漏れが起きる可能性も高いです。
    一方でReactiveでは、データ取得が絡む処理は明示的にRefreshが必要であるものの(Aggregateなど)、
    それ以外の処理は自動的にUIを更新し、再描画してくれます。
    分かりやすい例として、ラジオボタンの選択値により描画内容を切り替えるIfウィジェットなどを意識してリロードする必要がなくなります。

    (上図:TraditionalによるUI部品更新。
    明示的にAjax Refreshしてやる必要があり、大量のUI部品を更新する場合手間になる。
    下図:ReactiveによるUI部品更新。
    データの再取得が不要であれば、値の変更に伴い自動的にUI部品を更新してくれる)

まとめ

以上、簡単にではありますがReactiveについて、Traditionalと比較する形で紹介させていただきました。
Traditionalに比べてReactiveの方が開発が容易になっていること、
また、利用ユーザーにとっても待ち時間の短縮によりユーザビリティが向上していることがお分かりいただけたかと思います。
引き続きTraditionalのサポートは続いていきますが、
今後はReactiveが主流になっていくことが考えられるため、要注目ですね。

技術者ブログ:Outsystems導入とサンプル画面作成の紹介

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ:『Outsystemsを導入してみよう』

今回は、前回の記事にて触れたOutsystemsというローコード開発ツールの導入と、サンプル画面の作成方法を紹介します。

まずはOutsystems公式ページより、無償トライアルを選択。
氏名・メールアドレス・パスワードを入力します。

続いて使途、会社情報を入力します。

アカウントの作成が終わるとポータル画面が開くので、インストーラをダウンロードし、インストールします。

また、入力したメールアドレス宛に認証メールが届くため、認証手続きを行っておきましょう。

インストール終了後、Outsystemsを起動します。
メールアドレスとパスワードを入力することで、割り当てられた個人環境へ接続できます。

初回接続時、React方式によるチュートリアルを促されます。
今回はTraditionalWeb形式での手組み画面を試すため、Backを選択してチュートリアルを中断しましょう。

New Application→From scratch→TraditionalWebと選択を進め、アプリケーション(モジュール(機能)の集約単位)の名前、概要、アイコンを選択します。
その後、モジュール名を入力することでモジュール作成画面に遷移します。

モジュール作成画面に遷移したら一番簡単な作り方として構築済みのEntity(テーブル)をドラッグ&ドロップしてマスタ・ディティール画面を作成します。
Dataタブ→Entitiesディレクトリ→(System)モジュール→Userエンティティをドラッグ&ドロップすることで、1回目はマスタ画面(Users)が、2回目はディティール画面(UserDetail)が作成されます。
画面が自動生成されたら、画面上部にある1-Click Publishを押下し、変更の保存及びサーバへのアップロードを行います。

自動生成されたUsers画面のレイアウト
自動生成されたUsersDetail画面のレイアウト。Entityの各項目に対する入力欄が自動生成される

アップロードが完了すると1-Click PublishがOpen in Browserに切り替わるので、押下することで開発した画面をブラウザで閲覧することができます。

Users画面をブラウザで開いた様子。Userエンティティ内のデータが一覧表示されている
UserDetail画面をブラウザで開いた様子。選択したレコードの値が詳細表示されている

作ってみた感想

以前Oracle Apexを用いた開発でも感じたように、とても簡単かつ短時間で作成することができました。
開発ツールをインストールし、マスタ化したいEntityさえ準備できていればほんの僅かな時間でWebアプリケーションの一機能を用意することができます。
また、いちから画面を作成する場合でもWidget(画面部品)が豊富に用意されているため、幅広いアプリケーション開発に対応できます。
第2ユニットでは様々なローコード開発を行ってますので、今後も紹介していきたいと思います。

社員紹介(8-2)

閲覧いただきありがとうございます。
今回の社員紹介記事を担当する第2ユニット所属の「TT」です。
一年半ほど前の自己紹介に引き続き、今回が二度目の紹介となります(前回はこちら

現在の業務内容

前回とは異なる案件に参画しており、そちらでローコード開発ツール「OutSystems」を用いたシステム開発に従事しております。
プロジェクト全体の方針としてローコード開発の強みを生かした開発を進める方針となっており、OutSystems標準部品の積極的採用や画面間で似通った機能の共通部品化などを通じて工数削減に努めています。
また、画面の製造や軽微な修正が容易に行え、即座に反映できることから基本設計の段階よりお客様と入念に認識合わせを行うことができ、品質の向上に繋げられるのも強みの一つと言えます。

設計・製造フェーズに向けて同ユニットのメンバー増員も検討されており、合流できるのが楽しみです。

自己アピール

我が家のボードゲーム・これくしょん(更に増えました…)

前回の記事でも紹介させていただきましたが、気が付けばボードゲームが棚を三段占領する事態に。
また、写真の外では更に別の引き出しの中にも大小様々なボードゲーム・カードゲームがみっしりと…。
昨今のコロナ禍による影響で中々顔を突き合わせて遊ぶこの手のゲームは敷居が高くなってしまい、寂しい限りです。
少しずつですがワクチン接種も進んできているようなので、近いうちにまた大勢で集まって遊べる環境が戻ってくるとよいのですが…。

また、コロナ禍による影響がもう一つ。
と言っても、悪い話ではありません。
在宅勤務が増えた都合上、どうしても自室での作業が増えてきたため業務環境を改善しようと一念発起し…

頼れる相棒。去年までよく辛抱できていたものです…

ついに自分の部屋にクーラーを設置しました!
中々に手痛い出費でしたが、その甲斐あってこの記事を書いている現在もすこぶる快適です。
今年の夏も暑くなりそうですが、これで何とか無事に乗り切りたいですね。

今回の社員紹介は以上となります。
梅雨と夏の猛暑が交互にくるような変な天気が続きますが、皆様も体調管理にはくれぐれもお気をつけて。
次の社員紹介もどうぞお楽しみに!

技術者ブログ:Oracle APEX上でPL/SQLを動かす

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ:Oracle APEX上でPL/SQLを動かす

前回の記事にて、Oracle APEXを用いたローコード開発の流れを紹介したのに引き続き、
今回もOracle APEXの紹介となります。
今回は、APEX上でのPL/SQL(プロシージャ)の作り方、動作確認手順、実際に呼び出すための設定方法を紹介します。

1.プロシージャを作成する

SQL Workshop内のObject Browserを開き、+プルダウンよりProcedureを選択します。

Create Procedure画面にて、作成するプロシージャ名を入力します。

引数を定義します。

プロシージャの中身を記述します。
ここでは、create or replace procedure "[プロシージャ名]" ([引数宣言]) isまでを自動で生成してくれるため、それ以降のローカル変数定義やBody部を記述します。

SQLを押下すると実際に生成されるSQLがプレビュー表示されるので、内容に問題がなければCreate Procedureボタンを押下します。

以上の手順により、プロシージャが新規作成されます。

また、一度作成されたプロシージャについては、本画面にて編集後、Save & Compileを実施することで更新が反映されます。

2.動作確認する

SQL Workshop内のSQL Commandsを開き、呼び出したいプロシージャをbegin~end;で囲み、Runを押下することで実行結果がResults欄に出力されます。

3.画面から実行する

画面からプロシージャを実行する場合、ボタンによって実行される動的アクションに設定する方法があります。


まず、詳細画面にボタンを配置します。
今回は、CREATEボタンを複製して作りました。
Behavior>Actionを”Defined by Dynamic Action”に、Database Actionを未選択に変更します。

次に、動的アクションを定義します。
Identification>Actionを”Execute Server-side Code”に設定し、PL/SQL CodeにSQL文を記述します。
2.の動作確認で書いたように、実行したいプロシージャをbegin~end;で囲みます。
画面の入力値を引数として使う場合、Items to Submitにアイテムを列挙します。

また、2つ目の動的アクションを用意し、Identification>Actionを”Submit Page”に、Setting > Request / Button Nameを動的アクションを”[実行するボタン名]”に設定します。

上記手順により、一覧 / 詳細画面にプロシージャを呼び出すボタンを1つ追加しました。
画面から本ボタンを押下することで、プロシージャが実行され、入力値を元にしたレコードが追加されます。


まとめ

APEXに限らず、ローコード開発ツールでは基本的な動作であれば標準で用意されている部品の組み合わせで対応できるよう設計されていますが、
一方で複雑な動作を実現するために、自前のコードを埋め込み実行させる仕組みも用意されています。
本記事にて、そういった実装をする際の一助になれば幸いです。

技術者ブログ ORACLE APEXを使ってローコード開発をしよう!

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ『ローコード開発してみよう』

今回は実際にORACLE APEXというローコードの開発環境を使ってシステムを作っていきます。
ローコードって何?ORACLE APEXって?という方は以前の記事を読んで下さい。
→技術者ブログ(2) – ローコード開発のご紹介(Oracle APEX)

あらかじめ作成しておいたユーザー情報のテーブルを元に、登録・更新機能を備えたユーザー管理画面を作成します。

まずはORACLE APEXの管理画面からページ作成をクリックして画面のレイアウトを決めます。
今回はフォーム付きレポートを選択します。

つぎにページの中にどんな情報を入れるのかを設定します。
ユーザー管理画面なので、ユーザー名・ID・パスワードを設定することにします。

たったこれだけです♪
これで作成ボタンを押すと、すでに登録されているユーザー情報が一覧で載っているページが簡単に作成できてしまいます。

この画面では右上の作成ボタンをクリックすれば新たなユーザーを登録することができるようになっていますので、ソースコードを書かなくてもアプリケーション上でユーザー情報を追加することができます。

Dさんの情報を入力

 ↓

ユーザー一覧に”Dさん”が追加された

また応用編として、ユーザー名をリンクにしてクリックするとその人の勤怠管理画面に遷移するなど、クリックひとつで簡単に設定することができます。

NAMEのタイプを”リンク”に変更し、遷移先の画面を設定
Nameの箇所がリンクになりクリックすると、、、
ユーザー個別の勤怠管理画面に遷移

作ってみた感想

とても簡単に短時間で作成することができました。
ORACLE APEX初心者の新入社員でも10分もかからずに作ることが可能でした。
またレイアウトやオプションが充実しているので、幅広いアプリケーションに対応できると思います。
多くの企業で実際の開発に使用されているのも納得できます。
第2ユニットでは様々なローコード開発を行ってますので、今後も紹介していきたいと思います。

社員紹介(8)

11月になり、少しずつ冬の足音が近づいてきた今日この頃、皆様いかがお過ごしでしょうか。
この度社員紹介を務めさせていただきます、TT@風邪引きです。
季節の変わり目ということもあり、見事にダウンしてしまいました。
皆様はくれぐれも体調管理にご注意ください。

肩書

第2ユニット(ローコード開発担当)に所属しております。

経歴

普通科高校
→工業大学工学部情報工学科
→大学院情報科学研究科
→IT業界の会社
→ダンデライオンズ

気が付けば社会人6年目。思えば遠くへ来たものです。

現在の業務内容

少し前まで、ローコード開発プラットフォーム「OutSystems」を用いたシステム開発を行っておりました。
これまで経験したことのない技術に触れるのは楽しくもありますが、
まだまだ開発ノウハウの蓄積が既存のプログラミング言語を用いた開発に比べて少ないこともあり、
苦労の連続でした。

現在は、上記とは別のローコード開発ツールで作成された業務ロジックをJavaで置き換える作業を行っています。
無闇矢鱈にローコード化すればよいというものではない、という現実を目の当たりにし、色々考えさせられます。

自己アピール

我が家のボードゲーム・これくしょん(一部)

大学時代に非電源系ゲームのサークルに入っていたこともあり、
一時期離れていたこともありましたが、足掛け10年くらいのボードゲーマーです。
ダイスをジャラジャラ振ったり、デッキ構築型ゲームでコンボを狙いに行くのが好きですね。
ただ、ついつい自分の手元にかかりきりになってしまい、盤面が疎かになってしまうこともしばしば…。

以上、簡単ではありますが自己紹介でした。
次回の社員紹介もどうぞお楽しみに。

技術者ブログ(2) – ローコード開発のご紹介(Oracle APEX)

技術者ブログと題して社員が日ごろ取り組んでいる学習内容を紹介します。
第2回は、ローコード開発をテーマにしている第2ユニットです。

今回のテーマ
『ローコード開発について』

そもそも、ローコード開発とは、その名の通りLow-Code、つまり手作業によるコーディングを最小限に抑えた開発のことです。
そういった意味では、フルスクラッチのコーディングから、フレームワークを採用しコーディングを省略することも、一種のローコード開発と言えるのかもしれませんね。

ですが、ここで言うローコード開発とは、そこから更に一歩踏み込み、ほぼコーディングが不要となる開発を指します。
たとえば、いくつかのローコード開発プラットフォームでは、GUIベースの開発ツールを用いることにより、部品を配置するだけで画面およびそこから呼び出されるロジックを自動生成してくれるため、一部のプロパティ設定を除いてコーディングがほぼ不要となります。

弊社では、このローコード開発プラットフォームとして
Oracle Application Express(APEX)を使用しています。

Oracle Application Express (APEX)は、最高レベルの機能を備え、どこにでもデプロイできる洗練されたスケーラブルでセキュアなエンタープライズ・アプリケーションを構築できる
ロー・コード開発プラットフォームです。

引用
https://apex.oracle.com/ja/

本製品の特徴として、Oracle Detabaseで完全にサポートされる無償機能であることが挙げられます。
つまり、Oracle APEXをダウンロードし、既存のOracle Databaseにインストールすることで、特に複雑な設定をすることなく利用できます。

また、Oracle APEXにはWeb上で最新バージョンを試用できる無償サービスも用意されており、実際の動作感を確かめることもできるようになっています。

Oracle APEX(無償サービス版)の管理画面。
クラウド上に配置されたOracle Databaseとの間でデータを読み書きするようなWebアプリケーションをGUIベースで作成することができる。

上記無償環境では、予め用意されているテンプレートを利用することで、Webアプリケーションの高速開発を実現しています。
また、デザインや機能のカスタマイズについても、GUIベースの開発ツールから必要な部品をドラッグ&ドロップすることで、開発経験が浅いプログラマでも複雑なコードを書くことなく直感的に開発できるようになっています。


Oracle APEX(無償サービス版)の開発画面。
リージョンと呼ばれる領域にフォーム部品などのアイテムを配置し、プロパティを設定するだけで、画面およびロジックを自動的に生成してくれる。

この他にも、いくつかのプラットフォームにてローコード開発を行っていますので、今後も紹介していきたいと思います。