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
LT Slide 2025-04-22
Search
Shigeki Shoji
April 22, 2025
Technology
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LT Slide 2025-04-22
#kanjava
Shigeki Shoji
April 22, 2025
More Decks by Shigeki Shoji
See All by Shigeki Shoji
OpenID Connectによるサービス間連携
takesection
0
170
アーティファクト管理でサプライチェーン攻撃を回避!!
takesection
0
110
2025-12-19-LT
takesection
0
150
2025-12-11 nakanoshima.dev LT
takesection
0
160
アジャイルテストで高品質のスプリントレビューを
takesection
0
220
Introduction to kanjava
takesection
0
140
Instructional Designer
takesection
0
200
Zero to Hero
takesection
0
270
Fargateを使った研修の話
takesection
0
400
Other Decks in Technology
See All in Technology
プロダクト開発から業務改善コンサルまで。事業全体へ「染み出す」ことで広がるエンジニアの可能性
ham0215
0
100
200個のGitHubリポジトリを横断調査したかった
icck
0
110
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
300
SIer20年! 培ったスキルがスタートアップで輝く時
shucho0103
0
840
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
1
120
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
460
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
130
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
4
2.2k
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
380
Chainlitで作るお手軽チャットUI
ynt0485
0
200
なぜ Platform Engineering の土台に Kubernetes を選ぶのか
r4ynode
2
590
Kubernetesにおける学習基盤とLLMOpsの概要
ry
1
250
Featured
See All Featured
Statistics for Hackers
jakevdp
799
230k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
290
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Being A Developer After 40
akosma
91
590k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
610
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Scaling GitHub
holman
464
140k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
Practical Orchestrator
shlominoach
191
11k
Transcript
再帰関数 2025年04月22日 Shigeki Shoji
庄司重樹 Instructional Designer 受賞歴 2024 Japan AWS All Certifications Engineers
2023 Japan AWS Top Engineers
このコードを見て不安になりますか? 3 def hoge: Unit = { val line =
StdIn.readLine("入力(終了したいときは exit と入力): "); if (line != "exit") { hoge; } }
スタックオーバーフローになるのでは? • コードがコンピュータの中でどのように処理されるかを認識し て、コンピュータに寄り添ったコードを書いてませんか? • コードがどういう問題を起こすかを想像して書くよりも、もっと直感 的に人間中心にしたい。もしそれが深刻な問題を起こすのであれば、 コンパイラなり処理系が警告するか、可能な限り自動的に問題が起こ らない動作になるようにしてほしい 4
Scalaなら末尾再帰が使用可能 5 import scala.annotation._; @tailrec def hoge: Unit = {
val line = StdIn.readLine("入力(終了したいときは exit と入力): "); if (line != "exit") { hoge; } } コンパイル後のコードはループに最適化され、繰り返し回数 が原因のスタックオーバーフローは発生しない
6 ありがとうございました