مایکروسافت به تازگی پیشنمایش عمومی افزونه جدید PostgreSQL را برای ویرایشگر کد ویژوال استودیو (VS Code) منتشر کرده است. این افزونه با هدف سادهسازی مدیریت پایگاه داده و جریانهای کاری توسعه PostgreSQL، به برنامهنویسان کمک میکند تا بدون ترک محیط کدنویسی محبوب خود، به مدیریت اشیاء پایگاه داده، پیشنویس پرسوجوها با کمک هوش مصنوعی و استفاده از عامل گیتهاب کوپایلوت (GitHub Copilot) اختصاصی @pgsql بپردازند.
پاسخ به چالشهای توسعهدهندگان
بر اساس گزارشها، توسعهدهندگان با چالشهای متعددی در مدیریت زمان مواجه هستند؛ نظرسنجی توسعهدهندگان StackOverflow در سال 2024 نشان میدهد که 41 درصد از آنها با جابهجایی بین وظایف (task-switching) دستوپنجه نرم میکنند. همچنین، گزارش Stripe Developer Coefficient در همان سال حاکی از آن است که توسعهدهندگان تا 50 درصد از زمان خود را صرف اشکالزدایی (debugging) و عیبیابی (troubleshooting) کد و پایگاه داده میکنند. فقدان ابزارهای یکپارچه که مدیریت پایگاه داده و توسعه برنامههای کاربردی را متحد کند، این ناکارآمدیها را تشدید میکند. افزونه PostgreSQL برای VS Code با ادغام ابزارهای پایگاه داده Postgres و عامل @pgsql گیتهاب کوپایلوت، پاسخی به این چالشها است. این افزونه با قابلیتهایی مانند احراز هویت Entra ID برای مدیریت متمرکز هویت و ادغام عمیق با Azure Database for PostgreSQL، به توسعهدهندگان امکان میدهد تا به جای درگیر شدن با جریانهای کاری پراکنده، بر ساخت برنامههای نوآورانه تمرکز کنند.
ویژگیهای کلیدی برای افزایش بهرهوری
پیشنمایش عمومی افزونه PostgreSQL برای VS Code مجموعهای از قابلیتهای قدرتمند را معرفی میکند که بهرهوری را افزایش داده و توسعه را برای برنامهنویسان فعال در حوزه Postgres ساده میکند:
بصریسازی طرحواره (Schema Visualization)
بصریسازی طرحواره با گزینههای منوی راستکلیک بسیار آسان شده است. با راستکلیک روی ورودی پایگاه داده در «کاوشگر شیء» (Object Explorer) و انتخاب «بصریسازی طرحواره» (Visualize Schema)، میتوانید نمایشی گرافیکی از ساختار پایگاه داده خود مشاهده کنید.
گیتهاب کوپایلوت آگاه از پایگاه داده (Database-aware GitHub Copilot)
این ویژگی هوش مصنوعی را مستقیماً به VS Code میآورد و با ارائه متن پایگاه داده PostgreSQL، منحنی یادگیری PostgreSQL را کاهش داده و بهرهوری توسعهدهنده را بهبود میبخشد. تعامل با پایگاههای داده PostgreSQL و ابزارهای توسعه با استفاده از زبان طبیعی سادهتر شده است. دستوراتی مانند "@pgsql" به شما امکان میدهند تا به راحتی پایگاههای داده را پرسوجو (query) کنید، طرحوارهها (schemas) را بهینه (optimize) کرده و عملیات SQL را اجرا کنید. همچنین، منوهای متنی (Context menus) مانند "بازنویسی پرسوجو" (Rewrite Query)، "توضیح پرسوجو" (Explain Query) و "تحلیل عملکرد پرسوجو" (Analyze Query Performance)، هوش مصنوعی را درون پنجره ویرایشگر پرسوجو ارائه میدهند. این قابلیت راهنمایی در زمان واقعی و در سطح تخصصی را فراهم میکند تا پایگاههای داده PostgreSQL را در حالت عملکردی و ایمن نگه دارد و کیفیت کد را بهبود بخشد.
حالت عامل چت گیتهاب کوپایلوت (GitHub Copilot Chat Agent Mode)
حالت عامل چت گیتهاب کوپایلوت، یک دستیار هوشمند آگاه از متن پایگاه داده را فراهم میکند که میتواند وظایف چند مرحلهای را انجام دهد و فراتر از تجربه چت پرسش و پاسخ عمل کند. حالت عامل به کوپایلوت اجازه میدهد تا متن اضافی از فضای کاری شما را وارد کند و با اجازه شما، میتواند کد را به تنهایی بنویسد و اشکالزدایی کند. حالت عامل، توسعه PostgreSQL را با ارائه راهنمایی بلادرنگ و مبتنی بر هوش مصنوعی، متحول میکند. این امر وظایف پیچیدهای مانند نمونهسازی سریع برنامه (app prototyping)، اشکالزدایی، بهینهسازی طرحواره و تنظیم عملکرد (performance tuning) را ساده میکند. به عنوان مثال، میتوانید از عامل بخواهید یک پایگاه داده جدید روی یک سرور خاص در اتصالات ذخیره شده (Saved Connections) شما ایجاد کند و افزونه PostGIS را فعال کند. عامل @pgsql با لیست کردن اتصالات سرور شروع میکند، به سرور 'postgis' متصل میشود، اسکریپت لازم برای تغییر پایگاه داده را پیشنویس میکند و قبل از انجام تغییرات، منتظر اجازه کاربر میماند. تغییرات پایگاه داده به اجازه صریح کاربر نیاز دارند.
افزودن آسان اتصالات پایگاه داده (Add Database Connections with Ease)
این افزونه مدیریت اتصالات را برای نمونههای PostgreSQL محلی و ابری ساده میکند. پشتیبانی از چندین نمایه اتصال (connection profiles) و تجزیه رشته اتصال (connection string parsing) برای راهاندازی آسان فراهم شده است. همچنین، امکان مرور و فیلتر مستقیم استقرار (deployments) Azure Database for PostgreSQL و ادغام با Entra ID برای مدیریت متمرکز امنیت و هویت وجود دارد. با گزینه "Browse Azure" در منوی "Add New Connection"، میتوانید به راحتی به استقرارهای موجود Azure Database for PostgreSQL خود با احراز هویت Entra ID متصل شوید. همچنین، اتصال به استقرارهای Docker محلی با استفاده از گزینه "Parameters" یا "Connection String" امکانپذیر است.
احراز هویت بدون رمز عبور با Entra ID (Password-less authentication with Entra ID)
این ویژگی نیاز به ورود دستی را از بین میبرد و تجربه یکپارچهای را ارائه میدهد. "تازهسازی خودکار توکن" (Automatic Token Refresh) اتصال بدون وقفه را تضمین میکند و خطر انقضای احراز هویت در طول توسعه را به حداقل میرساند. با بهرهگیری از پروتکلهای احراز هویت امن Entra ID، امنیت بهبود مییابد. این قابلیت با خودکارسازی مدیریت توکن، زمان را کاهش میدهد و به توسعهدهندگان امکان میدهد تا بر کدنویسی تمرکز کنند. همچنین، با استانداردهای امنیتی شرکتی همسو شده و دسترسی به پایگاههای داده PostgreSQL در محیطهای سازمانی را ساده میکند. توسعهدهندگان میتوانند از اعتبارنامههای Entra ID موجود خود استفاده کنند و نیازی به مدیریت حسابهای جداگانه ندارند.
کاوشگر پایگاه داده (Database Explorer)
کاوشگر پایگاه داده یک نمای ساختاریافته از اشیاء پایگاه داده مانند طرحوارهها (schemas)، جداول (tables) و توابع (functions) را فراهم میکند. این قابلیت ایجاد، تغییر و حذف اشیاء پایگاه داده را امکانپذیر میسازد.
تاریخچه پرسوجو (Query History)
تاریخچه پرسوجوهای جلسه (Session query history) در زیر «کاوشگر شیء» (Object Explorer) در دسترس است. این به شما امکان میدهد تا به سرعت پرسوجوهای قبلی را برای استفاده مجدد مرور کنید.
ویرایش پرسوجو با IntelliSense آگاه از متن (Query Editing with Context-aware IntelliSense)
IntelliSense آگاه از متن برای تکمیل خودکار کلمات کلیدی SQL، نام جداول و توابع عمل میکند. برجستهسازی نحوی (Syntax highlighting) و قالببندی خودکار (auto-formatting) برای بهبود خوانایی پرسوجو فراهم شده است. همچنین، ردیابی تاریخچه پرسوجوها برای استفاده مجدد از پرسوجوهای قبلاً اجرا شده امکانپذیر است.
آنچه افزونه PostgreSQL برای VS Code را متمایز میکند
افزونه PostgreSQL برای VS Code با قابلیتهای بینظیر و طراحی بصری خود در میان ابزارهای مدیریت پایگاه داده متمایز است. ویژگیهای منحصر به فرد آن شامل موارد زیر است:
- افزایش بهرهوری: قابلیتهایی مانند IntelliSense آگاه از متن و قالببندی SQL، زمان را کاهش داده و خطاها را به حداقل میرساند.
- عامل چت @pgsql گیتهاب کوپایلوت: آگاهی از متن پایگاه داده و فضای کاری، امکان کمک هوشمندانهتر و مرتبطتر را برای توسعهدهندگان فراهم میکند و توانایی انجام وظایف چند مرحلهای را دارد.
- سادهسازی شروع به کار (Streamlined Onboarding): «مدیر اتصال» (Connection Manager) تضمین میکند که میتوانید در عرض چند دقیقه شروع به کار کنید.
- امنیت بهبود یافته: یکپارچهسازی Entra ID کنترل دسترسی قوی و مدیریت هویت متمرکز را فراهم میکند، از جمله قابلیت مرور نمونههای Azure Database for PostgreSQL.
- مجموعه ابزار جامع: میتوانید اشیاء پایگاه داده را مدیریت کنید، پرسوجوها را اجرا کرده و نمونهها را مستقیماً در VS Code استقرار دهید.
- یکپارچهسازی بیدرنگ با ابر (Seamless Cloud Integration): ادغام عمیق با Azure Database for PostgreSQL، مدیریت پایگاه داده ابری را ساده میکند.
شروع به کار با افزونه PostgreSQL برای Visual Studio Code
نصب افزونه PostgreSQL برای VS Code ساده است:
- در VS Code، نمای «افزونهها» (Extensions) را باز کنید.
- در «بازارچه افزونهها» (Extensions Marketplace)، "PostgreSQL" را جستجو کنید.
- افزونه «PostgreSQL Preview» را با نماد فیل آبی که در اسکرینشاتها قابل مشاهده است، انتخاب و نصب کنید. این افزونه همچنین در «بازارچه آنلاین Visual Studio Code» در دسترس است و شناسه افزونه آن
ms-ossdata.vscode-pgsql است.
برای فعال کردن «چت گیتهاب کوپایلوت PostgreSQL» (PostgreSQL GitHub Copilot Chat)، باید افزونههای «گیتهاب کوپایلوت» (GitHub Copilot) و «چت گیتهاب کوپایلوت» (GitHub Copilot Chat) را در VS Code نصب کرده باشید. پس از نصب، باید وارد حساب گیتهاب (GitHub Account) خود شوید تا بتوانید از "@pgsql" در رابط چت برای تعامل با پایگاه داده PostgreSQL خود استفاده کنید.