Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ThrowとRethrowはどう違う?
Search
Sao
March 05, 2020
Technology
1
410
ThrowとRethrowはどう違う?
Sao
March 05, 2020
Tweet
Share
More Decks by Sao
See All by Sao
個人的に使って良かったUiPathアクティビティ_Part2
saoritakita
0
210
つまづいてもあきらめずに進むさおの開発日記
saoritakita
0
29
再びStudioWebを探検してみた
saoritakita
0
150
Studio_Webに触れる_好奇心旺盛なさおの冒険
saoritakita
0
270
個人的に全然使わなかったUiPathのアクティビティ
saoritakita
0
860
個人的に使って良かったUiPathアクティビティ
saoritakita
0
1.3k
久しぶりにPower Automate for desktopに触れてみる
saoritakita
0
1.1k
おうちでロボット実装〜さおラボ〜Community Editionを使ってみよう!
saoritakita
0
490
久しぶりにPythonを学ぶ
saoritakita
0
650
Other Decks in Technology
See All in Technology
ガバメントクラウドの概要と自治体事例(名古屋市)
techniczna
2
230
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
4
370
衛星画像超解像化によって実現する2D, 3D空間情報の即時生成と“AI as a Service”/ Real-time generation spatial data enabled_by satellite image super-resolution
lehupa
0
160
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
530
Reflections of AI: A Trilogy in Four Parts (GOTO; Copenhagen 2025)
ondfisk
0
110
Developer Advocate / Community Managerなるには?
tsho
0
140
社内報はAIにやらせよう / Let AI handle the company newsletter
saka2jp
8
1.4k
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
730
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
なぜAWSを活かしきれないのか?技術と組織への処方箋
nrinetcom
PRO
4
800
ガバメントクラウド(AWS)へのデータ移行戦略の立て方【虎の巻】 / 20251011 Mitsutosi Matsuo
shift_evolve
PRO
2
190
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
3.3k
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
900
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Automating Front-end Workflow
addyosmani
1371
200k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Transcript
さお(@saosao885)
目次 開発当初・・・ Throwとは/使い方 Exception(例外の種類) Rethrowとは/使い方
Throw/Rethrowの違い まとめ
自己紹介 名前:さお RPA歴:UiPath(2年以上) ※勉強期間を含む よく使用するアクティビティ: Terminal系 最近勉強会が少ない・・・ Twitter: @saosao885 ご当地、電車ネタはついて
いけるはず。。。
開発当初・・・ RPAを学び、いざ客先で開発業務をやっていた時。。。 ThrowとRethrowって、 使い方がいまいちわから ないなぁ。。。 この2つは何が違うの?
Throwとは 投げるという意味→「(エラーの時は) 何とかして」 要は「エラーの時は止めないで、どうにかロボットを動かすためのもの」 基本はTryで使用 これがないと・・・
左記はあくまで一例です
使い方 ①Try Catchアク ティビティを配置 ②ロボを作成、エラーの場 所に「Throw」を配置 ③Throwの”Exception”欄に New Exceptionと、エラーの 内容を記載
(赤字はエラー内容による)
Exception(例外の種類) 主なExceptionの種類(私の見たことあるもの) ▪Exception:エラー全般(よく使う) ▪BusinessRuleException:ビジネスエラー(そこそこ使う) ▪DirectoryNotFoundException:ファイルが見つからない ▪IOException:入力/出力のエラー ▪TimeoutException:タイムアウト
Rethrowとは Throwで起きたエラーの内容をもう1回起こす Catchで使用する 上位xaml側にあるCatchへ移動してほしいとき
例えば Rethrowは右記のような状況 の時に使用できます
使い方1 ここではビジネスエラーを 出すようにします
使い方2 Rethrowでは「前のThrowで 起きたものをもう一回発生させ たいとき」に使用 左の例では、Subのxamlファ イルで実行中、「Try」の部分 で「値の不一致」とエラーが出 るのですが、Rethrowで再度 「値の不一致」エラーが出る
使い方3 Subのxaml側で「値の不一致」が 出たビジネスエラーはMain側の Catchへ入る
ThrowとRethrowの違い Throw Rethrow アクティビティ 基本の使い方 Tryで使用 New (例外の詳細)(例外の理 由等)を記載 Catchで使用
上位にあるxaml側のCatchへ行か せたい(対応するException)時に 使う なので、プロパティに入力箇所がない どんなケースに 使う? Try中にエラーが発生するが、どう にか回避したい時等 Throwで一度起こしたエラーをもう 一回起こしたいとき
まとめ Throw→エラーを意図的に起こして「どうしたいのか」を示す Rethrow→Throwで起こしたエラーをもう一回起こしたいとき より使いやすい、止まりづらいロボづくりを目指しましょう!
イラスト:いらすとや