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
DevelopWorkflow and Solving Problems
Search
Yohei Munesada
July 01, 2017
Technology
0
430
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.2k
How to create a service, How to google !
yoheimune
0
280
Machine Learning Basic and Python
yoheimune
1
480
Python Scraping and Web Apps for G's ACADEMY TOKYO
yoheimune
0
220
Git and Github for Beginners
yoheimune
1
280
Data Science BOOTCAMP Practices - Recommendation
yoheimune
0
190
Data Science BOOTCAMP Practices
yoheimune
0
350
Machine Learning with Python
yoheimune
0
310
Python Basics for G's ACADEMY TOKYO
yoheimune
1
580
Other Decks in Technology
See All in Technology
CZII - CryoET Object Identification 参加振り返り・解法共有
tattaka
0
350
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.3k
速くて安いWebサイトを作る
nishiharatsubasa
10
12k
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
400
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.2k
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
110
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
220
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
2k
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.8k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
10
1.5k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Why Our Code Smells
bkeepers
PRO
336
57k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Six Lessons from altMBA
skipperchong
27
3.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
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,