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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Shigeki Shoji
April 22, 2025
Technology
0
200
LT Slide 2025-04-22
#kanjava
Shigeki Shoji
April 22, 2025
Tweet
Share
More Decks by Shigeki Shoji
See All by Shigeki Shoji
2025-12-19-LT
takesection
0
110
2025-12-11 nakanoshima.dev LT
takesection
0
120
アジャイルテストで高品質のスプリントレビューを
takesection
0
200
Introduction to kanjava
takesection
0
120
Instructional Designer
takesection
0
170
Zero to Hero
takesection
0
250
Fargateを使った研修の話
takesection
0
360
20240730_kanjava.pdf
takesection
0
180
JavaのJCP会員になろう
takesection
0
130
Other Decks in Technology
See All in Technology
AWS Bedrock Guardrails / 機密情報の入力・出力をブロックする — Blocking Sensitive Information Input/Output
kazuhitonakayama
2
190
大規模な組織におけるAI Agent活用の促進と課題
lycorptech_jp
PRO
5
7.6k
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
2
130
WBCの解説は生成AIにやらせよう - 生成AIで野球解説者AI Agentを実現する / Baseball Commentator AI Agent for Gemini
shinyorke
PRO
0
320
AI活用を"目的"にしたら、データの本質が見えてきた - Snowflake Intelligence実験記 / chasing-ai-finding-data
pei0804
0
870
Claude Cowork Plugins を読む - Skills駆動型業務エージェント設計の実像と構造
knishioka
0
230
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
44k
【PyCon mini Shizuoka 2026】生成AI時代に画像処理やオーディオ処理のノードエディターを作る理由
kazuhitotakahashi
0
250
社内ワークショップで終わらせない 業務改善AIエージェント開発
lycorptech_jp
PRO
1
440
Lookerの最新バージョンv26.2がやばい話
waiwai2111
1
150
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
280
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
230
Prompt Engineering for Job Search
mfonobong
0
180
A designer walks into a library…
pauljervisheath
210
24k
sira's awesome portfolio website redesign presentation
elsirapls
0
170
The agentic SEO stack - context over prompts
schlessera
0
680
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
110
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Paper Plane (Part 1)
katiecoart
PRO
0
5k
KATA
mclloyd
PRO
35
15k
Navigating Weather and Climate Data
rabernat
0
130
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 ありがとうございました