ํ”ผ๋“œ๋กœ ๋Œ์•„๊ฐ€๊ธฐ
I Built a Free VS Code Extension for Odoo Developers ๐Ÿ
Dev.toDev.to
Frontend

20๊ฐœ ์ด์ƒ์˜ Snippets ๊ธฐ๋ฐ˜ Odoo Boilerplate ์ž‘์„ฑ ์ž๋™ํ™”

I Built a Free VS Code Extension for Odoo Developers ๐Ÿ

Aman Kumar Singh2026๋…„ 6์›” 28์ผ3๋ถ„beginner

Context

Odoo ๋ชจ๋ธ ๋ฐ XML ๋ทฐ ์ •์˜ ์‹œ ๋ฐœ์ƒํ•˜๋Š” ๋ฐ˜๋ณต์ ์ธ Boilerplate ์ฝ”๋“œ ์ž‘์„ฑ์œผ๋กœ ์ธํ•œ ๊ฐœ๋ฐœ ํšจ์œจ ์ €ํ•˜. ์ •ํ˜•ํ™”๋œ ํŒจํ„ด์˜ ๋ฐ˜๋ณต ์ž…๋ ฅ ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ถˆํ•„์š”ํ•œ ์‹œ๊ฐ„ ๋‚ญ๋น„ ๋ฐ ํœด๋จผ ์—๋Ÿฌ ๊ฐ€๋Šฅ์„ฑ ์ƒ์กด.

Technical Solution

  • VS Code Extension API๋ฅผ ํ™œ์šฉํ•œ Snippets ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ํ†ตํ•œ ์ฝ”๋“œ ์ƒ์„ฑ ์ž๋™ํ™”
  • Python ํŒŒ์ผ ๋‚ด ํŠน์ • Prefix(์˜ˆ: omodel, ocompute) ์ž…๋ ฅ ์‹œ ์ •ํ•ด์ง„ ๊ตฌ์กฐ์˜ ํด๋ž˜์Šค์™€ ๋ฉ”์„œ๋“œ ์ฆ‰์‹œ ์ƒ์„ฑ
  • XML ํŒŒ์ผ ๋‚ด ๊ตฌ์กฐ์  ํŒจํ„ด(์˜ˆ: oform, oinherit) ์ •์˜๋ฅผ ํ†ตํ•œ ๋ณต์žกํ•œ View ๊ณ„์ธต ๊ตฌ์กฐ ์‹ ์† ๊ตฌ์ถ•
  • VS Code IntelliSense์™€ ์—ฐ๋™ํ•˜์—ฌ Prefix ์ž…๋ ฅ ์‹œ ๊ฐ€์šฉํ•œ Snippets ๋ชฉ๋ก์„ ์ œ๊ณตํ•˜๋Š” UX ์„ค๊ณ„
  • ์ปค์„œ ์œ„์น˜ ์ง€์ •(Cursor Positioning) ๋กœ์ง์„ ํ†ตํ•œ ์ƒ์„ฑ ํ›„ ์ฆ‰์‹œ ํŽธ์ง‘ ๊ฐ€๋Šฅํ•œ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ๊ตฌํ˜„
  • Open Source ๊ธฐ๋ฐ˜์˜ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ Snippets ์ €์žฅ์†Œ ๊ตฌ์กฐ ์ฑ„ํƒ์œผ๋กœ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ์—ฌ ๊ฐ€๋Šฅ์„ฑ ํ™•๋ณด

- ๋ฐ˜๋ณต์ ์ธ ๋„๋ฉ”์ธ ํŠนํ™” Boilerplate ๋ฐœ์ƒ ์‹œ IDE Snippets ํ™•์žฅ ๊ธฐ๋Šฅ ๊ฒ€ํ†  - ๋‹จ์ˆœ ํ…์ŠคํŠธ ์น˜ํ™˜์„ ๋„˜์–ด ์ปค์„œ ์œ„์น˜ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•œ ์ž…๋ ฅ ํ๋ฆ„ ์—ฐ์†์„ฑ ํ™•๋ณด - ๊ฐœ๋ฐœ์ž ๊ฒฝํ—˜(DX) ๊ฐœ์„ ์„ ์œ„ํ•œ Prefix ๋„ค์ด๋ฐ ๊ทœ์น™์˜ ์ผ๊ด€์„ฑ ์œ ์ง€

์›๋ฌธ ์ฝ๊ธฐ