
软件实施工程师的工作是软件产品服务主线的一个决定性环节,软件的成功离不开实施。主要负责的工作内容有:
一、工程实施:包括常用操作系统、应用软件及公司所开发的软件安装、调试、维护,还有少部分硬件、网络的工作;
二、现场培训:现场软件应用培训;协助项目验收;负责需求的初步确认;把控项目进度;与客户沟通个性化需求;负责项目维护等。
今天小优就为大家分享一些实施工程师面试时,最常见的技术问题。希望能帮助各位同学在求职面试中,顺利通过!


1、如何理解前端模块化
2、说一下 Commonjs、AMD 和 CMD。
一个模块是能实现特定功能的文件,有了模块就可以方便的使用别人的代码,想要什么功能就能加载什么模块。
Commonjs:开始于服务器端的模块化,同步定义的模块化,每个模块都是一个单独的作用域,模块输出,modules.exports,模块加载 require()引入模块。
AMD:中文名异步模块定义的意思。
requireJS 实现了 AMD 规范,主要用于解决下述两个问题。
1.多个文件有依赖关系,被依赖的文件需要早于依赖它的文件加载到浏览器
2.加载的时候浏览器会停止页面渲染,加载文件越多,页面失去响应的时间越长。
语法:requireJS 定义了一个函数 define,它是全局变量,用来定义模块。
requireJS 的例子:
//定义模块
define(['dependency'], function(){
var name = 'Byron';
function printName(){
console.log(name);
}
return {
printName: printName
};
});
//加载模块
require(['myModule'], function (my){
my.printName();
}
requirejs 定义了一个函数 define,它是全局变量,用来定义模块:define(id?dependencies?,factory)
在页面上使用模块加载函数:require([dependencies],factory);
总结 AMD 规范:require()函数在加载依赖函数的时候是异步加载的,这样浏览器不会失去响应,它指定的回调函数,只有前面的模块加载成功,才会去执行。因为网页在加载 js 的时候会停止渲染,因此我们可以通过异步的方式去加载 js, 而如果需要依赖某些,也是异步去依赖,依赖后再执行某些方法。
3、实现一个两列等高布局,讲讲思路
5、闭包有什么用?


