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
79
「みんな」が「効率的」に Web アプリを作成出来るようになること
開発受注先の部内向け開発ツール導入啓蒙プレゼン
SATOH Kiyoshi
March 16, 2022
Tweet
Share
More Decks by SATOH Kiyoshi
See All by SATOH Kiyoshi
生成AIの「現在地」だけでなく「速度」も見よう
stealthinu
0
1.4k
MCPとエージェント
stealthinu
1
1.5k
意外に詐欺師がいるという教訓
stealthinu
0
170
RAGの仕組みとよくある課題
stealthinu
1
3.1k
音声変換と生成AI:開発者視点からの1.5年の振り返り
stealthinu
0
2.5k
リアルタイムボイスチェンジャーMMVCとVITSの紹介
stealthinu
0
2.8k
ディープラーニングブームは続くのか
stealthinu
0
130
スパム対策お焚き上げ
stealthinu
0
110
えせソアリンを作る
stealthinu
0
150
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
2
17k
韓非子に学ぶAI活用術
tomfook
4
1.2k
Oracle Cloud Infrastructure:2026年3月度サービス・アップデート
oracle4engineer
PRO
0
190
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
240
OCI技術資料 : ロード・バランサ 概要 - FLB・NLB共通
ocise
4
27k
ハーネスエンジニアリング×AI適応開発
aictokamiya
1
740
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
1
210
20260323_データ分析基盤でGeminiを使う話
1210yuichi0
0
200
The essence of decision-making lies in primary data
kaminashi
0
180
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
150
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
3
2k
来期の評価で変えようと思っていること 〜AI時代に変わること・変わらないこと〜
estie
0
120
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
500
Utilizing Notion as your number one productivity tool
mfonobong
4
270
The Language of Interfaces
destraynor
162
26k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
500
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
88
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Rails Girls Zürich Keynote
gr2m
96
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
660
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
600
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.2k
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 での開発方法