自编作坊程序员面试题

 

一、简述题:

任选3题,面试官指定1题作答,有1次换题机会,口述回答(5分钟准备,5分钟作答)

另外自选1题笔答。或由面试官指定一题笔答,允许上网查询资料。(15分钟以内)

l? Java&JavaWeb:

1、对面向对象的理解(提示:含义、特征、与面向过程的区别)

2、struts2或其他mvc框架与servlet的区别,优劣点如何

3、举出三个以上Java容器类,并写明应用场景

4、抽象类和接口的区别

5、redirect和forward的区别

6、使用配置文件和注解进行配置的优劣理解

7、在人人网(www.renren.com)中点击一篇日志,url为:http://blog.renren.com/share/84463276/14252290961?from=0101010202&ref=hotnewsfeed&sfet=102&fin=3&ff_id=84463276? 点击之后,页面显示了这篇日志的内容。在技术层面描述这个过程。(提示:第一步,浏览器向服务器提交了http请求,内容为:xxx)

l? Html&Js

1、对Html语义化的看法

2、对table布局和div布局优劣的看法

3、js验证和后台验证的适用场景

4、对js闭包的理解

5、对html5和css3的了解

6、id和class的适用范围

7、列举两种以上流行浏览器(同一浏览器不同版本也可以)性能和html、js解析逻辑的差别

l? 数据库:

1、列举两种以上流行的数据库,说出他们在sql语法上的任意一点差别,谈谈对其应有范围的理解

2、对Hibernate或ibatis的理解,优势和劣势各是什么

3、列举两种以上数据库中可以存储字符串的数据类型,并说出它们的差别和适用范围

4、列举两种以上Mysql数据库的存储引擎,并说出它们各自的适用范围

5、采用任意一种流行数据库,设计数据库结构满足以下需求,写出sql:

销售员工信息(姓名、性别、出生年月、入职时间),员工分为组长和普通员工两种。

每个销售项目(名称、项目开始日期、结束日期、总金额、当前进度,项目情况)由一名组长和若干名员工负责,不同的项目的有不同的项目情况,如售楼项目有楼楼盘地址、面积,工程项目有监理单位名称,招标单位名称等

l? 杂项:

1、谈谈对软件配置管理(SCM)的理解

2、软件公司有不同的软件项目,每个项目存有若干文档(500个文件左右),2~3份源代码目录(2000个文件左右)。公司成员有10人,其中5人处于同一场所,另外5人分布在天津市区、广州、新加坡。设计一套最优化的文件共享方案,使大家可以协同开发。

3、谈谈你对svn和git的优劣理解

二、业务理解题:

任选一题,笔答(10分钟以内)

1、阅读某行政审批制度,设计一套相应的电子办公系统,描述其功能

2、任选一家电子邮箱网站,为只具有计算机基础操作知识的人写一份使用说明书,从注册开始,描述如何给lzmgzyx@gmail.com发送一份简历

三、项目管理题:

笔答(10分钟以内)

某公司要开发一款员工档案管理系统,如果由你负责这个项目,你将如何安排项目的人员、进程?

四、程序设计题:

可以选择上机、手写代码或描述流程。(30分钟以内)

在html页中设置三个input,每个input输入一个数字,点击提交按钮之后,将数据提交到后台,经过计算之后,在新页面中显示这三个数的和

提高(可任选若干项实现,也可以实现):

1、验证输入必须为数字,否则不允许提交

2、如果输入的为三个相同的数字,不允许提交

3、新页面中按照数字顺序由小到大显示:【数字1】+【数字2】+【数字3】=总和

4、支持数字大于9223372036854775807的输入

5、支持形如:123,456,789带有分割符号的数字输入

6、支持前台只写一个input,用标点符号分割,后台程序效果不变,如输入1;2;3,显示6

7、在google网站(www.google.com)的搜索框中输入1+1+1,搜索结果的最上方会显示Google计算机的计算结果。考虑利用这一工具实现上述的功能