SlideShare a Scribd company logo
日本マイクロソフト株式会社
パートナー事業本部 パートナー技術統括本部
テクニカル エバンジェリスト
井上 章 (いのうえ あきら)
~ Any developer, Any app, Any platform ~
"今" 押さえておきたい!
Web アプリ開発の技術トレンドとツールの進化
井上 章 (いのうえ あきら)
テクニカル エバンジェリスト
http://aka.ms/chack
2008 年マイクロソフト入社。
主に .NET/ASP.NET や Visual Studio,
Microsoft Azure などの開発技術を専門とする
エバンジェリストとして、技術書籍やオンライ
ン記事などの執筆、さまざまな技術イベントで
の講演などを行う。
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
Bringing AI to Every Developer
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
Any developer
Any app
Any platform
Visual Studio Code
http://code.visualstudio.com/
Code optimized editor
Intellisense, debugging, GIT
Windows + Mac + Linux
Open Source
JavaScript is the
Assembly Language of the Web.
by Scott Hanselman.






"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
TypeScript
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.
JavaScript that scales.
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
 JavaScript (ECMAScript) のスーパー セット (上位拡張)
となるオープン ソースのプログラミング言語
 0 0

 TypeScript コンパイラ (tsc) が JavaScript を生成

 静的型付け、クラス、モジュールをサポート

~ Any browser. Any host. Any OS. Open Source. ~
TypeScript
ファイル
(*.ts)
TypeScript
コンパイラ
(tsc)
JavaScript
ファイル
(*.js)
TypeScript
型定義ファイル
(*.d.ts)
JavaScript
実行エンジン
Node.js または
WSH (WScript.Shell)
で実行
ECMAScript 3 (ES3)
ECMAScript 5 (ES5)
ECMAScript 2015+ (ES2015, ES2016, ES2017, ESNEXT)
Web ブラウザーや
Node.js など
JavaScript のあいまいさを排除し、安全性・可読性・生産性を向上
interface I { }
class C { }
module M { }
{ s: string; }
number[]
() => boolean
// Number
let x: number; // 明示的
let y = 0; // y: number と同じ
// Boolean
let b: boolean; // 明示的
let yes = true; // yes: boolean = true と同じ
// String
let s: string; // 明示的
let n = "akira"; // n: string = "akira" と同じ
// Enum
enum Color { Red, Green, Blue }
let myColor = Color.Red;
Console.log(Color[myColor]); // Red
interface, class, namespace などのオブジェクト指向言語構文の導入
interface Dog {
name: string;
Talk: () => string;
}
class Corgi implements Dog {
name: string;
constructor(name: string) {
this.name = name;
}
Talk(): string {
return "Bow wow!";
}
}
class myDog extends Corgi {
constructor() {
super("reo");
}
Talk(): string {
return "Wan wan!";
}
}
namespace M {
export let reo = new myDog();
}
alert(M.reo.Talk());
 ジェネリクス (Generics) 構文
 アロー関数式 (ES2015 匿名関数構文)
 Get / Set アクセサ構文 (プロパティ)
class Human<T> { ... }
let me = new Human<string>("Akira");
let a = function (x: number) { return Math.sin(x); } // 標準式
let b = x => Math.sin(x)
class Who {
private _name: string;
get Name() { return this._name; }
set Name(name: string) { this._name = name; }
}
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
http://www.typescriptlang.org/samples/index.html
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
プラットフォームの変化
201620001990 2010
Cloud Native Apps
Serverless
Containers
Monolithic
Frontend
Middle tier
Backend
Microservice
1
Microservice
2
Microservice
3
Microservice
4
Microservice
5
Function 1
Function 2
Function 3
Function 4
Function 5
Function 6
Function 7
Function 8
Function 9
Function 10
Function 11
Function 12
• Azure Functions
• Web App for Containers
• Azure Container Instances
• Azure Container Service (AKS)
• Service Fabric
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
TypeScript
Any browser. Any host. Any OS. Open Source.
JavaScript のスーパーセット
ES 3 以上の環境をサポート
静的型付けとオブジェクト指向
多くの開発ツールのサポート
最新 ES 言語仕様を先取り
JS 開発生産性を向上
Visual Studio
Visual Studio for Mac
Visual Studio Code
Visual Studio App Center
Visual Studio Team Services
Microsoft Developers
© 2017 Microsoft Corporation. All rights reserved.
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。

More Related Content

PDF
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
PPTX
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
PPTX
Dot netconf2017 - VS拡張
PDF
Empower every App and every Developer in a Mobile-first, Cloud-first World.
PDF
.NET Core と .NET Framework (続きは de:code 2016 で!)
PPTX
Stack2017 自動化困難な状況での活動方法
PDF
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
PDF
Engineers can change the world ~ "世界" で活躍するエンジニアになるために
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
Dot netconf2017 - VS拡張
Empower every App and every Developer in a Mobile-first, Cloud-first World.
.NET Core と .NET Framework (続きは de:code 2016 で!)
Stack2017 自動化困難な状況での活動方法
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
Engineers can change the world ~ "世界" で活躍するエンジニアになるために

What's hot (20)

PPTX
新しい Visual Studio & .NET と新時代のアーキテクチャ
PDF
Visual Studio と Azure で Python を始めよう
PDF
Visual Studio Dev Essential_登録手順書_2016年11月版
PDF
第5回業開中心会議
PDF
Visual Studio Code #phpcon2015
PDF
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
PDF
Angularモダンweb開発セミナー紹介 20170923
PDF
Visual Studio 2013 と HTML5 で実現するマルチデバイス/マルチプラットフォーム アプリの開発
PDF
Visual Studio を使用した Cordova 開発
PPTX
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
PDF
.NET 最新ロードマップと今押さえておきたい技術要素
PPTX
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
PDF
DroidKaigi - Welcome talk
PPTX
テスト自動化の現場で困ること SI-Toolkitが解決すること
PPTX
20160308 私とVisual Studio
PPTX
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
PDF
Visual studio extensibility
PDF
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
PDF
Angular 4がやってくる!? 新機能ダイジェスト
PDF
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
新しい Visual Studio & .NET と新時代のアーキテクチャ
Visual Studio と Azure で Python を始めよう
Visual Studio Dev Essential_登録手順書_2016年11月版
第5回業開中心会議
Visual Studio Code #phpcon2015
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
Angularモダンweb開発セミナー紹介 20170923
Visual Studio 2013 と HTML5 で実現するマルチデバイス/マルチプラットフォーム アプリの開発
Visual Studio を使用した Cordova 開発
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
.NET 最新ロードマップと今押さえておきたい技術要素
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
DroidKaigi - Welcome talk
テスト自動化の現場で困ること SI-Toolkitが解決すること
20160308 私とVisual Studio
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
Visual studio extensibility
[TL03] あなたはどっち? Visual Studio Code 派と Visual Studio 派による Web フロントエンド開発 徹底紹介
Angular 4がやってくる!? 新機能ダイジェスト
~ アプリ開発に新たな息吹を ~ クラウドが当たり前の今こそ知っておきたい Azure & Visual Studio コラボレーション
Ad

Similar to "今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化 (20)

PDF
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
PDF
TypeScript と Visual Studio Code
PDF
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
PDF
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
PDF
TypeScriptへの入口
PDF
Visual Studio 2012 Web 開発 ~ One ASP.NET から TypeScript まで ~
PDF
TypeScript ファーストステップ (Rev.2) ~ Any browser. Any host. Any OS. Open Source. ~
PDF
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
PDF
TypeScript and Visual Studio Code
PDF
Buildinsider OFFLINE TypeScriptの基礎から実践・利用事例まで
PDF
TypeScript 言語処理系ことはじめ
PDF
TypeScript 1.0 オーバービュー
PDF
JavaScript.Next
PDF
TypeScript超入門
PPTX
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
PDF
Visual Studioで始めるTypeScript開発入門
PDF
Java scriptの進化
PDF
ng-japan 2015 TypeScript+AngularJS 1.3
PPTX
JavaScript使いのためのTypeScript実践入門
PDF
3日時間をもらったのでTypeScriptを触ってみた
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
TypeScript と Visual Studio Code
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScriptへの入口
Visual Studio 2012 Web 開発 ~ One ASP.NET から TypeScript まで ~
TypeScript ファーストステップ (Rev.2) ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript and Visual Studio Code
Buildinsider OFFLINE TypeScriptの基礎から実践・利用事例まで
TypeScript 言語処理系ことはじめ
TypeScript 1.0 オーバービュー
JavaScript.Next
TypeScript超入門
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
Visual Studioで始めるTypeScript開発入門
Java scriptの進化
ng-japan 2015 TypeScript+AngularJS 1.3
JavaScript使いのためのTypeScript実践入門
3日時間をもらったのでTypeScriptを触ってみた
Ad

More from Akira Inoue (20)

PDF
New Features in C# 10/11
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
PDF
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
PDF
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
PDF
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
PDF
.NET の過去、現在、そして未来
PDF
VS Code Live Share ~ 東京と大阪を繋いでみよう!
PDF
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
PDF
.NET の今と今後に思うこと (Tokyo Ver.)
PDF
.NET の今と今後に思うこと
PDF
VS Code & Flaskで作るCloud NativeアプリとDevOps
PDF
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
PDF
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
PDF
.NET の今 ~ 最新アップデートと 2019 年の展望
PDF
.NET today and tomorrow
PDF
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
PDF
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~
New Features in C# 10/11
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
.NET の過去、現在、そして未来
VS Code Live Share ~ 東京と大阪を繋いでみよう!
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
.NET の今と今後に思うこと (Tokyo Ver.)
.NET の今と今後に思うこと
VS Code & Flaskで作るCloud NativeアプリとDevOps
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
.NET の今 ~ 最新アップデートと 2019 年の展望
.NET today and tomorrow
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~

"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化