تتناول هذه المقالة وضع مبرمجي مواقع الويب حيث أصبحت معايير الويب أكثر شيوعًا وكيفية العمل مع المصممين لتطوير مشاريع مواقع الويب التي تتوافق مع معايير الويب.
هذه المقالة مناسبة للمبرمجين الذين لا يكون تقسيم عملهم واضحًا جدًا في ظل تخطيط TABLE التقليدي.
1: تعلم معايير الويب لتسهيل عملك.
معايير الويب هي الاتجاه العام، لذا كمبرمج موقع ويب. يجب أن يتم غسل دماغك وتعلم معايير الويب. لإعادة التعرف على علامات HTML وفهم كيفية جعل البرنامج يقوم بإخراج الكود الذي تتطلبه الصفحة.
خافت أوأتش تي أم أل
مجموعة rs=server.createobject("adodb.recordset")
Sql = "اختر أفضل 10 معرفات، العنوان من ترتيب tbl_News حسب المعرف التنازلي"
rs.open SQL، كون، 1،1
أوهتمل = "<ul>"
تفعل في حين لا rs.eof
oHtml=oHtml & "<li><a href=""shownews.asp?id=" & rs("id") & """ title=""" & rs("title") & """>" & rs("العنوان") & "</a></li>"
rs.movenext
حلقة
oHtml=oHtml & "</ul>"
rs. Close
تعيين RS=لا شيء
استجابة.كتابة (أو أتش تي أم أل)
إذا كان تخطيط TABLE تقليديًا، فسيتعين على المبرمجين كتابة الكثير من تعليمات HTML البرمجية، وسيحتاجون إلى كتابة TABLE، وتحديد وقت إخراج TR لكسر السطر، وإضافة IMG أمام كل خبر لإخراج رمز صغير. ، استخدم برنامجًا للتحكم في طول عنوان الإخراج. تتطلب جميع الأعمال كتابة رمز الصفحة قبل أن يتمكن المبرمجون من كتابة هذا البرنامج.
بالنسبة للمبرمجين، يجب أن تنظر إلى معايير الويب كنوع من الإنجيل، ويجب عليك قراءتها مثل الكتاب المقدس لفهم ما يتطلبه رمز الصفحة بالفعل، وبمجرد فهمه، ستكتشف ذلك. أنت أكثر استرخاءً من ذي قبل. ولأن معايير الويب تركز على الفصل بين الأداء والمحتوى، فإن البرنامج مسؤول فقط عن بيانات المحتوى. من الآن فصاعدًا، لم تعد بحاجة إلى التفكير في كيفية استخدام كود البرنامج للتحكم في تغيير لون الصف البديل، وكيفية إخراج صف في عدة أعمدة، وما إلى ذلك. ما عليك فعله هو إخراج المحتوى الأكثر مباشرة إلى الصفحة، دون أي زخرفة.
بالطبع، إذا كنت تقوم بالتطوير في .net، فيمكنك أن تكون أكثر شمولاً. يمكنك التركيز بشكل كامل على بناء الكائنات، ومكتبات الفئات، والوصول إلى البيانات، وما إلى ذلك، وتوفير الأساليب لطبقة العرض التقديمي فقط. المثال أدناه مأخوذ من مشروع عملت عليه من قبل ويجب أن يكون ذا قيمة مرجعية.
2: مبرمجو مواقع الويب، لا يدعوا علامات HTML تعيق رؤيتك.
إذا كنت تشعر أنك تكره علامات HTML المرهقة حقًا، وأن اتجاه التعلم الخاص بك ليس في طبقة العرض التقديمي لموقع الويب، فقل وداعًا لعلامات HTML تمامًا.
كنت أعمل في شركة تطوير برمجيات سطح مكتب تقليدية، ولم يكن أي من المبرمجين يعرف لغة HTML. عندما كان مشروع موقع الويب ضيقًا، كان علي أن أطلب منهم المساعدة. سوف نأخذ بعض الأمثلة التي تأتي مع Visual Studio .Net 2003 ونحللها بعناية وفقًا لنموذج التطوير متعدد الطبقات المهيكل الموجه للكائنات، يمكننا أيضًا التعاون بشكل جيد جدًا. خذ تطوير وحدة الأخبار كمثال:
الخطوة الأولى: يستطيع مبرمج موقع الويب تصميم قاعدة البيانات بناءً على تحليل الطلب، ويمكنك أن تكون مسؤولاً عن بناء الجداول وكتابة الإجراءات المخزنة. المبرمجون على دراية بهذا النوع من الأشياء.
الخطوة 2: تحديد الكائن. تجسيد معلومات موقع الويب، مثل:
أخبار الطبقة العامة
_id المحمي كعدد صحيح
_typeId المحمي كعدد صحيح
_title المحمي كسلسلة
_author المحمي كسلسلة
محمية _original كسلسلة
_updateTime المحمي باسم DateTime
_المحتوى المحمي كسلسلة
_clickCount المحمية كعدد صحيح
معرف الملكية العامة () كعدد صحيح
يحصل
معرف_الإرجاع
نهاية الحصول على
تعيين (قيمة ByVal كعدد صحيح)
_id = القيمة
نهاية المجموعة
نهاية الملكية
الملكية العامة TypeId() كعدد صحيح
يحصل
Return_typeId
نهاية الحصول على
تعيين (قيمة ByVal كعدد صحيح)
_typeId = القيمة
نهاية المجموعة
نهاية الملكية
عنوان الملكية العامة () كسلسلة
نهاية الملكية
مؤلف الملكية العامة () كسلسلة
نهاية الملكية
الملكية العامة الأصلية () كسلسلة
نهاية الملكية
الملكية العامة UpdateTime() كـ DateTime
نهاية الملكية
محتوى الملكية العامة () كسلسلة
نهاية الملكية
الملكية العامة ClickCount() كعدد صحيح
نهاية الملكية
نهاية الفصل
بهذه الطريقة، حاول تجسيد جميع الجداول الموجودة في الموقع. ثم حدد مجموعة السجلات المتعلقة بالكائن، التعريف أعلاه هو كائن أخبار واحد، ثم حدد مجموعة سجلات الأخبار.
أخبار الطبقة العامة
...
نهاية الفصل
الخطوة 3: تحديد مجموعة من طرق الوصول إلى البيانات العامة.
تعريف بعض الطرق العامة للتعامل مع قاعدة البيانات وتنفيذ الإجراءات المخزنة.
الخطوة 4: اكتب طبقة الطريقة القائمة على الكائن. يحب:
الوظيفة العامة ReadNews (معرف ByVal كعدد صحيح) كأخبار
وظيفة النهاية
ما ترجعه الدالة هو كائن إخباري. اعتمادا على الاحتياجات الوظيفية، يتم تعريف بعض الوظائف ذات الصلة بشكل عام، مثل:
"اقرأ قائمة الأخبار."
الوظيفة العامة ReadNewss (ByVal newsType كـ eNewsType، ByVal nCount كعدد صحيح) كأخبار
وظيفة النهاية
'أضف خبرًا
الوظيفة العامة InsertNews(ByVal n As News) كعدد صحيح
وظيفة النهاية
'تحديث الأخبار
UpdateNews الوظيفة العامة (ByVal n As News) كعدد صحيح
وظيفة النهاية
حذف خبر
الوظيفة العامة حذف الأخبار (معرف ByVal كعدد صحيح) كعدد صحيح
وظيفة النهاية
بهذه الطريقة، يمكن تقسيم تطوير موقع الويب إلى طبقة الكائن وطبقة الوصول إلى البيانات وطبقة الطريقة وطبقة العرض. يحتاج المبرمج فقط إلى توفير الأساليب التي تتطلبها طبقة العرض. بهذه الطريقة، عندما تحتاج طبقة العرض التقديمي إلى عرض قائمة الأخبار، يحتاج مصمم الصفحة فقط إلى استخدام عنصر التحكم Repeater في .net، كما هو موضح في التعليمة البرمجية التالية:
<asp:Repeater ID="topNewsList" runat="server">
<قالب الرأس>
<ul>
</HeaderTemplate>
<قالب العنصر>
<li><a href="shownews.asp?id=<%#Container.DataItem("id")%>"><%#Container.DataItem("title")%></a></li>
</ItemTemplate>
<قالب التذييل>
</ul>
</FooterTemplate>
</asp:مكرر>
في كود البرنامج الخاص بطبقة العرض، نحتاج فقط إلى إضافة:
topNewsList.DataSource = الواجهة الجديدة.newsFacade().ReadNewss(eNewsType, newsCount)
في هذه الحالة، يمكن فصل المبرمجين تمامًا عن HTML. وفي هذه الحالة، يمكن لأعضاء فريق المشروع بأكمله العمل بالتوازي. يمكن أن يحسن بشكل كبير كفاءة تطوير المشروع بأكمله. علاوة على ذلك، أدى ظهور نموذج الويب 2.0 إلى طرح متطلبات أعلى لتطوير قواعد البيانات الخلفية. بالنسبة لمواقع الويب مثل Douban و365Kit، فإن عمل التنقيب في قاعدة بيانات الخلفية معقد للغاية. لذلك اليوم، عندما أصبح تقسيم العمل واضحًا، بالإضافة إلى كود HTML، هناك العديد من المهام الأخرى الأكثر أهمية التي تنتظر مبرمجي مواقع الويب للقيام بها.
3: التصميم الذي يركز على المستخدم لا يمكن فصله عن مهندسي تطوير الواجهة الأمامية.
إذا كنت تشعر ببعض التردد في ترك كود HTML المألوف، فلا يهم. ما عليك سوى دفع نفسك إلى طليعة تكنولوجيا الويب. كن مهندس تطوير أمامي يرتبط ارتباطًا وثيقًا بتصميم المنتج.