腾讯.NET&PHP面试题

在整个面试过程中,作为面试者的你,角色就是小怪兽,面试官的角色则是奥特曼,更不幸的是,作为小怪兽的你是孤身一人,而奥特曼却往往有好几个助攻,你总是被虐得不要不要的~

作为复读一年才考上专科的我,遗憾的是都没有去大公司面试过,因为总是连面试的机会都没有,或者有机会可是错过了....可能不只是学历问题,简历上工作换得太多也是一个原因,而我又固执的不喜欢撒谎,明明可以靠脸吃饭,却偏偏喜欢拼才华~哈哈

以下是网友发的关于腾讯的.NET面试题,不得不说还是有一定的难度,但是话说回来,问的问题都比较大,可发挥的范围也很大,几乎每一道题都可以用一本书来解释了,至少也应该是一篇博客吧!那面试完不是要滔滔不绝谈几个小时?所以面试官就是看你们知道多少就给我说多少的态度,所以我常说面试说得难听一点其实就是纸上谈兵。

关于以下面试题的回答我只是基于自身的认识来回答的,仅供参考。

1.NET的垃圾回收机制是怎样的?

每次被问到这样的问题,我心中就千万匹草泥马奔腾而过(我觉得应该是请简述XX,要是笔试题就更坑爹了,写字不如画图)我们知道关于.NET垃圾回收机制,要完整详细的表述,我相信用一章书的内容来表述一点都不过分,可我只是略懂皮毛,但是一扯起来恐怕也要说很久,预计面试官不插话的情况下,我一口气下来可以说十几分钟。

请参考以下系列文章,

【译】.Net 垃圾回收和大对象处理

【译】.Net 垃圾回收机制原理(一)

【译】.Net 垃圾回收机制原理(二)

【译】让垃圾回收器高效工作(一)

【译】让垃圾回收器高效工作(二)

.net平台下垃圾回收机制

.......省略N篇

2.c#2.0出现了泛型,为什么要创建泛型这种机制?

请参考我的文章:按自己的想法去理解事件和泛型(C#)

3.NET的值类型存储在栈中,引用类型存储在堆中,这句话对不对,如果不对,为什么?

这果断是埋了坑等别人跳,这句话显然是有问题的,因为引用类型的成员变量分配到“堆”上,引用类型的值分配在堆中,但是还会在栈上存一个该引用类型变量的指针。

请参考:浅谈值类型和引用类型在堆和栈中的存储一

4.NET的装箱和拆箱为什么效率比较低?讲一下装箱和拆箱是如何实现的?

将内存中的数据在堆和栈中传来传去肯定慢些啊。

浅谈.NET中的类型和装箱/拆箱原理

5.在给DLL文件加密时,为了防止别人反编译有几种方式?为什么无法反编译,但是CLR可以正确的加载?

如何保护.net中的dll文件(防破解、反编译)

6.讲一下应用程序域和程序集的结构,以及运行原理?

题目说是讲一下,那就只讲一下喽,问范围这么大的问题,通常问的问题越大水越深,一般你能回答得越久说明你会得越多,顶住就行了。

面试题14 简述程序集和应用程序域

7.Dapper.NET的效率为什么比较高?讲一下它的运行原理?

工作这么多年了,真的没有用过Dapper.NET这个轻量级的ORM框架,没用过那怎么回答呢?那不就挂了?挂得一点都不服气...

Dapper.NET——轻量ORM

关于Dapper.NET的相关论述

8.怎样实现SignalR的多服务器协同运行?简单说一下SignalR的运行原理?

 我相信不是每个.NET程序员都用过SignalR吧,运行原理还好说,多服务器协同运行这个...这个...没用过的岂不是又挂了?

官网:https://www.asp.net/signalr

如果去腾讯面试,好吧,虐到我了,因为工作6年多了,从来没用过Dapper.NET和SignalR。

--------------------------------------------------邪恶的分割线,以下是PHP面试题----------------------------------------------------------------------

应用开发技术初面题

1.写一个Ajax请求查询Mysql数据库的staff_info表所有记录

表名staff_info和记录如下

uin

user_name

nick_name

ext_info

35593

tefchen

chenjh

no ext info

35594

ziyu

zifeiyu

1234567

返回的json结构内容为

{"result":0, "users":[{"uin":35593, "user_name":"tefchen", "nick_name":"chenjh"},{"uin":35594, "user_name":"ziyu", "nick_name":"zifeiyu"}]}

追问:数据库记录数10万时怎么修改,100万时怎么修改?

2.不使用CURL函数分别写出client.phpserver.php两个文件内容.

client.php模拟浏览器客户端向server.php发送如下HTTP数据包.

server.phpclient.php输出md5(username+password)后的结果

POST http://localhost/server.php HTTP/1.1

Accept: image/jpeg, image/gif, image/pjpeg, */*

User-Agent: Mozilla/4.0

Content-Type: application/x-www-form-urlencoded

Host: localhost

Content-Length: 34

Connection: Keep-Alive

Cookie: HOSUPPORT=1; UBI=fi_Pnc;

username=a&password=c&action=login

追问:增加表单字段数量和Cookie验证以及https支持

3.用以下公式实现一个算圆周率位数的函数PI($len)

$len表示小数点后的位数.

比如PI(4)的返回3.1415   PI(5)返回3.14159

4.分别简述第1题在

总数1台服务器时

总数2台服务器时

总数4台服务器时

总数16台服务器

总数256台服务器

的不同代码部署实现方法,不限开发语言,自由设计,可以用图片,伪代码,辅助描述。

高级应用开发笔试

问题的情景分析和解决

曾总是一家运营新成立电商购物类网站公司的老板,今天收到一位客户的投诉说网站访问超级慢,好不容易购买成功的折扣商品,最后还不给兑现。

于是曾总先叫来了客服小李,

曾总:这个商品为什么不给他发货?

小李:曾总,因为我们这个商品超卖了,我们只进货了100件库存,但是卖出去200件。

然后曾总叫来了负责订单的小王,

曾总:为什么我们的库存和订单数目对不上?

小王:曾总,我这里查看订单没有问题,确实成功被下单了了200件。

最后曾总叫上了负责整个技术团队的小柯,

曾总:都说没有问题?那到底问题哪里?

小柯:曾总,我查过了我们前几天做了一个秒杀活动,由于对参加活动人数的估计失误,导致了这个问题。

请你从技术上的角度帮曾总分析一下这个事件,

1.问题存在哪里?有哪些问题?

2.小柯团队可能采用的技术方案是什么?

3.如何在将来避免这些问题,如何改进这个这个技术方案?

应用开发技术复面题

场景:

商演公司甲要在体育馆丁办一场演唱会,已知丁体育馆为正圆形平均分为ABCDE五个扇形形状。不计内场座位总计约8000余个。

现状:

现已有的购票排座系统一次只能购买一张座位票,并且在购买两张或两张票以上时不能达到尽可能保持座位相近和多人拥挤抢购行为。

注:

1.必须提交一个可以编译或运行的包含核心算法的demo代码

2.包含售出了2000个随机分布的座位的基础数据

3.除去明确给出的信息外,其他信息请自行假设,并写出来。

4.不限开发语言工具,可以使用伪代码,图片等辅助描述代码的架构服务器架构

问题:

1.请你帮忙设计一个系统解决,解决保持座位相邻的问题

2.假定演出舞台在E区,场馆B区的正中间两排放了一块LED大屏幕,请分析一下观众在B区购座时更倾向于 大屏幕的 前,后,左,右哪个方向。并说明理由。

这些PHP的题目已经和语言没太大关系了,我一看就算法就头晕,555~

其实我感兴趣的是,是不是面试者挺的时间越长成功率越高,就像小怪兽在奥特曼面前坚持得越久就表示越能打一样,哈哈~

posted @ 2017-03-20 09:35  邹琼俊  阅读(13885)  评论(41编辑  收藏  举报
-->