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.4k
はてなと技術研修
shibayu36
December 06, 2015
Tweet
Share
More Decks by shibayu36
See All by shibayu36
今の生産性改善活動で大切にしている考え方
shibayu36
8
8.5k
エンジニアメンター制度の効果的な運用を目指して/improve-mentor-system
shibayu36
27
10k
グレードイメージ具体化のため昇格理由を公開する
shibayu36
8
5.9k
新機能作成時に開発ブランチに細かく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
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
1
240
最速Green Tea 🍵 Garbage Collector
kuro_kurorrr
1
110
監視 やばい
syossan27
12
10k
Cursorを活用したAIプログラミングについて 入門
rect
0
190
note の Elasticsearch 更新系を支える技術
tchov
9
3.6k
The Nature of Complexity in John Ousterhout’s Philosophy of Software Design
philipschwarz
PRO
0
170
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.2k
REALITY コマンド作成チュートリアル
nishiuriraku
0
120
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
160
Носок на сок
bo0om
0
1.3k
The Missing Link in Angular’s Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
140
VitestのIn-Source Testingが便利
taro28
8
2.4k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
344
40k
Writing Fast Ruby
sferik
628
61k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Docker and Python
trallard
44
3.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
BBQ
matthewcrist
88
9.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Typedesign – Prime Four
hannesfritz
41
2.6k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
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/