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
210
0
Share
LT Slide 2025-04-22
#kanjava
Shigeki Shoji
April 22, 2025
More Decks by Shigeki Shoji
See All by Shigeki Shoji
2025-12-19-LT
takesection
0
130
2025-12-11 nakanoshima.dev LT
takesection
0
140
アジャイルテストで高品質のスプリントレビューを
takesection
0
210
Introduction to kanjava
takesection
0
130
Instructional Designer
takesection
0
180
Zero to Hero
takesection
0
260
Fargateを使った研修の話
takesection
0
380
20240730_kanjava.pdf
takesection
0
190
JavaのJCP会員になろう
takesection
0
130
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
23k
EarthCopilotに学ぶマルチエージェントオーケストレーション
nakasho
0
240
2026年に相応しい 最先端プラグインホストの設計<del>と実装</del>
atsushieno
0
130
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
390
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
240
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.2k
ARIA Notifyについて
ryokatsuse
1
100
Snowflake Intelligence導入で 分かった活用のコツ
wonohe
0
110
DevOpsDays Tokyo 2026 見えない開発現場を、見える投資に変える
rojoudotcom
3
200
非エンジニア職からZOZOへ 〜登壇がキャリアに与えた影響〜
penpeen
0
490
LLM時代の検索アーキテクチャと技術的意思決定
shibuiwilliam
2
680
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
300
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Mind Mapping
helmedeiros
PRO
1
150
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.9k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
93
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
160
Tell your own story through comics
letsgokoyo
1
890
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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 ありがとうございました