zoukankan      html  css  js  c++  java
  • .NET面试题总结

    1、c#垃圾回收机制

         从以下方面入手展开:  1、压缩合并算法   2、代的机制  3、GC调用终结器

    2、委托和事件

         先说它的定义:委托的本质是类,类型安全的指针,然后从用途上考虑,事件是包装的委托,但事件不是委托

    3、c#索引

        问题:索引可以是字符串吗?如何定义?

        可以从索引的本质出发,就是从编译后的IL出发

    4、装箱和拆箱

        值类型和引用类型之间的转换。频繁装箱和拆箱会导致系统性能降低,可考虑用泛型

    5、泛型

       考得不多,但我们平常用的比较多。所以对泛型的一些东西需要了解,如泛型约束等

    6、c#如何调用c++ 的dll?

       其实考查平台调用

    7、托管资源和非托管资源

        问题:1、定义  2、如何释放

       托管资源有GC释放,非托管资源由程序员自己释放,可以实现dispose接口

    8、MVC原理

       路由机制,我觉得此题,根据自己的理解回答即可,可深入回答

    9、MVC中,后台向前台页面传对象的方式

       强类型的模型绑定、ViewData、ViewBag

    10、MVC中过滤器

         问题:你用过过滤器吗?

        比如,我们经常使用授权过滤器

    11、c#扩展方法如何写?

          静态 ,this

    12、.NET Core Api 安全验证以及中间件

         采用jwt,生成token验证,比如我们用来错误处理的中间件,可以定义其它功能的中间件

    13、设计模式

         常用的设计模式:工厂、抽象工厂、代理、适配器、模板、策略、单例、观察者等,根据自己在项目中的使用情况,可以谈一谈。

    14、单点登录

    15、聚集索引和非聚集索引

    16、char,varchar、nvarchar区别

    17、数据库死锁产生的原因及解决办法

         两个进程各自占有资源,然后它们都还想得到对方的资源,而自己不肯释放资源。我觉得死锁的活该,谁叫你那么贪婪。

    18、有用过缓存吗?有用过redis吗?

         你若回答用过,面试官继续追问;你若回答没用过,他会觉得这都没有用过。

         缓存为了提高应用程序性能,因为请求数据库的次数少了。redis有很多特点:1、key-value   2、内存数据库,可以持久化到硬盘上  3、可以用作消息队列

    19、IOC、依赖注入、容器

         IOC是一种思想,控制反转,反转的是对象的控制权,把生成对象的权利交到外部。比如在方法中要使用一个Student对象,有三种方法,1、用的时候,直接New一个对象  2、从方法参数中传入Student对象   3、从容器中获取一个Student对象

    20、大文件上传与下载,如何考虑?比如说50G的大文件

    21、Linq

    22、AOP

        面向切面的编程。比如给每个Controller,添加日志功能,AOP是横向思维的一种体现

    23、SOA、Webservice、WCF

        问题:Webservice与WCF区别

        WCF是一个统一的框架,包括了remotting、Webservice,msmq,可以采用tcp和http等协议。也可以进行安全设置和验证。缺点:配置复杂

    24、有研究过Docker吗

        Docker是一个平台,解决部署问题。需要理解Image(镜像)和Container的关系,了解运行机理

    25、有研究过微服务吗

    26、sql性能优化

          查看sql执行计划、拆库、拆表、优化语句等

    27、你了解串口编程吗

         就是控制摄像头之类的设备编程,得了解计算机的基本原理

    28、js字符串和数组相互转化

    29、请设计一个递归算法

          比如5的阶乘,递归算法的一个要点是要设置结束条件,否则会栈溢出。

    30、如何考虑做一个网站

    31、线性表和链表的区别

    32、谈谈你对js闭包的理解

    33、多线程中的同步、异步、Task

         异步主要为了提升吞吐量,防止阻塞。Task主要提供了一个管理线程的接口,比如获取线程的结果、状态、取消线程的执行等

    34、用过NoSql吗

    35、用过负载均衡吗

    36、大数据处理

    37、数据库表数据量特别大时,如何优化查询,提高速度?

    38、数据库中如何循环读取数据库表中的记录?

          游标

    39、数据库中删除重复数据

    40、Session有什么缺点,微软如何改进

       这是道笔试题,我们知道IIS会回收资源,所以可能会导致Session失效

    41、有没有用过消息队列

         RabbitMQ

    42、设计一个老鼠、猫和主人的程序,要求可扩展性强,老鼠的叫声惊动猫和主人

        真无趣的一道题,用事件

    43、Vue权限管理,如何控制界面的显示

    44、WCF的部署方式

         一般在IIS上,还有人部署在Window服务上

    45、简介应用程序池

    46、冒泡算法

          c#写一个,双层循环

    47、简述应用程序域

    48、数据库设计三范式

    面试题可能会针对每个人,有所不同,但是最基础的面试题都一样。如果你把最基础的都答对,面试官试探的一些问题,也能答对,那么就是加分项。比如,大数据、串口编程,这些东西,我们可能平常接触不到,但某些公司可能要用到。没有涉及到很正常,我们涉及到的东西,面试官不一定听过,比如layui、.netcore、word插件。

  • 相关阅读:
    codeforces C. Fixing Typos 解题报告
    codeforces B. The Fibonacci Segment 解题报告
    codeforces B. Color the Fence 解题报告
    codeforces B. Petya and Staircases 解题报告
    codeforces A. Sereja and Bottles 解题报告
    codeforces B. Levko and Permutation 解题报告
    codeforces B.Fence 解题报告
    tmp
    API 设计 POSIX File API
    分布式跟踪的一个流行标准是OpenTracing API,该标准的一个流行实现是Jaeger项目。
  • 原文地址:https://www.cnblogs.com/wangqiang3311/p/10473839.html
Copyright © 2011-2022 走看看