一 背景
修真院在默默的做小课堂,每一个任务之下都设置了深度思考。这些深度思考,都是修真院的师兄们在教师弟的过程中,总结,整理,归纳而来的。
修真院强烈建议,在做任务的时候,主动去思考这些问题,去找这些问题的答案,给出自己的理解,然后再去看看别人是怎么看的。
基于这种思路,北京,郑州,武汉,成都都开始了小课堂活动,由线下的师兄自己整理,做成PPT,给其他的师兄做分享,每天晚上7点都有,而且是有直播的,也欢迎附近的朋友随时来指导~
很多人建议过我,要我自己去找老师来安排讲这些课,我想了很久,还是觉得应该让线下的师兄们自己来做这些事儿。
一个原因是这是对线下的师兄有好处的事儿,技术分享是工程师的天性。另一个原因是也想让其他人感受到一个真实的氛围。
看看这些线下的师兄们,学的好不好,哪些做的不多好,哪些做的特别好。
二 WEB工程师课表-Version0.0.1
【CSS篇】
task1
- 如何理解盒模型及其content、padding、border、margin?
- 每个HTML文件里开头的Doctype有什么作用?
- 如何配置nginx,实现在手机上查看页面?
- 常见的inline元素、block元素、inline-block元素有哪些?它们之间有什么区别?
- 如何使用浏览器的F12调试页面?
task2
- svn和git有什么区别?
- Git和githup有什么关系?
- 如何基于svn用webstorm将代码上传至github?
task3
- web工程师如何利用PS切图以及从UI图中获取所需信息?
- 开发过程中应该遵守哪些编码规范和class命名规范?
- px、em、rem、%、vw、wh、vm等单位有什么区别?
- 如何进行自适应网页设计?
- viewport有什么作用?
- css有哪些选择器,优先级如何计算?
task4
- position定位有哪几种?各有什么特点
- 哪些css属性可以设置百分比,其计算原则是什么?
- 常见的表单元素有哪些?各有什么属性?(html5新属性)
- 如何理解HTML结构的语义化?
task5
- css可以绘制哪些常见的特殊形状?(用纯CSS创建一个三角形的原理是什么?)
- 如何理解vertical-align与line-height?
- 请解释一下CSS3的Flexbox(弹性盒布局模型)以及适用场景?
- title与h1、b与strong、i与em、img的alt与title、src与href有什么区别?
task6
- 什么是CSS sprites?
- 什么是浮动?有哪些清除浮动的方法?
- rgba和opacity的透明效果有什么不同?
- display和visiblity有什么区别?
task7
- 如何实现轮播图?
- 主流浏览器内核有哪几种?
- 超链接访问过后hover样式就不出现的问题是什么?如何解决?
task8
- 什么是外边距重叠?重叠的结果是什么?
- 去除inline-block间距有哪几种方法?
- div+css的布局较table布局有什么优点?
- 如何做默认样式重置?resetting 和 normalizing 之间有什么区别?
task9
- 如何改变默认radio和select的样式?
task10
- bootstrap中 row container 和 col等是什么个关系?
- 简述下bootstrap的栅格系统。
- sass、less是什么?如何使用?
- 媒体查询如何使用?
task11
- css有哪些方式可以实现垂直居中?
- 自适应和响应式有什么区别?
task12
- 请描述一下cookies,sessionStorage和localStorage的区别?
- 描述z-index和叠加上下文是如何形成的请描述 BFC(Block Formatting Context) 及其如何工作
- 谈谈以前端角度出发做好SEO需要考虑什么?
- 请用css写一个简单的幻灯片效果页面经常遇到的浏览器的兼容性有哪些?原因,解决方法是什么,常用hack的技巧 ?
- Quirks模式是什么?它和Standards模式有什么区别
- HTML5的离线储存怎么使用?知道什么是微格式吗?谈谈理解。
- 在前端构建中应该考虑微格式吗?知道css有个content属性吗?有什么作用?有什么应用?
【JS篇】
task1- 定时器有哪些用法?
- ID和Class有什么区别?
- F12Console的用法,以及如何Debug程序
task2
- 常见Dom操作有哪些?
- JS的有哪几种传参方式?对一个数组 filter、some、map、foreach的操作分别是什么作用?
- 闭包是什么?用处如何?
- return的用法是什么?若用在for循环中,还会执行下一次循环吗?
- 如何实现数组深拷贝和浅拷贝?
- 全局变量和局部变量如何区分?其分别的作用域是什么?
- local storage和sessionStorage的区别以及用法?
- 简述原型链是什么,有什么用处?若想访问一个对象的原型,应该使用什么方法?
- 继承有几种方式,分别是什么?想要实现继承可以使用什么方法?
- 如何验证程序是否完成,测试以及修正Bug
task5
- json是什么,如何处理转义?
- 什么是AJAX?network中的请求信息,headers中的每一项分别是什么意义?
- 为什么有时我们需要配置hosts来本地测试?和什么有关?若不配置hosts会影响什么?
- this是有什么用,在什么情况下会使用?有什么注意事项。
- 如何配置nginx,通过域名访问本地网页?
- 如何配置跨域?跨域几种解决方案(简述jsonp、xhr),重点是jsonp xhr 什么是rest风格,get 与 post的区别 application json 与form表单的区别
- 如何使用PostMan?
task6
- 如何使用富文本编辑器?
- 简述JS中的event delegate是什么?
- cookie是什么?有什么用处?cookie session的区别?cookie的失效期?
task7
- 正则表达式中,贪婪模式与非贪婪模式的区别
- 使用angular框架的网站,默认url中会带有”#” 如何将其去掉?
- angular之中,$state $watch $scope $rootScope 分别是什么angular 路由angular js中的依赖注入是什么?有什么作用?与不用依赖注入的其他框架相比,有何优点?
- angular 指令
task8
- Validator 如何进行表单验证?
- 如何使用Bootbox ?
task9
angular有哪些优缺点angularjs双向绑定后,发生了什么事情?是什么可以让view层和controller层进行绑定的?
task10
- RequireJS 前后端分离(SPA等)与不分离(JSP等)的工作流程分别是怎样的
- gulp前端在做网页时怎么优化SEO
- 异步编程有哪几种方法来实现?
- AMD(requireJS)、CMD(commonJS)的区别,分别有哪几种典型的框架 同步、异步操作有什么区别?那些操作是同步,那些是异步的?
三 未来会做什么
这些内容还在不断的更新完善中,还在随时调整。
现在的这些问题,不管是刚入门的小菜鸟,还是已经入行的大神,都可以关注指导一下。
在接下来,会做这些事儿:
1.每一个深度思考对应的技能点是什么。
2.每一个深度思考的PPT,过往视频和直播。
3.深度思考的分级,合并,拆解等内容上的完善。
4.深度思考的相关部分更新到官网,方便查找,收藏,评论,投票。
5.线上的内容会以小额收费的方式进行,收费的规则还是会跟之前修真院的风格一样,第一个人免费,第二个人+1元(暂定),第三个人+2元(暂定),一段时间之内,如果没有人付费就降价。
所以这个内容倒底值不值钱,我不决定,交给你们用钱来决定。而在线上没有开发出来之前,全部是免费开放给所有人。