はじめに
最近,会社の研修等でローコードというものに触れる機会がありました(現在進行形).
1つずつコードを入力していくわけではありませんが,だからといって初心者が急にできるようになるものではないなと感じました.
今回は条件分岐を通じて感じたことを記載します.
筆者の状況・経験
現在新卒でシステム導入・運用部門に所属
学生時代の研究にて,pythonを使用してfor文,if文を使用して配列処理を経験(機械系出身)
ローコードツールを使用して今回やりたいこと(研修目的)
基本的にはExcelに保存されているデータを抽出・加工を行い出力すること
ローコードに備わっているもの
各種操作を実行するためのパーツがそろっています.
例えばですが,リスト内の要素から25以上の値を抽出する作業を実施する際には,
下記のようなイメージで作成します.
ローコードでは[データの読み込み], [条件分岐]などのパーツを組み合わせることで,直感的にコードを作成することが出来るのがわかります.
pythonで実行しようとすると下記のようになります.
GPTちゃんに修正依頼をしたのは秘密です...
a = [10,20,30,40,50]
b = []
for i in a:
if i >= 25:
b.append(i)
print(b)
(実際にはpandas等を使用してexcelシートを読み込むコードが最初に入ります.)
繰り返し処理(for文)や条件式(if文)を自身で記載する必要があります.
比較をすると,ローコードツールでは細かいプログラミング言語の文法を覚える必要はあまりなさそうです.
ローコードの罠(条件分岐編)
では,次は下記の条件を満たすデータの抽出を考えます.
次のリストから,下記に示す条件を満たす数字を抽出してください.
リストA = [10,15,20,25,30,35,40]
条件
・値が30以上の要素
・偶数の要素
上記の課題ではこのようにコードを作成すればよさそうです.
しかしながら,実際には条件分岐の要素は一つで済みます.
実際に処理される動作は同じですが,パーツが1つ少なくなるのですっきりします.
単一の条件式のみしか使えないと,複数の条件分岐があった際に多くの条件分岐要素が必要になってしまうことがわかります.
(ここでいう単一はand, orを含まない条件式を指しています.)
また,〇〇かつ△△(and接続)の条件分岐では2パーツ使ってできますが,
〇〇または△△(or接続)の条件分岐ではパーツの接続がめんどくさくなる予感がします...
このように,ローコードで適当にUI操作で設定をしていると,
思い通りのコードが完成するころには画面が埋め尽くされていくと考えられます.
しかし,上記のような1つの条件分岐のパーツに複数の条件を指定したいときにはカスタムで入力する必要があります.
結局はコードは書けた方がいい
私からの結論としては,コードは書けた方がいい ということです.
コードを記述する際にはどのような工程が必要かを考えますが,
ひたすらに工程を1つずつ作成するのではなく,まとまりを考えながら作成する必要があるなと感じました.
ただ,間違えてはいけないのは,
複数の条件式を1つの条件分岐要素に組み込めばいいわけではない
ということです.
一見スリムになってよさげに見えますが,透明性が失われて複雑性が増すことで他ユーザが使用・再加工する際に不便になります.
どこまでをひとつのまとまりとして考えるかは,コード作成者の腕の見せ所だなと思います.
また,複数の条件式をひとつに合わせる際には集合の考え方が必要になると思いますので,
その内容についても記載したいなと思います.
最後まで読んでいただきありがとうございました.
(Power automateはWindowsユーザなら無料で使えることを最近知りました.)
(自学習の一環として使い倒したいなと思います.)