Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
RuffではじめるPython開発 / Python Development with Ruff
Search
naoya_s
October 28, 2023
Programming
81
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
430
AWS SAMをさわってみた話 / Try AWS SAM
suginao
0
55
全国在宅勤務制度のすゝめ / Practice of National Telecommuting System
suginao
1
27
サーバーレスなAPIサービスの全容 / All of the serverless API services
suginao
0
1.4k
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineers to Be Kind to People
suginao
0
41
Other Decks in Programming
See All in Programming
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
130
Are APIs Still Relevant in the AI Era?
soyuka
0
390
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
430
Intent as Code
shoppingjaws
6
1.1k
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.2k
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
570
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
310
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
460
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
150
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
370
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
200
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Claude Code のすすめ
schroneko
67
230k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Done Done
chrislema
187
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Automating Front-end Workflow
addyosmani
1369
210k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Making the Leap to Tech Lead
cromwellryan
135
10k
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
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ライフを!! 😀🐍