Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kotlin製自作OSSの普及戦略 ~kotlin-csvの実例を元に~ @Kotlin Fe...

doyaaaaaken
December 10, 2022

Kotlin製自作OSSの普及戦略 ~kotlin-csvの実例を元に~ @Kotlin Fest 2022

Kotlin Fest 2022(2022/12/10)にて発表した『Kotlin製自作OSSの普及戦略 ~kotlin-csvの実例を元に~』の登壇資料です。

doyaaaaaken

December 10, 2022
Tweet

More Decks by doyaaaaaken

Other Decks in Programming

Transcript

  1. ໨࣍  લஔ͖  ݱگ  ։ൃલʢاըʣ  ॳظ։ൃʢϦϦʔεલʣ 

    ॳճϦϦʔε௚ޙ  ϦϦʔεޙͷܧଓ։ൃ  ૯ׅ 
  2. ࣗݾ঺հ 🏢࢓ࣄ w גࣜձࣾεϚʔτϥ΢ϯυ$50૑ۀϝϯόʔ w αʔόαΠυ,PUMJOʢ,UPSʣɾ7VF+4Λීஈॻ͍͍ͯ·͢ w ,PUMJOྺ͸೥΄Ͳ 🤝044ɾίϛϡχςΟ׆ಈ w

    LPUMJODTWͷ࡞ऀʢ˞࣌఺Ͱ⭐ʣ w ,UPSɾ&YQPTFEɾ,PUFTU౳ͷίϯτϦϏϡʔλ w 4FSWFS4JEF,PUMJO.FFUVQͷΦʔΨφΠβʔ  @doyaaaaaken
  3. ొஃऀͷݸਓతΠϝʔδ  झຯ044 Ψν044 ɾ։ൃ͓ΑͼϝϯςφϯεʹϓϥΠϕʔτ ɹͷଟେͳ࣌ؒΛඅ΍͍ͯ͠Δ ɾ044ͷର৅ͱͳΔ໰୊ྖҬͷղܾࡦʹ ɹ͍ͭͯڧ͍ϏδϣϯΛ͍࣋ͬͯΔ ɾϢʔβ΍ίϯτϦϏϡʔλ΁ͷαϙʔτ ɹ΋೤৺

    ɾϓϥΠϕʔτͷ࣌ؒΛ͋Δఔ౓අ΍͍ͯ͠Δ 
 ɾଞͷਓʹ࢖ͬͯ΋Β͏ͨΊͱ͍͏ΑΓ΋ɺ 
 ɹ৽ٕज़ͷ࣮ݧͳͲٕज़తϩϚϯΛٻΊͯ 
 ɹࣗ෼ࣗ਎ͷٕज़ݚᮎͷͨΊʹ࡞Δ ˞આ໌ͷ౎߹্ɺେมࡶͳҰൠԽΛ͍ͯ͠·͕͢͝༰͍ࣻͩ͘͞N @@ N
  4. ͜ͷൃදͷྲྀΕ   
 ,PUMJO'FTU ࠒ 
 ࣗ࡞Λܾҙ Լ० 


    ϦϦʔε🚀 ݱگ ։ൃલ 
 ʢاըʣ ॳظ։ൃ 
 ʢϦϦʔεલʣ ॳճϦϦʔε 
 ௚ޙ ϦϦʔεޙͷ 
 ܧଓ։ൃ ૯ׅ
  5. $47ͷ3'$  Λ֬ೝ ͨͬͨϖʔδͰ͔ͳΓγϯϓϧͳ࢓༷ 
 
 ௒جຊతͳϧʔϧ͕͚͔ͭͩ͠ఆΊΒΕ͍ͯͳ͍ w ֤ϑΟʔϧυ͸ΧϯϚͰ۠੾ΒΕΔ w

    ֤ߦͷվߦίʔυ͸$3-' w ϔομʔߦ΋೚ҙͰؚΊΒΕΔ w ֤ྻͷϑΟʔϧυ਺͸ಉ͡ w ʜFUD  $473'$IUUQTEBUBUSBDLFSJFUGPSHEPDQEGSGDQEG
  6. ਏ᫤ͳ'# $47ʹ௒ৄͦ͠͏ͳਓ͔Β จࣈ௒ʢ"༻ࢴຕ෼ʣͷਏ᫤ͳίϝϯτ͕😨  طଘͷ5SJFEBOE5SVF੒ख़ͨ͠$47ϥΠϒϥϦͷ্ʹ࢖͍΍͍͢%4-ΛॏͶͨ͜ͱʹ ?ɻ $47͸ඍົͰ͢ ඍົͳͷ͸࢓༷ͷܽ೗ͱʮݱ৔ʯͰͷಛఆԽ΁ͷద߹ੑͷܽ೗ͳͷͰҾ༻͠·͢ ɻࢲ͸ɺ$47ʹڞ௨͢Δʮݱ࣮ੈքʯͰͷࠔ೉ͷൣғΛաখධՁͤͣɺ͜ΕΒͷݱ࣮໰୊Λѻ͏ͨΊʹ੒ ௕ͨ͠ϥΠϒϥϦΛʮϢʔβʔʹߴػೳͳϥΠϒϥϦ͸ඞཁͳ͍ʯͱҰׅΓʹ͠ͳ͍͜ͱΛ͓קΊ͠·͢ɻ

    ໰୊͸݁߹͞ΕΔ܏޲͕͋Γ·͕͢ɺԿ͕ʮ೿ख͚ͩͲෆཁͳʯػೳͳͷ͔͕໌Β͔Ͱ͸ͳ͍ͷʹରͯ͠ɺʮ?͋ͳͨ͸ຊ౰ʹͳͥ͜Μͳ͜ͱΛ͠ͳ͚Ε͹ͳΒͳ͔ͬͨͷ͔஌Γͨ͘ͳ͍Ͱ͠ΐ͏Ͱ΋ࢲΛ৴ͯ͡ɺ ͋ͳͨ͸ͦΕΛඞཁͱ͍ͯ͠Δʯͱ͍͏Α͏ͳ໰୊Ͱ͢ɻ ࢲ͸ɺ͋ͳͨͷϥΠϒϥϦ͕ެ։͍ͯ͠Δ෇ՃՁ஋ʢʮγϯϓϧ%4-Ϣʔεέʔεʯʣʹয఺Λ౰ͯΔ͜ͱΛ͓קΊ͠·͕͢ɺ੒ख़ͨ͠ʢϓϥάΠϯՄೳͳʣ$47ϥΠϒϥϦʢෳ਺Մʣͷ্ʹͦΕΛϥοϓ͢Δ͜ͱ Λ͓קΊ͠·͢ɻ ͳͥϓϥΨϒϧͳͷ͔ʁωΠςΟϒʯͳσΟεϏδϣϯ͸ؔ࿈ੑ͕͋Γ·͕͢ɺ+7.্Ͱ΋ɺϓϩάϥϜ͕ՄೳͳݶΓσʔλͷγϦΞϥΠζύʔεσʔλϚοϐϯάͷͭͷʮϑΝϛϦʔʯʹݻࣥ͢Δཧ༝͕͋ Γ·͢ɻ ྫ͑͹ɺΧϥϜϔομͷσʔλϑΟʔϧυϓϩύςΟ໊΁ͷҰ؏ͨ͠Ϛοϐϯά΍ɺͦΕΒ͕૬ޓӡ༻Ͱ͖ΔΑ͏ʹ෺ࣄΛઃఆ͢ΔҰ؏ͨ͠ํ๏ͳͲͰ͢ɻ ྫ͑͹ɺ֎෦ఆٛͷ$47ϑΝΠϧΛಡΈॻ͖͠ͳ͚Ε͹ͳΒͳ͍ΞϓϦʹऔΓ૊ΜͰ͍·͢ɻ ࣮ࡍʹ͸547  ·ͨɺ͜ΕΒΛ,PUMJOΫϥεʹσʔλϚοϐϯάͯ͠ɺ಺෦ͷϏδωεϩδοΫ΍αʔυύʔςΟͷ πʔϧʢ(6*΍%#ͳͲʣʹެ։͢Δඞཁ͕͋Γ·͢ɻ Ϩίʔυ൪߸ʯͷΑ͏ͳίϥϜͷݟग़͠ͷΑ͏ͳʮ୯७ͳʯ΋ͷΛ࠷ޙ·ͰҰ؏࣏ͨ͠ྍΛड͚Δͷ͸ɺ৴͡ΒΕͳ͍΄Ͳͷۤ௧Ͱ͢ɻ ΋ͬͱඍົͳ໰୊547ϑΝΠϧ λϒDTW ͸Ҿ༻ූͰғ·Εͨ஋ΛؚΉ͔ɺؚ·ͳ͍͔ ϔομͷॱ൪͸໌Β͔ʹͳΔͷ͔ ಡΈࠐΈ࣌ʹॱ൪͕ڰ͍ͬͯΔ͜ͱΛݕग़Ͱ͖Δͷ͔ ॻ͖ࠐΈ࣌ʹ͸Ͳ͏͔ ಡ ΈऔΓͱॻ͖ࠐΈ͸ಉ͡಺༰Λੜ੒͠ͳ͚Ε͹ͳΒͳ͍ͷ͔ɺͦΕͱ΋୯ʹ࿦ཧతʹಉ౳ͷ಺༰Λੜ੒͠ͳ͚Ε͹ͳΒͳ͍ͷ͔ʁεΩʔϚ͸σʔλͷݕূʹ࢖༻Ͱ͖Δ͔ DTWTDIFNBͷΑ͏ʹ ɺΧϥϜ໊Ͱσʔλ ΛݕࡧͰ͖Δ͔ ௥Ճ΍ܽམͨ͠ΧϥϜ͸͋Γ·͔͢ʁۭͷ஋͸ψϧ·ͨ͸Ͱ͔͢ʁ஋͸ೖྗ͞Ε͍ͯ·͔͢  ແޮͳ਺஋͸ڋ൱͞ΕΔ͔౉͞ΕΔ͔ ɺΤεέʔϓ͸࢖༻͞Ε͍ͯ·͔͢ ࢖༻͞Ε͍ͯΔ৔߹ɺ ͲͷΑ͏ͳελΠϧͰ͔͢ ຒΊࠐ·Εͨվߦ͸ଘࡏ͢Δ͔ʁ ͜ΕΒ͸໰୊ͷҰ෦ʹա͗·ͤΜɻओཁͳ$47ϥΠϒϥϦͷνΣοΫΠϯཤྺΛݟΕ͹ɺগͣͭ͠ղܾ͞Ε͖ͯͨ໰୊ͷྺ࢙ΛݟΔ͜ͱ͕Ͱ͖·͢ɻ ϥΠϒϥϦ࡞੒ऀͷࢹ఺Ͱ͸൚༻తͳέʔεͰ͸ɺಠࣗͷύʔαΛॻ͔ͳ͍͜ͱΛڧ͓͘קΊ͠·͢ɻ ϥΠϒϥϦͷফඅऀͷ؍఺͔Β͸ɺݹ͍੒ख़ͨ͠ڞಉσʔλϕʔεʹج͍͍ͮͯͳ͍$47ϥΠϒϥϦʹ͸͔ۙͮͳ͍Α͏ʹ͍ͨ͠ͱࢥ͍·͢෇ՃՁ஋͕Ͳ͏Ͱ͋ΕϦεΫΛෛ͏Ձ஋͸͋Γ·ͤΜɻ աڈ ೥ͷؒʹɺʮ͜ΕͰे෼ͩΑʯͱ͍͏༮ஓͳࢼΈ͕Կ౓΋ߦΘΕ͖ͯ·ͨ͠  ࢲ͸ଟ͘ͷ$47ϥΠϒϥϦ͕σʔλϚοϐϯάϥΠϒϥϦʹ΋ؔ࿈͍ͯ͠Δ͜ͱΛൃݟ͠·ͨ͠ɻࢲ͸ɺDTWͷಡΈࠐΈ͕σʔλϕʔεΞΫηε΍υΩϡϝϯτͷղੳʹ࢖༻͞ΕΔͷͱಉ͡Α͏ͳ࢖༻ྫ͕͋Δͱߟ ͍͑ͯ·͢DTWͷڞ௨ͷʮίΠϯͷཪଆʯͰ͢ɻͦͷ݁Ռɺྫ͑͹+BDLTPOσʔλόΠϯσΟϯά ΦϒδΣΫτϚούʔ  +BDLTPO$47Ϟδϡʔϧɺ·ͨ͸4JNQMF'MBU.BQQFSKECDDTW͢΂ͯͷؔ࿈͢Δ Ϛοϐϯά΍ڞ௨ͷσʔλϚοϐϯάϥΠϒϥϦ KECDϕʔεͷϚούʔͷΑ͏ͳ ʹ౷߹͞Εͨ΋ͷʹͳΓ·͢ɻ ϓϥάΠϯՄೳͳ$47ϥΠϒϥϦΛ࢖༻͍ͯ͠Δ৔߹ɺϓϥάΠϯՄೳͳΦϒδΣΫτσʔλϚούʔͱʮϖΞϦϯάʯͰ͖ΔΑ͏ʹ͍ͨ͠ͱࢥ͏͔΋͠Εͳ͍ͷͰɺ͜ͷ఺ʹ஫ҙ͍ͯͩ͘͠͞ɻ͜ΕʹΑΓɺෳ ਺ͷγϦΞϥΠθʔγϣϯͰಈ࡞͢Δڞ௨ͷΫϥεఆٛͱΞϊςʔγϣϯηοτΛ࢖༻͢Δ͜ͱ͕Ͱ͖·͢ɻ ʢ˞%FFQ-ແྉ൛༁ʣ ※ ҰݴͰ͍͏ͱʮCSVͱ͍͏՝୊ΛաখධՁ͗͢͠ɻ੒ख़͍ͯ͠ͳ͍ϥΠϒϥϦ͸࢖͍ͨ͘ͳ͍ʯͱ͍͏ҙݟ
  7. ίϯτϦϏϡʔλʹର͢Δײ૝ w ͨ·ʹܹࢗ͘͢͝ʹͳΔ*TTVFΛ΋Β͑Δ w ΋ͷ͘͢͝త֬ͳҙݟΛ͘ΕΔਓ΋ w ࣗ਎͕૝ఆ͍ͯ͠ͳ͔ͬͨϢʔεέʔεʹ͍ͭͯػೳཁ๬Λ͘ΕΔਓ΋ 
 w ίϯτϦϏϡʔτ׻ܴʂͨͩʜ

    w 13ɾ*TTVFΛΘ͔Γ΍͘͢ॻ͍ͯ΄͍͠ͱײ͡Δ͜ͱ͕݁ߏଟ͍ w 13ͷཻ౓͕େ͖͗ͯ͢ࠔΔ͜ͱ΋݁ߏ͋Δ w ςΫχΧϧαϙʔτ͸ରԠ֎🙅