‘壹’ 程序员分前端与后端,那么后端程序员都做些什么看完就知道了
我刚开始做Web开发的时候,根本没有前端,后端之说。
原因很简单,那个时候服务器端的代码就是一切: 接受浏览器的请求,实现业务逻辑,访问数据库,用JSP生成HTML,然后发送给浏览器。
即使后来Javascript在浏览器中添加了一些AJAX的效果,那也是锦上添花,绝对不敢造次。因为页面的HTML主要还是用所谓“ 套模板 ”的方式生成:美工生成HTML模板,程序员用JSP,Veloctiy,FreeMaker等技术把动态的内容添加上去,仅此而已。
那个时候最流行的图是这个样子:
在最初的J2EE体系中,这个 表示层 可不仅仅是浏览器中运行的页面,还包括Java写的桌面端,只是Java在桌面端太不争气, 没有发展起来。
每个程序员都是所谓 “全栈”工程师 ,不仅要搞定HTML, JavaScript, CSS,还要实现业务逻辑,编写访问数据库的代码。等到部署的时候,就把所有的代码打成一个WAR包,往Tomcat指定的目录一扔,测试一下没问题,收工回家!
不差钱的公司会把程序部署到Weblogic,Websphere这样的应用服务器中,还会用上高大上的EJB。
虽然看起来生活“简单”又“惬意”,但实际上也需要实现那些多变的、不讲逻辑的业务需求,苦逼的本质并没有改变。
随着大家对浏览器页面的 视觉和交互 要求越来越高,“套模板”的方式渐渐无法满足要求,这个所谓的表示层慢慢地迁移到浏览器当中去了,一大批像Angular, ReactJS之类的框架崛起,前后端分离了!
后端的工程师只负责提供接口和数据,专注于业务逻辑的实现,前端取到数据后在浏览器中展示,各司其职。
像Java这样的语言很适合去实现复杂的业务逻辑,尤其是一些MIS系统,行业软件如税务、电力、烟草、金融,通信等等。 所以剥离表示层,只做后端挺合适的。
但是如果仅仅是实现业务逻辑,那后端也不会需要这么多技术了,搞定SSH/SSM就行了。
互联网,尤其是移动互联网开始兴起以后,海量的用户呼啸而来,一个单机部署的小小War包肯定是撑不住了,必须得做分布式。
原来的单个Tomcat得变成Tomcat的 集群 ,前边弄个Web服务器做请求的 负载均衡, 不仅如此,还得考虑状态问题,session的一致性。
(注:参见文章《小白科普:分布式和集群》)
业务越来越复杂,我们不得不把某些业务放到一个机器(或集群)上,把另外一部分业务放到另外一个机器(或集群)上,虽然系统的计算能力,处理能力大大增强,但是这些系统之间的通信就变成了头疼的问题, 消息队列 (MQ), RPC框架 (如Dubbo)应运而生,为了提高通信效率,各种 序列化的工具 (如Protobuf)也争先空后地问世。
单个数据库也撑不住了,那就做数据库的 读写分离 ,如果还不行,就做 分库和分表 ,把原有的数据库垂直地切一切,或者水平地切一切, 但不管怎么切,都会让应用程序的访问非常麻烦,因为数据要跨库做Join/排序,还需要事务,为了解决这个问题,又有各种各样“ 数据访问中间件 ”的工具和产品诞生。
为了最大程度地提高性能,缓存肯定少不了,可以在本机做缓存(如Ehcache),也可以做 分布式缓存 (如Redis),如何搞 数据分片 ,数据迁移,失效转移,这又是一个超级大的主题了。
互联网用户喜欢上传图片和文件,还得搞一个 分布式的文件系统 (如FastDFS),要求高可用,高可靠。
数据量大了,搜索的需求就自然而然地浮出水面,你得弄一个支持全文索引的 搜索引擎 (如Elasticsearch ,Solr)出来。
林子大了,什么鸟都有,必须得考虑 安全 ,数据的加密/解密,签名、证书,防止SQL注入,XSS/CSRF等各种攻击。
前面提到了这么多的系统,还都是分布式的,每次上线,运维的同学说:把这么多系统协调好,把老子都累死了。
得把持续集成做好,能自动化地部署,自动化测试(其实前端也是如此),后来出现了一个革命化的技术 docker , 能够让开发、测试、生成环境保持一致,系统原来只是在环境(如Ngnix, JVM,Tomcat,MySQL等)上部署代码,现在把代码和环境一并打包, 运维的工作一下子就简化了。
公司自己购买服务器比较贵,维护也很麻烦,又难于弹性地增长,那就搞点虚拟的服务器吧,硬盘、内存都可以动态扩展(反正是虚拟的), 访问量大的时候多用点,没啥访问量了就释放一点,按需分配,很方便,这就是 云计算 的一个场景。
随着时间的推移,各个公司和系统收集的数据越来越多,都堆成一座大山了,难道就放在那里白白地浪费硬盘空间吗?
有人就惊奇地发现,咦,我们利用这些数据搞点事情啊, 比如把数据好好分析一下,预测一下这个用户的购买/阅读/浏览习惯,给他推荐一点东西嘛。
可是这么多数据,用传统的方式计算好几天甚至好几个月才能出个结果,到时候黄花菜都凉了,所以也得利用分布式的技术,想办法把计算分到各个计算机去,然后再把计算结果收回来, 时势造英雄, Hadoop 及其生态系统就应运而生了。
之前听说过一个大前端的概念,把移动端和网页端都归结为“前端”,我这里造个词“大后端”,把那些用户直接接触不到的、发生在服务器端的都归结进来。
现在无论是前端还是后端,技术领域多如牛毛,都严重地细分了,所以 我认为真正的全栈工程师根本不存在,因为一个人精力有限,不可能搞定这么多技术领域,太难了 。
培训机构所说的“全栈”,我认为就是前后端还在拉拉扯扯,藕断丝连,没有彻底分离的时候的“全栈”工程师。
那么问题来了, 后端这么多东西,我该怎么学?
之前写过一篇文章叫做《上天还是入地》,说了学习的广度和深度,在这里也是相通的。
往深度挖掘,可以成为某个技术领域的专家,如搜索方面的专家、安全方面的专家,分布式文件的专家等等,不管是哪个领域,重点都不是学会使用某个工具和框架, 而是保证你可以自己的知识和技术去搞定这个领域的顶尖问题。
往广度发展,各个技术领域都要了解,对于某种需求,能够选取合适的软件和技术架构来实现它,把需求转化成合适的技术组件,让这些组件以合适的方式连接、部署、运行,这也需要持续地学习和不断的经验积累。
最后,以一张漫画来结束吧!
C/C++高级工程师学习路线图:
‘贰’ 前端程序员个人年终总结
前端程序员个人年终总结
不知不觉间一年就快结束了,在经过一年的努力后,我们终于可以说自己在不断的成长中得到了更多的进步,不如来个总结以对过去工作做个分析和借鉴。那么如何把一年一度的总结写出新花样呢?下面是我收集整理的前端程序员个人年终总结,欢迎大家借鉴与参考,希望对大家有所帮助。
在学校我是学习前端工作的所以对这方面有所涉足,到了社会,我选择了前端,选择了这份工作,一个是喜欢一个是自己有不错的底子,经过努力我得到了公司的青睐,进入了公司,开始了自己的前段工作生涯。
有人所做技术的非常枯燥,非常无聊,单是我就喜欢这样的工作,从自己性格而言选择这样的工作对我来说正合适,也适合我,是我需要的工作,同样我也需要这样的工作来锻炼自己,有这个机会有了这样的平台反而让我得到了更大的发展,刚进入公司的时候,我的技术和速度可以说是最慢的,但是部门需要对我的工作从来都不会严格催促,看到其他同事都已经做完任务,都已经做好任务,而自己还在哪里慢慢的做就会感到有些愧疚,于是我就开始发狠,别人休息的时候我在做网页,学习各种前段代码,学习更多的前段知识,想办法提升自己,一个是因为我真的不甘心落后,我在学校毕竟也是成绩优异,但是却没想到自己与真正工作过的同事有这样打的差距,这让我感到非常的难过。
一颗不屈的心,让我要坚持努力下去,我们前段,拼的的是积累,拼的是经验,学的多,做的多才能够得到更多,这才是我们所希望的,也是我们需要努力的,就这样我一点点努力,一点点坚持,始终不忘自己原本的初心,始终铭记自己心中所想,终于让我有了更多的收获,有了更多的成绩,这是我自己努力的结果,同样也是我们公司,部门的培养,我经过了一年工作,改变了很多,青涩褪去,变得更加成熟稳重,这些都是同事给我的评价。同时自己的能力见长,我已经不再如同过去一班,没有了以前的那种迷茫没有了以前那种焦虑,已经融入了工作中,一点点的进步,一次次蜕变。
路还很长,做我们技术的,就要考我们踏实工作,对于工作的细节和操作都非常细心和认真都知道如果不努力做好就会留下遗憾,就会完不成任务,我曾因为一次小错误,令我耽搁了很长时间寻找错误代码,最后虽然找到了,但是却也浪费了很长时间这让我清楚了自己的责任,我必须要认真对待,每一个细节,面对密密麻麻的代码时,规范整洁有序才能够做好工作,这才能够减少失误的发生,这才能让我收获更多。
每一天我都沉寂在工作中,当看到一个个崭新且是自己设计和制作的网页时我就会感到高兴,感到自豪,因为这是我的'努力也是我的坚持,至少我没有失望,付出的工作得到了结果,以后我还需努力不管过程有多难,都不能做到我这个技术宅的决心。
转眼间,来到远洋科技已经三个月了,虽然时间不算长,但是这三个月让我在远洋学到了很多东西,结识了很多朋友,这是我最大的收获。也让我更加热爱这份工作。
设计工作是痛苦与快乐的炼狱,每当面临新的设计任务时,因为觉得自己的水平不够,感觉充满了压力,开始搜集各种资料(包括文字、图片),接下来寻找设计灵感,沉思、焦灼,经过痛苦煎熬,终于做出来的时候倍感轻松。每当经过艰苦的磨砺,自己的劳动成果得到肯定时,便是工作中最大的快乐!充满了快意。
一、工作总结:
从开始连效果图都做不好到现在能自己套程序,虽然自己也付出了努力,但是更离不开同事们的帮助。在这三个月里,我学习了制作网页的基础知识。从配色到布局,从制作效果图再到切片,再到用dw制作网页,最后套程序。每一个环节我都没有松懈,不管是在公司还是回到家里,我都会充分利用时间来学习,补充自己贫瘠的知识。虽然现在的水平还远远不够,但是扪心自问,我在远洋的每一天都是充实的,没有虚度,我相信在新的一年里,通过自己的努力和同事们的帮助,我会学到更多的东西,不管是在技术水平上还是其他方面,都更上一层楼。
二、工作中的不足:
虽然通过三个月的努力,技术水平有所提高,但是还是存在很多不足的地方,因为基础打的不够好,很多地方学习起来有些吃力,不停的问同事,也给别人带来了不少麻烦,因为知识的不足,使得开始的学习有些混乱,感觉不知道从哪里开始学起,无从下手,浪费了不少时间。
三、新一年的目标:
过去的一年的整体上是紧张的、忙碌的、充实的。因为我刚刚来到远洋,所以对我来说这也是充满希望的一年。展望新的工作年度,希望能够再接再砺,同时也加强自身的能力,工作中与同事多沟通,多关心了解其他部门的工作性质,进一步提高自己专业知识技能,积极吸收新的观念与设计理念,要继续在自己的工作岗位上踏踏实实做事,老老实实做人,争取做出更大的成绩来。
我相信,远洋科技的前景是美好的,我期待我们远洋网络科技有限公司明年有更好的发展。我会更加努力!
根据岗位职责的要求,我的主要工作任务是
(1)负责对外宣传,具体包括工业园网站建设、二期招商画册的设计制作及参加相关展会等;
(2)日常接待工作;
(3)相关活动的策划及筹备;
(4)担任讲解工作;
(5)领导交办的其他工作。通过完成上述工作,使我认识到一个称职的招商主管应当具有良好的语言表达能力、流畅的文字写作能力、网站建设维护能力、大型活动的策划及筹备能力。目前我在网站建设、大型活动的策划方面存在不足。在网页制作的过程中我发现,本无法适应精美网页的制作要求,于是重新学习了新的网页制作软件dreamweavermx及图形处理软件。目前我已熟悉了上述软件的常用功能并能运用其进行基本的网页制作及图形处理。为了让自己做一个称职的招商人员,我阅读了网上的部分策划案例,以便在以后的策划工作中有所帮助。
xxxx年又是一个充满激情的一年,在今后的工作中,我将努力提高自身素质,克服不足,朝着以下几个方向努力:
1、学无止镜,时代的发展瞬息万变,各种学科知识日新月异。我将坚持不懈地努力学习各种招商引资知识,并用于指导实践。
2、“业精于勤而荒于嬉”,在以后的工作中不断学习业务知识,通过多看、多学、多练来不断的提高自己的各项业务技能。
3、不断锻炼自己的胆识和毅力,提高自己解决实际问题的能力,并在工作过程中慢慢克服急躁情绪,积极、热情、细致地的对待每一项工作。
;‘叁’ 一个在微博中走红的网络虚拟人物,出自程序员幽默的微博,那人是谁
扫地老太太
被誉为2011年首位网络红人的扫地老太太,出自博友“程序员幽默”的微博。1月3日,该微博上转载了一段文字:“据说在每一个互联网公司里,都有一个扫地的老太太。很偶然地,当她经过一个程序员的身边,扫一眼屏幕上的代码,会低声提醒对方说:小心,栈溢出了(特指计算机编程过程中出现的数据结构栈存放超过了其大小的数据)。”没想到,这段幽默的文字瞬间在网络掀起了一场想象力接龙。
此后,网友以此句式不断创造,以各行各业为背景,演绎出200多个神通广大的扫地老太太。漫画版也横空出世。网友“漫画成成”绘制了十多幅老太漫画,陆续发布在自己的微博上,在“定妆照”中,一身橙色衣服的扫地老太肩扛扫帚,金鸡独立站在电脑显示器上,做出胜利的手势。
这也引起了很多名人的关注,着名音乐人高晓松甚至为其写了一首名为《扫地老太太》的歌,迅速流传于网上。
‘肆’ 你遇到的前端面试题都有什么
大家好,我是王我。
随着春节的结束,各个行业也普遍开始了上班的节奏, 不过本人17号才上班。为什么?因为长得帅的都上班比较晚。 当然,每到新年结束,又迎来了一批招聘者与面试者,我来说说作为一年工作经验应该知道的面试题。
HTML篇
1.doctype是什么?有哪些类型?
2.input有哪些新类型?简要说明其8用法。
3.HTML5有哪些新特性,移除了哪些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?
4.bootstrap响应式的原理是什么?
5.多移动终端页面适配是如何实现的?
CSS篇
1.如何实现两列布局,左边自适应,右边固定宽度?
2.用CSS画一个三角形
3.CSS实现字体大写
4.display有哪些常用的属性值?分别是什么意思?
5.position为absolute,relative,fixed的定点位置
6.用三种方法清除浮动
7.请介绍一下margin塌陷问题
js篇
1.什么是事件冒泡和捕获?如何阻止事件冒泡?(分别用原生和jquery实现)
2.js创建对象,至少使用三种方法
3.简述一下事件穿透以及解决办法
4.用三种方式判断变量类型是否是数组
5.如何实现对象的拷贝?
6.什么是闭包?闭包的优缺点。
7.简述一下ajax请求的过程。
8.简述一下new一个人构造函数的人过程。
9.为什么会有跨域?是怎么解决跨域问题的?简述一下原理。
10.js原始数据类型有哪些?
11.学一个函数,判断一个变量是否是字符串
12.typeof有哪些结果?
13.剪头函数和普通函数有什么区别?
14.请用三种方法实现数组去重
15.href和src有什么区别?
jquery篇
1.attr()和prop()有什么区别?
2.on和bind有什么区别?js动态添加的dom元素是通过on还是bind?
3.touch和click有什么区别?
4.window.onload和jquery的ready有什么区别?
vue篇
1.简述一下vue的生命周期及其特点
2.vue双向绑定的原理是什么?
3.vue的特点有哪些?和jquery有什么区别?
4.父子组件之间传递数据的方法
5.子组件如何共享数据?
6.一般有什么工具进行数据交互?
7.webpack的原理是什么?
8.简述一下$nextTick的用法
浏览器篇
1.cookie、sessionStorage、localStorage的区别是什么?
2.有用过浏览器缓存吗?简述一下基本的缓存机制
网络篇
1.http和https之间的区别
2.从服务器的安全考虑,是使用get请求还是post请求?
3.URL请求的过程有哪些?
项目经验篇
1.项目中遇到的最大挑战以及解决办法
2.常见的网页优化有哪些?
作为一个面试一年以内工作经验的前端程序员来说,以上的问题能够倒答如流月薪6k应该不成问题啦。这些面试题也是我在很多面试中感觉经常被问到的题目。
希望大家年后找工作能够顺顺利利, 千万不要跟我一样哦,只有帅气就一无所有了。
大家好,我是王我,中国最帅的前端程序员。
前几次都是各种培训公司,各种忽悠就不提了,说说后面4次面试的经历。
第一次是面一个小公司,不过他们好像没有厉害的前端,来面我的是个后端,一来没有问我关于js的知识,直接问我以前做过什么,有没有经验,我本人不会吹牛,简历也没怎么包装,就是自己把自学的知识和做的几个小demo弄在上面,也用github挂在页面上了,不过他根本不点开看,也不问,问我会不会vue,我当时对框架还不了解,他就说他们需要能直接上手开始写的,所以我第一个就直接挂了。
第二次面试是一个国企,这个问了很多问题,都很基础,js数据类型,数组操作,事件,大概就是高程的前面几章看看就差不多都能答到,然后因为他们主要用jq,所以问了很多jq的操作,关于节点的,动画的,我看锋利的jq大概看了3遍,也练过多次,所以我答的很熟。然后问了些布局方面的,bootstrap我了解过,又看过css3,所以这方面也没啥问题,最后在现场做了个题目,主要就是布局然后通过ajax呈现数据。后面听介绍我面试的说面试官比较满意,说我jq很熟,一面就过了。可惜后面电话面试不知怎么回事可能表现的不够自信,虽然没问技术,但是我没啥自信,把没项目经验什么的也不知怎么就一五一十交代了,估计因为这个挂掉了。
第三次没问问题,直接就是一套题开做,我在那做了一个多小时。题目就是按照要求一步一步做一个页面出来,我也搞忘了我当时卡在哪个地方了,坐在那得时候就是做不出来,没有设计图,要根据他的描述自己找个设计图然后做,我第一次遇到这个有点懵,虽然当时没做出来,不过回来我自己花了几个小时把它做了。所以这个也是凉了。
第四个问的比较多,数据类型,数组操作,跨域,ajax,闭包,原型链,继承,深拷贝,浅拷贝,模块amd cmd,基本都是问的js。然后问了html5的新特性 css3 的新特性,遇到过什么浏览器的兼容性问题,怎么解决的,以后想往什么方面发展。这个时候我已经会点vue了,照着做了个小demo,不过后来知道公司用的angularjs,面试官也没看我做的,问也没问。。以前听网上说要带上自己的项目去面试感觉没起多大效果。
最后总结下如果面的比较初级的岗位,应该主要问js,原型链,继承,闭包,深浅拷贝,ajax,跨域,然后js的基础知识,对了还有apply和call也问了,html5的新特性了解下就行。主要就是看你js掌握的程度,如果稍微要求高一点的,暂时还没面过,等以后面过在来回答
1. cookie session 的用途和区别,以及有效期
1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
2. vue的数据绑定原理,mvvm与mvc的区别
MVVM:
m:model数据模型层 v:view视图层 vm:ViewModel
vue中采用的是mvvm模式,这是从mvc衍生过来的
MVVM让视图与viewmodel直接的关系特别的紧密,就是为了解决mvc反馈不及时的问题
图片说明一下:
说到MVVM就要说一下双向绑定和数据劫持的原理,
MVC:
m:model数据模型层 v:view视图层 c:controller控制器
原理: c层需要控制model层的数据在view层进行显示
MVC两种方式,图片说明:
总结:
mvvm与mvc最大的区别:
MVVM实现了view与model的自动同步,也就是model属性改变的时候, 我们不需要再自己手动操作dom元素去改变view的显示,而是改变属性后该属性对应的view层会自动改变。
不懂得可以复制链接查看:
https://www.pianshen.com/article/3716256399/
3. storage 的区别 sessionStorage localStorage
localStorage 的生命周期是永久性的。假若使用localStorage存储数据,即使关闭浏览器,也不会让数据消失,除非主动的去删除数据,使用的方法如上所示。localStorage有length属性
sessionStorage 的生命周期是在浏览器关闭前。也就是说,在整个浏览器未关闭前,其数据一直都是存在的。sessionStorage也有length属性,其基本的判断和使用方法和localStorage的使用是一致的
有一个文本框 通过v-bind绑定了value属性 值为myname 是我们在vue实例中定义的属性
传统我们获取文本框值方法 可能通过getElementById找到文本框 然后获取其value属性
但是vue中直接通过v-bind绑定了value属性 所以不需要像之前那样获取值
所以在后面的按钮中获取name值 直接获取vue实例对象data里面的myname属性即可
【数据为尊 ----数据映射到浏览器 如果数据v-model后修改(肯定input)然后到数据在有数据映射到浏览器页面 ----映射关系统称】
缓存路由组件
使用的是vue的一个组件,参考vue的官方文档
使用这个东西可以保证我们在切换组件的时候,原来显示的组件不被销毁
-----【保障组件的数据不会被切换路由而销毁数据】
Home是对应的组件对象的名字,不是路由的名字
6.多维数组拍平
数组拍平也称数组扁平化,就是将数组里面的数组打开,最后合并为一个数组
一红六种方法吧……
了解的请看: https://www.cnblogs.com/guan-shan/p/10165737.html
7.跨域的原因 解决方案
跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。
这样就可以说同源策略----协议---端口---域名
原生的src和href可以解决跨域
代理可以解决
请求头也可以携带浏览器提示的也可以解决
一般都是后端解决跨域问题
【别的需要了解看下方链接】
https://blog.csdn.net/qq_41604383/article/details/100770100
8.uniApp兼容问题§ 如果你使用cli创建项目(即项目根目录是package.json),不管用什么ide,即便是用HBuilderX,切记cli项目的编译器是在项目下的,HBuilderX不管怎么升级都不会影响编译器版本。你需要手动npm update来升级编译器。以及如果你想要安装less、scss等预编译器,也需要自己npm安装在项目下,而不是在HBuilderX的插件管理里安装。
§ 如果你使用离线打包,请注意HBuilderX升级后,真机运行基座和云打包对应引擎跟随HBuilderX升级,而你的sdk需要手动升级。sdk的版本升级一般滞后HBuilderX正式版升级一两天。
§ 如果你使用自定义基座,之前制作的自定义基座是不会跟随HBuilderX升级的,升级HBuilderX后你应该重新制作新版自定义基座。
§ 如果你使用wgt升级,新版HBuilderX编译的wgt,运行到之前的runtime上,一定要先测试好,看有没有兼容性问题。如果有问题,就不要wgt升级,整包升级。
§ 考虑到向下兼容,uni-app编译器在升级为新的自定义组件模式后,同时保留了对老编译模式的向下兼容。
在HBuilderX alpha版中,App端一定会使用新编译器,不理会manifest配置。
在HBuilderX 正式版中,新创建的项目会使用新编译器,老项目不会强制使用,而是开发者自己在manifest里配置开启。
§ 如果你使用其他ide开发uni-app,会经常因为拼错单词而运行失败,因为经过webpack编译一道,很多错误反应的不够直观,排错时间很长,不如从开始就依赖有良好提示的HBuilderX,避免敲错单词。
§ 云打包的引擎版本说明
HBuilderX Alpha,只有1套云打包机,不管你的HBuilderX alpha版本多少,对应的打包机一定是最新的alpha版的客户端引擎。
HBuilderX正式版,有2套打包机,一个是最新正式版,一个是次新正式版。
中间的紧急更新版本没有独立打包机。
举个例子:
HBuilderX 有1.8.0、1.8.1、1.8.2、1.9.0、1.9.1这几个正式版。
那么当前可用的打包机有1.9.1和1.8.2这2台。(即每个大版本的最后一个版本)
除了这2个HBuilderX版本外,其他版本的云打包都指向最新的1.9.1版对应的打包机。(即只保留2个大版本的云打包机)
【详情请看】
https://ask.dcloud.net.cn/article/35845
一、HTML
HTML书写规范
H5新增标签
HTML渲染过程
二、CSS
css盒子模型概念
css弹性布局概念
三、JavaScript
事件模型
DOM2级事件模型
闭包
原型链
四、移动Web开发
常见的布局方案
移动端前端常见的触摸相关事件touch、tap、swipe等整理
移动端前端手势事件
移动端页面渲染优化
GPU渲染
GPU核心渲染过程
五、调试
常用的调试工具
Chrome控制台调试js使用
移动端测试
六、HTTP网络知识
常见的HTTP状态码
不同请求类型的区别
WEB缓存方案
——————————
牛客网(www.nowcoder.com)
- 专业IT笔试面试备考平台
- 最全C++JAVA前端等互联网技术求职题库
- 全面提升IT编程能力
- 程序员交友圣地
分享了一些Web前端的面试题,限时一小时,你看看自己能够答出多少道!
放心,这些面试题都是一些非常基础的知识,只要你在平时认真听课、学习了,那么这些面试题肯定不会难道你。
建议:虽然没有人监督你,但还是希望你不要去寻找答案,脱离网络,拿起纸笔,你试一下自己究竟能够答出个什么水平!有没有真本领?答案尽在这些面试题里!那么,你准备好了吗?OK!计时开始!
一、HTML常见题目01、Doctype作用?严格模式与混杂模式如何区分?它们有何意义?
02、HTML5为什么只需要写?
03、行内元素有哪些?块级元素有哪些?空(void)元素有那些?
04、页面导入样式时,使用link和@import有什么区别?
05、介绍一下你对浏览器内核的理解?
06、常见的浏览器内核有哪些?
07、html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?
08、如何区分HTML和HTML5?
09、简述一下你对HTML语义化的理解?
10、HTML5的离线储存怎么使用,工作原理能不能解释一下?
二、CSS类的题目01、介绍一下标准的CSS的盒子模型?与低版本IE的盒子模型有什么不同的?
02、CSS选择符有哪些?哪些属性可以继承?
03、CSS优先级算法如何计算?
04、CSS3新增伪类有那些?
05、如何居中p?如何居中一个浮动元素?如何让绝对定位的p居中?
06、display有哪些值?说明他们的作用。
07、position的值relative和absolute定位原点是?
08、CSS3有哪些新特性?
09、请解释一下CSS3的Flexbox(弹性盒布局模型),以及适用场景?
10、用纯CSS创建一个三角形的原理是什么?
三、Java类的题目
01、介绍Java的基本数据类型。
02、说说写Java的基本规范?
03、Java原型,原型链?有什么特点?
04、Java有几种类型的值?(堆:原始数据类型和栈:引用数据类型),你能画一下他们的内存图吗?
05、Java如何实现继承?
06、Java创建对象的几种方式?
07、Java作用链域?
08、谈谈This对象的理解。
09、eval是做什么的?
10、什么是window对象?什么是document对象?
OK,一小时到了,这个时间可不算短了,那么这些面试题你答出了几道呢?你写的答案正确了吗?现在你可以去翻看答案了。
如果你答出了绝大多数的或者是全部的题,并且答案也正确了,那么恭喜你……
你这时心里是不是有点小窃喜,认为自己有能力拿高薪了?虽然我也很想这么告诉你,但事实上这只能表明你的基础扎实,毕竟这只是一些非常基础的面试题。骚年~继续努力吧!
如果你只答出了小部分或者答出了大部分题但答案不正确,那么我只想说:“骚年,你的水平还差的远呢。”连这么基础的题你都打不出来,还想拿高薪?回去再练一段时间吧!
扎实的基础是你拿高薪的重要武器,如果你连基础都不扎实,那么想要攻克“高薪”这个厚实的堡垒,那只是痴人说梦罢了。
1.前端框架类问题,问你会不会用vue react啊
2.语言类,问你一些JavaScript语言的问题
3.项目经验,让你讲讲做过的项目,遇到的问题和解决之道
‘伍’ 前端开发应该学什么看完这篇不在迷茫
想要成为一个好的前端程序员,需要掌握的技术还是比较多的,比如HTML5开发、JavaScript、Veu.js框架开发等等。
前端就是展现给用户浏览的部分。我们通常说的前端,其实是指前端开发,也就是创建PC端或移动端等前端界面给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。
学习的内容包括:
①计算机基础以及PS基础
②前端开发基础(HTML5开发、JavaScript基础到高级、jQuery网页特效、Bootstrap框架)
③移动开发
④前端高级开发(ECMAScript6、Veu.js框架开发、webpack、前端页面优化、React框架开发、AngularJS 2.0框架开发等)
⑤小程序开发
⑥全栈开发(MySQL数据库、Python编程语言、Django框架等)
⑦就业拓展(网站SEO与前端安全技术)
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
‘陆’ 据说每一个互联网公司都有一个扫地的老太太,
始于新浪微薄 @程序员幽默:据说在每一个互联网公司里,都有一个扫地的老太太。很偶然地,当她经过一个程序员的身边,扫一眼屏幕上的代码,会低声提醒对方说:小心,栈溢出了。
2011-1-4 15:46 回复
尼玛勒格彼德帝
80位粉丝
2楼
据说在每一个英语培训机构里,都有一个扫地的老太太。很偶然地,当她捡起一张掉在地上的报纸,扫一眼上面的内容,会低声自然自语:这个单词拼错了。
2011-1-4 15:46 回复
尼玛勒格彼德帝
80位粉丝
3楼
据说在每一个设计公司里,都有一个扫地的老太太。很偶然地,当她经过一个前端工程师的旁边,扫一眼屏幕上的代码,会低声提醒对方说:小心,IE6不兼容啦。
2011-1-4 15:46 回复
尼玛勒格彼德帝
80位粉丝
4楼
据说在每一个广告公司里,都有一个扫地的老太太。很偶然地,当她经过一个设计师的身边,扫一眼屏幕上的图片,会低声提醒对方说:小心,这张图是有版权的。
2011-1-4 15:47 回复
尼玛勒格彼德帝
80位粉丝
5楼
@WliNkiQ:据说在每一个食科院的大厅里,都有一个扫地的老太太。很偶然地,当她经过一个副教授的身边,看了一眼布满结构式的讲义,低声提醒对方说:小心,羟基位置错了~
2011-1-4 15:47 回复
尼玛勒格彼德帝
80位粉丝
6楼
@丁壳儿:据说在每一座有机合成实验楼里,都有一个扫地的老太太。很偶然地,当她经过一个实验员的身边,扫一眼实验记录上的投料量,会低声提醒对方说:小心,催化剂加多了。
2011-1-4 15:47 回复
尼玛勒格彼德帝
80位粉丝
7楼
@广播:据说在每一个电台直播区里,都有一个扫地的老太太。很偶然地,当她经过一个播音员的身边,听了一耳朵备稿,低声提醒对方说:注意断句。
2011-1-4 15:47 回复
尼玛勒格彼德帝
80位粉丝
8楼
@李牧:据说在每个报社采编区,都有一个扫地的老太太。很偶然地,当她经过一个记者的身边,扫一眼屏幕上的文字,会低声提醒对方说:标题歧义。
2011-1-4 15:47 回复
尼玛勒格彼德帝
80位粉丝
9楼
@李冰清Lily:据说在每一个杂志社里,都有一个扫地的老太太。很偶然地,当她经过一个编辑身边,扫一眼二校打样稿,会低声提醒对方说:这个德语标题你拼错了,U上面还要加点的
2011-1-4 15:48 回复
尼玛勒格彼德帝
80位粉丝
10楼
@andydzeko:据说在每一个大学自习室里,都有一个扫地的老太太。很偶然地,当她经过一个抓耳挠腮复习考研学生的身边,扫一眼模拟卷上的题目,会低声提醒对方说:用拉格朗日中值定理,试试。
2011-1-4 15:48 回复
尼玛勒格彼德帝
80位粉丝
11楼
@华丽d悲剧:据说在每一个大学食堂里,都有一个扫地的老太太。很偶然地,当她经过一个厨师的身边,扫一眼锅里的菜,会低声提醒对方说:少放盐了。
2011-1-4 15:48 回复
尼玛勒格彼德帝
80位粉丝
12楼
@Miss茱莉89:据说,在每个医学院校的实验室,都有一个扫地的老太太。很偶然地她经过一个护生的身边,看了下桌上的安瓿,会低声提醒对方说:小心,青霉素要先皮试。
2011-1-4 15:48 回复
尼玛勒格彼德帝
80位粉丝
13楼
@香丘之都:据说在每一个医院的走廊里都有一个扫地的老太太,很偶然的,当她经过一个手术室门口时,向门内扫了一眼,对出来的护士低声提醒道:小心,钳子缝在里面了。
2011-1-4 15:48 回复
尼玛勒格彼德帝
80位粉丝
14楼
@倾木:据说在每一个心理咨询机构里,都有一个扫地的老太太。很偶然地,当她经过诊室旁边,向单面镜内扫了一眼,会低声提醒咨询师:小心,来访者阻抗很严重。
2011-1-4 15:49 回复
尼玛勒格彼德帝
80位粉丝
15楼
@Tulipren:据说在每一个会计师事务所里,都有一个扫地的老太太。很偶然地,当她经过一个审计师的身边,扫一眼屏幕上的excel,会低声提醒对方说:小心,现金流量表不平的
2011-1-4 15:49 回复
尼玛勒格彼德帝
80位粉丝
16楼
@伟哥日报:据说在每一个政府里,都有一个扫地的老太太。很偶然地,当她经过一个官员的身边,扫一眼文件上的签字,会低声提醒对方说:注意,应该局长先签批意见。
2011-1-4 15:49 回复
尼玛勒格彼德帝
80位粉丝
17楼
@微言博论:【【据说在每一个村委会办公室里,都有一个扫地的老太太。很偶然地,当她经过一个村干部的身边,扫一眼干部手中的账目本,会低声提醒对方说:小心,不要让钱澐浍知道这个。】】
2011-1-4 15:49 回复
尼玛勒格彼德帝
80位粉丝
18楼
据说在每一个火车站里,都有一个扫地的老太太。很偶然地,当她经过一个乘客的身边,扫一眼手上的票,会低声提醒对方说:小心,票是黄牛卖你的。
‘柒’ 你印象中的程序员
没有情调,不懂浪漫,也许这是程序员的一面,但拥有朴实无华的爱是他们的另一面。
我个人感觉印象中的程序员就是,头顶英年早秃,发际线英年上移(开玩笑的说),其实我朋友做程序员的就会下意识的看我的头发,说不像啊,其实很多程序员的时毛发浓密的,并不是所有的都聪明绝顶,很多程序员的智慧是“掩盖”着的!
在网上看到一句关于程序员的话:
我的代码曾运行在几千万用户的机器上,作为一个程序员,还有什么比这更让人满足的呢?如果有,那就是让这个用户数量再扩大 10 倍。
我感觉程序员是值得我们尊敬的。,程序员的双手是魔术师的双手。 他们把枯燥无味的代码变成了丰富多彩的软件(现在我们使用的健康码,行程码)。
程序不是年轻的专利,但是,他属于年轻……