• 20161110面试


    面向对象的三大特性是什么?

    封装、继承、多态。

    说说你对三大特性的理解?

    先说封装,对业务进行抽象,主要是以类为单元组织代码,类中的成员可以有不同的访问级别,控制信息的访问和操作,保护数据信息;

    继承:子类继承父类,使用父类的成员,保持架构的统一性;

    多态:如一个接口多种实现,这个在webform和mvc的处理类中有很好的体现;

    设计模式你了解吗?

    说说你常用的设计模式?

    你们项目中都有什么框架?

    懂linq吗?

    会用entityFramework吗?

    存储过程用的多吗?

    数据库函数用过吗?

    说说数据库优化?

    说书聚集索引与非聚集索引的区别?

    你的技术追求是什么?

    你知道掌握好理论的好处是什么吗?

    说说你们项目的,优化访问速度总体方案是什么?

    理解:排查访问慢的页面,检查慢的原因。

    如果是页面大,怎么处理?

    如果是查询数据量大怎么办?

    如果是并发高怎么办?

    如果是加载的资源多怎么办?

    你会搭建框架吗?

    理解:搭建框架是个好问题,一般的框架有什么组成呢?

    1)

    通用工具类类库

    本项目工具类库;

    model类库;

    DAL类库;

    BLL类库

    Web项目(可以有通用类文件夹、资源引用文件夹、ViewModel文件夹等)

    2)使用以服务为核心的架构

    wcf服务项目 以xxx.svc文件和配置文件为主;

    分模块的业务实现类,继承实现定义好的接口;

    分模块的业务接口定义(定义各种业务操作抽象方法),供业务实现类实现;(需要加上各种特性)

    分模块的DAL类库;

    model类库(类上加特性[DataContract],属性上加[DataMember]特性;

    3)可以根据需要调整架构。

    最简单的可以将各种类都写在一个项目中;

    也可以将文件上传单独一个项目;

    日志处理也可以单独一个项目;

    memcached你使用过吗?

    redis用过吗?memcached和redis的区别是什么?

    nosql用过吗?

    数据库优化你有什么经验吗?

    优化过一些查询语句,将in操作修改为,join操作;

    将在数据库中合并数据,修改为在代码中拼接数据;

    给某些where常用字段、order常用字段建索引;

    你们项目中错误排查你们是怎么做的?

    查看全局日志记录,大部分错误都可以通过日志查看出来;

    询问提交错误报告的人员,得到更详细的错误信息,看是否能确定错误源;

    询问上线人员,最近业务修改部分,查看代码的提交日志;

    通过测试环境模拟操作,找到错误原因;

    查看服务器的事件日志,看看错误原因;

    本地连线正式环境,进行错误调试;

    根据log4的日志做错误排查。

    你在公司的主要工作是什么?

    修改项目bug;

    配合业务查数据、处理数据;

    对新增业务进行实现;

    优化代码;

  • 相关阅读:
    [Other] 应用下载网站的APK/IPA等常见MIME设置
    [AIR] StageWebView可以和js通信
    [JavaScript] 判断设备类型,加载相应css
    [HTML] H5在webApp中的注意事项
    [JavaScript] css将footer置于页面最底部
    python 装饰器
    python while...else和for...else语法
    Linux haproxy配置参数
    Linux haproxy基础
    Linux ospf+lvs
  • 原文地址:https://www.cnblogs.com/Tpf386/p/6051702.html
Copyright © 2020-2023  润新知