Slide 1

Slide 1 text

©2018 Wantedly, Inc. Share Xcode Templates
 with team potatotips #51
 23.May.2018 - @ngtk, Kento Nagata ςϯϓϨʔτͷ࡞੒ͱڞ༗Λ؆୯ʹ͠Α͏

Slide 2

Slide 2 text

©2018 Wantedly, Inc. Ӭా݈ਓ 8BOUFEMZ *OD&OHJOFFS !OHULOU !OHUL • Wantedly VisitͷΞϓϦΛ։ൃ͍ͯ͠·͢ • Swift/iOS։ൃΛ͸͡Ίͯ5ϲ݄͘Β͍ • ͦͷલ͸Rails, React, Reduxͱ͔΢Σϒͷ։ൃΛ΍͍ͬͯͨਓ • Potatotips͸લճʹଓ͖2ճ໨ ☺

Slide 3

Slide 3 text

©2018 Wantedly, Inc. XcodeͷςϯϓϨʔτػೳ
 ࢖ͬͨ͜ͱ͋Γ·͔͢ʁ

Slide 4

Slide 4 text

©2018 Wantedly, Inc. ҰൠʹɺςϯϓϨʔτػೳ͸
 ڞ௨ͷهड़Λॻ͔ͣʹࡁΉͷͰੜ࢈త

Slide 5

Slide 5 text

©2018 Wantedly, Inc. ΋ͪΖΜɺ
 ϓϩτίϧΤΫεςϯγϣϯ
 ίʔυࣗಈੜ੒
 ͳͲίʔυʹΑΔڞ௨ԽʹΑͬͯهड़ྔΛ
 ݮΒ͢͜ͱ͕લఏͰɺ
 ࢒Δஆ͔ຯ͕ςϯϓϨʔτ

Slide 6

Slide 6 text

©2018 Wantedly, Inc. XcodeͰ͸Ͳ͏ͳͷ͔ʁ

Slide 7

Slide 7 text

©2018 Wantedly, Inc. How to use Xcode template New File FIle > New > File…⌘N͔Β৽ن࡞੒͢Δͱ͖ʹબ΂ Δɻ

Slide 8

Slide 8 text

©2018 Wantedly, Inc. How to use Xcode template File Template Library XcodeͷӈԼʹ͋Δ΍ͭɺ͔͜͜Βυϥοάͯ͠ࠨ ΧϥϜͷσΟϨΫτϦ(Project Navigator)ʹυϩο ϓ͢Δͱ࡞੒Ͱ͖Δɻ

Slide 9

Slide 9 text

©2018 Wantedly, Inc. Αͦ͞͏Ͱ͢Ͷʂ

Slide 10

Slide 10 text

©2018 Wantedly, Inc. ͨͩ͠ɺΧελϜͰ௥Ճ͢Δํ๏΍
 ϓϩδΣΫτͰڞ༗͢Δํ๏͸ɺ
 ެࣜͷυΩϡϝϯτ͕ͳ͍ͨΊ ෼͔ΓͮΒ͍…

Slide 11

Slide 11 text

©2018 Wantedly, Inc. ͔͠΋ɺProject΍WorkspaceͰ
 ڞ༗͢Δ࢓૊Έ͸ఏڙ͞Ε͍ͯͳ͍

Slide 12

Slide 12 text

©2018 Wantedly, Inc. ڞ༗͢Δ࢓૊ΈΛ࡞Δ

Slide 13

Slide 13 text

©2018 Wantedly, Inc. 1. ৽ن௥Ճ:
 ϓϦηοτͰ༻ҙ͞Ε͍ͯΔ΋ͷΛίϐϖͯ͠ ࡞੒ 2. ڞ༗ํ๏:
 ϦϙδτϦʹνΣοΫΠϯͯ͠ɺ
 ద੾ͳ৔ॴʹϦϯΫ͢ΔεΫϦϓτΛॻ͘ ΍Δ΂͖͜ͱ

Slide 14

Slide 14 text

©2018 Wantedly, Inc. ϓϦηοτͷςϯϓϨʔτ(Swift File)Λ
 ϦϙδτϦʹίϐʔͯ͠௥Ճ A"QQMJDBUJPOT9DPEFBQQ$POUFOUT%FWFMPQFS-JCSBSZ9DPEF 5FNQMBUFT'JMFa5FNQMBUFT4PVSDF4XJGUa'JMFYDUFNQMBUFA

Slide 15

Slide 15 text

©2018 Wantedly, Inc.

Slide 16

Slide 16 text

©2018 Wantedly, Inc. ___FILEBASENAME___.swift

Slide 17

Slide 17 text

©2018 Wantedly, Inc. TemplateInfo.plist

Slide 18

Slide 18 text

©2018 Wantedly, Inc. ςϯϓϨʔτϑΝΠϧΛ
 ద੾ͳ৔ॴʹ഑ஔ͢Δ
 εΫϦϓτΛॻ͘

Slide 19

Slide 19 text

©2018 Wantedly, Inc. ద੾ͳ৔ॴ A)0.&-JCSBSZ%FWFMPQFS9DPEF5FNQMBUFTA

Slide 20

Slide 20 text

©2018 Wantedly, Inc. ೉͍͠ʂ

Slide 21

Slide 21 text

©2018 Wantedly, Inc. #!/bin/bash project_template_dir=$(cd $(dirname ${BASH_SOURCE:-$0})/../Templates; pwd) global_template_dir="$HOME/Library/Developer/Xcode/Templates" global_project_template_dir="$global_template_dir/visit-ios" function main() { prepare link_project_to_global echo "" echo "Installed✨ " echo "" show_instruction } function prepare() { if [ ! -e $global_template_dir ]; then mkdir -p $global_template_dir echo "+ Created template directory: $global_template_dir" fi } function link_project_to_global() { if [ -e "$global_project_template_dir" ]; then echo "Alread linked. $global_project_template_dir" echo "" show_instruction exit 1 fi ln -s $project_template_dir $global_project_template_dir echo "+ Linked to $global_project_template_dir" } function show_instruction() { echo "You can use it from \"File Template Library\"." echo "" echo " Xcode > View > Utilities > Show File Template Library" echo "" } main Install-template

Slide 22

Slide 22 text

©2018 Wantedly, Inc. ͋ͱ͸ΈΜͳʹ࣮ߦͯ͠΋Β͏͚ͩʂ

Slide 23

Slide 23 text

©2018 Wantedly, Inc. ΊͰͨ͠ɺΊͰͨ͠ʂ ✨

Slide 24

Slide 24 text

©2018 Wantedly, Inc. Μɺͪΐͬͱ଴ͬͯ

Slide 25

Slide 25 text

©2018 Wantedly, Inc. ͜Ε৽͘͠ςϯϓϨʔτ௥Ճ͢Δͷ
 ΊΜͲ͘͘͞ͳ͍ʁ

Slide 26

Slide 26 text

©2018 Wantedly, Inc. ଞͷϓϩδΣΫτͰ
 ࠶ݱͮ͠Β͍Α͏ͳ…

Slide 27

Slide 27 text

©2018 Wantedly, Inc. ͱ͍͏͜ͱͰɺίϚϯυʹ͠·ͨ͠

Slide 28

Slide 28 text

©2018 Wantedly, Inc. “xcode-template” ςϯϓϨʔτͷ࡞੒ͱڞ༗Λ؆୯ʹ IUUQTHJUIVCDPNOHULYDPEFUFNQMBUF

Slide 29

Slide 29 text

©2018 Wantedly, Inc. $ brew install ngtk/tools/xcode-template )PNFCSFXͰΠϯετʔϧͰ͖·͢ IUUQTHJUIVCDPNOHULYDPEFUFNQMBUF

Slide 30

Slide 30 text

©2018 Wantedly, Inc. $ xctemplate g UIViewController ςϯϓϨʔτΛ࡞੒ͯ͠ɺϓϩδΣΫτ಺ʹ഑ஔ
 IUUQTHJUIVCDPNOHULYDPEFUFNQMBUF

Slide 31

Slide 31 text

©2018 Wantedly, Inc. $ xctemplate link 9DPEFͰར༻Մೳʹ͢Δ
 IUUQTHJUIVCDPNOHULYDPEFUFNQMBUF

Slide 32

Slide 32 text

©2018 Wantedly, Inc.

Slide 33

Slide 33 text

©2018 Wantedly, Inc. ੋඇɺ࢖ͬͯΈ͍ͯͩ͘͞

Slide 34

Slide 34 text

©2018 Wantedly, Inc. ·ͱΊ

Slide 35

Slide 35 text

©2018 Wantedly, Inc. 1. ςϯϓϨʔτΛ࢖ͬͯޮ཰Խ͠Α͏ • ͦͷલʹίʔυͰͰ͖Δڞ௨Խ͸΍Ζ͏ʂ 2. νʔϜͰڞ༗͠Α͏ 3. xcode-templateͰ؆୯ʹ࡞੒ɾڞ༗Ͱ͖ΔΑ • https://github.com/ngtk/xcode-template • ࠓ೔࡞ͬͯ·ͩࡶͳͱ͜Ζ͕ଟ͍ͷͰɺ͜ͷޙ΋͏ͪΐͬͱؤுΓ·͢ ·ͱΊ

Slide 36

Slide 36 text

©2018 Wantedly, Inc. Thank you! ☺