و أي stack مفضل لك تستعمله في مشاريعك الخاصة
مطورين الويب في حسوب، أي Stack تستخدمون في عملكم ؟
Front-end
غالباً ما اعتمد على تصمايم جاهزة وأقوم بالتعديل عليها حسب الحاجة
Bootstrap
AJAX with jQuery
Vuejs for real-time apps
اعتمد على Vuejs لعمل تطبيق متكامل لإدارة الحسابات وعدة أقسام أخرى، وجدت التطوير والصيانة فيه أبطأ، لهذا اعتمدت على نظام Components في Laravel الإصدار السابع بتقنية Server Side Rendering وإن دعت الحاجة لمزيد من التعديلات في javaScript استخدم محرك قوالب على javaScript كـ Mustache ولكن نادراً ما أحتاجها بالإعتماد على الطريقة التي ذكرتها.
Back-end
Laravel
MySql
VPS on Vultr
جربت العديد من التقنيات ولكن ما ذكرته هو ما استخدمه في الأعمال التي اقوم بها
بالنسبة لل Backend اقوم باستعمال اما Java Stack أو NodeJS Stack
من أجل NodeJS Stack
NodeJS with Express
MongoDB
Redis
من أجل Java Stack
Java With JSF
Primefaces
3- MySQL
من أجل Front-end
أستعمل Primefaces في حال كنت استعمل JSF
استعمل React مع AntDesign
من أجل Mobile Application
- استعمل React native مع AntDesign ايضاً
بالنسبة لي استعمل :
لل Front-end
React (TypeScript)
React Context
React Query
Tailwind CSS
AntD
لل backend
Koa / Express
MongoDB / ArangoDB
PM2
Nginx
( Redux - react query
- useReducer - hooks - coetext)
هل يلغي بعضها الحاجه للآخر. أو يقوم بجزء كبير من دوره؟
وكيف يكون ترتيب التعامل معهم في مشاريع كبيره
في الواقع العملي؟
useReducer - useContext تلغي الحاجة الى ريدكس ( في 99% من الاستعمالات )
اما الهوكس هي جزء اساسي من الريأكت الجديدة حتي لو لا تستعمل اي منها يجب ان تستعمل الهوكس و تترك الكلاس كمبوننت.
و بالاخير react query هي مكتبة للتعامل مع البيانات التي تكون على السيرفر و تحديثها.
لكل استعمالاتها و في بعض المشاريع يجب ان تستعملها كلها.
حاليا أغلب مشاريعي العملية في الشركة و المشاريع الجانبية استعمل
useReducer - useContext - hooks - react query
للعمل أستعمل:
Front end
Tailwind CSS
Vue
State machines
Flutter
Backend
Laravel / Django
MySQL/Postgres
AWS Beanstalk
أما للمشاريع الشخصية فأحاول ان اقلل من استعمال التقنيات في جهة العميل قدر الإمكان ، إلا عند الضرورة.
Front End
Tailwind CSS
Turbolinks
if needed; Stimulus
if needed; Svelte
Backend
Rails
MySQL
Redis
AWS Beanstalk/Docker
اتقنه ، كنت استعمل React Native لتطبيقات الهاتف و الآن تحولت الى فلاتر.
أستعمل Vue لأني استعمله ببعض اجزاء من الصفحة و بطريقة تشبه Web components
رياكت غير مناسب لهذا و يحتاج بعض الاعدادات و استعماله بطريقة مختلفة عن الهدف من تصميمه.
اها، بما انك تستعمل لارافيل للخلفية اذا فيو افضل من ريأكت في استعمالك.
بالنسبة لفلاتر استخدمته من قبل و لكن لم يعجبني جدا بالنسبة لي ريأكت نيتف انظف بكتابة الكود، و قد يكون لانني متعود على الريأكت.
لكن يهمني معرفة لماذا انتقلت للفلاتر ؟
من ناحية اللغة ، لغة دارت ربما أسوأ لغة عملت معها ، دائما أقول weakness of JavaScript+ ugliness of Java = Dart
هي لغة تبدو ستاتيكية و لكن ليس بتلك القوة ، و اخطاء كثيرة عند Runtime ، ولكنها تخدعك ان المشاكل لا تحدث لأنك تعتمد على type system ، و هذا يجبرك على كتابة أكثر و ربما كلاسات.
في جافا سكربت مثلا تعرف انها ديناميكية و تستفيد من امكانياتها. تقريباً لن تحتاج لكتابة كلاس حتى.
أما لماذا انتقلت لفلاتر. أولا hot reloading رياكت نيتف لا يدعمه بشكل جيد حتى الآن. أيضاً الاستقرار ، فلاتر بالرغم من أنه جديد و لكنه أكثر استقرارا من رياكت نيتف. كل فترة فيسبوك تحدثه و تكسر التوافقية مع الحزم التي تستعملها. و لا يزال هناك الكثير من الحزم لا تدعم auto linking بعد.
لو سألت عن المفضل عندي ، فهو NativeScript لكن المشكلة ان مجتمعه صغير مقارنة برياكت نيتف ، حتى فلاتر ربما أكبر منه الآن.
التعليقات