هي أعطاء أوامر للحاسوب لأخباره كيف يتعامل مع حدث معين او تنفيذ سلسلة من الاوامر المطلوبة او عمل الاوامر المتكررة
“I think soon all architects will need to become programmers.”
اعتقد انه قريبا كل المعماريين سيحتاجون اي يكونوا مبرمجين
ما الذي سيعود علي كمهندس معماري من تعلم البرمجة ؟
أنت ادرى الناس بعملك , أكثر من أي مبرمج أخر , قد تكون لديك عمل متكرر سيأخد منك ايام , بكود بسيط يمكنك كتابة أسطر قليلة و تنهي العمل في دقائق
امثلة بسيطة واقعية حدثت معي:
- لديك قطعة أرض كبيرة و تريد وضع (X,Y) على كل نقطة بالمشروع , بالطريقة اليدوية سيأخد هذا أيام لكن يمكنك كتابة كود بسيط او التعديل على برنامج موجود يمكنك الانتهاء منه في دقائق (مشروع حمام سباحة اولمبيك)
- مشروع ضخم على الاتوكاد و مطلوب تحويل وحدة قياس من الامريكي للبريطاني , حويل رقم رقم سيأخد وقت طويل , أستعنت بكود autolisp لتحويل البوصة لسنتيمتر وقمت بالتعديل عليه وأنهيت التحويل سريعا للتفرغ للتصميم
- قد تكون لديك فكرة معينة لتطوير البرنامج او تشعر بقصور في البرنامج , يمكنك سد النقص بنفسك و عمل اداة تؤدي ما تريده
كما أنك حين تفكر كمبرمج تختلف كثيرا” عن التفكير كمستخدم عادي و ستتعلم البرامج أسرع
كم مرة فكرت لو كان البرنامج يفكر بطريقة اخرى كم سيكون اسهل , مثلا ادراج العمود في الريفيت من اي ركن و ليس من المنتصف ,
ايضا البرمجة ستطرد عنك الملل , بدل من قضاء ساعات في تكرار بضع اوامر , ستقوم خلال دقائق بالتفكير و تنشيط عقلك في ايجاد فكرة او ابداع كود يقوم بالمهمة و تنتهى من العمل مبكرا .
كيف ابدا؟
البداية تكون من تحديد ما هو البرنامج الذي تحتاج عمل تطبيقات به و تتعلم لغة البرمجة المناسبة له
مثلا لغات البرمجة لاشهر البرامج الهندسية
الاتوكاد يمكنك تعلم الاتوليسب (لغه ذكاء صناعي ) او vba (مشتقة من الفيجوال بيسك )
الريفيت يمكنك تعلم #C او الفيجوال بيسك VB , اذا كنت لا تعرف ايهما فتعلم ال #C لان لها أمثلة و تطبيقات كثيرة
الاسكتش اب SKETCHUP لديك ruby
البليندر Blender و الماياmaya يمكن عمل برامج لهم بلغة بايثون python و هي لغة سهلة مفتوحة المصدر
الاركيكادarchicad يمكن بناء العناصر به من خلال لغة برمجة GDL Script و هى أختصار Geometric Descriptive Language
كما يمكنك تعلم لغة برمجة مرئية visual programming language
حيث لن تضطر حتى لكتابة كود , يكفى أن تستوعب فكرة البرمجة و منطقها
مثل ال DYNAMO للريفيت و للرينيو Grasshopper
مصادر لتعلم البرمجة
- https://scratch.mit.edu موقع لتعلم اساسيات البرمجة للاطفال و للمبتدئين من mit كما يعلم برمجة الجوال
- https://www.codecademy.com موقع تعليمي تفاعلي لتعلم لغات برمجة مثل ruby & python دون الحاجة لتنصيب اي برنامج على جهازك
- https://code.org موقع مفتوح لتعلم البرمجة
- http://ain-academy.com/KFS-ca/lecture.php?num=27 دورة البايثون للمهندس محمود عوف
- https://msdn.microsoft.com موقع من مايكروسوفت لتعلم البرمجة مثل #c و الفيجوال بيسك
- موقع edx به العديد من الدورات البرمجية القوية