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
Azure Logic Appsにおける リファクタリング
Search
Recruit Technologies
March 29, 2019
Technology
0
680
Azure Logic Appsにおける リファクタリング
2019/3/29 Azure DevOps Tokyo, Japan 3rd strikeでの、瀧田の講演資料になります
Recruit Technologies
March 29, 2019
Tweet
Share
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
700
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
12k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.5k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
1.9k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
42k
【RTC新人研修 】 TPS
rtechkouhou
1
41k
Android Boot Camp 2020
rtechkouhou
0
41k
HTML/CSS
rtechkouhou
10
51k
TypeScript Bootcamp 2020
rtechkouhou
9
46k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
250
Delegating the chores of authenticating users to Keycloak
ahus1
0
120
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
3
120
「Chatwork」の認証基盤の移行とログ活用によるプロダクト改善
kubell_hr
1
170
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
280
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
3
310
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ #1 量子機械学習の入門
tkhresk
0
140
TechLION vol.41~MySQLユーザ会のほうから来ました / techlion41_mysql
sakaik
0
180
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.3k
Welcome to the LLM Club
koic
0
180
A2Aのクライアントを自作する
rynsuke
1
170
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
720
Featured
See All Featured
For a Future-Friendly Web
brad_frost
179
9.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Building an army of robots
kneath
306
45k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Embracing the Ebb and Flow
colly
86
4.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Automating Front-end Workflow
addyosmani
1370
200k
Speed Design
sergeychernyshev
32
1k
Transcript
Azure Logic Appsにおける リファクタリング 株式会社リクルートテクノロジーズ 瀧田直斗 2019年3月29日 Azure DevOps Tokyo
Japan 3rd strike
目次 • 自己紹介 • Azure Logic Appsとは • カオスになっていくLogicApps •
リファクタリング方法 • リファクタリング後とテスト方法 2 (C) Recruit Technologies Co., Ltd. All rights reserved.
自己紹介 瀧田 直斗 株式会社リクルートテクノロジーズ ITソリューション本部 インフラソリューション部 経歴 2011〜2016 製薬業界様向けのIT会社 -
営業支援システムのインフラ全般構築担当 2016/9〜 リクルートテクノロジーズ入社 - 商用インフラと社内インフラを担当 最近の技術興味 ・Linuxカーネル、Docker、Kubernetes、GoLang ・データ操作,ログまわりが好き ELS、fluentd/embulk、SQL、・・・ 3 (C) Recruit Technologies Co., Ltd. All rights reserved.
Azure Logic Appsとは Azure Logic Appsとは システムやサービス、アプリケーション間をつなぐAzure上のサービス。 GUIで設定可能で、ノンプログラミングでアプリケーションを構築できる。 サーバレスなのでサーバメンテナンスなどの運用は発生しない。 4
(C) Recruit Technologies Co., Ltd. All rights reserved. + Office365やSalesforceなどの200を超 えるコネクタがあり、それぞれイベント をトリガーとして実行できる。 またスケジュール実行やHTTPで受信し たら実行することもできる。 Azure Functionを実行、SQL Serverか らレコードを取得するといったアクショ ンの他、条件文やswitch文、ループなど のフォロー制御もできる。 処理結果をSlackへ通知したり、メール を送信したり、DBへレコードを追加した りなどを行う。
カオスになっていくLogicApps 便利だけど・・・ GUIで簡単に構築できるため、 調子に乗って作っていくとカオスになってくる・・・。 5 (C) Recruit Technologies Co., Ltd.
All rights reserved.
カオスになっていくLogicApps カオスになると・・・ 追加や変更、テストが大変・・・! 例えば、途中のロジックをテストしたくても頭から実行しないとテスト できない。 6 (C) Recruit Technologies Co.,
Ltd. All rights reserved. 毎回トリガーを起動し いと 途中のロジックがテス トできない! テストしたいロジック トリガー
リファクタリング方法 単体機能で分割を考える 単体機能ごとに分割してリファクタリング! それぞれのロジックが依存しないで呼び出せるように変更する。 7 (C) Recruit Technologies Co., Ltd.
All rights reserved. それぞれ別のLogicAppsに 切り出す! 処理1 処理2 処理3
リファクタリング方法 HTTP要求/応答を利用して機能単位に分割しよう! 例えば以下の様にHTTPでパラメータを受信して、処理結果をレスポンス として応答する。 8 (C) Recruit Technologies Co., Ltd.
All rights reserved. 受信するパラメータを要求本文 (Body)にJSON型で設定!
リファクタリング後とテスト方法 リファクタリング後! とってもシンプルに! 9 (C) Recruit Technologies Co., Ltd. All
rights reserved.
リファクタリング後とテスト方法 単体テスト方法 それぞれのLogicAppsにPOSTでパラメータを送信すればOK! 10 (C) Recruit Technologies Co., Ltd. All
rights reserved. パラメータ ※Postmanを利用
おしまい ご清聴ありがとうございました! 11 (C) Recruit Technologies Co., Ltd. All rights
reserved.