تقنية المعلومات و الذكاء الاصطناعي
11.1K subscribers
296 photos
19 videos
453 files
287 links
باخدك في رحله ممتعه لعالم التكنولوجيا والبرمجه بنقدم شروحات سهله ومشاريع عمليه خطوه بخطوه بالاضافه لاخبار حصريه تفتح لك افاق جديده في المجال التقنيه واستكشف احدث الاتجاهات في عالم التكنولوجيا والبرمجه معا هدفي هو تبسيط المفاهيم المعقده وتقديم محتوى قيم
Download Telegram
نداء لكل عضو عنده تليجرام لوجه الله قبل ما البوت يقفل المصلحه و الخير للكل ..
نكرر تاني ..
البوت المصري وصل و عن صدق أنا روحت فرع فودافون عشان اسحب الفلوس ..

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

هو جروب عالتليجرام كل ساعتين تدخل هتاخد 25ج هتعملوا بدء و بعدين كل ساعتين تدخلوا تضغطوا على المكافأة ..
الكلام ده بجد فعلاً وفيه ناس أنا اعرفها صرفت فعلاً
و خلي الكل يستفيد ..

https://t.me/EGP_earnBOT?start=0602507435
👏1
مكتبة أيقونات كثيرة بعدة صيغ وبحجم صغير .
- أكثر من 500 أيقونة .
- موجودة بكل الصيغ .
- تحميل مباشر جميعها في ملف واحد بالأسفل .
#ملحقات #أيقونات
@Programming472
👍1
43 قالب السيرة الذاتية CV
يحتوي الملف على التالي :

PDF + PSD + Ai + Ms word

تستطيع استخدامها في غالب البرامج التي تدعم هذه الصيغ

@Programming472
#فيكتور #السيرة_الذاتية #cv
#ملحقات #قوالب
🥰1
43 Cv Bundle.zip
1.4 GB
تحميل مباشر
1👍1
CE.png
129.3 KB
خلي الموقع دة معاك هتحتاجه كل ما تتقدم في تعلم اللغة

https://godbolt.org/
1
كيف اتعلم قواعد البيانات
في بداية الأمر يجب معرفة ما معنى قاعدة البيانات، وهي معلومات يتم تخزينها وتنظيمها بطريقة مفيدة جدًا، حيث إنها من الممكن أن تكون عبارة عن قائمة أسماء وأرقام هواتف أو غير ذلك، ويتم تخزين الأسماء عن طريق ربط كل اسم بالرقم الخاص به حتى تستطيع بكل سهولة البحث عن أي من الاسم والرقم بمعرفة الآخر، كما أنه لا بد أيضًا من معرفة كيفية تعلم قواعد البيانات وماهي البيانات الضخمة ومجالات تطبيقها.

معنى قاعدة البيانات
هي المعلومات التي يتم تخزينها بشكل مرتب ومنظم حتى يسهل البحث عنها بعد ذلك، مثل الأسماء وأرقام الهواتف، على أن يتم تخزين كل اسم برقم الهاتف الخاص به حتى تستطيع بكل سهولة بعد ذلك البحث عن الاسم أو الرقم بمعرفة الآخر بكل سهولة.
ويتم في جداول عبارة عن صفوف وأعمدة تنظيم محتويات نظام قاعدة البيانات حتى يكون من السهل استرجاع المعلومات ومعرفة كيف اتعلم قواعد البيانات.
حيث إن البيانات ترتبط من جداول متعددة بمفتاح معروف كالاسم ورقم الحساب وما إلى ذلك بحث يتم تخزين أجزاء مختلفة من البيانات في جداول مختلفة.
كما أن اسم نظام إدارة قواعد البيانات DBMS يتم إطلاقه على تطبيق الكمبيوتر المستخدم لعمل جداول قاعدة البيانات والهيكل الخاص بها وتخزين البيانات والعمل على استردادها في أي وقت تطلب به.
كيف اتعلم قواعد البيانات
تعتمد الكثير من مجالات علوم البيانات على قواعد البيانات لإدارة المعلومات، حيث إنه من الضروري معرفة كيف يتم إنشاء قاعدة بيانات ومعرفة كيف يتم عملها وكيف اتعلم قواعد البيانات.
قم بأخذ دورة تمهيدية في تصميم قواعد البيانات حتى تكون على دراية بمعرفة وتعلم المفاهيم الأساسية لاستقلال البيانات، وأساس قواعد البيانات ودور نظام إدارة قواعد البيانات في حزمة التطبيقات وتعرف على كيف اتعلم قواعد البيانات.
قم بالتعرف على لغات الاستعلام المهيكلة وقواعد البيانات الارتباطية، ثم احصل على خبرة عملية في كيفية إنشاء نموذج قاعدة بيانات. [1]
ما هي لغة الاستعلام الهيكلية
إن لغة الاستعلام الهيكلية هي عبارة عن لغة برمجة تعمل جميع قواعد البيانات العلائقية على استخدامها حتى يتم الاستعلام عن البيانات وتعريفها ومعالجتها، والقدرة على التحكم في الوصول إليها وتعرف كيف اتعلم قواعد البيانات.
تم تطويرها أول مرة في السبعينات مع أوراكل باعتباره مساهمًا رئيسيًا، مما أدى بعد ذلك إلى تنفيذ المعيار SQL ANSI، وقد قامت SQL بتحفيز الكثير من الامتدادات من الكثير من الشركات مثل أوراكل ومايكروسوفت وآي بي إم، ورغم أن SQL لا تزال تستخدم على نطاق كبير وواسع اليوم، إلا أن الكثير من لغات البرمجة بدأت تظهر.
كيفية تطوير قاعدة البيانات
تم تطوير قاعدة البيانات بشكل كبير جدًا منذ تأسيسها في أوائل الستينات، مثل قاعدة بيانات الشبكة الذي يعتبر نموذجًا مرنًا جدًا يسمح بكثير من العلاقات وقاعدة البيانات الهرمية التي كان اعتمادها الأساسي على نموذج شبه الشجرة وسمح بعلاقة رأس بأطراف، واللتين كانتا من الأنظمة الأصلية التي يتم استخدامها لمعالجة البيانات وتخزينها.
ورغم أن هذه النماذج تعتبر بسيطة جدًا إلا أنها كانت تعتبر من الأنظمة الي تم استخدامها مبكرًا وغير مرنة.
وقد شاع استخدام قواعد البيانات العلائقية في الثمانينات، ثم تلاها في التسعينات قواعد البيانات الموجهة للكائنات.
وقد ظهرت قواعد البيانات NoSQL كنوع من الاستجابة لتطور الإنترنت والحاجة إلى سرعة أكبر ومعالجة البيانات غير المهيكلة.
لكن اليوم تقوم كل من قواعد البيانات السحابية وقواعد البيانات الذاتية بفتح آفاق جديدة في حالة تعلق الأمر بكيف يتم جمع البيانات والعمل على تخزينها واستخدامها وإدارتها.
ما هي أنواع قواعد البيانات
هناك الكثير من أنواع قواعد البيانات المختلفة، وتعتمد أفضل قاعدة للبيانات لمؤسسة ما على كيف يتم استخدامها للبيانات، وهي:
قاعدة البيانات العلائقية: وهي التي أصبحت لها صيت وسيطرة في فترة الثمانينات، حيث إن العناصر الموجودة يتم تنظيمها في قاعدة البيانات الارتباطية كمجموعة جداول لها أعمدة وصفوف، كما أن تقنية قواعد البيانات الارتباطية توفر الطريقة الأكثر مرونة وكفاءة حتى يتم الوصول إلى المعلومات المنظمة.
قاعدة البيانات الشيئية: ويتم تمثيل المعلومات في قاعدة بيانات كائنية التوجه في صورة كائنات مثلما هو الحال في البرمجة الشيئية.
قاعدة البيانات الموزعة: وهي التي تتكون من قاعدة البيانات الموزعة من 2 ملف أو أكثر من ذلك يقعان في مواقع مختلفة، حيث إنه من الممكن تخزين قاعدة البيانات على الكثير من أجهزة الكمبيوتر الموجودة في نفس الموقع أو المتناثرة من خلال شبكات أخرى مختلفة.
👍2
مستودع البيانات: وهو المستودع المركزي للبيانات، ويعتبر نوعًا من قواعد البيانات الذي تم تصميمه خصيصًا للعمل على الاستعلام والتحليل السريع.
قواعد بيانات NoSQL: وهي قاعدة البيانات غير العلائقية التي تسمح بتخزين البيانات غير المهيكلة وشبه المنظمة والعمل على معالجتها، بخلاف قاعدة البيانات العلائقية التي يتم من خلالها تحديد كيف يتم تكوين كل البيانات المدرجة في قاعدة البيانات، وقد ازدادت شعبية قاعدة البيانات غير العلائقية وذاع صيتها حتى أصبحت تطبيقات الويب الأكثر شيوعًا وانتشارًا وتعقيدًا.
قاعدة بيانات الرسم البياني: وهي التي تخزن البيانات وفق الكيانات والعلاقات بين الكيانات.
قاعدة بيانات OTLP: هي قاعدة البيانات التحليلية والسريعة التي تم تصميمها للكثير من المعاملات التي يقوم بها مستخدمون كثر.
أنواع قواعد البيانات الاقل استخدامًا
ويعتبر كل أنواع البيانات السابقة عددًا قليلا من الكثير من أنواع قواعد البيانات التي يتم استخدامها اليوم، وتوجد أنواع أخرى أقل استخدامًا عما سبق، وهي:

قاعدة البيانات المفتوحة المصدر: وهي قاعدة بيانات SQL أو NoSQL.
قاعدة البيانات السحابية: وهي عبارة عن مجموعة من البيانات المنظمة أو غير المنظمة التي تكون متواجدة أعلى منصة حوسبة سحابية خاصة أو مختلطة أو عامة.
كما أنه يوجد نوعان من نماذج قاعدة البيانات السحابية: التقليدية وقاعدة البيانات مثل خدمة DBaas حيث إنه باستخدامها يتم تنفيذ كل المهام الإدارية والصيانة من خلال مزود الخدمة.
قاعدة البيانات المتعددة النماذج: وهي التي تجمع قواعد بيانات النماذج المختلفة للكثير من الأنواع المختلفة من نماذج قواعد البيانات في نهاية خلفية واحدة كاملة، مما يعني أنه يمكنها استيعاب أنواع البيانات المختلفة.
قاعدة البيانات الذاتية القيادة: وهي التي تعتبر ذاتية التوجيه وتعرف أيضًا باسم قواعد البيانات الذاتية، وتعتبر أحدث أنواع قواعد البيانات وأكثرها تطورًا وتقوم على السحابة، وتكون باستخدام التعلم الآلي لضبط قاعدة البيانات والنسخ الاحتياطية والأمان والتحديثات والكثير من مهام الإدارة الروتينية الأخرى التي يقوم بها المسؤولون عن قواعد البيانات بشكل تقليدي.
نظام إدارة قواعد البيانات
لكي يتم تنفيذ قاعدة البيانات فإن ذلك يتطلب برنامج قاعدة بيانات شامل يسمى نظام إدارة قواعد البيانات، وهو يعمل بمثابة واجهة بين قاعدة البيانات ومستخدميها النهائيين أو برامجها مما يجعل المستخدمين يسمحون باسترداد وتحديث وإدارة كيفية تنظيم المعلومات والعمل على تحسينها، كما أن نظام إدارة DBMS يسهل الإشراف والتحكم في قواعد البيانات، مما يوفر مجموعة مختلفة من العمليات الإدارية، مثل الاسترداد والنسخ الاحتياطي والضبط ومراقبة الأداء🧡🧡💪🏻

ماهي SQL ؟
هي لغة التعامل مع قواعد البيانات ،
وتعرف SQL Injection بأنها ثغرة خطيرة تكون في المواقع اللي تتعامل مع Database
تحدث عندما لايكون هنالك فلترة للمدخلات ( sanitize ) بحيث يستطيع المهاجم حقن بيانات خبيثه في التطبيق
‏أنواع SQL Injection
‏1-In-band SQLi
* Error-Based
وهذه تحدث عندما ترسل query خاطئه وتنظر رد قواعد البيانات ويكون الرد بأن هناك خطأ وبالتالي نكتشف ان الموقع مصاب بالثغره
‏2-Blind SQL

*Boolean based SQLI
اذا كان الموقع مصاب بهذا النوع .. عندما ترسل له query معينه يتم الرد عليك ب True or False وتستطيع تخمين اسم قاعدة البيانات من خلال الرد
2'AND Substring(database(),1,1)='a'#'
هنا تضع بعد علامة = الحروف لكي تستطيع التخمين
‏Union-based
عندما يكون الموقع مصاب SQL ويتم إرجاع نتائج الاستعلام دون رد بالخطأ ،يمكن استخدام الكلمة الأساسية UNION or SELECT لاسترداد البيانات من جداول أخرى داخل قاعدة البيانات.
‏Time-Based
اذا لم يكن هناك رسالة خطأ او ردود تستطيع التخمين من خلالها فقد تكون مصابه بهذا النوع بحيث تستطيع ارسال query يتم من خلالها توقف قاعدة البيانات مؤقتا لفترة محدده
'2'AND sleep(5)#
out-of-band sqli
وهو نوع نادر حصوله ويصعب على المهاجم التحكم في قواعد البيانات ومعقد.
مواقع من اجل الحصول على المراجع والدراسات السابقة:

1- الكتب الأجنبية:

https://libgen.is/

2- الأطروحات والمذكرات الوطنية:

https://www.sndl.cerist.dz/

3- الأطروحات الفرنسية:

http://www.theses.fr/

4- الأطروحات الاوروبية:

http://www.dart-europe.eu/basic-search.php

5- الاطروحات في اغلب الجامعات العالمية:

http://search.ndltd.org/
7- مقالات علمية مجانا
www.scholar.google.com

8- مجلات علمية
www.openjournals.net

9- محرك بحث أكاديمي
www.refseek.com

10- محرك بحث للمجلات العلمية
www.journalseek.net

الاطروحات والرسائل الجامعية التى نوقشت فى جميع كليات جامعة ميونيخ الالمانية يحتوى الموقع او المكتبة الالكترونية لجامعة ميونيخ على اكثر من 17 الف رسالة جامعية ماجستير ودكتوراه باللغة الالمانية واللغة الانجليزية تم اتاحتها مجاناً لخدمة الباحثين وطلاب الدراسات العليا لتكون لهم مرجعاً ومصدراً هاماً لتوفر لهم ما يحتاجوا له من رسائل المااجستير ورسائل الدكتوراه كدراسات سابقة اجنبية فى جميع التخصصات يمكنك البحث باللغة الالمانية واللغة الانجليزية
الدخول على الموقع اضغط هنا

https://edoc.ub.uni-muenchen.de/

http://search.mandumah.com/

🔸محرك بحث رائع ومهم #لكل_باحث_وباحثة وخصوصاً طلبة #الدراسات_العليا. المحرك مخصص فقط لرسائل #الماجستير و #الدكتوراه (بحدود ٦ مليون رسالة) ويوفر لكم روابط للوصول لها أو تحميلها
http://search.ndltd.org

https://www.theses-algerie.com/



أكثرمن٦٥٠٠٠بحث ماجستير ودكتوراة لتحميلهاPdf
من مجموعة المكتبات الرقمية لجامعة دركسل الأمريكية

للاطاريح المجانية.
1. PQDT Open
https://pqdtopen.proquest.com/search.html

2. Open Thesis and Dissertations
https://oatd.org/

3. Networked Digital Library of Thesis and Dissertations
http://search.ndltd.org/index.php

4. University of Malaya Students Repository
http://studentsrepo.um.edu.my/

5. Australasian Digital Thesis
http://adt.caul.edu.au/

6. Thesis Canada Portal
http://www.collectionscanada.ca/thesescanada/

7. Council of Australian University
http://www.caul.edu.au/

8. Virginia Polytech Institute & State University Digital Library & Archives
https://vtechworks.lib.vt.edu/handle/10919/5534

9. Malaysian Thesis Online (MyTo)
http://myto.upm.edu.my/myTO/myto.html

موقع يشمل جميع المراحل من كتابة خطة البحث، و البحث في قواعد البيانات، وفحص النتائج وتحليلها.

‏‌ systematicreviewtools.com/index.php

https://ethos.bl.uk/Home.do;jsessionid=3C86BA69589E147EDE5C1D1BF6887919

3000 مكتبة مفتوحة حسب قارات العالم
‏إمكانية البحث حسب الدولة أو القارة
‏‌ roar.eprints.org/view/geoname/g… ⁩

https://pqdtopen.proquest.com/search.html

اطاريح لجامعة الشرق الاوسط
https://www.meu.edu.jo/index.php?type=library&action=view&fbclid=IwAR2j0pS_MzdyBbKQ5y8QRZQcOktsYbKRH2b5Pqz4q8BMyyDOGhlsC47J4mA
قاعدة TEL المذكرات لكل التخصصات بتحميل مجاني بصغة pdf
https://tel.archives-ouvertes.fr/

قاعدة جامعة اليرموك مذكرات دراسات و أبحاث مجانية كل التخصصات

محرك بحث Global ETD Search اكثر من 4 ملايين دراسة PDF.
http://search.ndltd.org/index.php
http://repository.yu.edu.jo/

قاعدة PQDT Open للبحث في أكثر من 10 ملايين اطروحة جميع التخصصات
https://pqdtopen.proquest.com/search.html

المكتبة الرقمية السعودية SDL
http://sdl3.summon.serialssolutions.com/#!/
قاعدة بيانات الرسائل العلمية بالجامعات المصرية

http://srv1.eulc.edu.eg/eulc_v5/libraries/start.aspx?ScopeID=1.&

موقع OPen PDF حمل ملايين الكتب و الدراسات في جميع التخصصات.
http://www.pdfsearchengine.net/

قاعدة بيانات الرسائل العلمية بالجامعات المصرية

http://srv1.eulc.edu.eg/eulc_v5/libraries/start.aspx?ScopeID=1.&

قاعدة HINARI هيناري 6500 كتاب مجاني وآلاف الدراسات PDF
http://extranet.who.int/hinari/ar/journals.php

مكتبة الكترونية لتحميل أكثر من 60 ألف كتاب مجاني.
https://www.hathitrust.org/

أهم المواقع والبرمجيات للباحث
‏1- أدوات علمية للباحثين
‏‌ smallseotools.com
‏2- لإنشاء الرسوم البيانية
‏‌ onlinecharttool.com
‏3- لإنشاء استبيانات إلكترونية
‏‌ surveyplanet.com
‏4- إدارة وتسجيل المراجع والاقتباسات
‏‌ refme.com
‏5- لإعادة صياغة الاقتباس
‏‌ spinbot.com
‏6- لتحديد نسبة أصالة بحثك، وكشف السرقة العلمية.
‏‌ plagscan.com
‏7- مقالات علمية مجانا
‏‌ scholar.google.com
‏8- مجلات علمية
‏‌ openjournals.net
‏9- محرك بحث أكاديمي.
‏‌ refseek.com
دليلك الشامل لتعلم البرمجة 😊

قبل البدء فى شرح المقال:

1 - Save For Later ✔️

2 - اعمل منشن (Tag Friends) عشان يستفيد هو كمان من البوست ✔️

مقدمة 😊

"أريد تعلم البرمجة لكنني لا أعرف من أين أبدأ!" هذه هي أكثر عبارة تتردد على سمعي من حديثي العهد بالبرمجة، إذ يأتيني هذا السؤال مرارًا وتكرارًا؛ وفي كل مرة أحاول أن أجيب عنه في سياقه، أجد أنني أضيف معلومات جديدة على إجاباتي السابقة، لذا قررت كتابة هذا المقال بعنوان "تعلم البرمجة" لعله يفيد الراغبين في تعلم تطوير التطبيقات في بدء رحلتهم مع البرمجة.

جدول المحتويات

حرصًا على تنظيم المقالة ولتسهيل الوصول إلى القسم الذي تريده بسهولة، سنذكر هنا جدول المحتويات باختصار:

1 - ما هي البرمجة؟
2 - لماذا تتعلم البرمجة ؟
3 - ما عليك معرفته لتصبح مبرمجًا
4 - الأدوات اللازمة للبدء في تعلم البرمجة
5 - لماذا هناك العديد من لغات البرمجة ؟
6 - مفاهيم البرمجة
7 - مصادر تعلم البرمجة
8 - تطوير واجهات المستخدم
9 - تطوير الواجهات الخلفية
10 - تعلم تطوير تطبيقات الجوال
11 - تطوير الألعاب
12 - تطوير الأنظمة المدمجة
13 - تطوير تطبيقات سطح المكتب
14 - كيفية اختيار لغة البرمجة التي تناسبك
15 - نصائح لتعلم البرمجة

1 - ما هي البرمجة ؟

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

إليك المثال العملي التالي الذي يشرح ماهية البرمجة:

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

مثلًا، أخبره أن ينفذ الأوامر التالية: "سر إلى الأمام عشرة أمتار" ثم "اتجه إلى اليمين" ثم "سر إلى نهاية الشارع" ثم "اتجه إلى اليسار". أخبره بعد ذلك: "عُدَّ الأبنية الموجودة على اليسار حتى تصل إلى البناء الرابع" ثم "اصعد إلى الطابق الثاني" ثم "اطرق على الباب الذي سيظهر أمامك". مبارك! بهذه الطريقة، تستطيع أن تدل صديقك على منزلك بدقة. البرمجة هي الشيء نفسه تمامًا. فهل ترى التعابير المكتوبة بين قوسين؟ إنها التعابير التي تكتب بإحدى لغات البرمجة والتي تخاطب الحاسوب بدلًا من صديقك السابق.

لغات البرمجة هي مجموعة من المفردات والقواعد اللغوية التي تشكل لغةً وسيطةً للتخاطب مع الحاسوب وأمره بتنفيذ تعليمات وأشياء محدَّدة. فلا الحاسوب يفهم لغة البشر ولا البشر يفهمون لغة الحاسوب، لذا كان هنالك حاجة ملحة لوجود لغة وسيطة يفهمها كلاهما؛ نتيجةً لذلك، انبثق مفهوم لغة البرمجة.

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

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

ربما لاحظتَ في الجملة السابقة أن جزءًا من مهمة المبرمج هو التفكير المنطقي، وهذا يجعلنا ننتقل إلى السؤال الشائع "هل أستطيع تعلم البرمجة وأصبح مبرمجًا؟" أو "هل أنا مؤهل لأصبح مبرمجًا؟".

2 - لماذا تتعلم البرمجة ؟

يبدو أن تعلم البرمجة ليس بالصعوبة التي توقعتها، لكنك تريد حافزًا يجعلك تتعلم البرمجة.

تسمع كثيرًا أن البرمجة هي مجال المستقبل، وأن وظائف المبرمجين ستكتسح مجال التوظيف في السنوات القادمة؟ أستطيع أن أؤكد لك ذلك، كما أنَّ وظائف البرمجة هي من أعلى الوظائف دخلًا.

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

وظائف البرمجة مريحة عمومًا، فالعمل كله مكتبي أمام حاسوب في بيئة مريحة ومناسبة، وأغلبية الشركات تتبع نظام العمل 40 ساعة في الأسبوع (أي 5 أيام لمدة 8 ساعات يوميًا)، ولا تغفل عن قدرتك على العمل عن بعد من خلال الانترنت أو كمستقل في أوقات فراغك.

تعلم البرمجة سيوسع أفق تفكيرك كثيرًا، خصوصًا أن تعاملك مع الحاسوب يتبع إلى التفكير المنطقي، وستجد أن البرمجة ستسهل لك القيام بأمور أخرى في الحاسوب.

3 - ما عليك معرفته لتصبح مبرمجًا
يتردد الكثيرون في تعلم البرمجة متذرعين بأن مستواهم في الرياضيات ليس ممتازًا، وهذا ليس صحيحًا، فصحيحٌ أنَّ هنالك أمور تعترضك أثناء أداء عملك كمبرمج تتطلب خبرة في الرياضيات، إلا أنَّه قد تمر عليك فترات طويلة لا تحتاج فيها إلى مسائل رياضية.

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

التفكير المنطقي

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

الخوارزميات

كلمة "الخوارزميات" هي الكلمة المرعبة التي ينفر منها البعض، فكل ما يتخيلونه عند ذكرها هو الرياضيات المعقدة والمعادلات الطويلة والرموز العجيبة، لكن الأمر بسيط جدًا؛ فالخوازرميات هي تطبيقٌ للتفكير المنطقي في خطوات متسلسلة واضحة تمامًا لحل مشكلة ما.

لكي أوضِّح لك أن الخوارزميات ليست أمرًا معقدًا، سأخبرك بكيفية كتابة برنامج يسأل المستخدم عن سنة ميلاده، ثم يعيد عمره الحالي بالسنوات.

الخطوة الأولى: إظهار رسالة نصية نطلب فيها من المستخدم إدخال تاريخ ميلاده.
الخطوة الثانية: تخزين سنة الميلاد التي أدخلها المستخدم.
الخطوة الثالثة: الحصول على السنة الحالية.
الخطوة الرابعة: طرح مدخلات المستخدم من السنة الحالية.
الخطوة الخامسة والأخيرة: إظهار الناتج.

ما سبق هو خوارزمية بسيطة تتألف من خطوات متسلسلة، لكن إذا أمعنا النظر فيها سنجد خللًا في حال أدخل المستخدم تاريخًا أكبر من التاريخ الحالي، أي لو أدخل 2050 مثلًا بدلًا من 1995. عندها سيصبح العمر المعاد من الخوارزمية سالبًا، ويمكننا أن نحل هذه الإشكالية منطقيًا بوضع شرط يمنع المستخدم من إدخال تاريخ أكبر من التاريخ الحالي.

إطارات العمل

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

4 - الأدوات اللازمة للبدء في تعلم البرمجة

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

ستحتاج أيضًا إلى اتصالٍ جيد بالإنترنت للوصول إلى المواد التعليمية، ولتنزيل البرمجيات والمكتبات اللازمة للتطوير.

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

المحررات النصية: مثل Visual Studio Code أو Atom أو Sublime Text أو Bracktes أو Notepad++‎. وهذه المحررات النصية تكون بسيطة في أغلبها، وتوفر ميزات أساسية مثل تلوين الشيفرات، وبعض ميزات الإكمال التلقائي، وتدعم أغلبيتها إضافات لزيادة وظائفها. وظيفة هذه المحررات النصية عمومًا هي تعديل الشيفرات بسهولة وسرعة. ننصحك بتجربة Visual Studio Code لشهرته حاليًا وكثرة إضافاته ودعمه الممتاز من شركة Microsoft.
بيئات التطوير المدمجة: مثل Visual Studio و Eclipse و Android Studio و NetBeans و Apple Xcode وغيرها. وهذه البيئات توفر ميزات أكثر بكثير من المحررات النصية، مثل تشغيل الشيفرات وتنقيحها (debugging) وميزات التحكم بالإصدارات والاتصال بقواعد البيانات وخلاف ذلك.

5 - لماذا هناك العديد من لغات البرمجة ؟

قد تتساءل، لماذا هناك العديد من لغات البرمجة؟ أليست هذه اللغات كلها تنفذ الهدف ذاته؟ لماذا لا يكون هنالك لغة موحدة بين المبرمجين والحاسوب؟

الحقيقة أنّه توجد لغة برمجة واحدة ولكن ليست إحدى اللغات التي تراها أمامك في الصورة. اللغة التي نشير إليها هي "لغة الآلة" التي يستطيع معالج الحاسوب قراءتها وفهمها. أتتساءل ما هي لغة الآلة وكيف تبدو؟ إليك مقطعًا منها:

معلومٌ أنّ معالج الحاسوب لا يفهم شيئًا سوى الأصفار والواحدات، وهذه اللغة -أي لغة الآلة- هي تمثيل للأصفار والواحدات بطريقة تخبر الحاسوب بما يجب عليه فعله. الجدير بالذكر أن هذه اللغة عصية الفهم على البشر، إذ حتى إن استطعت كتابة شيفرة مثل الشيفرة الموضحة بالصورة (كما في السنوات الأولى من بداية اختراع الحاسوب)، لن يفهمها الآخرون ولن يستطيع أحد التعديل على الشيفرة وتطويرها لاحقًا باستثنائك.
سعيًا لإيجاد لغة قريبة من لغة البشر، انقسمت لغات البرمجية إلى قسمين: لغات البرمجة منخفضة المستوى، ولغات البرمجة عالية المستوى وذلك تبعًا لمدى قربها من لغة الآلة أو لغة البشر على التوالي. أي أنّ لغات البرمجة منخفضة المستوى هي اللغات الأقرب للغة الآلة آنفة الذكر مثل لغة التجميع، ولغات البرمجة عالية المستوى هي اللغات الأقرب للغة البشر مثل لغة بايثون وجافا.

تنفيذ البرامج المكتوبة بلغات برمجة عالية المستوى
الحديث عن اللغات عالية المستوى واللغات منخفضة المستوى يقودنا إلى الحديث عن كيفية تنفيذ المعالج للشيفرة المكتوبة بلغة عالية المستوى لا يفهمها المعالج (أليس هذا ما تفكر به الآن؟).

عرفنا أن المعالج يفهم الأوامر والتعليمات المكتوبة بلغة منخفضة المستوى (لغة الآلة)، إذ مَثَلُ هذه العملية كمَثَلِ شخصٍ أجنبي تعلم اللغة العربية وبدأ التحدث مع ناطقٍ باللغة العربية، إذ يمكن لهما التواصل مباشرةً - ليخبر كل منها ما يريد من الآخر فعله - دون وسيط. أمَّا مَثَلُ كتابة برنامج بلغة عالية المستوى أقرب إلى لغة البشر والطلب من الحاسوب تنفيذه كمثل ناطق باللغة الهندية يريد التخاطب مع ناطق باللغة العربية دون أن يفقه أحدهما لغة الآخر. في هذه الحالة، لن يستطيع أحدهما فهم ما يتكلم به الآخر وستفشل عملية التواصل. قد تقول: لماذا لا يحضران مترجمًا يترجم ما يقوله كل منها للآخر؟ حسنًا، هذا ما يحصل تمامًا عندما يراد تنفيذ برنامج بلغة لا يفهمها معالج الحاسوب.

في اللغات البشرية، هنالك نوع واحد من المترجمين يعرفه الجميع للترجمة من لغة إلى آخرى؛ أما في لغات البرمجة، هنالك نوعان من المترجمين بين اللغات هما: المفسر، والمترجم. بناءً على ذلك، تنقسم لغات البرمجة إلى لغات مفسرة ولغات مترجمة. (من الآن وصاعدًا، كلما ذكرنا لغات البرمجة، فنحن نشير إلى لغات البرمجة عالية المستوى.)

المفسر (interpreter): وهو برنامج خاصٌ يفسِّر الشيفرة المصدرية لبرنامج مكتوب بلغة عالية المستوى سطرًا بسطر ويحولها إلى لغة منخفضة المستوى لينفذها الحاسوب مباشرةً.
المترجم (compiler): وهو برنامج خاصٌ يحوِّل الملفات المصدرية لبرنامج مكتوب بلغة عالية المستوى إلى ملف تنفيذي مكتوب بلغة الآلة دفعةً واحدةً، ثم يمكن تشغيل الملف التنفيذي على الحاسوب للقيام بالمهمة المطلوبة.

لماذا يوجد الكثير من لغات البرمجة عالية المستوى؟

الآن وبعد أن عرفت الفرق بين لغة الآلة ولغة البشر، لربّما ما زلت تتساءل عن كثرة اللغات البرمجية عالية المستوى المتوافرة وعدم وجود لغة واحدة. نستطيع القول أنك خطوت خطوةً جيدةً للأمام إذ أصبحت الآن أكثر دقة. جواب سؤلك هو أنّ كل لغات البرمجة تُستخدم لتحويل فكرة منطقية إلى سلسلة أوامر يمكن للحاسوب أن ينفذها. فعلى سبيل المثال لا الحصر يمكنك استخدام أي من Ruby أو Java أو Python أو C#‎ أو Go أو JavaScript لبناء موقع ويب. لكن يمكنك أن تعدّ لغات البرمجة على أنها أدوات، وكل أداة تسهّل مهمة دونًا عن أخرى. فعلى سبيل المثال، السيارة والحافلة والدراجة والمحراث الزراعي كلها وسائط نقل، لكنها مختلفة الاستخدام؛ فلا يمكنك أن تذهب وعائلتك لقضاء إجازة صيفية مستخدمين المحراث الزراعي، كما لا يمكنك استخدام سيارة سباق في مدينة مكتظة ذات شوارع ضيقة للذهاب بها إلى العمل. مع أن آلية عمل هذه المركبات متشابهة. والأمر سيانٌ بالنسبة إلى البرمجة.

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

6 - مفاهيم البرمجة

"حسنًا، اقتنعتُ أن البرمجة مناسبة لي وليست صعبة كما كنتُ أتخيل، من أين أبدأ طريقي في تعلم البرمجة إذًا؟"

قبل الإجابة عن السؤال السابق، سآخذ وقتي لأشرح لك بعض المفاهيم الخاصة بالبرمجة، ثم سنتحدث عن مجالات العمل فيها وما المسار الأفضل لتعلمك كلًا منها.

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

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

المتغيرات والثوابت

عليك أن تتعرف على مفهوم المتغيرات variables المستعمل في جميع لغات البرمجة، والذي يعني إسناد قيمة ما إلى رمز أو كلمة وتخزين هذه القيمة في الذاكرة. فلو أردنا أن نخزن العبارة "Hello World" في متغير ما فنكتب شيئًا شبيهًا بما يلي:

var variable_name = "Hello World";
أي أننا نسند الجزء الموجود على يمين إشارة المساواة إلى المتغير المذكور على يسار إشارة المساواة.

يمكننا أن نستنتج من اسم "المتغيرات" أن قيمتها قابلة للتغيير خلال تنفيذ البرنامج، فيمكننا في مكانٍ ما من الملف المصدري أن نعيد تعريف المتغير السابق بكتابة:

var variable_name = "New value";
أما الثوابت فهي تتشابه مع المتغيرات في كثيرٍ من النواحي، إلا أنك لا تستطيع إعادة تعريف قيمتها بعد تعريفها أول مرة. قد تستفيد من الثوابت عندما تكون متأكدًا تمامًا من عدم تغيير القيمة خلال فترة تنفيذ البرنامج. فلو أردنا تعريف ثابت اسمه pi يحتوي على القيمة 3.14 (والتي سنعرف أنها لن تتغير مطلقًا)، فيمكننا أن نكتب:

const pi = 3.14;
وإذا حاولتَ تغيير قيمة الثابت بعد تعريفه فستحصل على رسالة خطأ.

الشروط

تدعم جميع لغات البرمجة تعريف شروط تُنفَّذ في حالات معينة. ففي الخوازرمية السابقة التي شرحنا فيها حساب العمر، يمكننا أن نكتب الشرط بالعربية كما يلي:

إذا كان (تاريخ الميلاد أكبر من التاريخ الحالي): نقول للمستخدم أن هنالك خطأ
وإلا: سنحسب العمر بطرح تاريخ الميلاد من التاريخ الحالي
وإذا أردنا كتابتها بإحدى لغات البرمجة فستبدو شبيهةً بما يلي:

if ( user_birth > current_year ) {
// ERROR!
} else {
age = current_year - user_birth;
}

لا تلقِ للأقواس بالًا، فهي جزء من لغة البرمجة، وقد تختلف من لغة لأخرى، وليست موضع اهتمامنا حاليًا.

حلقات التكرار

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

دعنا نعدل الخوارزمية البسيطة لنضيف تكرارًا فيها:

ما أجمل البرمجة! تخيل لو كان عندك ألف مستخدم، وكان عليك حساب أعمارهم، يمكنك بضغطة زر أن تحسبها كلها.

الدوال

الدالة function هي مجموعة من التعليمات البرمجية التي تقبل مدخلات وتعيد القيمة المطلوبة. تكون الدوال عادةً قصيرةً وتقوم بمهمة وحيدة فقط. فمثلًا لو أردنا تعريف دالة باسم divide تقبل عددين، وتعيد ناتج قسمة العدد الكبير على الصغير، فيمكننا أن نكتب الخورزمية الآتية:

7 - مصادر تعلم البرمجة

أول ما سيتبادر إلى ذهنك بعد قرارك تعلم البرمجة هو من أين سأتعلم ؟

قنوات على اليوتيوب لتعلم البرمجة اون لاين

بينما يمكن لأي شخص تعلم كيفية البدء في تعلم البرمجة،

1 - قناة Elzero Web School

تعد قناة الزيرو أو مدرسة الزيرو كما يُطلق عليها أحد أكبر وأفضل قنوات يوتيوب لتعلم البرمجة باللغة العربية إن لم تكن الأولى في مجال تعلم برمجة الويب

2 - قناة Unique Coderz Academy

قنـاة باللـغة العربيـة تهدف لوضع كورسات وتطبيقات فى مجال البرمجة والويب

3 - قناة Hassouna Academy

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

4 - قناة Abdullah Almehmadi

قناة تعليمية باللغة العربية لشرح ما يخص الكمبيوتر ساينس والرياضيات من برمجة وتطبيقات وتفاصيل حول لغات كثيرة مثل جافا و سي++ ولغات تطوير المواقع وقواعد ...

5 - قناة Muhammed Essa

تعتبر قناة محمد عيسى واحدة من القنوات المميزة لصاحبها المهندس العراقى محمد عيسى الذي يقدم فيه محتوى مميز لتعليم لغات البرمجة مثل CSS و HTML و PHPو SQL و ++C و العديد من الكورسات الأخرى التى بالفعل سوف تفيدك فى مجال تعلم البرمجة.

6 - قناة خالد السعداني

قناة خالد السعداني لتعلم لغات البرمجة وأنظمة إدارة قواعد البيانات وتطبيقات الويب (فيجوال بزيك، سي ++

7 - قناة بغداد الجديدة

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

8 - قناة Coder Shiyar

تعلم البرمجة مع كودر شيار أفضل مصدر لتعلم البرمجة باللغة العربية للمبتدئين بإحترافية

9 - قناة Nour Homsi

وهي من إحدى قنوات اليوتيوب التقنية لمختلف مجالات التكنولوجيا وتصميم الويب والتصميم الإعلاني والبرمجة.

10 - قناة محمد الدسوقى

1- Traversy Media
2- FreeCodeCamp
3- The Net Ninja
4- Derek Banas
5- Programming with Mosh
6- thenewboston
7-Learning Programming
👍4
اشهر 10 مواقع لتعليم البرمجة
1- W3school
2- Code.org
3- Code School
4- freecode
5- Codeconquest
6- TheCodePlayer
7- Mozilla Developer Network
8- solo learn
9- CODEWARS
10- CODE AVENGERS
اشهر مواقع لكورسات البرمجة
1- EDX
2- COURSERA
3- UDACITY
4- UDEMY
5- LYNDA
6- KHAN ACADEMY
7- coursat (عربي)
8- w3arabiconline (عربي)
9- hsoub (عربي)
10- rwaq (عربي)

8 - تطوير واجهات المستخدم

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

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

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

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

هنالك تقنيات كثيرة تستعمل في تسهيل إنشاء الواجهات الأمامية وسنذكر بعضها:

إطار Bootstrap لتسهيل تنسيق عناصر الصفحة.
مكتبة jQuery لتسهيل التعامل مع عناصر الصفحة باستخدام JavaScript.
لغة Sass لإنشاء ملفات CSS بسرعة وسلاسة.
أدوات بناء مثل Gulp الذي يسهِّل تحويل الملفات المصدرية للتطبيق إلى النسخة النهائية التي ستعرَض للمستخدم.
لتعلم تطوير واجهات المستخدم، ننصحك بالتسجيل في دورة تطوير واجهات المستخدم المقدمة من أكاديمية حسوب، والتي تحتوي على 34 ساعة فيديو تتوزع على ستة مسارات تعليمية تشرح أمثلة عملية تطبيقية شرحًا مفصلًا.

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

اللغات والتقنيات المستخدمة في تطوير واجهات المستخدم: HTML و CSS و JavaScript و Bootstrap و Sass و jQuery و Gulp.

9 - تطوير الواجهات الخلفية

قد تتساءل: ماذا يعني تطوير الواجهات الخلفية (backend)؟ وما الفرق بينه وبين تطوير واجهات المستخدم (frontend)؟ الفرق بينهما هو أن الواجهات الخلفية هي البرمجيات التي تُنفَّذ على الخوادم وتجري عمليات عليها مثل التعامل مع قواعد البيانات والملفات والخدمات الخارجية، أما واجهات المستخدم فهي الصفحات التي تظهر على شاشة الزائر في متصفحه.

سأطرح عليك الخيارات المتاحة أمامك للبدء في مجال تطوير الواجهات الخلفية، وجميع اللغات المذكورة هنا هي لغات ناجحة وقوية ولا يهم أي لغة تختار منها، المهم أن تتطلع على شيفرات بسيطة من كل لغة وتتخذ قرار تعلمها، واحذر من تضييع وقتك في التنقل بين لغات البرمجة والبحث عن أفضلها، فكلُ لغةٍ ممتازةٌ في مجالها.

تعلم البرمجة باستخدام لغة PHP
بعد تبيان الفرق بين واجهات المستخدم والواجهات الخلفية، يمكن القول بأن أشهر لغة لتطوير الواجهات الخلفية هي لغة PHP، وتتفوق على اللغات المنافسة لها أضعافًا مضاعفة.

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

هنالك عدد من البرمجيات المكتوبة بلغة PHP مثل ووردبريس WordPress ودروبال Drupal وميدياويكي MediaWiki (التي تشغِّل ويكيبيديا وموسوعة حسوب) وغيرها الكثير؛ إضافةً إلى عددٍ كبير من إطارات العمل مثل Laravel و Zend و CodeIgniter و Symfony و CakePHP و Yii وغيرها، وهذا ما يدل على إمكانيات اللغة الكبيرة والمجتمع الكبير الذي يحيط بها.

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

أثناء مشاهدتك للدورة، يمكنك أن تعود إلى موسوعة حسوب للاطلاع على توثيق لغة PHP وإطار العمل Laravel.

اللغات والتقنيات المستخدمة في تطوير تطبيقات الويب باستخدام PHP هي: PHP و Laravel وقواعد البيانات (مثل MySQL و PostgreSQL وغيرها).
1👍1