𝐈𝐓𝐂𝐎𝐃𝐄
85 subscribers
57 photos
14 videos
8 files
38 links
ثقافة برمجية ، معلومات تقنية ، روابط للاحتراف في البرمجة.
حسابي تلجرام: @Q_s_i0.
Download Telegram
Transactions_and_Concurrency_Control.pdf
6.3 MB
لو تشتغل على جافا، أنصحك تقرأ آخر إصدار من كتاب “Troubleshooting Java”.

الكتاب مليان أشياء عملية: من أفضل ممارسات الـdebugging، إلى الـlogging، الـtracing، الـtelemetry، نموذج الذاكرة في جافا، منع الـdeadlocks، وكمان الـprofiling والـsampling.

قراءة ممتازة لو تحب تفهم وش يصير تحت غطاء الـJVM وكيف تلاقي المشاكل بسرعة في الإنتاج.
1❤2
احد طرق مكافحة الابتز١ز
يمن موبايل Yemen Mobile تقدم
خدمة مهمة جدا وخاصة للنساء ممن تذهب تعبي رصيد وتعطي رقمها لمن يقوم بالتعبئة لها ويؤذيها بعد ذلك
يمن موبايل لديها خدمة طلب عبر ارسال "رقمي" الى الرقم 1003
ويوصلك رقم حساب مكون من عشرة ارقام يبدأ بـ 97 ويمكنك استخدامه عند شحن رصيد من صاحب نقطة تعبئة رصيد أو غيره بدلا من أن تعطيه رقمك تعطيه هذا الرقم
كما موضح في الصورة
خاصة للنساء... وااضح
👍3
‌‎#نصائح_برمجية

كل سطر Code تكتبه اليوم هو خطوة نحو منتج أفضل،
تجربة مستخدم أنعم،
أو حل أكثر ذكاءً.
حتى لو كانت المهمة بسيطة،
نفّذها بإتقان — لأن التفاصيل الصغيرة هي اللي تصنع الفرق الكبير في البرمجة. ابدأ يومك بشغف،
واكتب كودك كأنك تبني شيئ يدوم.

‎🙂البرمجة_تفكير وابتكار_مش_نسخ_وحفظ_اكواد_#
👍1
❓ تمرير المصفوفات للميثود: ماذا يُطبع؟
Passing arrays to methods: what prints?
void change(int[] arr) {
arr[0] = 99;
arr = new int[]{7,7,7};
}
int[] x = {1,2,3};
change(x);
System.out.println(x[0]);
الفرق الرئيسي بين TCP و UDP هو :

☝️TCP (Transmission Control Protocol)(ضروري تتأكد من الوصول)
- يوفر اتصالًا موثوقًا
- يتحقق من الأخطاء ويعيد إرسال الحزم المفقودة
- بطيء نسبيًا بسبب التحقق من الأخطاء
- لا يفقد المعلومات
- يستخدم في التطبيقات التي تتطلب موثوقية عالية مثل:
- تصفح الإنترنت (HTTP/HTTPS)
- البريد الإلكتروني (SMTP)
- الملفات الكبيرة

✌️UDP (User Datagram Protocol)(أرمي ولا يهمك)
- أسرع لكنه أقل موثوقية
- لا يوجد تأكيد لوصول البيانات أو ترتيبها
- يمكن أن يفقد بعض البيانات
- يستخدم في التطبيقات التي تتطلب سرعة في النقل ولا تمانع من بعض الفقد في البيانات مثل:
- بث الفيديو المباشر (مثل YouTube)
- الألعاب عبر الإنترنت
- المكالمات الصوتية

باختصار، TCP يوفر موثوقية عالية ولكنه أبطأ، بينما UDP أسرع ولكنه أقل موثوقية.
👍1
مساء القوة من قلب الشبكة!

💡 هل تعلم إن: الـ Data Center هو المكان اللي ينبض فيه الإنترنت بالحياة؟ ⚡
هو بيت السيرفرات، والتخزين، والاتصالات… المكان اللي يخلي كل موقع، وكل تطبيق، وكل شبكة “شغالة” 24/7 بدون توقف.

ورغم حجمه الكبير وتعقيده، شغله كله يعتمد على تنظيم، تبريد، واستقرار.

الخلاصة
خليك زي الـ Data Center… مهما كان الضغط عالي، حافظ على تنظيمك وهدوءك الداخلي.

الاستقرار لا يعني عدم وجود مشاكل، لكنه إنك تعرف تديرها بحكمة. 💪
#معلومة_وتحفيز
ذهب وهو يحمل حقيبته عائدًا من طريق العلم.... لكن القدر كان أسرع. رحل ، شهيد العلم، في حادث أليم وهو في طريق العودة من جامعته عاد إلى ربه الرحيم، تاركا وراءه دموعا لا تجف وقلوبا موجوعة علية.

كان وحيد والديه، وكان أملهما الوحيد ونور حياتهما .... لكن الله اختاره إلى جواره، ليكرمه في دار خير من داره

رحمة ربي تغشاك اخي وصديقي محمد عادل💔😔
💔6
‏﷽

‏۝ إِنَّ اللَّهَ وَمَلائِكَتَهُ يُصَلُّونَ عَلَى
‏النَّبِيِّ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا
‏عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا ۝ ﷺ..

اللهم صلِ وسلم على نبينا محمد وعلى آله وصحبه أجمعين*
عشر ايام مرت ولم نستوعب بعد رحيلك

كأن الزمن توقف عند لحظة فراقك

كيف نكتب عنك ؟

كيف نرثي ذكريات كنت فيها؟

كيف نرثي صوتك وضحكتك ؟

يعز أن أرثيك، بعد العلم ان الحلم من بطريقة العاليا وصديقا، واجعل له في

يعز علي أن أقول "رحمك الله بدلا من الكيف حالك ؟"

لكن ما بيدي الا ان أرفع كفي وأدعون..

اللهم ارحم محمد عادل

اللهم اجعل قبره روضة من رياض الجنة

اللهم اجعل ابتسامته نورا في ظلام القبر اللهم اجعل طيبته شفيعا له اللهم اجعل دعائي له يصل فأنا لا أملك سواه.

لروحك السلام

ولذكراك الخلود ي رفيقي 💔💔
💔4😭1
معاً لنتدبر آية
{وَعَدَ اللَّهُ الَّذِينَ آمَنُوا مِنْكُمْ وَعَمِلُوا الصَّالِحَاتِ لَيَسْتَخْلِفَنَّهُمْ فِي الْأَرْضِ}

إذا حدثتك نفسك بيأسٍ فاستمسك بكلام ﷲ؛
ثبت به فؤادك ولا تركن إلىٰ ضعف يضيّعك
وانظر إلىٰ سنن الذين خلوا من قبل، رفع ﷲ أقوامًا مؤمنين مستضعفين وأذل جبابرة متكبرين،
فالنصر مِن عندِ ﷲ، هو حسبُنا ونعمَ الوكيل..
#معلومة هل تسألت يوما كيف يفكّر المعالج🤔؟
(رحلة الكود داخل عقل الحاسوب)

كل ضغطة على لوحة المفاتيح...
وكل سطر كود تكتبه...
يبدأ في خوض رحلة قصيرة جدًا —
لكنها أسرع من البرق ⚡ وأدق من عقارب الساعة ⏱️

تعالَ نعيشها لحظة بلحظة 👇

1️⃣ مرحلة الجلب (Fetch)

عندما يستقبل المعالج (CPU) أمرًا جديدًا،
يتجه بسرعة البرق إلى الذاكرة (RAM)
ليجلب منها التعليمات التي يجب عليه تنفيذها —
وكأنك تفتح ورقة فيها الخطوات المطلوب تنفيذها الآن.

هنا يأتي دور عداد البرنامج (Program Counter – PC)،
وهو الذي يخبر المعالج من أين يجلب السطر التالي من الكود.
بعد تنفيذ كل أمر، يزيد العداد بمقدار خطوة واحدة
ليجهّز للأمر التالي…
نظام دقيق ومنظّم 🔁

2️⃣ مرحلة الفهم (Decode)

في هذه المرحلة، يقرأ المعالج التعليمات ويبدأ “يفككها”،
تمامًا كما تقرأ جملة لتفهم المطلوب منها:
هل هي عملية حسابية؟ مقارنة؟ أم نقل بيانات؟

هنا يتدخل وحدة التحكم (Control Unit – CU) لتقول:
“هذا أمر جمع!” أو “هذا شرط منطقي!”
ثم تجهّز وحدة الحساب والمنطق (ALU) أو أي جزء آخر للتنفيذ.

3️⃣ مرحلة التنفيذ (Execute)

وهنا تبدأ لحظة الحقيقة
تتولى الـ ALU تنفيذ العملية —
تحسب، تقارن، أو تنقل القيم.
ثم تُخزَّن النتيجة مؤقتًا في السجلات (Registers)،
قبل أن تُرسل إلى المكان المناسب (إلى الذاكرة أو المخرجات).

💡 مثال بسيط:
الكود يقول:
x = a + b

المعالج سيقوم بما يلي:

يجلب قيم a و b من الذاكرة (Fetch)

يفهم أن المطلوب هو الجمع (Decode)

ينفّذ العملية داخل ALU (Execute)

يسجّل النتيجة في المتغيّر x (Store)

وكل ذلك يحدث في جزء من المليون من الثانية!

والمذهل أن هذه الدورة (Fetch → Decode → Execute)
تتكرر ملايين المرات في الثانية الواحدة 😳
فبينما أنت ما زلت تفكّر في الضغط على "Enter"،
يكون المعالج قد نفّذ آلاف الأوامر بالفعل!
💬 الخلاصة:
المعالج ليس مجرد قطعة إلكترونية،بل هو عقلٌ حقيقي
يفكّر وينظّم وينفّذ بخطة دقيقة أسرع من أي عقل بشري.

ولهذا السبب يتحوّل الكود الذي تكتبه من كلمات على الشاشة
إلى أفعال حقيقية تجري داخل جهازك
🔥2❤1
نقوم بعمل قناة متخصصه في مجال الشبكات وكل شيء له علاقة بالشبكات من الجانب النظر الى العمل والى اسئلة من سوق العمل وهذا هي القناة 👇.
https://t.me/DopaNetworking

شاركوا زملاءكم المهتمين بمجال الشبكات، فالدالّ على الخير كفاعله، كتب الله أجر الجميع.🤍
❤1
بسم الله الرحمن الرحيم واسعد الله مسائكم بكل خير.

#مصطلح سنتعرف اليوم على مصطلح مهم بالبرمجة وخاصة في لغة ++c وهو Destructor.

ماهو Destructor ؟

هو عبارة عن دالة(Member Function )، ولاكن دالة من نوع خاص وتختلف عن الدوال التي نقوم بأنشائها، ويتم استدعائها يدوي عندما ينتهي عمر الكائن (Object).

اذا كان Constructor يقوم بانشاء كائن وحجز موقع له بالذاكرة، فأن Destructor يقوم بالتخلص من هذا الكائن بعد الانتهاء من استخدامه.

الفرق بينه وبين Constructor:

•Constructor: يُستدعى عند الولادة (Object obj;).
•​Destructor: يُستدعى عند الوفاة (عند انتهاء القوس {} أو استخدام delete).

كيف يقوم بالتخلص من الكائن🤔؟ هل يقوم بقتله😳؟

لا ياعزيزي القارئ القتل محرم في البرمجة، ولاكنه يقوم بتحرير الذاكرة التي كان يستخدمها هذا الكائن وأيضاً يقوم بإغلاق الملفات المفتوحة.

وهل يوجد قواعد لكتابته؟

نعم يوجد مجموعة من القواعد لكتابته وهي كالتالي:
• يبدأ دائماً بعلامة التيلدا (~) متبوعة باسم الكلاس.
• لا يأخذ أي وسائط (Parameters).
•​ لا يعيد أي قيمة (حتى void).
• ​لكل كلاس Destructor واحد فقط (لا يمكن عمل Overloading له مثل ما كنا نعمل بال Constructor).

ومتى نحتاجه؟

نحتاج لكتابة الـ Destructor بأنفسنا في حالات إدارة الذاكرة اليدوية.
فمثلاً، إذا قمت بحجز ذاكرة باستخدام new داخل الـ Constructor، يجب عليك تحريرها باستخدام delete داخل الـ Destructor لمنع حدوث تسريب للذاكرة (Memory Leak).
​

وهل Destructor يوجد في لغة جافا؟

حرفيا لا يوجد Destructor في لغة جافا، ولاكن يوجد شيء يقوم بنفس الوظيفة وجافا تعتمد في هذا الوظيفة على Garbage Collector الذي يقوم بتنظيف الذاكرة تلقائياً.
وقبل عمل Garbage Collector ، كان يوجد دالة تسمى finalize()، ولكنها أصبحت مهجورة (Deprecated) ولا ينصح باستخدامها لأنها لا تضمن وقت التنفيذ.
والبديل الجديد في جافا يسمى Cleaner.

خلاصة القول:

​في ++C أنت "القائد"؛ يجب أن تهدم ما بنيته يدوياً باستخدام الـ Destructor.

في Java أنت "نزيل في فندق"؛ تترك الغرفة (الكائن) وهناك "عمال نظافة" (Garbage Collector) يأتون لتنظيفها لاحقاً.
👍2❤1🔥1
{إنّ اللهَ وملائكتَهُ يُصَـلُّونَ على النبي يا أيها الذين آمنوا صَلُّوا عليه وسلِّمُوا تسليما}

‏اللهم صلِّ وسلم على نبينا محمد .
📌مجال الـ IT مليان شهادات، وكل شهادة بتفتحلك باب جديد في تخصص معين.

👀 نظرة شاملة لأهم الشهادات في سوق العمل دلوقتي

🔹 أولًا: الشبكات (Networking) :

1️⃣CCNA (Cisco Certified Network Associate)
البداية المثالية لدخول عالم الشبكات، بتغطي الأساسيات زي الـ Routing & Switching & Security .

2️⃣CCNP (Cisco Certified Network Professional
مستوى متقدم بعد الـ CCNA، بيدخلك في تفاصيل الشبكات الكبيرة والمعقدة.
_

🔹 ثانيًا: الأمن السيبراني (Cyber Security) 🔐

3️⃣CISSP (Certified Information Systems Security Professional):
من أقوى شهادات السايبر على مستوى الإدارة والتخطيط، مناسبة لشخص عايز يبقى Security Manager أو Architect.

4️⃣CEH (Certified Ethical Hacker):
بتركز على الاختراق الأخلاقي واكتشاف الثغرات.

5️⃣CISM (Certified Information Security Manager):
أكثر إدارية، بتركز على إدارة فرق الأمن السيبراني ووضع السياسات.
_

🔹 ثالثًا: الكلاود (Cloud Computing) ☁️

6️⃣AWS Certified Solutions Architect:
من أقوى شهادات الـ Cloud، بتركز على تصميم حلول على Amazon Web Services.

7️⃣Microsoft Azure Administrator/Architect:
البديل القوي لـ AWS لكن على Azure.
_

🔹 رابعًا: الـ IT Support والدخول للمجال 🖥️

8️⃣CompTIA A+:
الأساسيات لأي حد عايز يبدأ في الـ IT Support، بتغطي Hardware, Software, Troubleshooting.

9️⃣Google IT Support Professional Certificate:
برنامج تدريبي عملي مناسب جدًا للمبتدئين، بيعلمك أساسيات الـ IT والدعم الفني.
_

🔹 خامسًا: إدارة المشروعات (Project Management) 📊

🔟PMP (Project Management Professional):
من أهم الشهادات العالمية، مش بس في الـ IT، في أي مجال محتاج إدارة مشروعات.
_

⚖️ إزاي تختار الشهادة المناسبة ليك؟

✅ لو عايز تبدأ من البداية → CompTIA A+ أو Google IT Support.
✅لو نفسك تدخل الشبكات → CCNA → CCNP.
✅ لو مهتم بالسايبر → CEH (بداية) → CISM أو CISSP (مستوى إداري/خبير).
✅ لو عايز المستقبل والكلاود → AWS أو Azure.
✅ لو عايز تدخل مجال الإدارة → PMP.
_
💡 الخلاصة:
الـ IT بحر واسع، ومفيش شهادة "أفضل" من التانية.. في شهادة "أنسب" ليك حسب هدفك وتخصصك.
ابدأ باللي يخدم طريقك المهني، وخطوة بخطوة هتلاقي نفسك بقيت محترف ومطلوب في السوق المحلي والعالمي.
#معلومة
من الورق إلى الكود: كيف كانت البرمجة قبل الكمبيوتر🤔؟💻


قبل عشرات السنين، لما ما كانش في:
لغات برمجة عالية المستوى، شاشات ولا حتى كيبورد
كان المبرمجون يكتبون البرامج باستخدام شيء يُسمّى Punch Carde🟨

☝️ ما هي Punch Cards🤔؟
هي بطاقات من الورق المقوّى،
كل بطاقة تمثّل سطرًا واحدًا من الكود.
الثقوب الموجودة في البطاقة تمثّل:
0 و 1
أي لغة الآلة التي يفهمها الحاسوب

📦 برنامج بسيط = مئات البطاقات
📦 برنامج كبير = صندوق كامل من البطاقات

✌️ كيف كانت عملية البرمجة؟

1 المبرمج يكتب الخوارزمية على الورق
2 يتم تحويل كل سطر إلى بطاقة مثقوبة
3 تُرتّب البطاقات بالترتيب الصحيح
4 توضع في الحاسوب
5 تشغيل البرنامج
6 الانتظار… ساعات أو أيام لمعرفة النتيجة 😅

❗ لا يوجد “Run”
❗ لا يوجد “Debug”
❗ ولا حتى رسالة خطأ واضحة

👌 أين كان الخطأ؟

بطاقة واحدة في غير مكانها ❌
ثقب زائد أو ناقص ❌
بطاقة ضاعت ❌

👈 البرنامج كله يفشل
لهذا كانت البرمجة:
بطيئة جدًا
دقيقة جدًا
ومكلفة جدًا

✌️✌️ لماذا نذكر هذا اليوم؟
لأن كل الأدوات التي نستخدمها الآن:
لغات البرمجة,المترجمات
Git و GitHub
IDEs
وُجدت لسبب واحد فقط:
إبعاد الإنسان عن 0 و1… وترك المعاناة للآلة
❤2
بدأت التخطيط لمشروع جديد خلال الأسابيع الماضية، فبدأت في تجهيز تصوّرٍ لقاعدة البيانات، وخلال البحث وجدت هذا الموقع اللطيف:
https://dbdiagram.io

يُمكّنك من تعريف الجداول في قاعدة بياناتك والعلاقات بينها باستخدام لغة خاصة بهم ثم يرسم لك العلاقات بين الجداول وكل البيانات التي حدّدتها خلال الكتابة.

الرسم تفاعليٌّ جدا ويوضّح لك العلاقات بين الجداول بشكل ممتاز.

بعد إضافة الجداول التي أحتاجها مبدئيًّا (32 جدولا) والتأكد من أن العلاقات بينها صحيحة ومراجعتها مع أحد الأصدقاء، أعطيت الشيفرة المُعبّرة عن تصميم قاعدة البيانات إلى Claude 4 Sonnet وطلبت منه إنشاء الـ Models والـ Migrations اللازمة لإنجاز هذا التصميم في مشروع Ruby on Rails.

أعطاني في المقابل 32 أمرا لإنشاء الـ Models و 28 أمرا لإنشاء الـ Migrations اللازمة لإضافة Indexes وغيرها من التعديلات.

وجدت أن طريقة العمل هذه ألطف من طريقة عملي التقليدية في مشاريعي الجانبية، فكنت دائما أبدأ بإنشاء ما أحتاجه من الـ Models وأُضيف الباقي مع مرور الوقت واستمرار التطوير.

من مشاكل هذه الطريقة أنني قد أحتاج إلى تعديل بعض الخيارات الجوهرية في تصميم قاعدة البيانات ما يتطلب تفكيرا عميقا خصوصا إذا كان الموقع قد نُشِر بالفعل.

الطريقة الجديدة لا تعني أن الأخطاء والتعديلات لن تظهر مطلقًا، ولكن الهدف تقليل مثل هذه التعديلات الجذرية قدر المستطاع والمحافظة على توثيقٍ مُحدّثٍ للمشروع، من خلال إنتاج التوثيق قبل إنتاج الشيفرة البرمجية.

والسلام عليكم 👋🏻
❤‍🔥2