質問するログイン新規登録

回答編集履歴

3

IE11回りの表現を調整

2017/10/07 01:57

投稿

miyabi-sun
miyabi-sun

スコア21497

answer CHANGED
@@ -30,15 +30,15 @@
30
30
  > また最近はTypeScriptが流行っていますが、これはIE11以下もターゲットにしているためにTypeScriptをみんな使っているのですか?
31
31
 
32
32
  NO
33
+ ES6の書き方をしたいだけのWebエンジニアは昔からBableを使ってES5にトランスパイルしてた。
34
+ だから本質的な所で言えば違うわけだね。
33
35
 
34
- Babel等のツールを併用してES5相当までコードのレベルを落とせるってのは、
35
- 素のJSでも出来るし、JSに変換される全てのAltJSに共通する
36
+ するTypeScriptはメイン機能は型安全を意識した大規模開発
37
+ それだけじゃ理由が薄いからいち早くES6の機能を取り入れてBetterJSの地位も築いたんだ。
38
+ でも当時は動作しないブラウザも多かったのでES5にトランスパイルするから安全に書けるという所を主張にしたわけだね。
36
39
 
37
- TypeScriptは昔からES6の機能をどんどん取り入れたから、
38
- 「おまえあまりに取り入れるのが早すぎて最先端のFireFoxやChromeでも対応してねーじゃねーかどうすんだよ」
39
- …って話になって、じゃあES5相当のコードにレベルを落とそうかという必要性が生まれて対応しただけに過ぎない。
40
-
41
40
  何故TypeScript流行っていったのか箇条書きにしてみたよ。
41
+ こうすることでWebエンジニア達が何に惹かれてTypeScriptにやってきたのかが分かるね。
42
42
 
43
43
  1. SPAの流行: AngularJS等のJSフレームワークの台頭
44
44
  2. JSの領域拡大: PHPやRubyがやってた領域をJSが受け持つことに

2

TypeScript周りの回答調整

2017/10/07 01:57

投稿

miyabi-sun
miyabi-sun

スコア21497

answer CHANGED
@@ -30,8 +30,16 @@
30
30
  > また最近はTypeScriptが流行っていますが、これはIE11以下もターゲットにしているためにTypeScriptをみんな使っているのですか?
31
31
 
32
32
  NO
33
- TypeScriptはこのようなフローを辿って流行っている
34
33
 
34
+ Babel等のツールを併用してES5相当までコードのレベルを落とせるってのは、
35
+ 素のJSでも出来るし、JSに変換される全てのAltJSに共通する話。
36
+
37
+ TypeScriptは昔からES6の機能をどんどん取り入れたから、
38
+ 「おまえあまりに取り入れるのが早すぎて最先端のFireFoxやChromeでも対応してねーじゃねーかどうすんだよ」
39
+ …って話になって、じゃあES5相当のコードにレベルを落とそうかという必要性が生まれて対応しただけに過ぎない。
40
+
41
+ 何故TypeScript流行っていったのか箇条書きにしてみたよ。
42
+
35
43
  1. SPAの流行: AngularJS等のJSフレームワークの台頭
36
44
  2. JSの領域拡大: PHPやRubyがやってた領域をJSが受け持つことに
37
45
  3. JSの大規模開発化: つまりJSのコード量が増えるわけだよね
@@ -41,10 +49,7 @@
41
49
 
42
50
  > 私のようにIE11を対応しないと決めていたらTypeScriptでなくてもよいのでしょうか?
43
51
 
44
- Babel等のツールを併用してES5相当までコードのレベルを落とせるってのは、
45
- 素のJSでも出来るし、JSに変換さる全てのAltJS共通する話。
52
+ は前提条件が誤りだから微妙な質問なってる気がするけど、
46
- あくまでTypeScriptを使う人間が多いのは、前述の通り大規模開発時の型の安全性に着目しているから。
47
-
48
53
  例えばIE11でも対応しているSPA用のJSフレームワークは多く存在していて、
49
54
  大規模なSPAを構築するためにTypeScriptを採用しているような事例もあるね。
50
55
 

1

文章の校正

2017/10/07 01:16

投稿

miyabi-sun
miyabi-sun

スコア21497

answer CHANGED
@@ -1,15 +1,10 @@
1
- 移行出来るか出来ないかの判断は各自でしよう!
2
1
  「ES2015(以下ES6と表記)で書きたい?ほぼ対応しているから大丈夫でしょ〜」
3
2
  …という楽観的な回答を拾ってプロジェクトが大ハマリしても誰も責任とれないよ。
4
3
 
5
4
  参考URL: [ECMAScript 6 compatibility table](http://kangax.github.io/compat-table/es6/)
6
5
 
7
- どの程度ES6を駆使するかにもよるけれど、
8
- `let`や`const`使いたいってだけの話ならIE11でも対応してるからね。
9
-
10
6
  責任は取れない上で見解を述べるなら、
11
- IE以外はほぼ全ての書き方が採用出来るからハマりポイントは殆どない。
12
- 一部Edge等が弱い箇所を気をつければ十分移行しても対応出来ると思う。
7
+ ハマりポイントは殆どなくて、一部Edge等が弱い箇所を気をつければ十分移行して良いレベルだと思う。
13
8
 
14
9
  ---
15
10
 
@@ -19,9 +14,9 @@
19
14
 
20
15
  > jQuery用プラグインなど、ES6で書かれていなくてもES6やES5などの混在は可能なのでしょうか?
21
16
 
22
- 前半よく分からないけど、ES5とES6の混在は可能。
17
+ ES5とES6の混在は可能。
23
18
  そもそもES6はES5から予約語や関数が増えた程度で、元々の言語仕様から全くといっていいほど変化してないよ。
24
- 自分が必要と感じて使いたい分だけES6の機能を使えばいい。
19
+ 自分が使いたいと感じた分だけES6の機能を使えばいい。
25
20
 
26
21
  こんな風にバリバリのES6的な書き方をしつつ、ES5のライブラリのjQueryを操る事も可能。
27
22
 
@@ -37,24 +32,24 @@
37
32
  NO
38
33
  TypeScriptはこのようなフローを辿って流行っている
39
34
 
40
- 1. AngularJS等のJSフレームワークの台頭でSPAが流行った
35
+ 1. SPAの流行: AngularJS等のJSフレームワークの台頭
41
- 2. 今までHTML生成をPHPやRuby等のサーバーサイドでやってが、JSでやることになった
36
+ 2. JSの領域拡大: PHPやRubyやってた領域をJSが受け持つことに
42
- 3. JavaScriptやるべきことが多くなった(大規模開発化
37
+ 3. JSの大規模開発化: つまりJSのコード量が増えるわけだよね
43
- 4. 大規模開発するなら型の安全性欲しい
38
+ 4. TSに注目が集まる: 大規模開発するなら型の安全性欲しい、MSが公式採用しているTypeScriptがある
44
- 5. MS社が全力サポートしてるTypeScriptが使い勝手良いらしい
45
- 6. Angular2やReact.jsがTypeScript推奨している
39
+ 5. 有名ライブラリがTSを採用: Angular4やReact.jsがTypeScript推奨している
46
- 7. 使ってみたら対応しているIDE多いし、VS Code対応しているし開発には困らない
40
+ 7. 対応IDEやエディタが増えた: デフォルトでVisualStudioやVS Code対応しているし便利
47
41
 
48
42
  > 私のようにIE11を対応しないと決めていたらTypeScriptでなくてもよいのでしょうか?
49
43
 
50
- Babel等のツールを併用してES5相当までコードのレベル落とせるってのは、
44
+ Babel等のツールを併用してES5相当までコードのレベル落とせるってのは、
51
- 素のJSでも出来るし、CoffeeScript2.0でも出来る事だからTypeScript限っての話じゃない
45
+ 素のJSでも出来るし、JS変換される全てのAltJSに共通する話。
52
- あくまでTypeScriptを使う人間が多いのは、大規模開発時の型の安全性に着目しているから。
46
+ あくまでTypeScriptを使う人間が多いのは、前述の通り大規模開発時の型の安全性に着目しているから。
53
47
 
54
- 例えばIE11でも対応しているSPA用のJSフレームワークは多く存在しているから
48
+ 例えばIE11でも対応しているSPA用のJSフレームワークは多く存在してい
55
- 大規模なSPAを構築するためにTypeScriptを採用しているような事例もある。
49
+ 大規模なSPAを構築するためにTypeScriptを採用しているような事例もある
56
50
 
57
- jQueryと対応プラグインで事足りているなら大規模ってわけでもないし不要
51
+ jQueryと対応プラグインで事足りているなら大規模ってわけでもないし不要じゃないかな?
52
+
58
53
  でもまぁ、JSファイルを分割して作っておいて、
59
- WebpackやBrowserifyを使っ使うJSファイルだけ持ち寄って1つにまとめるってテクニックはとて便利だから、
54
+ WebpackやBrowserifyを利用し、関数等の単位で区切ったJSファイルを結合して1つにまとめるってテクニックは小規模開発で有効だから、
60
- そのついでにBabelで変換掛けたり、TypeScriptのような流行ってるAltJSを採用するのもありだと思うけどね
55
+ そのついでにBabelで変換掛けたり、TypeScriptのような流行ってるAltJSを採用するのもありだと思う