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
76
LT Slide 2025-04-22
#kanjava
Shigeki Shoji
April 22, 2025
Tweet
Share
More Decks by Shigeki Shoji
See All by Shigeki Shoji
Instructional Designer
takesection
0
100
Zero to Hero
takesection
0
180
Fargateを使った研修の話
takesection
0
230
20240730_kanjava.pdf
takesection
0
130
JavaのJCP会員になろう
takesection
0
90
JAWS-UG Okayama 2024 LT
takesection
0
82
IaCツールのいろいろ
takesection
0
370
依存ライブラリはどこに?
takesection
0
270
GitHub Actions Runner Controller
takesection
0
350
Other Decks in Technology
See All in Technology
AWSLambdaMCPServerを使ってツールとMCPサーバを分離する
tkikuchi
1
3k
AIコーディングの最前線 〜活用のコツと課題〜
pharma_x_tech
2
1k
20250411_HCCJP_AdaptiveCloudUpdates.pdf
sdosamut
1
110
Amazon CloudWatch を使って NW 監視を行うには
o11yfes2023
0
150
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM, Prompt Engineering and Building Tutors
ks91
PRO
1
250
DETR手法の変遷と最新動向(CVPR2025)
tenten0727
2
1.3k
SnowflakeとDatabricks両方でRAGを構築してみた
kameitomohiro
1
280
[2025年4月版] Databricks Academy ラボ環境 利用開始手順 / Databricks Academy Labs Onboarding
databricksjapan
0
130
【2025年度新卒技術研修】100分で学ぶ サイバーエージェントのデータベース 活用事例とMySQLパフォーマンス調査
cyberagentdevelopers
PRO
5
7.3k
DuckDB MCPサーバーを使ってAWSコストを分析させてみた / AWS cost analysis with DuckDB MCP server
masahirokawahara
0
1.2k
アセスメントで紐解く、10Xのデータマネジメントの軌跡
10xinc
1
430
Spring Bootで実装とインフラをこれでもかと分離するための試み
shintanimoto
7
810
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
54
5.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
Java REST API Framework Comparison - PWX 2021
mraible
30
8.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.6k
Side Projects
sachag
452
42k
Done Done
chrislema
183
16k
Optimizing for Happiness
mojombo
377
70k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
How STYLIGHT went responsive
nonsquared
99
5.5k
Visualization
eitanlees
146
16k
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 ありがとうございました