【UiPath】「変数のスコープ」を理解する【初心者】

UiPath

UiPath】「変数スコープ」を理解する【初心者】

UiPathの学習追体験記事です。
※あくまで学習中の脳内を記事にしたものなので、この記事で書かれてあることが”正しい”とは限りません。

参考:学習効率本5巻 「知識の自作」

最新研究からわかる 学習効率の高め方 第5巻 - ふろむだ - BOOTH
■2021年8月5日追記 本書の第3~5巻を増補改訂したバージョンを、2021年8月5日にアップロードしました。 増補改訂の具体的な内容は、以下の記事に詳しく書きました。 2021年8月5日以前に第3~5巻をダウンロードされた方は、再ダウンロードをお願いします。 =============== ■基本説明 基本的に、...

0.動機

「UiPath RPA アソシエイト資格試験」を受けたい!
と思い、練習問題のプラクティステストを受けてみたが、正答率は半分にも満たなかった。徹底的にプラクティステストの復習をするしかない!

ということで、本記事では、プラクティステストで間違えた問題の復習の様子を書きつらねていきます。

まずは、間違えた問題の紹介。

変数のスコープを変更するにはどのUiPath Studioパネルが使用できますか。

引用元:https://www.pearsonvue.co.jp/uipath
UiPath RPA アソシエイト資格試験 プラクティステスト

解説部分には、この問題で求めている知識が紹介されていた。内容は以下。※答えは明示されてない

トピック:異なる変数タイプとそれらの使用法、管理、および[変数(Variables)]パネルにおける変数スコープの使用に関するベストプラクティスについて説明する。変数と引数の違いを説明する。

引用元:https://www.pearsonvue.co.jp/uipath
UiPath RPA アソシエイト資格試験 プラクティステスト

 

筆者
学習者

変数や引数は、プログラミングの入門書に必ず出てくるワードだよね。ここは、ちゃんと理解しないと後に響きそうだ。

ちょっと気にかかるのは、「変数タイプ」という表記、これは、「変数の型」と同じ意味かな。

下記記事を見たところ、変数タイプと変数の型は同じ意味として考えて問題なさそう。

VB 入門編2 - 変数とは、変数タイプ、変数宣言、定数宣言、アスキーコード - SAK Streets

では、以下から、「変数および変数のスコープ」の復習をしていく。

1.全体像理解

全体像理解とは、理解する項目の位置づけを把握すること。

垂直的理解

理解する対象が、UiPathアカデミーの「どのコース」「どの章」にあるかを確認する。

今回の理解の対象である「変数」と「変数のスコープ」については、以下のコースの章に記載があった。

UiPathアカデミー>UiPath Studio開発 初級コース>レッスン一覧>変数とデータ型

https://academy.uipath.com/jp/learningpath-viewer/1954/1/153407/16

では、「変数」と「変数のスコープ」の説明文をそれぞれ見てみる。

 

変数

変数には、数値や文字列などのデータを格納することができます

引用元:https://academy.uipath.com/jp/learningpath-viewer/1954/1/153407/16

 

変数のスコープ

変数のスコープとは、変数の適用範囲のことで、このスコープを設定することで、どの範囲で変数を使用することができるか定義できます

引用元:https://academy.uipath.com/jp/learningpath-viewer/1954/1/153407/16

 

筆者
学習者

スコープは、スペルにすると「scope」。変数は、英語で言うとなんだろう。

・変数(variable)の語源から考えを広げる

変数は、英語で「variable」というらしい。scopeとvariableの一般的な意味も調べてみよう。
以下、weblio辞典参考。

scope範囲、視野、余地、機会
variable変動できる、可変的な、変数の、不定の、変異する
学習者
学習者

variableの「変動できる」っていう意味があるのなら、「変動できない」を意味するIT用語もあるのかな。「不変数」みたいな、、

変数の関連語を調べていたところ、以下の用語を見つけた。

定数とは - IT用語辞典
定数【constant / 常数】とは、コンピュータプログラムのソースコードなどで、ある特定の数値やデータに名前を与えたもの。変数とは異なり、宣言時に決めた値をコードの中で後から変更することができない。プログラムのコード中で何度も参照される値で、実行時に変更する必要のないものに用いられる。

定数 【constant】 const / 常数

……
変数とは異なり、宣言時に決めた値をコードの中で後から変更することができない。

と記載があった。

学習者
学習者

ふむふむ、変数の反対は「定数」という理解で良いのかな。
「後から変えられる値が変数、後から変更できない値は定数」と理解しておこう。

水平的理解

UiPathでの変数の型とスコープのそれぞれの種類を調べてみたところ、UiPath Studioの変数パネルに「変数の型」と「スコープ」の欄があった。

・変数パネル>変数の型

主な変数の型が表示されていた。
「型の参照…」という選択肢があるので、他にも変数の型があるのだろう。

「型の参照…」をクリックしたところ、膨大な数の変数の型を見つけてしまった。

筆者
学習者
分からない単語だらけだ。。変数の型はStringやInt32などの理解しやすいものだけではないみたい。
今のところは、主に使用する変数を知っておくだけにとどめよう。
UiPathで頻繁に使用する覚えておきたい変数の型
データ型型名備考
Booleanブール型true/Falseデータ
Int32整数型
Double倍精度浮動小数型
String文字列型
DateTime日付時刻型
Array固定長配列
List可変長配列
Dictionary辞書型キーと値から構成
DataTable表データ型
Objectオブジェクト型すべてのデータ型のベース
Generic ValueGeneric Value型複数の種類のデータを格納できる。UiPath独自の型。
参考
基礎がよくわかる! ゼロからのRPA UiPath 超実践テクニック
Amazon.co.jp: 基礎がよくわかる! ゼロからのRPA UiPath 超実践テクニック eBook : 吉田 将明: 本

 

・変数パネル>スコープ

「シーケンス」と「フローチャート」が選択できる。

学習者
学習者

ん、制御系アクティビティが表示されるのかな。

よく見ると、使用されている制御系アクティビティの階層を示していた。

学習者
学習者

ふむふむ、「変数の適用範囲をどの階層までにするか」を決めるのがスコープの役割みたいだね。

2.実践理解

実際に手を動かすことで理解を深める。

変数のスコープ

「変数のスコープ」にしぼって、実践理解を試みる。

「変数」に関しては、Excel関連の記事で実践しているため、本記事では割愛。

【UiPath】「セルに書き込み」を理解する【初心者】
【UiPath】「セルに書き込み」を理解する【初心者】 UiPathの学習追体験記事です。 ※あくまで学習中の脳内を記事にしたものなので、この記事で書かれてあることが”正しい”とは限りません。 参考:学習効率本5巻 「知識の自作」...
【UiPath】「セルを読み込み」を理解する【初心者】
【UiPath】「セルを読み込み」を理解する【初心者】 UiPathの学習追体験記事です。 ※あくまで学習中の脳内を記事にしたものなので、この記事で書かれてあることが”正しい”とは限りません。 参考:学習効率本5巻 「知識の自作」...
【UiPath】「範囲に書き込み・範囲を読み込み」を理解する【初心者】
【UiPath】「範囲に書き込み」「範囲を読み込み」を理解する【初心者】 UiPathの学習追体験記事です。 ※あくまで学習中の脳内を記事にしたものなので、この記事で書かれてあることが”正しい”とは限りません。 参考:学習効率本5...

・ワークフロー概要

まずは、それぞれの「変数のスコープ」をすべて最上位の階層に設定してみる。

そのワークフローと実行結果は、以下の動画より。

※記事補足【UiPath】変数のスコープ概要

やっていることは、簡単。

変数のスコープを最上位の階層に設定して、どの階層でも変数を使えるようにしているだけ。

次は、このスコープの設定を変更した場合、どのような挙動になるかを試してみる。

・スコープ変更

まずは、2番目の階層「シーケンス階層②」で作成した変数「Scope」のスコープを変更する。

最上位の「フローチャート階層①」から「シーケンス階層②」に変更。

学習者
学習者

最上位の階層に変数Scopeが使われているから、エラーになるんじゃないかな。

エラーとなった。

また、最上位の階層を選択した状態で変数パネルを開くと、変数「Scope」の記載がなくなっていた。

学習者
学習者

選択中の階層で使用できる変数のみ、変数パネルに表示されるってことかな。

次に。3番目の階層「シーケンス階層③」で作成した変数「Variable」のスコープを変更する。

最上位の「フローチャート階層①」から「シーケンス階層③」に変更。

学習者
学習者

さっきと同じ結果になるのでは。

a.エラーとなった。

b.先ほどと同様に、選択中の階層の変数パネルから変数Variableの記載が消えていた。

学習者
学習者

やっぱり、変数パネルに表示される変数は、その階層で使用できる変数なんだね。

3.まとめ

「変数」と「変数のスコープ」の理解に励んだ。「変数のスコープ」に関しては、実際に使用してみることで理解を深める形をとった。

ここでは、「変数のスコープ」について分かったことを自分の言葉でまとめる。

・「変数のスコープ」は、変数を使用できる階層の範囲を決める機能
・変数パネルは、その階層で使用できる変数が表示される

学習者
学習者
すべての変数を全階層で使えるようにするのではなく、実際に使う範囲のみにスコープを設定して使ってみよう!

4.参考文献

UiPath Academy
This is an introduction to the process of analyzing, designing, deploying and maintaining Robotic Process Automation infrastructures
基礎がよくわかる! ゼロからのRPA UiPath 超実践テクニック
Amazon.co.jp: 基礎がよくわかる! ゼロからのRPA UiPath 超実践テクニック eBook : 吉田 将明: 本

コメント

タイトルとURLをコピーしました