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
RuffではじめるPython開発 / Python Development with Ruff
Search
naoya_s
October 28, 2023
Programming
70
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RuffではじめるPython開発 / Python Development with Ruff
naoya_s
October 28, 2023
More Decks by naoya_s
See All by naoya_s
静的解析ツールの刷新に向けた取り組み
suginao
1
410
AWS SAMをさわってみた話 / Try AWS SAM
suginao
0
47
全国在宅勤務制度のすゝめ / Practice of National Telecommuting System
suginao
1
24
サーバーレスなAPIサービスの全容 / All of the serverless API services
suginao
0
1.4k
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineers to Be Kind to People
suginao
0
37
Other Decks in Programming
See All in Programming
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
200
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
410
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
210
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
240
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
160
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.7k
Performance Engineering for Everyone
elenatanasoiu
0
260
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
110
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
190
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
130
act1-costs.pdf
sumedhbala
0
180
Featured
See All Featured
Crafting Experiences
bethany
1
210
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
A Soul's Torment
seathinner
6
3k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Bash Introduction
62gerente
615
220k
We Are The Robots
honzajavorek
0
270
Prompt Engineering for Job Search
mfonobong
0
370
Mind Mapping
helmedeiros
PRO
1
280
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Done Done
chrislema
186
16k
Transcript
Ruffで はじめる Python開発 2023/10/28 PyCon APAC 2023 懇親会LT
Naoya Sugita 🏢 : ZOZO, inc. 🛠 : AWS /
Serverless / Python 😘 : Anime / Travel 🏠 : Miyazaki : @sugich17 Who are you?(お前誰よ)
ここから日本語
おしながき • Ruffの紹介 • Ruffの魅力 • Ruffのこれから
Ruffの紹介
• Rust製のPython Linter • リリースは2022年8月末👉 (👇邂逅はリリースから数日後) Ruffの紹介 https://github.com/astral-sh/ruff/releases/tag/v0.0.18
Ruffの紹介 〜特徴〜 https://docs.astral.sh/ruff/ • ⚡ 既存のリンターよりも 10 ~ 100 倍高速
• 🐍 pip経由でインストール可能 • 🛠 pyproject.tomlサポート • 🤝 Python 3.12 との互換性 • 📦 組み込みのキャッシュにより、変更されていないファイルの再分析を回避します • 🔧 自動的にエラー修正のサポート (例: 未使用のインポートを自動的に削除) • 📏 700 を超える組み込みルール • ⚖ 組み込みの Flake8 ルールセットとほぼ同等 • 🔌 flake8-bugbearをはじめとする、数十種のFlake8プラグインをネイティブ再実装 • ⌨ VS Codeなどのファーストパーティエディターへの統合をサポート • 🌎 モノリポに適しており、階層的およびカスケード構成を備えています
Ruffの紹介 〜特徴〜 https://docs.astral.sh/ruff/ • ⚡ 既存のリンターよりも 10 ~ 100 倍高速
• 🐍 pip経由でインストール可能 • 🛠 pyproject.tomlサポート • 🤝 Python 3.12 との互換性 • 📦 組み込みのキャッシュにより、変更されていないファイルの再分析を回避します • 🔧 自動的にエラー修正のサポート (例: 未使用のインポートを自動的に削除) • 📏 700 を超える組み込みルール • ⚖ 組み込みの Flake8 ルールセットとほぼ同等 • 🔌 flake8-bugbearをはじめとする、数十種のFlake8プラグインをネイティブ再実装 • ⌨ VS Codeなどのファーストパーティエディターへの統合をサポート • 🌎 モノリポに適しており、階層的およびカスケード構成を備えています
Ruffの魅力
ついつい増えがちな設定ファイルが、 今一つに・・・・😀 Ruffの魅力 〜pyproject.tomlサポート〜 ツール 設定ファイル flake8 .flake8, setup.cfg isort
.isort.cfg black pyproject.toml ↑LINEヤフーさんのブースより
Ruffの魅力 〜充実した機能〜 • エディタへの統合 ◦ VSCodeの拡張機能 ◦ LSPをサポートする任意のエディタで利用可 • GitHub
Actionsをサポート • pre-commitをサポート
Ruffの魅力 〜卓越したパフォーマンス〜 開発中にLinterの実行結果を待つことが無くなり、開発者体験も良くなる😇 https://docs.astral.sh/ruff/
それって早いの??🤔
Ruffの魅力 〜パフォーマンス(イメージ)〜 両津勘吉の早打ち(0.009s)< RuffのLint(0.29s)< のび太の早寝(0.93s) http://meteolog.com/1875/ https://note.com/shatoru0619/n/neee3d31f983d
Ruffのこれから
Ruffのこれから ついにBlackのサポート!!
良いPythonライフを!! 😀🐍