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
120
プログラムのスタート地点はどこなのか?
すごい広島 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
プロジェクトマネージャーがGitHub Copilotのエージェンモードを使い始めました
satoshi256kbyte
1
110
そもそもAWS Configの設定変えられたらどうするの?Amazon EventBridgeでマネコンの操作を監視する
satoshi256kbyte
1
100
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
1
1.5k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
1
270
【PHP】破壊的バージョンアップと戦った話〜決断と説得
satoshi256kbyte
0
240
今更聞けないセキュリティ用語の基礎知識 2025新春
satoshi256kbyte
0
170
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
310
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
580
おもにクラウドの話してます#4 OPスライド
satoshi256kbyte
0
71
Other Decks in Programming
See All in Programming
カクヨムAndroidアプリのリブート
numeroanddev
0
410
人には人それぞれのサービス層がある
shimabox
3
660
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
lnit
1
160
Perlで痩せる
yuukis
1
680
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
110
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
370
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
120
Java on Azure で LangGraph!
kohei3110
0
110
FastMCPでMCPサーバー/クライアントを構築してみる
ttnyt8701
2
130
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
10
1.8k
Datadog RUM 本番導入までの道
shinter61
1
240
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
750
Featured
See All Featured
For a Future-Friendly Web
brad_frost
179
9.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Designing for Performance
lara
609
69k
Facilitating Awesome Meetings
lara
54
6.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
How STYLIGHT went responsive
nonsquared
100
5.6k
Scaling GitHub
holman
459
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Building Adaptive Systems
keathley
43
2.6k
Designing Experiences People Love
moore
142
24k
Code Review Best Practice
trishagee
68
18k
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することを忘れ ない •できる限りプロジェクトの初期に絡む
ありがとうございました