مع زيادة تعقيد تصميم البرنامج ، فإن طريقة البرمجة المنظمة ليست كافية. السبب الجذري لعدم وجود ما يكفي هو أنه من غير المريح إعادة استخدام الكود. وُلدت الطريقة الموجهة نحو الكائن ، وأدركت وظيفة إعادة استخدام رمز شاملة عن طريق الوراثة. يتقدم العديد من الطلاب بطلب للعمل خلال المقابلة ، غالبًا ما يتم سؤالهم عن سؤال حول البرنامج. أخبرته أنه طالما قلت كلمة ، فإنه يكفي للبرمجة الموجهة للكائنات لتعبئة البيانات ؛ في وقت لاحق ، واجه طالب هذا السؤال مرة أخرى ، ولم يكن سوى إجابة بسيطة ، نظر الطرف الآخر إلى الطالب (أخبرني الطالب لاحقًا برايد). لماذا؟ لأنه فقط بعد تجربة وممارسة شاملة ، يمكن تحسين هذا الجوهر.
تم اقتراح أساليب وأفكار التصميم الموجهة نحو الكائن في وقت مبكر من أوائل السبعينيات. والغرض من ذلك هو: يجب على البرنامج الإلزامي معالجة البيانات حسب الوظيفة. وبهذه الطريقة ، تتجنب تعبئة البيانات طريقة التصميم السابقة. ثم يمكنك القول أنه حتى لو لم أستخدم الكائن الموجود الكائن ، عندما أرغب في الوصول إلى بيانات معينة ، هل يمكنني الوصول إليها عن طريق استدعاء الوظيفة؟ نعم ، هذا صحيح ، لكنه ليس مضطرًا. الناس خاملون. ننسى ذلك مباشرة أنا ++. هاها ، بسبب هذا الكسل ، عندما يخرج البرنامج من الخطأ ، ليس من السهل التقاطها. الكائن الموجود موجه إلزامي ، وقد حلت مشكلتك الكسول من مرحلة التجميع.
من قبيل الصدفة ، فإن الأفكار الموجهة نحو الكائن تتماشى في الواقع مع حياتنا اليومية. على سبيل المثال ، أخطط لرمي كوب الشاي ، كيف يمكنني رمي ذلك؟ بسيطة للغاية ، التقط كوب الشاي ، المشي إلى سلة المهملات ، رمي! انتبه لتحليل هذه العملية. الإجراء الذي يمكن تطبيقه على كل كائن محدودًا: يمكن إلقاء كوب الشاي ، ويمكن تحطيمه ، ويمكن استخدامه لشرب الماء ، ويمكنك الخروج منه ... ؛ يمكن ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، يمكنك ، مكتوبة ، يمكنك التمزق ، يمكنك الحرق ... بمعنى آخر ، بمجرد تحديد كائن ، سيتم تحديد الطريقة. هذه هي الطريقة التي تكون بها حياتنا اليومية. ومع ذلك ، يفكر الجميع في برامجنا وتشغيل الكمبيوتر ، ولكن هذا ليس هو الحال. خذ عملية DOS ، أريد حذف ملف ، وتكون الطريقة ضمن موجه DOS: C:> اسم ملف DEL <Enter>. انتبه إلى هذه العملية ، والحركة في المقدمة (DEL) ، الكائن في الخلف (اسم الملف) ، وهو عكس الطريقة الموجهة للكائن. فهل هو مجرد سؤال ، ما هو التأثير الذي ستجلبه؟ ههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههههما لسوء الحظ ، تقارير الكمبيوتر: قراءة فقط. لذلك ، فإن تشغيل DOS ينتهك في الواقع عادة حياتنا اليومية (بالطبع ، لم يثير أحد الاعتراضات من قبل) ، والآن بسبب التصميم الموجود نحو الكائن ، يتم حل هذه المشكلات عند التجميع ، وليس الوقت ، وليس ، بدلاً من ذلك ، بدلاً من ذلك. كونه ، وليس الوقت ، لا ، ليس ، ليس الوقت ، لا ، لا ، لا ، لا ، ليس ، بدلاً من التجميع ، وليس ، بدلاً من التجميع ، وليس بدلاً من التجميع لم يتم حلها ، وليس ، بدلاً من التجميع ، وليس ، بدلاً من التجميع عند الجري. obj.fun () ، بالنسبة لهذا البيان ، سواء كان كائنًا أو وظيفة ، إذا أدخلت مشكلة ، فسيتم الإبلاغ عنها عند تجميعها ، وهو أمر مناسب لك ، بدلاً من ارتكاب الأخطاء أثناء التنفيذ دُودَة.
في الوقت نفسه ، يمكن أن تحل المشكلة الموجهة نحو الكائن مشكلة إعادة استخدام الكود. اعتدت أن أكتب فئة كلب ذات سمات (متغيرات): شعر ، 4 أرجل ، ذيول ذات ذيول مائلة (الشخص الذي سحب الذيل هو ذئب) ، أنفي حساس للغاية ، أحب تناول اللحوم والعظام ... الطريقة هي (الوظيفة): يمكن تشغيلها ، والرائحة ، واللحاء ... إذا فهمت الماوس ، يطلق عليه الناس الكثير من الأرقام. حسنًا ، الكلب مكتوب. ولكن في حياتي الفعلية ، فإن الكلب الذي جمعته يشبه إلى حد كبير الكلب الذي كتبته من قبل ، فقط مختلف قليلاً ، أي كلبي ، هو: تجعيد الشعر والأنف الصغير ، والأنف الصغير ، والأنف الصغير ، والأنف الصغير ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، الأنف الصغيرة ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير ، أنف صغير. فم صغير ... نتيجة لذلك ، أرسلت نوعًا جديدًا ، يسمى Haba Dogs على أساس الكلاب ، بالإضافة إلى ميزات جديدة. حسنًا ، تم الانتهاء من البرنامج ، وهو قابل لإعادة الاستخدام بالنسبة للرمز الصحيح السابق-هذا هو فوائد البرمجة الموجهة للكائنات. كان نجاحي يقف فقط على أكتاف العملاق. بالطبع ، إذا كنت تستخدم VC ، فإن الكود الأكثر إعادة استخدام هو مكتبة MFC.
حسنًا ، ثم انظر كيف نستخدم ASP.
يستخدم الجميع عمومًا لغة البرنامج النصي الافتراضية لـ IIS كخادم ASP لأداء اللغة. على سبيل المثال ، تحتاج إلى عرض أحدث خمسة سجلات على الصفحة الحالية ، وهذا كل شيء.
1. حدد أولاً اتصال قاعدة البيانات ، مثل ::
ما يلي هو المحتوى المرجعي:
db_path = ../database/cnbruce2005.mdb
تعيين conn = server.createBject (adodb.connection)
connstr = provider = microsoft.jet.oledb.4.0 ؛
Conn.Open Connstr
2. ثم إنشاء مجموعة تسجيل قاعدة بيانات ، استخراج المعلومات ذات الصلة
ما يلي هو المحتوى المرجعي:
تعيين rs = server.createObject (adodb.oldset)
SQL = حدد TOP 5 * من [News] Order بواسطة N_ID DESC
Rs.OOPEN SQL ، CONN ، 1،1
3. أخيرًا ، يتم عرض البيانات من خلال طريقة الحلقة
ما يلي هو المحتوى المرجعي:
افعل بينما لا rs.eof
استجابة. write rs (n_title)
Rs.Movenext
حلقة
هناك أيضًا إيقاف التشغيل النهائي وإصداره
Rs.close
تعيين روبية = لا شيء
ثم هنا رداً على ذلك. اكتب RS (N_TITLE). بطبيعة الحال ، تم خلط البرنامج النصي VBS و HTML.
دعنا ننظر إليها ، إذا كانت هناك العديد من الصفحات التي تحتاج إلى عرض هذه السجلات الخمسة ، فمن الضروري ضبط كل صفحة. هذه هي كيفية التكرار. أين تتكرر؟ أين لا يمكنني تكراره؟
1. لتوصيل قاعدة البيانات ، تم إنشاء ملف اتصال قاعدة البيانات conn.asp مباشرة ، والمحتوى كما هو مذكور أعلاه.
2. طالما تحتاج قاعدة البيانات إلى استخدام ، يجب إنشاء الاتصال ، ويمكن أن يتضمن مباشرة المرجع إلى ملف اتصال قاعدة البيانات.
<!-#تضمين ملف = conn.asp->
إذن ما هو الازدواجية أعلاه؟ يتكرر كل اتصال قاعدة بيانات. هذا هو مكافحة التكرار لبعض الكود الشائع. ثم ، إذا قلت أنني أريد أن تعرض هذه الصفحة 5 و 6 عروض 6 ، فماذا أفعل؟ من الواضح أن هذا لا يمكن تعديله ببساطة إلى عبارة SQL في الصفحة الحالية.
حسنًا ، استمر في المشاهدة ، هل ما زالت هناك تكرار؟ نعم ، باستثناء تعريف استعلام SQL ، يتم تكرار الآخرين.
لذا ، استمر في العثور على طريقة: هل يمكنك تحديد العدد المستخرج من الاستخراج؟ أريد فقط استخراج عدد قليل ، لكن البرنامج يحتاج فقط إلى كتابة واحدة. ثم في هذا الوقت ، الوظيفة في متناول يدي. على سبيل المثال ، أحدد هذه الوظيفة:
ما يلي هو المحتوى المرجعي:
وظيفة TopNews (tnum)
تعيين rs = server.createObject (adodb.oldset)
SQL = حدد TOP & TNUM & * من [News] Order بواسطة N_ID DESC
Rs.OOPEN SQL ، CONN ، 1،1
افعل بينما لا rs.eof
استجابة. write rs (n_title)
Rs.Movenext
حلقة
Rs.close
تعيين روبية = لا شيء
وظيفة نهاية
بعد ذلك ، يمكنك استخدام TopNews (5) أو TopNews (6) لإكمال الحاجة
...... للوهلة الأولى ، يبدو أن ASP يستخدم الوظيفة ، والتي تم الانتهاء منها أخيرًا. نظرًا لأن وظيفة البرنامج الرئيسية في وحدة دالة ، فأنت بحاجة إلى تسميتها مباشرة عند استخدام هذه الوظيفة في صفحة مكتب الاستقبال.