4.1 من 5 (33 صوت)

فيجوال بيسك دوت نت Visual Basic .NET
الكاتب: شاكر

نوع الملف :pdf
حجم الملف :904 KB
فيجوال بيسك دوت نت Visual Basic .NET

كيفية قراءة الكتاب:

1- اضغط على أيقونة التحميل و حمّل الملف على جهازك
2- ستحتاج لقراءة الملف إلى برنامج PDF

اختر أحد البرامج و قم بتنصيبه على جهازك
1- برنامج Foxit Reader - حجم الملف 6.67 MB (شرح فيديو)
2- برنامج Acrobat Reader - حجم الملف 37 MB

‫ﺗﻢ ﺗﺤﻤﻴﻞ اﻟﻤﻠﻒ ﻣﻦ ﻣﻮﻗﻊ‬ ‫اﻟﺒﻮﺻﻠﺔ اﻟﺘﻘﻨﻴﺔ‬ ‫‪www.boosla.com‬‬ ‫اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻜﻤﺒﯿﻮﺗﺮ واﻹﻧﺘﺮﻧﺖ‪/‬ﻗﺴﻢ اﻟﺪورات اﻟﺘﻌﻠﯿﻤﯿﺔ‬ ‫ﺳﻠﺴﻠﺔ ﻛﺘﺐ اﻟﺪورات اﻟﺘﻌﻠﯿﻤﯿﺔ اﻹﻟﻜﺘﺮوﻧﯿﺔ‬ ‫‪C4arab.com‬‬ ‫‪VB.NET‬‬ ‫ﻓﯿﺠﻮال ﺑﯿﺰﯾﻚ دوت ﻧﺖ‬ ‫ﺗﺄﻟﯿﻒ ‪ :‬ﺷـﺎﻛــﺮ‬ ‫ﻋﻀﻮ ﺑﻤﺠﻠﺲ ﺗﻄﻮﻳﺮ ‪C4arab‬‬ ‫إﻋﺪاد وﺗﺠﻤﯿﻊ ‪ :‬ﻓﺮﻳﻖ ﺑﯿﻮﻛﻮم ﻟﻠﺘﻜﻨﻮﻟﻮﺟﯿﺎ‬ ‫‪BioCom 4 Technology‬‬ ‫ﯾﺴﻤﺢ ﺑﺘﻮزﯾﻊ اﻟﻜﺘﺎب ﻋﻠﻰ ﺻﻮرﺗﻪ اﻹﻟﻜﺘﺮوﻧﯿﺔ ﻟﻜﻦ ﻻ ﯾﺴﻤﺢ ﺑﻄﺒﻊ اﻟﻜﺘﺎب أو ﺗﻐﯿﯿﺮ ﻫﯿﺌﺘﻪ‬ ‫إﻻ ﺑﻌﺪ أﺧﺬ اﻹذن ﻣﻦ اﻟﻜﺎﺗﺐ‬ ‫ﺟﻤﯿﻊ اﻟﺤﻘﻮق ﻣﺤﻔﻮﻇﺔ ‪© 2003-2000 -‬اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻜﻤﺒﯿﻮﺗﺮ واﻻﻧﺘﺮﻧﺖ‬ ‫اﻟﺘﻮاﺻﻞ ﻣﻊ اﻟﻘﺮاء‬ ‫إﻟﻰ اﻟﻘﺎرئ اﻟﻌﺰﯾﺰ ‪،،،‬‬ ‫ﺣﺮﺻﺖ اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻜﻤﺒﯿﻮﺗﺮ واﻹﻧﺘﺮﻧﺖ _ وﻣﻦ ﻣﻨﻄﻠﻖ اﻫﺘﻤﺎﻣﻬﺎ اﻟﻌﺎم ﺑﻌﻠﻮم اﻟﺤﺎﺳﺐ‬ ‫واﻟﺘﻘﻨﯿﺔ واﻫﺘﻤﺎﻣﻬﺎ اﻟﺨﺎص ﺑﺘﻘﺪﯾﻢ ﻫﺬه اﻟﻌﻠﻮم ﺑﺎﻟﻠﻐﺔ اﻟﻌﺮﺑﯿﺔ _ ﻋﻠﻰ ﺗﻘﺪﯾﻢ ﻫﺬه ﻫﺬه اﻟﺴﻠﺴﺔ ﻣﻦ‬ ‫اﻟﻜﺘﺐ اﻹﻟﻜﺘﺮوﻧﯿﺔ اﻟﺘﻰ ﻧﺘﻤﻨﻰ أن ﺗﺤﻘﻖ ﻃﻤﻮﺣﺎت اﻟﻘﺎرئ اﻟﻌﺮﺑﻰ اﻟﺬى اﻋﺘﺎد ﻋﻠﻰ ﻗﺮاءة أﺟﻮد‬ ‫اﻟﻤﻄﺒﻮﻋﺎت ﺑﻜﺎﻓﺔ اﻟﻠﻐﺎت اﻟﻌﺎﻟﻤﯿﺔ ‪.‬‬ ‫ٍ ﻣﻦ‬ ‫إن اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ _ﻣﻦ ﺧﻼل ﻫﺬه اﻟﺴﻠﺴﻠﺔ _ ﺗﻄﻤﺢ ﻟﺘﻘﺪﯾﻢ ﺳﻠﺴﻠﺔ ﻣﻦ اﻟﻜﺘﺐ ﺑﻤﺴﺘﻮى ﻋﺎل‬ ‫اﻟﺠﻮدة ‪ ،‬اﻟﺸﻲء اﻟﺬى ﻟﻦ ﯾﺘﺤﻘﻖ ﺑﺪون ﻣﻼﺣﻈﺎﺗﻜﻢ واﻗﺘﺮاﺣﺎﺗﻜﻢ ﺣﻮل اﻟﺴﻠﺴﻠﺔ _ ﻃﺮﯾﻘﺔ اﻟﻜﺘﺎﺑﺔ ‪،‬‬ ‫اﻷﺧﻄﺎء اﻹﻣﻼﺋﯿﺔ واﻟﻨﺤﻮﯾﺔ ‪ ،‬اﻟﺘﻨﻈﯿﻢ واﻟﺘﺮﺗﯿﺐ ‪ ،‬ﻃﺮﯾﻘﺔ ﻧﺸﺮ اﻟﻜﺘﺎب وﺗﻮزﯾﻌﻪ ‪ ،‬اﻹﺧﺮاج اﻟﻔﻨﻰ‬ ‫‪ ...‬اﻟﺦ‬ ‫ﻧﻨﺘﻈﺮ ﺳﻤﺎع أراءﻛﻢ ﻋﻠﻰ اﻟﺒﺮﯾﺪ اﻹﻟﻜﺘﺮوﻧﻲ اﻟﻤﺨﺼﺺ ﻟﺬﻟﻚ‬ ‫‪ebooks@c4arab.com‬‬ ‫ﻧﺮﺟﻮ ذﻛﺮ اﺳﻢ اﻟﻜﺘﺎب واﻟﻜﺎﺗﺐ واﻟﻄﺒﻌﺔ ﻣﻊ ذﻛﺮ ﻣﻼﺣﻈﺎﺗﻜﻢ ﻟﻨﺎ‬ ‫ﺗـــــــــــﻬﺎﻧﻰ اﻟﺴـــــــــــــــــﺒﯿﺖ‬ ‫ﻣﺸﺮﻓﺔ اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻜﻤﺒﯿﻮﺗﺮ واﻻﻧﺘﺮﻧﺖ‬ ‫‪ ..‬ﺑﺴــــﻢ اﷲ اﻟﺮﺣﻤــــﻦ اﻟﺮﺣﯿـــــﻢ ‪..‬‬ ‫اﻟﺪورات اﻟﺘﻌﻠﯿﻤﯿﺔ ‪ ..‬ھﻲ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻟﺪورات‬ ‫اﻟﺘﻲ ﺗﻘﺪﻣﮫﺎ ﻟﻜﻢ اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ؛ ﺑﺪأﻧﺎ‬ ‫ﺑﺘﻘﺪﻳﻤﮫﺎ ﻓﻲ ﺻﯿﻒ ‪ 2002‬ﺗﺤﺖ ﻣﺴﻤﻰ " اﻟﺪورات‬ ‫اﻟﺼﯿﻔﯿﺔ " وھﺎ ھﻲ ﺗﻌﻮد ﻣﻦ ﺟﺪﻳﺪ‪ .‬ﺣﺮﺻﻨﺎ ﻋﻠﻰ‬ ‫ﺗﻘﺪﻳﻢ دورات ﻓﻲ ﻣﺠﺎﻻت ﻣﺨﺘﻠﻔﺔ ﻟﻨﺮاﻋﻲ أﻏﻠﺐ‬ ‫اﻻھﺘﻤﺎﻣﺎت ﻛﻤﺎ ﺣﺮﺻﻨﺎ ﻋﻠﻰ اﻧﺘﻘﺎء اﻟﺪورات‬ ‫اﻟﻤﻔﯿﺪة‪ ،‬ﻏﯿﺮ اﻟﻤﺘﻜﺮرة‪ ،‬ﺑﻄﺮﻳﻘﺔ ﺟﺎدة ﺗﻨﻘﻠﻚ إﻟﻰ‬ ‫اﻟﺠﻮ اﻟﺪراﺳﻲ ﻓﻲ ﻗﺎﻋﺎت اﻟﺠﺎﻣﻌﺔ و ﺻﻔﻮف‬ ‫اﻟﻤﻌﺎھﺪ و ﻟﻜﻦ ﻓﻲ ﺑﯿﺌﺔ إﻟﻜﺘﺮوﻧﯿﺔ! ﻛﻞ ھـﺬا‬ ‫ﻣﺠــﺎﻧـــﺎ! ‪...‬‬ ‫ﻳﻮﺟﺪ ﻛﺬﻟﻚ ﺳﺎﺣﺔ ﻣﺘﺨﺼﺼﺔ ﻟﮫﺎ ﺿﻤﻦ ﻣﺠﻤﻮﻋﺔ‬ ‫ﺳﺎﺣﺎت اﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻨﻘﺎش واﻷﺳﺌﻠﺔ‪،‬‬ ‫ﺗﺠﺪھﺎ ھﻨـــﺎ! ‪...‬‬ ‫اﺳﺘﻔﺪ واﺳﺘﺜﻤﺮ وﻗﺘﻚ ﻣﻌﻨﺎ! إذا ﻛﻨﺖ ﺗﺮﻏﺐ‬ ‫ﻓﻲ ﺗﻄﻮﻳﺮ ذاﺗﻚ و ﺗﻮﺳﯿﻊ ﻧﻄﺎق ﺛﻘﺎﻓﺘﻚ ﻓﻲ‬ ‫اﻟﺤﺎﺳﻮب ﻓﺎﺳﺘﻐﻞ ﻛﻞ دﻗﯿﻘﺔ واﺳﺘﻔﺪ ﻣﻌﻨﺎ! و ﻻ‬ ‫ﺗﻨﺴﻰ أﻧﻨﺎ ﻓﻲ ﻋﺼﺮ اﻟﻤﻌﻠﻮﻣﺎت واﻟﺴﺮﻋﺔ‪.‬‬ ‫اﺑﺪأ اﻵن !اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﻟﺪورات و اﺧﺘﺮ اﻟﺪورة اﻟﺘﻲ ﺗﻨﺎﺳﺒﻚ‪ ،‬اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﻷﺳﺎﺗﺬة ﻟﻼﻃﻼع ﻋﻠﻰ‬ ‫ّﻞ ﻧﻔﺴﻚ ﻓﻲ إﺣﺪى‬ ‫ّﺬﻳﻦ ﺳﯿﻠﻘﻮن اﻟﻤﺤﺎﺿﺮات ‪،‬اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﻟﺘﺴﺠﯿﻞ ﻛﻲ ﺗﺴﺠ‬ ‫ﻗﺎﺋﻤﺔ اﻷﺳﺎﺗﺬة اﻟ‬ ‫اﻟﺪورات‪ ،‬ﻟﻦ ﺗﺴﺘﻄﯿﻊ اﻟﻤﺸﺎرﻛﺔ ﻓﻲ أي دورة ﻗﺒﻞ أن ﺗﺴﺠﻞ‪ .‬اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﻟﻤﺮاﺟﻊ ﻛﻲ ﺗﻄﻠﻊ ﻋﻠﻰ‬ ‫اﻟﻤﺮاﺟﻊ اﻟﻤﻘﺪﻣﺔ ﻣﻦ اﻷﺳﺎﺗﺬة ﺑﺨﺼﻮص اﻟﺪورات اﻟﺤﺎﻟﯿﺔ ‪.‬اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﻟﻤﻠﺘﺤﻘﯿﻦ ﻟﺘﻄﻠﻊ ﻋﻠﻰ ﺑﻌﺾ‬ ‫ً‪ .‬ﻧﺤﻦ‬ ‫ً أو ﻃﻠﺒﺎ‬ ‫اﻟﻤﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﻠﺘﺤﻘﯿﻦ ﻓﻲ اﻟﺪورات‪ .‬اﻧﺘﻘﻞ ﻟﺼﻔﺤﺔ اﺗﺼﻞ ﺑﻨﺎ ﻛﻲ ﺗﺮﺳﻞ ﻟﻨﺎ اﻗﺘﺮاﺣﺎ‬ ‫ﺑﺎﻧﺘﻈﺎرك! ﻟﻜﻦ اﻟﻮﻗﺖ ﻣﺤﺪود و ﻋﺪد اﻟﻤﻠﺘﺤﻘﯿﻦ ﻓﻲ ﻛﻞ دورة ﻣﺤﺪود ﻟﺬا ﻻ ﺗﺘﺄﺧﺮ ﻓﻲ اﻟﺘﺴﺠﯿﻞ ﻣﻦ‬ ‫ﻓﻀﻠﻚ‪.‬‬ ‫ﺷﻜﺮ وﺗﻘﺪﯾﺮ‬ ‫ﺷﻜﺮ ﺧﺎص اﻟﻰ اﻻﺳﺘﺎذ ﻣﺤﻤﺪ ﺣﻤﺪي اﻟﻐﺎﻧﻢ ﺻﺎﺣﺐ ﻛﺘﺎب‬ ‫اﺣﺘﺮاف ‪Visual Basic.Net‬‬ ‫ﻫﺬا اﻟﻜﺘﺎب ‪....‬‬ ‫ﻟﯿﺲ ﻓﻰ اﻹﺻﻞ إﻻ دورة ﺗﻢ ﺗﺪرﯾﺴﻬﺎ ﻓﻰ ﺳﺎﺣﺔ اﻟﺪورات اﻟﺘﻌﻠﯿﻤﯿﺔ‬ ‫ﺑﺎﻟﻤﻮﺳﻮﻋﺔ اﻟﻌﺮﺑﯿﺔ ﻟﻠﻜﻤﺒﯿﻮﺗﺮ واﻹﻧﺘﺮﻧﺖ ‪ ،‬وﺗﻢ ﺟﻤﻊ ﺗﻠﻚ اﻟﺪورس وﺳﻠﺴﻠﺔ‬ ‫اﻟﻨﻘﺎش اﻟﺘﻰ دارت ﺣﻮﻟﻬﺎ ﻫﻨﺎ ﻓﻰ ﻫﺬا اﻟﻜﺘﺎب‪ ،‬وﺗﻢ وﺿﻊ اﻟﻨﻘﺎﺷﺎت ﻋﻠﻰ‬ ‫ﻫﯿﺌﺔ اﺳﺌﻠﺔ وأﺟﻮﺑﺔ ﻟﻜﻰ ﯾﺴﺘﻔﯿﺪ اﻟﺠﻤﯿﻊ ﻣﻨﻬﺎ ‪،،،،،،،،،‬‬ ‫ﻟﺬﻟﻚ ﺗﻌﺘﺒﺮ ﺳﻠﺴﻠﺔ ﻛﺘﺐ اﻟﺪورات اﻟﺘﻌﻠﯿﻤﯿﺔ ‪:‬‬ ‫أول ﺳﻠﺴﻠﺔ ﻛﺘﺎب إﻟﻜﺘﺮوﻧﯿﺔ ﻋﺮﺑﯿﺔ ﺧﺎﺻﺔ ﺑﺎﻟﻤﺒﺘﺪأﯾﻦ‪.‬‬ ‫ً ﻣﻦ ﻣﺸﺎﻛﻞ ﺣﻘﯿﻘﺔ ﻷﺷﺨﺎص ﻣﻦ‬ ‫اﻟﺴﻠﺴﻠﺔ اﻟﻮﺣﯿﺪة اﻟﺘﻰ ﺗﺘﺒﻊ ﻧﻈﺎم اﻷﺳﺌﻠﺔ واﻷﺟﻮﺑﺔ اﻟﻨﺎﺗﺠﺔ ﻓﻌﻼ‬ ‫ﻣﺨﺘﻠﻒ اﻟﺪول‪ ،‬ﻣﻤﺎ ﯾﻬﯿﻰء ﻋﻨﺪك ﻧﻮع ﻣﻦ اﻻﺳﺘﻌﺪاد ﻷى ﻣﺸﻜﻠﺔ وﻛﯿﻔﯿﺔ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ‪.‬‬ ‫ﺗﻌﺘﺒﺮ ﺳﻠﺴﻠﺔ اﻟﻜﺘﺎب اﻟﻮﺣﯿﺪة اﻟﻤﺪﻋﻮﻣﺔ ارﺑﻊ وﻋﺸﺮﯾﻦ ﺳﺎﻋﺔ ﻃﻮال اﻟﻌﺎم‪ ،‬ﻓﯿﻤﻜﻨﻚ اﻻﺳﺘﺴﻔﺎر ﻋﻦ أى‬ ‫ﻣﺸﻜﻠﺔ وﺣﻠﻬﺎ ﻋﻦ ﻃﺮﯾﻖ وﺿﻌﻬﺎ ﻓﻰ ﺳﺎﺣﺔ اﻟﻨﻘﺎش واﻷﺳﺌﻠﺔ ﺑﺎﻟﻤﻮﺳﻮﻋﺔ‪.‬‬ ‫•‬ ‫•‬ ‫•‬ ‫اﻟـﺪرس اﻷول‬ ‫ﺗﻨﺼﯿﺐ‪Visual Studio.Net‬‬ ‫ﺗﻨﺼﻴﺐ ﺍﻟﺒﺮﻧﺎﻣﺞ ﻋﻠﻰ ﺟﻬﺎﺯﻙ ﺍﻟﺸﺨﺼﻲ ‪Set Up‬‬ ‫ّﻧـﺎت اﻟﻨﻈـﺎم ‪Windows Component‬‬ ‫ﺗـﺄﺗﻲ ھـﺬه اﻟﻠﻐـﺔ ﻋﻠـﻰ ﺧﻤـﺲ أﺳـﻄﻮاﻧﺎت‪ ،‬اﻷوﻟـﻰ ﻟﺘﺤـﺪﻳﺚ ﻣﻜﻮ‬ ‫ــ‬ ‫ـﺐ اﻟــ‬ ‫ـﺮ ﻗﻠــ‬ ‫ـﺬي ﻳﻌﺘﺒــ‬ ‫ـﻞ ‪ .Net Frame Work‬اﻟــ‬ ‫ـﺎر اﻟﻌﻤــ‬ ‫ـﺪاد إﻃــ‬ ‫ـﻦ إﻋــ‬ ‫‪ ،Updater‬وھــﻲ اﻟﻤﺴــﺆوﻟﺔ ﻋــ‬ ‫ِ اﻟﺒﺮﻣﺠﺔ‪ ،‬واﻷﺳﻄﻮاﻧﺎت اﻟﺜﻼﺛﺔ اﻟﻤﺘﺒﻘﯿﺔ ﺗﺤﺘﻮي ﻋﻠﻰ‬ ‫ّﺔ ﻣﺴﺆوﻟﺔ ﻋﻦ إﻋﺪاد ﻟﻐﺎت‬ ‫‪ ..VisualStudio.Net‬واﻟﺜﺎﻧﯿ‬ ‫ّﺎت إرﺷﺎدات اﻟﻠﻐﺔ ‪.Help‬‬ ‫ﻣﻠﻔ‬ ‫ّﺔ أﺧﺮى‪ ،‬ﻣﻨﮫﺎ أﺳﻄﻮاﻧﺔ ﺗﻄﺒﯿﻖ ‪ Visio‬اﻟﺬي ﻳﺴﺘﺨﺪم ﻓﻲ ﺗﺤﻠﯿـﻞ اﻟﺒـﺮاﻣﺞ ﺑﻄﺮﻳﻘـﺔ‬ ‫وھﻨﺎك أﺳﻄﻮاﻧﺎت إﺿﺎﻓﯿ‬ ‫ّ ھﻨــﺎك ﺛــﻼث أﺳــﻄﻮاﻧﺎت ﺗﺤﺘــﻮي ﻋﻠــﻰ ‪ MSDN‬وھــﻲ زاﺧــﺮة‬ ‫ٌ‬ ‫ّــﺔ ﺗﺼــﻤﯿﻤﮫﺎ‪ ،‬ﻛﻤــﺎ أن‬ ‫ّﻞ ﻋﻤﻠﯿ‬ ‫ّــﺔ ﻟﯿﺴ ـﮫ‬ ‫ﻣﺮﺋﯿ‬ ‫ّﻤﺔ‪.‬‬ ‫ّﺔ اﻟﻘﯿ‬ ‫ﺑﺎﻟﻤﻌﻠﻮﻣﺎت اﻟﺒﺮﻣﺠﯿ‬ ‫ّﺔ إﻋﺪاد ھﺬه اﻟﻠﻐﺔ‪:‬‬ ‫واﻵن دﻋﻨﺎ ﻧﺮى ﻛﯿﻔﯿ‬ ‫ّ ﻞ إﻏ ﻼق ﺑ ﺮاﻣﺞ اﻟﺤﻤﺎﯾ ﺔ واﻟﺠ ﺪران اﻟﻨﺎرﯾ ﺔ ‪( Firewall‬‬ ‫*) ﻗﺒ ﻞ اﻟﺒ ﺪء ﻓ ﻲ إﻋ ﺪادﻫﺎ ﯾﻔﻀ‬ ‫ّﻦ ﻣ ﻦ‬ ‫ّ ﻰ ﺗ ﺘﻤﻜ‬ ‫‪ -1‬ﯾﺠﺐ أن ﯾﻌﻤﻞ ﺟﻬﺎزك ﻋﻠﻰ ‪ Windows 200‬أو ‪ Windows NT‬أو ‪ Windows XP‬ﺣﺘ‬ ‫إﻋﺪاد ﻫﺬه اﻟﻠﻐﺔ‪.‬‬ ‫ّ ﻧﻈﺎم ﻣﻌﻠﻮﻣﺎت اﻹﻧﺘﺮﻧﺖ ‪ (Internet Information System (IIS‬ﻋﻠﻰ ﻧﻈﺎم ﺗﺸﻐﯿﻠﻚ‪..‬‬ ‫‪ -2‬ﯾﺠﺐ أن ﺗﻌﺪ‬ ‫وﻟﻔﻌﻞ ذﻟﻚ اﺗﺒﻊ ھﺬه اﻟﺨﻄﻮات‪:‬‬ ‫ّﻢ" ‪Control Panel‬‬ ‫ّ اﺿﻐﻂ "ﻟﻮﺣﺔ اﻟﺘﺤﻜ‬ ‫ ﻣﻦ ﻗﺎﺋﻤﺔ اﻟﺒﺪاﻳﺔ ‪ Start Menu‬اﺿﻐﻂ "إﻋﺪادات" ‪ ،Settings‬ﺛﻢ‬‫ّﻢ اﺿﻐﻂ "إﺿﺎﻓﺔ اﻟﺒﺮاﻣﺞ أو إزاﻟﺘﮫﺎ" ‪.Add Or Remove Programs‬‬ ‫ ﻓﻲ ﻧﺎﻓﺬة ﻟﻮﺣﺔ اﻟﺘﺤﻜ‬‫ّﻧﺎت اﻟﻮﻳﻨﺪوز" ‪Add/Remove Windows‬‬ ‫ ﻓﻲ ﻧﺎﻓﺬة "إﺿﺎﻓﺔ اﻟﺒﺮاﻣﺞ وإزاﻟﺘﮫﺎ" اﺿﻐﻂ "إﺿﺎﻓﺔ أو إزاﻟﺔ ﻣﻜﻮ‬‫‪.Components‬‬ ‫ّﻧﺎت اﻟﻮﻳﻨﺪوز ﻋﻦ اﻟﻌﻨﺼﺮ ‪Internet Information‬‬ ‫ ﻓﻲ اﻟﻨﺎﻓﺬة اﻟﺘﻲ ﺳﺘﻈﮫﺮ ﻟﻚ‪ ،‬اﺑﺤﺚ ﻓﻲ ﻗﺎﺋﻤﺔ ﻣﻜﻮ‬‫ّﺪ ﻣﻦ وﺟﻮد ﻋﻼﻣﺔ ﺻﺢ ﻓﻲ ﻣﺮﺑﻊ اﻻﺧﺘﯿﺎر اﻟﻤﺠـﺎور ﻟﮫـﺎ‪ ،‬ﺛـﻢ اﺿـﻐﻂ زر "اﻟﺘـﺎﻟﻲ"‬ ‫)‪ ،System (IIS‬وﺗﺄﻛ‬ ‫‪.Next‬‬ ‫* ﻣﻼﺣﻈﺔ ھﺎﻣﺔ ‪ :‬ﻓﻲ ﺣﺎﻟﺔ ﻋﺪم وﺟﻮد ﻋﻼﻣﺔ )‪ (ü‬أﻣﺎم ﺧﯿﺎر ‪ IIS‬ﻓﺬﻟﻚ ﻳﻌﻨﻲ أﻧـﻪ ﻏﯿـﺮ‬ ‫ﻣﺜﺒﺖ ﻋﻠﻰ ﺟﮫﺎزك‪ ،‬وﻋﻠﯿﻚ ﺗﺜﺒﯿﺘﻪ ﻣﻦ ﺧﻼل‬ ‫‪ ROM-CD‬اﻟﺨﺎص ﺑﻨﻈﺎم اﻟﻮﻳﻨﺪوز ﻟﺪﻳﻚ‪.‬‬ ‫ّك اﻷﺳـﻄﻮاﻧﺎت‪،‬‬ ‫ّﻧـﺎت اﻟﻨﻈـﺎم ‪ Windows Component Updater‬ﻓـﻲ ﻣﺤـﺮ‬ ‫‪ -3‬أدﺧﻞ أﺳـﻄﻮاﻧﺔ ﺗﺤـﺪﻳﺚ ﻣﻜﻮ‬ ‫ّﺢ ﻣﺤﺘﻮﻳﺎﺗﮫﺎ‪ ..‬ﻗﺪ ﺗﻈﮫﺮ ﻟﻚ رﺳﺎﻟﺔ ﺗﻄﻠﺐ ﻣﻨﻚ إدﺧﺎل اﻷﺳﻄﻮاﻧﺔ اﻷوﻟﻰ‪ ..‬اﺿﻐﻂ ‪ OK‬وﺗﺠﺎھﻞ ھﺬه‬ ‫وﺗﺼﻔ‬ ‫اﻟﺮﺳﺎﻟﺔ‪.‬‬ ‫ِ ﺑﺎﻟﻔﺄرة‪ ..‬ﺑﮫﺬا ﺳﯿﺒﺪأ ﺑﺮﻧﺎﻣﺞ اﻹﻋﺪاد‪.‬‬ ‫ّﺗﯿﻦ‬ ‫ّ ‪ SETUP.EXE‬ﻣﺮ‬ ‫ّﺎت اﻷﺳﻄﻮاﻧﺔ اﻧﻘﺮ اﻟﻤﻠﻒ‬ ‫‪ -4‬ﻣﻦ ﻣﻠﻔ‬ ‫ّﻪ ﻣﻦ اﻷﻓﻀﻞ أن ﺗﺴﺘﺨﺪم اﻷﺳﻄﻮاﻧﺔ اﻷوﻟـﻰ ﻹﻋـﺪاد ھـﺬه اﻷﺳـﻄﻮاﻧﺔ‪..‬‬ ‫‪ -5‬ﺳﺘﻈﮫﺮ ﻟﻚ رﺳﺎﻟﺔ ﺗﺨﺒﺮك ﺑﺄﻧ‬ ‫اﺿﻐﻂ زر ‪.No‬‬ ‫ّﺤﺔ ﻓﻲ اﻟﺼﻮرة اﻟﺘﺎﻟﯿﺔ‪:‬‬ ‫‪ -6‬ﺳﺘﻈﮫﺮ ﻟﻚ اﻟﻨﺎﻓﺬة اﻟﻤﻮﺿ‬ ‫ّ‪ ..‬ﺳﺎﻋﺘﮫﺎ ﺳﺘﺨﺘﻔﻲ‬ ‫ّ إﻟﻰ اﻹﻋﺪاد إﻟﻰ أن ﺗﯿﻢ‬ ‫اﺿﻐﻂ زر "ﺗﺤﺪﻳﺚ اﻵن" ‪ ..Update Now‬وﺑﮫﺬا ﺳﯿﺴﺘﻤﺮ‬ ‫ﻛﻠﻤﺔ ‪ Cancel‬وﺳﺘﻈﮫﺮ ﻣﻜﺎﻧﮫﺎ ﻛﻠﻤﺔ ‪ ..Done‬اﺿﻐﻄﮫﺎ ﻹﻏﻼق ﺑﺮﻧﺎﻣﺞ اﻹﻋﺪاد‪.‬‬ ‫ّﺗﯿﻦ‬ ‫ِ‬ ‫ّ ‪ SETUP.EXE‬ﻣـﺮ‬ ‫ّـﺎت اﻷﺳـﻄﻮاﻧﺔ اﻧﻘـﺮ اﻟﻤﻠـﻒ‬ ‫ّﺢ ﻣﺤﺘﻮﻳﺎﺗﮫـﺎ‪ ..‬ﻣـﻦ ﻣﻠﻔ‬ ‫‪ -7‬ﺿﻊ اﻷﺳﻄﻮاﻧﺔ اﻷوﻟﻰ‪ ،‬وﺗﺼـﻔ‬ ‫ﺑﺎﻟﻔﺄرة‪ ..‬ﺑﮫﺬا ﺳﯿﺒﺪأ ﺑﺮﻧﺎﻣﺞ اﻹﻋﺪاد‪.‬‬ ‫‪ -8‬ﺳﺘﻈﮫﺮ ﻟﻚ اﻟﻨﺎﻓﺬة اﻟﺘﺎﻟﯿﺔ‪:‬‬ ‫اﺿﻐﻂ ﺑﺎﻟﻔﺄرة اﻻﺧﺘﯿﺎر اﻟﺜﺎﻧﻲ ‪.Visual Studio .Net‬‬ ‫ّـﺔ‪ ..‬اﺿـﻐﻂ‬ ‫ّـﺔ اﻟﻔﻜﺮﻳ‬ ‫ُﻘﺮﺋﻚ ﺣﻘﻮق اﻟﻤﻠﻜﯿ‬ ‫ّ ﺳﺘﻈﮫﺮ ﻟﻚ ﻧﺎﻓﺬة ﺗ‬ ‫‪ -9‬ﺳﯿﺴﺘﻐﺮق ﺑﺮﻧﺎﻣﺞ اﻹﻋﺪاد ﺑﻌﺾ اﻟﻮﻗﺖ‪ ،‬ﺛﻢ‬ ‫ـﻲ اﻟﺨﺎﻧــﺎت‬ ‫ـﻰ اﻷﺳــﻄﻮاﻧﺔ ﻓـ‬ ‫ـﺎم اﻟﻤﻜﺘﻮﺑــﺔ ﻋﻠـ‬ ‫ـﺔ"‪ ،‬وأدﺧــﻞ اﻷرﻗـ‬ ‫ـﻰ ﺑﻨــﻮد اﻻﺗﻔﺎﻗﯿـ‬ ‫ـﺎر "أواﻓــﻖ ﻋﻠـ‬ ‫اﺧﺘﯿـ‬ ‫ّﺼﺔ ﻟﮫﺎ‪ ،‬ﺛﻢ اﺿﻐﻂ زر ‪.Next‬‬ ‫اﻟﻤﺨﺼ‬ ‫ّﻨﻚ ﻣﻦ اﺧﺘﯿﺎر إﻋﺪادات اﻟﻠﻐﺔ‪:‬‬ ‫‪ -10‬اﻵن ﺳﺘﻈﮫﺮ ﻟﻚ ﻧﺎﻓﺬة ﺗﻤﻜ‬ ‫ٍ ﺳﯿﻨﺴـﺪل ھـﺬا اﻟﻌﻨﺼـﺮ‬ ‫‪ -11‬اﺿﻐﻂ ﻋﻼﻣﺔ "‪ "+‬اﻟﻤﺠﺎورة ﻟﻠﻌﻨﺼﺮ "أدوات اﻟﻠﻐﺔ" ‪ ..Language Tools‬ﻋﻨﺪﺋﺬ‬ ‫ّﺔ‪ ،‬ھﻲ أﺳﻤﺎء ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ‪ ..‬اﺗﺮك ﻋﻼﻣﺔ اﻻﺧﺘﯿﺎر ﺑﺠـﻮار ‪Visual Basic .Net‬‬ ‫ﻋﻦ ﺛﻼﺛﺔ ﻋﻨﺎﺻﺮ ﻓﺮﻋﯿ‬ ‫ِ ﻋﻠـﻰ‬ ‫ّﺮ ﻟﻚ أﻛﺜﺮ ﻣـﻦ ‪ 20‬ﻣﯿﺠـﺎ ﺑﺎﻳـﺖ‪ ،‬ﻓﮫـﻲ و ‪VB‬ﻳﻌﺘﻤـﺪان‬ ‫ّ إزاﻟﺔ ‪ C#‬ﻟﻦ ﻳﻮﻓ‬ ‫و ‪ ،Visual C# .Net‬ﻓﺈن‬ ‫ّـﻊ‬ ‫ّﺎت واﻟﻤﺼﺎدر ﺗﻘﺮﻳﺒﺎ‪ ..‬وﻟﻜﻦ أزل ﻋﻼﻣﺔ اﻻﺧﺘﯿﺎر ﻣﻦ أﻣﺎم ‪ Visual C++‬وذﻟﻚ ﺑﻀـﻐﻂ ﻣﺮﺑ‬ ‫ﻧﻔﺲ اﻟﻤﻠﻔ‬ ‫ّﺮ ﺣﻮاﻟﻲ ‪ 500‬ﻣﯿﺠﺎ ﺑﺎﻳﺖ‪.‬‬ ‫ّﻰ ﺗﻮﻓ‬ ‫اﻻﺧﺘﯿﺎر ﺑﺎﻟﻔﺄرة‪ ،‬وذﻟﻚ ﺣﺘ‬ ‫‪ -12‬أزل ﻛﺬﻟﻚ ﻋﻼﻣﺔ اﻻﺧﺘﯿﺎر ﻣﻦ أﻣﺎم اﻟﻌﻨﺼﺮ ‪.Net Frame Work SDK.‬‬ ‫‪ -13‬ﻟﻮ أردت ﺗﻮﻓﯿﺮ ﺣﻮاﻟﻲ ‪ 600‬ﻣﯿﺠﺎ ﻣﻦ ﻣﺴـﺎﺣﺔ اﻹﻋـﺪاد‪ ،‬ﻓﺎﺿـﻐﻂ ﻋﻼﻣـﺔ "‪ "+‬اﻟﻤﺠـﺎورة ﻟﻌﻨﺼـﺮ اﻟﻮﺛـﺎﺋﻖ‬ ‫‪ ،Documentation‬وأزل ﻋﻼﻣﺔ اﻻﺧﺘﯿﺎر ﻣﻦ اﻟﻌﻨﺼﺮ ‪.Additional MSDN Documentation‬‬ ‫ّ ﺗﺤﺪﻳﺚ اﻵن" ‪ Update Now‬ﻟﯿﺒﺪأ اﻹﻋﺪاد‪ ..‬ﺳﯿﺴﺘﮫﻠﻚ ذﻟﻚ ﺑﻌﺾ اﻟﻮﻗـﺖ‪ ،‬وﻓـﻲ ﺧـﻼل ذﻟـﻚ‬ ‫‪ -14‬اﺿﻐﻂ زر‬ ‫ّ ‪.Done‬‬ ‫ﺳﯿﻄﻠﺐ ﻣﻨﻚ ﺑﺮﻧﺎﻣﺞ اﻹﻋﺪاد إدﺧﺎل اﻷﺳﻄﻮاﻧﺎت اﻟﻤﻄﻠﻮﺑﺔ‪ ..‬ﺑﻌﺪ أن ﻳﻨﺘﮫﻲ اﻹﻋﺪاد اﺿﻐﻂ زر‬ ‫‪ -15‬ﻟﻘﺪ أﻋﺪدت اﻟﻠﻐﺔ‪ ..‬اﻵن ﻳﻤﻜﻨﻚ ﻓﺘﺤﮫﺎ ﻣـﻦ ﻗﺎﺋﻤـﺔ ‪ Start‬ﺣﯿـﺚ ﺳـﺘﺠﺪھﺎ ﺿـﻤﻦ ﻗﺎﺋﻤـﺔ اﻟﺒـﺮاﻣﺞ‬ ‫‪ Programs‬ﺗﺤﺖ ﻋﻨﻮان‪.Microsoft Visual Studio .Net :‬‬ ‫ﻓﻲ اﻟﺪروس اﻟﻘﺎدﻣﺔ ﺑﻤﺸﯿﺌﺔ اﷲ ﺳﻨﺮى ﻛﯿﻒ ﻧﺘﻌﺎﻣﻞ ﻣﻊ اﻹﻣﻜﺎﻧﺎت اﻟﮫﺎﺋﻠﺔ ﻟﮫﺬه اﻟﻠﻐﺔ‪.‬‬ ‫*اﻧﺘﮫﻰ اﻟﺪرس اﻷول*‬ ‫________________________________________________________________‬ ‫________________________________________________________________‬ ‫اﻟﻨﻘﺎش واﻻﺳﺌﻠﺔ‬ ‫ﻣﻼﺣﻈﺔ‪:‬‬ ‫اﻷﺳﺌﻠﺔ اﻟﺘﺎﻟﯿﺔ أﺟﺎب ﻋﻠﻰ ﺟﺰء ﻣﻨﮫﺎ ﺑﻌﺾ اﻷﻋﻀﺎء اﻟﻤﺸﺎرﻛﯿﻦ ﻓﻲ اﻟﺪورة‪.‬‬ ‫ﻣﺎذا ﻧﻌﻨﻲ ب‪ .NET‬؟؟‬ ‫ھﺬا ھﻮ ﻣﺴﻤﻰ اﻟﺒﺮﻧﺎﻣﺞ اﻟﺬي اﺧﺘﺎرﺗﻪ اﻟﺸﺮﻛﺔ‪..‬ﻛﺎن ﻓﻲ اﻟﺒﺪاﻳﺔ اﺳﻤﺎ آﺧﺮ ﻻأﺗﺬﻛﺮه ﺑﺼﺮاﺣﻪ‪..‬وﻟﻜﻦ‬ ‫ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ رأت أن ﺗﻐﯿﺮه إﻟﻰ دوت ﻧﺖ‪.Net‬‬ ‫ﻋﻨﺪي ﺳﺆال ﺑﺴﯿﻂ ‪ ،‬ھﻞ ﺑﯿﺌﺔ ‪ .NET‬ﻳﻤﻜﻨﻨﺎ ﻣﻦ ﺧﻼﻟﮫﺎ ﺑﺮﻣﺠﺔ ﺑﺮاﻣﺞ ﺗﺼﻠﺢ ﻟﻜﺎﻓﺔ أﻧﻈﻤﺔ‬ ‫اﻟﺘﺸﻐﯿﻞ ﻣﺜﻞ اﻟﺠﺎﻓﺎ ؟‬ ‫ً اﻟﻔﺠﻮال ﺑﯿﺴﻚ ‪.‬ﻧﺖ ﺗﻌﻤﻞ ﻓﻘﻂ ﻋﻠﻰ وﻧﺪوز ﻋﻦ ﻃﺮﻳﻖ ‪ Visual Studio .NET‬و ﻋﻠﻰ اﻟﯿﻨﻜﺲ ﻋﻦ‬ ‫ﺣﺎﻟﯿﺎ‬ ‫ﻃﺮﻳﻖ ﺑﺮﻧﺎﻣﺞ‪.........Mono‬‬ ‫و اﻟﻤﺴﺄﻟﺔ وﻗﺖ ﻻ أﻛﺜﺮ و ﻻ أﻗﻞ ‪!!......‬‬ ‫ﻟﻤﺎذا ﻧﺜﺒﺖ ‪ Visual Studio .NET‬ﻣﻊ أﻧﻨﺎ ﻧﺘﻌﻠﻢ ‪ Visual Basic .NET‬أﻗﺼﺪ أن ھﻨﺎك ﺑﺮﻧﺎﻣﺞ‬ ‫‪ Visual Basic .NET‬؟؟‬ ‫اﻟﻔﯿﺠﻮال ﺑﯿﺰك دوت ﻧﺖ ﺗﺄﺗﻲ ﺿﻤﻦ ﺣﺰﻣﺔ اﻟﻔﯿﺠﻮال ﺳﺘﻮدﻳﻮ دوت ﻧﺖ‪..‬ھﺬه ھﻲ ﺳﯿﺎﺳﺔ ﺷﺮﻛﺔ‬ ‫ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ‪..‬وﻛﻤﺎ ھﻮ ﻣﻮﺿﺢ ﻓﻲ اﻟﺪرس ﻟﺴﺖ ﻣﻀﻄﺮا ﻟﺘﺜﺒﯿﺖ ﻛﺎﻣﻞ اﻟﺤﺰﻣﺔ ﻋﻠﻰ ﺟﮫﺎزك‪..‬ﻋﻠﯿﻚ اﺧﺘﯿﺎر‬ ‫‪Visual Basic.Net‬ﻓﻘﻂ ﻣﻦ ﺿﻤﻦ ﺑﺮاﻣﺞ اﻟﺤﺰﻣﻪ‪..‬‬ ‫اﺳﺘﻔﺴﺎر ﺑﺴﯿﻂ ‪ :‬ﻟﻤﺎذا ال ‪IIS‬ﻳﺠﺐ ﺗﺜﺒﯿﺘﻪ ؟؟؟‬ ‫ﻣﻦ أھﻢ ﻓﻮاﺋﺪ ﺗﺜﺒﯿﺖ ‪ IIS‬أﻧﻚ ﻓﻲ ﺣﺎﻟﺔ اﺣﺘﺮاﻓﻚ اﻟﻔﯿﺠﻮال ﺑﯿﺰك دوت ﻧﺖ ﺳﻮف ﺗﺴﺘﻄﯿﻊ ﻓﯿﻤﺎ ﺑﻌﺪ ﺗﺼﻤﯿﻢ‬ ‫ﺻﻔﺤﺎت إﻧﺘﺮﻧﺖ ﻹﻧﺸﺎء ﺗﻄﺒﯿﻘﺎت ‪ ASP‬ﺗﻌﻤﻞ ﻋﻠﻰ ﺳﯿﺮﻓﺮات‪..‬وھﺬا ﻟﻦ ﻳﺘﺄﺗﻰ إﻻ ﺑﺘﺜﺒﯿﺖ ﻧﻈﺎم ﻣﻌﻠﻮﻣﺎت‬ ‫اﻹﻧﺘﺮﻧﺖ‪..‬‬ ‫وﻓﻲ اﻟﺤﻘﯿﻘﺔ ﻟﻢ أواﺟﻪ أﻳﺔ ﻣﺸﺎﻛﻞ ﻋﻨﺪ ﺗﻨﺼﯿﺒﻲ ﻟﻠﺒﺮﻧﺎﻣﺞ ﺑﺎﻟﺮﻏﻢ ﻣﻦ ﻋﺪم ﺗﺜﺒﯿﺖ ‪ IIS‬ﻋﻠﻰ ﺟﮫﺎزي ﻓﻲ‬ ‫ذﻟﻚ اﻟﻮﻗﺖ‪..‬‬ ‫ﻋﻨﺪي ﻣﺸﻜﻠﻪ‪ ..‬ﻃﻠﺒﺖ اﻟﺴﯿﺪﻳﺎت ﻟﻠﻤﺎﻳﺮﻛﻮﺳﻮﻓﺖ ﻓﯿﺠﻮال ﺳﺘﻮدﻳﻮ دوت ﻧﺖ وأﻋﻄﺎﻧﻲ اﻟﺒﺎﺋﻊ ‪7‬‬ ‫ﺳﯿﺪﻳﺎت‪.......‬اﻟﻤﮫﻢ ﺑﺪأت ﺑﺎﻟﺴﯿﺪي اﻷول وﻟﻜﻨﻲ ﻟﻢ اﺟﺪ اﻟﻠﻲ ﻗﻠﺖ ﻋﻠﯿﻪ ﻓﻲ اﻟﺪرس وﻃﻠﻌﺖ‬ ‫ﻟﻲ اﻟﻨﺎﻓﺬه ﺣﻘﺖ اﻟﺨﻄﻮه اﻟﺜﺎﻧﯿﻪ‪..‬‬ ‫أﻋﺘﻘﺪ أن اﻟﻤﻜﻮﻧﺎت ﻣﻮﺟﻮدة ﻟﺪﻳﻚ وﻟﮫﺬا ﻟﻢ ﻳﻄﻠﺐ ﻣﻨﻚ ﺗﻨﺼﯿﺒﮫﺎ‪.........‬‬ ‫او ﻳﺒﺪو ان ﺳﻲ دي اﻟﺘﺤﺪﻳﺚ اﻟﺨﺎص ﺑﺎﻟﻜﻤﺒﻮﻧﻨﺘﺲ ﻟﯿﺲ ﻟﺪﻳﻚ ‪..............‬‬ ‫إذا ﻟﻢ ﺗﻨﺠﺢ ﻣﻌﻚ ﻋﻤﻠﯿﺔ ﺗﻨﺼﯿﺐ اﻟﺒﺮﻧﺎﻣﺞ ‪....‬ﻓﺎذھﺐ اﻟﻰ اﻟﻤﻠﺤﻖ‬ ‫اﻟﺨﺎص ﺑﻤﺸﺎﻛﻞ اﻟﺘﻨﺼﯿﺐ ﺑﺂﺧﺮ اﻟﻜﺘﺎب‬ ‫اﻟـﺪرس اﻟﺜـﺎﻧـﻲ‬ ‫ﺑﯿﺌﺔ اﻟﺘﻄﻮﻳﺮ اﻟﻤﺘﻜﺎﻣﻠﺔ ‪ IDE +‬اﻟﻨﻤﺎذج ‪ Forms +‬اﻷدوات ‪Tools +‬‬ ‫اﻟﺨﺼﺎﺋﺺ‪Properties‬‬ ‫*ﻣﻼﺣﻈﺔ‪ :‬ﺳﯿﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻻﺧﺘﺼﺎرات ﺑﺸﻜﻞ ﻣﺘﻜﺮر وﻣﻦ أھﻢ ھﺬه اﻻﺧﺘﺼﺎرات ﻣﺎﻳﻠﻲ‪:‬‬ ‫‪VS.Net = Visual Studio.Net‬‬ ‫‪VB.Net = Visual Basic.Net‬‬ ‫‪IDE = Integrated Development Environment‬‬ ‫====================================‬ ‫ﻓﻲ درس اﻟﯿﻮم ﻋﺰﻳﺰي اﻟﺪارس ﺳﻨﺪﺧﻞ إﻟﻰ ﺑﯿﺌﺔ اﻟﺘﻄﻮﻳﺮ اﻟﻤﺘﻜﺎﻣﻠﺔ أو ﻣﺎﺗﺴﻤﻰ ﺑـ ‪Integrated‬‬ ‫‪Development Environment‬واﺧﺘﺼﺎرھﺎ ھﻮ‪IDE.‬‬ ‫ﺃﻭﻻ‪ :‬ﻣـﺎﻫﻲ ﺍﻟـ ‪ IDE‬؟‬ ‫ﺑﺎﺧﺘﺼﺎر‪ ،‬ھﻲ اﻟﻮاﺟﮫﺔ اﻟﻤﺮﺋﯿﺔ ‪ Interface‬ﻟﻠـ ‪ VS.Net‬ﺣﯿﺚ ﻳﻤﻜﻨﻚ ﻛﺘﺎﺑﺔ ﺑﺮاﻣﺠﻚ وﻋﻤﻞ ﺗﻄﺒﯿﻘﺎﺗﻚ ﺑﻠﻐﺔ‬ ‫ِ اﻟﺮﺋﯿﺴﯿﺔ ‪ Menu Designer،‬اﻟﺬي‬ ‫ّﻢ اﻟﻘﻮاﺋﻢ‬ ‫ِ‪ ،‬ﻛﻤﺼﻤ‬ ‫ّﺔ‬ ‫ِ اﻟﻤﺮﺋﯿ‬ ‫ِ ﻣﻦ اﻷدوات‬ ‫‪VB.Net.‬وﺗﺘﯿﺢ ﻟﻚ اﻟـ ‪ IDE‬اﻟﻌﺪﻳﺪ‬ ‫ّﮫﺎ‪ ،‬وﻣﺎ ﻳﻨﺪرج ﺗﺤﺘﮫﺎ ﻣﻦ أواﻣﺮ‬ ‫ِ أﺳﻤﺎﺋﮫﺎ وﺧﻮاﺻ‬ ‫ِ اﻟﺮﺋﯿﺴﯿﺔ ‪ Menus،‬وﺗﺤﺪﻳﺪ‬ ‫ِ اﻟﻘﻮاﺋﻢ‬ ‫ُ ﻋﻠﻰ إﻧﺸﺎء‬ ‫ﻳﺴﺎﻋﺪك‬ ‫ِ ‪Mouse‬وﻟﻮﺣﺔ‬ ‫ِ‬ ‫ّﺔ )أي ﺑﺎﺳﺘﺨﺪام اﻟﻔﺄرة‬ ‫ٍ ﻣﺮﺋﯿ‬ ‫ّ ذﻟﻚ ﺑﻄﺮﻳﻘﺔ‬ ‫‪Commands‬و ﻗﻮاﺋﻢ ﻓﺮﻋﯿﺔ ‪ Submenus،‬ﻛﻞ‬ ‫ِ ﻛﻮد ﻟﺬﻟﻚ وﺳﻨﺮى ذﻟﻚ ﻻﺣﻘﺎ(‬ ‫ِ ‪ Keyboard‬وﻧﺎﻓﺬة اﻟﺨﺼﺎﺋﺺ ‪ Properties Window،‬ﺑﺪﻻ ﻣﻦ ﻛﺘﺎﺑﺔ‬ ‫اﻟﻤﻔﺎﺗﯿﺢ‬ ‫ِ ‪ Design‬وﺗﻨﻔﯿـﺬ ‪ Execute‬وﺗﺼـﺤﯿﺢ‬ ‫ّﻨﻚ ﻣـﻦ ﺗﺼـﻤﯿﻢ‬ ‫ُﻤﻜ‬ ‫ِ اﻟﺘﻲ ﺗ‬ ‫ُ اﻟﺘﻄﻮﻳﺮ ﻛﺬﻟﻚ ﻋﻠﻰ اﻷدوات‬ ‫ﻛﻤﺎ ﺗﺤﺘﻮي ﺑﯿﺌﺔ‬ ‫أﺧﻄﺎء ‪ Debug‬ﺑﺮاﻣﺠﻚ‪.‬‬ ‫ﺟﻤﯿﻊ اﻷدوات اﻟﺘﻲ ﺳﻨﺤﺘﺎج إﻟﯿﮫﺎ ﻓﻲ ﻣﻘﺮر اﻟﺪورة ﺳﯿﺘﻢ ﺗﻮﺿﯿﺤﮫﺎ ﺑﺎﻟﺼﻮر ﻓﻲ ھﺬا اﻟﺪرس‪.‬‬ ‫ﺻﻔﺤﺔ ﺍﻟﺒﺪﺍﻳﺔ ‪Start Page‬‬ ‫ّة‪ ،‬ﺳﺘﻄﺎﻟﻌﻚ ﺻﻔﺤﺔ اﻟﺒﺪاﻳﺔ‪.‬‬ ‫ّل ﻣﺮ‬ ‫ﻋﻨﺪﻣﺎ ﺗﻔﺘﺢ ‪ VS.NET‬ﻷو‬ ‫ِ اﻟﺘـﻲ ﺳـﺘﻌﻤﻞ‬ ‫ّـﺔ ﺑﺎﺧﺘﯿـﺎر ﻟﻐـﺔ اﻟﺒﺮﻣﺠـﺔ‬ ‫ّﻟﯿ‬ ‫ّد ﺧﯿﺎراﺗﻚ اﻷو‬ ‫َﻚ أن ﺗﺤﺪ‬ ‫ّﻰ ﻳﻤﻜﻨ‬ ‫اﺿﻐﻂ اﻻﺧﺘﯿﺎر "‪ ،"My Profile‬ﺣﺘ‬ ‫ُ أن‬ ‫ﱠ‬ ‫ﺑﮫﺎ‪ ..‬اﺧﺘﺮ "ﻣﺒـﺮﻣﺞ ﻓﯿﺠﯿـﻮال ﺑﯿﺰﻳـﻚ" ‪ Visual Basic Developer‬ﻓـﻲ ﻣﺮﺑـﻊ "اﻟﻤﻠﻤـﺢ" ‪ ،Profile‬وﺳـﺘﺠﺪ‬ ‫ِ‪.‬‬ ‫َ ﻓﻲ ﺑﺎﻗﻲ اﻟﺨﺎﻧﺎت‬ ‫ّﺔ‬ ‫َ اﻻﻓﺘﺮاﺿﯿ‬ ‫َ اﻟﻘﯿﻢ‬ ‫َ أن ﺗﺘﺮك‬ ‫ُﻚ‬ ‫‪‬ﺎ‪ ..‬ﻳﻤﻜﻨ‬ ‫ِ ﻗﺪ ﺗﻢ ﻣﻠﺆھﻤﺎ آﻟﯿ‬ ‫ِ اﻵﺧﺮﻳﻦ‬ ‫اﻟﻤﺮﺑﻌﯿﻦ‬ ‫ِ اﻟﻤﻨﺴﺪﻟﺔ "ﻓﻲ ﺑﺪء اﻟﺘﺸـﻐﯿﻞ" ‪At‬‬ ‫ِ اﻟﻘﺎﺋﻤﺔ‬ ‫ِ ‪ ،VS.NET‬ﻋﻦ ﻃﺮﻳﻖ‬ ‫ُ ﻋﻦ ﻓﺘﺢ‬ ‫َ ﻣﺎ ﺳﯿﺤﺪث‬ ‫ّد‬ ‫َ أن ﺗﺤﺪ‬ ‫ُﻚ‬ ‫ﻛﻤﺎ ﻳﻤﻜﻨ‬ ‫ُ اﻟﺘﺎﻟﯿﺔ‪:‬‬ ‫َ اﻟﺼﻔﺤﺔ‪ ..‬ﻟﺪﻳﻚ اﻟﺨﯿﺎرات‬ ‫‪ Startup‬أﺳﻔﻞ‬ ‫ اﻋﺮض ﺻﻔﺤﺔ اﻟﺒﺪاﻳﺔ ‪) :Show Start Page‬ﻳﺠﺐ اﺧﺘـﯿـﺎره‪ --‬ﻟﻈﺮوف اﻟﻤـﻘﺮر(‬‫ُ ﻓﯿﮫﺎ ‪.NET.VS‬‬ ‫ٍ ﺗﻔﺘﺢ‬ ‫ّة‬ ‫ﱢ ﻣﺮ‬ ‫ِ ﻓﻲ ﻛﻞ‬ ‫ُ اﻟﺒﺪاﻳﺔ‬ ‫ُ ﺻﻔﺤﺔ‬ ‫ُ ﺳﺘﻈﮫﺮ‬ ‫ﺣﯿﺚ‬ ‫ اﻓﺘﺢ آﺧﺮ ﻣﺸﺮوع ‪:Load Last Loaded Solution‬‬‫ِﻚ‬ ‫َ‬ ‫ِ ﻣﺸـﺮوﻋ‬ ‫َ ﻟﻔـﺘﺢ‬ ‫ٍ ﺿﺨﻢ‪ ،‬اﺧﺘﺮْ ھﺬا اﻻﺧﺘﯿﺎر‬ ‫ِ ﺑﺮﻧﺎﻣﺞ‬ ‫َ ﻓﻲ ﺗﻄﻮﻳﺮ‬ ‫ٍ وأﺳﺎﺑﯿﻊ‬ ‫ًﺎ ﻟﺸﮫﻮر‬ ‫َ ﻏﺎرﻗ‬ ‫َﻚ‬ ‫ُ ﻧﻔﺴ‬ ‫ﺣﯿﻨﻤﺎ ﺗﺠﺪ‬ ‫‪‬ﺎ ﻛﻠﻤﺎ ﻓﺘﺤﺖ ‪.NET.VS‬‬ ‫ﺗﻠﻘﺎﺋﯿ‬ ‫ اﻋﺮض ﻣﺮﺑﻊ ﺣﻮار "ﻓﺘﺢ ﻣﺸﺮوع" ‪:Show Open Project Dialog Box‬‬‫َ أن ﺗﺨﺘـﺎر‬ ‫َ‬ ‫ُـ ﻚ‬ ‫ُ ﻳﻤﻜﻨ‬ ‫ُ ﻟـﻚ ﻣﺮﺑـﻊ ﺣـﻮار "ﻓـﺘﺢ ﻣﺸـﺮوع"‪ ،‬ﺣﯿـﺚ‬ ‫ُ ﻓﯿﮫـﺎ ‪ ،VS.NET‬ﺳـﯿﻈﮫﺮ‬ ‫ٍ ﺗﻔـﺘﺢ‬ ‫ّة‬ ‫ﱢ ﻣﺮ‬ ‫ﻓﻲ ﻛﻞ‬ ‫َﻪ‪.‬‬ ‫ُ ﻓﺘﺤ‬ ‫َ اﻟﺬي ﺗﺮﻳﺪ‬ ‫اﻟﻤﺸﺮوع‬ ‫ اﻋﺮض ﻣﺮﺑﻊ ﺣﻮار "ﻣﺸﺮوع ﺟﺪﻳﺪ" ‪:Show New Project Dialog Box‬‬‫َ ﻧـﻮع‬ ‫َ‬ ‫َ أن ﺗﺨﺘـﺎر‬ ‫ُﻚ‬ ‫ُ ﻳﻤﻜﻨ‬ ‫ُ ﻟﻚ ﻣﺮﺑﻊ ﺣﻮار "ﻣﺸﺮوع ﺟﺪﻳﺪ"‪ ،‬ﺣﯿﺚ‬ ‫ُ ﻓﯿﮫﺎ ‪ ،VS.NET‬ﺳﯿﻈﮫﺮ‬ ‫ٍ ﺗﻔﺘﺢ‬ ‫ّة‬ ‫ﱢ ﻣﺮ‬ ‫ﻓﻲ ﻛﻞ‬ ‫ِ ھﺬا اﻻﺧﺘﯿﺎر‪.‬‬ ‫ّﺐ‬ ‫ُﻚ ﺑﺘﺠﻨ‬ ‫َﻪ‪ ..‬ﻧﻨﺼﺤ‬ ‫ّد اﺳﻤ‬ ‫ِ وﺗﺤﺪ‬ ‫اﻟﻤﺸﺮوع‬ ‫ً ‪:Show Empty Environment‬‬ ‫َ اﻟﺘﻄﻮﻳﺮ ﻓﺎرﻏﺔ‬ ‫ اﻋﺮض ﺑﯿﺌﺔ‬‫َ ﻣﻌﮫﺎ‪.‬‬ ‫ُ اﻟﺘﻌﺎﻣﻞ‬ ‫َ اﻟﺘﻲ ﺗﺮﻳﺪ‬ ‫َ اﻟﻤﺸﺎرﻳﻊ‬ ‫َ أو ﺗﻨﺸﺊ‬ ‫ٍ ﻓﺎرﻏﺔ‪ ،‬وﻋﻠﯿﻚ أن ﺗﻔﺘﺢ‬ ‫ﺳﺘﺒﺪأ ‪ VS.NET‬ﺑﺒﯿﺌﺔ‬ ‫ُﮫـﺎ‪،‬‬ ‫ﱠ ﻓﺘﺤ‬ ‫َ ﺗـﻢ‬ ‫َ أرﺑﻌـﺔ ﻣﺸـﺎرﻳﻊ‬ ‫ُ آﺧـﺮ‬ ‫ِ ﺗﻌـﺮض‬ ‫َ اﻟﺒﺪاﻳـﺔ‬ ‫ﱠ ﺻﻔﺤﺔ‬ ‫ُ إن‬ ‫ّل‪ ،‬ﺣﯿﺚ‬ ‫ُ اﻷو‬ ‫ًﺎ ھﻮ اﻟﺨﯿﺎر‬ ‫َ اﻷﻛﺜﺮ ﺷﯿﻮﻋ‬ ‫ﱠ اﻟﺨﯿﺎر‬ ‫*إن‬ ‫ّي "ﻣﺸﺮوع ﺟﺪﻳﺪ" و"ﻓﺘﺢ ﻣﺸﺮوع"‪.‬‬ ‫ِ ﻟﺰر‬ ‫ﺑﺎﻹﺿﺎﻓﺔ‬ ‫ّد ﺧﯿﺎر ‪Get Started‬‬ ‫َ أن ﺗﺤﺪ‬ ‫ﱠ ﻋﻠﯿﻚ‬ ‫ِ‪ ،‬ﻓﺈن‬ ‫َ اﻟﺒﺪاﻳﺔ‬ ‫وﻟﻜﻲ ﺗﺮى ﺻﻔﺤﺔ‬ ‫ـﻦ‬ ‫ِ ﻋـ‬ ‫ـﺎت‬ ‫ُ اﻟﻤﻌﻠﻮﻣـ‬ ‫ـﺪث‬ ‫ُ أﺣـ‬ ‫ُ ﺗﻮﺟـﺪ‬ ‫ـﺖ‪ ،‬ﺣﯿـﺚ‬ ‫ـﻊ ‪ VS.NET‬ﻋﻠـﻰ اﻹﻧﺘﺮﻧـ‬ ‫ُ ﻟﻤﻮاﻗـ‬ ‫ـﯿﺮ‬ ‫ُﺸـ‬ ‫ـﺎرات‪ ،‬ﻓﮫـﻲ ﺗ‬ ‫ـﺎﻗﻲ اﻟﺨﯿـ‬ ‫ّـﺎ ﺑـ‬ ‫أﻣ‬ ‫ُ اﻟﺨﺪﻣﺎت‪.‬‬ ‫ِ واﻟﻮﺛﺎﺋﻖ‪ ،‬وﺣﺰم‬ ‫ُ اﻟﻤﻘﺎﻻت‬ ‫اﻟﻤﻨﺘﺠﺎت‪ ،‬وﻛﺬﻟﻚ أﺣﺪث‬ ‫ِﻚ ﻣﻦ ‪.NET.VS‬‬ ‫َ ﻧﺴﺨﺘ‬ ‫َ ﺗﺤﺪﻳﺚ‬ ‫ِ‪ ،‬أن ﺗﺤﺎول‬ ‫ِ واﻵﺧﺮ‬ ‫َ اﻟﺤﯿﻦ‬ ‫وﻋﻠﯿﻚ ﻣﺎ ﺑﯿﻦ‬ ‫ّﻢ‬ ‫ٍ ﻋـﻦ ﻣﻮاﻗـﻊ اﻟﺨـﺪﻣﺎت اﻟﺘـﻲ ﺗـﺪﻋ‬ ‫ٍ ﺗﺤﺘـﻮي ﻋﻠـﻰ ﻣﻌﻠﻮﻣـﺎت‬ ‫ُ ﻟﺼـﻔﺤﺔ‬ ‫ّـﻪ ﻳﻘـﻮد‬ ‫ّـﺎ ﺧﯿـﺎر ‪ ،Web Hosting‬ﻓﺈﻧ‬ ‫أﻣ‬ ‫‪.ASP.NET.‬‬ ‫ﻋﻨﺪ اﺧﺘﯿﺎرك ‪ Get Started‬ﻛﻤﺎ ھﻮ ﻣﻮﺿﺢ أﻋﻼه‪ ،‬ﺳﻮف ﺗﻈﮫﺮ ﻟﻚ اﻟﺼﻔﺤﺔ اﻟﺘﺎﻟﻰ‬ ‫ﺇﻧﺸﺎﺀ ﻣﺸﺮﻭﻉ ﺟﺪﻳﺪ‬ ‫ﻓﻲ اﻟﺸﻜﻞ أﻋﻼه‪ ،‬اﻟﺨﯿﺎر رﻗﻢ )‪ (1‬ﻳﻌﺮض ﻟﻚ آﺧﺮ أرﺑﻌﺔ ﻣﺸﺎرﻳﻊ ﺗﻢ ﻓﺘﺤﮫﺎ وﻳﻘﺎﺑﻠﮫﺎ ﺗﻮارﻳﺦ اﻟﺘﻌﺪﻳﻞ اﻟﺨﺎﺻﺔ‬ ‫ّﻢ ﺑﺎﻟﺮﻗﻢ ‪ 2‬ﻓﻲ اﻟﺼﻮرة أﻋﻼه ﻟﻔﺘﺢ ﻣﺸﺮوع ﺟﺪﻳﺪ‬ ‫ﺑﻜﻞ ﻣﺸﺮوع‪ .‬اﺿﻐﻂ اﻵن ﻋﻠﻰ زر ‪ New Project‬اﻟﻤﻌﻠ‬ ‫وﺑﺎﻟﺘﺎﻟﻲ اﻟﺪﺧﻮل إﻟﻰ ﺑﯿﺌﺔ اﻟﺘﻄﻮﻳﺮ ‪IDE.‬‬ ‫اﻟﺼﻮرة أدﻧﺎه ﺗﻮﺿﺢ ﻟﻚ اﻟﺨﻄﻮة اﻟﺜﺎﻧﯿﺔ‪:‬‬ ‫ﻛﻤﺎ ﻓﻲ اﻟﺼﻮرة أﻋﻼه‪ ،‬ﺗﺄﻛﺪ ﻣﻦ أن اﻟﺨﯿﺎر ‪Visual Basic Projects‬ﻣﻈﻠﻞ ﻛﻤﺎ ﻓﻲ اﻟﻤﺮﺑﻊ اﻟﻌﻠﻮي اﻷﻳﺴﺮ‬ ‫واﻟﻤﺴﻤﻰ ‪ Project Types‬وﺑﻌﺪ ذﻟﻚ ﻗﻢ ﺑﺎﺧﺘﯿﺎر ‪ Windows Application‬ﻛﻤﺎ ﻓﻲ اﻟﺪاﺋﺮة رﻗﻢ ‪. 1‬‬ ‫وﻣﻦ ﺧﺎﻧﺔ ‪ Name‬ﻳﻤﻜﻨﻚ وﺿﻊ اﻻﺳﻢ اﻟﺬي ﺗﺮﻳﺪ ﻟﻤﺸﺮوﻋﻚ وﺑﺈﻣﻜﺎﻧﻚ ﺣﻔﻈﻪ ﻓﻲ اﻟﻤﻜﺎن اﻟﺬي ﺗﺮﻳﺪ ﻋﺒﺮ‬ ‫ﺧﺎﻧﺔ‪Location.‬‬ ‫اﻵن اﺿﻐﻂ ﻋﻠﻰ زر ‪ OK‬ﻟﻜﻲ ﺗﺸﺎھﺪ ﻣﺎھﻮ اﻟـ ?‪ Windows Application‬اﻧﻈﺮ اﻟﺼﻮرة أدﻧﺎه‪:‬‬ ‫ﻓﻲ اﻟﺼﻮرة أﻋﻼه‪ ،‬ھﺬا ھﻮ اﻟـ ‪ Windows Application .‬ﻣﺎﻳﮫﻤﻨﺎ ﻓﻲ ھﺬه اﻟﺼﻔﺤﺔ ھﻮ ﻣﺎﺗﻢ ﺗﺮﻗﯿﻤﻪ ﺑﺎﻷرﻗﺎم‬ ‫‪ 3-2-1‬ﺣﯿﺚ أن اﻟﺮﻗﻢ ‪ 1‬ﻳﺸﯿﺮ إﻟﻰ اﻟـﻔﻮرم ‪ Form‬اﻟﺬي ﺑﺈﻣﻜﺎﻧﻚ أن ﺗﻀﯿﻒ إﻟﯿﻪ ﻣﺎﺗﺮﻳﺪ ﻣﻦ أدوات‬ ‫(‪Tools‬ﺳﺘﺘﻌﺮف ﻋﻠﯿﮫﺎ ﻓﻲ اﻟﺮﻗﻢ ‪ (3‬وﻟﻪ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﺨﺼﺎﺋﺺ( ‪ properties‬ﺳﺘﺘﻌﺮف ﻋﻠﯿﮫﺎ ﻓﻲ اﻟﺮﻗﻢ ‪(2‬‬ ‫وھﺬا اﻟﻔﻮرم ھﻮ ﻣﺎﺳﺘﺸﺎھﺪه ﻋﻨﺪ ﺗﻨﻔﯿﺬك ﻟﻠﺒﺮﻧﺎﻣﺞ ‪.‬ﻗﺪ ﺗﺒﺪوا اﻷﻣﻮر ﻣﻌﻘﺪة ﺑﻌﺾ اﻟﺸﻲء! أﻟﯿﺲ ﻛﺬﻟﻚ؟‬ ‫ﻟﻜﻦ ﺛﻖ ﺗﻤﺎﻣﺎ أﻧﮫﺎ أﺳﮫﻞ وأﻳﺴﺮ ﻣﻤﺎ ﺗﺘﺼﻮر وﺳﻮف ﺗﺘﺄﻛﺪ ﻣﻦ ذﻟﻚ ﺑﻤﺠﺮد ﺗﻨﻔﯿﺬك ﻟﻤﺸﺮوﻋﻚ اﻷول‪ .‬وإن‬ ‫ﻛﻨﺖ ﻣﻦ ﻣﺒﺮﻣﺠﻲ اﻟﻔﯿﺠﻮال ﺑﯿﺰك ﻓﺄﻋﺘﻘﺪ ﺑﺄن ﻣﺎﺳﻨﺸﺮﺣﻪ ﻓﻲ ھﺬا اﻟﺪرس ﻟﯿﺲ ﺑﺠﺪﻳﺪ ﻋﻠﯿﻚ ﻟﻜﻦ ھﺬا‬ ‫ﻻﻳﻌﻔﯿﻚ ﻣﻦ ﻗﺮاءة اﻟﺪرس وﻓﮫﻤﻪ ﺑﺸﻜﻞ ﺟﯿﺪ‪.‬‬ ‫اﻵن اﺿﻐﻂ ﻋﻠﻰ اﻷزرار اﻟﻤﺸﺎر إﻟﯿﮫﺎ ﺑﺎﻷرﻗﺎم ‪ 2‬و ‪ 3‬ﻓﻲ اﻟﺼﻮرة أﻋﻼه وﺳﺘﻈﮫﺮ ﻟﻚ اﻷﺷﻜﺎل اﻟﺘﺎﻟﯿﺔ‪:‬‬ ‫اﻟﺮﻗﻢ ‪ 1‬ﻳﺸﯿﺮ إﻟﻰ ﺻﻨﺪوق اﻷدوات ‪ ToolBox‬ﺣﯿﺚ ﺳﺘﻈﮫﺮ ﻟﻚ ﻗﺎﺋﻤﺔ ﺑﻌﺸﺮات اﻷدوات اﻟﻤﺨﺘﻠﻔﺔ أو‬ ‫ﻣﺎﺗﺴﻤﻰ ﺑـ)ﻋﻨﺎﺻﺮ اﻟﺘﺤﻜﻢ(‪ ،‬وﻟﻦ ﻧﺘﻄﺮق إﻻ إﻟﻰ ﻣﺎﻧﺤﺘﺎﺟﻪ ﻣﻨﮫﺎ ﻓﻲ ﻣﻨﮫﺞ اﻟﺪورة وھﻲ ﺛﻼث أو أرﺑﻊ أدوات‬ ‫ﻓﻲ ھﺬا اﻟﺪرس وﻣﺜﻠﮫﺎ ﻓﻲ درس آﺧﺮ‪ .‬أﻣﺎ ﺑﻘﯿﺔ اﻷدوات ﻟﻤﻦ أراد ﻣﻌﺮﻓﺔ وﻇﺎﺋﻔﮫﺎ ﻓﺒﻜﻞ ﺑﺴﺎﻃﺔ ﻋﻠﯿﻪ ﺑﻮﺿﻊ‬ ‫اﻟﻔﺄرة ﻋﻠﯿﮫﺎ واﻟﻀﻐﻂ ﻋﻠﻰ زر ‪F1.‬ھﻞ ﺗﻌﻠﻢ ﻋﺰﻳﺰي اﻟﺪارس أن اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻤﺸﺎرﻳﻊ اﻟﻜﺒﯿﺮة واﻟﻀﺨﻤﺔ ﻗﺪ‬ ‫ﻻﺗﺴﺘﺨﺪم أﻛﺜﺮ ﻣﻦ ﻋﺸﺮ أدوات)ﻋﻨﺎﺻﺮ ﺗﺤﻜﻢ(! ﻓﺎﻟﻌﺒﺮة ﻟﯿﺴﺖ ﺑﺎﻟﻌﺪد‪.‬‬ ‫ﺑﺎﻟﻨﺴﺒﺔ ﻟﻘﺎﺋﻤﺔ اﻷدوات ﻓﮫﻲ ﺗﺨﺘﻔﻲ ﺑﻤﺠﺮد إزاﻟﺔ اﻟﻔﺄرة ﻣﻦ ﻋﻠﯿﮫﺎ‪ ،‬وﻹﻋﺎدﺗﮫﺎ ﺑﺈﻣﻜﺎﻧﻚ اﻟﻀﻐﻂ ﻋﻠﻰ اﻟﺰر‬ ‫رﻗﻢ ‪ 1‬ﻣﺮة أﺧﺮى أو اﻟﻀﻐﻂ ﻋﻠﻰ اﻟﺰر رﻗﻢ ‪ 3‬اﻟﻤﻮﺿﺢ ﻓﻲ اﻟﺮﺳﻢ أﻋﻼه ﻓﻜﻼھﻤﺎ ﺳﻮاﺳﯿﺔ‪.‬‬ ‫اﻟﺮﻗﻢ ‪ 2‬ﻳﺸﯿﺮ إﻟﻰ ﻣﺮﺑﻊ اﻟﺨﺼﺎﺋﺺ ‪ Properties‬واﻟﺬي ﻳﺤﺘﻮي ﻋﻠﻰ ﻋﺸﺮات اﻟﺨﺼﺎﺋﺺ اﻟﻤﺘﻌﻠﻘﺔ ﺑﻜﻞ أداة‪.‬‬ ‫وأﻛﺜﺮ ﻣﺎﻳﮫﻤﻨﺎ ﻣﻦ اﻟﺨﺼﺎﺋﺺ ھﻤﺎ‬ ‫)‪(Name‬و ‪ Text‬ﺣﯿﺚ أن ‪ Name‬ھﻮ اﺳﻢ اﻷداة اﻟﺬي ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻪ داﺧﻞ اﻟﺒﺮﻧﺎﻣﺞ)ﺳﯿﺘﻀﺢ ﻻﺣﻘﺎ‬ ‫ﺑﺸﻜﻞ أﻛﺒﺮ( أﻣﺎ ‪ Text‬ﻓﮫﻮ اﻟﻨﺺ اﻟﻤﻜﺘﻮب ﻋﻠﻰ اﻷداة واﻟﺬي ﺳﯿﺘﻢ ﻋﺮﺿﻪ ﻓﻲ اﻟﺘﻨﻔﯿﺬ‪.‬‬ ‫ﻋﺰﻳﺰي اﻟﺪارس‪ ،‬ﻟﻦ ﻧﺘﻄﺮق إﻟﻰ ﺟﻤﯿﻊ اﻷدوات اﻟﻤﺘﺎﺣﺔ ﻟﻜﺜﺮة ﻋﺪدھﺎ وﻷﻧﮫﺎ ﺗﺤﺘﺎج إﻟﻰ وﻗﺖ ﻃﻮﻳﻞ ﻟﻠﻐﺎﻳﺔ‬ ‫ﻟﺸﺮﺣﮫﺎ أﺟﻤﻊ‪ ،‬ﻟﻜﻨﻨﺎ ﺳﻨﺸﺮح أھﻢ ﺛﻼث أدوات و أﻛﺜﺮھﺎ ﺷﯿﻮﻋﺎ واﺳﺘﺨﺪاﻣﺎ‪.‬‬ ‫أﻣﺎ أھﻢ اﻷدوات )ﻋﻨﺎﺻﺮ اﻟﺘﺤﻜﻢ )اﻟﺘﻲ ﺳﻨﺘﻌﺎﻣﻞ ﻣﻌﮫﺎ ھﻲ‪:‬‬ ‫‪Label‬و ‪ Button‬و ‪Text Box‬‬ ‫ﻗﻢ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ﻛﻞ واﺣﺪة ﻣﻦ اﻷدوات اﻟﺜﻼث ﻋﻠﻰ ﺣﺪه‪ ،‬وﻣﻦ ﺛﻢ ﺳﺤﺒﮫﺎ وإﻓﻼﺗﮫﺎ ‪ Drag & Drop‬ﻓﻲ‬ ‫اﻟﻔﻮرم ‪ Form‬وﺿﻌﮫﺎ ﻓﻲ اﻟﻤﻜﺎن اﻟﺬي ﺗﺮﻳﺪ وﺑﺈﻣﻜﺎﻧﻚ أﻳﻀﺎ اﻟﻨﻘﺮ ﻣﺮﺗﯿﻦ ‪ Double click‬ﻋﻠﻰ اﻷداة اﻟﺘﻲ‬ ‫ﺗﺮﻳﺪ‪.‬‬ ‫واﻟﺼﻮرة اﻟﺘﺎﻟﯿﺔ ﺳﺘﻮﺿﺢ ﻟﻚ ﺑﺸﻜﻞ أﻛﺒﺮ‪:‬‬ ‫أﻋﺘﻘﺪ ﺑﺄن اﻟﺸﻜﻞ أﻋﻼه أﺻﺒﺢ ﻣﺄﻟﻮﻓﺎ وﻣﻔﮫﻮﻣﺎ ﻟﺪﻳﻚ‪ .‬ﻓﺎﻟـ ‪ Label‬ﻋﺒﺎرة ﻋﻦ ﻋﻨﻮان ﻳﻜﺘﺐ ﻓﻲ أي ﻣﻜﺎن ﻣﻦ‬ ‫اﻟﻔﻮرم ﺑﺤﺴﺐ اﻟﺤﺎﺟﺔ أﻣﺎ‬ ‫اﻟـ ‪TextBox‬ﻓﮫﻲ ﻣﺴﺎﺣﺔ ﺗﺴﻤﺢ ﻟﻚ ﺑﺈدﺧﺎل وﻛﺘﺎﺑﺔ ﻣﺎﺗﺮﻳﺪ ﻣﻦ ﻧﺼﻮص‪ ،‬أﻣﺎ اﻟـﺰر ‪ Button‬ﻓﺄوﺿﺢ ﻣﻦ أن‬ ‫ﻳﺸﺮح ‪.‬‬ ‫ﻣﻦ ﻣﺮﺑﻊ اﻟﺨﺼﺎﺋﺺ أﻧﺼﺤﻚ ﺑﺘﻐﯿﯿﺮ اﻻﺳﻢ اﻟﻤﻮﺟﻮد ﻓﻲ ﺧﺎﻧﺔ )‪ (Name‬إﻟﻰ اﺳﻢ أﺳﮫﻞ وﻳﻤﻜﻨﻚ ﺗﺬﻛﺮه ﻓﯿﻤﺎ‬ ‫ﺑﻌﺪ ﺑﻜﻞ ﻳﺴﺮ وﺳﮫﻮﻟﺔ‪ .‬ﻓﺒﺎﻟﻀﻐﻂ ﻣﺮة واﺣﺪة ﺑﺰر اﻟﻔﺄرة اﻷﻳﺴﺮ ﻋﻠﻰ أﻳﺔ أداة ﻳﻤﻜﻨﻚ ﻣﺸﺎھﺪة ﻣﺮﺑﻊ‬ ‫اﻟﺨﺼﺎﺋﺺ اﻟﺨﺎص ﺑﮫﺎ واﻟﺘﺤﻜﻢ ﺑﮫﺎ ﻛﻤﺎ ﺗﺮﻳﺪ‪ .‬ﻳﻤﻜﻨﻚ أﻳﻀﺎ اﻟﺘﺤﻜﻢ ﺑﺄﻟﻮان اﻟﻨﺼﻮص واﻟﺨﻠﻔﯿﺎت وﻧﻮﻋﯿﺔ اﻟﺨﻂ‬ ‫وﺣﺠﻤﻪ‪..‬اﻟﺦ وﻛﻞ ذﻟﻚ ﻣﻦ ﺧﻼل ﻣﺮﺑﻊ اﻟﺨﺼﺎﺋﺺ‪.‬‬ ‫ُ ﺑﺈﺟﺮاء ﺑﻌﺾ اﻟﺘﻌﺪﻳﻼت ﻋﻠﻰ اﻟﺸﻜﻞ أﻋﻼه‪ ،‬ﺑﺈﻣﻜﺎﻧﻚ اﻟﻘﯿﺎم ﺑﮫﺎ ﺑﻜﻞ ﻳﺴﺮ وﺳﮫﻮﻟﺔ‪ ،‬ﺷﺎھﺪ اﻟﺼﻮرة‬ ‫ﻟﻘﺪ ﻗﻤﺖ‬ ‫أدﻧﺎه وﺣﺎول اﻟﺘﻄﺒﯿﻖ‪.‬‬ ‫اﻟﻔﻮرم ﺑﻌﺪ اﻟﺘﻨﻔﯿﺬ‪:‬‬ ‫ﺑﺈﻣﻜﺎﻧﻚ ﺗﻨﻔﯿﺬ اﻟﻔﻮرم أﻋﻼه ﻋﺒﺮ ﺧﻄﻮﺗﯿﻦ ھﻤﺎ‪:‬‬ ‫ٍ ﻣﻦ‬ ‫أوﻻ‪ :‬ﻣﻦ ﻗﺎﺋﻤﺔ ‪ Build‬اﺧﺘﺮ ‪ Build Solution‬ﻟﺒﻨﺎء ﺑﺮﻧﺎﻣﺠﻚ وﺗﻔﺤﺺ اﻷﺧﻄﺎء وﺗﺄﻛﺪ ﺑﺄن ﺑﺮﻧﺎﻣﺠﻚ ﺧﺎل‬ ‫اﻷﺧﻄﺎء ﻛﻤﺎ ﻓﻲ اﻟﺸﻜﻞ أدﻧﺎه واﻟﺬي ﺳﯿﻈﮫﺮ ﻟﻚ ﻓﻲ أﺳﻔﻞ اﻟﺼﻔﺤﺔ‪:‬‬ ‫اﻟﺨﻄﻮة اﻟﺜﺎﻧﯿﺔ ﺗﺘﻢ ﺑﺎﻟﺬھﺎب إﻟﻰ ﻗﺎﺋﻤﺔ ‪ Debug‬واﺧﺘﯿﺎر اﻷﻣﺮ ‪ Start‬أو ﺑﺎﻟﻀﻐﻂ ﻣﺒﺎﺷﺮة ﻋﻠﻰ زر‪F5.‬‬ ‫ﺑﺈﻣﻜﺎﻧﻚ اﺧﺘﺼﺎرا اﻟﻀﻐﻂ ﻣﺒﺎﺷﺮة ﻋﻠﻰ زر ‪ F5‬وﺳﯿﺘﻢ ﻋﻤﻞ ‪ debug‬ﺗﻠﻘﺎﺋﯿﺎ وإﻇﮫﺎر اﻟﻨﺘﯿﺠﺔ‪.‬‬‫ﺑﺎﻟﻄﺒﻊ ھﺬه اﻷدوات ﻏﯿﺮ ﻣﺮﺗﺒﻄﺔ ﺑﺄﻳﺔ أﺣﺪاث‪ ،‬أي ﻋﻨﺪ اﻟﻀﻐﻂ ﻋﻠﻰ زر ‪ Button1‬اﻟﻤﻮﺟﻮد ﻓﻲ ﺷﺎﺷﺔ‬ ‫اﻟﺘﻨﻔﯿﺬ ﻓﻠﻦ ﺗﺤﺼﻞ ﻋﻠﻰ أﻳﺔ ﻧﺘﯿﺠﺔ! اﻟﺴﺒﺐ ﺑﻜﻞ ﺑﺴﺎﻃﺔ ﻷﻧﻚ ﻟﻢ ﺗﻘﻢ ﺑﺮﺑﻂ اﻷداة ﺑﺤﺪث ﻣﻌﯿﻦ‪ .‬ﻓﻲ‬ ‫اﻟﺪروس اﻟﻘﺎدﻣﺔ ﺑﻤﺸﯿﺌﺔ اﷲ ﺳﻨﺪﺧﻞ إﻟﻰ ﻣﺎﻳﺴﻤﻰ ﺑﺎﻟـ ‪ Class Library‬وﺳﺘﻌﺮف ﻛﯿﻒ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻷﻛﻮاد‬ ‫اﻟﺒﺮﻣﺠﯿﺔ‪ ،‬ورﺑﻂ اﻷدوات ﺑﻤﺎﺗﺮﻳﺪ ﻣﻦ أﺣﺪاث وﻋﻤﻠﯿﺎت ﺑﺤﺴﺐ ﺣﺎﺟﺘﻚ إﻟﯿﮫﺎ‪.‬‬ ‫*اﻧﺘﮫﻰ اﻟﺪرس اﻟﺜﺎﻧﻲ*‬ ‫وﻻ ﺗﻮﺟﺪ اى ﺗﻌﻠﯿﻘﺎت او أﺳﺌﻠﺔ ﻋﻠﯿﻪ ‪.....‬‬ ‫اﻟﺪرس اﻟﺜﺎﻟﺚ‬ ‫ﺑﻌﺾ ﻣﺰﺍﻳﺎ ‪VB.NET‬‬ ‫ﻣﻌﻠﻮﻣﺎت ﻋﺎﻣﺔ‪:‬‬ ‫ِ ﺑﺎﻟﻜﺎﺋﻨﺎت ‪ ،Object Oriented Programming‬ﻟﺪرﺟﺔ أ ّ‬ ‫ن‬ ‫ِ اﻟﺒﺮﻣﺠﺔ‬ ‫ِ ﻋﻠﻰ ﻣﻔﮫﻮم‬ ‫ٌ ﺑﺎﻟﻜﺎﻣﻞ‬ ‫ّﺔ‬ ‫ ‪ VB.Net‬ﻣﺒﻨﯿ‬‫ـﻔﻮﻓﺎت ‪ Arrays‬ﻗــﺪ ﺻــﺎرت ﺧﻼﻳــﺎ ‪،Classes‬‬ ‫َ اﻟﺼــﺤﯿﺤﺔ ‪ Integers‬واﻟﻨﺼــﻮص ‪ Strings‬واﻟﻤﺼـ‬ ‫ـﺪاد‬ ‫اﻷﻋـ‬ ‫ّﺮ‬ ‫ُ ﺟﺎھﺰة‪ ..‬ﻓﻤﺜﻼ‪ ،‬أﺻﺒﺤﺖ ﻟﺪﻳﻚ وﺳﺎﺋﻞ ﺟﺎھﺰة ﺗﻨﺘﻤﻲ ﻟﻠﻤﺘﻐﯿ‬ ‫ُ ووﺳﺎﺋﻞ‬ ‫ِ ﺧﺼﺎﺋﺺ‬ ‫وﺻﺎرت ﻟﮫﺬه اﻟﻌﻨﺎﺻﺮ‬ ‫ّ‪ ،‬ﺗﺴﻤﺢ ﻟﻚ ﺑﺎﻟﺒﺤﺚ ﻓﯿﻪ أو ﺗﻘﻄﯿﻌﻪ أو اﺳﺘﺒﺪال أﺟﺰاء ﻣﻨﻪ‪ ...‬إﻟﺦ‪ ...‬ﻛﻤﺎ ﺻﺎرت ﻟـﺪﻳﻚ وﺳـﺎﺋﻞ‬ ‫ُ‬ ‫ّﻲ‬ ‫اﻟﻨﺼ‬ ‫ِ ﻓﯿﮫﺎ!‬ ‫ِﮫﺎ واﻟﺒﺤﺚ‬ ‫ِ وﺗﺮﺗﯿﺒ‬ ‫ِ اﻟﻤﺼﻔﻮﻓﺔ‬ ‫ٌ ﻟﻌﻜﺲ‬ ‫ﺟﺎھﺰة‬ ‫ّ ﻟﻐـﺎت ‪ VisualStudio.Net‬ﺗﻌﻤـﻞ ﻋﻠـﻰ‬ ‫ّ ﻗﺼـﻮر ﻓـﻲ ﻣﺘـﺮﺟﻢ اﻟﻜـﻮد ‪ ،Compiler‬ﻓﻜـﻞ‬ ‫ ﻟﻢ ﻳﻌﺪ ھﻨﺎك أي‬‫ّة وﺳـﺮﻋﺔ وﻛﻔـﺎءة ‪ ..VC++‬وﻛﻤﺜـﺎل‪ ،‬ﺻـﺎر ﺑﺈﻣﻜﺎﻧـﻚ‬ ‫ّ ‪ VB‬ﻗـﺪ ﺻـﺎر ﺑﻘـﻮ‬ ‫ّـﺎ ﻳﻌﻨـﻲ أن‬ ‫ﻣﺘﺮﺟﻢ واﺣـﺪ‪ ،‬ﻣﻤ‬ ‫ّ أن ﺗﺨﺸﻰ ﻣﻦ ﺑﻄﺌﮫـﺎ أو اﺳـﺘﮫﻼﻛﮫﺎ‬ ‫ّﺔ ‪ Recursive Programming‬دون‬ ‫اﺳﺘﺨﺪام اﻟﺒﺮﻣﺠﺔ اﻻرﺗﺪادﻳ‬ ‫ﻟﺤﺠﻢ اﻟﺬاﻛﺮة‪ ،‬ﻓﻘﺪ ﺻﺎرت ﻓﻲ ﻣﻨﺘﮫﻰ اﻟﺴﺮﻋﺔ واﻟﻜﻔﺎءة‪.‬‬ ‫ ﺑﺈﻣﻜﺎﻧﻚ إﺿﺎﻓﺔ اﻷزرار واﻷدوات ﻟﻠﻨﻤﺎذج ﻓﻲ وﻗﺖ اﻟﺘﻨﻔﯿـﺬ ‪ ،Run Time‬ﻣـﻊ ﻗـﺪرﺗﻚ ﻋﻠـﻰ رﺑﻄﮫـﺎ ﺑـﺄي‬‫ّ‬ ‫ّ اﺳﺘﺪﻋﺎؤه ﻋﻨﺪ ﺿﻐﻄﮫﺎ‪.‬‬ ‫إﺟﺮاء‪ ،‬ﻟﯿﺘﻢ‬ ‫ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧﻚ ﻣﻌﺎﻟﺠﺔ اﻷﺧﻄﺎء‪ ،‬ﻋﻦ ﻃﺮﻳـﻖ اﺳـﺘﺨﺪام ﻣﻌﺎﻟﺠـﺎت اﻻﺳـﺘﺜﻨﺎءات ‪Exception Handlers‬‬‫ﻓﻲ ﺟﻤﻠﺔ‪:‬‬ ‫‪.Try.. Catch.. End Try‬‬ ‫ّد اﻷﺷـﻜﺎل ‪ Polymorphism‬ﺑـﻼ أي‬ ‫ّ‬ ‫ّ ﻣﻔـﺎھﯿﻢ اﻟﻮراﺛـﺔ ‪ Inheritance‬وﺗﻌـﺪ‬ ‫ ﺻﺎر ﺑﺈﻣﻜﺎﻧﻚ اﺳـﺘﺨﺪام ﻛـﻞ‬‫ّﺔ واﺣﺪة ﻓﻘﻂ ‪ Single Inheritance‬ﻟﻠﺘﺴﮫﯿﻞ‪.‬‬ ‫ﻣﺸﺎﻛﻞ‪ ..‬وإن ﻛﺎن ﻣﺴﻤﻮﺣﺎ ﻟﻚ ﺑﻮراﺛﺔ ﺧﻠﯿ‬ ‫ّﺔ‪ ،‬ﺗﻔﻌﻞ ﻛ ّ‬ ‫ﻞ‬ ‫ّر ﺑـ ‪ 3500‬ﺧﻠﯿ‬ ‫ ﻳﻤﻨﺤﻚ إﻃﺎر اﻟﻌﻤﻞ ‪ .Net Framework‬ﺛﺮوة ھﺎﺋﻠﺔ ﻣﻦ اﻟﺨﻼﻳﺎ ‪ ،Classes‬ﺗﻘﺪ‬‫ّـﺔ ﺑﺎﻟﻮﻳﻨـﺪوز‪،‬‬ ‫ٍ ﻣﻦ اﻻﺣﺘﯿﺎج ﻻﺳﺘﺨﺪام دوال ‪ API‬اﻟﺨﺎﺻ‬ ‫ﻣﺎ ﺗﺤﻠﻢ ﺑﻪ وأﻛﺜﺮ‪ ،‬ﺑﺤﯿﺚ ﺗﺮﻳﺤﻚ ﺑﺪرﺟﺔ ﻛﺒﯿﺮة‬ ‫ﺑﻤﺎ ﻓﯿﮫﺎ ﻣﻦ ﺗﻌﻘﯿﺪ وﻣﺸﺎﻛﻞ‪ ..‬وأﺣـﺪث ﻣـﺎ ﻓﻌﻠﺘـﻪ )ﻣﯿﻜﺮوﺳـﻮﻓﺖ(‪ ،‬ھـﻮ إﺻـﺪار ﻧﺴـﺨﺔ ﺟﺪﻳـﺪة ﻣـﻦ‬ ‫ّﺔ ﺑﺎﻟﻜﺎﻣﻞ ﺑﺎﻟﺨﻼﻳﺎ‪.‬‬ ‫‪ DirectX‬ﻣﺒﻨﯿ‬ ‫ّـﺔ‬ ‫ّﺔ ‪ If Statements‬واﻟﺠﻤـﻞ اﻟﺘﻜﺮارﻳ‬ ‫ّﺮات داﺧﻞ ﻣﻘـﺎﻃﻊ اﻟﺠﻤـﻞ اﻟﺸـﺮﻃﯿ‬ ‫ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧﻚ ﺗﻌﺮﻳﻒ اﻟﻤﺘﻐﯿ‬‫ّﺮات اﻟﻤﻮﺟﻮدة ﺧﺎرج ھﺬه اﻟﻤﻘﺎﻃﻊ‪.‬‬ ‫‪ ،Loops‬ﺑﺤﯿﺚ ﺗﻜﻮن ﻣﻌﺰوﻟﺔ ﻋﻦ اﻟﻤﺘﻐﯿ‬ ‫ّ ﻧﻮع آﺧﺮ‪.‬‬ ‫ٍ ‪ Type‬داﺧﻞ أي‬ ‫ّ ﻧﻮع‬ ‫ ﺑﻞ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧﻚ ﺗﻌﺮﻳﻒ اﻟﺨﻼﻳﺎ داﺧﻞ اﻟﺨﻼﻳﺎ ‪ ،Nested Classes‬وأي‬‫ّﺬھﺎ‪.‬‬ ‫ّﻘﮫﺎ وﺗﻨﻔ‬ ‫ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧﻚ ﺗﻌﺮﻳﻒ اﻟﻮاﺟﮫﺎت ‪ Interfaces‬وﻛﺘﺎﺑﺔ اﻟﺨﻼﻳﺎ اﻟﺘﻲ ﺗﻄﺒ‬‫ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧـﻚ اﺳـﺘﺨﺪام اﻟﺴـﻤﺎت ‪ Attributes‬ﻓـﻲ ﺗﻌﺮﻳـﻒ اﻟﺨﻼﻳـﺎ واﻟﻮﺳـﺎﺋﻞ واﻟﺨﺼـﺎﺋﺺ واﻷﻧـﻮاع‬‫ّﺎ ﻳﺨﺘﺼﺮ ﻟﻚ اﻟﻜﺜﯿﺮ ﻣﻦ اﻟﻌﻤﻞ‪ ،‬وﻳﻤﻨﺤﻚ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻘﺪرات‪.‬‬ ‫اﻟﻤﺨﺘﻠﻔﺔ‪ ،‬ﻣﻤ‬ ‫ّـﺪات‪ ..‬وﻋﻠـﻰ‬ ‫ّـﺎت واﻟﻤﺠﻠ‬ ‫ّﺎت ﺟﺪﻳﺪة وﻋﺪﻳﺪة ﺗﻤﻨﺤﮫﺎ ﻟﻚ ﺧﻼﻳﺎ ﺟﺎھﺰة‪ ،‬ﻟﻠﺘﻌﺎﻣـﻞ ﻣـﻊ اﻟﻤﻠﻔ‬ ‫ ﻟﺪﻳﻚ إﻣﻜﺎﻧﯿ‬‫ّـﺪ اﻟـﺬي ﺗﺮﻳـﺪ‪ ،‬ﺑﺎﺳـﺘﺨﺪام اﻷداة‬ ‫ّـﺎت اﻟﻤﺠﻠ‬ ‫ّ ﺗﻐﯿﯿﺮ ﻳﻄﺮأ ﻋﻠﻰ ﻣﻠﻔ‬ ‫ﺳﺒﯿﻞ اﻟﻤﺜﺎل‪ ،‬ﻳﻤﻜﻨﻚ أن ﺗﺮاﻗﺐ أي‬ ‫ّ ﻧـﻮع‬ ‫ٍ‬ ‫ّن ﻛﺎﺋﻨﺎ أو ﻣﺼـﻔﻮﻓﺔ أو ﻣﺠﻤﻮﻋـﺔ ‪ Collection‬ﻣـﻦ أي‬ ‫‪ ،FileSystemWatcher‬ﻛﻤﺎ ﻳﻤﻜﻨﻚ أن ﺗﺨﺰ‬ ‫ّة واﺣﺪة‪ ،‬وإﻋﺎدة ﻗﺮاءﺗﮫﺎ ﺣﯿﻨﻤﺎ ﺗﺮﻳﺪ‪ ،‬ﺑﺎﺳﺘﺨﺪام ﺧﻼﻳﺎ اﻟﺴﻠﺴﻠﺔ ‪.Serialization‬‬ ‫ّ ﻣﺮ‬ ‫إﻟﻰ ﻣﻠﻒ‬ ‫ّﺎت ھﺎﺋﻠﺔ ﻓﻲ ﻣﺠـﺎل اﻟﺮﺳـﻢ واﻟﺘﻠـﻮﻳﻦ ﺗﻤﻨﺤﮫـﺎ ﻟـﻚ ﻣﻜﺘﺒـﺔ ‪ ..+GDI‬ﻳﻜﻔـﻲ أن ﺗﻌـﺮف أ ّ‬ ‫ن‬ ‫ ھﻨﺎك إﻣﻜﺎﻧﯿ‬‫ّﻌﺎت‬ ‫ّﺒــﺔ ﻣــﻦ ﻣﺠﻤﻮﻋــﺔ ﺧﻄــﻮط وﻣﻀ ـﻠ‬ ‫ّــﺪة‪ ،‬وﺗﻜــﻮﻳﻦ أﺷــﻜﺎل ﻣﺮﻛ‬ ‫ﺑﺈﻣﻜﺎﻧــﻚ اﻵن رﺳــﻢ ﻣﻨﺤﻨﯿــﺎت ﻣﻌﻘ‬ ‫ّﺟــﺔ‪ ،‬وﺗﺤﺪﻳــﺪ ﺷــﻜﻞ ﻣﺴــﺎﺣﺔ اﻟﺮﺳــﻢ‪ ،‬وﺗﺤﺪﻳــﺪ درﺟــﺔ‬ ‫ـﺎت‪ ،‬وﺗﻠــﻮﻳﻦ اﻟﺴــﻄﻮح ﺑ ـﺄﻟﻮان ﻣﺘﺪر‬ ‫وﻣﻨﺤﻨﯿـ‬ ‫اﻟﺸﻔﺎﻓﯿﺔ‪ ،‬وﺗﺪوﻳﺮ اﻟﺮﺳﻮم وﺗﻐﯿﯿﺮ ﻣﻘﺎﻳﯿﺴﮫﺎ ﺗﻜﺒﯿﺮا أو ﺗﺼﻐﯿﺮا‪ ....‬إﻟﺦ‪.‬‬ ‫ّﺮات ‪ Pointers‬ﻓﻲ ﺑﻌﺾ اﻷﺣﯿﺎن‪ ،‬ﻟﻠﻘﺮاءة واﻟﻜﺘﺎﺑﺔ ﻓﻲ اﻟﺬاﻛﺮة‪ ،‬ﻛﻤـﺎ ﻳﻤﻜﻨـﻚ‬ ‫ ﻳﻤﻜﻨﻚ اﺳﺘﺨﺪام اﻟﻤﺆﺷ‬‫ّﺪة ﻋﻠﻰ اﻟﻨﻈﺎم ‪ System‬ﻟﻢ ﺗﻜﻦ ﻟﺘﺤﻠﻢ ﺑﮫﺎ!‬ ‫ّﺎت ﻣﻌﻘ‬ ‫أداء ﻋﻤﻠﯿ‬ ‫ّ ﺑﺮﻧﺎﻣﺠﻚ‬ ‫ّﺎ ﻳﻌﻨﻲ أن‬ ‫ّﺔ ‪ ،Threads‬ﻣﻤ‬ ‫ّﺎت اﻟﻤﺴﺘﻘﻠ‬ ‫ أﺻﺒﺢ ﺑﺈﻣﻜﺎﻧﻚ ﺗﻘﺴﯿﻢ ﺑﺮﻧﺎﻣﺠﻚ ﻟﻤﺠﻤﻮﻋﺔ ﻣﻦ اﻟﻌﻤﻠﯿ‬‫ّﺔ ﻓﻲ ﻧﻔﺲ اﻟﻠﺤﻈﺔ ‪.Multithreading‬‬ ‫ﻳﺴﺘﻄﯿﻊ اﻟﻘﯿﺎم ﺑﺄﻛﺜﺮ ﻣﻦ ﻋﻤﻠﯿ‬ ‫ّﺎت ﺟﺪﻳﺪة راﺋﻌـﺔ ﻟﻠﺘﻌﺎﻣـﻞ ﻣـﻊ ﻗﻮاﻋـﺪ اﻟﺒﯿﺎﻧـﺎت‪ ،‬ﺗﻤﻨﺤﮫـﺎ ﻟـﻚ ﺗﻘﻨﯿـﺔ ‪ ،ADO.Net‬ﺑﺎﻹﺿـﺎﻓﺔ‬ ‫ ھﻨﺎك إﻣﻜﺎﻧﯿ‬‫ّ ﻗﺪر ﻣﻦ اﻟﻜﻮد‪.‬‬ ‫ّﺔ اﻟﺘﻲ ﺗﺴﺎﻋﺪك ﻓﻲ إﻧﺸﺎء ﺗﻄﺒﯿﻘﺎت ﻗﻮاﻋﺪ اﻟﺒﯿﺎﻧﺎت ﺑﺄﻗﻞ‬ ‫ﻟﻠﻌﺪﻳﺪ ﻣﻦ اﻷدوات اﻟﻤﺮﺋﯿ‬ ‫ّﻢ ﺑﮫﺎ اﻟﻨﻤﺎذج‬ ‫ّﺎ اﻟﺠﺪﻳﺪ ﺗﻤﺎﻣﺎ‪ ،‬ﻓﮫﻮ ﻗﺪرﺗﻚ ﻋﻠﻰ ﺗﺼﻤﯿﻢ ﺻﻔﺤﺎت اﻹﻧﺘﺮﻧﺖ ﺑﻨﻔﺲ اﻟﻄﺮﻳﻘﺔ اﻟﺘﻲ ﺗﺼﻤ‬ ‫ أﻣ‬‫ّﺎﺗﻪ‪ ،‬ﻹﻧﺸﺎء ﺗﻄﺒﯿﻘـﺎت ‪ ASP‬ﺗﻌﻤـﻞ ﻋﻠـﻰ اﻟﺨـﻮادم ‪Servers‬‬ ‫ّﺔ‪ ،‬ﻣﻊ ﻛﺘﺎﺑﺔ ﻛﻮد ‪ VB‬ﺑﻤﻌﻈﻢ إﻣﻜﺎﻧﯿ‬ ‫اﻟﻌﺎدﻳ‬ ‫ﺑﺪون ﻛﺘﺎﺑﺔ ﺣﺮف واﺣﺪ ﻣﻦ ﻟﻐﺔ ‪!!ASP‬‬ ‫واﻵن ﻋﺰﻳﺰي اﻟﺪارس ﺳﻨﺘﻄﺮق إﻟﻰ ﻣﻌﻈﻢ أﺳﺎﺳﯿﺎت اﻟﺒﺮﻣﺠـﺔ ﺑــ ‪ Net.VB‬وإن ﻛﻨـﺎ ﻓـﻲ اﻟﻮاﻗـﻊ ﻟـﻦ‬‫ﻧﺸﺮﺣﮫﺎ ﺟﻤﯿﻌﺎ ﺑﺎﻟﺘﻔﺼﯿﻞ ﻟﻀﯿﻖ وﻗﺖ اﻟﺪورة وﻟﻜﻨﻨﺎ ﺳﻨﻠﻘﻲ اﻟﻀﻮء ﻋﻠﻰ أھﻤﮫـﺎ ﻟﻜـﻲ ﺗﻜـﻮن ﻟـﺪﻳﻚ‬ ‫رؤﻳﺔ ﻋﺎﻣﺔ وإﻟﻤﺎم ﺑﺄﺳﺎﺳﯿﺎت اﻟﻠﻐﺔ‪ .‬ھﺬه اﻟﺪورة ﻛﻤﺎ ﺗﻌﻠﻢ ﺗﻘﺪم ﻟﻚ اﻷﺳﺎﺳﯿﺎت واﻟﻤﺒﺎدئ اﻟﺒﺮﻣﺠﯿﺔ‬ ‫وأﻧﺖ ﺑﺪورك ﻳﺠﺐ ﻋﻠﯿﻚ أن ﺗﻨﻮع وﺗﻜﺜﻒ ﻣﺼﺎدر اﻃﻼﻋﻚ وﻣﻤﺎرﺳﺘﻚ ﻟﮫﺎ إن ﻛﻨﺖ ﻣﮫﺘﻤـﺎ‪ .‬وﻗﺘـﺎ ﻣﻠﯿﺌـﺎ‬ ‫ﺑﺎﻟﻔﺎﺋﺪة واﻟﻤﺘﻌﺔ‪.‬‬ ‫ﺃﻧﻮﺍﻉ ﺍﻟﻤﺘﻐﻴﺮﺍﺕ ‪Variables‬‬ ‫ﺳﻨﻠﻘﻲ ھﻨﺎ ﺑﻌﺾ اﻟﻀﻮء ﻋﻠﻰ ﺟﻤﯿﻊ اﻟﻤﺘﻐﯿﺮات اﻟﺘﻲ ﺗﻮﻓﺮھﺎ ﻟﻨﺎ ال ‪VB.NET‬ﻣﻊ ﺷﺮح ﻣﺒﺴﻂ ﻟﻜﻞ ﻧﻮع ﻣﻦ‬‫ھﺬه اﻟﻤﺘﻐﯿﺮات وھﻲ ﻓﻲ اﻟﻮاﻗﻊ ﻻﺗﺨﺘﻠﻒ ﻋﻦ ﻣﻌﻈﻢ ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ اﻷﺧﺮى‪.‬‬ ‫ ‪ Boolean‬ﻳﺴﺘﺨﺪم ﻟﺘﻤﺜﯿﻞ اﻟﻘﯿﻤﺘﯿﻦ ‪ :‬ﺻﺤﯿﺤﺔ ‪ (True) ,‬ﺧﺎﻃﺌﺔ )‪(False‬‬‫ ‪ Date‬ﻳﻤﺜﻞ اﻟﺘﺎرﻳﺦ واﻟﻮﻗﺖ ) ﻳﻤﺜﻞ اﻟﺘﺎرﻳﺦ ﻣﻦ ‪ January 1, 0001‬اﻟﻰ‪( December 31, 9999‬‬‫ﻳﻤﺜﻞ ﻋﺪد ﺑﯿﻦ ‪ 0‬و ‪ ) 255‬ﻗﯿﻢ ﻣﻮﺟﺒﺔ ﻓﻘﻂ (‬ ‫ ‪Byte‬‬‫ ‪ Decimal‬ﻳﻤﺜﻞ اﻷرﻗﺎم اﻟﻌﺸﺮﻳﺔ ) ‪(-byte 16‬‬‫ ‪ Integer‬ﻳﻤﺜﻞ ﻋﺪد ﺻﺤﯿﺢ )‪(-byte4‬‬‫ﻳﻤﺜﻞ ﻋﺪد ﺻﺤﯿﺢ )‪(-byte 8‬‬ ‫ ‪Long‬‬‫ﻳﻤﺜﻞ ﻋﺪد ﺻﺤﯿﺢ )‪(-byte 2‬‬ ‫ ‪Short‬‬‫ ‪ Single‬ﻳﻤﺜﻞ ﻋﺪد ﻏﯿﺮ ﺻﺤﯿﺢ ﺑﺨﺎﻧﺔ واﺣﺪة ﺑﻌﺪ اﻟﻔﺎﺻﻠﺔ ‪.‬‬‫ ‪ Double‬ﻳﻤﺜﻞ ﻋﺪد ﻏﯿﺮ ﺻﺤﯿﺢ ‪.‬‬‫ﻳﻤﺜﻞ ﺣﺮف واﺣﺪ ﻓﻘﻂ ‪.‬‬ ‫ ‪Char‬‬‫ ‪ String‬ﻳﻤﺜﻞ ﻗﯿﻤﺔ ﺣﺮﻓﯿﺔ ﺗﺘﺴﻊ اﻟﻰ ‪ 2‬ﺑﻠﯿﻮن ﺣﺮف ‪.‬‬‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫إن اﻟﻤﺘﻐﯿﺮات ﻓﻲ ﺑﯿﺌﺔ اﻟﺪوت ﻧﺖ ﻟﯿﺴﺖ ﻣﺠﺮد أﺳﻤﺎء ﻟﺘﺨﺰﻳﻦ اﻟﻘﯿﻢ ﻓﺤﺴﺐ‪ ،‬ﺑﻞ ھﻲ ﻋﺒﺎرة ﻋﻦ ﻛﺎﺋﻨﺎت‬‫‪-objects‬ﺳﻨﺘﻌﺮف ﻋﻠﯿﮫﺎ ﺑﺸﻜﻞ أﺷﻤﻞ ﻓﻲ اﻟﺪرس اﻟﺮاﺑﻊ‪ -‬ﻟﻠﺘﺨﺰﻳﻦ وإﺟﺮاء اﻟﻌﻤﻠﯿﺎت ﻋﻠﻰ اﻟﻤﺘﻐﯿﺮات‪.‬‬ ‫وھﺬا ھﻮ ﻣﺎﻳﻤﯿﺰ ﺑﯿﺌﺔ اﻟﺪوت ﻧﺖ وﻟﻐﺘﻨﺎ ﺗﺤﺪﻳﺪا ﺣﯿﺚ أﻧﮫﺎ ﺗﻌﺘﻤﺪ ﻋﻠﻰ اﻟﺒﺮﻣﺠﺔ اﻟﺸﯿﺌﯿﺔ أو ﻣﺎﻳﺴﻤﻰ ﺑـ‬ ‫‪Object Oriented Programming‬وھﻲ ﻟﯿﺴﺖ ﻣﻮﺿﻮع ﺣﺪﻳﺜﻨﺎھﻨﺎ ﻓﺎﻟﺤﺪﻳﺚ ﻋﻦ اﻟﺒﺮﻣﺠﺔ اﻟﺸﯿﺌﯿﺔ ﻳﻄﻮل‬ ‫وﻳﺤﺘﺎج إﻟﻰ دورات ﻣﺴﺘﻘﻠﺔ ﻷﻧﮫﺎ ﻟﯿﺴﺖ ﺣﻜﺮا ﻋﻠﻰ ﻟﻐﺔ ﺑﻌﯿﻨﮫﺎ‪.‬‬ ‫*ﻣﻼﺣﻈﺔ‬ ‫إن ﻟﻐﺔ ال ‪ VB.NET‬ﻏﯿﺮ ﺣﺴﺎﺳﺔ ‪ Case-insensitive‬ﻣﻦ ﻧﺎﺣﯿﺔ اﻟﻜﺘﺎﺑﺔ ﺑﺎﻷﺣﺮف اﻟﻜﺒﯿﺮة أو اﻟﺼﻐﯿﺮة‪.‬‬ ‫ﻓﻤﺜﻼ ﻛﺘﺒﺖ ‪ INTEGER‬أم ‪ integer‬ﻓﻜﻼھﻤﺎ ﺳﻮاﺳﯿﺔ‪ ،‬ﺣﯿﺚ أن اﻟﻤﺤﺮر ﺳﯿﻘﻮم ﺑﺘﺤﻮﻳﻠﮫﺎ إﻟﻰ اﻟﺸﻜﻞ‬ ‫اﻟﻘﯿﺎﺳﻲ وھﻮ أن ﺗﺒﺪأ اﻟﻜﻠﻤﺔ ﺑﺤﺮف ﻛﺒﯿﺮ وﺑﻘﯿﺔ اﻟﺤﺮوف ﺗﻜﺘﺐ ﺻﻐﯿﺮة‪.‬‬ ‫ﻃﺮﻳﻘﺔ ﺗﻌﺮﻳﻒ اﻟﻤﺘﻐﯿﺮات‬ ‫اﻟﺸﻜﻞ اﻟﻌﺎم ﻟﺘﻌﺮﻳﻒ اﻟﻤﺘﻐﯿﺮات ﻓﻲ ‪ VB.Net‬ھﻮ‪:‬‬ ‫‪Dim MyVar As Type‬‬ ‫ﺣﯿﺚ ‪ MyVar‬ھﻮ اﺳﻢ اﻟﻤﺘﻐﯿﺮ ‪,‬وﻳﺘﻢ اﺧﺘﯿﺎره ﻣﻦ ﻗﺒﻞ اﻟﻤﺒﺮﻣﺞ‪ .‬أﻣﺎ ‪ Type‬ﻓﻌﻠﯿﻚ اﺧﺘﯿﺎر أﺣﺪ أﻧﻮاع اﻟﻤﺘﻐﯿﺮات‬ ‫اﻟﻤﺬﻛﻮرة أﻋﻼه ﺑﺤﺴﺐ ﺣﺎﺟﺘﻚ إﻟﯿﻪ ‪.‬‬ ‫ﻟﺰﻳﺎدة اﻟﺘﻮﺿﯿﺢ دﻋﻨﺎ ﻧﺄﺧﺬ اﻷﻣﺜﻠﺔ اﻟﺘﺎﻟﯿﺔ‪:‬‬ ‫‪Dim name As String‬‬ ‫‪-‬اﻻﺳﻢ ‪ name‬ھﻮ ﻋﺒﺎرة ﻋﻦ ﺳﻠﺴﻠﺔ ﺣﺮﻓﯿﺔ وﻟﺬﻟﻚ ﺗﻢ ﺗﻌﺮﻳﻔﻪ ﻛﻨﻮع‪String.‬‬ ‫‪Dim Age As Integer‬‬ ‫اﻟﻌﻤﺮ ‪ Age‬ھﻮ ﻋﺒﺎرة ﻋﻦ ﻋﺪد ﻻﺗﺘﺠﺎوز ﻋﺪد ﺧﺎﻧﺎﺗﻪ ﺛﻼث ﺧﺎﻧﺎت ﻋﻠﻰ أﻗﺼﻰ ﺗﻘﺪﻳﺮ‪ ،‬وﻟﺬﻟﻚ ﺗﻢ اﺧﺘﯿﺎر اﻟﻨﻮع‬‫‪Integer.‬‬ ‫‪Dim phone As Long‬‬ ‫اﻟﻤﺘﻐﯿﺮ ‪ phone‬ﻗﻤﺖ ﺑﺎﺧﺘﯿﺎره ﻟﺘﻤﺜﯿﻞ رﻗﻢ اﻟﮫﺎﺗﻒ‪ ،‬وﻛﻤﺎ ﺗﻌﻠﻤﻮن ﻓﺈن أرﻗﺎم اﻟﮫﺎﺗﻒ ﺗﺘﻜﻮن ﻏﺎﻟﺒﺎ ﻣﻦ ﻋﺪد‬‫ﻛﺒﯿﺮ ﻣﻦ اﻟﺨﺎﻧﺎت ﻻﻳﻘﻞ ﻓﻲ أﺿﯿﻖ اﻷﺣﻮال ﻋﻦ ﺳﺖ ﺧﺎﻧﺎت وﻟﺬﻟﻚ ﺗﻢ اﺧﺘﯿﺎر اﻟﻨﻮع ‪Long.‬‬ ‫ﺷﺮوط ﻛﺘﺎﺑﺔ اﻟﻤﺘﻐﯿﺮات‬ ‫أﻻ ﻳﻜﻮن اﻟﻤﺘﻐﯿﺮ ﻣﻦ اﻟﻜﻠﻤﺎت اﻟﻤﺤﺠﻮزة)اﻟﺘﻲ ﺗﻈﮫﺮ ﺑﺎﻟﻠﻮن اﻷزرق ﻓﻲ اﻟﻤﺤﺮر(‪.‬‬‫أﻻ ﻳﺰﻳﺪ ﻋﻦ ‪ 255‬ﺣﺮﻓﺎ‪.‬‬‫أﻻ ﻳﺘﺨﻠﻠﻪ ﻣﺴﺎﻓﺎت‪ ،‬وﻳﻤﻜﻦ اﺳﺘﺨﺪام رﻣﺰ اﻟﺸﺮﻃﺔ اﻟﺴﻔﻠﯿﺔ ) _ ( ﻋﻮﺿﺎ ﻋﻦ اﻟﻤﺴﺎﻓﺎت‪.‬‬‫أﻻ ﻳﺒﺪأ ﺑﺄرﻗﺎم‪،‬وﻟﻜﻦ ﻳﻤﻜﻦ أن ﺗﺘﺨﻠﻠﻪ أو أن ﻳﻨﺘﮫﻲ ﺑﺄرﻗﺎم‪.‬‬‫‪-‬أﻻ ﻳﺘﻢ ﺗﻌﺮﻳﻒ ﻣﺘﻐﯿﺮﻳﻦ ﺑﻨﻔﺲ اﻻﺳﻢ ﻓﻲ ﻧﻔﺲ اﻟﺘﻄﺒﯿﻖ‪.‬‬ ‫ﺑﺈﻣﻜﺎﻧﻚ ﻛﺘﺎﺑﺔ أﺳﻤﺎء اﻟﻤﺘﻐﯿﺮات ﺑﺎﻟﻠﻐﺔ اﻟﻌﺮﺑﯿﺔ! وﺳﯿﺘﻢ اﻟﺘﻌﺮف ﻋﻠﯿﮫﺎ واﻟﺘﻌﺎﻣﻞ ﻣﻌﮫﺎ‪.‬‬ ‫ﻟﻜﻦ ﻻأﻧﺼﺤﻚ ﺑﺬﻟﻚ ﺗﺠﻨﺒﺎ ﻟﻠﻤﺸﺎﻛﻞ اﻟﺘﻲ ﻗﺪ ﺗﺤﺪث ﻣﻊ ﺑﻌﺾ أﻧﻈﻤﺔ اﻟﺘﺸﻐﯿﻞ‪.‬‬ ‫*ﻣﻼﺣﻈﺔ__‪:‬‬ ‫اﻟﺜﻮاﺑﺖ ‪Constants‬‬ ‫اﻟﺸﻜﻞ اﻟﻌﺎم ﻟﻜﺘﺎﺑﺔ اﻟﺜﺎﺑﺖ ھﻮ‪:‬‬ ‫‪Const name As datatype = value‬‬ ‫ﺣﯿﺚ ‪ Const‬ھﻲ ﻛﻠﻤﺔ ﻣﺤﺠﻮزة ﻟﻠﻐﺔ ‪ VB.Net‬و ‪ name‬ھﻮ اﺳﻢ اﻟﺜﺎﺑﺖ‪-‬اﺧﺘﯿﺎري‪ -‬و ‪ datatype‬ھﻮ ﻧﻮع‬ ‫اﻟﺜﺎﺑﺖ وﺑﺈﻣﻜﺎﻧﻚ ﺗﺤﺪﻳﺪه ﻣﻦ " أﻧﻮاع اﻟﻤﺘﻐﯿﺮات" اﻟﻤﺬﻛﻮرة أﻋﻼه‪ .‬أﻣﺎ ‪ value‬ﻓﮫﻲ ﻗﯿﻤﺔ اﻟﺜﺎﺑﺖ وﻋﻠﯿﻚ‬ ‫ﺗﺤﺪﻳﺪھﺎ‪.‬‬ ‫ﻟﻨﺄﺧﺬ اﻟﻤﺜﺎل اﻟﻤﺒﺴﻂ اﻵﺗﻲ‪:‬‬ ‫‪Const pi As Single = 3.14159265358979‬‬ ‫اﺳﻢ اﻟﺜﺎﺑﺖ ھﻮ ‪ pi‬وھﻲ ﻗﯿﻤﺔ ﻣﻌﺮوﻓﺔ وﺛﺎﺑﺘﺔ ﻋﺎﻟﻤﯿﺎ أﻣﺎ ﻧﻮﻋﮫﺎ ﻓﮫﻮ ‪ Single‬وﻗﯿﻤﺘﮫﺎ ﻣﻜﺘﻮﺑﺔ أﻋﻼه ‪.‬‬ ‫أﻋﺘﻘﺪ ﺑﺄﻧﻚ ﻓﺎﺋﺪة اﻟﺜﻮاﺑﺖ ﻻﺗﺨﻔﻰ ﻋﻠﯿﻚ ﻋﺰﻳﺰي اﻟﻤﺒﺮﻣﺞ‪ ،‬وإن ﻛﻨﺖ ﻻﺗﻌﺮف ﻓﺎﺋﺪﺗﮫﺎ ﻓﺄﻳﮫﻤﺎ أﺳﮫﻞ ﺑﺮأﻳﻚ‪ :‬أن‬ ‫ﺗﺴﻨﺪ اﻟﺮﻗﻢ اﻟﻄﻮﻳﻞ اﻟﻤﺬﻛﻮر أﻋﻼه ﻋﻠﻰ ﺳﺒﯿﻞ اﻟﻤﺜﺎل إﻟﻰ ﺛﺎﺑﺖ اﺳﻤﻪ ‪pi‬وﻣﻦ ﺛﻢ اﺳﺘﺪﻋﺎؤه ﻓﻲ‬ ‫ﺑﺮﻧﺎﻣﺠﻚ أم ﻛﺘﺎﺑﺔ ھﺬا اﻟﺮﻗﻢ اﻟﻤﺨﯿﻒ! ﻓﻲ ﻛﻞ ﻣﺮة ﺗﺤﺘﺎج إﻟﻰ ﻛﺘﺎﺑﺘﻪ؟ أﻋﺘﻘﺪ ﺑﺄن اﻹﺟﺎﺑﺔ ﺑﺎﺗﺖ واﺿﺤﺔ‪.‬‬ ‫ﺑﺮﻏﻢ أن ھﺬه اﻟﺪروس ﻣﺨﺼﺼﺔ ﻟﻠﻐﺔ ‪ VB.Net‬ﻓﻘﻂ إﻻ أن ھﺬا ﻻﻳﻤﻨﻊ ﻣﻦ إﺿﺎﻓﺔ اﻟﻘﻠﯿﻞ ﻣﻦ اﻷﺳﺎﺳﯿﺎت‬ ‫واﻟﺘﻠﻤﯿﺤﺎت اﻟﺒﺮﻣﺠﯿﺔ اﻟﻌﺎﻣﺔ ﻗﺪر اﻹﻣﻜﺎن وﺑﻘﺪر ﻣﺎﺗﺴﺘﺪﻋﯿﻪ اﻟﺤﺎﺟﺔ إﻟﻰ ذﻟﻚ ‪.‬‬ ‫ﺍﻟﻤﺼﻔﻮﻓﺎﺕ ‪Arrays‬‬ ‫اﻟﺸﻜﻞ اﻟﻌﺎم ﻟﺘﻌﺮﻳﻒ اﻟﻤﺼﻔﻮﻓﺔ‪:‬‬ ‫‪Dim Array (number) As DataType‬‬ ‫‪Array‬ھﻮ اﺳﻢ اﻟﻤﺼﻔﻮﻓﺔ وﺗﻀﻌﻪ ﻛﻤﺎ ﺗﺸﺎء ‪, number‬ھﻮ ﻋﺪد ﻋﻨﺎﺻﺮ اﻟﻤﺼﻔﻮﻓﺔ وﻋﻠﯿﻚ ﺗﺤﺪﻳﺪه ﺑﺮﻗﻢ‬ ‫ﺻﺤﯿﺢ أﻣﺎ ‪ DataType‬ﻓﮫﻮ ﻧﻮع ﻋﻨﺎﺻﺮ اﻟﻤﺼﻔﻮﻓﺔ وﺑﺈﻣﻜﺎﻧﻚ ﺗﺤﺪﻳﺪه ﻣﻦ ﻗﺎﺋﻤﺔ أﻧﻮاع اﻟﻤﺘﻐﯿﺮات اﻟﻤﺬﻛﻮرة‬ ‫ﺳﺎﺑﻘﺎ ﻓﻲ ھﺬا اﻟﺪرس‪.‬‬ ‫ﻣﺜﺎل‪:‬‬ ‫‪Dim StudentsNames (20) As String‬‬ ‫ّف ﻣﺼﻔﻮﻓﺔ اﺳﻤﮫﺎ ‪ StudentsNames‬أﺳﻤﺎء اﻟﻄﻼب وﻋﺪد ﻋﻨﺎﺻﺮھﺎ ‪ 20‬ﻣﻦ ﻧﻮع ﺳﻠﺴﻠﺔ ﺣﺮﻓﯿﺔ‬ ‫أي ﻋﺮ‬ ‫‪String.‬‬ ‫ﻟﺘﻌﺒﺌﺔ ﻋﻨﺎﺻﺮ اﻟﻤﺼﻔﻮﻓﺔ دﻋﻨﺎ ﻧﻘﻮم ﺑﺎﻟﺘﻄﺒﯿﻖ ﻋﻠﻰ اﻟﻤﺼﻔﻮﻓﺔ ‪StudentsNames‬اﻟﻤﻌﺮﻓﺔ أﻋﻼه‪:‬‬ ‫"‪StudentsNames(1)=" Ahmed‬‬ ‫أي اﺟﻌﻞ ﻗﯿﻤﺔ اﻟﻌﻨﺼﺮ رﻗﻢ ‪ 1‬ﻓﻲ اﻟﻤﺼﻔﻮﻓﺔ ﺗﺴﺎوي ‪ Ahmed‬وھﻜﺬا ﻣﻊ ﺑﺎﻗﻲ ﻋﻨﺎﺻﺮ اﻟﻤﺼﻔﻮﻓﺔ‪.‬‬ ‫ﺍﻟﻌﻤﻠﻴﺎﺕ ﺍﻟﺤﺴﺎﺑﻴﺔ ﻋﻠﻰ ﺍﻷﺭﻗﺎﻡ‪Operators‬‬ ‫ﻳﻨﺒﻐﻲ أن ﺗﻜﻮن ﻣﻠﻤﺎ ﺑﺎﻟﻌﻤﻠﯿﺎت اﻟﺤﺴﺎﺑﯿﺔ ﻛﺈﻟﻤﺎﻣﻚ ﺑﺎﻟﻤﺘﻐﯿﺮات‪ .‬ﻓﻘﺪ ﺗﺤﺘﺎج إﻟﯿﮫﺎ ﻓﻲ أي وﻗﺖ‪ .‬وھﻲ ﻓﻲ‬ ‫اﻟﻮاﻗﻊ ﻣﻦ أﺳﺎﺳﯿﺎت اﻟﺒﺮﻣﺠﺔ وﻻﺗﺨﺘﻠﻒ أﻳﻀﺎ ﻋﻦ ﻣﺜﯿﻼﺗﮫﺎ ﻓﻲ أﻳﺔ ﻟﻐﺔ ﺑﺮﻣﺠﯿﺔ أﺧﺮى‪.‬‬ ‫اﻟﺠﻤﻊ‪.‬‬ ‫اﻟﻄﺮح‪.‬‬ ‫اﻟﻀﺮب‪.‬‬ ‫ّﺔ‪ ..‬ﻓﻤﺜﻼ‪:‬‬ ‫اﻟﻘﺴﻤﺔ‪ ..‬وﻳﻤﻜﻦ أن ﻳﻜﻮن اﻟﻨﺎﺗﺞ ﻋﺪدا ﺻﺤﯿﺤﺎ أو ﺑﻪ أرﻗﺎم ﻋﺸﺮﻳ‬ ‫‪X=7/2‬‬ ‫‪.‬ﺳﺘﻌﻄﻲ اﻟﻨﺎﺗﺞ ‪3.5‬‬ ‫ّ اﻟﻨﺎﺗﺞ ھﻮ اﻟﻌﺪد اﻟﺼﺤﯿﺢ ﻓﻘﻂ‪ ..‬ﻓﻤﺜﻼ‪:‬‬ ‫ﻋﻼﻣﺔ اﻟﻘﺴﻤﺔ أﻳﻀﺎ‪ ،‬وﻟﻜﻦ‬ ‫‪X =7\2‬‬ ‫ﺳﺘﻌﻄﻲ اﻟﻨﺎﺗﺞ ‪.3‬‬ ‫ـﻤﺔ‬ ‫ـﻲ اﻟﻘﺴـ‬ ‫ـﯿﻦ ﻋﻼﻣﺘـ‬ ‫ـﻚ ﺑـ‬ ‫ـﺌﺖ أﻻ ﺗﺮﺗﺒـ‬ ‫ـﻮ ﺷـ‬ ‫ـﺔ ‪ ،Int‬ﻟـ‬ ‫ـﺘﺨﺪام اﻟﺪاﻟـ‬ ‫ـﺔ ﺑﺎﺳـ‬ ‫ّـ‬ ‫ـﺲ اﻟﻌﻤﻠﯿ‬ ‫ـﻦ أداء ﻧﻔـ‬ ‫وﻳﻤﻜـ‬ ‫اﻟﻤﺘﺸﺎﺑﮫﺘﯿﻦ‪ ،‬وذﻟﻚ ﻛﺎﻟﺘﺎﻟﻲ‪:‬‬ ‫)‪X = Int (7/2‬‬ ‫ّﮫﺎ ﺗﻌﻄﻲ اﻟﺒﺎﻗﻲ ﻣﻦ اﻟﻘﺴﻤﺔ ﻓﺤﺴﺐ‪ ..‬ﻓﻤﺜﻼ‪:‬‬ ‫إﺣﺪى ﻋﻼﻣﺎت اﻟﻘﺴﻤﺔ أﻳﻀﺎ‪ ،‬وﻟﻜﻨ‬ ‫‪X = 7 Mod 2‬‬ ‫ﺳﯿﻌﻄﻲ اﻟﻨﺎﺗﺞ ‪ ،1‬اﻟﺬي ھﻮ ﻋﺒﺎرة ﻋﻦ ﺑﺎﻗﻲ اﻟﻘﺴﻤﺔ‪.‬‬ ‫ّﺎ ﺑﺎﻟﺼﯿﻐﺔ ‪ ،3 2‬وﺗﻜﺘﺐ ﻓﻲ اﻟﺒﺮﻣﺠﺔ ﻛﺎﻟﺘﺎﻟﻲ‪:‬‬ ‫ُﻜﺘﺐ رﻳﺎﺿﯿ‬ ‫ّ‪ ..‬ﻓﻤﺜﻼ ‪ 2 × 2 × 2‬ﺗ‬ ‫اﻷس‬ ‫‪2^3‬‬ ‫ّﺔ‬ ‫ّـﻰ ﺗﻀـﻤﻦ ﺻـﺤ‬ ‫ّﺎت اﻟﻤﺘﺪاﺧﻠﺔ‪ ،‬وذﻟﻚ ﺣﺘ‬ ‫ّﺔ وﺿﻊ اﻷﻗﻮاس ﻓﻲ اﻟﻌﻤﻠﯿ‬ ‫ّﯿ‬ ‫وﻳﺠﺐ أن أﻟﻔﺖ اﻧﺘﺒﺎھﻚ إﻟﻰ أھﻤ‬ ‫ّﺔ ﺑﺎﻟﺘﺮﺗﯿﺐ اﻟﺬي ﺗﺮﻳﺪھﺎ ﺑﻪ‪ .‬ﺣﯿﺚ‪:‬‬ ‫إﺟﺮاء اﻟﻌﻤﻠﯿ‬ ‫ّ ﺗﻨﻔﯿﺬ ﻣﺎ ﺑﯿﻦ اﻷﻗﻮاس أوﻻ‪.‬‬ ‫‪ -1‬ﻳﺘﻢ‬ ‫ّ ﺗﻨﻔﯿﺬ اﻷﺳﺲ أوﻻ‪.‬‬ ‫‪ -2‬إذا ﻟﻢ ﺗﻜﻦ ھﻨﺎك أﻗﻮاس ﻳﺘﻢ‬ ‫ّ ﺗﻨﻔﯿﺬ اﻟﻀﺮب واﻟﻘﺴﻤﺔ‪.‬‬ ‫ّ ﻳﺘﻢ‬ ‫‪ -3‬ﺛﻢ‬ ‫ّ ﺗﻨﻔﯿﺬ اﻟﺠﻤﻊ واﻟﻄﺮح‪.‬‬ ‫ّ ﺑﻌﺪ ذﻟﻚ ﻳﺘﻢ‬ ‫‪ -4‬ﺛﻢ‬ ‫‪Mod‬‬ ‫\‬ ‫ﻋﻼﻣﺔ‬ ‫ﻋﻼﻣﺔ‬ ‫ﻋﻼﻣﺔ‬ ‫ﻋﻼﻣﺔ‬ ‫‪+‬‬ ‫‬‫*‬ ‫‪/‬‬ ‫^‬ ‫ّﺮ ﺑﻤﻘﺪار ‪ 1‬ﻣﺜﻼ؟‬ ‫ّ‪ ..‬ﻣﺎذا ﻟﻮ أردت أن ﻧﺰﻳﺪ ﻗﯿﻤﺔ ﻣﺘﻐﯿ‬ ‫ٌ ھﺎم‬ ‫ﺑﻘﻲ ﺷﻲء‬ ‫ﻓﻲ ھﺬه اﻟﺤﺎﻟﺔ ﺳﻨﻘﻮم ﺑﺎﻟﺘﺎﻟﻲ‪:‬‬ ‫‪X=5‬‬ ‫‪Y=X+1‬‬ ‫‪X=Y‬‬ ‫ّﺮ ﺗﺴﺎوي ‪6‬‬ ‫ﺻﺎرت ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿ‬ ‫ّ ﻧﻘﻠﻨﺎ ﻗﯿﻤﺘـﻪ‬ ‫ّ ﻣﻊ اﻟﻮاﺣﺪ‪ ،‬ﺛﻢ‬ ‫ّﺮ اﻷﺻﻠﻲ‬ ‫ّﺮ وﺳﯿﻂ‪ ،‬ﺟﻌﻠﻨﺎ ﻗﯿﻤﺘﻪ ھﻲ ﻧﺎﺗﺞ ﺟﻤﻊ اﻟﻤﺘﻐﯿ‬ ‫ﺣﯿﺚ اﻋﺘﻤﺪﻧﺎ ﻋﻠﻰ ﻣﺘﻐﯿ‬ ‫ّﺮ اﻷﺻﻠﻲ‪.‬‬ ‫إﻟﻰ اﻟﻤﺘﻐﯿ‬ ‫ّـﺮات أو إﻧﻘﺎﺻـﮫﺎ‪ ،‬أو‬ ‫ّر ﻣﺮارا ﻓﻲ اﻟﺒﺮﻣﺠﺔ‪ ،‬ﺣﯿﺚ ﺗﺤﺘﺎج ﻣـﺮارا ﻟﺰﻳـﺎدة ﻗـﯿﻢ اﻟﻤﺘﻐﯿ‬ ‫ّﺔ ﺗﺘﻜﺮ‬ ‫ّ ﻣﺜﻞ ھﺬه اﻟﻌﻤﻠﯿ‬ ‫وﻟﻜﻦ‬ ‫ﺿﺮﺑﮫﺎ ﻓﻲ رﻗﻢ‪ ...‬إﻟﺦ‪.‬‬ ‫ُﻄﺎق!‬ ‫ّة‪ ،‬ﻟﺼﺎرت اﻟﺒﺮﻣﺠﺔ ﺟﺤﯿﻤﺎ ﻻ ﻳ‬ ‫ّ ﻣﺮ‬ ‫ﻓﻠﻮ ﻛﺎن ﻋﻠﻰ اﻟﻤﺒﺮﻣﺞ أن ﻳﻜﺘﺐ ھﺬه اﻟﺨﻄﻮات ﻓﻲ ﻛﻞ‬ ‫ً ﻛﺎﻟﺘﺎﻟﻲ‪:‬‬ ‫ّﺔ ﻓﻲ ﺳﻄﺮ واﺣﺪ ﻣﺒﺎﺷﺮة‬ ‫ﻻ ﺗﻘﻠﻖ‪ ..‬ﻳﻤﻜﻨﻚ أداء ھﺬه اﻟﻌﻤﻠﯿ‬ ‫‪X=X+1‬‬ ‫ﺔ ﺳﺘﺒﺪو ﻟﻚ اﻟﺼﯿﻐﺔ ﻏﺮﻳﺒﺔ‪ ،‬وﻟﻜـﻦ ﺣـﺎول أن ﺗﻘﺮأھـﺎ ﻛﺎﻟﺘـﺎﻟﻲ‪ :‬ﻗﯿﻤـﺔ ‪ X‬اﻟﺠﺪﻳـﺪة ﺗﺴـﺎوي ﻗﯿﻤﺘـﻪ‬ ‫ّل وھﻠ ٍ‬ ‫ﻷو‬ ‫اﻟﻘﺪﻳﻤﺔ ‪.1 +‬‬ ‫وﺑﺈﻣﻜﺎﻧﻚ ﺟﻤﻊ أي رﻗﻢ ﺗﺮﻳﺪ ﻛﺎﻟﺘﺎﻟﻲ‪:‬‬ ‫‪X = X + 15‬‬ ‫‪X=X+Y‬‬ ‫ّﺔ‪:‬‬ ‫ّﺎت اﻟﺤﺴﺎﺑﯿ‬ ‫ّ إﻟﻰ ﺑﺎﻗﻲ اﻟﻌﻤﻠﯿ‬ ‫وﻻ ﻳﻘﺘﺼﺮ اﻷﻣﺮ ﻋﻠﻰ اﻟﺠﻤﻊ ﻓﺤﺴﺐ‪ ،‬ﺑﻞ ﻳﻤﺘﺪ‬ ‫ّﺮ ﺑﻤﻘﺪار ‪X = X – 4 ' 4‬‬ ‫إﻧﻘﺎص اﻟﻤﺘﻐﯿ‬ ‫ّﺮ ﻓﻲ ‪X = X * 2 ' 2‬‬ ‫ﺿﺮب اﻟﻤﺘﻐﯿ‬ ‫ّﺮ ﻋﻠﻰ ‪X = X / 9 ' 9‬‬ ‫ﻗﺴﻤﺔ اﻟﻤﺘﻐﯿ‬ ‫ّﺮ ﻟﻸس ‪X = X ^ 3 ' 3‬‬ ‫رﻓﻊ اﻟﻤﺘﻐﯿ‬ ‫ﺗﺘﻮاﻓﺮ ﻓﻲ اﻟﻔﯿﺠﻮال ﺑﯿ