rabbit-slide-Piro-presentation-vanilla-js-library-topics 2024.5.24.1 → 2024.5.24.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0b5c119e0a10d2980b7c91f0012bcd49ed979006dc941a7583c4078ca895f08
4
- data.tar.gz: e1e4cf901a2db248d36a5acfecd0ea062ed9f17fbe0e7cb9c519f58b435fb0d9
3
+ metadata.gz: 51b585b3fd563baa1055cac3b479eefb36190e073abe6a674f1753242eccaa0b
4
+ data.tar.gz: 78e829f2e038699eeb9156bb93fbc442e957e36d44dca2fe2d701809b29f14d6
5
5
  SHA512:
6
- metadata.gz: 751e1e64593208db03f9a7c1e7bbac7ed5a0cc27aa4caf3cf833eba7a3465d761918c072dde1cc0615bc23d0a1ff8f862c8e8b23f8f8045e3ae0a79701378035
7
- data.tar.gz: 8ef6686d0210f4fe5c18e977df1624e1d714ff5319697506024645432211eb0bb0fe096d67f809fe31760ea9b5046f9b38c403e528acba22a86d30800f1170a3
6
+ metadata.gz: fea62aa1aa7a520377841e3cc1127f820d70303a53f4e92f5e87ce4863fab6c33b48d3a11f171f70ca9a4faf95a214d0cb3a2f97ad1e3b5c2369f5ad7f5d13d1
7
+ data.tar.gz: fe15b72e9f20ce0d4872b323abe2f64e8ab1c7b49a98c89ca534636453c9d39e008ecf24d890f69c813a653ffefb7fb6daf616d1507ecb8fc58cc5a82bf00bf0
data/config.yaml CHANGED
@@ -6,7 +6,7 @@ tags:
6
6
  - oss_gate
7
7
  - workshop
8
8
  presentation_date: 2024-05-24
9
- version: 2024.5.24.1
9
+ version: 2024.5.24.2
10
10
  licenses:
11
11
  - CC-BY-SA-4.0
12
12
  slideshare_id:
Binary file
data/scenario.rab CHANGED
@@ -49,33 +49,47 @@
49
49
  * (('wait'))下手にライブラリーを使うと\n
50
50
  名前空間汚染でFirefoxが壊れる
51
51
 
52
- = なぜライブラリー自作?
53
-
54
- * (('wait'))ニッチすぎて既存の物が無い
55
- * Firefoxの内部実装に強く依存
56
- * 設定読み書き, UIの多言語対応, etc.
57
- * (('wait'))既製UIライブラリーは\n
58
- 自我が強すぎる
59
- * メニューUIなど
60
- * FirefoxのUI=ネイティブUIに\n
61
- 馴染むUIウィジェットが欲しい
62
-
63
- = ライブラリーができるまでの流れ
64
-
65
- * (('wait'))複数アドオンで共通して\n
66
- 実現したい機能が出てくる
67
- * (('wait'))→関数やクラスを\n
68
-  単体のファイルに切り出す
69
- * (('wait'))→README, LICENSEを付けて\n
70
-  GitHubで公開
71
-
72
- = できるもの
73
-
74
- * (('wait'))数十~数百行程度
75
- * (('wait'))他のライブラリーに非依存
52
+ = なぜライブラリー自作?(1)
53
+
54
+ * (('wait'))値の型を自動判別して\n
55
+ nsIPrefBranchの適切な\n
56
+ メソッドを呼んで……
57
+ * (('wait'))nsITimerのインスタンス作って\n
58
+ nsIObserverとして自身を登録し\n
59
+ 指定秒数でコールバックを……
60
+
61
+ (('wait'))ニッチすぎて既存の物が無い
62
+
63
+ = なぜ自作?(2-1)
64
+
65
+ 例:メニューUI
66
+
67
+ * (('wait'))キーボードで操作できない(jQueryUI)
68
+ * (('wait'))キーボード操作の動作が怪しい(React MUI)
69
+ # image
70
+ # src = ./images/react-mui.png
71
+ # relative_width = 50
72
+
73
+ = なぜ自作?(2-2)
74
+
75
+ * 欲しいのはただ「OSのUIと同じ振る舞いの階層メニューUI」
76
+ * キーボード操作、階層表示、\n
77
+ アクセスキー……
78
+ * XULでは<menu>と書くだけで\n
79
+ できていたのに……
80
+ * (('wait'))Mozillaの頑張りで目が肥えて\n
81
+ 市井のライブラリーでは\n
82
+ 満足できない体に
83
+
84
+ = それでライブラリー自作
85
+
86
+ * (('wait'))わりと小規模
87
+ * webextensions-lib-configs:619行
88
+ * webextensions-lib-menu-ui:994行
89
+ * (('wait'))実装は1ファイル完結が多い
90
+ * 他のライブラリーに非依存
76
91
  * Firefox専用だからpolyfillも不要
77
- * (('wait'))パッケージマネージャーの\n
78
- 必要性が薄い
92
+ * (('wait'))パッケージマネージャーいる?
79
93
 
80
94
  = ていうか……
81
95
 
@@ -83,7 +97,7 @@
83
97
  # src = ./images/lifetime.png
84
98
  # relative_width = 90
85
99
 
86
- (('wait'))早死にされそうで不安
100
+ (('wait'))採用しても早死にされそうで不安
87
101
 
88
102
  == プロパティー
89
103
 
@@ -117,7 +131,7 @@
117
131
  echo 'export default Configs;' >> extlib/Configs.js
118
132
  ...
119
133
 
120
- = どうする\nのが正解\nなのか?
134
+ = どうする\nのが正解\nなんですか?
121
135
 
122
136
 
123
137
  = ちなみに、今の\nFirefoxアドオン開発
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rabbit-slide-Piro-presentation-vanilla-js-library-topics
3
3
  version: !ruby/object:Gem::Version
4
- version: 2024.5.24.1
4
+ version: 2024.5.24.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - YUKI Hiroshi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-20 00:00:00.000000000 Z
11
+ date: 2024-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rabbit
@@ -51,6 +51,7 @@ files:
51
51
  - Rakefile
52
52
  - config.yaml
53
53
  - images/lifetime.png
54
+ - images/react-mui.png
54
55
  - images/systemadmingirl.jpg
55
56
  - images/tst.png
56
57
  - pdf/presentation-vanilla-js-library-topics-scenario.pdf