从几道开发工程师面试题说起
1.销售订单的实现
a)订单包含以下信息:订单号、订单日期、客户名称、商品编号、商品名称、数量、单价、金额
b) 支持一个订单包含多个条商品信息
c)SQL脚本创建表及考虑性能及表已存在的情况
d)代码实现订单保存过程,要求使用的ADO对象,部分代码可用伪代码实现,要求保存的信息完整,有数据正确性检查
2.写一个函数实现以下功能:输入的值为整数,输出为整数,要求输出的整数是将输入的整数倒转,比如输入的是123,则输出的是321,要求代码正常运行,不报中断错误。
3.谈谈你对索引的认识,及索引有那些类型,各有什么区别及作用。
4.大概介绍一下ASP.NET的页面生存周期
(力求简单问题复杂化,非标准答案,谨慎参考,如有谬误,也请阅者自行纠正)
1、根据a)、b)可作领域模型,在PowderDesigner15中可创建OOM模型,实际上就是没有行为的类图。
以上三个类是实体类,ORM以后就是数据库之中的三个关系表。从需求信息中简单抽象出类的方法大概就是找名词游戏吧,比如a)中的"订单"、"客户"、"商品",有了这些“类”就可以再找他们的属性,最终可构建完整的实体类。
创建数据表的时候除了创建约束,注意数据类型及长度,在性能方面考虑还可做的是诸如删除触发器,以避免长期的无用数据累积。
代码实现的数据检验方面,可以在Property里面做文章。例如:
假设OrderID是自动生成的,希望在程序里面是只读的。
private string orderid;
public string OrderID
{
get{return orderid;}
}
public string OrderID
{
get{return orderid;}
}
客户姓名的不可空检查
Code
==完成15% ==