【译】如何成为一个优秀的前端工程师?

最近我收到一封来自我的博客读者的电子邮件,里面的一些问题不禁让我陷入沉思,它是这样问的:

你好菲利普,能否告诉我你是如何成长为一个优秀的前端工程师的?
有什么好的建议吗?

我不得不承认看到这个问题的时候我很惊讶,因为我从来就没有把自己看作是一位“优秀的”前端工程师。事实上在这个行业工作的头几年,我一直认为我是不能胜任我所拥有的工作。我申请这些职位是因为我没有意识到我知道的太少了,而能顺利拿下这份工作则是因为面试官不知道该问什么。

Apache Web服务器安全配置

尽管现在购买的云服务器很多都有一键 web 环境安装包,但是如果是自己配置 web 环境则需要对各种安全配置十分了解,今天我们就来尝试这做好 web 服务器安全配置。这里的配置不尽完善,若有纰漏之处还望指出。

Apache2.4.23 + PHP5.6.30 + MySQL5.7.18安装教程

最近在工作中常常接触到PHP,自己也写过一些简单的PHP页面。我们知道PHP是在服务器端运行的脚本语言,因此我们需要配置服务器环境。之前为了省事直接使用的是wamp集成环境,但是突然某一天领导要求我们做好Apache服务器的安全配置工作,自己下来就开始查阅各种资料和教程,还好任务上线问啥大问题。今天我就来记录一下自己是如何安装并配置一个web服务器。

对JavaScript中闭包的理解

在前端开发中闭包是一个很重要的知识点,是面试中一定会被问到的内容。之前我对闭包的理解主要是"通过闭包可以在函数外部能访问到函数内部的变量",对闭包运用的也很少,甚至自己写过闭包自己都不太清楚,只知道这样写可以解决问题。最近在梳理自己的js知识点,发现自己对js闭包理解的很不透彻,于是想全面的分析一下闭包,特别是闭包的形成原因和闭包的使用场景。

ECMAScript5新特性总结

虽然ECMAScript5早就成为标准推出来了,但之前因为一直用的是ECMAScript3,并且工作中总是要求兼容IE的低版本,所以用的比较少。如今市场上大多数浏览器都能兼容ECMAScript5(IE8除外),逐渐的就用的比较多了。今天主要是把ECMAScript5中新增奶的特性及方法总结一下,已备需要时方便查询。

原生Javascript操作DOM方法汇总

自从接触到jQuery之后顿时就被jQuery的简洁且连续调用的方式吸引,在之后的前端开发中一直使用jQuery。用久了之后就越想弄清楚jQuery的源码,研究过源码之后才弄清楚原来他的本质还是javascript,很多常用的方法还是用js的基本方法写的。包装过后的js虽然使用方便,但是性能却打了折扣。例如用$(‘#demo’)获取id为demo的节点需要经过各种判断排除其他最终还是用document.getElementById(‘demo’)获取的节点,所以觉得还是使用原生的js靠谱,毕竟这个才是根本。

Javascript几种跨域方式总结

在客户端编程语言中如javascript,同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。只有当两个域具有相同的协议,相同的主机,相同的端口时,我们就认定他们是相同的域。可是在实际开发中我们经常需要获取其他域的资源,这个时候各种不同的跨域资源方式就各显神通了,今天主要来总结一下工作中常用的几种跨域方式,以备查询。

从输入网址到页面呈现这个过程中都发生了什么?

在前端开发中我们常常需要考虑首屏加载时间,为了尽可能减少首屏加载时间我们需要弄清楚从输入网址到页面最终呈现的过程中都发生了哪些事情,然后才能具体问题具体分析,最终达到提升网页性能的目的。从输入网址到页面呈现过程中都发生了什么?据说这是一个非常经典的面试题,考察的问题面也很广,今天我就从一个前端开发工程师的角度来解答一下这个问题,文中难免有些知识点介绍的不够深,还望见谅!

Javascript执行流总结

面对各种各样的JavaScript代码,我们有时候难免会犯错。可当自己仔细研究一下,哦原来是这么回事。有时候怎么会想为什么Javascript程序会是这样执行的呢?为什么没有得到自己预期的答案呢?自己到底是哪一步想错了呢?这时候就想如果我是JS执行流我会怎么执行?仔细想想这些问题,原来这其中还包含着很多自己不熟悉的知识点,今天就来总结下,同时也好加深印象。

CSS选择器性能分析

尽管css选择器效率问题已经不是什么新鲜问题,但是我觉得还是有必要拿出来认真分析一下。之前只是看到别人这么写我也跟着这么写,并没有想清楚问什么要这样写?这样写真的能提高页面渲染效率吗?尽管自己技术不怎么样,但还是需要拿出一种打破砂锅问到底的决心来深究一下css选择器效率问题,通过自己写个demo亲自实践来加深一下对这个问题的理解。

前端切图技巧

前端开发免不了要切图,面对复杂的页面,仅切图工作就会花费大量的时间。对于追求高效率的我来说这是不可忍受的,并且规划好页面后,切图工作并不需要消耗多少脑细胞,都是很机械化的东西。所以在网上搜了搜一下几种高效的前端切图方法,分析其各自的特点及使用场景并总结归纳出自己常用的切图方法。

Bootstrap源码分析系列之初始化和依赖项

在上一节中我们介绍了Bootstrap整体架构,本节我们将介绍Bootstrap框架第二部分初始化及依赖项,这部分内容位于源码的第8~885行,打开源码这部分内容似乎也不是很难理解。但是请站在一个开发者的角度来面对这段源码。为什么要这样写?如果没有Bootstrap框架我能写出类似这样的框架吗?

Bootstrap源码分析系列之整体架构

作为一名合格的前端工程师,你肯定听说过 Bootstarp 框架。确实可以说 Bootstrap 框架是最流行的前端框架之一。可是也有人说 Bootstrap 是给后端和前端小白用的,我认为只要学习它能给我们前端技能带来提升,那么我们就有必要研究一下它。Bootstrap 框架虽然也提供了 javascript 插件,但总感觉不够用。Bootrtrap 更多的则是被用作 css 框架。之前我也用过几次 Bootstrap,感觉确实很快,很方便,用的次数多了就越想弄清楚它到底是怎么回事?它好在哪里?

韩顺平PHP从入门到精通视频教程笔记

37 整型细节说明

$a;
echo $a;
var_dump($a) //NULL

一个数总是要占用内存空间(字节),在 php 中一个整数一般占用四个字节(与平台相关),一个字节占用 8bit
php 的整数的二进制的最高位表示符号 0 表示正数 1 表示负数
通过 PHP_INT_SIZE 可以显示我们自己的电脑上一个整数用几个字节表示