1. مقدمه
Backendpy یک چارچوب آزاد و متنباز برای ساخت پروژههای تحت وب با زبان برنامهنویسی پایتون است.
1.1. چرا Backendpy؟
این چارچوب نه آزادی توسعهدهندگان را با مقید کردن آنها به ساختارهای ازپیشتعیینشده سلب میکند و نه برخی کارهای تکراری و زمانبر را بر عهدهی توسعهدهنده میگذارد.
برخی از ویژگیهای Backendpy عبارتاند از:
برنامهنویسی ناهمگام (پروژههای مبتنی بر ASGI)
معماری اپلیکیشنمحور و قابلیت نصب آسان اپلیکیشنهای ثالث توسط ابزار pip و فعالسازی آنها در پروژه
پشتیبانی از انواع مختلف Middlewareها مختص لایههای Request، Handler، Application یا Response
پشتیبانی از Eventها و Hookها
کلاسهای Data Handler، شامل اعتبارسنجها و فیلترها برای اعمال خودکار روی دادههای ورودی Requestها
پشتیبانی از انواع Responseها شامل JSON، HTML، File و … با تنظیمات مختلف از قبیل stream، gzip و …
Router با قابلیت تعریف Urlها بهصورت Decorator پایتونی و یا بهصورت فایلهای مجزا (برحسب سلیقهی توسعهدهنده)
کدهای خطای مختص هر اپلیکیشن
لایهی Database پیشفرض (اختیاری) Async توسط Sqlalchemy ORM و سیستم پایگاهدادهی Postgresql با مدیریت بهینهی Sessionها برای محدودهی هر Request
لایهی Templaing پیشفرض (اختیاری) توسط Jinja template engine
…
1.2. پروانه
چارچوب Backendpy بهصورت متنباز و با مجوز آزاد BSD 3-Clause منتشر شده است. کد منبع این چارچوب در آدرس https://github.com/savangco/backendpy در دسترس قرار گرفته است.
توجه
این پروژه در حال توسعه است.