$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
はてなと技術研修
Search
shibayu36
December 06, 2015
Programming
1
6.5k
はてなと技術研修
shibayu36
December 06, 2015
Tweet
Share
More Decks by shibayu36
See All by shibayu36
EMこそClaude Codeでコード調査しよう
shibayu36
0
1k
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
5.6k
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
940
今の生産性改善活動で大切にしている考え方
shibayu36
8
8.7k
エンジニアメンター制度の効果的な運用を目指して/improve-mentor-system
shibayu36
27
10k
グレードイメージ具体化のため昇格理由を公開する
shibayu36
8
5.9k
新機能作成時に開発ブランチに細かくmergeしていく戦略/merge-strategy-for-new-feature
shibayu36
6
18k
一から始めるJavaScriptユニットテスト/js-unit-test-from-scratch
shibayu36
8
33k
技術ブログを書くことについて/writing-tech-blog
shibayu36
17
27k
Other Decks in Programming
See All in Programming
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
3.8k
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
5
710
Developing static sites with Ruby
okuramasafumi
0
320
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
AIコーディングエージェント(NotebookLM)
kondai24
0
220
チームをチームにするEM
hitode909
0
370
GoLab2025 Recap
kuro_kurorrr
0
780
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
190
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
2
570
Deno Tunnel を使ってみた話
kamekyame
0
230
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
110
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
150
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
310
A Tale of Four Properties
chriscoyier
162
23k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
100
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Google's AI Overviews - The New Search
badams
0
870
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
69
Rails Girls Zürich Keynote
gr2m
95
14k
It's Worth the Effort
3n
187
29k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Building the Perfect Custom Keyboard
takai
1
660
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
97
Transcript
ͯͳͱٕज़ݚम 2015/12/06 ࢣఋొஃ @shiba_yu36
ࢣঊ : @shiba_yu36 ఋࢠ : @amagitakayosi
ࣗݾհ • @shiba_yu36 • 4ͯͳΤϯδχΞ
ຊ͢͜ͱ • ͯͳͰͷݚमͷߟ͑ํ • ݚम༰ͷհ • ͯͳڭՊॻ • ۀΛ௨ͯ͡ •
@amagitakayosi͔Β࣮ࡍʹݚमΛड͚ͯΈͯ
ͯͳͷݚमͷߟ͑ํ
ΤϯδχΞͷ ֮͑Δ͜ͱແݶ
ΤϯδχΞͷ ֮͑Δ͜ͱແݶ ࣮ફͰ ʹ͚Δ͔͠ͳ͍
ͯͳͷݚमͷߟ͑ํ • ࣮ફͰࣗΒߟ͑ͯखΛಈ͔͢͜ͱ ͕Ұ൪ͷֶश • രͰ࠷ݶͷࣝΛʹ͚ͭɺ ͙͢ʹνʔϜʹଐ
രͰ࣮ફʁ
രͰ࣮ફʁ 2िؒޙʹνʔϜଐ
1. ͯͳڭՊॻͰ1िؒͷݚम 2. ΦϦδφϧαʔϏεΛ1िؒͰ 3. ࣮ࡍʹνʔϜଐ ݚमͷྲྀΕ
None
1.ͯͳڭՊॻͰͷݚम https://github.com/hatena/Hatena-Textbook
ͯͳڭՊॻͱ 1िؒͰ࠷ݶͷWebͷٕज़ ΛֶͿͨΊͷڭՊॻ
ͯͳڭՊॻͱ 1िؒͰ࠷ݶͷWebͷٕज़ ΛֶͿͨΊͷڭՊॻ ग़དྷΔͷ͔ʁ
WebͰ࠷ݶඞཁͳٕज़ ݴޠɺΦϒδΣΫτࢦɺςετɺDBɺ SQLɺURIɺHTTPɺWebαʔόɺHTMLɺ JSɺηΩϡϦςΟɺetc…
WebͰ࠷ݶඞཁͳٕज़ ݴޠɺΦϒδΣΫτࢦɺςετɺDBɺ SQLɺURIɺHTTPɺWebαʔόɺHTMLɺ JSɺηΩϡϦςΟɺetc… ଟ͗͢Δʂʂ
՝Ͱஈ֊తʹ ֓೦Λ֮͑ΒΕΔ designed by Freepik
ஈ֊తʹֶͿ ϒϩάαʔϏεΛஈ֊తʹ࡞Γ ্͛ͯɺࣝΛੵΈ্͍͛ͯ͘
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) 1. 2. 3. 4.
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ΦϒδΣΫτͷ͚ؔͩͰϒϩά DBͳͲͰӬଓԽ͠ͳ͍
# هͷ࡞ my $diary = Diary->new('Johnͷه'); # هࣄͷ࡞ my $entry1
= $diary->add_entry( title => 'هͩΑ', body => '͜Ε͕هͷຊจͩΑ', ); my $entry2 = $diary->add_entry( title => '͜ΕهͩΑ', body => 'ͬͺΓهͷຊจͩΑ', ); # ग़ྗ $diary->print;
$ object_diary.pl # Johnͷه # [1] هͩΑ : ͜Ε͕هͷຊจͩΑ #
[2] ͜ΕهͩΑ : ͬͺΓهͷຊจͩΑ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ϓϩάϥϛϯάͷ֓೦͚ͩΛֶͿ • ݴޠͷ͍ํ • ઃܭ
• ΦϒδΣΫτࢦ • ςετ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ΦϒδΣΫτͷ͚ؔͩͷϒϩάΛ σʔλϕʔεͰӬଓԽɻೖग़ྗCLIɻ
$ db_diary.pl add_entry λΠτϧ1 ຊจ1 $ db_diary.pl add_entry λΠτϧ2 ຊจ2
$ db_diary.pl list_entry # [1] λΠτϧ1 : ຊจ1 # [2] λΠτϧ2 : ຊจ2
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • MySQL • SQL •
ݴޠ͔ΒDBΞΫηε • DBηΩϡϦςΟ • CLI DBͷ֓೦͚ͩΛֶΔ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) DBͰӬଓ͞ΕͨϒϩάΛ Web্Ͱॻ͚ΔΑ͏ʹ͢Δ
None
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • HTTPɺURLઃܭɺWebαʔό • WebαʔϏεͷ࡞Γํ •
WebͰͷηΩϡϦςΟ Webͷ֓೦͚ͩΛֶΔ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) WebͰॻ͚ΔϒϩάΛ JSͰಈ͔͍ͯ͘͢͢͠Δ
• JSON APIΛͬͨΦʔτϖʔδϟ • ͦͷฤू
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • JSͷجૅɺDOMͷجૅ • Πϕϯτۦಈ •
JSON APIͰͷ࿈ܞ ϑϩϯτΤϯυͷ֓೦͚ͩΛֶΔ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) εϚϗΤϯδχΞ͚ʹ͞Βʹ Swiftͷ՝ʂʂ
ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) 1. 2. 3. 4.
ϨΠϠʔ͔ΒͷੵΈॏͶͰ ஈ֊తʹ֓೦ΛֶΔ designed by Freepik
ڭՊॻʹΑΔݚमऴྃ
2. ΦϦδφϧαʔϏε ͷ࡞
ࣗͰاըͯ͠ ࣗͰ࡞Δʂ
ΦϦδφϧαʔϏε࡞ શࣾһͷલͰൃද 5-9. 10.
ΦϦδφϧαʔϏε࡞ શࣾһͷલͰൃද 5-9. 10. • اը • UI • ػೳ։ൃͷྲྀΕ
WebαʔϏε࡞ͷখ͞ͳ࣮ફ ڭՊॻͰֶΜͩ͜ͱΛ׆͔͢
None
ΦϦδφϧαʔϏε࡞ શࣾһͷલͰൃද 5-9. 10.
શࣾһͷલͰൃද • ࣗͷαʔϏεΛΞϐʔϧ • ίʔυΛಡ·Εٕज़తʹಥͬࠐ·ΕΔ • ઈରʹηΩϡϦςΟϗʔϧΛ୳͞ΕΔ
ΦϦδφϧαʔϏεͷ ࡞ऴྃ
3. ۀΛ௨ͨ͡ݚम
1. ͯ͘͠ઓͯ͠Β͏ 2. αϙʔτମ੍ॆ࣮ͤ͞Δ ߟ͑ํ
1.ઓͯ͠Β͏ • ࣮ࡍʹಈ͍͍ͯΔαʔϏεΛ৮Δ • ͲΜͲΜࣄΛͤΔ • ͍͠ۀͰઓͯ͠Β͏
ઓ • ͦͷਓ͕ڵຯ͕͋Δ͜ͱ • ٕज़తʹ͍͠՝ • ΤϯδχΞ͔Βͷӽڥ
2.αϙʔτମ੍Λॆ࣮ • νʔϜϝϯλʔ • ίʔυϨϏϡʔ • γχΞΤϯδχΞ • ͦͷଞ
νʔϜϝϯλʔ • νʔϜͰڭҭ • ೋਓͰઃܭ૬ஊΛ͠ͳ͕Β։ൃ
ίʔυϨϏϡʔ • ίʔυGitHubͰϨϏϡʔ • ࢦఠΛडֶ͚ͯश͢Δ • ࣗͰଞͷਓͷίʔυΛݟֶͯश
γχΞΤϯδχΞ • νʔϜ֎ͷΤϯδχΞ͕Ұਓ͘ • ΤϯδχΞͱͯ͠ͷํੑΛαϙʔτ
ͦͷଞ • ϖΞϓϩ • ࣾษڧձ • ٕज़ॻࢧԉ • ߹॓ •
னٳΈ
ۀΛ௨ͨ͡ݚम ͍ͭ·Ͱଓ͘…
·ͱΊ
1. ͯͳڭՊॻ 2. ΦϦδφϧαʔϏε 3. νʔϜଐ ݚमͷྲྀΕ
ͯͳͰരͰۀʹ ೖΕΔΑ͏͍ͯ͠·͢
ઓͰ͖ΔڥΛ ἧ͍͑ͯ·͢
13 • ͯͳͰઓ͍ͨ͠ΤϯδχΞΛื ू͍ͯ͠·͢ • http://hatenacorp.jp/recruit/fresh/