منتديات شمس الكون

منتديات شمس الكون

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

شاطر | 
 

 أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!

اذهب الى الأسفل 
كاتب الموضوعرسالة
شمس الكون

avatar


عدد المساهمات : 802
الموقع : درب التبانه

مُساهمةموضوع: أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!    الإثنين أغسطس 01, 2011 12:23 am

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

بداية نبدأ بأول نصيحة لراغبى تعلم البرمجة فبل أن يبدأ مشواره

يا من تريد تعلم البرمجة يجب عليك أن تحدد الهدف الذى دفعك لتعلم البرمجة , لأن الهدف هو الذى سوف يحدد لك الطريق الذى سوف تسلكه , حيث أن للبرمجة طرق وأساليب ولغات بناء على هدفك سوف تحدد لغتك وطريقتك وأسلوبك فى العمل

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


وهنا نأتى للنصيحة الثانية ونقول فيها

إذا أردت أن تصعد مبنى أو ناطحة سحاب فلا تستخدم المصعد الكهربائى
يتعجب البعض ويتسائل !! وكيف أصعد ناطحة السحاب إذن؟!!
أقول له تصعد على قدميك باستخدام السلم ولا تحاول أن تقفز , بل يجب عليك أن تصعد درجات السلم درجة درجة بهدوء وتأنى

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

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




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


عدل سابقا من قبل شمس الكون في الإثنين أغسطس 01, 2011 12:25 am عدل 1 مرات
الرجوع الى أعلى الصفحة اذهب الى الأسفل
شمس الكون

avatar


عدد المساهمات : 802
الموقع : درب التبانه

مُساهمةموضوع: رد: أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!    الإثنين أغسطس 01, 2011 12:24 am

قيجوال بيسيك 6
Visual Basic 6

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

البيزيك المرئى
هى بيئة تطوير و لغة برمجة من مايكروسوفت تستند إلى لغة البيسك الشهيرة. و هى تصنف ضمن لغات البرمجة الشيئية. منذ أن بدأت مايكروسوفت في اصدار الفيجوال بيسك و هى تلاقى نجاحا باهرا و شعبية لا بأس بها بين المبرمجين نظرا لسهولتها الشديدة في مقابل التعقيد الشديد الذى يواجهه أى مبرمج يسعى لبرمجة ويندوز باستخدام السى أو السى++. الا أن الفيجوال بيسك ربما تكون هى من أسؤ اللغات التى تكتب عليها برامج الويندوز الآن طبعا بعد الجافا.عموما تناسب الفيجوال بيسك تطبيقات قواعد بيانات و التطبيقات المخصصة للشركات الصغيرة و برامج الحسابات و هى مريحة و سهلة و تؤدى الغرض بالاضافة إلى أنها تسمح للمبرمج بالتركيز على حل المشكلة فغالبا ما لا يواجه صعوبات فنية أثناء كتابة برنامج بالفيجوال بيسك. و لكن بقى أن نذكر أن برامج الفيجوال بيسك لا تتم ترجمتها كاملة إلى لغة الألة مثل السى++ أو الدلفى و انما تترجم إلى كود وسطى يتصل مع مكتبة ربط تسمى ب"Run Time library" و اسمها MSVBMnn.dll مع ملاحظة أن حرفى ال"ان" يشيران إلى رقم الاصدارة.


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

مميزات الفيجوال بيسك

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

عيوب الفيجوال بيسك

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

التوافقية مع ويندوز
التطبيقات التي تنشئها بواسطة Visual Basic متوافقة 100% مع اصدارات Windows المختلفة. فالنواة الداخلية للتطبيقات المنشئة بواسطة Visual Basic هي عبارة عن سيل من اجراءات API التي عبارة عن روح نظام Windows. اما عن الدوال الاضافية التي توفرها لغة البرمجة فهي موجودة في مكتبة مستقلة MSVBVM60.DLL وهي المسؤولة عن تشغيل برامجك التي طورتها عن طريق Visual Basic.

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


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
شمس الكون

avatar


عدد المساهمات : 802
الموقع : درب التبانه

مُساهمةموضوع: رد: أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!    الإثنين أغسطس 01, 2011 12:26 am

فيجوال بيسيك دوت نت
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، وغير ذلك من الإمكانيات المدهشة

الجديد فى فيجوال بيسك دوت نت
"نقلا عن بعض الكتب العربية والمتخصصين فى هذا المجال"

إن التطويرات التي لحقت بـ 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

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

نصيحة
إذا أردت أن تتعلم فيجوال بيسيك فعليك بالدوت نت
وإن كنت من مبرمجى فيجوال بيسيك 6 فعليك بالانتقال للدوت نت
فهى الأفضل والأصلح , هى تقنية المستقبل


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
شمس الكون

avatar


عدد المساهمات : 802
الموقع : درب التبانه

مُساهمةموضوع: رد: أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!    الإثنين أغسطس 01, 2011 12:27 am

سى ++

وهنا يجب أن نقف احتراما وتقديرا للسى بلس بلس

تقديم
لغة السي بلس بلس ++C من لغات البرمجة العالية المستوي وفي نفس الوقت قريبة من لغة التجميع ذات المستوي المحدود. وهي لغة ناشئة من لغة C الذي قام بتطويرها بيارن ستروستروب إلي ++C.

تسهل لغة ++C الأسلوب المهيكل والمنهجي لعملية تصميم البرامج،وتعتمد على الكائنات كبنية أساسية لتشكيل البرامج.

ومثلها مثل لغة السي، فان السي++ هى لغة متعدده الاستخدامات الا انها مناسبة لبرامج أنظمة التشغيل. وتكتب معظم أجزاء أنظمة التشغيل وبرامج مساعدة أنظمة التشغيل باستخدام السي++ ومنها نظام لينكس Linux / ويندوز
و يتجنب الكثير من المبرمجين لغة السي++ والسي نظرا لشهرتهما كلغات برمجة معقدة. وقد أدى ذلك إلى استخدام الكثيرين للغات مثل فيجوال بيسك ودلفي ثم جافا وسي شارب والأخيرتين هما مجرد تسهيل (و ليس تطوير) للغة السي++ وبدا في وقت معين أن لغات مثل الجافا سوف تستولى على سوق البرمجيات التجارية من السي++ مع هجرة عدد كبير من مبرمجى السي++ إلى جافا وسي شارب ، الا أنه سرعان ما أدرك المبرمجون أن السي++ هى السبيل الوحيد لانتاج برامج تجارية قوية وسريعة وتؤدى المطلوب منها بكفاءة وبأقل عدد من الأخطاء.

الجديد في سي++
الاضافة الأهم التى أتت بها السي++ عن السي هى بالطبع اليرمجه عن طريق الكائنات. حيث تعتمد السي على البرمجة الاجرائية والتى كانت كافية في وقتها. الا أن بظهور أنظمة التشغيل ذات الواجهة الرسومية انتقل معظم المبرمجين إلى البرمجة بالكائنات . الا أن السي مازالت تستخدم في برمجة الويندوز.
و هذا بالاضافة إلى بضعة اضافات أخرى مثل :
- مكتبات جديدة لأداء مهام الادخال والاخراج تعتمد على الكائنات. & - كلمة 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 مثل البيسك.

فيجوال سى ++ دوت نت
Visual C++ .Net
هى إحدى لغات مجموعة الدوت نت , فلا يوجد اختلاف فى اللغة ولكنك هنا تعمل تحت بيثة الدوت نت بكل ما فيها من قوة ومميزات واضافات يمنحها لك اطار العمل DotNet Framework

عيوب السى ++
عيوب السى ++ تكمن فى صعوبتها وتعقيدها

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

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


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
شمس الكون

avatar


عدد المساهمات : 802
الموقع : درب التبانه

مُساهمةموضوع: رد: أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!    الإثنين أغسطس 01, 2011 12:29 am

لغة الجافا

الجافا (الإنجليزية: Java) هي لغة برمجة كائنية التوجه طورها أساسا جيمس جوسلينج وجامعيون في شركة صن ميكروسيستيمز.
الهدف الأساسي لنشأة جافا هو إيجاد لغة مشابهة للغة سي من حيث التركيب النحوي ، كائنية التوجه، و مصممة للعمل علي الة إفتراضية بحيث لا تحتاج إلي الترجمة من جديد عند إستخدام برامجها على منصة تشغيل أو نظام تشغيل جديد، حيث قامت شركة صن بإنشاء الات افتراضية لتشغيل جافا على معظم منصات و نظم التشغيل الموجودة حاليا، فاصبح من الممكن ترجمة البرنامج مرة واحدة ثم تشغيله على نظم مختلفة أو ما أسمته صن ب إكتب مرة واحدة ، شغل في أى مكان (الإنجليزية: Write Once, run anywhere).
تم فتح المصدر لهذه اللغة مؤخرا واصبحت Open Source Code.
سميت لغة الجافا من قهوة الجافا (الجاوة) التي تزرع في جزيرة جاوا، قد تطورت من مشروع كان يسمى أوك (بلوط) (من شجر البلوط الذي كان موجود خارج نافذة جوسلينج).
ملاحظة: يجب عدم الخلط بين الجافا والجافا سكريبت فرغم تشابة اللغتين في السياق والتراكيب الا أنهما لغتان مختلفتان ولهما أهداف مختلفة.

الاهداف الاساسية من انشاء جافا هي:-
كائنية التوجه
الاستقلال عن نظام التشغيل
توفر امكانيات و مكتبات للتشبيك
امكانية تنفيذ البرامج من حواسيب بعيدة بشكل آمن
توفير إمكانية إضافة برامج إلى صفحات الويب


مميزات لغة الجافا
* لغة الجافا خالية من عيوب السي++ ((خصوصا في التعامل مع الذاكرة))
* الجافا تعمل في كل أنظمة التشغيل وهي independence language .
* الجافا تستخدم مترجم ومفسر يعني ليس مترجم فقط مثل السي
* الجافا سريعة جدا باستخدام معالجة للمترجمات ولكن دون هذه المعالجة السي++ أسرع بكثير لأن الجافا تحول الكود الي بايت كود.
* الجافا لغة oop خالصة وطبعا عارفين الفرق بين البرمجة الموجهة والهيكلية .
* الجافا حديثة من سنة 95 لكن أصبح لها انتشار كبير
*الجافا لغة سهلة وبسيطة وقوية في نفس الوقت.
* الجافا تعمل في كل المجالات Networking & application$graphic &gaming
معلومة أخيرة الجافا أقوى لغة برمجة للموبايلات والأجهزة التفاعلية معظم الألعاب والبرامج, برامج التصوير والفيديو في الجوالات مبرمجة بالجافا


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

هل اتعلم الجافا ام .NET؟
إجابة هذا السؤال تعتمد عليك أنت فإذا كنت تحب البرمجة و تعشق التحدي و المغامرة و الجافا تناسب إحتياجك فعليك بها (لاتريد أن تعتمد على platform معين). إما إذا كنت خلاف ذلك فمن رأيي أن تتوجة الى الدوت نت فهي توفر لك كامل الدعم و هي بكل تاكيد أسهل من الجافا لأنني كما ذكرت هناك الكثير من الكتب و الكثير من الدعم و يكفي أنها من انتاج شركة Microsoft.
و عموما الخلاصة ماذا تريده أنت من اللغة هو الذي يحدد إختيارك لها!

ما هي الصعوبات الي تواجة مطوري الجافا في العالم العربي؟

1- الحصول على الكتب في منتهى الصعوبة.
2- مشاريع كبيرة تمت كتابتها بتقنيات ميكروسوفت، حصلوا على دعم كبير بحيث ان الشركة توفر لهم الكتب المطلوبة و النصائح من المختصين لدى الشركة و هذا لم تحصل علية المشاريع التي كتبت بالجافا.
3- عدم انتشار اللغة بصورة كبيرة
4-قلة شركات استضافة الجافا (العربية).
ولكن هذا لا يعني أن الجافا لغة ليست جيدة بل هي منتشرة جدا جدا في الدول الغربية و لكن هي قليلة الانتشار في الوطن العربي.


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
أيها المبرمج !! أنت لست مبرمجا .....!! إلا إذا ؟!!
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتديات شمس الكون :: مَوْسُوْعَة تَطَوّير الْمَوَاقِع وَالْمُنْتَدَيَات :: اشهار المواقع وجلب الزوار-
انتقل الى: