当前位置:编程学习 > asp >>

浅尝三层架构

为什么需要三层结构?
对于开发系统来说,我们要考虑系统性能如何?是否具有足够的容错能力?能否从容应对客户不断变化的需求?面向对象思想的确很酷,可是在工程实践中的实际应用状况又是怎样的?怎样才能使我们的代码具有最大的“可重用性”和“可扩展性”?传说中的三层结构和设计模式又是什么东西?层次结构在现实社会里随处可见。记得有个笑话讲有个村长得意地向他老婆吹牛:“全中国只有四个人比我官大,乡长、县长、省长和国务院总理”。这个笑话也体现了真实社会中分层的现象。社会人群会分层,公司人员结构也会分层,楼房是分层的,甚至做包子的笼屉都是分层的。虽然分层的目的各有不同,但都是为解决某一问题而产生的。所以,分层架构其实是为了解决某一问题而产生的一种解决方案。
示例:
  1 using System;
  2 using System.Collections.Generic;
  3 using System.ComponentModel;
  4 using System.Data;
  5 using System.Drawing;
  6 using System.Text;
  7 using System.Windows.Forms;
  8 using System.Data.SqlClient;
  9 
 10 namespace MySchool
 11 {
 12     /// <summary>
 13 /// 登录窗体
 14 /// </summary>
 15     public partial class LoginForm : Form
 16     {
 17         public LoginForm()
 18         {
 19             InitializeComponent();
 20         }
 21 
 22         // 点击取消按钮,关闭应用程序
 23         private void btnCancel_Click(object sender, EventArgs e)
 24         {
 25             Application.Exit();
 26         }
 27 
 28         // 点击登录按钮时,设置用户名和登录类型
 29         private void btnLogIn_Click(object sender, EventArgs e)
 30         {
 31             bool isValidUser = false;   // 标识是否为合法用户
 32             string message = "";        // 如果登录失败,显示的消息提示
 33 
 34 // 如果验证通过,就显示相应的用户窗体,并将当前窗体设为不可见
 35             if (ValidateInput())
 36             {
 37                 // 调用用户验证方法
 38                 isValidUser = ValidateUser(
 39                     cboLogInType.Text,
 40                     txtLogInId.Text,
 41                     txtLogInPwd.Text,
 42                     ref message);
 43 
 44                 // 如果是合法用户,显示相应的窗体
 45                 if (isValidUser)
 46                 {
 47                     // 将输入的用户名保存到静态变量中
 48                     UserHelper.loginId = txtLogInId.Text;
 49                     // 将选择的登录类型保存到静态变量中
 50                     UserHelper.loginType = cboLogInType.Text; 
 51 
 52                     ShowUserForm();
 53 
 54                     this.Visible = false;
 55                 }
 56                 // 如果登录失败,显示相应的消息
 57                 else
 58                 {
 59                     MessageBox.Show(message, "登录失败",
 60                         MessageBoxButtons.OK, MessageBoxIcon.Error);
 61                 }
 62             }
 63         }
 64 
 65         // 验证用户是否进行了输入和选择
 66         private bool ValidateInput()
 67         {
 68             if (txtLogInId.Text.Trim() == "")
 69             {
 70                 MessageBox.Show("请输入用户名", "输入提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
 71                 txtLogInId.Focus();
 72                 return false;
 73             }
 74             else if (txtLogInPwd.Text.Trim() == "")
 75             {
 76                 MessageBox.Show("请输入密码", "输入提示", Message

补充:Web开发 , ASP.Net ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,