Social Icons

twitter facebook rss feed email

الاثنين، 16 يوليو 2012

البرمجة هل هي سر أم فن ؟

بسم الله الرحمن الرحيم
اللهم صل على محمد وآل محمد


السلام عليكم ورحمة الله وبركاته 


كيف حالكم اليوم ؟؟


اليوم سنخرج قليلاً عن المقالات التطبيقية فلنغيير الجو ونجعله هذه المرة نظرياً ..


سألني أحد الأخوة هل البرمجة فن أو سر .. ولماذا المبرمجين يخفون أسرارهم ؟؟


وعدته بهذه المقالة البسيطة ..


طبعاً كما يعرف الجميع أن كل علم فيه فن وأسرار ..
ولكن في البرمجة ما هو الفن وما هو السر ...






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


وسنقسم المقالة على قسمين :

  • فن البرمجة
  • سر البرمجة




فن البرمجة :

سنأخذ مثال عن الفن ، الفن كما عرفته هو الإبداع والإبتكار ..


الآن لو برمج أحدنا برنامجاً لم يبتكر فيه أدنى شئ بل كله إعادات وتكرارات ولم يجلب شئ جديد ..
هل نقول عنه أنه فنان أو أنه أبدع وإبتكر ؟؟


طبعاً سترد علي لا وألف لا ...
إذا لكي تكون فناناً في البرمجة يجب أن تبحث عن أكثر الأشياء إبداعاً وتبتكر أفضل منها ..


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


ولكن لو رأيت أن هذه الحاسبة ، عندما يكون جواب القسمة يلونه باللون الأحمر وإذا كان جواب الضرب باللون الأخضر وهكذا ...
طبعاً ستقول من أول نظرة لو أنك تعرف كيف تقوم بها (إنها سهلة للغاية ولكن كيف إبتكر هذه الطريقة هل إستخدم أداة RichTextBox أم أنه إستخدم مربع نص عادي ، أو أنه إستخدم أداة الصور ؟؟) ..


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


تقول (حقاً إن مبرمج هذه الحاسبة مبتكر فنان) ...


وهنا السؤال هل تريد أن تكون مبرمج مبتكر فنان أم مبرمج مقلد وقديم ؟؟


---------------------------------------------------------------------------------------------------------------

سر البرمجة :

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


سنأخذ مثالاً أيضاً عن سر البرمجة وأيضاً من يقول أنه (سر المهنة) ..
الآن لو أعطاك أحدهم سورس كود للبرنامج الرسام ..
وكانت أكواده عالية في الدقة والتصويب في النتائج ..


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


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


ستقول له : (أخبرني من فضلك !!) سيرد عليك : (الدالة التي إستخدمتها هي الدالة المناسبة للحركة الفأرة ، أما الدالة التي لم أتسخدمها فهي لا تتناسب مع حركة الفأرة فهي لا تنشئ المنحنيات فقط خطوط مستقيمة !!)


ستقول له : (أه ، لم أعرف هذا عذراً !!) ..


وأنت ستقول في داخلك : (لماذا لم أفكر في هذا من قبل ؟؟) ..


هذا هو سر البرمجة وهنا أيضاً يأتي سؤال مناسب ...


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


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




والسلام عليكم ورحمة الله وبركاته ، وأتمنى أن هذه المقالة قد أعجبتكم ..
(وآخر دعوانا أن الحمدلله رب العالمين)
(وقل رب زدني علماً)

0 comments:

إرسال تعليق

إترك بصمتك ثم بإمكانك الرحيل ، لنعطيك المزيد

 

على فيس بوك