![]() |
|
Vb 2008 على الأبواب ، فهل تعرف ماذا حمل لك Vb 2005 - - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184) +--- الموضوع : Vb 2008 على الأبواب ، فهل تعرف ماذا حمل لك Vb 2005 - (/showthread.php?tid=4745) |
Vb 2008 على الأبواب ، فهل تعرف ماذا حمل لك Vb 2005 - - RaggiTech - 01-10-12 كاتب الموضوع : النبهاني
VB 2008 على الأبواب ، فهل تعرف ماذا حمل لك VB 2005 ؟ سؤال وجيه أليس كذلك ![]() [b]من خلال احتكاكي بالكثير من مبرمجي VB.NET العرب ، لاحظت أن العديد منهم لا يعلم ما الفرق بين الاصدار 7.1 ( 2003 ) و الاصدار الثامن ( 2005 ) من VB.NET وما التحسينات الموجودة في الاصدار الاحدث بالرغم من أننا نستعد لاستقبال الاصدار الثامن 2008 ! ولاحظت ان الكثير من المبرمجين الذين ينتقلون إلى اصدارات احدث ، فإن استفادتهم من تلك الاصدارات لا تعدوا استخدام الكائنات والفئات الجديدة ( فضاء الاسماء My مثلا ) وكذلك الأدوات الجديدة ( DataGridView ) والاخرى التي طرأت عليها تطويرات وكذلك التطويرات التي دخلت على بيئة التطوير Visual Studio ( اقصد الـ IDE الخاصة به طبعا ) لكن قلة من يعرفون التغييرات التي طرأت على اللغة نفسها ! لذلك أردت أن أشد الانتباه إلى هذه النقطة خصوصا أن الحديث عن الاصدار القادم بدأ يكثر في هذه الأيام بينما لدينا الأغلبية لا يعرفون ماذا تطور في VB.NET في الاصدار 2005 ! هنا سأذكر ثلاثة فقط من هذه التطويرات والباقي عليكم . الكلمة المحجوزة Global اذا قمت بعمل namespace خاص بك ، ووضعت بداخله namespace آخر جديد لكن له اسم موجود لـ namespace آخر بمشروعك هنا تبرز اهميه الكلمة المحجوزة global ، دعني اوضحها بالكود التالي : [/b] كود : Namespace SpecialSpaceطيب والحل ؟ الكلمة المحجوزة Global تعطيك امكانيه تحديد مصدر ذلك الـجزء ( method,function,type … etc ) وذلك بان تكتب الكلمة Global قبل فضاء الاسماء الذي تكرر اسمه لتخبر بها مترجم VB.Net 2005 بأنك تقصد فضاء الأسماء system الأصلي وليس الذي عرفته أنت بنفسك قبل قليل ، الكود التالي مثال لهذه العملية : [/b] كود : Namespace SpecialSpaceان كنت مبرمج C# أو لك معرفه بها فلا تظن انني اقصد كلمة محجوزة موجودة في لغة C# وهي using والتي هي مكافيء imports في vb.net ، انما أقصد تفرع جديد ظهر في 2005 وهو يقوم بعمليه مهمه في تحسين كفاءه تنفيذ البرنامج ، هذه العملية هي تحرير مصادر النظام ! حسنا ، دعنا نتحدث قليلا في هذا الجانب ، في العادة عندما تقوم بتعريف أي كائن من أي نوع فغنه يشغل حيزا من الذاكرة ومن مصادر النظام ، ولن يتم تحرير هذا الحيز الا بعد ان تتكرم المجموعة GrabageCollection بالقيام بذلك آليا ، يمكنك كمبرمج مهتم بتحرير مصادر الذاكرة والنظام ( خصوصا في التطبيقات الكبيرة ) بالقيام بذلك يدويا بإستدعاء الطريقة Dispose شرط ان يكون الكائن يتبع الواجهة IDisposable ، وبالعودة إلى صلب موضوعنا ، فإن التفرع Using يستخدم لاستدعاء الطريقة Dispose للكائن المستخدم والمصرح عنه في بداية التفرع كالكود التالي : [/b] كود : Public Sub setbigbold(ByVal c As Control)وبرأيي الشخصي فإن هذا التفرع مهم خصوصا عندما نقوم بالتعامل مع كائنات تشغل حيزا كبيرة من مصادر النظام ونريد التعامل معها بشكل مؤقت فقط ونهتم بتحرير مصادرها بعد الاستفاده منها دون ان ننسى ان نستخدم الاجراء Dispose كحالة استخدام Dataset نقوم بتعبئته بعدد ضخم من السجلات لعمل اجراء معين عليها ومن ثم العودة بقمية محدده بعدها . الكلمة المحجوزة Continue وتستخدم مع الحلقات التكرارية من نوع Do,For,While حيث تخيرك في تكمله الحلقه أو اعادتها من جديد حسب شرط معين ، لاحظ الكود التالي : [/b] كود : Public Class EntryPointبالرغم من هذه الفائدة لهذه الكلمة المحجوزة إلا أنه بالإمكان الاستغناء عنها بإستخدام جمل الشرط IF… Else… End IF . مصادر المعلومات في هذا الموضوع هي : كتاب Accelerated VB 2005 ومكتبة MSDN التي تشرح وتفصل وتجد فيها كل شيء طبعا ![]() الموضوع عباره عن تدوينة في مدونتي . تحياتي Vb 2008 على الأبواب ، فهل تعرف ماذا حمل لك Vb 2005 - - RaggiTech - 01-10-12 اقتباس: [TABLE="width: 100%"] [TR] [TD="class: alt2"]المشاركة الأساسية كتبها !!! BoriS !!! لا تستدعى او تستخدم المجموعة Garbage Collection الا مع المتغيرات Reference type فقط اى انها لن تستخدم مثلا مع متغير من نوع Int23 لانها تفرغ من الذاكرة بدون تدخل من gc لوجودها داخل Stack وليس Managed heap. [/TD] [/TR] [/TABLE] شكرا لك على التصحيح اخي بوريس .. جزاك الله خيرا وكذلك مشرفنا بدرميديا |