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
プログラムのスタート地点はどこなのか?
Search
Satoshi Kaneyasu
May 29, 2024
Programming
1
130
プログラムのスタート地点はどこなのか?
すごい広島 IT初心者の会[86]
https://pycon-hiroshima.connpass.com/event/318329/
でのLT資料です。
Satoshi Kaneyasu
May 29, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
お客様とSIerではじめたスクラム開発(で得た学び)
satoshi256kbyte
0
75
From Pipenv to UV: Migrating to a Monorepoto Tame a Complex Repository
satoshi256kbyte
0
12
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
1.1k
ディレクトリ構成と設定ファイルから考えるSIerのVibe Coding
satoshi256kbyte
0
38
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
350
生産性の壁を越えろ! 何がなんでも計測する
satoshi256kbyte
1
36
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
280
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
190
AWS Summit Japan 2024と2025の比較
satoshi256kbyte
0
21
Other Decks in Programming
See All in Programming
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
430
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
170
Flutterで分数(Fraction)を表示する方法
koukimiura
0
130
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
110
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
11
6.7k
XP, Testing and ninja testing ZOZ5
m_seki
3
670
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
410
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
250
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
Claude Agent SDK を使ってみよう
hyshu
0
600
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.7k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Bash Introduction
62gerente
615
210k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Designing Experiences People Love
moore
142
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
115
20k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
870
A designer walks into a library…
pauljervisheath
209
24k
Visualization
eitanlees
149
16k
Transcript
プログラムのスタート地点は どこなのか︖ 2024.05.29 SATOSHI KANEYASU
⾃⼰紹介 ⽒名︓兼安 聡 所属︓株式会社サーバーワークス 在住︓広島(フルリモート) 担当︓DevOps、プロジェクトマネージャー 資格︓ 最近よく触るDB: Amazon DynamoDB、Amazon
Timestream、Amazon Neptune など
•⼤きなプログラムの修正はできるが、 ⼩さなプログラムをゼロから作ることはできない •エンジニアの皆様、そんなことはないでしょうか︖ •検証⽤プログラムをサッと作ってくださいと⾔われた らできますか︖ •これができるかできないかは、 エンジニアの成⻑の分岐点かもしれません はじめに
•ゼロから作れるようにはどうしたらよいか︖ •第⼀歩は 「プログラムのスタート地点はどこなのか︖」 を理解することでは︖ はじめに
•⼀定のルールがあるパターン •単純に上から流れていくパターン コンソールアプリ
•VB.Net、Javaでシンプルなコンソールアプリを書い た場合がこれにあたります。 •VB.Netでシンプルなコンソールアプリを作る場合、 Sub Mainが起点になります。 ⼀定のルールがあるパターン 厳密には.Net系はEXEを作る設定で、 起動時の関数は変えれます。 (これ変える⼈⾒たことないけど)
•起点はmain固定というわけではありません。 上から流れてmainを呼んでいるだけです。 単純に上から流れていくパターン def main(): print("Hello, World!") if __name__ ==
"__main__": main() hello.py python hello.py
•ルートページ •ルーティング Webサイトの場合
•ディレクトリ(フォルダー)にアクセスされた時、最 初に表⽰されるデフォルトのファイル •http://example.com なら、 http://example.com/index.html のこと •⼤体Webサーバーの設定依存 ルートページ
ルートページの設定 Apache <IfModule dir_module> DirectoryIndex index.html </IfModule> •複数指定したら左側が優先 <IfModule dir_module>
DirectoryIndex index.php index.html </IfModule>
•クライアントからのリクエスト(通常はURL)を 受け取り、そのリクエストに応じてサーバー上で適切 なページを返す仕組み •WordpressならどのURLを呼び出しても⼀旦⼀箇所 に集まる •その後、リクエストされたURLに応じて適切なページ を起動 ルーティング
•どのURLだとしても全てのリクエストを⼀旦 /index.phpに集約 •/index.php以降でURLに応じたページを起動 ルーティングの設定 Apacheの.htaccess RewriteEngine On RewriteBase / RewriteRule
^index¥.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
AWS Lambda
どうやってこういう知識を得るのか︖ •とりあえずやってみるを忘れない •写経で終わらない •新しいものに⾶びついてHello worldすることを忘れ ない •できる限りプロジェクトの初期に絡む
ありがとうございました