Vapor یک چارچوب وب منبع باز است که به زبان برنامه نویسی سوئیفت نوشته شده است. می‌توان از آن برای ایجاد API های RESTful، برنامه‌های وب و برنامه‌های بلادرنگ با استفاده از وب سوکت استفاده کرد.

Vapor
توسعه‌دهنده(ها)Tanner Nelson and others
انتشار اولیه۱۸ ژانویه ۲۰۱۶؛ ۸ سال پیش (۲۰۱۶-18}})[۱][۲]
انتشار پایدار
4.84.6[۳] / ۱۱ اکتبر ۲۰۲۳؛ ۸ ماه پیش (۲۰۲۳-11}})
نوشته‌شده باSwift
سیستم‌عاملmacOS, Ubuntu
پلت‌فرمSwiftNIO
نوعWeb framework
مجوزMIT License
وبگاهvapor.codes





علاوه بر چارچوب اصلی، Vapor یک ORM، یک زبان قالب و پکج‌هایی را برای آسان‌سازی احراز هویت و مجوز کاربر ارائه می‌کند..[۴]

کد منبع Vapor در گیت‌هاب میزبانی می شود و تحت مجوز MIT قرار دارد[۵].Vapor از سال 2016 بخشی از گروه کاری APIهای سرور سوئیفت بوده است..

[۶][۷]

تاریخچه

ویرایش

Vapor 0.1.0 یک ماه پس از سوئیفت منبع باز اپل به عنوان اثبات مفهومی برای سوئیفت در سرور منتشر شد و پشتیبانی از پلتفرم لینوکس را در 3 دسامبر 2015 آغاز کرد.[۸] Vapor 1.0 [۹] در سپتامبر 2016 وارد شد و به دنبال آن Vapor 2.0 در ماه می 2017 منتشر شد.[۱۰]

این چارچوب برای Vapor 3.0[۱۱] بازنویسی شد تا بر روی چارچوب شبکه غیر مسدود کننده SwiftNIO اپل ساخته شود. Vapor 3 در ماه مه 2018 منتشر شد. شرکت اپل در صفحه اصلی Swift.org سرعتی که Vapor (همراه با Kitura ) با استفاده از فریمورک جدید SwiftNIO به خود اختصاص داد، ذکر کرد.[۱۲]

دوران بتای Vapor 3، شاهد انتشار مطلب‌های آموزشی توسط Packt،ٰ[۱۳][۱۴][۱۵]

Paul Hudson و [۱۶] Razeware LLC و [۱۷] lynda.com [۱۸]بود. Vapor توسط Swift.org با انجمن رسمی سوئیفت در گروه افتتاحیه پروژه‌های مرتبط خود در می 2018 شناخته شد.

انتشار ورژن آلفا 1، [۱۹]Vapor 4 در می 2019 آغاز شد و نسخه پایدار آن در آوریل 2020 منتشر شد[۲۰].

انتشار

ویرایش
ورژن تاریخ انتشار ورژن Swift فهرست
1.0 15سپتامبر 2016 ≥ 3.0 ورژن قدیمی،پشتیبانی نمی‌شود.
2.0 17مه 2017 ≥ 3.1 ورژن قدیمی،پشتیبانی نمی‌شود.
3.0 4 مه 2018 ≥ 4.1 ورژن قدیمی،پشتیبانی نمی‌شود.
4.0 9 آوریل 2020 ≥ 5.2 آخرین نسخه پایدار
5.0 بعدا مشخص می‌شود ≥ بعدا مشخص می‌شود در آینده منتشر می‌شود.

منبع: مستندات vapor و گیت‌هاب.[۲۱]

پشتیبانی از نسخه سوئیفت

ویرایش

Vapor 4 از آخرین 3 نسخه‌ی minor سوئیفت پشتیبانی می کند. از 27 اکتبر 2023، این پشتیبانی شامل Swift 5.7، Swift 5.8 و Swift 5.9 می‌شود.

این با استانداردهای تعیین شده توسط گروه کاری سرور سوئیفت[۲۲]، که Vapor یکی از اعضای آن است، مطابقت دارد.[۲۳]

ویژگی‌ها

ویرایش

Vapor از ویژگی های زیر پشتیبانی می کند:[۲۴]

  • IO غیر همگام / غیر مسدود کننده
  • احراز هویت: پایه، حامل، JWT و رمز عبور
  • حافظه پنهان: Redis و in-Memory
  • دستورها / قالب بندی کنسول
  • مذاکره محتوا: JSON، چند قسمتی و فرم کدگذاری شده با URL
  • رمزگذاری: RNG، رمزها، هضم‌ها، RSA
  • تزریق وابستگی / وارونگی کنترل[۲۵]
  • ORM روان:MySQL,[۲۶] PostgreSQL, MongoDB و SQLite
  • سرویس گیرنده و سرور HTTP
  • قالب برگ: : HTML و غیره
  • ورود به سیستم
  • مسیریابی URL
  • اعتبار سنجی
  • سرویس گیرنده و سرور WebSocket
  • مشاغل صف

منابع

ویرایش
  1. "Vapor 0.1.0 Release". GitHub. 2016-01-25. Retrieved 2018-04-03.
  2. "Server-side Swift Frameworks Comparison". Retrieved 2018-05-24.
  3. "Vapor 4.84.6 Release". GitHub. 2023-10-11. Retrieved 2023-10-27.
  4. "Vapor GitHub Organization". GitHub. Retrieved 2018-04-03.
  5. "vapor/vapor LICENSE at master". GitHub. 2018-02-23. Retrieved 2018-04-03.
  6. "Swift Server APIs". 2016-10-25. Archived from the original on 2021-05-10. Retrieved 2018-05-22.
  7. "Swift Blog: Server APIs Work Group". 2016-10-25. Retrieved 2018-05-22.
  8. "Swift is Open Source". 2015-12-03. Retrieved 2018-04-03.
  9. "Vapor 1.0.0 Release". GitHub. 2016-09-15. Retrieved 2018-04-03.
  10. "Vapor 2.0.0 Release". GitHub. 2018-05-17. Retrieved 2018-04-03.
  11. "Vapor 3.0.0 released". 2018-05-04. Retrieved 2018-05-23.
  12. Inc., Apple. "Swift.org". Swift.org (به انگلیسی). Retrieved 2018-10-04.
  13. Yeung, Angus (2018). Hands-On Server-Side Web Development with Swift: Build dynamic web apps by leveraging two popular Swift web frameworks: Vapor 3.0 and Kitura 2.5. Packt Publishing Ltd. ISBN 9781789345865. Retrieved 16 December 2019.
  14. Yeung, Angus (2018). Hands-On Server-Side Web Development with Swift: Build dynamic web apps by leveraging two popular Swift web frameworks: Vapor 3.0 and Kitura 2.5. Packt Publishing Ltd. ISBN 9781789345865. Retrieved 16 December 2019.
  15. Kuepper, Ralph (2020-03-12). Hands-On Swift 5 Microservice Development. Packt Publishing. ISBN 978-1789530889.
  16. Patel, Ankur (2018-03-30). Hands-On Full-Stack Development with Swift. Packt Publishing. ISBN 978-1788625241.
  17. Condon, Tim; et al. Server Side Swift with Vapor. Razeware LLC.
  18. "Learning Server-Side Swift with Vapor". Archived from the original on 2021-05-09. Retrieved 2018-05-22.
  19. VAPOR (2019-05-28). "Vapor 4: Alpha 1 Releases Begin". Medium (به انگلیسی). Retrieved 2019-09-09.
  20. "Release Vapor 4.0.0 · vapor/vapor". GitHub (به انگلیسی). Retrieved 2021-02-15.
  21. "Vapor Docs: Support". Vapor. Retrieved 2018-05-04.
  22. "Swift Server Workgoup".
  23. "Swift Server Workgroup Members".
  24. "Vapor Docs". docs.vapor.codes (به انگلیسی). Archived from the original on 2021-07-22. Retrieved 2018-05-22.
  25. Elliot, Keith (2016-10-06). Swift 3 New Features. Packt Publishing. ISBN 978-1786462718.
  26. Hussain, Shaista; et al. (2018-03-12). Proceedings of the 2018 6th International Conference on Bioinformatics and Computational Biology. Association for Computing Machinery. ISBN 978-1-4503-6348-8.