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
「みんな」が「効率的」に Web アプリを作成出来るようになること
Search
SATOH Kiyoshi
March 16, 2022
Technology
0
75
「みんな」が「効率的」に Web アプリを作成出来るようになること
開発受注先の部内向け開発ツール導入啓蒙プレゼン
SATOH Kiyoshi
March 16, 2022
Tweet
Share
More Decks by SATOH Kiyoshi
See All by SATOH Kiyoshi
MCPとエージェント
stealthinu
1
200
意外に詐欺師がいるという教訓
stealthinu
0
130
RAGの仕組みとよくある課題
stealthinu
1
1k
音声変換と生成AI:開発者視点からの1.5年の振り返り
stealthinu
0
1.6k
リアルタイムボイスチェンジャーMMVCとVITSの紹介
stealthinu
0
2.6k
ディープラーニングブームは続くのか
stealthinu
0
110
スパム対策お焚き上げ
stealthinu
0
99
えせソアリンを作る
stealthinu
0
120
milter-managerが便利な話
stealthinu
0
180
Other Decks in Technology
See All in Technology
作曲家がボカロを使うようにPdMはAIを使え
itotaxi
0
390
WordPressから ヘッドレスCMSへ! Storyblokへの移行プロセス
nyata
0
330
mrubyと micro-ROSが繋ぐロボットの世界
kishima
2
380
AIとともに進化するエンジニアリング / Engineering-Evolving-with-AI_final.pdf
lycorptech_jp
PRO
0
140
OPENLOGI Company Profile
hr01
0
67k
整頓のジレンマとの戦い〜Tidy First?で振り返る事業とキャリアの歩み〜/Fighting the tidiness dilemma〜Business and Career Milestones Reflected on in Tidy First?〜
bitkey
0
220
自律的なスケーリング手法FASTにおけるVPoEとしてのアカウンタビリティ / dev-productivity-con-2025
yoshikiiida
0
320
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
130
AWS Organizations 新機能!マルチパーティ承認の紹介
yhana
1
220
2025-06-26 GitHub CopilotとAI駆動開発:実践と導入のリアル
fl_kawachi
1
240
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.3k
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
300
Featured
See All Featured
BBQ
matthewcrist
89
9.7k
Six Lessons from altMBA
skipperchong
28
3.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Building Adaptive Systems
keathley
43
2.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Docker and Python
trallard
44
3.5k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Into the Great Unknown - MozCon
thekraken
39
1.9k
The Invisible Side of Design
smashingmag
300
51k
Transcript
目的 「みんな」が「効率的」に Web アプリを作成出来るようになること
今までは… • telnet でテストサーバに入って vi で直接ソース書いて… • PC のエディタで書いたのを FFFTP
で アップロードして… • 修正前のファイルをファイル名に 日付追加してコピーしといて… • デバッグのために print 文埋め込んで 値表示して…
方法 • 現代的なツールや開発手法を導入する • 標準ツールを策定して開発方法を揃える → 自分の書いたソースを 「将来の誰か」に読みやすくするため
「みんな」の対象範囲 • 「プログラマー」 だけじゃなくて • 「デザイナー」 にも 8 割がたは「使える」ツール
4 つの柱 • バージョン管理システム (git) • フレームワーク (CakePHP) • テスト
(PHPUnit/Selenium) • IDE とデバッガー (Eclipse)
バージョン管理システム • ソース内やファイルでバックアップを 残さなくて良い • やったことの「歴史」を残せる • チームでの並行開発が出来る • 修正を前に戻せる
git • 分散バージョン管理システム • サーバと PC とに「分散」している • 軽い・構造がシンプル •
一人で使っても十分嬉しい • github コード共有プラットフォーム • GitExtensions Windows の git GUI
フレームワーク • フレームワークにすると良いこと – 手早く書ける – 基本構造がみな一緒になる → 他人のソースをすぐ読める •
フレームワークの悪いとこ – フレームワークの「作法」を学ぶコスト • なぜ PHP にしたのか – 言語の評判はあまり良くない – でも PHP で作られている CMS は多い Wordpress / NetCommons など
CakePHP(Web アプリフレームワーク ) • Ruby on Rails の PHP 版という感じ
• 日本語の情報が一番多そうだった • MVC • 設定より規約 • 名前重要 • OR マッパー
Twig( テンプレートエンジン ) • 可読性が高い <?php echo $foo->bar['id'];?> → {{foo.bar.id}}
で OK • ループや if も簡潔に書ける • フィルタ機能 {{foo|e}} で HTML エスケープなど
Bootstrap(CSS フレームワーク ) • 簡単 • デザイン性が高い • HTML5 •
ポータブル(スマホ対応など)
テスト • なぜテストがあるとうれしいか – 将来の変更に対して足がかりとなる – ある意味「仕様」をコードにしたもの – 動作チェックも容易になる •
ユニットテスト (PHPUnit) • UI テスト (Selenium)
IDE とデバッガー • IDE で嬉しいこと – リアルタイムの文法チェック – オートコンプリート –
デバッガー • デバッガーを使おう – その場で値の確認 – ステップ実行 – Web アプリでも出来る
xampp • Windows 上の LAMP キット • 解凍するだけでネイティブで動く • 自分だけが気兼ねなく使える環境
• 書いて即動作テスト出来る • Eclipse からデバッガーが利用出来る
Eclipse • Java や PHP 等の IDE • デバッガーを使うためだけでも
今後の予定 • それぞれのツールのインストールと設定 – Cygwin – GitExtensions – Pleiades( 日本語化
xampp/Eclipse) – CakePHP • GitExtensions の使い方 • Eclipse とデバッガーの使い方 • CakePHP での開発方法