Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
- Telegram Web
Telegram Web
#شرح ماهي صيغة Json ؟
JSON : JavaScript Object Notation .
هي احدى صيغ نقل البيانات في عالم البرمجة وعادة ما تستخدم لنقل البيانات بين الخادم والعميل .
- ماهو الخادم وما هو العميل ؟ دائما نسمع عن الخادم والعميل ولكن بعضنا لا يعرف من هو الخادم اصلاً ومن هو العميل !
سابدأ مع العميل ، وهو انت عزيزي القارئ عندما تتصفح احد المواقع فانت تعتبر عميل لذلك الموقع (عميل مشتقه من عمل ، ولا تعني خائن كما هو متعارف ]: )
اما الخادم فهو السيرفر الذي تتصفح منه الموقع ، فكل موقع على الانترنت يجب ان يكون مستضافاً على سيرفر وهذا السيرفر متصل بالانترنت لكي يستطيع الاتصال بك وارسال صفحات الموقع الى متصفحك .

حسناً ... تعرفنا على JSON ، الخادم و العميل . والان سنبدا نتعلم معلومات اكثر عن JSON .

كيف يتم كتابة Json
صيغة Json تعتمد على طريقة كائنات JavaScript فهي مشتقه منها وسميت باسمها ، لذلك فهي تعتمد على مبدأ (المفتاح : القيمة) المثال التالي يوضح ذلك
{
   "first_name":"Asem",
   "last_name":"Najee",
   "ID":87
}

هنا الاسم الاول والاسم الاخير لشخص غير معروف :( وايضاً معرف المستخدم (ID) بشكل بسيط ، واليكم مثال عملي من الواقع في زر الاعجاب بمنشور في احد المواقع ؛ ولكن لن نتطرق لطريقه ارسال البيانات من والى الخادم .
في البداية عندما يضغط العميل زر الاعجاب سيتم معالجه الحدث وارسال البيانات التالية الى الخادم
{
   "user_id":87,
   "post_id":123
}

سيصل الطلب الى الخادم وتحديداً ملف ادارة الاعجابات وسيتم معالجه الاعجاب والرد الى العميل بالصيغة التالية
{
   "ok":true,
   "message":"Succesful"
}

هذا في حاله نجحت العملية ، وسيقوم متصفحك بمعالجة البيانات المرجعة من الخادم وتغير لون زر الاعجاب الى الازرق مثلاً للدلالة انك قد اعجبت بهذا المنشور .

انواع البيانات في JSON
غالباً وفي اغلب لغات البرمجة ان لم يكن كلها ، هناك انواع محددة للبيانات وهي (Boolean, numeric, String) اي بالعربي(المنطقية ، الرقمية ، النصوص) وهكذا في Json ايضاً حيث يجب وضع القيم النصية بين علامتي اقتباس مزدوجتين ("هنا النص") اما القيم المنطقيه والرقمية فتكتب بدون علامات تنصيص ، ستجد المثالين السابقين يحتويان على الانواع الثلاثة .

المصفوفات
يمكن ايضاً اضافة المصفوفات الى Json كالتالي :
{
   "name":"Asem",
   "ID":87,
   "languages":["Java","PHP","JS"]
}

تلاحظ ان اللغات مصفوفة من القيم .

الكائنات
خزن Json يعتمد على الكائنات بشكل اساسي ، والكائن هو المحصور بين {} والمثال السابق يمثل كائن يحتوي على قيم نصية ومصفوفة ، لكن يمكن لاحد مفاتيح الكائن ان يحتوي على كائن آخر كالاتي
{
   "name":"Asem",
   "ID":87,
   "languages":["Java","PHP","JS"],
   "contact":{
      "Telegram":"@AsemNaji",
      "E-mail":"a**m@gmail.com"
   }
}

ونلاحظ انه يجب كتابة المفاتيح ضمن علامتي اقتباس وفقاً لمعايير JSON .

كما يمكن جعل المصفوفات تحتوي على كائنات .. وهلم جراً .
﴿ إنّ اللَّهَ ومَلَائِكَتهُ يُصَلُّون على النبيِّ ياأيُّها ٱلّذين آمنُوا صَلُّواْ عَلَيهِ وسلِّمُوا تَسْلِيمًا .
لماذا نبدا تعلم البرمجة بإحدى اللغات الصعبة ؟

غالباً ما ينصح المعلمون بان نبدأ تعلم البرمجة بلغة C++ او Java ، لكن لماذا ونحن لدينا python افضل منها بكثير واسهل من ناحية التعلم ، والجميع يريدها وتعتبر مطلوبه في سوق العمل ايضاً ، ألم يكن من الافضل البدء بها ؟

لإجابة السؤال هذا يجب ان تطرح على نفسك سؤالاً ، هل انا اتعلم البرمجة والمفاهيم في البداية ، ام اريد الدخول مباشرة الى سوق العمل بدون خبرة في عالم البرمجة ؟
والسؤال هذا يجيب عن السؤال السابق ، حيث ان بدايتك مع Python تحرمك من تعلم الكثير من المفاهيم ، لانها لغة سهله وغالباً نستعمل شيئاً جاهزاً ودوال جاهزة للقيام بعملنا !!
اللغات السهلة القريبة جداً من الانسان مثل Python لا تعطي تحكم كامل بالعمليات من خلف الكواليس وهي ابطا من ناحية التنفيذ حيث قد يصل وقت التنفيذ الى اكثر من خمسه اضعاف وقت تنفيذ C++ ، اما في C++ كنا نستطيع التحكم بشكل كبير في العمليات ، هذا التحكم بالعمليات ليس سهلاً عندما يكون متروكاً على عاتق المبرمج ، لذلك يتعلم المبرمجون بهذه اللغات الصعبه خوارزميات وطرق ومفاهيم تساعدهم في عملهم ، ومن الناحية الايجابية للمبتدئين يصبح لديهم فكر منطقي وديناميكية عالية في التعامل مع باقي اللغات بسهولة لان باقي اللغات تكون اقل صعوبة من اللغة التي بدأو بها .

لماذا هناك اشخاص بدايتهم تكون مع Python ؟
تعلم Python في البداية ليس للتخصصات التي يكون عملها بناء مشاريع برمجية والاهتمام بتفاصيل التنفيذ ، بل لمن هم يهتمون بعمليات اخرى مثل الشبكات والحماية السيبرانية ولكنهم يحتاجون الى تنفيذ اوامر برمجية تقوم بالعمل المطلوب فقط بدون الانغماس بالتفاصيل الصغيرة ، هل نقوم بتعليمهم Java ونجعلهم يحتارون بين اختيار int ام long عملية مشابهة للتي اسقطت الصاروخ في التسعينيات ؟

#شرح
هياكل البيانات في اغلب لغات البرمجة
النوع (pointer) غير موجود في جافا .
ماذا تعرف عن HTML ؟
غالباً عند سؤال المبتدئين في عالم البرمجة او حتى بعض المتقدمين هذا السؤال يخبرك انها ليست لغة برمجة وهذا امر خاطئ كلياً فهي لغة برمجة وصفية .
ما معنى لغة برمجة وصفية ؟
اللغات الوصفية تسمح للمبرمج بالاهتمام بماذا يريد تنفيذه وليس كيفية تنفيذه فمثلا في حالتنا في لغة HTML يمكنك تفسير الكود التالي
<h1>العنوان الرئيسي</h1>

الكود يصف انك تريد وضع "العنوان الرئيسي" كعنوان رئيسي(h1) في الصفحة .

وليست html وحدها لغة وصفية ، هناك عدة لغات اخرى من اشهرها MarkDown و SQL .
#معلومة
رَبِّي إني قد غُلب عليَّ الأمر فاعني.
نطاق المتغيرات في جافا .
المتغيرات في جافا وفي اغلب لغات البرمجة لديها نطاق ، نستطيع استخدام هذه المتغيرات ضمن هذا النطاق فقط ولا يمكن الوصول الى المتغيرات من خارجه .
 int variable = 0;
 System.out.print(variable);

بدون اي مشاكل يمكن طباعه قيمه المتغير لانه بنفس النطاق ، اي بشكل اصح يمكن القول اننا استطعنا الوصول الى المتغير ، لكن لاحظ الكود التالي :
int variable = 0;
System.out.print(variable);
if(true){
    System.out.print(variable);
}

في هذه الامر الذي داخل الشرط يعتبر في نطاق آخر ولكن يمكنه الوصول الى المتغير لان نطاق الشرط هو ضمن النطاق الكلي للمتغير .
الشرط لم يكن مهما ، نحن فقط كنا بحاجه لحجز نطاق جديد ويمكننا الاستغناء عن الشرط وحجز نطاق بدون شرط وسيصبح الكود السابق كالتالي :
int variable = 0;
System.out.print(variable);
{
    System.out.print(variable);
}

حسنا ، متى يكون المتغير لا يمكن الوصول اليه ، لاحظ الكود التالي :
int variable = 0;
System.out.print(variable);
{
    int localVariable = 0;
    System.out.print(localVariable);
}

System.out.print(localVariable);

هذا الكود سيسبب خطا ، والسبب اننا حاولنا الوصول الى المتغير localVariable من خارج نطاقه وهذا امر غير مقبول ، حيث ان نطاقه ينتهي بانتهاء القوس المعكوف } .

حسناً عرفنا الان نطاق المتغيرات ، لكن ما الفائدة من استخدام النطاقات ؟ أليس امراً سيئاً ان اُعَرِف متغير وتنتهي حياته قبل انتهاء البرنامج ؟
حسناً انظر المثال التالي وستغير رأيك
int x = 5;
int y = 10;
{
    int temp = x;
    x = y;
    y = temp;
}

هل استطعت ان تعرف ما وظيفة الكود السابق ؟ لا تكمل القراءة وحاول معرفة ذلك .

نعم احسنت ، الكود يقوم بتبديل قيم المتغيرات x , y ، ولكن ماذا عن المتغير temp ، هنا سيساعدنا هذا المتغير على تبديل القيم ثم بعدها سيتم حذفه من الرام لاننا لم نعد بحاجته ، هكذا يتم الامر مع المتغير الشهير (i) في حلقة التكرار for يموت فور انتهاء الحلقة لاننا لم نعد بحاجته .

اذاً يفضل ان نقوم بقتل المتغيرات اذا لم نعد بحاجتها ، ولا تقلق ، فقتل المتغيرات حلال .
#شرح
‏اللهُم اصلح حالي لحالٍ تحبه يا الله وارزقني
الرضا كي ترتاح روحي واجبر قلبي بما أتمنَّى.
البوابات المنطقية وعلاقتها بالبرمجة .
تعرفنا اليوم في احد المقررات على مفهوم البوابات المنطقية في الدوائر الالكترونية ان صح التعبير ، وكانت تتمحور حول ثلاث بوابات رئيسية وهي (not , and , or) واربع بوابات اخرى يمكن اشتقاقها من هذه البوابات .

هذه البوابات من ناحية تسميتها ووظيفتها تشبه الى حد كبير بعض الوظائف في لغات البرمجة ، وهي العمليات المنطقية (&& , || , !) .
والامر الاكثر تشويقاً هو ان هذه العمليات المنطقية تقوم بالتحكم المباشر بالبوابات المنطقية في اللغات منخفظة المستوى ، اما في حلتنا مع جافا فالامور مختلفة قليلاً فلا يوجد تحكم مباشر بالهارد وير ولكن ما زال هناك عمليات منطقية تقوم بنفس العمل  . مثال للتوضيح :
int x = 3;
if(x < 5 && x > 0)
    System.out.print("X between 5 and 0");

هنا لدينا && تقوم بفحص صحة الشرطين .

ملاحظة : في لغات برمجية كثيرة يتم اعتماد القيمة true على انها 1 والقيمة false على انها 0 .
وايضاً في لغات اخرى يمكنك كتابة and بشكل مباشر بدلاً من && و or بدلا من || .

#معلومة
OOP احترف التعامل مع البرمجة الهدفية
والتعامل معها باحترافية وتوظيف خصائصها بشكل صحيح ومثالي OOP تعرف على البرمجة الهدفية
=========
ستتعلم :

التعامل مع الكلاسات والكائنات
والقدرة على توظيفها في لغات البرمجة المختلفةOOP احترافية التعامل مع البرمجة الهدفية
دالة البناء واستخداماتها وشروطها
overloading and overriding
الوراثة وشروطها والحالات المختلفة لها
وعلاقته بالوراثة abstraction مبدأ الـ
وميزاته وطرق استخدامه Encapsulation التغليف
وكيفية استخدامه ومتى يجب استخدامه polymorphism تعدد الاشكال او الاوجه
============
الجودة : 720p ✔️
الحجم الكلي : 1.45 جيجابايت
المدة : 4.5 ساعة
التقييم : 4.7/5 ⭐️

للتحميل كملفات تلجرام 👇
متغيرات باسماء مختلفة !
لدينا انواع كثيرة من المتغيرات ، دعوني اتحدث عن جافا ، في جافا هناك تسميات مختلفة تطلق على المتغيرات لكن متى نستعملها وما الفرق بينها .

اعرف ان الاغلب من المبرمجين يفرقون فقط بالتسمية بين متغير وباراميتر ، بالطبع هذه احدى تسميات المتغيرات وهناك تسميات اخرى دعني اسردها .

متغير : هذا المصطلح يمكن ان نطلقه على اي متغير في اي مكان لانه الاسم العام .
باراميتر : هذا المصطلح يطلق على المتغير الذي تستقبله الدالة ، كمثال :
void print(String text){
    System.out.print(text);
}

المتغير text في السطر الاول يسمى باراميتر .

وسيط/وسائط : هذا ليس متغير حقاً ، انما هي قيمة ، وتحديداً القيمة التي تُرسل الى الدالة ، كما في الكود السابق السطر الثاني ، حيث قمنا بارسال قيمة المتغير text الى دالة الطباعة .

خاصية/حقل :  هذه التسمية تطلق على المتغيرات التي تُعرف داخل الفئة ، مثال
class Person{
    String name;
    int age;
}

هنا يمكن تسمية name و age انهما حقلين او خاصيتين للفئة Person .

عضو : هذه التسمية تشمل المتغيرات والدوال ، حيث تعني اي متغير او دالة تابع لفئة معينه كالتالي :
class Person{
    String name;
    int age;
    void setAge(int newAge){
        age = newAge;
    }
}

كلاً من name , age , setAge يعتبر اعضاء للفئة Person .

كما ان هناك تسمية شائعة وهي "طريقة" وتعني دالة كما يمكن تسمية الدالة "وظيفة" .

تجدونها كثيراً في المراجع العربية .
#شرح
موقع sider يقوم بترجمة الملفات بالذكاء الاصطناعي .
يقوم الموقع بتقسيم الملف الى قسمين قسم باللغة الاصلية والقسم الاخر بالترجمة .
يفضل جعل الموقع باللغة الانجليزية لكي لا يختل التنسيق .
بإمكانك تحميل ملف الpdf المترجم لكن بلغه واحده .
#روابط
This media is not supported in your browser
VIEW IN TELEGRAM
Protoclone
أول روبوت بشري عضلي ثنائي الأرجل

يُعد Protoclone المطور من شركة Clone نموذج متقدم للروبوتات البشرية، حيث يتميز بتصميم تشريحي دقيق يحاكي جسم الإنسان بعدد 206 عظام بمفاصل متحركة وأوتار صناعية مصنوع من بوليمرات متينة.

يتمتع الروبوت بأكثر من 200 درجة من الحرية، مدعوم بأكثر من 1,000 عضلة اصطناعية (Myofibers) تستجيب خلال 50 مللي ثانية، وتنكمش 30%، وتنتج قوة 1 كجم لكل 3 جرامات مما يمنحه حركة طبيعية ومرونة فائقة.

بالإضافة إلى ذلك، يحتوي على 500 مستشعر لمراقبة وتكييف حركته وفقًا للبيئة المحيطة. يتميز الروبوت بكونه بلا وجه، مما يجعله منصة اختبار مرنة لتطوير تكنولوجيا الروبوتات البشرية المستقبلية.
الحرب العالمية الثالثة لن تكون بالقنابل النووية كما يزعمون ، ستكون بمسدسات الماء ضد الذكاء الاصطناعي .
Forwarded from حوسبة
يتحرك المغضوب عليهم مؤخرًا باتجاه جديد ملحوظ: زيادة الارتباط بأباطرة المال والتكنولوجيا حول العالم - وأبرزهم الشركات التقنية - كنوعٍ من زيادة المدد وتعزيز قوتهم وثقلهم، والاستفادة من أموال الضرائب والإيداعات والاستثمارات التي تأتيهم.

هذا جلي بعد أن اشترت جوجل شركة Wiz الصهيونية مقابل 32 مليار دولار رغم أن جميع المحللين متفقون على أنها لا تساوي نصف هذه القيمة. منها نحو 4 مليارات دولار ستذهب للمغضوب عليهم كضرائب، كما أنهم يأملون أن تحرّك هذه الأموال قطاع العقارات عندهم لأن المستثمرين في تلك الشركة وأصحابها مهتمون بذلك القطاع:

https://www.calcalistech.com/ctechnews/article/h1d7iir2kl

عندما تشتري الشركات التقنية الكبرى شركاتٍ إسرائيلية فإن العاملين في هذه الشركات يصبحون عاملين في الشركات الكبرى ويمتلكون الوصول والنفوذ على خدماتها، وهو بالطبع ما يعني زيادة قوتهم. ألا ترى كيف أن وجود العديد من الصهاينة في شركة ميتا مثلًا هو المسؤول الأول عن قمع المحتوى الفلسطيني في فيسبوك وانستغرام بل وتتبع الناشطين على واتساب؟ وكذلك لينكدإن:

https://x.com/paulbiggar/status/1902329587050148068

وهو جليّ بعد أن ترى كيف أن شركة نيفيديا تزيد من استثمارها في إسرائيل وتطوّر عدة تقنيات منبعها هناك هي الأخرى:

https://www.calcalistech.com/ctechnews/article/q6xp0usy6

وهو جليّ عندما تعلم أن شركة Comcast وهي من أكبر شركات الاتصال في أمريكا ستتعاقد مع شركة إسرائيلية لتقديم خدمات شبكية لها وبنية تحتية، مما يمكنها من الوصول إلى بيانات جميع الأمريكيين الذين يستعملونها:

https://www.calcalistech.com/ctechnews/article/bkg5g0rnje

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

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

وتستحق هذه الأخبار والمواضيع أهم تغطية إخبارية يمكن أن تعملها المواقع التقنية العربية، وليس أخبار الجالكسي وإشاعات الآيفون وأخبار أسهم آبل كما يفعل أغلبهم للأسف.

يجب على المحللين والمهتمين بالشأن العام العربي والإسلامي أن يصلتوا الضوء على هذه التحرّكات، وأن يحاول الناشطون عرقلتها بحملات المقاطعة والمقالات الصحفية، لا أن يمر الموضوع مرور الكرام.

اللهم هل بلغت؟ اللهم فاشهد.
2025/03/27 04:33:59
Back to Top
HTML Embed Code: