02-10-18, 10:10 AM
حقيقة هي مصطلحات اطلقتها انا فذات يوم تحدتث عن هذا واحدهم قام بالبحث ولم يجد شئ اسمه البرمجة المسطحة او الأفقية
ظهرت فقط عند ظهور ثقنية الدوت نت
بداية دعونا نرى هذا المثال على البرمجة المسطحة
لاحظ انك تتجه الى ناحية اليوم بسطور البرمجة وتتمدد حتى تختفي من الشاشة
وتكتب اسم فئة متبوعا بنفطة لاستدعاء فئة اخرى او خاصية ونقطة لتخرج خاصية اخرى تم اجراء او دالة وهكذا احيانا
دعونا نرى مثال على البرمجة العمودية
المشكلة و الفكرة الان تحليلية وليست برمجية .
البرمجة العمودية ترتب الكود وتعطيه مظهر يمكن تتبعه بسهولة وله شكل منظمة
نحن لا نتحدث عن بضع بارمترات او القليل من الخصائص المتلاصقة وانما في البرامج الكبيرة البرمجة المسطحة لا تنفع ولا تفيذ وتهدر الوقت في تتبع الكود ومعالجة الاخطاء .
اذا امكنك ان تلاحظ ان كل المباني الضخمة تجد بناءها يكون عمودي مثل العمارات وناطحات السحاب ومساقطها عمودية .
كل بناء وكل شئ حولك تجد مساقطه عمودية ادخل الى غابة ستجد كل ما حولك مساقطه عمودية
انت نفسك ودماغك ايضا يتكيف بسهولة مع كل ما هو حولك بشكل عمودي
تصور نفسك في مكتبك وكل الاشياء حولك مسطحة ، سوف تجد صعوبة في ايجادها وستبحث عن القلم لدقائق حتى تجده .
ولو كان كل ما حولك حتى وان كان ثنائي الابعاد وليس ثلاثي الابعاد ولكن مساقطه عمودية لن تكون لديك مشكلة
فدماغك سوف يرى ويحدد ما يريد في سرعة .
لو بحتث عن قلم موضوع بشكل افقي بين بعض الاغراض ستجد صعوبة في العثور عليه وقد تمر به ولا تراه
ولكن لو بحتث عنه وهو موضوع بشكل رأسي ستجده بسرعة ويحدد دماغك مكانه في سرعة
ربما الان تعرف لماذا يقوم البعض بوضع الاقلام في فنجان قهوة على سطح المكتب القصة ليست في جمعهم بمكان واحد فقط لتحديد مكانهم
وانما هو املاء داخلي بان هذا هو الوضع الصحيح والسهل لايجادهم .
ارجوا ان تكون الفكرة واضحة
ظهرت فقط عند ظهور ثقنية الدوت نت
بداية دعونا نرى هذا المثال على البرمجة المسطحة
كود :
var john = new Customer { Name = "John Doe" };
var tv = new Product { Description = "TV Sony 44\"", Price = 799 };
var iphone = new Product { Description = "iPhone X", Price = 999 };
var order1 = new Order { OrderDate = new DateTime(2017, 1, 1), Customer = john, Products = new List() { iphone, tv } };
var order2 = new Order { OrderDate = new DateTime(2017, 10, 1), Customer = john, Products = new List() { iphone } };
لاحظ انك تتجه الى ناحية اليوم بسطور البرمجة وتتمدد حتى تختفي من الشاشة
وتكتب اسم فئة متبوعا بنفطة لاستدعاء فئة اخرى او خاصية ونقطة لتخرج خاصية اخرى تم اجراء او دالة وهكذا احيانا
دعونا نرى مثال على البرمجة العمودية
كود :
var tv = new Product();
tv.Description = "TV Sony 44\";
tv.Price = 799;
var iphone = new Product()
iphone.Description = "iPhone X", Price = 999;
var order1 = new Order()
order1.OrderDate = new DateTime(2017, 1, 1) ;
order1ustomer = john ;
order1.OrderDate = new DateTime(2017, 1, 1) ;
order1ustomer = john ;
var order2 = new Order ()
order2.OrderDate = new DateTime(2017, 10, 1) ;
order2.Customer = john ;
order2.OrderDate = new DateTime(2017, 10, 1) ;
order2.Customer = john ;
المشكلة و الفكرة الان تحليلية وليست برمجية .
البرمجة العمودية ترتب الكود وتعطيه مظهر يمكن تتبعه بسهولة وله شكل منظمة
نحن لا نتحدث عن بضع بارمترات او القليل من الخصائص المتلاصقة وانما في البرامج الكبيرة البرمجة المسطحة لا تنفع ولا تفيذ وتهدر الوقت في تتبع الكود ومعالجة الاخطاء .
اذا امكنك ان تلاحظ ان كل المباني الضخمة تجد بناءها يكون عمودي مثل العمارات وناطحات السحاب ومساقطها عمودية .
كل بناء وكل شئ حولك تجد مساقطه عمودية ادخل الى غابة ستجد كل ما حولك مساقطه عمودية
انت نفسك ودماغك ايضا يتكيف بسهولة مع كل ما هو حولك بشكل عمودي
تصور نفسك في مكتبك وكل الاشياء حولك مسطحة ، سوف تجد صعوبة في ايجادها وستبحث عن القلم لدقائق حتى تجده .
ولو كان كل ما حولك حتى وان كان ثنائي الابعاد وليس ثلاثي الابعاد ولكن مساقطه عمودية لن تكون لديك مشكلة
فدماغك سوف يرى ويحدد ما يريد في سرعة .
لو بحتث عن قلم موضوع بشكل افقي بين بعض الاغراض ستجد صعوبة في العثور عليه وقد تمر به ولا تراه
ولكن لو بحتث عنه وهو موضوع بشكل رأسي ستجده بسرعة ويحدد دماغك مكانه في سرعة
ربما الان تعرف لماذا يقوم البعض بوضع الاقلام في فنجان قهوة على سطح المكتب القصة ليست في جمعهم بمكان واحد فقط لتحديد مكانهم
وانما هو املاء داخلي بان هذا هو الوضع الصحيح والسهل لايجادهم .
ارجوا ان تكون الفكرة واضحة