إذا أردت أن تصعد مبنى أو ناطحة سحاب فلا تستخدم المصعد الكهربائى
يتعجب البعض ويتسائل !! وكيف أصعد ناطحة السحاب إذن؟!!
أقول له تصعد على قدميك باستخدام السلم ولا تحاول أن تقفز , بل يجب عليك أن تصعد درجات السلم درجة درجة بهدوء وتأنى
ما معنى هذا الكلام
معناه أنك من خلال تحديد هدفك فى النصحية الأولى تستطيع اختيار اللغة التى سوف تتعلمها لتحقق بها هدفك
ولكن قبل أن تبدأ يجب عليك أن تعلم جيدا أن مشوارك طويل يجب عليك أن تبدأ من الصفر ولا تتسرع ولا تتجاهل أشياء على حساب أشياء أخرى
فإذا أردت أن تبنى بناء صلبا متينا لا تؤثر فيه الرياح يجب عليك أن تهتم بالأساس والأعمدة التى سيقام عليها البناء
وهنا سؤال يطرح نفسه دائما
كيف أفرق بين لغات البرمجة وكيف أحدد اي منها أفضل أو بعبارة أخرى أى منها أقوى او بعبارة أصح أى منها يحقق الهدف
هذا ما سنستعرضه فى المشاركات القادمة
يتعجب البعض ويتسائل !! وكيف أصعد ناطحة السحاب إذن؟!!
أقول له تصعد على قدميك باستخدام السلم ولا تحاول أن تقفز , بل يجب عليك أن تصعد درجات السلم درجة درجة بهدوء وتأنى
ما معنى هذا الكلام
معناه أنك من خلال تحديد هدفك فى النصحية الأولى تستطيع اختيار اللغة التى سوف تتعلمها لتحقق بها هدفك
ولكن قبل أن تبدأ يجب عليك أن تعلم جيدا أن مشوارك طويل يجب عليك أن تبدأ من الصفر ولا تتسرع ولا تتجاهل أشياء على حساب أشياء أخرى
فإذا أردت أن تبنى بناء صلبا متينا لا تؤثر فيه الرياح يجب عليك أن تهتم بالأساس والأعمدة التى سيقام عليها البناء
وهنا سؤال يطرح نفسه دائما
كيف أفرق بين لغات البرمجة وكيف أحدد اي منها أفضل أو بعبارة أخرى أى منها أقوى او بعبارة أصح أى منها يحقق الهدف
هذا ما سنستعرضه فى المشاركات القادمة
1⃣
Visual Basic 6
Visual Basic اداة قوية وفعالة لتطوير تطبيقات متوافقة مع بيئة Windows. يوفر لك بيئة تطوير متكاملة سهلة الاستخدام لانشاء الحلول سواء كانت شخصية او تجارية في وقت قياسي عن طريق فلسفة البرمجة المرئية. حيث تصمم الشاشات ونوافذ برنامجك عن طريق نقرات وتحريكات خفيفة بالفأرة كأنك ترسم مربعات ودوائر باستخدام برامج رسم وغيرها.
Visual Basic اداة قوية وفعالة لتطوير تطبيقات متوافقة مع بيئة Windows. يوفر لك بيئة تطوير متكاملة سهلة الاستخدام لانشاء الحلول سواء كانت شخصية او تجارية في وقت قياسي عن طريق فلسفة البرمجة المرئية. حيث تصمم الشاشات ونوافذ برنامجك عن طريق نقرات وتحريكات خفيفة بالفأرة كأنك ترسم مربعات ودوائر باستخدام برامج رسم وغيرها.
البيزيك المرئى
هى بيئة تطوير و لغة برمجة من مايكروسوفت تستند إلى لغة البيسك الشهيرة. و هى تصنف ضمن لغات البرمجة الشيئية. منذ أن بدأت مايكروسوفت في اصدار الفيجوال بيسك و هى تلاقى نجاحا باهرا و شعبية لا بأس بها بين المبرمجين نظرا لسهولتها الشديدة في مقابل التعقيد الشديد الذى يواجهه أى مبرمج يسعى لبرمجة ويندوز باستخدام السى أو السى++. الا أن الفيجوال بيسك ربما تكون هى من أسؤ اللغات التى تكتب عليها برامج الويندوز الآن طبعا بعد الجافا.عموما تناسب الفيجوال بيسك تطبيقات قواعد بيانات و التطبيقات المخصصة للشركات الصغيرة و برامج الحسابات و هى مريحة و سهلة و تؤدى الغرض بالاضافة إلى أنها تسمح للمبرمج بالتركيز على حل المشكلة فغالبا ما لا يواجه صعوبات فنية أثناء كتابة برنامج بالفيجوال بيسك. و لكن بقى أن نذكر أن برامج الفيجوال بيسك لا تتم ترجمتها كاملة إلى لغة الألة مثل السى++ أو الدلفى و انما تترجم إلى كود وسطى يتصل مع مكتبة ربط تسمى ب"Run Time library" و اسمها MSVBMnn.dllمع ملاحظة أن حرفى ال"ان" يشيران إلى رقم الاصدارة.
لغة البرمجة فيجوال بيسك هي لغة ذات تصميم مرئي واجهة رسومية بعكس بعض اللغات مثل الاسمبلي ذات الشاشة السوداء . حيث تحتوي هذه اللغة على العديد من الاوامر بداخلها ولغة سهلة التطبيق تم تطوير هذه النسخة من البرنامج عن النسخة القديمةbasic و التي تعمل تحت بيئة Dos إلى هذه النسخة التي تعمل تحت بيئة ويندوز . تعتمد اللغة في تطوير تطبيقاتها على الكائنات فهي تشبه العديد من لغات البرمجة الحديثة من حيث اعتمادها على الديناميكية و الاحداث. تعني الديناميكية في هذه اللغة القدرة على استدعاء اي اقتران او اجراء اعتمادا على الحدث. الحدث هو اي عملية يقوم بها مستخدم التطبيق على التطبيق مثل الضغط بزر الفارة او الضغط على أحد ازرار لوحة المفاتيح او حتى تحميل نموذج
هى بيئة تطوير و لغة برمجة من مايكروسوفت تستند إلى لغة البيسك الشهيرة. و هى تصنف ضمن لغات البرمجة الشيئية. منذ أن بدأت مايكروسوفت في اصدار الفيجوال بيسك و هى تلاقى نجاحا باهرا و شعبية لا بأس بها بين المبرمجين نظرا لسهولتها الشديدة في مقابل التعقيد الشديد الذى يواجهه أى مبرمج يسعى لبرمجة ويندوز باستخدام السى أو السى++. الا أن الفيجوال بيسك ربما تكون هى من أسؤ اللغات التى تكتب عليها برامج الويندوز الآن طبعا بعد الجافا.عموما تناسب الفيجوال بيسك تطبيقات قواعد بيانات و التطبيقات المخصصة للشركات الصغيرة و برامج الحسابات و هى مريحة و سهلة و تؤدى الغرض بالاضافة إلى أنها تسمح للمبرمج بالتركيز على حل المشكلة فغالبا ما لا يواجه صعوبات فنية أثناء كتابة برنامج بالفيجوال بيسك. و لكن بقى أن نذكر أن برامج الفيجوال بيسك لا تتم ترجمتها كاملة إلى لغة الألة مثل السى++ أو الدلفى و انما تترجم إلى كود وسطى يتصل مع مكتبة ربط تسمى ب"Run Time library" و اسمها MSVBMnn.dllمع ملاحظة أن حرفى ال"ان" يشيران إلى رقم الاصدارة.
لغة البرمجة فيجوال بيسك هي لغة ذات تصميم مرئي واجهة رسومية بعكس بعض اللغات مثل الاسمبلي ذات الشاشة السوداء . حيث تحتوي هذه اللغة على العديد من الاوامر بداخلها ولغة سهلة التطبيق تم تطوير هذه النسخة من البرنامج عن النسخة القديمةbasic و التي تعمل تحت بيئة Dos إلى هذه النسخة التي تعمل تحت بيئة ويندوز . تعتمد اللغة في تطوير تطبيقاتها على الكائنات فهي تشبه العديد من لغات البرمجة الحديثة من حيث اعتمادها على الديناميكية و الاحداث. تعني الديناميكية في هذه اللغة القدرة على استدعاء اي اقتران او اجراء اعتمادا على الحدث. الحدث هو اي عملية يقوم بها مستخدم التطبيق على التطبيق مثل الضغط بزر الفارة او الضغط على أحد ازرار لوحة المفاتيح او حتى تحميل نموذج
مميزات الفيجوال بيسك
* لغة سهلة و سريعة لانشاء تطبيقات ويندوز.
* تدعم البرمجة الشيئية الا أن ذلك ليس بشكل كامل.
* تجربة برامج الفيجوال بيسك سهلة و سريعة لاعتمادها على مكتبة الربط خلال و قت التشغيل.
* سهولة اكتشاف الاخطاء فيها لانها تعتمد على نظام المفسر الذى يختبر كل خطوة من خطوات الكود على حدة واذا اكتشف فيها خطأ يتوقف ويبين لك الخطأ داخل الكود
عيوب الفيجوال بيسك
* تدعم البرمجة الشيئية الا أن ذلك ليس بشكل كامل.
* تجربة برامج الفيجوال بيسك سهلة و سريعة لاعتمادها على مكتبة الربط خلال و قت التشغيل.
* سهولة اكتشاف الاخطاء فيها لانها تعتمد على نظام المفسر الذى يختبر كل خطوة من خطوات الكود على حدة واذا اكتشف فيها خطأ يتوقف ويبين لك الخطأ داخل الكود
عيوب الفيجوال بيسك
لا يتم ترجمتها بشكل كامل إلى لغة الألة.
لا تدعم كافة أشكال البرمجة الشيئية.
المترجم نفسه به بعض الشوائب و التى تظهر في البرنامج المكتوب حتى في حالة خلو البرنامج المصدر من الأخطاء.
لا تدعم كافة أشكال البرمجة الشيئية.
المترجم نفسه به بعض الشوائب و التى تظهر في البرنامج المكتوب حتى في حالة خلو البرنامج المصدر من الأخطاء.
التوافقية مع ويندوز
التطبيقات التي تنشئها بواسطة Visual Basicمتوافقة 100% مع اصدارات Windows المختلفة. فالنواة الداخلية للتطبيقات المنشئة بواسطة Visual Basic هي عبارة عن سيل من اجراءات API التي عبارة عن روح نظام Windows. اما عن الدوال الاضافية التي توفرها لغة البرمجة فهي موجودة في مكتبة مستقلة MSVBVM60.DLL وهي المسؤولة عن تشغيل برامجك التي طورتها عن طريق Visual Basic.
التطبيقات التي تنشئها بواسطة Visual Basicمتوافقة 100% مع اصدارات Windows المختلفة. فالنواة الداخلية للتطبيقات المنشئة بواسطة Visual Basic هي عبارة عن سيل من اجراءات API التي عبارة عن روح نظام Windows. اما عن الدوال الاضافية التي توفرها لغة البرمجة فهي موجودة في مكتبة مستقلة MSVBVM60.DLL وهي المسؤولة عن تشغيل برامجك التي طورتها عن طريق Visual Basic.
خلاصة القول
لغة الفيجوال بيسيك لغة سهلة التعلم وتفيدك فى إنشاء التطبيقات المكتبية البسيطة وتطبيقات قواعد البيانات والبرامج التعليمية والحسابية
ولكنها لها حدود لا يمكن أن تتعداها , فلا يمكنك أن تصمم بها نظام تشغيل , لان تصميم نظام تشغيل يجب أن يكون بلغة الالة أو بلغة برمجة تتعامل مع الالة بشكل مباشر وهذا طبعا غير متاح فى فيجوال بيسيك
لغة الفيجوال بيسيك لغة سهلة التعلم وتفيدك فى إنشاء التطبيقات المكتبية البسيطة وتطبيقات قواعد البيانات والبرامج التعليمية والحسابية
ولكنها لها حدود لا يمكن أن تتعداها , فلا يمكنك أن تصمم بها نظام تشغيل , لان تصميم نظام تشغيل يجب أن يكون بلغة الالة أو بلغة برمجة تتعامل مع الالة بشكل مباشر وهذا طبعا غير متاح فى فيجوال بيسيك
2⃣
Visual Basic .Net
فيجوال بيسيك دوت نت تعتبر لغة برمجة جديدة وليس لها علاقة بالاصدارات السابقة من فيجوال بيسيك من الاصدار 1 حتى الاصدار6
فالتشابه هنا فى الاسم مع اضافة المقطع دوت نت.NET والذى يوضح لنا أنها لغة برمجة تعتمد على اطار العمل Microsoft .NET Framework والذى يعتبر بحر عميق يحتوى على ثروة هائلة من الأدوات البرمجية والكلاسيس التى تسهل عليك الكثير والكثير من العناء فى الحصول على أدوات برمجية اضافية ووحدات نمطية وأكواد كثيرة لتجعل برنامجك أكثر فاعلية وقوة
ويقول محمد حمدى غانم فى كتابه
"من الصفر الى الاحتراف فيجوال بيسيك 2008"
في نهاية عام 2001 أقدمت ميكروسوفت أخيرا على الخطوة التي طال انتظارها، فأصدرت نسخة جديدةً بكلّ المقاييس من فيجيوال بيزيك، بنتها من جذورها From scratch لتجعلها إحدى لغات نظام فيجيوال ستديو دوت نت VS.NET، لتستفيد بكل قدرات إطار العمل Framework، فتصير بذلك ندّا حقيقيّا لعائلة لغات C++، بحيثُ تتسيد فيجيوال بيزيك برمجة تطبيقات مواقع الإنترنت والتطبيقات التجاريّة وتطبيقات قواعد البيانات والوسائط المتعدّدة ومعظم الألعاب وما شابه!
وأعتقدُ أنّ هذا هو السبب الذي دفع ميكروسوفت إلى إصدار اللغة الجديدة سي شارب C#، التي تُعتبر توأما لفيجيوال بيزيك إلا إنّها تستخدم قواعد C++ في كتابة الأوامر، ممّا يشكّلُ لمبرمجي C++ إغراءً تصعبُ مقاومته للانتقالِ إليها، كما انضمت لغة J# إلى عائلة دوت نت عام 2003، لتشكل إغراء لمبرمجي الجافا تصعب مقاومته!
ولكن مهما كانت سهولة C# و J#، فإنّ VB تصرعُهما في هذا المضمار، فهي أقربُ ما تكونُ إلى اللّغةِ الإنجليزيّة العاديّة، ولا تحتوي على الرموزِ الكثيرةِ المملّة التي تملأ سي شارب وجي شارب، مثل ; ، ++ ، == ، ||.... إلى آخر هذه الرموزِ التي تجعلُ احتمالاتِ الخطإ عند كتابةِ الكودِ أعلى، وتجعلُ البرنامجَ أصعبَ فهمًا وأقلَّ ألفةً عندَ قراءته.
ولم تتوقف ميكروسوفت عن التطوير لحظة، ففي العام التالي أصدرت دوت نت 2003، وبعدها بعامين أصدرت دوت نت 2005 التي ضيقت الفجوة أكثر بين فيجيوال بيزيك وسي شارب بإضافة بعض القدرات الناقصة (مثل إعادة تعريف المعاملات Operator Overloading).. وها هي ذي دوت نت 2008 تأتي لتقدم أذكى نسخة من فيجيوال بيزيك.. نسخة قادرة على تعريف أنواع مجهولة Anonymous Types من تلقاء نفسها بناء على فهمهما للقيم التي تكتبها في الكود، بل وتمكّنك من كتابة وسائل إضافية Extended Methods للفئات الجاهزة الموجودة في اللغة، بالإضافة إلى استخدام الاستعلام المتكاملIinQ، وغير ذلك من الإمكانيات المدهشة
فيجوال بيسيك دوت نت تعتبر لغة برمجة جديدة وليس لها علاقة بالاصدارات السابقة من فيجوال بيسيك من الاصدار 1 حتى الاصدار6
فالتشابه هنا فى الاسم مع اضافة المقطع دوت نت.NET والذى يوضح لنا أنها لغة برمجة تعتمد على اطار العمل Microsoft .NET Framework والذى يعتبر بحر عميق يحتوى على ثروة هائلة من الأدوات البرمجية والكلاسيس التى تسهل عليك الكثير والكثير من العناء فى الحصول على أدوات برمجية اضافية ووحدات نمطية وأكواد كثيرة لتجعل برنامجك أكثر فاعلية وقوة
ويقول محمد حمدى غانم فى كتابه
"من الصفر الى الاحتراف فيجوال بيسيك 2008"
في نهاية عام 2001 أقدمت ميكروسوفت أخيرا على الخطوة التي طال انتظارها، فأصدرت نسخة جديدةً بكلّ المقاييس من فيجيوال بيزيك، بنتها من جذورها From scratch لتجعلها إحدى لغات نظام فيجيوال ستديو دوت نت VS.NET، لتستفيد بكل قدرات إطار العمل Framework، فتصير بذلك ندّا حقيقيّا لعائلة لغات C++، بحيثُ تتسيد فيجيوال بيزيك برمجة تطبيقات مواقع الإنترنت والتطبيقات التجاريّة وتطبيقات قواعد البيانات والوسائط المتعدّدة ومعظم الألعاب وما شابه!
وأعتقدُ أنّ هذا هو السبب الذي دفع ميكروسوفت إلى إصدار اللغة الجديدة سي شارب C#، التي تُعتبر توأما لفيجيوال بيزيك إلا إنّها تستخدم قواعد C++ في كتابة الأوامر، ممّا يشكّلُ لمبرمجي C++ إغراءً تصعبُ مقاومته للانتقالِ إليها، كما انضمت لغة J# إلى عائلة دوت نت عام 2003، لتشكل إغراء لمبرمجي الجافا تصعب مقاومته!
ولكن مهما كانت سهولة C# و J#، فإنّ VB تصرعُهما في هذا المضمار، فهي أقربُ ما تكونُ إلى اللّغةِ الإنجليزيّة العاديّة، ولا تحتوي على الرموزِ الكثيرةِ المملّة التي تملأ سي شارب وجي شارب، مثل ; ، ++ ، == ، ||.... إلى آخر هذه الرموزِ التي تجعلُ احتمالاتِ الخطإ عند كتابةِ الكودِ أعلى، وتجعلُ البرنامجَ أصعبَ فهمًا وأقلَّ ألفةً عندَ قراءته.
ولم تتوقف ميكروسوفت عن التطوير لحظة، ففي العام التالي أصدرت دوت نت 2003، وبعدها بعامين أصدرت دوت نت 2005 التي ضيقت الفجوة أكثر بين فيجيوال بيزيك وسي شارب بإضافة بعض القدرات الناقصة (مثل إعادة تعريف المعاملات Operator Overloading).. وها هي ذي دوت نت 2008 تأتي لتقدم أذكى نسخة من فيجيوال بيزيك.. نسخة قادرة على تعريف أنواع مجهولة Anonymous Types من تلقاء نفسها بناء على فهمهما للقيم التي تكتبها في الكود، بل وتمكّنك من كتابة وسائل إضافية Extended Methods للفئات الجاهزة الموجودة في اللغة، بالإضافة إلى استخدام الاستعلام المتكاملIinQ، وغير ذلك من الإمكانيات المدهشة
الجديد فى فيجوال بيسك دوت نت
"نقلا عن بعض الكتب العربية والمتخصصين فى هذا المجال"
إنّ التطويرات التي لحقت بـ VB.Net من الكثرةِ بحيثُ لن نستطيع أن نحيطَ بها كلّها هنا.. ولكن يكفي أن نذكر منها ما يلي:
"نقلا عن بعض الكتب العربية والمتخصصين فى هذا المجال"
إنّ التطويرات التي لحقت بـ VB.Net من الكثرةِ بحيثُ لن نستطيع أن نحيطَ بها كلّها هنا.. ولكن يكفي أن نذكر منها ما يلي:
- لم تعد لـ VB واجهة استخدام مستقلّة، فكلّ لغات VS.Net تستخدم واجهة واحدة، مليئة بالأدواتِ التي تُسهّل بطريقة مدهشة عمليّةَ تصميم البرنامج.. إنّ هذه الميزة تسمح لك بإنشاء تطبيقات تدخل فيها أكثر من لغة برمجة، دون أن تحتاج لفتح أكثر من واجهة.. إنّها واجهة واحدة فقط لكلّ المبرمجين.
- هناك إمكانيّات جديدةٌ في نافذة محرّر الكود، منها قيام اللغة بكتابة جملة نهاية المقطع تلقائيّا، بمجرّد كتابتك لبدايته وضغط زرّ Enter.
كمّا أنّ هناك تحسيناتٍ كثيرةً في تلميحات الشاشةِ التي تعرضُ قيمَ المتغيّراتِ وأنواعَها ومعاملاتِ الإجراءاتِ والدوالِّ وقيمَها المعادة، مع نبذة عن وظيفة كلّ دالة وكلّ معامل.. باختصار: لقد أصبحت كتابة الكود متعة.
- هناك تحسيناتٌ كثيرةٌ في مظهر النموذج والأدوات، وهناك العديدُ من الخصائص والوسائل الجديدة التي تمّت إضافتها لهذه العناصر، بحيث تمنحك تحكّما أكبر فيها.. فمثلا، أصبح بإمكانك تحديد درجة شفافية النموذج، كما صار بإمكانك تحديد المنطقة التي ستظهر منه على الشاشة، بحيث يمكنك تصميم نماذج بأيّ شكل.. ولم تعد مضطرّا لكتابة الكود الذي يحافظ على تناسب مقاييس الأدوات مع مقاييس النموذج كلّما تغيّر حجم النموذج، فقد صارت هناك خصائصُ جاهزةٌ مسئولةً عن هذا.. هذا بخلافِ العديد من الأدوات الجديدة، مثل الفاصل Splitter الذي يُمكّنك من تغييرِ حجمِ الأدوات المتجاورةِ أثناء تشغيل البرنامج.
- صار بإمكانك إضافة الأزرار والأدوات للنماذج في وقت التنفيذ Run Time، مع قدرتك على ربطها بأيّ إجراء، ليتمّ استدعاؤه عند ضغطها.
- لم يعد هناك أيّ قصور في مترجم الكود Compiler، فكلّ لغات VS.Net تعمل على مترجم واحد، ممّا يعني أنّ VB قد صار بقوّة وسرعة وكفاءة VC++.. وكمثال، صار بإمكانك استخدام البرمجة الارتداديّةRecursive Programming دونّ أن تخشى من بطئها أو استهلاكها لحجم الذاكرة، فقد صارت في منتهى السرعة والكفاءة.
- أصبح بإمكانك معالجة الأخطاء، عن طريق استخدام معالجات الاستثناءات Exception Handlers في جملة Try.. Catch.. End Try.
- VB.Net مبنيّةٌ بالكاملِ على مفهومِ البرمجةِ بالكائنات Object Oriented Programming، لدرجة أنّ الأعدادَ الصحيحة Integers والنصوص Strings والمصفوفات Arrays قد صارت خلايا Classes، وصارت لهذه العناصرِ خصائصُ ووسائلُ جاهزة.. فمثلا، أصبحت لديك وسائل جاهزة تنتمي للمتغيّر النصّيّ، تسمح لك بالبحث فيه أو تقطيعه أو استبدال أجزاء منه... إلخ... كما صارت لديك وسائلُ جاهزةٌ لعكسِ المصفوفةِ وترتيبِها والبحثِ فيها!
- صار بإمكانك استخدام كلّ مفاهيم الوراثة Inheritance وتعدّد الأشكال Polymorphism بلا أيّ مشاكل.. وإن كان مسموحا لك بوراثة خليّة واحدة فقط Single Inheritance للتسهيل.
- يمنحك إطار العمل .Net Framework ثروة هائلة من الخلايا Classes، تقدّر بـ 3500 خليّة، تفعل كلّ ما تحلم به وأكثر، بحيث تريحك بدرجة كبيرةٍ من الاحتياج لاستخدام دوال API الخاصّة بالويندوز، بما فيها من تعقيد ومشاكل.. وأحدث ما فعلته (ميكروسوفت)، هو إصدار نسخة جديدة منDirectX مبنيّة بالكامل بالخلايا بدلا من APIs.
- هذا بخلاف أنّ معظم هذه الخلايا قابل للوراثة، بما فيها الأدوات Controls نفسها، ممّا يمنحك القدرة على تطوير أدائها بما يناسبك.
- ومن الخلايا الجاهزة العديدة التي يمكنك استخدامها، الخلايا التالية: Stack ـ Queue ـ BitArray، و ArrayList وغيرها.
- أصبح بإمكانك تعريف المتغيّرات داخل مقاطع الجمل الشرطيّة If Statements والجمل التكراريّة Loops، بحيث تكون معزولة عن المتغيّرات الموجودة خارج هذه المقاطع.
- بل أصبح بإمكانك تعريف الخلايا داخل الخلايا Nested Classes، وأيّ نوعٍ Type داخل أيّ نوع آخر.
- أصبح بإمكانك تعريف الواجهات Interfacesوكتابة الخلايا التي تطبّقها وتنفّذها.
- أصبح بإمكانك استخدام المندوب Delegate كمعامل للإجراءات والدوال، بحيث يمكنك تمرير اسم أيّ إجراء أو دالة كمعامل!
- أصبح بإمكانك استخدام السمات Attributes في تعريف الخلايا والوسائل والخصائص والأنواع المختلفة، ممّا يختصر لك الكثير من العمل، ويمنحك العديد من القدرات.
- لديك إمكانيّات جديدة وعديدة تمنحها لك خلايا جاهزة، للتعامل مع الملفّات والمجلّدات.. وعلى سبيل المثال، يمكنك أن تراقب أيّ تغيير يطرأ على ملفّات المجلّد الذي تريد، باستخدام الأداةFileSystemWatcher، كما يمكنك أن تخزّن كائنا أو مصفوفة أو مجموعة Collection من أيّ نوعٍ إلى ملفّ مرّة واحدة، وإعادة قراءتها حينما تريد، باستخدام خلايا السلسلة Serialization.
- هناك إمكانيّات هائلة في مجال الرسم والتلوين تمنحها لك مكتبة GDI+.. يكفي أن تعرف أنّ بإمكانك الآن رسم منحنيات معقّدة، وتكوين أشكال مركّبة من مجموعة خطوط ومضلّعات ومنحنيات، وتلوين السطوح بألوان متدرّجة، وتحديد شكل مساحة الرسم، وتحديد درجة الشفافية، وتدوير الرسوم وتغيير مقاييسها تكبيرا أو تصغيرا.... إلخ.
- يمكنك استخدام المؤشّرات Pointers في بعض الأحيان، للقراءة والكتابة في الذاكرة، كما يمكنك أداء عمليّات معقّدة على النظام System لم تكن لتحلم بها!
- أصبح بإمكانك تقسيم برنامجك لمجموعة من العمليّات المستقلّة Threads، ممّا يعني أنّ برنامجك يستطيع القيام بأكثر من عمليّة في نفس اللحظة Multithreading.
- هناك إمكانيّات جديدة رائعة للتعامل مع قواعد البيانات، تمنحها لك تقنية ADO.Net، بالإضافة للعديد من الأدوات المرئيّة التي تساعدك في إنشاء تطبيقات قواعد البيانات بأقلّ قدر من الكود.
- أمّا الجديد تماما، فهو قدرتك على تصميم صفحات الإنترنت بنفس الطريقة التي تصمّم بها النماذج العاديّة، مع كتابة كود VB بمعظم إمكانيّاته، لإنشاء تطبيقات ASP تعمل على الخوادم Servers بدون كتابة حرف واحد من لغة ASP!!
عيوب فيجوال بيسيك دوت نت
لا أستطيع أن أقول أن لفيجوال بيسيك دوت نت عيوب
سوى أننى أستطيع فقط أن أقول أن عليك ضريبة تدفعها حينما تستخدم برمجة الدوت نت عموما وفيجوال بيسيك خصوصا
ألا وهى ضرورة وجود اطار العمل.Net Frameworkعلى جهازك حتى يعمل البرنامج
ثانيا البطء النسبى للبرنامج وخصوصا عند فتحه لاول مرة فى مقابل البرنامج المصنوع بفيجوال بيسيك 6
لا أستطيع أن أقول أن لفيجوال بيسيك دوت نت عيوب
سوى أننى أستطيع فقط أن أقول أن عليك ضريبة تدفعها حينما تستخدم برمجة الدوت نت عموما وفيجوال بيسيك خصوصا
ألا وهى ضرورة وجود اطار العمل.Net Frameworkعلى جهازك حتى يعمل البرنامج
ثانيا البطء النسبى للبرنامج وخصوصا عند فتحه لاول مرة فى مقابل البرنامج المصنوع بفيجوال بيسيك 6
خلاصة القول فى فيجوال بيسيك دوت نت
إذا قررت أن تتعلم الفيجوال بيسيك دوت نت فاعلم جيدا أنك تتعامل مع لغة برمجة قوية ومتميزة وفعالة ومرنة فى الكثير من المشاريع التى يمكن أن تحتاج اليها
مثل البرامج المكتبية والمشاريع الصغيرة والمتوسطة بل والكبيرة فى بعض الأحيان وبرامج متميزة وقوية جدا لإدارة قواعد البيانات وغيرها الكثير
ولكنها أيضا لها حدود يجب أن تقف عندها
فلا يمكنك أن تصمم بها نظام تشغيل
فأوامرها لا تتعامل مع الالة بشكل مباشر لذا فهى بطيئة نسبيا
إذا قررت أن تتعلم الفيجوال بيسيك دوت نت فاعلم جيدا أنك تتعامل مع لغة برمجة قوية ومتميزة وفعالة ومرنة فى الكثير من المشاريع التى يمكن أن تحتاج اليها
مثل البرامج المكتبية والمشاريع الصغيرة والمتوسطة بل والكبيرة فى بعض الأحيان وبرامج متميزة وقوية جدا لإدارة قواعد البيانات وغيرها الكثير
ولكنها أيضا لها حدود يجب أن تقف عندها
فلا يمكنك أن تصمم بها نظام تشغيل
فأوامرها لا تتعامل مع الالة بشكل مباشر لذا فهى بطيئة نسبيا
نصيحة
إذا أردت أن تتعلم فيجوال بيسيك فعليك بالدوت نت
وإن كنت من مبرمجى فيجوال بيسيك 6 فعليك بالانتقال للدوت نت
فهى الأفضل والأصلح , هى تقنية المستقبل
إذا أردت أن تتعلم فيجوال بيسيك فعليك بالدوت نت
وإن كنت من مبرمجى فيجوال بيسيك 6 فعليك بالانتقال للدوت نت
فهى الأفضل والأصلح , هى تقنية المستقبل
3⃣
سى ++
وهنا يجب أن نقف احتراما وتقديرا للسى بلس بلس
تقديم
لغة السي بلس بلس ++C من لغات البرمجة العالية المستوي وفي نفس الوقت قريبة من لغة التجميع ذات المستوي المحدود. وهي لغة ناشئة من لغة C الذي قام بتطويرها بيارن ستروستروب إلي ++C.
لغة السي بلس بلس ++C من لغات البرمجة العالية المستوي وفي نفس الوقت قريبة من لغة التجميع ذات المستوي المحدود. وهي لغة ناشئة من لغة C الذي قام بتطويرها بيارن ستروستروب إلي ++C.
تسهّل لغة ++C الأسلوب المهيكل والمنهجي لعملية تصميم البرامج،وتعتمد على الكائنات كبنية أساسية لتشكيل البرامج.
ومثلها مثل لغة السي، فان السي++ هى لغة متعدده الاستخدامات الا انها مناسبة لبرامج أنظمة التشغيل. وتكتب معظم أجزاء أنظمة التشغيل وبرامج مساعدة أنظمة التشغيل باستخدام السي++ ومنها نظاملينكس / ويندوز
و يتجنب الكثير من المبرمجين لغة السي++ والسي نظرا لشهرتهما كلغات برمجة معقدة. وقد أدى ذلك إلى استخدام الكثيرين للغات مثل فيجوال بيسك ودلفي ثم جافا وسي شارب والأخيرتين هما مجرد تسهيل (و ليس تطوير) للغة السي++ وبدا في وقت معين أن لغات مثل الجافا سوف تستولى على سوق البرمجيات التجارية من السي++ مع هجرة عدد كبير من مبرمجى السي++ إلى جافا وسي شارب ، الا أنه سرعان ما أدرك المبرمجون أن السي++ هى السبيل الوحيد لانتاج برامج تجارية قوية وسريعة وتؤدى المطلوب منها بكفاءة وبأقل عدد من الأخطاء.
و يتجنب الكثير من المبرمجين لغة السي++ والسي نظرا لشهرتهما كلغات برمجة معقدة. وقد أدى ذلك إلى استخدام الكثيرين للغات مثل فيجوال بيسك ودلفي ثم جافا وسي شارب والأخيرتين هما مجرد تسهيل (و ليس تطوير) للغة السي++ وبدا في وقت معين أن لغات مثل الجافا سوف تستولى على سوق البرمجيات التجارية من السي++ مع هجرة عدد كبير من مبرمجى السي++ إلى جافا وسي شارب ، الا أنه سرعان ما أدرك المبرمجون أن السي++ هى السبيل الوحيد لانتاج برامج تجارية قوية وسريعة وتؤدى المطلوب منها بكفاءة وبأقل عدد من الأخطاء.
الجديد في سي++
الاضافة الأهم التى أتت بها السي++ عن السي هى بالطبع اليرمجه عن طريق الكائنات. حيث تعتمد السي على البرمجة الاجرائية والتى كانت كافية في وقتها. الا أن بظهور أنظمة التشغيل ذات الواجهة الرسومية انتقل معظم المبرمجين إلى البرمجة بالكائنات . الا أن السي مازالت تستخدم في برمجة الويندوز.
و هذا بالاضافة إلى بضعة اضافات أخرى مثل :
- مكتبات جديدة لأداء مهام الادخال والاخراج تعتمد على الكائنات. & - كلمة inline التى تضمن الاجراء الفرعى في الأساسي بدلا من استدعائه.
- استخدام الاشاره // لتضمين الملاحظات بطول سطر واحد.
الاضافة الأهم التى أتت بها السي++ عن السي هى بالطبع اليرمجه عن طريق الكائنات. حيث تعتمد السي على البرمجة الاجرائية والتى كانت كافية في وقتها. الا أن بظهور أنظمة التشغيل ذات الواجهة الرسومية انتقل معظم المبرمجين إلى البرمجة بالكائنات . الا أن السي مازالت تستخدم في برمجة الويندوز.
و هذا بالاضافة إلى بضعة اضافات أخرى مثل :
- مكتبات جديدة لأداء مهام الادخال والاخراج تعتمد على الكائنات. & - كلمة inline التى تضمن الاجراء الفرعى في الأساسي بدلا من استدعائه.
- استخدام الاشاره // لتضمين الملاحظات بطول سطر واحد.
سبب صعوبتها
ربما تعود أسباب صعوبة لغتى السي والسي++ لأسباب تاريخية أكثر منها واقعية وهو ما يردده المبرمجين المعتادين على استخدام السي++ وهذا يعود بنا إلى أصل لغة السي وهى لغة السي بى الCPL والتى اشتهرت بشدة تعقيدها مما تسبب في ابتعاد المبرمجين عنها فتم تطويرها وتبسيطها إلى لغة سميت BCPL ولم تلقى الكثير من النجاح ولكنها تطورت إلى لغة البى B وعندما أرادو تطويرها سموها سي( وهذا هو أصل تسمية السي) ، وبالطبع ورثت السي++ خصائص لغة سي. الا أنه لا يمكن انكار أن مفاهيم مثل المؤشرات pointers ، والاشارات هى مفاهيم مربكة للمبرمج المبتدىء ، بالاضافة إلى مفاهيم التوارث Inheritance وتعدد الشكل polymorphism والقوالب Templates التى تربك حتى المبرمجين المحترفين. وكذلك لا تقدم سي++ الحماية الكافية للمبرمج كى لا يقع في أخطاء التشغيل التى قد تتسبب في توقف الحاسوب عن العمل. كيف؟
في لغة الفيجوال بيسك مثلا عندما تحدد مصفوفة بحجم 20 عنصرا مثلا كلأتى :
Dim A(20) As Integer
ثم تحاول معالجة العنصر رقم 21 مثلا فسوف يبادرك محرك الفيجوال بيسك برسالة خطأ ويتوقف برنامجك. أما في السي++ فاذا عرفت مصفوفة بنفس الحجم : int a[20] // integer a from 0-19 not from 0-20 و عندما تحاول الوصول إلى العنصر رقم عشرين مثلا تكون قد تعديت حدود المصفوفة إلى جزء من الذاكرة ربما تكون مخصصة لبرنامج أخر أو معلومات حساسة لنظام التشغيل. و المشكلة الأخرى التى تربك الكثيرين أن أول عنصر بالمصفوفة هو 0 وليس 1 وحجمها 20 أى أن العنصر الأخير هو 19 وليس 20 مثل البيسك.
ربما تعود أسباب صعوبة لغتى السي والسي++ لأسباب تاريخية أكثر منها واقعية وهو ما يردده المبرمجين المعتادين على استخدام السي++ وهذا يعود بنا إلى أصل لغة السي وهى لغة السي بى الCPL والتى اشتهرت بشدة تعقيدها مما تسبب في ابتعاد المبرمجين عنها فتم تطويرها وتبسيطها إلى لغة سميت BCPL ولم تلقى الكثير من النجاح ولكنها تطورت إلى لغة البى B وعندما أرادو تطويرها سموها سي( وهذا هو أصل تسمية السي) ، وبالطبع ورثت السي++ خصائص لغة سي. الا أنه لا يمكن انكار أن مفاهيم مثل المؤشرات pointers ، والاشارات هى مفاهيم مربكة للمبرمج المبتدىء ، بالاضافة إلى مفاهيم التوارث Inheritance وتعدد الشكل polymorphism والقوالب Templates التى تربك حتى المبرمجين المحترفين. وكذلك لا تقدم سي++ الحماية الكافية للمبرمج كى لا يقع في أخطاء التشغيل التى قد تتسبب في توقف الحاسوب عن العمل. كيف؟
في لغة الفيجوال بيسك مثلا عندما تحدد مصفوفة بحجم 20 عنصرا مثلا كلأتى :
Dim A(20) As Integer
ثم تحاول معالجة العنصر رقم 21 مثلا فسوف يبادرك محرك الفيجوال بيسك برسالة خطأ ويتوقف برنامجك. أما في السي++ فاذا عرفت مصفوفة بنفس الحجم : int a[20] // integer a from 0-19 not from 0-20 و عندما تحاول الوصول إلى العنصر رقم عشرين مثلا تكون قد تعديت حدود المصفوفة إلى جزء من الذاكرة ربما تكون مخصصة لبرنامج أخر أو معلومات حساسة لنظام التشغيل. و المشكلة الأخرى التى تربك الكثيرين أن أول عنصر بالمصفوفة هو 0 وليس 1 وحجمها 20 أى أن العنصر الأخير هو 19 وليس 20 مثل البيسك.
فيجوال سى ++ دوت نت
Visual C++ .Net
هى إحدى لغات مجموعة الدوت نت , فلا يوجد اختلاف فى اللغة ولكنك هنا تعمل تحت بيثة الدوت نت بكل ما فيها من قوة ومميزات واضافات يمنحها لك اطار العمل DotNet Framework
Visual C++ .Net
هى إحدى لغات مجموعة الدوت نت , فلا يوجد اختلاف فى اللغة ولكنك هنا تعمل تحت بيثة الدوت نت بكل ما فيها من قوة ومميزات واضافات يمنحها لك اطار العمل DotNet Framework
عيوب السى ++
عيوب السى ++ تكمن فى صعوبتها وتعقيدها
عيوب السى ++ تكمن فى صعوبتها وتعقيدها
خلاصة القول فى لغة السى ++
لغة السى ++ أحد أقوى لغات البرمجة عالية المستوى بالاضافة أن أوامرها تتعامل مع الالة بشكل مباشر كلغة التجميع
وهذا ما يجعل برامجها فائقة السرعة بالمقارنة بباقى اللغات عالية المستوى
وهذا أيضا ما يجعلها الاختيار الأمثل لتصميم نظم التشغيل
لغة السى ++ أحد أقوى لغات البرمجة عالية المستوى بالاضافة أن أوامرها تتعامل مع الالة بشكل مباشر كلغة التجميع
وهذا ما يجعل برامجها فائقة السرعة بالمقارنة بباقى اللغات عالية المستوى
وهذا أيضا ما يجعلها الاختيار الأمثل لتصميم نظم التشغيل
نصيحة
إذا أردت أن تصبح مبرمجا حقا بمعنى الكلمة عليك بإتقان السى ++
فهي لغة تستطيع أن تفعل بها كل شيء
البرامج التطبيقية الضخمة , برامج الجرافيك والملتيميديا, نظم التشغيل
ولكن اعلم جيدا أنك ستشق طريق صعب مليء بالأشواك , يحتاج منك الى عزيمة وصبر ومشقة ووقت طويل
إذا أردت أن تصبح مبرمجا حقا بمعنى الكلمة عليك بإتقان السى ++
فهي لغة تستطيع أن تفعل بها كل شيء
البرامج التطبيقية الضخمة , برامج الجرافيك والملتيميديا, نظم التشغيل
ولكن اعلم جيدا أنك ستشق طريق صعب مليء بالأشواك , يحتاج منك الى عزيمة وصبر ومشقة ووقت طويل
4⃣
فيجوال سى شارب دوت نت
Visual C# .Net
Visual C# .Net
سي شارب (C#) أحد لغات بيئة الدوت نت لتطوير البرامج من أنتاج شركة ميكروسوفت يرمز اليها بالرمز c# وتنطق "سي شارب"، وهي إحدى اللغات التي انتجتها شركة مايكروسوفت وذلك خروجا من ورطة الجافا والقضية الشهيرة التي رفعتها عليها شركة صن، تم الاعلان عنها في اواسط العام 2000 تزامنا مع الاعلان عن بيئة الدوت نت. تتميز سي شارب بأنها أحد لغات البرمجة الكائنية وتجمع صفات بالسي والبيزك المرئي حيث انها تستخدم القواعد الخاصه السي وسرعة التطوير كما في البيزك المرئي , لغةالسي شارب موجهه إلى مبرمجي الفيجول سي ومبرمجي السي على انها امتداد لهذه اللغات
مميزات السى شارب
استفادت لغة السي شارب إلى حد كبير من جهود مطوري الجافا وتشاركها في كل مزاياها ومبادئ التصميم وتفوقها في بعض الاجزاء . لغة السي شارب كباقي لغات الدوت نت والجافا تنتج برامج لاتعتمد على بيئه معينه مثل برامج موجهه للينكس او ويندوز او موبيل . هي لغة كائنية بالمعني الحقيقي للكلمة حيث كل شيء في تركيب اللغة هو عبارة عن كائن تم تعريفة مسبقا ، لذلك لا تسمح هذة اللغة بالكتابة الحرة اي ان ابسط التراكيب البرمجية يجيب ان تكون داخل احدي الكائنات. منذ الوهلة الاولي لظهور السي شارب كان من الواضح انها اتت لتعزز موقف شركة مايكروسوفت فيمنتجها الدوت نت
وذلك لانها افضل لغة تتعامل مع الدوت نت و تستفيد من قدراتها كاملة. و قد أصدر في أواخر العام 2005 الإصدار الثاني من اللغة C#2 .. تتنوع التطبيقات التي يمكن انتاجها بلغة السي شارب للعمل علي منصات متتعدة , ثم تلاه فى أخواخر عام 2007 للإصدار الثالث فى فيجوال ستوديو 2008
عيوب السى شارب
لا أستطيع أن أقول أن للسى شارب عيوب , حيث أنها تجمع بين قوة لغى السى ++ وسهولة الفيجوال بيسيك , فهى تعتبر لغة متكاملة ولكنها لها حدود أيضا تقف عندها فأوامرها لا تتعامل مع الالة بشكل مباشر لذا فلا يمكنك أن تصنع بها نظام تشغيل
استفادت لغة السي شارب إلى حد كبير من جهود مطوري الجافا وتشاركها في كل مزاياها ومبادئ التصميم وتفوقها في بعض الاجزاء . لغة السي شارب كباقي لغات الدوت نت والجافا تنتج برامج لاتعتمد على بيئه معينه مثل برامج موجهه للينكس او ويندوز او موبيل . هي لغة كائنية بالمعني الحقيقي للكلمة حيث كل شيء في تركيب اللغة هو عبارة عن كائن تم تعريفة مسبقا ، لذلك لا تسمح هذة اللغة بالكتابة الحرة اي ان ابسط التراكيب البرمجية يجيب ان تكون داخل احدي الكائنات. منذ الوهلة الاولي لظهور السي شارب كان من الواضح انها اتت لتعزز موقف شركة مايكروسوفت فيمنتجها الدوت نت
وذلك لانها افضل لغة تتعامل مع الدوت نت و تستفيد من قدراتها كاملة. و قد أصدر في أواخر العام 2005 الإصدار الثاني من اللغة C#2 .. تتنوع التطبيقات التي يمكن انتاجها بلغة السي شارب للعمل علي منصات متتعدة , ثم تلاه فى أخواخر عام 2007 للإصدار الثالث فى فيجوال ستوديو 2008
عيوب السى شارب
لا أستطيع أن أقول أن للسى شارب عيوب , حيث أنها تجمع بين قوة لغى السى ++ وسهولة الفيجوال بيسيك , فهى تعتبر لغة متكاملة ولكنها لها حدود أيضا تقف عندها فأوامرها لا تتعامل مع الالة بشكل مباشر لذا فلا يمكنك أن تصنع بها نظام تشغيل
مجالات استخدام السى شارب
* تطبيقات منصة التشغيل ويندوز
* تطبيقات الانترنت (الويب والواب) ذلك باستخدام منصة ال ASP.NET
* تطبيقات الموبايل وتعتمد علي منصة التشغيل وينوز سي اي WINDOWS CE
* تطبيقات العمل علي لينوكس وذلك بالاعتماد علي مكتبيات تمت كتابتها خصيصا لمنصة التشغيل لينوكس وذلك من خلال مشروع مونو (مستقل عن ميكروسوفت)
ونظرا لتنوع امكانيةعمل تطبيقات باستخدام السي شارب فانة يمكن عمل تطبيقات قوية مثل
* تطبيقات تعامل مع قواعد البيانات باستخدام مكتبةADO.NET
* تطبيقات الجرافيكس والوسائط المتعددة
* تطبيقات ادارة المحتوي
* الالعاب والترفية
* تطبيقات منصة التشغيل ويندوز
* تطبيقات الانترنت (الويب والواب) ذلك باستخدام منصة ال ASP.NET
* تطبيقات الموبايل وتعتمد علي منصة التشغيل وينوز سي اي WINDOWS CE
* تطبيقات العمل علي لينوكس وذلك بالاعتماد علي مكتبيات تمت كتابتها خصيصا لمنصة التشغيل لينوكس وذلك من خلال مشروع مونو (مستقل عن ميكروسوفت)
ونظرا لتنوع امكانيةعمل تطبيقات باستخدام السي شارب فانة يمكن عمل تطبيقات قوية مثل
* تطبيقات تعامل مع قواعد البيانات باستخدام مكتبةADO.NET
* تطبيقات الجرافيكس والوسائط المتعددة
* تطبيقات ادارة المحتوي
* الالعاب والترفية
خلاصة القول فى سى شارب دوت نت
لغة السى شارب لغة قوية ومتميزة فى الكثير من المجالات ويتم تطويرها بشكل مستمر , وتعتبر ضمن عائلة لغات السى , ولكنها تتميز عن السى بأنها أسهل فى التعلم كالفيجوال بيسيك
لغة السى شارب لغة قوية ومتميزة فى الكثير من المجالات ويتم تطويرها بشكل مستمر , وتعتبر ضمن عائلة لغات السى , ولكنها تتميز عن السى بأنها أسهل فى التعلم كالفيجوال بيسيك
5⃣
لغة الجافا
الجافا (الإنجليزية: Java) هي لغة برمجة كائنية التوجه طورها أساساً جيمس جوسلينج وجامعيون في شركة صن ميكروسيستيمز.
الهدف الأساسي لنشأة جافا هو إيجاد لغة مشابهة للغة سي من حيث التركيب النحوي ، كائنية التوجه، و مصممة للعمل علي اّلة إفتراضية بحيث لا تحتاج إلي الترجمة من جديد عند إستخدام برامجها على منصة تشغيل أو نظام تشغيل جديد، حيث قامت شركة صن بإنشاء الاّت افتراضية لتشغيل جافا على معظم منصات و نظم التشغيل الموجودة حاليا، فاصبح من الممكن ترجمة البرنامج مرة واحدة ثم تشغيله على نظم مختلفة أو ما أسمته صن ب إكتب مرة واحدة ، شغل في أى مكان (الإنجليزية: Write Once, run anywhere).
تم فتح المصدر لهذه اللغة مؤخرا واصبحت Open Source Code.
سميت لغة الجافا من قهوة الجافا (الجاوة) التي تزرع في جزيرة جاوا، قد تطورت من مشروع كان يسمى أوك (بلوط) (من شجر البلوط الذي كان موجودً خارج نافذة جوسلينج).
ملاحظة: يجب عدم الخلط بين الجافا والجافا سكريبت فرغم تشابة اللغتين في السياق والتراكيب الا أنهما لغتان مختلفتان ولهما أهداف مختلفة.
الهدف الأساسي لنشأة جافا هو إيجاد لغة مشابهة للغة سي من حيث التركيب النحوي ، كائنية التوجه، و مصممة للعمل علي اّلة إفتراضية بحيث لا تحتاج إلي الترجمة من جديد عند إستخدام برامجها على منصة تشغيل أو نظام تشغيل جديد، حيث قامت شركة صن بإنشاء الاّت افتراضية لتشغيل جافا على معظم منصات و نظم التشغيل الموجودة حاليا، فاصبح من الممكن ترجمة البرنامج مرة واحدة ثم تشغيله على نظم مختلفة أو ما أسمته صن ب إكتب مرة واحدة ، شغل في أى مكان (الإنجليزية: Write Once, run anywhere).
تم فتح المصدر لهذه اللغة مؤخرا واصبحت Open Source Code.
سميت لغة الجافا من قهوة الجافا (الجاوة) التي تزرع في جزيرة جاوا، قد تطورت من مشروع كان يسمى أوك (بلوط) (من شجر البلوط الذي كان موجودً خارج نافذة جوسلينج).
ملاحظة: يجب عدم الخلط بين الجافا والجافا سكريبت فرغم تشابة اللغتين في السياق والتراكيب الا أنهما لغتان مختلفتان ولهما أهداف مختلفة.
الاهداف الاساسية من انشاء جافا هي:-
كائنية التوجه
الاستقلال عن نظام التشغيل
توفر امكانيات و مكتبات للتشبيك
امكانية تنفيذ البرامج من حواسيب بعيدة بشكل آمن
توفير إمكانية إضافة برامج إلى صفحات الويب
كائنية التوجه
الاستقلال عن نظام التشغيل
توفر امكانيات و مكتبات للتشبيك
امكانية تنفيذ البرامج من حواسيب بعيدة بشكل آمن
توفير إمكانية إضافة برامج إلى صفحات الويب
مميزات لغة الجافا
* لغة الجافا خالية من عيوب السي++ ((خصوصاً في التعامل مع الذاكرة))
* الجافا تعمل في كل أنظمة التشغيل وهي independence language .
* الجافا تستخدم مترجم ومفسر يعني ليس مترجم فقط مثل السي
* الجافا سريعة جداً باستخدام معالجة للمترجمات ولكن دون هذه المعالجة السي++ أسرع بكثير لأن الجافا تحول الكود الي بايت كود.
* الجافا لغة oop خالصة وطبعاً عارفين الفرق بين البرمجة الموجهة والهيكلية .
* الجافا حديثة من سنة 95 لكن أصبح لها انتشار كبير
*الجافا لغة سهلة وبسيطة وقوية في نفس الوقت.
* الجافا تعمل في كل المجالات networking & application$graphic &gaming
معلومة أخيرة الجافا أقوى لغة برمجة للموبايلات والأجهزة التفاعلية معظم الألعاب والبرامج, برامج التصوير والفيديو في الجوالات مبرمجة بالجافا
* لغة الجافا خالية من عيوب السي++ ((خصوصاً في التعامل مع الذاكرة))
* الجافا تعمل في كل أنظمة التشغيل وهي independence language .
* الجافا تستخدم مترجم ومفسر يعني ليس مترجم فقط مثل السي
* الجافا سريعة جداً باستخدام معالجة للمترجمات ولكن دون هذه المعالجة السي++ أسرع بكثير لأن الجافا تحول الكود الي بايت كود.
* الجافا لغة oop خالصة وطبعاً عارفين الفرق بين البرمجة الموجهة والهيكلية .
* الجافا حديثة من سنة 95 لكن أصبح لها انتشار كبير
*الجافا لغة سهلة وبسيطة وقوية في نفس الوقت.
* الجافا تعمل في كل المجالات networking & application$graphic &gaming
معلومة أخيرة الجافا أقوى لغة برمجة للموبايلات والأجهزة التفاعلية معظم الألعاب والبرامج, برامج التصوير والفيديو في الجوالات مبرمجة بالجافا
خلاصة القول فى لغة الجافا
نقلا عن بعض المقالات والكتب العربية
هل الجافا صعبة؟
هذا سؤال في الحقيقة أيضا يعتمد عليك فأصعب مافي الجافا بدايتها فقط، فأذا تجاوزت البداية و أحببت اللغة فالمتبقي من اللغة سهل باذن الله
نقلا عن بعض المقالات والكتب العربية
هل الجافا صعبة؟
هذا سؤال في الحقيقة أيضا يعتمد عليك فأصعب مافي الجافا بدايتها فقط، فأذا تجاوزت البداية و أحببت اللغة فالمتبقي من اللغة سهل باذن الله
هل اتعلم الجافا ام .NET؟
إجابة هذا السؤال تعتمد عليك أنت فإذا كنت تحب البرمجة و تعشق التحدي و المغامرة و الجافا تناسب إحتياجك فعليك بها (لاتريد أن تعتمد على platform معين). إما إذا كنت خلاف ذلك فمن رأيي أن تتوجة الى الدوت نت فهي توفر لك كامل الدعم و هي بكل تاكيد أسهل من الجافا لأنني كما ذكرت هناك الكثير من الكتب و الكثير من الدعم و يكفي أنها من انتاج شركة Microsoft.
و عموماً الخلاصة ماذا تريده أنت من اللغة هو الذي يحدد إختيارك لها!
ما هي الصعوبات الي تواجة مطوري الجافا في العالم العربي؟
إجابة هذا السؤال تعتمد عليك أنت فإذا كنت تحب البرمجة و تعشق التحدي و المغامرة و الجافا تناسب إحتياجك فعليك بها (لاتريد أن تعتمد على platform معين). إما إذا كنت خلاف ذلك فمن رأيي أن تتوجة الى الدوت نت فهي توفر لك كامل الدعم و هي بكل تاكيد أسهل من الجافا لأنني كما ذكرت هناك الكثير من الكتب و الكثير من الدعم و يكفي أنها من انتاج شركة Microsoft.
و عموماً الخلاصة ماذا تريده أنت من اللغة هو الذي يحدد إختيارك لها!
ما هي الصعوبات الي تواجة مطوري الجافا في العالم العربي؟
1- الحصول على الكتب في منتهى الصعوبة.
2- مشاريع كبيرة تمت كتابتها بتقنيات ميكروسوفت، حصلوا على دعم كبير بحيث ان الشركة توفر لهم الكتب المطلوبة و النصائح من المختصين لدى الشركة و هذا لم تحصل علية المشاريع التي كتبت بالجافا.
3- عدم انتشار اللغة بصورة كبيرة
4-قلة شركات استضافة الجافا (العربية).
ولكن هذا لا يعني أن الجافا لغة ليست جيدة بل هي منتشرة جداً جداً في الدول الغربية و لكن هي قليلة الانتشار في الوطن العربي.
2- مشاريع كبيرة تمت كتابتها بتقنيات ميكروسوفت، حصلوا على دعم كبير بحيث ان الشركة توفر لهم الكتب المطلوبة و النصائح من المختصين لدى الشركة و هذا لم تحصل علية المشاريع التي كتبت بالجافا.
3- عدم انتشار اللغة بصورة كبيرة
4-قلة شركات استضافة الجافا (العربية).
ولكن هذا لا يعني أن الجافا لغة ليست جيدة بل هي منتشرة جداً جداً في الدول الغربية و لكن هي قليلة الانتشار في الوطن العربي.
6⃣
لغة دلفى
Delphi
Delphi
دلفي لغة برمجة من انتاج شركة بورلاند هذه اللغة مبنية على لغة باسكال الكائنية حيث تعتبر لغة دلفي تطوير للغة باسكال القديمة، دلفي لغة شائعة ومنتشرة حاليا، تعتبر دلفي لغة مرئية وهي من اللغات العالية الإنتاجية. وتعتبرمن اللغات القوية والسهلة معا.
يقال أنها تجمع بين سهولة لغة فيجوال بيسك وقوة لغة سي++, تم انشاء هذه اللغه في سنة 1995 وقد سميت دلفي رجوعا إلى كلمة اغريقية قديمة تعني عرافة.
هناك نسختان من هذه اللغة، النسخه الاولى خاصة بنظام التشغيل ويندوز و هي دلفي و الثانية خاصة بنظام التشغيل لينكس و تحمل الاسم كايليكس وقد تم إصدار دلفي للعمل تحت منصة دوت نت بالنسختين دلفي8.نت
يقال أنها تجمع بين سهولة لغة فيجوال بيسك وقوة لغة سي++, تم انشاء هذه اللغه في سنة 1995 وقد سميت دلفي رجوعا إلى كلمة اغريقية قديمة تعني عرافة.
هناك نسختان من هذه اللغة، النسخه الاولى خاصة بنظام التشغيل ويندوز و هي دلفي و الثانية خاصة بنظام التشغيل لينكس و تحمل الاسم كايليكس وقد تم إصدار دلفي للعمل تحت منصة دوت نت بالنسختين دلفي8.نت
مميزات لغة البرمجة دلفى
* لا تحتاج الي اي ملفات او مكتبات عن تحويل البرنامج الي ملف تنفيذي
قهى لا تحتاج لأي مكتبات ربط ديناميكي DLL كـVisual Basic لكي يعمل البرنامج بسلامة، حتى الأدوات التي نحصل عليها من هنا وهناك سواءً من الإنترنت أو من شيءٍ آخر لا نضطر أن ننصبها كأدواتActiveX فيوجد في Delphi أدوات تسمّى Visual Component Library اختصار: VCL، أدوات تترجم مع التطبيق والأعجب أنها لن تزيد من حجم التطبيق
* لا تحتاج الي اي ملفات او مكتبات عن تحويل البرنامج الي ملف تنفيذي
قهى لا تحتاج لأي مكتبات ربط ديناميكي DLL كـVisual Basic لكي يعمل البرنامج بسلامة، حتى الأدوات التي نحصل عليها من هنا وهناك سواءً من الإنترنت أو من شيءٍ آخر لا نضطر أن ننصبها كأدواتActiveX فيوجد في Delphi أدوات تسمّى Visual Component Library اختصار: VCL، أدوات تترجم مع التطبيق والأعجب أنها لن تزيد من حجم التطبيق
* دلفي مثلها مثل فيجوال سي++ و جافا لغة برمجة كائنية Object Oriendet Programmint OOP
* دلفي يأتي معها العشرات بل المئات منComponents والتي لا تجعلك تحتاج اي شي وبإستطاعتك ان تطور او تضيف خصائص غير موجودة عليها حيث ان الكود المصدري موجود مع نسخة دلفي Enterprise
* تعتبر دلفي اسرع أداة تطوير برامج تحت بيئة الويندوز
* إمكانية بناء مكتبات ActiveX COM . DLL
* إمكانية بناء ActiveX Controls وبإستطاعك بعد ذلك استخدامها في اي لغة برمجة
* بإمكانك من خلال Delphi بناء واجهات معقّدة في وقت قياسى وذلك من خلال الثروة الهئلة من الأدوات التى توفرها لك بيئة الدلفى
* الدعم الكامل للواجهات وهو ما يسمّى بـ: Full Support for Interfaces
* دلفي لغة مكتوبة بنفسها! إذ أنها هي التي تطوّر نفسها بنفسها، الإصدار الأول يطور الثاني الثاني يطوّر الثالث، الثالث يطوّر الرابع، الرابع يطوّر الخامس
* يمكنك تشغيل برنامج دلفى على أي نظام تشغيل كان سواء Windows أو Linux بدون أي مشكلة لأن دوالها داخلية
* دلفي يأتي معها العشرات بل المئات منComponents والتي لا تجعلك تحتاج اي شي وبإستطاعتك ان تطور او تضيف خصائص غير موجودة عليها حيث ان الكود المصدري موجود مع نسخة دلفي Enterprise
* تعتبر دلفي اسرع أداة تطوير برامج تحت بيئة الويندوز
* إمكانية بناء مكتبات ActiveX COM . DLL
* إمكانية بناء ActiveX Controls وبإستطاعك بعد ذلك استخدامها في اي لغة برمجة
* بإمكانك من خلال Delphi بناء واجهات معقّدة في وقت قياسى وذلك من خلال الثروة الهئلة من الأدوات التى توفرها لك بيئة الدلفى
* الدعم الكامل للواجهات وهو ما يسمّى بـ: Full Support for Interfaces
* دلفي لغة مكتوبة بنفسها! إذ أنها هي التي تطوّر نفسها بنفسها، الإصدار الأول يطور الثاني الثاني يطوّر الثالث، الثالث يطوّر الرابع، الرابع يطوّر الخامس
* يمكنك تشغيل برنامج دلفى على أي نظام تشغيل كان سواء Windows أو Linux بدون أي مشكلة لأن دوالها داخلية
خلاصة القول فى دلفى
دلفى لغة برمجة قوية جدا وممتازة وتتطور بشكل كبير وسريع
بإمكانك أن تصمم بدلفى كافة أنواع التطبيقات والألعاب
لمن يريد تعلم لغة دلفى , ستجد العديد من الاسطوانات التعليمية والكتب العربية والأجنبية ستفيدك كثيرا فى تعلم الدلفى
دلفى لغة برمجة قوية جدا وممتازة وتتطور بشكل كبير وسريع
بإمكانك أن تصمم بدلفى كافة أنواع التطبيقات والألعاب
لمن يريد تعلم لغة دلفى , ستجد العديد من الاسطوانات التعليمية والكتب العربية والأجنبية ستفيدك كثيرا فى تعلم الدلفى
أما بالنسبة للغة نفسها
هناك منتج شركة بورلاند
Borland Delphi 7
وهناك تحفة شركة CodeGear والتى تشبه الى حد كبير بيئة الفيجوال ستوديو دوت نت , بل وتتفوق عليها فى خفتها وسرعتها الفائقة فى العمل بالمقارنة بالبطىء الشديد الموجود فى بيئة الفيجوال ستوديو
CodeGear Delphi , C++ Builder 2009
هناك منتج شركة بورلاند
Borland Delphi 7
وهناك تحفة شركة CodeGear والتى تشبه الى حد كبير بيئة الفيجوال ستوديو دوت نت , بل وتتفوق عليها فى خفتها وسرعتها الفائقة فى العمل بالمقارنة بالبطىء الشديد الموجود فى بيئة الفيجوال ستوديو
CodeGear Delphi , C++ Builder 2009
8⃣
لغة التجميع
Assembly language
Assembly language
هي الصيغة السهلة القراءة للبشر المقابلة للغة الآلة التي تشكل الأوامر التي ينفذها حاسوب بتصميم ما. فلغة الآلة عبارة عن تتابع من البتات (bits) تمثل عملية حاسوبية أو امر للحاسوب، تصبح أسهل للقراءة عندما تستبدل برموز تعبر عنها. و لكل معالج لغة أسمبلي خاصة به كما أن له "لغة آلة Machine Language" خاصة به. و تحتاج لغة الاسمبلي ما يسمى الاسمبلر (Assembler) او المجمع و هو الذي يقوم بتحويل لغة الاسمبلي التي يستطيع البشر قراءتها و التعديل فيها إلى لغة الالة التي يستطيع المعالج تنفيذها. و تستخدم هذه اللغة الان من قبل البشر و ذلك لبرمجة اجزاء من نظم التشغيل او للتاكد من سرعة و كفاءة تنفيذ بعض البرامج التي يحتاج فيها الكفاءة كبرامج المحاكاة و الالعاب
فمعالج أي حاسب لا يفهم أية لغة، لا الباسكال ولا السي ولا الجافا، ولا حتى التجميع في حد ذاته، إنما يفهم شيئا واحدا، هو لغة الآلة
فمعالج أي حاسب لا يفهم أية لغة، لا الباسكال ولا السي ولا الجافا، ولا حتى التجميع في حد ذاته، إنما يفهم شيئا واحدا، هو لغة الآلة
هى لغة معقدة جدا ومن أهم استخداماتها برمجة نظم التشغيل وبرمجة الفيروسات وقرصنة البرامج
9⃣
أول لغة برمجة عربية متكاملة
ج
لغة ج هى لغة برمجة رفيعة المستوى High Level Programming Language تستخدم اللغة العربية قلباً وقالباً. ولعلها أول لغة برمجة عربية متكاملة تحتوي على كل خصائص لغات البرمجة الأجنبية رفيعة المستوى مثل C و Pascal . لقد أصبح بإمكانك الآن كتابة البرامج للحاسوب الشخصي باللغة العربية.
ما هى لغة ج ؟
على لسان مطور اللغة الدكتورمحمد عمار السَلكة
طلب مني أحد الأصدقاء ذات يوم أن أبدي رأيي في منهاج كان قد أعده لتدريس علوم الحاسوب للأطفال وطلاب المدارس في إحدى المعاهد. وكان من جملة أهداف هذا المنهاج تعليم طلاب المراحل الدراسية المبكرة برمجة الحاسوب من خلال لغات برمجة بسيطة مثل LOGO و BASIC. وقد لفت نظري أن هذه اللغات على بساطتها لا تناسب الطلاب العرب الصغار لاعتمادها على اللغة الإنكليزية. وكما هو معروف، تعتمد غالبية لغات البرمجة رفيعة المستوى High Level Languages على اللغة الإنكليزية، وتستخدم الأحرف اللاتينية قلباً وقالباً، مما يجعلها بعيدة المنال عن الطلاب العرب، خاصة أولئك الذين مازالوا في المراحل التعليمية المبكرة، ولم يتقنوا اللغات الأجنبية اتقاناً كافياً.
فتولد عندي دافع قوي للعمل على تطوير لغة برمجة عربية تكون سهلة وميسرة، ولا تقل مع ذلك في قدراتها عن لغات البرمجة رفيعة المستوى المعروفة مثل C و PASCAL. لتكون وسيلة مناسبة لتعليم الطلاب العرب مبادئ البرمجة بلغتهم الأم. وأن تكون هذه اللغة من روح مناهجهم، ومن صميم المفردات التي ألفوها في حياتهم الدراسية. وتشكلت لدي قناعة بأن إدخال الحاسوب إلى المناهج التعليمية في العالم العربي يجب أن ينطلق من تعليم الطلاب برمجة الحاسوب بواسطة لغة برمجة تمكنهم من السيطرة على مفاهيم البرمجة الأساسية بلغتهم الأم، وتتوافق وتنسجم مع مناهجهم الأخرى في الرياضيات والعلوم واللغة العربية.
وشرعت في العمل على تطوير هذه اللغة، وتوصلت إلى لغة برمجة عالية المستوى مشتقة من اللغة العربية، تكتب بحروفها وأرقامها، وتستخدم مفرداتها، وتلتزم بقواعدها. وتتمتع بالبساطة والوضوح. ويمكن بواسطتها برمجة كل ما يحتاجه الطالب من برامج وخوارزميات تفيده في دراسته. وقد رأيت أن أطلق على هذه اللغة اسم ج لشبهها في جوانب عديدة بلغة البرمجة المعروفة C. كما قمت بتطوير برنامج يتيح كتابة، وتنقيح، وتنفيذ البرامج بلغة ج، وأطلقت على هذا البرنامج اسم الخوارزمي تقديراً للعالم الشهير محمد بن موسى الخوارزمي.
وقد شاء الله أن أنشغل عن اتمام اللمسات الأخيرة لهذا البرنامج فترة من الزمن، وأن يبقى هو ولغة ج حبيساً في أحد الدروج، إلى أن قلت أعبائي مؤخراً وأكملت ما بدأته منذ أكثر من 7 سنوات.
وإني إذ أضع هذا العمل المتواضع بين أيدي الطلاب والمدرسين العرب في كل مكان لأرجو أًن تتحقق منه الفائدة والمتعة، وأن يكون وسيلة لتعليم برمجة الحاسوب في المدارس والمعاهد بدلاً من لغات البرمجة الأجنبية.
على لسان مطور اللغة الدكتورمحمد عمار السَلكة
طلب مني أحد الأصدقاء ذات يوم أن أبدي رأيي في منهاج كان قد أعده لتدريس علوم الحاسوب للأطفال وطلاب المدارس في إحدى المعاهد. وكان من جملة أهداف هذا المنهاج تعليم طلاب المراحل الدراسية المبكرة برمجة الحاسوب من خلال لغات برمجة بسيطة مثل LOGO و BASIC. وقد لفت نظري أن هذه اللغات على بساطتها لا تناسب الطلاب العرب الصغار لاعتمادها على اللغة الإنكليزية. وكما هو معروف، تعتمد غالبية لغات البرمجة رفيعة المستوى High Level Languages على اللغة الإنكليزية، وتستخدم الأحرف اللاتينية قلباً وقالباً، مما يجعلها بعيدة المنال عن الطلاب العرب، خاصة أولئك الذين مازالوا في المراحل التعليمية المبكرة، ولم يتقنوا اللغات الأجنبية اتقاناً كافياً.
فتولد عندي دافع قوي للعمل على تطوير لغة برمجة عربية تكون سهلة وميسرة، ولا تقل مع ذلك في قدراتها عن لغات البرمجة رفيعة المستوى المعروفة مثل C و PASCAL. لتكون وسيلة مناسبة لتعليم الطلاب العرب مبادئ البرمجة بلغتهم الأم. وأن تكون هذه اللغة من روح مناهجهم، ومن صميم المفردات التي ألفوها في حياتهم الدراسية. وتشكلت لدي قناعة بأن إدخال الحاسوب إلى المناهج التعليمية في العالم العربي يجب أن ينطلق من تعليم الطلاب برمجة الحاسوب بواسطة لغة برمجة تمكنهم من السيطرة على مفاهيم البرمجة الأساسية بلغتهم الأم، وتتوافق وتنسجم مع مناهجهم الأخرى في الرياضيات والعلوم واللغة العربية.
وشرعت في العمل على تطوير هذه اللغة، وتوصلت إلى لغة برمجة عالية المستوى مشتقة من اللغة العربية، تكتب بحروفها وأرقامها، وتستخدم مفرداتها، وتلتزم بقواعدها. وتتمتع بالبساطة والوضوح. ويمكن بواسطتها برمجة كل ما يحتاجه الطالب من برامج وخوارزميات تفيده في دراسته. وقد رأيت أن أطلق على هذه اللغة اسم ج لشبهها في جوانب عديدة بلغة البرمجة المعروفة C. كما قمت بتطوير برنامج يتيح كتابة، وتنقيح، وتنفيذ البرامج بلغة ج، وأطلقت على هذا البرنامج اسم الخوارزمي تقديراً للعالم الشهير محمد بن موسى الخوارزمي.
وقد شاء الله أن أنشغل عن اتمام اللمسات الأخيرة لهذا البرنامج فترة من الزمن، وأن يبقى هو ولغة ج حبيساً في أحد الدروج، إلى أن قلت أعبائي مؤخراً وأكملت ما بدأته منذ أكثر من 7 سنوات.
وإني إذ أضع هذا العمل المتواضع بين أيدي الطلاب والمدرسين العرب في كل مكان لأرجو أًن تتحقق منه الفائدة والمتعة، وأن يكون وسيلة لتعليم برمجة الحاسوب في المدارس والمعاهد بدلاً من لغات البرمجة الأجنبية.
الموقع الرسمى للغة ج
http://www.jeemlang.com/index.php
http://www.jeemlang.com/index.php
0 Comments:
إرسال تعليق
ما يلفظ من قول إلا لديه رقيب عتيد