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
110
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
110
Zero to Hero
takesection
0
180
Fargateを使った研修の話
takesection
0
230
20240730_kanjava.pdf
takesection
0
140
JavaのJCP会員になろう
takesection
0
91
JAWS-UG Okayama 2024 LT
takesection
0
86
IaCツールのいろいろ
takesection
0
370
依存ライブラリはどこに?
takesection
0
270
GitHub Actions Runner Controller
takesection
0
360
Other Decks in Technology
See All in Technology
Mastraに入門してみた ~AWS CDKを添えて~
tsukuboshi
0
380
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
190
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
740
クラウド開発環境Cloud Workstationsの紹介
yunosukey
0
220
ペアーズにおける評価ドリブンな AI Agent 開発のご紹介
fukubaka0825
7
1.9k
生成AIによるCloud Native基盤構築の可能性と実践的ガードレールの敷設について
nwiizo
7
1.4k
ガバクラのAWS長期継続割引 ~次の4/1に慌てないために~
hamijay_cloud
1
580
AIにおけるソフトウェアテスト_ver1.00
fumisuke
1
330
AIエージェント開発手法と業務導入のプラクティス
ykosaka
9
2.7k
意思決定を支える検索体験を目指してやってきたこと
hinatades
PRO
0
390
日経電子版 for Android の技術的課題と取り組み(令和最新版)/android-20250423
nikkei_engineer_recruiting
1
610
C++26アップデート 2025-03
faithandbrave
0
1.2k
Featured
See All Featured
Scaling GitHub
holman
459
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
690
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Optimizing for Happiness
mojombo
378
70k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Site-Speed That Sticks
csswizardry
6
530
Practical Orchestrator
shlominoach
187
11k
The Language of Interfaces
destraynor
157
25k
Being A Developer After 40
akosma
91
590k
Side Projects
sachag
453
42k
Embracing the Ebb and Flow
colly
85
4.7k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
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 ありがとうございました
Otomatik - 172.67.23.78
CloudFlare DNS
Türk Telekom DNS
Google DNS
Open DNS
OSZAR »