تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
البرمجة المسطحة او الافقية والبرمجة العمودية
#1
حقيقة هي مصطلحات اطلقتها انا فذات يوم تحدتث عن هذا واحدهم قام بالبحث ولم يجد شئ اسمه البرمجة المسطحة او الأفقية
ظهرت فقط عند ظهور ثقنية الدوت نت
بداية دعونا نرى هذا المثال على البرمجة المسطحة
كود :
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 ;


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

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

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

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

ارجوا ان تكون الفكرة واضحة
الرد }}}
تم الشكر بواسطة: rnmr , princelovelorn
#2
بارك الله فيك
الكود مكتوب بسي شارب وكلا الطريقتين صحيحة بالنسبة للتعامل مع خصائص الكائنات مهما كان عددها
وفي سي شارب يمكن فصل السطر الى عدة سطور بعد الفاصلة دون حدوث خطأ syntax

الرد }}}
تم الشكر بواسطة: rnmr , rnmr , viv , princelovelorn
#3
نعم صحيح، فالترتيب له دور كبير في عملية التركيز


C#
كود :
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 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 ;
كود :
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 }
   };

VB
كود :
Dim john = New Customer() With { .Name = "John Doe" }
Dim tv = New Product() With { .Description = "TV Sony 44""", .Price = 799 }
Dim iphone = new Product() With { .Description = "iPhone X", .Price = 999 }
كود :
Dim order1 = New Order() With { .OrderDate = New DateTime(2017, 1, 1), .Customer = john, .Products = New List() With { .iphone, .tv } }

Dim order2 = New Order() With { .OrderDate = New DateTime(2017, 10, 1), .Customer = john, Products = New List() With { .iphone } }
كود :
Dim order1 = new Order
order1.OrderDate = New DateTime(2017, 1, 1)
order1ustomer = john
order1.OrderDate = New DateTime(2017, 1, 1)
order1ustomer = john

Dim order2 = new Order
order2.OrderDate = new DateTime(2017, 10, 1)
order2.Customer = john
order2.OrderDate = new DateTime(2017, 10, 1)
order2.Customer = john
كود :
Dim order1 = New Order() With {
       .OrderDate = New DateTime(2017, 1, 1),
       .Customer = john,
       .Products = New List() With { .iphone, .tv }
   }

Dim order2 = New Order() With {
       .OrderDate = New DateTime(2017, 10, 1),
       .Customer = john,
       .Products = New List() With{ .iphone }
   }
الرد }}}
تم الشكر بواسطة: viv , princelovelorn


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [SQL] كورس احتراف البرمجة vb. Net مع SQL server Rafaat 2 1,927 19-12-21, 01:33 AM
آخر رد: Rafaat
Thumbs Up [مقال] الجرافيكس و البرمجة - لمحة سريعة من اجل تنسيق الالوان a7med saba 3 1,507 06-05-21, 02:10 PM
آخر رد: alfaiz678
  لماذا تستخدم دائما رسالة (مرحبا ايها العالم- Hello World!) في كتب تعليم البرمجة معاند الحظ 0 1,283 29-05-20, 02:00 AM
آخر رد: معاند الحظ
  [VB.NET] بداء كورس احتراف البرمجة من الصفر حتى الاحتراف vb. Net with sql server Rafaat 1 1,831 11-04-20, 10:59 PM
آخر رد: Ahmed _ali
  [VB.NET] بداء كورس احتراف البرمجة من الصفر حتى الاحتراف vb. Net with sql server Rafaat 3 1,815 05-04-20, 12:10 AM
آخر رد: khodor1985
  [VB.NET] هام جدا بداء كورس احتراف البرمجة من الصفر الي الاحتراف Rafaat 0 1,076 02-04-20, 11:53 PM
آخر رد: Rafaat
  [VB.NET] كورس احتراف البرمجة vb. Net مع SQL server Rafaat 0 1,611 01-04-20, 08:48 AM
آخر رد: Rafaat
  التعصب للغة البرمجة viv 3 1,751 16-06-19, 01:42 PM
آخر رد: viv
  [نقاش] ما هي لغة البرمجة التي يتطلبها سوق العمل الآن وستظل مطلوبة ؟ dametucorazon 1 1,527 21-05-19, 09:15 PM
آخر رد: حريف برمجة
  تعلم البرمجة من تجربتي المتواضعة abozeyd 1 1,380 26-04-19, 01:00 PM
آخر رد: elgokr

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم