أنا أعمل حاليًا على مشروع لإدارة العمل حيث يتمثل أحد المتطلبات الأساسية في التأكد من إمكانية الوصول إلى ميزات معينة (مثل تسجيل الخروج) حتى عندما يكون جهاز المستخدم غير متصل بالإنترنت مؤقتًا. على الرغم من أن هذه حالة نادرة، إلا أنني أريد تحصين التطبيق في المستقبل من خلال تمكين وظائف إضافية دون اتصال حسب الحاجة.
Spring Boot مع Thymeleaf وHTMX: مجموعتي المفضلة. أحب البناء باستخدام TDD، وهذا المزيج يتوافق جيدًا مع تجربتي. لقد قمت بالفعل ببناء مشروع تجريبي صغير باستخدام Service-worker.js للتخزين المؤقت لطلبات POST وإعادة إرسالها. لست متأكدًا مما إذا كان هذا هو الخيار الأفضل لمواصلة إضافة وظائف دون اتصال بالإنترنت في المستقبل.
Vaadin Flow: أنا مفتون بـ Vaadin Flow لتركيزه القوي على بناء تطبيقات الأعمال بالكامل في Java. ومع ذلك، أنا قلق بشأن قدرته على دعم الوظائف دون اتصال بالإنترنت نظرًا لأنه يقوم بتحديث طرق العرض ديناميكيًا. مما أفهمه، فإن هذا قد يجعل من المستحيل تخزين صفحة كاملة مؤقتًا لمشاهدتها في وضع عدم الاتصال. أنا على علم بـ Hilla، ولكن بعد ذلك سأحتاج إلى إنشاء جميع طرق العرض في Typescript وهذا النوع من الهزائم لغرض استخدام Vaadin، في رأيي.
PWA Starter: لقد بحثت في PWA Starter، ولكن يبدو أنه يركز على إنشاء تطبيقات صفحة واحدة (SPAs) بلغات مثل Angular أو React، والتي لا تناسب تفضيلاتي لـ البقاء ضمن النظام البيئي Spring Boot.
Quarkus أو JHipster: لقد فكرت أيضًا في Quarkus وJHipster، لكن JHipster يستخدم عادةً Angular أو Vue للواجهة الأمامية، على ما يبدو، وهو ما لست مهتمًا به كثيرًا. لشيء يظل أقرب إلى نهج Java الكامل. يبدو أن Quarkus يركز على الخدمات الصغيرة؟
أبحث عن نصيحة حول كيفية التعامل مع هذا الأمر، مع الأخذ في الاعتبار تفضيلي للبقاء ضمن نظام Java البيئي وتجنب إضافة تقنيات أمامية جديدة مهمة. أنا متأكد من أن هناك العديد من الأسئلة التي لم أفكر فيها. أي أفكار أو توصيات سيكون موضع تقدير كبير!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3