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
shibayu36
December 06, 2015
Programming
1
6.3k
はてなと技術研修
shibayu36
December 06, 2015
Tweet
Share
More Decks by shibayu36
See All by shibayu36
今の生産性改善活動で大切にしている考え方
shibayu36
8
8.4k
エンジニアメンター制度の効果的な運用を目指して/improve-mentor-system
shibayu36
27
10k
グレードイメージ具体化のため昇格理由を公開する
shibayu36
8
5.8k
新機能作成時に開発ブランチに細かくmergeしていく戦略/merge-strategy-for-new-feature
shibayu36
6
17k
一から始めるJavaScriptユニットテスト/js-unit-test-from-scratch
shibayu36
8
33k
技術ブログを書くことについて/writing-tech-blog
shibayu36
17
26k
はてなブログチームの開発フローとGitHub
shibayu36
145
76k
課題をテストで解決する
shibayu36
2
2.3k
Fluentd, mongoDB, Kibanaを利用したはてなブログABテストの事例
shibayu36
30
12k
Other Decks in Programming
See All in Programming
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
2.8k
.NETでOBS Studio操作してみたけど…… / Operating OBS Studio by .NET
skasweb
0
120
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
630
ESLintプラグインを使用してCDKのセオリーを適用する
yamanashi_ren01
2
240
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
200
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
590
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
Package Traits
ikesyo
1
210
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
41
7.2k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
A Tale of Four Properties
chriscoyier
157
23k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Code Reviewing Like a Champion
maltzj
521
39k
Mobile First: as difficult as doing things right
swwweet
222
9k
Unsuck your backbone
ammeep
669
57k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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/