219 subscribers
148 photos
1 video
42 files
64 links
تجميع أكبر كم من المعلومات حول مجالات التقنية
(#linux - #backend - #frontend - #ai - #Network - #php - #python)

Follow me:
Linkedin: https://linkedin.com/in/fadlhasn
Twitter:https://twitter.com/fdl_hasn

Connect me:
@FadL_Hasn
Download Telegram
👨🏻‍💻 فكر كمبرمج:
🔴 سأقوم بسرد بعض المهارات التقنية التي يجب على كل مبرمج معرفتها والإلمام بأساسياتها 🧑🏾‍💻.

1️⃣- الخوارزميات وحل المشاكل برمجياً: بحيث يتمكن المبرمج من تحليل مشكلة معينة وتحويلها إلى أكواد باستخدام عناصر البرمجة الأساسية مثل الجمل الشرطية (مثل if) وجمل التكرار (مثل for و while) واستخدام المصفوفات (arrays) وغيرها.

2️⃣- البرمجة الكائنية Object-Oriented: بحيث يتمكن المبرمج من تمثيل الأشياء في الحياة الواقعية على هيئة Classes و Objects، واستخدام المفاهيم المساعدة مثل Inheritance و Abstraction و Encapsulation و Polymorphism.

3️⃣- تراكيب البيانات Data Structures: وهي حاويات لحفظ عناصر داخلها بترتيب معينة، بحيث يكون الوصول إلى عناصرها وإجراء بعض العمليات عليها (مثل search و sort) ذو كفاءة عالية. ومن أمثلتها: List, Queue, Set, Tree, Map.

4️⃣- أنماط التصميم البرمجية Design Patterns: وهي عبارة عن حلول ونماذج جاهزة تستخدم لتصميم هيكلة الـ Objects وطرق إنشائها وكيفية التواصل بين بعضها البعض. من أمثلتها: Singleton, Builder, Factory method, Adapter, Composite, Decorator, Facade, Command, Iterator, Strategy, Visitor.

5️⃣- البرمجة المتوازية Concurrent Programming: بحيث يتم تنفيذ البرنامج باستخدام أكثر من Thread. كل Thread يقوم بتنفيذ عدة أوامر متتالية، والـ Threads جميعها يتم تنفيذها بشكل متزامن أو في آن واحد. توجد مفاهيم ذات علاقة، مثل: synchronization, locks, mutex, semaphore, race condition.

6️⃣- التعامل مع الملفات: يجب على المبرمج أن يفرق بين الملفات النصية والملفات الغير نصية (binary) (مثل ملفات الصور والفيديو وغيرها) وكيفية قراءتها وتخزينها على المساحة التخزينية، ويتعرف على مفهوم الـ Encoding (مثل UTF-8) وهي الطريقة المستخدمة لتمثيل النصوص على هيئة binary.

7️⃣- الملفات النصية الشائعة: هناك عدة أشكال formats تستخدم لتخزين البيانات على هيئة نصوص. مثل: CSV, XML, JSON, YAML.

8️⃣- التعابير المنطقية Regular Expressions أو اختصاراً Regex: وهي سلسلة من الحروف تستخدم للبحث عن تطابق داخل نص معين، ويمكن استخدامها أيضاً لتبديل كلمات بأخرى داخل النص أو للتحقق من مدخلات نصية Text Validation. أنصح باستخدام هذا الموقع أثناء بناء regex معين: https://regex101.com

🔟- التعامل مع قواعد البيانات Databases: بحيث يتمكن المبرمج من كتابة برنامج يتصل بقاعدة بيانات ويستخدم لغة SQL للبحث داخل الجداول أو لإضافة أو تعديل سجلات. معظم لغات البرمجة بها أدوات تساعد في هذه العملية. فمثلاً في لغة جافا، يمكن استخدام JDBC.
#الجزء_الأول


==================
#منقول❤️
#بداية مهندس معلوماتية💻🦾
🔴 سأقوم بسرد بعض المهارات التقنية التي يجب على كل مبرمج معرفتها والإلمام بأساسياتها 🧑🏾‍💻. #الجزء_الثاني
1️⃣1️⃣- استخدام أدوات إدارة وحفظ الأكواد Version Control Systems: وهي أدوات تساعد في حفظ الأكواد مع جميع التغييرات التي طرأت عليها، مع إمكانية استرجاع نسخ سابقة من الكود. من أشهرها: git أيضاً GitHub.com يعتبر أشهر المواقع التي تستضيف برامج مفتوحة المصدر داخل مستودعات git.

2️⃣1️⃣- استخدام بيئات التطوير IDEs: وهي برامج ومحررات نصوص مع العديد من الأداوت التي تسهل من عملية كتابة الأكواد. أنصح باستخدام الاختصارات shortcuts والتعود عليها بشكل دائم للقيام بالمهام والعلميات داخل الـ IDE والتي تزيد من الإنتاجية. أنصح الجميع بالـ IDEs الرائعة من تطوير @JetBrains

3️⃣1️⃣- قراءة التوثيق الرسمي للغة البرمجة documentation: وهو مستند يحتوي على وصف لجميع الـ classes والدوال الموجودة في مكتبات اللغة الرسمية مع توضيح لطريقة عملها. مثلاً في لغة جافا، لا غنى عن JavaDoc.


4️⃣1️⃣- مهارة الـ debugging: بحيث يتمكن المبرمج من إيجاد الأخطاء البرمجية داخل الكود. ويمكن استخدام الـ debugger Tools التي تزودها اللغة أو تجدها داخل الـ IDE. ملاحظة: أحياناً طباعة جمل معينة على الـ console بداخلها قيم لمتغيرات داخل الكود تكون عملية كافية وسريعة لإيجاد الأخطاء.

5️⃣1️⃣- استخدام الـ Build Tools: وهي أداوت تسهل عملية الترجمة compiling وإدارة الـ dependencies وبناء الحزم النهائية للبرنامج مع الأخذ بالاعتبار اختلاف البيئات. في لغة جافا مثلاً، يوجد maven و gradle.

6️⃣1️⃣- اختبار البرمجيات: وهي القيام بكتابة أكواد جانبية تختبر جميع وظائف البرنامج الأساسية للتأكد من صحة عملها. بحيث لو تم تغيير جزء من البرنامج الأساسي، تكشف هذه الاختبارات عن أي خلل في التغيير. أشهر مثال على هذه الاختبارات: Unit Testing. وفي لغة جافا، أشهر مكتبة للقيام بذلك هي JUnit.

7️⃣1️⃣- التعامل مع HTTP: وهو بروتوكول الإنترنت الأشهر، ويستخدم للتواصل بين الـ Client والـ Server لإرسال بيانات. يجب معرفة الفروقات بين الـ HTTP Methods، وأشهرها GET و POST. أيضاً يجب معرفة مكونات الـ HTTP Request والـ HTTP Response ومعرفة أشهر الـ HTTP Headers و HTTP Status
8️⃣1️⃣- التعامل مع RESTful Web Services: الـ REST هو آلية لتنظيم الخدمات الموجودة على سيرفر على هيئة APIs، بحيث يمكن لأي Client استخدام هذه الخدمات بالاتصال عبر البروتوكول HTTP. أنصح أي مبرمج بالاطلاع على GitHub REST API كمثال وكتابة HTTP Client يستخدمها: https://developer.github.com/v3
=====================
#منقول❤️
#بداية مهندس معلوماتية💻🦾
علشان كدة لازم تخرج برة اطار اللي بيعلمك وانت بنفسك تعمل كل حاجة ويكون ليك اسلوبك الخاص في البحث والشغل بعد متتعلم يعني تاخد المعلومة لكن تشتغل بيها بطريقتك.
====================================
#منقول
#نصائح_الزيرو
هل فكرت يوما بتعلم البرمجة من خلال الهاتف؟ 🤔

وبناء تطبيقك الأول على نظام أندرويد أيضاً من خلال الهاتف تعرف الان على تطبيق sketchware يمكنك بناء تطبيقات أندرويد بسيطة وسهلة ويمكنك بناء تطبيق كامل اونلاين وربطه مع قواعد بيانات ونشره والربح من خلال وضع الإعلانات وكل هذا من خلال هاتفك فقط

يتميز تطبيق sketchware بأنه أسهل تطبيق للبرمجة من خلال الهاتف لانه يعتمد على blocks code ويستخدمه العديد من الشباب بسبب حبهم لتعلم البرمجة ولا يملكون الحواسيب لكن تطبيق sketchware من خلال الهاتف سهل لهم بناء تطبيقاتهم الخاصة ونشرها على google play

تحميل نسخة sketchware pro :
https://www.francais20.com/2021/02/sketchware-pro.html?m=1

تحميل نسخة sketchware العادية :
https://m.apkpure.com/ar/sketchware-create-your-own-apps/com.besome.sketch

تعرفنا على تطبيق sketchware سوف اعرفكم على قنوات عربية تشرح التطبيق وكيفية إستخدامه :

عرب ويب قناة توفر لك شروحات مميزة عن sketchware

https://www.youtube.com/channel/UC35BM-sxJI7OmLZwDxVgVBA

كيمو أندرويد قناة توفر شروحات منتظمة حسب دورات

https://youtube.com/c/kimoAndroid

قناة Arab ware تقدم شروحات عن sketchware pro وهي النسخة المعدلة او المتطورة من sketchware

https://m.youtube.com/channel/UCvR_xx_bCtHwtWndXl7yCPQ

مشاريع sketchware توفر لك القناة مشاريع جاهزة

https://www.youtube.com/channel/UCaSM5-Qc-_fZB8gCM9AUfIg

موح برو (موح درويد) قناة توفر لك شروحات جديدة منوعة

https://www.youtube.com/channel/UCMZCwhJPC8g6n_ccpyeBOEQ

المعلم الذهبي توفر شروحات خاصة لتطبيقات اونلاين

https://www.youtube.com/channel/UCG1yOYSu7_sNhHePi_rJedg

العربي للبرمجة هي قناتي وفرت من خلالها دورة بسيطة لبناء تطبيق online

https://www.youtube.com/channel/UCOatymQJ-c1PBuBi2r_BzMg
#البرمجة_للغة_المستقبل
#منقول❤️
#بداية_مهندس_معلوماتية🦾💻
#منقول...
Linux commands
ايه اللي هيحصل في laravel 11
زي ما متعودين ان اصدارات laravel بتكون في صالح المطور والتحسينات عشان تخليك دايما في مواكبة للاداء والمهام بشكل سلسل ومرونة عالية جدا لذلك
بالنسبة لل php
اقل اصدار هيتم استخدامه معاها 8.2
كمان الاطار هيتم حذف kernel.php
واللي بدوره هيتنقل لمسار جديد باسلوب جديد لدعم الوسائط اوmiddleware جديدة بشكل تماما
واعادة هيكلة تامة مع نقل ال kernel في مسار جديد وهو
Bootstrap/App
واللي من جواه هتقدر تعمل append لل custom middleware بشكل اخف واسرع ومنظم عن السابق سواء بشكل عام او بشكل مخصص علي ملفات ال route
web.php او api.php
مثال خفيف
return Application::configure()
->withProviders ()
-›withRouting(
web: DIR.'/../routes/web.php'
commands: DIR.'/../routes/console.php',
)
->withMiddleware(function(Middleware Smiddleware) {
$middleware->web(append: LaraconMiddleware::class):
})

تغييرات عليcasts جوا ال model
وهي دعم الطرق او ال methods للمناداة علي اي methods فرعية واللي بدورها هتخليك تقدر تنفذ اكتر من عملية علي column او object بعينه عكس العمليات الكتير اللي بنعملها سابقا عشان تديك نتيجة معينة
مثال

Model casts

protected function casts(): array
{
return [
'email_verified_at' => 'datetime',
'password' => 'hashed',
'options'=› AsEnumCollection::of(UserOption::class),
];
}

تغييرات جذرية علي ملفات ال config
Config Changes
في مجلد config العديد من ملفات الضبط التلقائي الافتراضية القادمة مع اي اصدار من اصدارات laravel
وبالتالي سيتم الغاء كل هذه الملفات ويتم دعمها بشكل مباشر من خلال .env مع اطلاق هذه الاعدادات من خلال
config:publish
وهو ما سيحد تماما من كثرة الملفات التي احيانا تتسبب في بطيء الاداء او مشاكل اخري غير متوقعه

ملفات الmigrations

Slimmed default Migrations
في حال بدء مشروع جديد تأتي ملفات بشكل افتراضي من سنة 2014 و 2019
كل هذه الملفات مع الاصدار 11 سيتم حذفها ونقلها والاكتفاء بملفين افتراضيين فقط

تغييرات علي ملفات المسارات

Routes changes

في الاصدارات الحالية والقديمة كانت تأتي مع الاطار ملفات افتراضية وهو web.php
و api.php
وملف channel.php
و
console.php
الان بشكل افتراضي سيكون ملفين web.php
و console.php
ويمكن طلب باقي اطلاق باقي الملف مثل api و broadcast
من خلال اوامر اضافية
مثل

artisan install:api
php artisan install:broadcasting و
مدعمة من خلال حزمة
Laravel Sanctum

حذف ملف kernel المسؤول عن
اوامر ال schedule
Console Kernel Removed
وستقوم بتحديد اوامرك بشكل مباشر من خلال ملف
في مجلد
routes/console.php

الاطار سيغطي في معظم اجزائه اسلوب ال

Named Arguments
او المسارات المسماه لذلك يجب التعامل مع كل المسميات القادمة عند استعمالها بحذر شديد
وذلك لخلق شكل توافقي مناسب ومطابق لما هو قادم مع php8.2

سيتم اطلاق النسخة في بداية سنة 2024
وستظل مدعمة حتي سنة 2026
#technology #laravel #education #publishing #newspapers #php #منقول
2🔥2
إبتداءًا من الشهر القادم راح ينحظر اي حساب GitHub مو مفعل التحقق بخطوتين ( 2FA ) , لذلك اي شخص ساحب على حسابه وعنده مشاريع مهمة وحاب يحافظ عليها ينطلق فوراً يضيف تحقق بخطوتين عن طريق اي تطبيق مصادقة زي Google Authenticator على الاندرويد والآيفون، وأهم شي يحفظ اكواد الاسترداد بعد مايضيف التحقق بخطوتين ، زي الي بالصورة

هنا شرح الاضافة مفصل
https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication

وهنا الخبر ، علمًا انه جاني اشعار ببريدي الالكتروني يجبرني على اضافة التحقق بخطوتين لحسابي
https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/about-mandatory-two-factor-authentication
#منقول #github
1