SlideShare ist ein Scribd-Unternehmen logo
1 von 11
10分でわかるフロント開発
株式会社ビッグツリーテクノロジー&コンサルティング
SI事業部 アーキテクチャG リード
高安 厚思
1Copyright (C) 2018 Atsushi Takayasu All Rights Reserved.
1 2 3 4 5前提条件という名の言い訳
▌ご存知の方はご存知だと思いますが
私はフロントエンジニアではありません!
▌プラットフォームビジネスとしてAPIを展開し
ようとするとどうしてもここが話題になるの
で、勉強した話をしたいと思います。
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 2
1 2 3 4 5背景
▌SoEにおけるアプリケーションは基本的にマルチ
チャネル(Web、スマートフォンなど)が要求され
るが、コストは最小限にしたい
▌MSAで構成したシステムを画面UIでどう統合するか
は意外に課題であり、その解決案の一つとして見て
いた
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 3
1 2 3 4 5位置情報サービス(API)
▌室内の位置情報を元にした位置情報サービスを提供
しています。
▌ハードが必要です!
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 4
経路管理
BLE管理 経路/
BLE情報
運営者
位置情報
APIs
位置情報
経路情報/
BLE情報
利用者
1 2 3 4 5MSAと統合の例
▌MSAに基づいたサービスを画面で統合する
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 5
①
②
③
④
⑤
⑥
⑦
⑧
⑨
⑩
⑪
【引用元】
https://www.slideshare.net/JayLee1/cf-meetup-in-seoul-spring-cloud-services
1 2 3 4 5SPAを実現するJSエコシステム
▌Node,jsをベースとするJSのエコシステムによって
SPA(Single Page Application)を実現しています。
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 6
Node
webpackなど
各ライブラリコマンド(vue-cli-serviceなど)
React Angular Vue
1 2 3 4 5SPAを実現するルータ
▌URLとコンポーネントをマッピングして、DOM(仮
想DOM)の書き換えを支援する。
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 7
<Switch>
<Route exact path='/' component={Top} />
<Route exact path='/tasks' component={Task} />
</Switch>
<NavDropdown eventKey={5} id={5}title="タスク">
<LinkContainer exact to="/tasks">
<MenuItem eventKey="5.1" onClick={ () =>
this.updateModal(false)} >検索・一覧</MenuItem>
</LinkContainer>
ルート定義(ReactRouter Bootstrap)
メニュー定義( ReactRouter Bootstrap)
1 2 3 4 5Webコンポーネント
▌ようやく、Webコンポーネント(画面)が定義でき
るようになりました!
▌実際はまだまだなので、各ライブラリが独自実装し
ている
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 8
https://caniuse.com/#search=Custom
1 2 3 4 5コンポーネントの例
▌VUEJSで見てます。
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 9
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<p>
For guide and recipes on how to configure / customize
this project,<br>
check out the
<a href="https://cli.vuejs.org" target="_blank"
rel="noopener">vue-cli documentation</a>.
</p>
<h3>Installed CLI Plugins</h3>
<ul>
<li><a href="https://github.com/vuejs/vue-
cli/tree/dev/packages/%40vue/cli-plugin-babel"
target="_blank" rel="noopener">babel</a></li>
〜略〜
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String,
},
};
</script>
<style scoped>
h3 {
margin: 40px 0 0;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>
1 2 3 4 5コンポーネント間の通信
▌コンポーネント間にイベントを受け渡す、情報を受
け渡す時に原則として親子関係でしか実施できませ
ん。(ライブラリによります)
▌不便(正確には少し違う)なので、Fluxという仕組
みを利用します
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 10
Component
Action
Dispatcher
Store
1 2 3 4 5最後に
▌SPAのフロントアプリケーションはB2Cサイトだけ
でなく社員向けシステムでも求められてつつある。
▌特にハイブリッド開発としてSPAのJSアプリケー
ションをビルドすることで対応することもできるた
め大きな注目を浴びている
▌コンポーネント、ルータ、Fluxを意識するとわかり
やすいかと。
Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 11
https://qiita.com/superyusuke/items/948d2a084f87eaa3f9c2
https://raw.githubusercontent.com/kamranahmedse/developer-
roadmap/master/images/frontend-v2.png
参考URL

Weitere ähnliche Inhalte

Was ist angesagt?

Api meet up online#6 session1 ginco
Api meet up online#6 session1 gincoApi meet up online#6 session1 ginco
Api meet up online#6 session1 gincoNihei Tsukasa
 
Watson IoT Platform全貌解説
Watson IoT Platform全貌解説Watson IoT Platform全貌解説
Watson IoT Platform全貌解説Kenichi Inoue
 
if-up 2017 | キーノートパネル
if-up 2017 | キーノートパネルif-up 2017 | キーノートパネル
if-up 2017 | キーノートパネルSORACOM,INC
 
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばす
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばすSORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばす
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばすSORACOM,INC
 
自作プログラミング言語の集い
自作プログラミング言語の集い自作プログラミング言語の集い
自作プログラミング言語の集いNatsutani Minoru
 
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていることTier_IV
 
Api meetup online#6 session2 here
Api meetup online#6 session2 hereApi meetup online#6 session2 here
Api meetup online#6 session2 hereNihei Tsukasa
 
エッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことエッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことLeapMind Inc
 
20170419PFNオープンハウス インターンと採用 公開用
20170419PFNオープンハウス  インターンと採用 公開用20170419PFNオープンハウス  インターンと採用 公開用
20170419PFNオープンハウス インターンと採用 公開用Preferred Networks
 
API MeetUp Online#8 セッション3 ツクレル馬場さん
API MeetUp Online#8 セッション3 ツクレル馬場さんAPI MeetUp Online#8 セッション3 ツクレル馬場さん
API MeetUp Online#8 セッション3 ツクレル馬場さんNihei Tsukasa
 
if-up 2017 | B4:Using Soracom in Smart Buildings
if-up 2017 | B4:Using Soracom in Smart Buildingsif-up 2017 | B4:Using Soracom in Smart Buildings
if-up 2017 | B4:Using Soracom in Smart BuildingsSORACOM,INC
 
Mobilitydev2019 10 31_slideshare
Mobilitydev2019 10 31_slideshareMobilitydev2019 10 31_slideshare
Mobilitydev2019 10 31_slideshareTier_IV
 
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜SORACOM,INC
 
SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事Tosihiyuki Hirai
 
サイオステクノロジー
サイオステクノロジーサイオステクノロジー
サイオステクノロジーNihei Tsukasa
 
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~Shunichiro Yamamoto
 

Was ist angesagt? (20)

Api meet up online#6 session1 ginco
Api meet up online#6 session1 gincoApi meet up online#6 session1 ginco
Api meet up online#6 session1 ginco
 
Watson IoT Platform全貌解説
Watson IoT Platform全貌解説Watson IoT Platform全貌解説
Watson IoT Platform全貌解説
 
if-up 2017 | キーノートパネル
if-up 2017 | キーノートパネルif-up 2017 | キーノートパネル
if-up 2017 | キーノートパネル
 
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばす
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばすSORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばす
SORACOM Conference Discovery 2017 | B3. IoTでトップラインを伸ばす
 
Kyoto devcafe
Kyoto devcafeKyoto devcafe
Kyoto devcafe
 
自作プログラミング言語の集い
自作プログラミング言語の集い自作プログラミング言語の集い
自作プログラミング言語の集い
 
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること
自動運転の会社でなぜデータ基盤が必要なのか?そこで今やっていること
 
Rakuten20181027
Rakuten20181027Rakuten20181027
Rakuten20181027
 
Api meetup online#6 session2 here
Api meetup online#6 session2 hereApi meetup online#6 session2 here
Api meetup online#6 session2 here
 
エッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なことエッジ向けDeepLearningプロジェクトで必要なこと
エッジ向けDeepLearningプロジェクトで必要なこと
 
20170419PFNオープンハウス インターンと採用 公開用
20170419PFNオープンハウス  インターンと採用 公開用20170419PFNオープンハウス  インターンと採用 公開用
20170419PFNオープンハウス インターンと採用 公開用
 
API MeetUp Online#8 セッション3 ツクレル馬場さん
API MeetUp Online#8 セッション3 ツクレル馬場さんAPI MeetUp Online#8 セッション3 ツクレル馬場さん
API MeetUp Online#8 セッション3 ツクレル馬場さん
 
if-up 2017 | B4:Using Soracom in Smart Buildings
if-up 2017 | B4:Using Soracom in Smart Buildingsif-up 2017 | B4:Using Soracom in Smart Buildings
if-up 2017 | B4:Using Soracom in Smart Buildings
 
200821 swest
200821 swest200821 swest
200821 swest
 
Mobilitydev2019 10 31_slideshare
Mobilitydev2019 10 31_slideshareMobilitydev2019 10 31_slideshare
Mobilitydev2019 10 31_slideshare
 
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜
if-up 2017 | A4:カメラデバイスとクラウド〜スムーズな連携のために〜
 
SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事
 
SECONDTEAMのご案内
SECONDTEAMのご案内SECONDTEAMのご案内
SECONDTEAMのご案内
 
サイオステクノロジー
サイオステクノロジーサイオステクノロジー
サイオステクノロジー
 
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~
基調講演から読むSAPテクノロジの潮流 ~ SAPテクノロジはどこから来て、どこへ行くのか ~
 

Ähnlich wie 要求開発アライアンス納涼会 LT (フロント開発)

Tokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by IidaTokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by IidaHidenori Fujioka
 
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータPuppet
 
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2Sei Kato (加藤 整)
 
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択Shingo Kitayama
 
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用yuuki takizawa
 
S02 t3 python_study_web
S02 t3 python_study_webS02 t3 python_study_web
S02 t3 python_study_webTakeshi Akutsu
 
Jazug-8th: Azure AKS & FIWARE & Robot
Jazug-8th: Azure AKS & FIWARE & RobotJazug-8th: Azure AKS & FIWARE & Robot
Jazug-8th: Azure AKS & FIWARE & RobotNobuyuki Matsui
 
ISID IIoT Forum_180628
ISID  IIoT Forum_180628ISID  IIoT Forum_180628
ISID IIoT Forum_180628知礼 八子
 
05.日本マイクロソフト(株)_発表資料
05.日本マイクロソフト(株)_発表資料05.日本マイクロソフト(株)_発表資料
05.日本マイクロソフト(株)_発表資料wagatuma
 
初めてのWebプログラミング講座
初めてのWebプログラミング講座初めてのWebプログラミング講座
初めてのWebプログラミング講座DIVE INTO CODE Corp.
 
第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料Tae Yoshida
 
インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3Tomoaki Sawada
 
インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408Tomoaki Sawada
 
日本語データの活用までの道のり
日本語データの活用までの道のり日本語データの活用までの道のり
日本語データの活用までの道のりHideto Masuoka
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例Recruit Technologies
 

Ähnlich wie 要求開発アライアンス納涼会 LT (フロント開発) (20)

Smfl20201001
Smfl20201001Smfl20201001
Smfl20201001
 
Tokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by IidaTokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by Iida
 
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ
日本におけるIT自動化導入の特殊な事情 - 菅原 亮、株式会社NTTデータ
 
BPStudy#101発表資料
BPStudy#101発表資料BPStudy#101発表資料
BPStudy#101発表資料
 
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
 
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択
デブサミ2017【17-E-5】エンタープライズにおけるDevOpsの実態!Cloud Native Application Platformの選択
 
Toolsの杜- 弥生株式会社の自動仕訳エンジンを支えるフロントエンド ~ 「ダサいは、バグだ!」を標榜してUXを徹底的に追求する ~
Toolsの杜- 弥生株式会社の自動仕訳エンジンを支えるフロントエンド ~ 「ダサいは、バグだ!」を標榜してUXを徹底的に追求する ~Toolsの杜- 弥生株式会社の自動仕訳エンジンを支えるフロントエンド ~ 「ダサいは、バグだ!」を標榜してUXを徹底的に追求する ~
Toolsの杜- 弥生株式会社の自動仕訳エンジンを支えるフロントエンド ~ 「ダサいは、バグだ!」を標榜してUXを徹底的に追求する ~
 
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用
【Zeal】azure + power biで始めるbigdata分析の第一歩 20171115版 公開用
 
S02 t3 python_study_web
S02 t3 python_study_webS02 t3 python_study_web
S02 t3 python_study_web
 
Jazug-8th: Azure AKS & FIWARE & Robot
Jazug-8th: Azure AKS & FIWARE & RobotJazug-8th: Azure AKS & FIWARE & Robot
Jazug-8th: Azure AKS & FIWARE & Robot
 
ISID IIoT Forum_180628
ISID  IIoT Forum_180628ISID  IIoT Forum_180628
ISID IIoT Forum_180628
 
05.日本マイクロソフト(株)_発表資料
05.日本マイクロソフト(株)_発表資料05.日本マイクロソフト(株)_発表資料
05.日本マイクロソフト(株)_発表資料
 
初めてのWebプログラミング講座
初めてのWebプログラミング講座初めてのWebプログラミング講座
初めてのWebプログラミング講座
 
第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料
 
インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3インタリオカンファレンス案内(修正版)3
インタリオカンファレンス案内(修正版)3
 
AWSでの金融系システム構築・運用勘所
AWSでの金融系システム構築・運用勘所AWSでの金融系システム構築・運用勘所
AWSでの金融系システム構築・運用勘所
 
インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408インタリオカンファレンス案内(修正版6)092408
インタリオカンファレンス案内(修正版6)092408
 
日本語データの活用までの道のり
日本語データの活用までの道のり日本語データの活用までの道のり
日本語データの活用までの道のり
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例
 
ランプライト
ランプライトランプライト
ランプライト
 

Mehr von Atsushi Takayasu

要求開発アライアンス 9月定例会議
要求開発アライアンス 9月定例会議要求開発アライアンス 9月定例会議
要求開発アライアンス 9月定例会議Atsushi Takayasu
 
20180130 設計イベント
20180130 設計イベント20180130 設計イベント
20180130 設計イベントAtsushi Takayasu
 
アジャイル勉強会 公開資料
アジャイル勉強会 公開資料アジャイル勉強会 公開資料
アジャイル勉強会 公開資料Atsushi Takayasu
 
要求開発を補完する現状分析
要求開発を補完する現状分析要求開発を補完する現状分析
要求開発を補完する現状分析Atsushi Takayasu
 
技術勉強会(Solr入門編)
技術勉強会(Solr入門編)技術勉強会(Solr入門編)
技術勉強会(Solr入門編)Atsushi Takayasu
 
アプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なことアプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なことAtsushi Takayasu
 
20101022 構成管理勉強会資料
20101022 構成管理勉強会資料20101022 構成管理勉強会資料
20101022 構成管理勉強会資料Atsushi Takayasu
 
Developer's Summit 夏 EnterpriseTED 資料
Developer's Summit 夏 EnterpriseTED 資料Developer's Summit 夏 EnterpriseTED 資料
Developer's Summit 夏 EnterpriseTED 資料Atsushi Takayasu
 
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)Atsushi Takayasu
 

Mehr von Atsushi Takayasu (10)

要求開発アライアンス 9月定例会議
要求開発アライアンス 9月定例会議要求開発アライアンス 9月定例会議
要求開発アライアンス 9月定例会議
 
20180130 設計イベント
20180130 設計イベント20180130 設計イベント
20180130 設計イベント
 
アジャイル勉強会 公開資料
アジャイル勉強会 公開資料アジャイル勉強会 公開資料
アジャイル勉強会 公開資料
 
要求開発を補完する現状分析
要求開発を補完する現状分析要求開発を補完する現状分析
要求開発を補完する現状分析
 
技術勉強会(Solr入門編)
技術勉強会(Solr入門編)技術勉強会(Solr入門編)
技術勉強会(Solr入門編)
 
solr勉強会資料
solr勉強会資料solr勉強会資料
solr勉強会資料
 
アプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なことアプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なこと
 
20101022 構成管理勉強会資料
20101022 構成管理勉強会資料20101022 構成管理勉強会資料
20101022 構成管理勉強会資料
 
Developer's Summit 夏 EnterpriseTED 資料
Developer's Summit 夏 EnterpriseTED 資料Developer's Summit 夏 EnterpriseTED 資料
Developer's Summit 夏 EnterpriseTED 資料
 
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)
Developers summit 2013 summer TED Speaker 公募資料 (設計要素マラソン)
 

要求開発アライアンス納涼会 LT (フロント開発)

  • 2. 1 2 3 4 5前提条件という名の言い訳 ▌ご存知の方はご存知だと思いますが 私はフロントエンジニアではありません! ▌プラットフォームビジネスとしてAPIを展開し ようとするとどうしてもここが話題になるの で、勉強した話をしたいと思います。 Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 2
  • 3. 1 2 3 4 5背景 ▌SoEにおけるアプリケーションは基本的にマルチ チャネル(Web、スマートフォンなど)が要求され るが、コストは最小限にしたい ▌MSAで構成したシステムを画面UIでどう統合するか は意外に課題であり、その解決案の一つとして見て いた Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 3
  • 4. 1 2 3 4 5位置情報サービス(API) ▌室内の位置情報を元にした位置情報サービスを提供 しています。 ▌ハードが必要です! Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 4 経路管理 BLE管理 経路/ BLE情報 運営者 位置情報 APIs 位置情報 経路情報/ BLE情報 利用者
  • 5. 1 2 3 4 5MSAと統合の例 ▌MSAに基づいたサービスを画面で統合する Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 5 ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ⑪ 【引用元】 https://www.slideshare.net/JayLee1/cf-meetup-in-seoul-spring-cloud-services
  • 6. 1 2 3 4 5SPAを実現するJSエコシステム ▌Node,jsをベースとするJSのエコシステムによって SPA(Single Page Application)を実現しています。 Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 6 Node webpackなど 各ライブラリコマンド(vue-cli-serviceなど) React Angular Vue
  • 7. 1 2 3 4 5SPAを実現するルータ ▌URLとコンポーネントをマッピングして、DOM(仮 想DOM)の書き換えを支援する。 Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 7 <Switch> <Route exact path='/' component={Top} /> <Route exact path='/tasks' component={Task} /> </Switch> <NavDropdown eventKey={5} id={5}title="タスク"> <LinkContainer exact to="/tasks"> <MenuItem eventKey="5.1" onClick={ () => this.updateModal(false)} >検索・一覧</MenuItem> </LinkContainer> ルート定義(ReactRouter Bootstrap) メニュー定義( ReactRouter Bootstrap)
  • 8. 1 2 3 4 5Webコンポーネント ▌ようやく、Webコンポーネント(画面)が定義でき るようになりました! ▌実際はまだまだなので、各ライブラリが独自実装し ている Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 8 https://caniuse.com/#search=Custom
  • 9. 1 2 3 4 5コンポーネントの例 ▌VUEJSで見てます。 Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 9 <template> <div class="hello"> <h1>{{ msg }}</h1> <p> For guide and recipes on how to configure / customize this project,<br> check out the <a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>. </p> <h3>Installed CLI Plugins</h3> <ul> <li><a href="https://github.com/vuejs/vue- cli/tree/dev/packages/%40vue/cli-plugin-babel" target="_blank" rel="noopener">babel</a></li> 〜略〜 </template> <script> export default { name: 'HelloWorld', props: { msg: String, }, }; </script> <style scoped> h3 { margin: 40px 0 0; } ul { list-style-type: none; padding: 0; } li { display: inline-block; margin: 0 10px; } a { color: #42b983; } </style>
  • 10. 1 2 3 4 5コンポーネント間の通信 ▌コンポーネント間にイベントを受け渡す、情報を受 け渡す時に原則として親子関係でしか実施できませ ん。(ライブラリによります) ▌不便(正確には少し違う)なので、Fluxという仕組 みを利用します Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 10 Component Action Dispatcher Store
  • 11. 1 2 3 4 5最後に ▌SPAのフロントアプリケーションはB2Cサイトだけ でなく社員向けシステムでも求められてつつある。 ▌特にハイブリッド開発としてSPAのJSアプリケー ションをビルドすることで対応することもできるた め大きな注目を浴びている ▌コンポーネント、ルータ、Fluxを意識するとわかり やすいかと。 Copyright (C) 2018 Atsushi Takayasu All Rights Reserved. 11 https://qiita.com/superyusuke/items/948d2a084f87eaa3f9c2 https://raw.githubusercontent.com/kamranahmedse/developer- roadmap/master/images/frontend-v2.png 参考URL