Programmers Caffe
976 subscribers
286 photos
9 videos
23 files
69 links
قناة "كافي المبرمجين" تخص علوم البرمجيات والتكنولوجيات وتهتم بمساعدة المبرمجين في الوصل الى الطريق المناسب لتطوير الذات في البرمجة.
تابعونا على تويتر:twitter.com/ProgrammersCaff
لينك موقعنا: https://programmerscaffe.com/home
Download Telegram
ما هي Micro-Frontends ؟
ظهر مصطلح Micro Frontends لأول مرة في نهاية عام 2016.
الاتجاه الحالي هو بناء تطبيقات واجهة قوية غنية بالميزات والتي تعتبر جزء من microservice architecture حيث يكون لها الكثير من القواسم المشتركة مع مفهوم الأنظمة الذاتية Self-contained Systems concept.
ولكن من الواضح أن Micro-Frontends هي مصطلح أكثر ودية وأقل حجمًا تمنحك Micro frontends القدرة على تحقيق بنية أقل تعقيدًا .
على وجه الخصوص ، بفضل نهج Micro-Frontends يمكنك تقسيم التطبيق بأكمله إلى أجزاء صغيرة ، وأجزاء مستقلة كل واحد منهم سيكون قابلاً للتنفيذ من قبل فرق Front End المختلفة ، وحتى باستخدام تقنيات مختلفة.
وهذا يضمن نفس قابلية التوسع والمرونة والقدرة على التكيف التي تأتي مع بنية الخدمات backend microservice .
#استمر_تصل
Programmercaffe.com
2👍1
أهم ما يمكن ان تتعلم في لتستطيع ان تكون back end nodejs
#استمر_تصل
programmerscaffe.com
👍1
10 مكتبات CSS اكثر من رائعة
1 - مكتبة Hover.css
2 - منصة SpinKit
3 - مكتبة Humburger.css
4 - موقع CSS Layout
5 - مكتبة Chart.css
6 - مكتبة Pretty Checkbox
7 - مكتبة Vivify
8 - فريموورك Bulma
9 - مكتبة Izmir
10 - موقع 30SecondofCode
#استمر_تصل
programmerscaffe.com
👍1
Best of Python Cheat Sheet
1
This media is not supported in your browser
VIEW IN TELEGRAM
Just a JavaScript developer after work.
😁6
الـ Node js ماذا ولماذا؟
وفقًا لوثائق NodeJs الرسمية ، يمكن تعريف NodeJs على أنها بيئة تشغيل جافا سكريبت مفتوحة المصدر ومتعددة المنصات يمكن استخدامها لإنشاء أي نوع من المشاريع.
نظرًا لأن التعريف نفسه معقد للفهم، فلنقم الآن بتقسيم التعريف إلى كلمات وفهم ما يعنيه بالضبط ، لذا فإن NodeJS هو مصدر مفتوح ومتعدد المنصات يعني أن NodeJs متاحة للاستخدام والمشاركة ويمكن حتى تعديلها بواسطة أي شخص، وعبر الأنظمة الأساسية يعني أنه يمكننا كتابة كود nodejs بطريقة يمكن تنفيذها في أي نظام تشغيل مثل Windows أو Linux أو Mac.
-ماذا يعني javascript runtime؟
الjavascript runtime يعني ببساطة المكان الذي يتم فيه تنفيذ كود جافا سكريبت الخاص بنا عندما نقوم بتشغيل الكود الخاص بنا مع ذلك، يمكن تنفيذ جافا سكريبت اليوم على أي جهاز يحتوي على برنامج يسمى "محرك جافا سكريبت". محرك جافا سكريبت هذا له أسماء مختلفة وفقًا لمنصات مختلفة، على سبيل المثال، في متصفح جوجل كروم يطلق عليه محرك V8، وعلى متصفح فايرفوكس يسمى SpiderMonkey وفي Safari يسمى JavascriptCore.
-ما هو محرك جافا سكريبت(javascript engine)؟
محرك جافا سكريبت هو ببساطة برنامج يساعد في تحويل كود جافا سكريبت إلى كود يمكن فهمه بواسطة الآلة.
للتلخيص :nodejs هي بيئة تشغيل جافا سكريبت تُستخدم لإنشاء خوادم وتنفيذ عمليات الواجهة الخلفية (back-end) في جافا سكريبت لتطوير تطبيقات قابلة للتطوير في الوقت الفعلي.
-لماذا يجب علينا استخدامNodeJS؟
تمنح البرمجة باستخدام nodejs ميزة تطوير كل من الواجهة الأمامية والخلفية باستخدام لغة برمجة واحدة هي جافا سكريبت ، لذلك يتمتع مبرمجو جافا سكريبت بميزة وراحة في إتقان لغة برمجة واحدة بدلاً من تعلم لغات مختلفة للواجهة الأمامية والخلفية.
بصرف النظر عن هذا، يعمل Nodejs على محرك chromes V8 الذي يحسن أداء Nodejs ويسمح بإجراء عمليات غير متزامنة.
يعني غير المتزامن(Asynchronous) إجراء العمليات بشكل متزامن في نفس الوقت، وبالتالي مع nodejs من الممكن إجراء عمليات غير متزامنة دون زيادة الحمل على الخادم.
يأتي Nodejs مع npm (node package manager) وهو مدير الحزم الافتراضي، وبالتالي مع npm، يمكننا إعادة استخدام الكود الموجود بالفعل وكذلك تطوير حزمنا الخاصة للآخرين لاستخدامها مما يوفر وقت التطوير.
-كيف يختلف nodejs عن جافا سكريبت؟
نظرًا لأن nodejs تستخدم جافا سكريبت؛ فإن العديد من المطورين الجدد يختلط عليهم الأمر مع كليهما، فإليك بعض الاختلافات الرئيسية:
جافا سكريبت هي لغة برمجة بينما nodejs هي بيئة تشغيل جافا سكريبت
يعمل Javascript على المتصفح ولكن بمساعدة nodejs، يمكننا تشغيل كود جافا سكريبت خارج المتصفح أيضًا.
الJavascript - هي لغة برمجة نصية من جانب العميل (client-side) ومن ثم تُستخدم لإنشاء الواجهة الأمامية بينما يتم استخدام nodejs كلغة برمجة نصية من جانب الخادم (server-side) تُستخدم لإنشاء الواجهة الخلفية للتطبيق.
باستخدام nodejs، يمكننا إجراء عمليات أنظمة الملفات والتشغيل بينما باستخدام جافا سكريبت يمكننا إجراء عمليات خاصة بالمتصفح وعدد قليل جدًا من عمليات نظام التشغيل مثل تحميل الملفات وما إلى ذلك إلى جانب أذونات معينة.
- عيوب :nodejs
حتى الآن ، رأينا ما هو nodejs، ولماذا يجب أن نستخدمه الآن دعونا نرى متى يجب ألا نستخدم nodejs؟
نظرًا لأن nodejs تستخدم نموذج برمجة غير متزامن(asynchronous)، يصبح من الصعب الحفاظ على الكود مع زيادة حجم التطبيق؛لا يجب استخدامه عند أداء مهام حسابية ثقيلة على الخادم.
نظرًا لأن العديد من وحدات npm متاحة للاستخدام؛ فيجب اختيارها بحكمة حيث قد يحتوي بعضها على كود ووثائق (documentation) رديئة الجودة.
- تطبيقات العالم الحقيقي:
كما هو الحال الآن، رأينا جميع إيجابيات وسلبيات nodejs ولماذا يجب أن نستخدمها؛ فلنلق الآن بعضًا من أكثر تطبيقات العالم الحقيقي شيوعًا والتي يستخدمها الناس في جميع أنحاء العالم في حياتهم اليومية:
Linkedin-:
منصة التواصل للمحترفين.
-Paypal:
تطبيق المدفوعات.
-Trello:
تطبيق إدارة المشاريع.
-Uber:
خدمة السيارات في أي وقت وفي أي مكان.
وبالتالي، يتم استخدام nodejs على نطاق واسع من قبل معظم شركات التكنولوجيا؛ لذا فإن تعلم nodejs هو بالتأكيد الخيار الأفضل إذا كنت ترغب في استخدامه للواجهة الخلفية لمشروعك التالي.
#استمر_تصلل
2👍1🔥1
افضل Mobile App Development Frameworks في 2022
#استمر_تصل
👍1
هدف كل مبرمج
😁9
يوميات مبرمج مصري فى الغربة
😁1
Python lovers
2👎2
في شويه حاجات تدل علي ان software دا فيه مشاكل وكوارث، ممكن صاحب business يكتشف دا حتي لو معندوش خلفيه technical .
1- لما تلاقي في bugs بتطلع وحسابات غلط، و developers يدخل علي database يصلح الارقام في database بايده، عشان يظبط الدنيا، او يكون عامل console commands عشان ت fix المشاكل دي، هنا نعرف ان في كوارث لازم تتحل حلول منطقيه.
2- لما تلاقي نفس ال bug يتطلع كتير هي هي نفس ال bug هنا هنعرف ان في مشكله و technical team مش بيفكر بشكل سليم عشان يحلها، فكل متطلع يلزقها بشكل معين.
3- لما تلاقي في اشخاص معينين في الشركه بيتقال عليهم دول الحيتان اللي شايلين الشركه ومفيش حد بييجي يعمر غيرهم هما اللي بنوا الدنيا وهما اللي مشغلينها وهتلاقي دول واخدين راحتهم ومتميزين عن الباقي وتلاقي كل الناس بتتكلم عنهم وبتاع، هنا تعرف ان دول عاملين طلاسم محدش يقدر يفكها غيرهم. لو جه حد تاني مش هيقدر يتعايش مع الطلاسم دي ييكمل علي كدا ويبقي مش مقتنع ييسيب المشاكل دي ويمشي وساعتها هيثبت اكتر للشركه اد ايه الحيات اللي موجودين هما اللي شايلين المكان ومفيش غيرهم يقدروا يشيلوه، نوع من انواع الدجل اللي منتشر في software.
4- لما تلاقي bug او change request بياخد وقت مبالغ فيه عشان يتعمل بشكل سليم وممكن fix bug يطلع bug تانيه.
5- لما نيجي نضيف Features او نعدل نكون محتاجين نغير كتير في اجزاء كتير.
6- لما تلاقيهم عاملين اجتماع وليكن sprint plain واحنا بنوزع tasks تلاقي المشروع متسمي باشخاص الجزء بتاع ال catalog دا بتاع الموظف x، والجزء بتاع order دا بتاع الموظف y، وهنا هتاخد انطباع ان كل واحد شغال بمزاجه وفكره، والكود مش consistency مع بعضه، لو واحد دخل في حته مش بتاعته هيتوه ويعمل bugs بسهوله.
منقول
👍2
تحسين أداء MongoDB
حلول بسيطة
ضبط config لزيادة الإنتاجية و performance
إضافة indices ( الفهارس ) على أساس Query patterns
حلول متوسطة
معرفة نسب read-to-write
استخدام الذاكرة Determine
إضافة read replicas لفصل read and write querie و تقليل الحمل .
الاستفادة من connection pools للاستفادة من multiple replicas
اكتشف long-running queries و dumping في collection الجديدة
تحسين long-running queries خطوة بخطوة
حلول متقدمة
الترقية إلى أحدث إصدار من MongoDB
مراجعة data modeling و indexing
افحص query patterns و profiling
اتبع best practices عن querying data
تجنب unindexed aggregations
باستخدام limits
باستخدام projections
استخدام $hint في queries لتحديد index معين
استخدم Increment Operator لإجراء العمليات من Server-Side
إضافة shards لتوزيع الكتابة عبر multiple nodes
تكرار shards و تشكيل كتلة عالية من cluster
#استمر_تصل
المبرمج المصري
😁5
😁2