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
Linterを使って快適なチーム開発をしよう!
Search
akatsuki174
February 20, 2016
Technology
1
570
Linterを使って快適なチーム開発をしよう!
Linterを使って快適なチーム開発をしよう!
akatsuki174
February 20, 2016
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
510
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
800
私が変えてきたこと、変えなかったこと
akatsuki174
2
980
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
250
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
130
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
6k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
500
オフライン勉強会ぼっち対策
akatsuki174
1
690
Xcode 15の新機能
akatsuki174
0
2.9k
Other Decks in Technology
See All in Technology
Cosmos World Foundation Model Platform for Physical AI
takmin
0
980
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
390
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
130
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
520
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
0
320
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1.1k
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.6k
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
2
210
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
220
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
130
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Designing for humans not robots
tammielis
254
26k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
What's in a price? How to price your products and services
michaelherold
247
13k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Transcript
LinterΛͬͯ շదͳνʔϜ։ൃΛ͠Α͏ʂ @akatsuki174
ࣗݾհ • ιϑτΣΞձࣾΤϯδχΞ(2) άϩʔεϋοΧʔ → WebΤϯδχΞ → iOSΤϯδχΞ • Twitter,
Qiita, SlideShare, Github →akatsuki174
νʔϜͰͷ։ൃ ḿͬͯ·͔͢ʔʁʁ
νʔϜ։ൃͬͯେมͰ͢ΑͶ
ΈΜͳίʔυΛॻ͘ͱ͖ͷ Ϋηҧ͍·͢ɻ
A͞Μ B͞Μ
͋͋͋͋͋͋͋ʂʂʂ (ůʆ˚´)ů ᵢ:ŋ'∵:.ᵲᵲ:ŋ'.:∵
ͦΜͳ͋ͳͨʹ࿕ใʂ
ίʔυͷॻ͕ࣜҰఆͷϧʔϧ͔Β ֎Ε͍ͯͨ࣌ʹܯࠂɾΤϥʔΛ ग़ྗͯ͘͠ΔϥΠϒϥϦ͕͋Γ·͢ʂ
ͦΕ͕ɺ SwiftLintʂ
SwiftLintͱ “A tool to enforce Swift style and conventions, loosely
based on GitHub's Swift Style Guide.” https://github.com/realm/SwiftLintΑΓൈਮ →ίʔυ͕نଇʹଇͬͨͷʹ ɹͳ͍ͬͯΔ͔ΛνΣοΫͯ͘͠ΕΔπʔϧɻ
SwiftLintͱ
SwiftLintͱ
SwiftLintͱ
ಋೖྫ • HomebrewͰΠϯετʔϧ͢Δ • LintΛ࣮ߦ͢ΔϓϩδΣΫτʹRunScript Λॻ͘ • .swiftlint.ymlʹઃఆΛॻ͘ Ҏ্ʂʂʂ
.swiftlint.ymlهड़ྫ
ϧʔϧྫհ
todo TODO, FIXMEͳ͘͢ʂ
valid_docs υΩϡϝϯτਖ਼͘͠ॻ͖·͠ΐ͏
force_cast • ڧ੍castμϝɺઈର
force_try • ڧ੍tryμϝɺઈର
ΤϥʔϨϕϧͷΧελϚΠζ force_cast, force_tryΛ ΤϥʔͰͳ͘ܯࠂʹ͢Δ
file_length 401ʙ1000ߦ ʹ ܯࠂ 1001ߦҎ্ ʹ ϏϧυΤϥʔ
line_length 101ʙ200จࣈ ʹ ܯࠂ 201จࣈҎ্ ʹ ϏϧυΤϥʔ
ͷΧελϚΠζ ௐɺΤϥʔϨϕϧௐՄೳ
control_statement • ݅ΛғΉʮ( )ʯ֎͠·͠ΐ͏
ڧ͍ຯํɿautocorrect Ұ෦ͷϧʔϧ $ swiftlint autocorrect Λ࣮ߦ͢ΔͱࣗಈͰमਖ਼ͯ͘͠ΕΔʂ ͨͩ͠όοΫΞοϓऔ͓͖ͬͯ·͠ΐ͏ʂ
σϞ
Ҏ্ɻ ͜ΕͰ͋ͳͨͤʹͳΕ·͢ɻ
ͥͻSwiftLintΛ ಋೖͯ͠Έ͍ͯͩ͘͞ʂ
SwiftLintͷࢿྉ • ެࣜ https://github.com/realm/SwiftLint • ؤுͬͯॻ͍ͨࢲͷQiitaͷهࣄ http://qiita.com/search? utf8=✓&sort=rel&q=user %3Aakatsuki174+swiftlint etc…
͝੩ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ