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
0
180
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
81
2025-12-11 nakanoshima.dev LT
takesection
0
89
アジャイルテストで高品質のスプリントレビューを
takesection
0
190
Introduction to kanjava
takesection
0
110
Instructional Designer
takesection
0
150
Zero to Hero
takesection
0
240
Fargateを使った研修の話
takesection
0
340
20240730_kanjava.pdf
takesection
0
160
JavaのJCP会員になろう
takesection
0
110
Other Decks in Technology
See All in Technology
"人"が頑張るAI駆動開発
yokomachi
1
620
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
270
Identity Management for Agentic AI 解説
fujie
0
490
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
0
290
AIエージェントを5分で一気におさらい!AIエージェント「構築」元年に備えよう
yakumo
1
100
オープンソースKeycloakのMCP認可サーバの仕様の対応状況 / 20251219 OpenID BizDay #18 LT Keycloak
oidfj
0
190
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
510
20251222_サンフランシスコサバイバル術
ponponmikankan
2
140
障害対応訓練、その前に
coconala_engineer
0
200
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
270
AI との良い付き合い方を僕らは誰も知らない
asei
0
270
業務の煩悩を祓うAI活用術108選 / AI 108 Usages
smartbank
9
14k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
Six Lessons from altMBA
skipperchong
29
4.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
0
97
Embracing the Ebb and Flow
colly
88
4.9k
The Cult of Friendly URLs
andyhume
79
6.7k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
32
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.3k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
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 ありがとうございました