Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevelopWorkflow and Solving Problems
Search
Yohei Munesada
July 01, 2017
Technology
0
460
DevelopWorkflow and Solving Problems
G's Academy Tokyoでの「開発ワークフローと問題解決講座」の資料です。どのようにサービスをシステムで作るのか、どのように問題解決を行うのか、を講義させていただきました。
Yohei Munesada
July 01, 2017
Tweet
Share
More Decks by Yohei Munesada
See All by Yohei Munesada
G'sデータベース設計の講義
yoheimune
4
5.3k
How to create a service, How to google !
yoheimune
0
320
Machine Learning Basic and Python
yoheimune
1
530
Python Scraping and Web Apps for G's ACADEMY TOKYO
yoheimune
0
250
Git and Github for Beginners
yoheimune
1
310
Data Science BOOTCAMP Practices - Recommendation
yoheimune
0
220
Data Science BOOTCAMP Practices
yoheimune
0
380
Machine Learning with Python
yoheimune
0
370
Python Basics for G's ACADEMY TOKYO
yoheimune
1
640
Other Decks in Technology
See All in Technology
Gemini でコードレビュー知見を見える化
zozotech
PRO
1
190
“決まらない”NSM設計への処方箋 〜ビットキーにおける現実的な指標デザイン事例〜 / A Prescription for "Stuck" NSM Design: Bitkey’s Practical Case Study
bitkey
PRO
1
580
品質のための共通認識
kakehashi
PRO
3
210
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
200
re:Invent 2025 ふりかえり 生成AI版
takaakikakei
1
180
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
2
590
チーリンについて
hirotomotaguchi
2
400
世界最速級 memcached 互換サーバー作った
yasukata
0
330
モバイルゲーム開発におけるエージェント技術活用への試行錯誤 ~開発効率化へのアプローチの紹介と未来に向けた展望~
qualiarts
0
660
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
530
AWS Trainium3 をちょっと身近に感じたい
bigmuramura
1
120
技術以外の世界に『越境』しエンジニアとして進化を遂げる 〜Kotlinへの愛とDevHRとしての挑戦を添えて〜
subroh0508
1
390
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Cult of Friendly URLs
andyhume
79
6.7k
RailsConf 2023
tenderlove
30
1.3k
A designer walks into a library…
pauljervisheath
210
24k
Visualization
eitanlees
150
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Embracing the Ebb and Flow
colly
88
4.9k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
The Pragmatic Product Professional
lauravandoore
37
7.1k
Transcript
G’s Academy Tokyo ։ൃϫʔΫϑϩʔͱղܾߨ࠲ Yohei Munesada
㾎 फఆ༸ฏ 㾎 @yoheiMune 㾎 http://www.yoheim.net 㾎 ࠷͍ۙͬͯΔ͜ͱ 㾎 GCP,
Docker, Go, React, Vue.js, Laravel, Python, Node.js, ͳͲ "CPVUNF
㾎 εϚϗ͚ిࢠॻ੶αΠτ 㾎 IUUQTEPLVTIPPKJLBOKQUPQ 㾎 ϓϥϯφʔΤϯδχΞ 㾎 தظظͷܭըཱҊɺϝϯόʔҭɺ ։ൃσΟϨΫγϣϯɺ։ൃɺ ੳγεςϜ։ൃɺΞυϗοΫੳɺFUD
㾎 αʔϏεάϩεͷͨΊʹԿͰΔ ಡॻͷ͓࣌ؒͰ͢CZ"NFCB
։ൃϫʔΫϑϩʔ
։ൃϫʔΫϑϩʔ ࡞ۀΛ͚Δݕূࡉ͔͘
͜ͷߨٛͰࢦ͢ͱ͜Ζɾΰʔϧ ଔۀ੍࡞ͷاըʙ։ൃʙϦϦʔε·Ͱͷ ϑϩʔ͕۩ମతʹࢥ͍ඳ͚Δঢ়ଶʹͳΔ͜ͱ εϜʔζʹ։ൃ͢ΔͨΊͷϙΠϯτΛ ͍͔ͭ͘ԡ͍͑ͯ͞Δ͜ͱ
8PSL'MPX اըʙ։ൃʙϦϦʔε
اը ϦϦʔε ʁ
։ൃϫʔΫϑϩʔ0WFS7JFX اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
ࠓճͷࡐ.VTJD1PDLFU 㾎 :PVUVCFϕʔεͰԻָ͕ௌ͚Δ 㾎 ϥϯΩϯάܗࣜͰԻָΛνΣοΫ 㾎 ϙέοτػೳͰ͖ͳۂΛετοΫ
اը اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
اը͕Ұ൪େมɻ Ͱɺ࠷େ
اը0WFSWJFX 㾎اըͰܾΊΔͭͷ͜ͱ 㾎ػೳఆٛͱ.71 㾎ը໘ߏ 㾎اըςετ
اը0WFSWJFX 㾎اըͰܾΊΔͭͷ͜ͱ 㾎ػೳఆٛͱ.71 㾎ը໘ߏ 㾎اըςετ ϦϦʔεϊʔτ
None
اըͭͷܾΊ͝ͱ ͲͷΑ͏ͳϢʔβʔ͕͏ͷ͔ ԿΛୡ͍ͨ͠ͷ͔ ͲͷΑ͏ͳػೳ͕͋Δͷ͔ ྨࣅαʔϏεͱԿ͕ҧ͏ͷ͔
ϦϦʔε༧ఆ͍͔ͭ ऩӹߏͲͷΑ͏ͳͷ͔ ΞϓϦ໊
اըͭͷܾΊ͝ͱ ͲͷΑ͏ͳϢʔβʔ͕͏ͷ͔ ԿΛୡ͍ͨ͠ͷ͔ ͲͷΑ͏ͳػೳ͕͋Δͷ͔ ྨࣅαʔϏεͱԿ͕ҧ͏ͷ͔
ϦϦʔε༧ఆ͍͔ͭ ऩӹߏͲͷΑ͏ͳͷ͔ ΞϓϦ໊ 㾎 ແྉͰԻָΛμϥμϥͱָ͠Έ͍ͨਓɺԻ࣭ͩ͜ΘΒͳ͍ਓɺͳͲ 㾎 ϚϯωϦԽͨ͠J1PEΛඈͼग़͢ɺؾܰʹԻָΛ୳ͤΔɺμϥμϥͱௌ͚Δ 㾎 ࠃผδϟϯϧผϥϯΩϯάɺݕࡧػೳɺࢹௌػೳɺϙέοτػೳ 㾎 δϟϯϧͷ͕࠷ଟ͍ɺ৭ʑͳࠃຖͷϥϯΩϯάͰۂ͕ௌ͚Δ 㾎 ݄ 㾎 ࠂ৴ϞσϧʢϑολʔόφʔͱϨΫτόφʔʣ 㾎 .VTJD1PDLFUແྉԻָ࠶ੜΞϓϦGPS:PVUVCF
اըػೳఆٛͱߜΓࠐΈ 㾎ۂΛݟ͚ͭΔ 㾎 ؾʹೖͬͨۂΛ4/4ͰγΣΞ͢Δ͜ͱ͕Ͱ͖Δ 㾎 δϟϯϧผϥϯΩϯάผʹۂΛ୳͢͜ͱ͕Ͱ͖Δ 㾎 ʢຊҎ֎ʹʣෳͷࠃͷϥϯΩϯά͔Β୳ͤΔ 㾎 ϑϦʔϫʔυݕࡧ͕Ͱ͖Δ
㾎 ਓͷϓϨΠϦετʢϙέοτʣ͔ΒۂΛ୳͢͜ͱ͕Ͱ͖Δ 㾎 1VTI௨ͰϥϯΩϯάߋ৽Λ௨Ͱ͖Δ 㾎 ࠓ·͞ʹΞϓϦͰௌ͔Ε͍ͯΔۂΛΔ͜ͱ͕Ͱ͖Δ 㾎 ࢹௌཤྺ͔ΒϨίϝϯυΛड͚Δ͜ͱ͕Ͱ͖Δ 㾎ۂΛஷΊΔ 㾎 ͖ͳۂΛϙέοτ͓ͯ͠ؾʹೖΓϦετΛ࡞Δ͜ͱ͕Ͱ͖Δ 㾎ऩӹԽ 㾎 ը໘ʹࠂΛදࣔ͢Δ͜ͱ͕Ͱ͖Δ 㾎ۂΛγΣΞ͢Δ
اըػೳఆٛͱߜΓࠐΈ ϦʔϯελʔτΞοϓͷ .JOJNVN 7JBCMF 1SPEVDU IUUQMFBOTUBSUVQKBQBOPSH Q
اըػೳఆٛͱߜΓࠐΈ 㾎ۂΛݟ͚ͭΔ 㾎 ؾʹೖͬͨۂΛ4/4ͰγΣΞ͢Δ͜ͱ͕Ͱ͖Δ 㾎 δϟϯϧผϥϯΩϯάผʹۂΛ୳͢͜ͱ͕Ͱ͖Δ 㾎 ʢຊҎ֎ʹʣෳͷࠃͷϥϯΩϯά͔Β୳ͤΔ 㾎 ϑϦʔϫʔυݕࡧ͕Ͱ͖Δ
㾎 ਓͷϓϨΠϦετʢϙέοτʣ͔ΒۂΛ୳͢͜ͱ͕Ͱ͖Δ 㾎 1VTI௨ͰϥϯΩϯάߋ৽Λ௨Ͱ͖Δ 㾎 ࠓ·͞ʹΞϓϦͰௌ͔Ε͍ͯΔۂΛΔ͜ͱ͕Ͱ͖Δ 㾎 ࢹௌཤྺ͔ΒϨίϝϯυΛड͚Δ͜ͱ͕Ͱ͖Δ 㾎ۂΛஷΊΔ 㾎 ͖ͳۂΛϙέοτ͓ͯ͠ؾʹೖΓϦετΛ࡞Δ͜ͱ͕Ͱ͖Δ 㾎ऩӹԽ 㾎 ը໘ʹࠂΛදࣔ͢Δ͜ͱ͕Ͱ͖Δ 㾎ۂΛγΣΞ͢Δ
اըը໘ߏ 㾎 తɺ੍࡞ͷ۩ମతͳΠϝʔδΛ࡞Δ 㾎 ੍࡞ྫҎԼʢखॻ͖Ͱेʣ
اըը໘ߏͷࢀߟʹͳΓ·͢ IUUQQUUSOTDPN
اըϦϦʔεϊʔτ ˙ΞϓϦ໊ .VTJD1PDLFUແྉԻָ࠶ੜΞϓϦGPS:PVUVCF ˙આ໌ ˔͓ؾʹೖΓͷۂ͕Ҏ্ͷδϟϯϧ͔ΒϥϯΩϯάܗࣜͰ͙͢ʹݟ͔ͭΔʂ ˔͞Βʹ,101༸ָͳͲੈքதͷϥϯΩϯάଟ͘৴͍ͯ͠·͢ʂ ˔࿈ଓ࠶ੜػೳͰμϥμϥͱฉ͖ྲྀ͠Մೳʂ ˔ϚϯωϦԽͨ͠J1PEϥΠϒϥϦ͔Βඈͼग़ͦ͏ʂ ˔ؾʹೖͬͨۂ1PDLFUػೳͰϫϯλοϓͰϚΠϦετʹՃͰ͖ɺ؆୯ʹ࠶ੜϦετΛ࡞Ε·͢ɻ ˔J5VOFTϥϯΩϯάۂΛ:PV5VCFͷಈըͰϑϧ࠶ੜͰ͖ΔͷͰɺਓؾͷ͓͢͢ΊۂΛ࠷ޙ·Ͱฉ͘͜ͱ͕
Ͱ͖·͢ʂͪΖΜϊϯετοϓࣗಈ࿈ଓϦϐʔτ࠶ੜͰ͖·͢ʂ ˔ۂ໊ɺϑϦʔΩʔϫʔυݕࡧՄೳ ͯ͢ͷ:PV5VCFίϯςϯπ͔ΒݕࡧՄೳͳͨΊɺݕࡧը໘ͰϑϦʔϫʔυΛೖྗ͢ΕؾʹͳΔۂΛ ݟ͚ͭΒΕ·͢ʂ ʢҎԼলུʣ ˙εΫγϣʢը໘ߏʣ اը༰ΛຒΊࠐΉ
اըݕূ͠Α͏ ϦϦʔεϊʔτΛಡΜͰΒ͏ ը໘ϞοΫΞοϓΛͬͯΒ͏ 㾎 Θ͘Θ͘͢Δ͔ʁΞϓϦΛμϯϩʔυ͍ͨ͠ͱࢥͬͨϙΠϯτԿ͔ʁ 㾎 ࣗͷఆ͍ͯ͠Δ͍ํΛ͍ͯ͠Δ͔ʁͪΌΜͱػೳΘΕ͍ͯΔ͔ʁ
اը0WFSWJFXʢ࠶ܝʣ 㾎اըͰܾΊΔͭͷ͜ͱ 㾎ػೳఆٛͱ.71 㾎ը໘ߏ 㾎اըςετ
σβΠϯ اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
σβΠϯ0WFS7JFX 㾎શମͷσβΠϯΛܾΊΔ 㾎ΞΠίϯΛ੍࡞͢Δ 㾎ը໘σβΠϯΛߦ͏ 㾎ݕূ͢Δ
σβΠϯશମͷσβΠϯ 㾎 ओʹ৭০Γ۩߹ΛܾΊ·͢ 㾎 ڝ߹ͱͳΔΞϓϦαʔϏεͷσβΠϯΛௐࠪ͠·͢ 㾎 ࣗͨͪͷྑ͞Λ͑ΒΕΔσβΠϯʹ͠·͢ 㾎 σβΠϯਪ͠Ͱͳ͍͘উखΛ࠷ॏࢹ 㾎
ڧ߽ʮࠇʯʮനʯ͕ଟ͍ͷͰɺࠩผԽͱͯ͠໌Δ͍৭Λ͏ 㾎 ݩؾྑ͞ɺΘ͘Θ͘Λදݱ͘͢ʮΦϨϯδʯʮʯʮࠇʯʹܾΊͨ ྫ.VTJD1PDLFU
σβΠϯࢀߟʹ͢Δͱ࡞ۀ͍͢͠ IUUQQUUSOTDPN
IUUQDBQQUJWBUFDP σβΠϯࢀߟʹ͢Δͱ࡞ۀ͍͢͠
"EPCF$PMPS$$ IUUQTDPMPSBEPCFDPNKBFYQMPSFNPTUVTFE UJNFBMM σβΠϯࢀߟʹ͢Δͱ࡞ۀ͍͢͠
IUUQTESJCCCMFDPN σβΠϯࢀߟʹ͢Δͱ࡞ۀ͍͢͠
σβΠϯΞΠίϯ੍࡞ 㾎 αʔϏεͷإͱͳΔॏཁͳσβΠϯ 㾎 ڧ߽ͱͳΔΞϓϦαʔϏεͷΞΠίϯΛௐࠪ͠·͢ 㾎 ࣗͨͪͷྑ͞Λ͑ΒΕΔΞΠίϯʹ͠·͢ 㾎 ڧ߽ɺԻූτΦʔϯه߸γϟΠχʔ༂ಈײͳͲ͕ଟ͘ɺ৭ຯɺ ࠇന੨ͱ͍ͬͨجຊ৭ϝΠϯͰɺάϩΰʔϧυͳͲɻ
ྫ.VTJD1PDLFU 㾎 ίϯηϓτΧϥʔ ᒵ ࠇ ͷΈ߹Θͤͳ͍ɺٖਓԽͨ͠ΞΠίϯ͕ͳ͍ ͷͰɺͦΕΒΛ༻͍ͨΞΠίϯΛ੍࡞ͨ͠
σβΠϯΞΠίϯ੍࡞ʢࢀߟʣ
σβΠϯը໘σβΠϯ 㾎 ͻͨ͢Βؤுͬͯ࡞Γ·͢
σβΠϯݕূ 㾎 ࠷ޙʹଞਓʹݟͯΒ͏ 㾎 ΞΠίϯʹڵຯΛ͔࣋ͭ 㾎 σβΠϯίϯηϓτʹͲͷΑ͏ʹԠ͢Δ͔ 㾎 ͍উखͳ͍͔ɺͳͲ ࣮ػςετ࣌ͷมߋΛݮΒ͢͜ͱ͕Ͱ͖·͢
σβΠϯ0WFS7JFXʢ࠶ܝʣ 㾎શମͷσβΠϯΛܾΊΔ 㾎ΞΠίϯΛ੍࡞͢Δ 㾎ը໘σβΠϯΛߦ͏ 㾎ݕূ͢Δ
શମઃܭ اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
શମઃܭ0WFS7JFX 㾎γεςϜશମ૾ͷ࡞ 㾎෦ઃܭΛߦ͏ 㾎࡞ۀચ͍ग़͠ɺεέδϡʔϦϯά 㾎ٕज़తෆ໌ͷྻڍ
γεςϜઃܭશମ૾ $MJFOU ϥϯΩϯά ৴αʔόʔ :PVUVCF "1* ϥϯΩϯά ࡞όον J5VOFT 3BOLJOH344
ϩάαʔόʔ ࠂαʔόʔ
γεςϜઃܭ෦ઃܭ ΞϓϦ෦ઃܭ 7JFX $POUSPMMFS 3BOLJOH4FSWJDF ϥϯΩϯά৴ :PVUVCF4FSWJDF :PVUVCF "1* 1PDLFU4FSWJDF
%# "DUJWJUZ4FSWJDF ϩάऩू "E4FSWJDF ࠂ৴
γεςϜઃܭ෦ઃܭ ΞϓϦ෦ઃܭ 7JFX $POUSPMMFS 㾎 HFU$PVOUSJFT -JTU$PVOUSZ 㾎 HFU(FOSFT DPVOUSZ*E
-JTU(FOSF 㾎 HFU*UFNT DPVOUSZ*E HFOSF*E -JTU.VTJD 3BOLJOH4FSWJDF ϥϯΩϯά৴
γεςϜઃܭ࡞ۀચ͍ग़͠ 㾎 ४උ 㾎 αʔόʔͷηοτΞοϓʢQIQ OHJOY NZTRM FUDʣ 㾎 ։ൃϨϙδτϦͷ४උ
㾎 ϥϯΩϯάੜ 㾎 ࠃผδϟϯϧผϥϯΩϯάใͷऔಘ 㾎 :PVUVCFใඥ͚ 㾎 ৴αʔόʔσϓϩΠδϣϒ 㾎 ΞϓϦ࡞ 㾎 ϥϯΩϯάදࣔػೳ 㾎 ۂৄࡉදࣔػೳ 㾎 ۂ࠶ੜػೳ 㾎 FUD 㾎 ʜ 㾎 ϦϦʔε ચ͍ग़ͤͳ͍߹ʹʁ ˠࣗࣗͯ͠ɺԿʹ٧·͍ͬͯΔͷ͔Λݟ͚ͭΔ ˠϝϯλʔͱͯ͠ΈΑ͏
γεςϜઃܭεέδϡʔϧܾΊ 㾎 ४උ 㾎 αʔόʔͷηοτΞοϓʢQZUIPO OHJOY KFOLJOT FUDʣɹ݄X 㾎 ։ൃϨϙδτϦͷ४උɹ݄X
㾎 ϥϯΩϯάੜ 㾎 ࠃผδϟϯϧผϥϯΩϯάใͷऔಘɹ݄X 㾎 :PVUVCFใඥ͚ɹ݄X 㾎 ৴αʔόʔσϓϩΠδϣϒɹ݄X 㾎 ΞϓϦ࡞ 㾎 ϥϯΩϯάදࣔػೳɹ݄X 㾎 ۂৄࡉදࣔػೳɹ݄X 㾎 ۂ࠶ੜػೳɹ݄X 㾎 FUD 㾎 ʜ 㾎 ϦϦʔεɹ݄༧ఆ ϚΠϧετʔϯΛઃఆ͢Δ ˠதඪΛ͍͔ͭ͘࡞ΓɺͦΕʹ͔ͬͯؤுΔ ˠۙͷεέδϡʔϧ͕ݟ͍͑ͯΔํ͕ΕͮΒ͍
γεςϜઃܭٕज़తෆ໌ͷྻڍ 㾎 ४උ 㾎 QIQ OHJOY NZTRMΛΠϯετʔϧ͢Δʹʁ 㾎 ϥϯΩϯάੜ 㾎
J5VOFT344ͷ͍ํʁ 㾎 :PVUVCF"1*ͲͷΑ͏ͳͷ͔ʁͲ͏ͬͯ͏ʁ 㾎 ΞϓϦ࡞ 㾎 ඇಉظ"1*௨৴ͲͷΑ͏ʹߦ͏͔ʁ 㾎 :PVUVCFͷը૾Λਖ਼ํܗʹද͍͚ࣔͨ͠Ͳɾɾɾʁ 㾎 FUD ɾͰ͖Δ͚ͩࢁચ͍ग़͢ ݸʙ ɾચ͍ग़͠Δͱɺ৺ʹ༨༟͕ੜ·ΕΔ ɾ࣮લʹ՝ղܾ͢Δͱɺεέδϡʔϧ͕ΕͮΒ͍
શମઃܭ·ͱΊ 㾎γεςϜશମ૾ͷ࡞ 㾎෦ઃܭΛߦ͏ 㾎࡞ۀચ͍ग़͠ɺεέδϡʔϦϯά 㾎ٕज़తෆ໌ͷྻڍ
։ൃ اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
։ൃ0WFS7JFX 㾎ઃܭͱ࣮͚Δ 㾎ݕূࡉ͔͘ߦ͏ 㾎ЋϦϦʔεΛੵۃతʹߦ͏
㾎 ઃܭͨ͠༰ΛίʔσΟϯά͢ΔͷΈɻಉ࣌ʹ·ͳ͍ɻ 㾎 ʢඞཁʹԠͯ͡ʣ෦ઃܭੵۃతʹߦ͏ɻ 㾎 ʢͷ߹ʣιʔείʔυ্ʹઃܭΛॻ͖·͢ɻ 㾎ઃܭͱ࣮͚Δ 㾎ݕূࡉ͔͘ߦ͏ 㾎 ͪΐͬͱॻ͍ͯςετɺͪΐͬͱॻ͍ͯςετʜ
㾎 ͜ͷ࣌Ͱߟ͑ΒΕΔෳͷςετΛͯ͠͠·͏ 㾎 গ࣭ͣͭ͠ͷྑ͍ϞδϡʔϧΛ૿͍ͯ͘͠Πϝʔδ ։ൃઃܭ࣮ݕূ
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { }
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { } // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ ·ͣઃܭΛॻ͘
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { } // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ ͜͜Ͱςετ
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { var results = api(‘/ranking/items’, {cid: cid, gid: gid}); } ͙͢ʹςετ // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { var results = api(‘/ranking/items’, {cid: cid, gid: gid}); if (results === null || results.length === 0) return []; } ·ͨςετ // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { var results = api(‘/ranking/items’, {cid: cid, gid: gid}); if (results === null || results.length === 0) return []; var musicList = this._createMusicList(results); return musicList; } ·ͨ·ͨςετ // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ
։ൃઃܭ࣮ݕূʢྫʣ var Ranking = function () {} Ranking.prototype.getItems = function
(cId, gId) { var results = api(‘/ranking/items’, {cid: cid, gid: gid}); if (results === null || results.length === 0) return []; var musicList = this._createMusicList(results); return musicList; } // ฦ٫ // ݁ՌͷՃ // 0݅νΣοΫ // apiίʔϧ
։ൃЋϦϦʔε 㾎ЋϦϦʔεΛੵۃతʹߦ͏ 㾎 ػೳΛ࡞ͨ͠ΒɺͲ͔͜ΒͰ͑Δঢ়ଶʹ͢Δ 㾎 ྫ͑ɺ௨ۈ௨ֶத͓னٳΈͳͲɺ͔ΒσόοάͰ͖Δ 㾎 "1*Λͭ࡞ͬͯެ։ɺͭ࡞ͬͯެ։ɺը໘Λຕ࡞ͬͯެ։ɺʜ 㾎 ϦϦʔεείʔϓΛখ͘͢͞Δ͜ͱͰɺ࣭ˍ։ൃεϐʔυ61
։ൃ·ͱΊ 㾎 Կߟ͑ͣʹίʔσΟϯάͰ͖Δঢ়ଶΛ࡞Δ 㾎 ٯʹݴ͑ɺ࣮தʹߟ͑Δ͜ͱ͕͋ΔͳΒɺखΛࢭΊͯ͠·͏ 㾎 ͍ͭͰσόοάͰ͖ΔڥΛ࡞Δ 㾎 ͨͬͨͰ࣭Ξοϓ͕Ͱ͖Δ
ϦϦʔε اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε ෦ઃܭ ࣮ ݕূ ػೳ͝ͱʹ։ൃ
ຊϦϦʔε0WFS7JFX 㾎 ઃܭͰ࡞ͬͨϦϦʔεϊʔτΛݩʹެ։͠Α͏ 㾎 ஏ͔͍ͣ͠ͱ͔ؔͳࣗ͘৴Λ࣋ͬͯެ։͠Α͏ 㾎 ରϢʔβʔͷʹཱͯ0,ʢશϢʔβʔͰͳ͍ʣ 㾎 ྑ͘ѱ͘ਓଞਓʹແؔ৺ 㾎
͚ͩͲ༏͘͠ίϝϯτ͘ΕΔਓ͍Δ
։ൃϫʔΫϑϩʔৼΓฦΓ اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε 㾎 ͭͷܾΊࣄ 㾎 .71
㾎 ը໘ߏ 㾎 ϦϦʔεϊʔτ 㾎 ݕূ 㾎 શମσβΠϯ 㾎 ΞΠίϯ੍࡞ 㾎 ը໘σβΠϯ 㾎 ݕূ 㾎 γεςϜશମ૾ 㾎 ෦ઃܭ 㾎 ࡞ۀચ͍ग़͠ 㾎 εέδϡʔϦϯά 㾎 ٕज़తෆ໌ͷྻڍ 㾎 ઃܭͱ࣮ͷ 㾎 ݕূΛࡉ͔͘
։ൃϫʔΫϑϩʔৼΓฦΓ اը σβΠϯ શମઃܭ ։ൃ ϦϦʔε 㾎 ͭͷܾΊࣄ 㾎 .71
㾎 ը໘ߏ 㾎 ϦϦʔεϊʔτ 㾎 ݕূ 㾎 શମσβΠϯ 㾎 ΞΠίϯ੍࡞ 㾎 ը໘σβΠϯ 㾎 ݕূ 㾎 γεςϜશମ૾ 㾎 ෦ઃܭ 㾎 ࡞ۀચ͍ग़͠ 㾎 εέδϡʔϦϯά 㾎 ٕज़తෆ໌ͷྻڍ 㾎 ઃܭͱ࣮ͷ 㾎 ݕূΛࡉ͔͘ ࡞ۀΛ͚Δݕূࡉ͔͘
*NBHFIUUQTqJDLSQDI;T շదίʔσΟϯά
շదίʔσΟϯά 㾎ઃܭͱ࣮Λ͚Δ 㾎(PPHMFྗ͕ߴ͍ 㾎࣮ͱςετΛ΄΅ಉ࣌ʹߦ͏
շదίʔσΟϯά 㾎(PPHMFྗ͕ߴ͍ 㾎 Τϥʔʹૺ۰ͨ͠߹ɺ࣮ݱํ๏͕ෆ໌ͳ߹ʹ͍͔ʹૣ͘ղܾͰ͖Δ͔ʁ 㾎 (PPHMFͰͷݕࡧྗ͕େ͖ͳϙΠϯτ 㾎࣮ͱςετΛ΄΅ಉ࣌ʹߦ͏ 㾎ઃܭͱ࣮Λ͚Δ
շదίʔσΟϯά(PPHMFݕࡧΛӳޠʹʂ IUUQTXXXHPPHMFDPKQQSFGFSFODFTMBOHVBHFT
շదίʔσΟϯά(PPHMFݕࡧྫ 㾎 ݴޠ໊ ػೳ໊ ʜ 㾎 ྫɿʮQZUIPOMJTUTPSULFZʯɺʮQZUIPOUSZFYDFQUTUBDLUSBDFʯɺFUD
㾎 ڥ ػೳ໊ Γ͍ͨ͜ͱ ʜ 㾎 ྫɿʮMJOVYDQV༻֬ೝʯɺʮDFOUPTγΣϧEBUFલʯɺFUD 㾎 ݴޠ໊ ػೳ໊ OPUXPSL ڥ ʜ 㾎 ྫɿʮQZUIPOQMPUDPMPSOPUXPSLNBDʯ 㾎 ػೳ໊ ௐ͍ͨ͜ͱ ʜ 㾎 ྫɿʮUXJUUFSTFBSDIBQJMJNJUʯ 㾎 ݴޠ໊ Τϥʔใ ʜ 㾎 ྫɿʮQZUIPOTPSU5ZQF&SSPSDNQJTBOJOWBMJELFZXPSEBSHVNFOUʜʯ 㾎 ྫɿʮQZUIPO*NQPSU&SSPS/PNPEVMFOBNFEʯ
ղܾೳྗΛຏ࣮͘ફ
ղܾ࣮ફ͓
ղܾ࣮ફཁ݅ 㾎 8FCϖʔδͰάϥϑΛඳը͢Δ 㾎 "1*ͷ݁ՌΛɺಈతʹදࣔ͢Δ 㾎 දࣔ͢Δͱ͖ʹɺΞχϝʔγϣϯΛ͚ͭΔ 㾎 Z࣠ʹ͍ͭͯɺࠨάϥϑ༻ɺӈંΕઢάϥϑ༻ʹ͏ 㾎
άϥϑɺগ͠άϥσʔγϣϯΛ͔͚Δ 㾎 άϥϑશମʹɺগ͠γϟυΛ͚ͭΔ 㾎 ຌྫӈ্ʹදࣔ͢Δ
ղܾ࣮ફਐΊํ ͲͷΑ͏ʹ·ͰਐΊ·͔͢ʁ ʢͲΕ͘Β͍ͷظؒͰͰ͖·͔͢ʁʣ
ղܾ࣮ફਐΊํ ͨͱ͑׳Εͳ͍ٕज़ͩͬͨͱͯ͠ɺ ࣗྗͰղܾͯ͠ظҎ্ͷΞτϓοτΛग़͢
㾎 ༷Λཧղ͢Δ 㾎 ࡞ۀ߲Λચ͍ग़͢ 㾎 ෆ໌Λચ͍ग़ͯ͠ɺղফ͢Δ 㾎 ࣮͢Δ 㾎 ಈ࡞ςετ
㾎 ʂ ղܾ࣮ફਐΊํ
㾎 ༷Λཧղ͢Δ 㾎 ࡞ۀ߲Λચ͍ग़͢ 㾎 ෆ໌Λચ͍ग़ͯ͠ɺղফ͢Δ 㾎 ࣮͢Δ 㾎 ಈ࡞ςετ
㾎 ʂ ղܾ࣮ફਐΊํ
ղܾ࣮ફ࡞ۀ߲Λચ͍ग़ͦ͏ 㾎 άϥϑඳըͷϥΠϒϥϦΛೖख͢Δ 㾎 σϞαΠτΛࢀߟʹɺάϥϑΛ࣮ͭͯ͠ΈΔ 㾎 ͭͷάϥϑΛදࣔ͢Δ 㾎 ͭͷάϥϑʢંΕઢάϥϑʣΛදࣔ͢Δ 㾎
Z࣠ͷࠨΛάϥϑʹɺӈΛંΕઢάϥϑʹׂΓͯΔ 㾎 ຌྫΛදࣔͯ͠ΈΔ 㾎 άϥϑΛάϥσʔγϣϯʹ͢Δ 㾎 άϥϑͷԼʹγϟυΛදࣔ͢Δ 㾎 "1*݁ՌΛಈతʹදࣔͰ͖ΔΑ͏ʹ͢Δ 㾎 ࡉ͔͘දࣔσβΠϯΛमਖ਼͢Δ 㾎 άϥϑαΠζ ઢͷଠ͞ Z࣠ͷิॿઢ FUD ࡞ۀ༰͕ᡰʹམͪΔ·Ͱɺ ϒϨΠΫμϯ͢Δ
ղܾ࣮ફෆ໌Λચ͍ग़ͦ͏ 㾎 άϥϑඳըͷϥΠϒϥϦΛೖख͢Δ 㾎 σϞαΠτΛࢀߟʹɺάϥϑΛ࣮ͭͯ͠ΈΔ 㾎 ͭͷάϥϑΛදࣔ͢Δ 㾎 ͭͷάϥϑʢંΕઢάϥϑʣΛදࣔ͢Δ 㾎
Z࣠ͷࠨΛάϥϑʹɺӈΛંΕઢάϥϑʹׂΓͯΔ 㾎 ຌྫΛදࣔͯ͠ΈΔ 㾎 άϥϑΛάϥσʔγϣϯʹ͢Δ 㾎 άϥϑͷԼʹγϟυΛදࣔ͢Δ 㾎 "1*݁ՌΛಈతʹදࣔͰ͖ΔΑ͏ʹ͢Δ 㾎 ࡉ͔͘දࣔσβΠϯΛमਖ਼͢Δ 㾎 άϥϑαΠζ ઢͷଠ͞ Z࣠ͷิॿઢ FUD
㾎 άϥϑඳըͷϥΠϒϥϦΛೖख͢Δ 㾎 ݕࡧϫʔυʮ+BWBTDSJQUάϥϑϥΠϒϥϦʯ 㾎 σϞαΠτΛࢀߟʹɺάϥϑΛ࣮ͭͯ͠ΈΔ 㾎 ݕࡧϫʔυʮ$IBSUKTάϥϑʯ 㾎 ͭͷάϥϑΛදࣔ͢Δ
㾎 ݕࡧϫʔυʮ$IBSUKTάϥϑෳʯ 㾎 ͭͷάϥϑʢંΕઢάϥϑʣΛදࣔ͢Δ 㾎 ݕࡧϫʔυʮ$IBSUKTંΕઢάϥϑʯ 㾎 Z࣠ͷࠨΛάϥϑʹɺӈΛંΕઢάϥϑʹׂΓͯΔ 㾎 ݕࡧϫʔυʮ$IBSUKTZ࣠ͭʯ 㾎 ຌྫΛදࣔͯ͠ΈΔ 㾎 ݕࡧϫʔυʮ$IBSUKTຌྫΧελϚΠζʯʮ$IBSUKTDVTUPNMFHFOEʯ ղܾ࣮ફෆ໌Λղফ͠Α͏
㾎 άϥϑΛάϥσʔγϣϯʹ͢Δ 㾎 ݕࡧϫʔυʮ$IBSUKTάϥϑάϥσʔγϣϯʯʮ$IBSUKTCBSHSBEJFOUʯ 㾎 άϥϑͷԼʹγϟυΛදࣔ͢Δ 㾎 ݕࡧϫʔυʮ$IBSUKTDIBSUBSFBTIBEPXʯʮ$IBSUKTDIBSU"SFBCBDLHSPVOEDPMPSʯ 㾎 "1*݁ՌΛಈతʹදࣔͰ͖ΔΑ͏ʹ͢Δ
㾎 ࡉ͔͘දࣔσβΠϯΛमਖ਼͢Δ 㾎 άϥϑαΠζ ઢͷଠ͞ Z࣠ͷิॿઢ FUD 㾎 ݕࡧϫʔυʮ$IBSUKTHSBQITJ[FSFTQPOTJWFʯ 㾎 ݕࡧϫʔυʮ$IBSUKTCBSXJEUIʯ 㾎 ݕࡧϫʔυʮ$IBSUKTDPOpHZBYJTʯ 㾎 ಈ࡞ςετ 㾎 ʂ ղܾ࣮ફෆ໌Λղফ͠Α͏
ͱɺ͜Μͳײ͡Ͱෆ໌Λղফ͠·͢ɻ ʢ࣮Ͱ͖ͦ͏ͳงғؾ͕ग़͖ͯ·͔ͨ͠ʁʣ ղܾ࣮ફෆ໌Λղফ͠Α͏ ˞ͪͳΈʹղফ·Ͱʹɺʙ͔͔Γ·ͨ͠
շదίʔσΟϯά·ͱΊ 㾎ઃܭͱ࣮Λ͚Δ 㾎(PPHMFྗ͕ߴ͍ 㾎࣮ͱςετΛ΄΅ಉ࣌ʹߦ͏
0WFS7JFX ·ͱΊ
·ͱΊ 㾎 ։ൃϑϩʔΛମݧ͠·ͨ͠ 㾎 اըˠσβΠϯˠઃܭεέδϡʔϧˠ։ൃˠϦϦʔε 㾎 ࡞ۀΛࡉ͔͚͘Δ͜ͱʢˠγϯϓϧʹߟ͑ΒΕΔʣ 㾎 ݕূΛࡉ͔͘ߦ͏͜ͱʢˠૣظόάൃݟͰσόοά࣌ؒΛॖʣ 㾎
շదίʔσΟϯάͷϙΠϯτ 㾎 ઃܭͱ࣮͚Δ 㾎 ࣮ͱςετ΄΅ಉ࣌ʹߦ͏ 㾎 (PPHMFྗΛຏ͘ˠղܾೳྗ͕ඇৗʹେɻ
Ξυόϯε 㾎 ϒϩάΛॻ͜͏ 㾎 εΩϧఆணͷͨΊɺࣗͷୈ̎ͷͷͨΊɺηϧϑϒϥϯσΟϯάͷͨΊ
Thank you http://www.yoheim.net @yoheiMune IUUQTqJDLSQN[N2,