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
10k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Haxe最新事情 2021年1月版
terurou
January 23, 2021
More Decks by terurou
See All by terurou
帳票Vibe Coding
terurou
0
270
PDFのビジュアルリグレッションテスト
terurou
0
610
Other Decks in Technology
See All in Technology
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
少人数チームで実現する、大規模AWSサーバーレス基盤における"揺らがない"信頼性運用
maimyyym
1
110
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
案件に一番詳しいAIを Amazon Bedrock AgentCore で作る ― 知見が知見を生むチームへ / Compounding Knowledge with AgentCore
yusukeshimizu
1
140
Bits Agent Builder の⼊⾨と活⽤事例
nulabinc
PRO
0
180
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
330
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.6k
My broken English still works: speaking at global OSS events
naruoga
0
110
【GCC2026】大規模言語モデルを活用した内製検索サービスの社内展開や業務活用
bandainamcostudios
PRO
0
200
事業価値と Engineering 2026年度版
recruitengineers
PRO
51
25k
Sets in Go
ramalho
1
990
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
5.9k
Featured
See All Featured
Visualization
eitanlees
152
17k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
290
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
540
BBQ
matthewcrist
89
10k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.4k
A Tale of Four Properties
chriscoyier
163
24k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
Abbi's Birthday
coloredviolet
3
9.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
210
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Rails Girls Zürich Keynote
gr2m
96
14k
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