知乎话题:如何面试.NET/ASP.NET工程师?
No.1
初级:
1.对 C#(推荐) 或 VB 语言直至与 .NET 4 (目前为止)相匹配的版本,绝大多数特性熟悉并使用过
2.通晓 HTTP 协议的结构,及 ASP.NET 与 HTTP 请求、Web 页面之间的关系
3.能独立运用 HTML 构建页面,并掌握一定的 JavaScript、CSS 知识
4.能独立开发具有业务功能的 Web Form 或 MVC 应用程序
5.能完成到本地 IIS 和服务器上的发布,有 Web 安全意识
中级:
1.熟练使用 .NET 4 及更新版本的特性,知晓不同大版本之间的差异,以及各版本平台、语言和开发工具的对应关系
2使用 ASP.NET MVC 以及 Web Form 开发项目,并了解两种机制的异同,根据项目场景作出合适的选择
3.知晓 IIS 7 集成模式,并了解与经典模式的异同;熟悉 http://ASP.NET 运行机制,独立完成模块和处理程序的开发
4.有系统分层的概念,能使用面向对象的方法创建模型和服务,能独立组织出解决方案的结构
5.运用设计工具独立设计数据库,运用 ORM 工具与多种数据源的交互,知晓各种数据源的大概差异
6.至少使用过一种源代码管理工具,参与过 2 人以上协作完成的项目
高级:
1.至少对一种其他的服务器开发平台(如 LAMP、Java、Python、Node.js 等)有深入的了解,并清楚其与ASP.NET 之间的主要区别;明确 ASP.NET 在整个项目布局中所处的位置
2.对 C# 3.0 以上版本(或 VB 对应版本)有深入研究,熟练地处理多线程开发;合理运用异步和 COM 组件等功能解决问题
3.深入了解 ASP.NET 运行机制,对应用程序域、配置、模板引擎、编译、请求处理管线等十分了解
4.能独立完成ASP.NET Web Form 中用户控件、服务器控件的编写;对 ASP.NET MVC 中的路由机制、控制器调用方式、过滤器、模型绑定与验证等特性十分熟悉,并能根据现有机制轻松完成扩展与 定制
5.能结合对 WCF 和 Web API 等技术的应用,构建分布式的系统
6.清楚 IIS 的集成模式与经典模式、请求过滤与跟踪、信任级别等特性与功能以及应用程序池进程数量、进程模型、回收等特性与功能对应用程序的影响
7.对项目的性能、压力和安全性要求有明确的认识,熟练运用 http://ASP.NET 输出缓存、进程内或分布式数据缓存提高性能;合理配置 IIS 输出缓存、压缩;了解常见的 Web 攻击方法并加以防范
8.熟知请求和响应在各个过程的状态,并适时完成诸如请求流预处理、拦截、缓存、统计等功能
9.对常见设计模式和思想非常熟悉,合理在项目中加以应用;熟练运用常见的开源和第三方库,结合项目需求,合理选用 DI、ORM 等用于提升开发效率的工具
10.能独立完成大型项目的架构,独立完成系统中日志、缓存、数据处理等基础功能的开发计划
11.对整个项目数据库设计、界面实现与优化、领域模型和数据服务、调试与测试、部署与服务器配置均能完整掌控
12.能完成组织和协调 5 人以上人员参与的项目的开发计划和工作分配,把握开发进度,激励团队前进
当然,对于更高级的人才,上不封顶。
No.2
IF你是想要开发小型网站,那么你需要熟练C#语法,ASP.NET 的基础web知识以及SQL知识和MSSQL基本用法,一个月的时间就能写出一个小型的简陋的博客。 然后你想要让她界面布局变得合理漂
亮,你需要学习网页方面的HTML和css;如果你要增加动态效果,你需要学习JavaScript语言,来提升整个网站的动态效果。这样你的比较好的博客就能拿出手了。
这个过程中用的技术有:C#基础语法,各种控件的基本用法,SQL知识,操作MSSQL数据库的命令,HTML,CSS,JavaScript。做到先能用基础的语法,这样变学边练习。
ELSE IF你想要开发大型的企业应用,基础知识的学习例如上图中提到的操作系统、数据结构、算法、设计模式已经其他的够专业方面的知识。
等你跨越了第一阶段的时候,你接触到了更多这方面知识领域的人,通过他们更能找出哪方面你最缺少的知识。这个时候,不是说你先学会上面那张图上所有的知识,看完所有的书,你才能动手去做这
个,而是你做的过程中去学习。在《程序员的思维修炼》中提到了德雷福斯模型,新手 ——高级新手——胜任者——精通者——专家。很多人是新手,但更大的一部分人是高级新手,了解基础知识,
但在需要实际用的时候,却又不但用到实际的工作中。所以所谓入门,就是让你去解决遇到的问题运用自己所学到知识。
No.3
你可以去如鹏网学学杨中科老师的视频!这样我觉得还是能比较快的提高你的asp.net的水平的!
应你的要求,我今天就详细讲讲我的学习经验吧,不过可能我的不是最终的捷径。
首先,你照着杨老师给的视频的路线走,坚持吧视频看完,当然看的同时必须要敲代码,就算你照着视频一字不漏的敲下来也好,这样绝对比你光看视频不敲代码好很多!
看完后,你可以试着做一个新闻系统之类的项目实战下,然后最开始可以都用服务器控件,包括ajax。做完后,你慢慢的尝试着放弃服务器控件,ajax就用杨老师将的jquery来做,这些都做完后,别人
会发现你真的不同了,但是你自己会发现你不知道的东西越来越多!呵呵,是不是迷茫了?这是必然的,因为你学的多了,知道的自然就会变多,当然不知道的也从知道的里头变的多起来!可能有点绕
,慢慢体会吧!
然后,你可以开始看一些web的架构,三层经典架构,工厂模式,等等。
然后再可以看看silverlight和wcf!
同时,你也可以看看数据结构的东西,比较好的公司去笔试和面试的时候都会考数据结构的!
这就是我大概的学习过程吧!希望可以切磋切磋!
No.4
1.语言:C# 非常熟练
2..NET框架,熟练掌握ASP.net基本开发技能,一定项目开发技能和经历
3.熟练掌握SQL Server,熟练编写T-SQL语句,了解SQL性能优化
4.熟悉 JavaScript 脚本编写、熟练使用 Ajax 技术。
5.精通XML,能基于DIV+CSS构建页面。
6.熟练掌握.Net开发框架,熟悉.Net MVC/MVP编程架构;理解面向对象(OO)编程思想,熟悉常用的设计模式,熟悉UML。
7.熟悉Flash或Silverlight中至少一种开发技术,具备一般网页动画的开发能力。
8.熟悉TCP/IP,熟悉C# Socket编程;熟悉WPF。
其它要求:
1.思维能力:面对非常棘手的问题,能够恰当地运用已有的概念、方法、技术等多种手段,分析问题产生的原因,找出最有效的应对解决办法;
2.团队合作:愿意帮助其他成员解决遇到的问题,无保留地将自己所掌握的知识与技能传授给其他成员;
3.主动性:主动挖掘潜在问题,寻找适当机会,并采取必要的措施应对机遇与挑战。
.NET技能分析的更多相关文章
-
D10 基本数据类型(各种职业的技能分析) 主要为 int 和 str
在python中具有魔法的 职业 类型 召唤每种职业 在pychar 中 打出该职业的名称 按住Ctrl 光标在该职业名称上 点击就能看该职业的技能 1 数字 int a = " ...
-
软件项目量化管理(CMMI高成熟度)实践经验谈——之项目管理过程策划篇
续:软件项目量化管理(CMMI高成熟度)实践经验谈--之概述篇 二.项目管理过程 软件开发项目管理过程,从项目全视角来看,分为售前.售中.售后等三个大的阶段.本文所谈的是售中阶段项目管理过程,在售中阶 ...
-
R语言-文本挖掘
---恢复内容开始--- 案例1:对主席的新年致辞进行分词,绘制出词云 掌握jieba分词的用法 1.加载包 library(devtools) library(tm) library(jiebaR) ...
-
评点SAP HR功能及人力资源管理软件
评点SAP HR功能及人力资源管理软件 本文导航 第1页:my SAP 人力资源软件 第2页:my SAP HR协同功能 第3页:组织结构管理 第4页:mySAPTM HR的战略功能 第5页:集成 ...
-
Python----初次见面,请多关照!
1.计算机的最基本认识 CPU(大脑) 3GHZ + 内存(DDR4) + 主板 + 电源(心脏)+ 显示器 + 键盘 +鼠标+ 显卡 + 硬盘 80MB/s 操作系统分为: windows 家用 l ...
-
swoole入门abc
1. 入门abc 1.1 github账号添加 第一步依然是配置git用户名和邮箱 git config user.name "用户名" git config user.email ...
-
20155229-付钰涵-分析自我技能延展到c语言学习状况
我的小技能 我记得幼儿园时表演的舞蹈,也记得从水彩到素描的学习,还记得小学和初中获得的钢琴省级奖项. 舞蹈止于一年级,绘画止于三年级,钢琴从学前班到高一那十年的时间里有过断续. 03年-04年的那个冬 ...
-
技能提升丨Seacms 8.7版本SQL注入分析
有些小伙伴刚刚接触SQL编程,对SQL注入表示不太了解.其实在Web攻防中,SQL注入就是一个技能繁杂项,为了帮助大家能更好的理解和掌握,今天小编将要跟大家分享一下关于Seacms 8.7版本SQL注 ...
-
「白帽挖洞技能」YxCMS 1.4.7 漏洞分析
这几天有小伙伴留言给我们,想看一些关于后台的漏洞分析,今天i春秋选择YxCMS 1.4.7版本,理论内容结合实际案例进行深度分析,帮助大家提升挖洞技能. 注:篇幅较长,阅读用时约7分钟. YXcms是 ...
随机推荐
-
[WPF系列] 高级 调试
调试工具 ImageBrush出现TypeConverter问题 'Provide value on 'System.Windows.Baml2006.TypeConverterMarkupExt ...
-
NSUserDefaults:熟悉与陌生(转)
转载自:http://swiftcafe.io/2016/04/04/nsuserdefaults/?hmsr=toutiao.io&utm_medium=toutiao.io&utm ...
-
SilverFoxServer出炉!!
SilverFoxServer是啥?各位看官搜一下SmartFoxServer便知 是一套服务端+客户端通迅框架,快速搭建起回合制,棋牌类的联机 网页游戏 SilverFoxServer的特点包括 用 ...
-
U-Boot编译过程解析
解压u-boot-2010.03.tar.bz2就可以得到全部U-Boot源程序.在顶层目录下有29个子目录,分别存放和管理不同的源程序.这些目录中所要存放的文件有其规则,可以分为3类. ● 与处理器 ...
-
3.C#中的多重委托
阅读目录 一:多重委托概述 二:多重委托实例 一:多重委托概述 1.委托的调用其实是一个调用列表,可以同时调用多个不同的方法 2.第1个委托加上第2个委托赋予第3个委托,相当于把两个方法按顺 ...
-
夺命雷公狗ThinkPHP项目之----企业网站4之数据库连接
我们众所周知,我们在开发的时候网站是需要连接上我们的数据库的,毕竟数据库是网站的最核心之一嘛,废话不多说直接开干.... 我们先找到:config.php文件对她进行修改,因为我们网站前后台都用到数据 ...
-
Grunt设置
Grunt完成对LESS实时编译. 安装 安装grunt需要先安装node.js. 之后需要借助npm来安装grunt-cli,在cmd中npm install -g grunt-cli.(测试gru ...
-
async 异步流程控制规则
github 学习async网址 : https://github.com/caolan/async/ 1.Async 函数介绍 async 主要实现了三个部分的流程控制功能 1.集合:Collect ...
-
cpp-variable-lifetime
#include <cstdio> #include <iostream> using namespace std; class TmpClass; void FuncScop ...
-
UVA796 - Critical Links(Tarjan求桥)
In a computer network a link L, which interconnects two servers, is considered critical if there are ...