posts - 609,  comments - 13,  views - 64万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

数据库

1.数据库唯一索引unique、聚集索引clustered、非聚集索引nonclustered的用途和区别,优缺点:https://www.cnblogs.com/xiaoweigogo/p/7778781.html
语法:create [unique|clustered|nonclustered] index ix_name on tableName(column1 desc|asc,column2 desc|asc,...)
索引不生效的SQL语句:对索引使用了函数、like、in、数据类型转化cast、负向比较where 1=id
2.数据库函数和存储过程的用法和区别。
区别:https://www.cnblogs.com/eer123/p/7880032.html
函数:https://www.cnblogs.com/xsj1989/p/5354910.html
存储过程:https://www.cnblogs.com/xiangzhong/p/5038338.html

3.数据库游标的使用。
4.数据库的事务的使用语法,优缺点,事务的级别,分布式事务。
5.数据库作业、定时计划。
6.什么是NoSql。(优缺点)
7.什么是非关系型数据库,什么是关系型数据库。(优缺点)
8.非关系型数据库MangoDB,redis,用途。
9.MySql的使用,自定义函数,存储过程,事务,锁,索引,表分区;mysql的MyISAM和InnoDB的区别。
10.具有一定的数据库设计经验
11.sql优化:http://www.cnblogs.com/hgmyz/p/7039597.html

C#

1.session、aspx页面、cookie 的生命周期

2.MVC请求机制

3.冒泡排序,很少使用,一般直接用list.Sort默认升序,降序list.Sort((x, y) => -x.CompareTo(y));

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int[] arr = new int[] { 2, 3, 9, 6, 3, 5, 10, 8 };
for (int i = 0; i < arr.Length - 1; i++)
{
    //第i趟比较
    for (int j = 0; j < arr.Length - i - 1; j++)
    {
        //开始进行比较,如果arr[j]比arr[j+1]的值大,那就交换位置
        if (arr[j] < arr[j + 1])
        {
            int temp = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = temp;
        }
    }
}
 
for (int i = 0; i < arr.Length; i++)
{
    Console.Write(arr[i] + ",");
}

 自定义排序:需要排序的类实现IComparable接口:stus.Sort();,或者单独一个类实现这个接口:stus.Sort(new CComparer());,或者在拉姆达表达式中CompareTo:stus.Sort((x, y) => x.age.CompareTo(y.age));

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
public class CComparer : IComparer<Student>
    {
        public int Compare(Student left, Student right)
        {
            if (left.age > right.age)
                return 1;
            else if (left.age == right.age)
                return 0;
            else
                return -1;
        }
    }
    public class Student : IComparable<Student>
    {
        public int age { get; set; }
        public string name { get; set; }
        public int CompareTo([AllowNull] Student other)
        {
            if (this.age > other.age)
            {
                return 1;//升序
            }
            else if (this.age == other.age)
            {
                //age相同,按名称默认升序
                return this.name.CompareTo(other.name);
            }
            else
            {
                return -1;//降序
            }
        }
        public override string ToString()
        {
            return this.age + "/" + this.name;
        }
    }

 4.线程、委托、事件、多线程异步执行

5.设计模式(单例、简单工厂、抽象工厂、策略模式、观察者模式、命令模式、装饰模式等基本的模式)

6.IOC控制反转,IOC容器;DI依赖注入。

7.熟悉一到两种ORM框架(NHibernate、EntityFramework、ActiveRecord、Dapper等)

8.C#中Struct和Class的区别

9.WCF 的使用;WCF的ABC是什么(Address 地址、Binding 绑定、Contact 契约)。

10.MVC的仓储Repository的使用

11.WebApi如何实现跨域(jsonp、CORS),具体方法看我写的文章。

12.JS是如何面向对象的;js闭包;二维数组;浅copy与深copy;JS继承。

13.SSO单点登录 解决方案;单设备登录,同一个账户只允许在一台设备上登录(仿照QQ)。

14.Bootstrap的使用;jquery、ext、value.js、angularjs、jstree

15.大数据的处理

16.分布式系统(负载均衡、CDN等)

17.系统测试:压力测试、性能测试;掌握测试工具的使用。 

18.提高性能的方法:https://www.cnblogs.com/hgmyz/p/7039587.html

19.Memcached使用:https://www.cnblogs.com/xsj1989/p/9089924.html

暂时这么多,都是我面试的时候人家问我的问题,供参考。

写了这么多,真觉得软件开发不是人干的,要会这么多东西,都TM是超人么???

架构师面试:https://www.cnblogs.com/cyq1162/p/9073634.html
Redis面试:https://www.cnblogs.com/extjs4/p/14433962.html

posted on   邢帅杰  阅读(233)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示