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
Pancake with SourceKitten
Search
Satoshi Hachiya
January 27, 2016
Programming
0
500
Pancake with SourceKitten
・SourceKitten を使ってドキュメント自動生成
・(おまけ)Instagram へ写真をシェアするライブラリ
※パンケーキは関係ありません。
Satoshi Hachiya
January 27, 2016
Tweet
Share
More Decks by Satoshi Hachiya
See All by Satoshi Hachiya
iOS の HTTP キャッシュについて
jp_pancake
3
680
花嫁アプリを作った
jp_pancake
1
520
try! ReactorKit
jp_pancake
1
770
QR Code Recognition on iOS 11
jp_pancake
1
1.3k
WWDC Pre Party 2018 at Ebisu
jp_pancake
4
3.4k
try! Swift Tokyo 2018 Report
jp_pancake
1
510
try! Swift Tokyo 2018 Day 1 Opening
jp_pancake
0
860
What is `Swifty`?
jp_pancake
2
1.4k
danger-swift
jp_pancake
2
1.6k
Other Decks in Programming
See All in Programming
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
770
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.3k
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
520
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
200
AI活用のコスパを最大化する方法
ochtum
0
230
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
350
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
620
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
160
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
150
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
150
How to stabilize UI tests using XCTest
akkeylab
0
130
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
150
Featured
See All Featured
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
290
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
320
How to make the Groovebox
asonas
2
2k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
150
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Deep Space Network (abreviated)
tonyrice
0
93
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
Pancake with SourceKitten 2016.01.27 ؔϞόΠϧΞϓϦݚڀձ #10 Martha 1
ࣗݾհ @JPMartha_jp JPMartha 2
MarthaʢϚʔαʣ • ֨ಆՈͷ໊લͰڹ͖͕͍͍ͱࢥͬͯ ͍͡Ί·ͨ͠ɻ • ͨͩঁੑͷ໊લͩͱ͋ͱ͔ΒΓ·ͨ͠ɻ • ͝ཡͷͱ͓ΓΦδαϯͰ͢ɻ 3
ਆށ͔Βདྷ·ͨ͠ 4
ൃදͷ֓ཁ • SourceKitten ΛͬͯυΩϡϝϯτࣗಈੜ • ʢ͓·͚ʣInstagram ࣸਅΛγΣΞ͢ΔϥΠϒϥϦ 5
υΩϡϝϯτ ࣗಈੜπʔϧ ·͍ͩͯ͠ͳ͍Ͱ͕͢ݱঢ়ใࠂͰ͢ɻ 6
πʔϧΛάάΓ·ͨ͠ ͦ͏͍͏ͷ͢Ͱʹ͋Γ·͢ɻ 7
jazzy https://github.com/realm/jazzy • HTMLܗࣜͷϑΝΠϧΛੜ͠·͢ɻ ‣Markdown ܗࣜʹ͍ͨ͠Ͱ͢ɻ • ΦʔϓϯιʔεͰ͢ɻʢRubyʣ ‣Ruby Θ͔Γ·ͤΜɻ
8
ࣗྗͰ࡞Γ·͢ https://github.com/JPMartha/Pancake ʢԾʣ 9
ίʔυղੳ • ͡ΊࣗྗͰ͠·͕ͨ͠ෳࡶͰͨ͠ɻ • SourceKitten Λར༻͢Δ͜ͱʹ͠·ͨ͠ɻ ʢ jazzy SwiftLint
ར༻͍ͯ͠·͢ʣ ‣https://github.com/jpsim/SourceKitten ‣https://github.com/realm/jazzy ‣https://github.com/realm/SwiftLint 10
SourceKitten ͱ ͜Μͳ͜ͱ͕Ͱ͖·͢ɻʢઆ໌লུʣ
[{ "\/Users\/sathachie\/Pancake\/DemoApp\/DemoApp\/ViewController.swift" : { "key.substructure" : [ { "key.kind" :
"source.lang.swift.decl.class", "key.offset" : 174, "key.parsed_declaration" : "class ViewController: NSViewController", "key.namelength" : 14, "key.bodyoffset" : 208, "key.bodylength" : 385, "key.length" : 14, "key.name" : "ViewController", "key.typename" : "ViewController.Type", "key.parsed_scope.end" : 34, "key.usr" : "s:C7DemoApp14ViewController", "key.nameoffset" : 174, "key.inheritedtypes" : [ { "key.name" : "NSViewController" } ], "key.annotated_decl" : "<Declaration>class ViewController : <Type usr=\"c:objc(cs)NSViewController\">NSViewController<\/Type><\/ Declaration>", "key.accessibility" : "source.lang.swift.accessibility.internal", "key.substructure" : [ { "key.kind" : "source.lang.swift.decl.function.method.instance", 12
ߏ 13 SourceKitʢίʔυղੳɾύʔεʣ HimotokiʢJSONσίʔυʣ ࣗ࡞πʔϧʢMarkdownੜʣ SourceKittenʢJSONੜʣ
Markdown ܗࣜͰग़ྗ 14
ݱঢ়ใࠂ Himotoki ΤϥʔͰࣦഊͨ͠ͷͰ… 15
Promise.swift https://github.com/yashigani/Promise 16
Promise.md
State.md Result.md
͜͜ʹஔ͍͍ͯ·͢ https://gist.github.com/JPMartha/49b3215fb5d99bdf9aea 19
͓·͚ 20
Instagram ࣸਅΛ γΣΞ͢ΔϥΠϒϥϦ https://github.com/JPMartha/EggsBenedict 21
ΦʔϓϯιʔεͰ͢ ͨͩ͠ Issues ͯࣗ͢ͷϝϞͰ͢ɻ 23
ࢀߟ • SourceKitten https://github.com/jpsim/SourceKitten • jazzy https://github.com/realm/jazzy • SwiftLint https://github.com/realm/SwiftLint
• Swift SourceKitΛͬͯSwiftιʔείʔυΛϋΠϥΠτ͢Δ http://qiita.com/gfx/items/7f47e98762ecf6f53af5 • SourceKittenʹ͍ͭͯ http://www.slideshare.net/ssusera7b1a1/source-kitten 24
Ҏ্ ͋Γ͕ͱ͏͍͟͝·ͨ͠ 25