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
Haxe最新事情 2021年1月版
Search
terurou
January 23, 2021
Technology
9.6k
0
Share
Haxe最新事情 2021年1月版
terurou
January 23, 2021
More Decks by terurou
See All by terurou
帳票Vibe Coding
terurou
0
250
PDFのビジュアルリグレッションテスト
terurou
0
570
Other Decks in Technology
See All in Technology
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
150
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
LLMに何を任せ、何を任せないか
cap120
11
6.7k
Blue/Green Deployment を用いた PostgreSQL のメジャーバージョンアップ
kkato1
0
170
Microsoft Fabricで考える非構造データのAI活用
ryomaru0825
0
540
Datadog で実現するセキュリティ対策 ~オブザーバビリティとセキュリティを 一緒にやると何がいいのか~
a2ush
0
180
40代からのアウトプット ― 経験は価値ある学びに変わる / 20260404 Naoki Takahashi
shift_evolve
PRO
3
460
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
11k
OCI技術資料 : 証明書サービス概要
ocise
1
7.2k
Zephyr(RTOS)でARMとRISC-Vのコア間通信をしてみた
iotengineer22
0
110
GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
flatt_security
11
6.9k
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
3
2.1k
Featured
See All Featured
How to make the Groovebox
asonas
2
2.1k
My Coaching Mixtape
mlcsv
0
90
SEO for Brand Visibility & Recognition
aleyda
0
4.4k
Deep Space Network (abreviated)
tonyrice
0
97
Balancing Empowerment & Direction
lara
5
1k
Scaling GitHub
holman
464
140k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
190
Making Projects Easy
brettharned
120
6.6k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Claude Code のすすめ
schroneko
67
220k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
Haxe最新事情 2021年1月版 terurou 2021-01-23
terurou • デンキヤギ代表取締役 • Haxe Foundationの方から来ました • hxnodejsのコミッターだけど、去年は全然動けなかった… • NGKの実行委員を12年ぐらいやってます
1
Haxeとは • 対応ターゲットがやたらと豊富 • JavaScript, Java, JVM, C++, C#, Flash,
PHP, Python, Lua, Neko, HashLink • 比較的モダンな構文(Haxe4~) • 高度な型システムとマクロ • コンパイルが高速 2
3 今日は言語自体の紹介よりも、 Haxeの利用状況をメインで話します
Haxeの主な採用事例 • ワールドフリッパー [Cygames/Citail] • ポケットモンスター ソード・シールド [任天堂] • Haxe/Luaなので、スクリプトで使われていると推測
• Dead Cells [Motion-Twin] • DAZN ←たぶん今は使っていない… 4 ゲームが多い!
デンキヤギとHaxe/JS terurou管理プロジェクトは、だいたいHaxe/JS • yagisan-reports(自社開発の帳票APIサービス) • React • Cloudflare Workers •
Azure Functions + Cosmos DB • Kintoneアプリ開発(業務システムコンサルティング) 5
[PR] yagisan-reports 汎用帳票エンジン(要はPDF生成)+永続化+郵送を WebAPIサービス化したもの • 既存の帳票製品は価格が高すぎる or 安い製品はテンプレート機能が貧弱すぎる • 高速/無制限プレビュー(ブラウザ上でPDFを生成して解決)
• PDFを生成できるだけでは実務では足りないよね • 例) 請求書を発行したから、同一データを保管しておきたい 6 クローズドユーザー募集中
[求人] めんどくさいWeb開発をやってくれる人 • ブラウザ上で動くアプリケーション • IDEと帳票エンジン • 2D/3Dグラフィックをゴリゴリ操作 • WebRTC,
WebAssembly • Azure Functions, Cosmos DB • Haxeだけでなくて、ScalaとかF#とかもある • UI設計とか業務分析とかもある 7 短時間正社員、 フリーランス、アルバイト 応相談
8 スポンサー枠宣伝はここまで
Haxeの最新情報をどう追えばいいか 9 Haxe Roundupを見ましょう!
Haxe Roundup • 毎週、Haxeの開発状況や周辺情報をまとめてくれる • Haxe公式コミュニティが運営 • https://haxe.io/ 10
Awesome Haxe Game Development • Haxe製のゲームエンジンと周辺ライブラリについて まとめられたページ(GitHubリポジトリ) • https://github.com/Dvergar/awesome-haxe- gamedev
11
12 必要情報は伝えたので、 あとは時間を気にせずに話していきます
13 Q. Haxeってゲーム以外では使われてないの?
Haxeってゲーム以外では使われてないの? • ゲームサーバーや周辺ツールは結構あるはず… • ゲームクライアントをHaxeで書いたら、当然、他の部分も Haxeで書きたくなるよね(連携部分のみの使用も含む) • Webフロントエンドでの採用は減少傾向 • Massive
Interactive社が買収された影響が…(2018年) • haxe-reactやhaxe-modulerなどの開発母体だった • DAZNやBBCにHaxeを突っ込んだのもこの会社 • Haxeだったところも刷新時にTypeScriptになる傾向 14
Haxeサポートターゲットの現況(私見) • JavaScript, C++, PHP, JVM, Lua, HashLink あたりはユーザー側からのIssueやPRも多く活発 •
Flash, Java, Nekoも良い意味で枯れて安定 • C#, Pythonは正直微妙な状況 • 実際の利用者がかなり少なそう… 15
16 Q. Haxe/JSでWebフロントエンドってどうなの?
Haxe/JSでWebフロントエンドってどうなの? • TypeScriptと比べると正直楽ではないがメリットあり • 多数派 vs まともな型システム • 高度な型システム、マクロ、コンパイル速度は捨てがたい •
人口が少ないので、ライブラリの型定義が無いことは多い • デンキヤギで使うものは、どんどん外部公開/PR出してます • Scala.jsを採用するのと同じような感じ 17
dts2hx • TypeScriptの型定義(.d.ts)をHaxe用に変換 • Haxe準公式ツール(コミッターの人が開発中) • まだbeta未満だが、完成すれば大幅に状況が改善 • 開発はもう1年ぐらいかかりそう? •
https://github.com/haxiomic/dts2hx 18
ES Modulesへの対応 • 現時点では未対応だが、一部は既に開発中 • https://github.com/HaxeFoundation/haxe/issues/8033 • webpackとの連携にはhaxe-modulerを使う • loaderもある
: webpack-haxe-loader • ES Modulesになる訳ではないが、HMRは可能になる 19
20 Q. Haxe/C#でUnityってアリ?
Haxe/C#でUnityってアリ? • たぶんないので、素直にC#で書いた方が良さそう • 過去に挑戦者を見かけているが、みんな長続きはしてない… • OpenFLとかHeaps.ioとか、Haxeネイティブの ゲームエンジンを使った方が幸せになりそう 21
22 Q. 最近のHaxeってどうなってるの?(言語機能)
Haxe 4以降で入った主な機能 • 比較的いまどきの構文 • アロー関数、immutable変数(final)など • 代数的データ型(GADT)とパターンマッチ • JVMターゲット(まだ枯れてない)
• null-safety(まだ実験的機能) • nullの混入をコンパイル時チェック。KotlinやSwiftにもある。 • 最適化 : ループ展開、末尾最適化、DCE 23
今後入る見込みのある主な機能 • Module-level fields(Haxe 4.2) • classを書かずに、いきなり関数や変数が書ける • static filedのシンタックスシュガーとして実装
• null-safety、JVMターゲットの強化(随時更新) • 新しい async I/O API (Haxe 4.3?) • ES Modules対応(未定、一部は開発中) • Coroutines(未定) 24 Haxe 4.2は そろそろ出そう
まとめ • Haxe最新情報はHaxe Roundup • Haxeはゲームでの採用が多い • Webフロントエンドは若干弱いが、改善の見込みあり • デンキヤギも積極的に投資していく予定
• Haxe4.2が近いうちに出るよ • Module-level fieldsの導入が特にセールスポイント 25