编程
前端摆渡人
这个作者很懒,什么都没留下…
展开
-
对码农而言什么样的代码才能叫做好代码?
好的代码,就像是好的笑话——无需解释就能让别人明白。如果你的代码能够做到不解自明,在大多数时候,你根本无需为其配备说明文档。好的代码,就像是一辆配备了优秀音响和杯架的汽车,这辆车在行驶到最高速度的时候,你听不到噪音,也不用担心水会洒出来。在它出现故障的时候,任何一名修理工都可以使用最常见的工具,在最短的时间里轻松将其修好。而坏的代码,就像是一辆向你承诺最高速度可以达到200MPH,但是音响只能...原创 2019-04-30 21:52:56 · 560 阅读 · 0 评论 -
前端为什么要学习 Selenium
如果你正在阅读本文,那么可能希望从手动测试升级为自动化测试。你是对的,因为你需要学习 Selenium。我这样说是因为自动化测试已经风靡全球,而且业界正很缺少 Selenium 认证专家。你可能还想知道,怎样开始测试,以及 Selenium 是否适合入门。如果你有这些疑问,那么请不要担心,因为在本文中,我将给出 10 个令人信服的理由,来说明学习 Selenium 的必要性。学习 Seleni...原创 2019-04-28 16:01:22 · 510 阅读 · 0 评论 -
你以为程序员不可能掌握所有的程序语言可能,那是你没掌握这几点
如果你存在以下的种种困惑,那么这篇文章也许会对你有所帮助:你是编程初学者,不知道该选择什么程序语言来入门。你是资深的程序员或者团队领导,对新出现的种种语言感到困惑,不知道该“投资”哪种语言。你的团队为使用哪种程序语言争论不休,发生各种斗争。你追逐潮流采用了某种时髦的语言,结果两个月之后发现深陷泥潭,痛苦不堪……无可置疑的现实是,不管在什么时候程序语言仍然是很重要的话题,这个情况短时间...原创 2019-04-23 22:09:16 · 267 阅读 · 0 评论 -
HTTP 协议图解
一、技术基石及概述问:什么是HTTP?答:HTTP是一个客户端和服务器端请求和响应的标准TCP。其实建立在TCP之上的。当我们打开百度网页时,是这样的:https://www.baidu.com多了个S,其实S表示TLS、SSL。在这里不做解释,因此HTTP的技术基石如图所示:那HTTP协议呢?HTTP协议(HyperText Transfer Protocol),即超文本传输协...原创 2019-04-28 14:37:52 · 430 阅读 · 0 评论 -
微软全球执行副总裁沈向洋自述:在实现职业目标的道路上得到的七个教训
当我从卡内基梅隆大学获得机器人学博士学位时,我的职业目标是成为一名计算机科学教授。我将帮助塑造年轻人的思想,并为该领域贡献世界级的研究成果。我渴望效仿我的教授,比如 Raj Reddy(雷伊·雷蒂),他给我上了人生中最重要的一些课。一切都安排好了。我将在十年后成为一名终身教授。但这并没有发生。我做了一系列选择,使我偏离了那个目标。我觉得,我没有意识到这一点,但事后看来,我发现,我被另一股力量...翻译 2019-04-23 16:15:19 · 507 阅读 · 0 评论 -
最令程序员沮丧的10件事
软件开发是一个伟大的工作——和任何其他工作一样,它也有它的缺点。下面的10件事就是大多数程序员关于编程所无法苟同的。对于非软件开发人员来说,开发人员的工作看起来一定很甜蜜:很多公司都需求这方面人才,得到的报酬真的很不错,公司给你各种有趣的福利,等等。但是真相却是,虽然,这一切是真的,但如同任何其他的工作一样,程序员也有那些扒拉着头发恨不得拔光的时刻。在软件工程师的一生中,有许多事情可能会让他或她...原创 2019-04-27 21:47:07 · 510 阅读 · 0 评论 -
将移动 App 创意变成现实的 10 个关键步骤
许多个人和公司都提出了新的移动app的想法,以便于占据或扩大这个领域。他们要么会想触及新的目标对象,要么是为现有客户提供更好的服务。然而,相对而言,人们并不清楚将移动app创意变成现实所需的步骤或过程。由于缺乏创业公司和成熟公司之间的专业知识和信息,因此他们大多数并不知道如何磨砺关于app的点子。步骤1:写下功能列表从写笔记开始概念化你的想法。在做任何事情之前,你应该写下任何你想到的东西。在纸...原创 2019-04-27 21:43:03 · 339 阅读 · 0 评论 -
老板让明天带条鱼来观察…(程序员版)
老板发消息说明天带条鱼来观察结果……1、Java程序员版2、PHP程序员版3、C 程序员版4、C++程序员版5、Python程序员版6、.NET程序员版△7、Js等前端程序员版8、Go程序员版9、MATLAB程序员版最后,给大家推荐一个前端学习进阶内推交流群685910553(前端资料分享),不管你在地球哪个方位,不管你参加工作几年都欢迎你的入驻!(群...原创 2019-04-18 17:13:38 · 502 阅读 · 0 评论 -
你与年薪百万的程序员差在哪?
要想成为一名软件开发者需要学习各种专业知识、技术与框架。比如算法、数据结构、编程语言、流行框架等。但是要想成为更加出色的软件开发者,你要学习的就不仅仅是专业上的知识了。标题过于浮夸,希望大家谅解,但本篇是满满的干货。今天我想分享一点关于软件开发者如何改进职业技能从而变得更擅长于自身工作的技巧。这里要谈的主题是通用性的,并没有针对任何特定的技术栈。其实这里要谈的大部分甚至都不是针对 IT 的。这些...原创 2019-04-27 19:33:11 · 458 阅读 · 0 评论 -
前端十年的思索:前端专业方向的尽头
一、纯专业方向的探索之路一转眼,毕业已经快 10 年了,10 年前我在写页面,10 年过去了,我还在写页面。这种情形目前并不多见,无论是我的前辈或者是同一年代入行的同辈,几乎都已经脱离一线了,至少我认识的那些都是如此。每个人都是独立的个体,没有什么按部就班,没有什么理所当然,关键要清楚自己要的什么,自己拥有的是什么,自己能够到达的彼岸有多远。如果三五年前,我觉得自己的专业对团队对企业的贡献...转载 2019-04-27 19:11:18 · 508 阅读 · 0 评论 -
程序员需知——15 条软件开发黄金定律
与其他领域一样,软件开发领域也有一些非常有趣的定律。程序员、技术经理和架构师们经常在会议和聊天中提到它们。作为小白,我们常常只有点头附和的份,因为我们不希望让对方知道我们实际上根本不知道布鲁克、摩尔或者维斯都是什么人。这些定律包括了一些法则或软件开发大神的名言。它们都很有趣,值得我们一探究竟,而且每个定律背后都有令人惊叹的背景故事。在这篇文章中,我将分享我对软件开发领域最著名和最常见的定律的...原创 2019-04-23 13:43:31 · 269 阅读 · 0 评论 -
多重影分身:一套代码如何生成多个小程序?
影分身之基础配置影分身的能力,主要来源于 Taro 所提供的编译能力,所以需要对 Taro 的编译配置和编译配置详情有所了解。我们先来看看配置的相关文件目录:config 目录为 Taro 初始化后的默认配置目录,图中蓝色框框内的三个文件(dev、index、prod)为默认生成的配置文件,剩下的文件,则为分身所需的配置。图中配置了三个分身,我们以 channel1 为例,config 是...原创 2019-04-27 16:57:07 · 1865 阅读 · 0 评论 -
从前端到“钱”端,前端程序员的出路在何方
过去十年,是前端觉醒的十年。前端这个行业很年轻,更早时候其实是有前端工作但是没有前端岗位。大家觉得这个东西程序员做也行,设计师做也行。前端工作一直存在,但是没有人认为它是一个独立的工种和岗位,也没有人去发展它的工程体系,更没有人去找它的核心价值。所以如果说过去十年前端是什么样的十年,我认为是觉醒的十年。在过去十年中,前端技术的发展大致经历了三个阶段:首先是青铜时代,就是 2008 年前后那...原创 2019-04-27 16:53:07 · 1152 阅读 · 0 评论 -
链家网前端总架构师杨永林:我的8年架构师成长之路
杨永林,人称“教主”,八年前端开发经验,原新浪微博前端技术专家,现任链家网前端总架构师。长期研究Web访问性能优化和前端框架搭建。作为初始团队成员,教主参与了新浪微博所有PC版本的开发,其中4~6版以架构师的身份设计了微博PC版的前端架构。在新浪微博任职期间,教主设计实现了流水线加载技术与模块化代码组织,达到了在提高访问性能的同时极大降低了开发成本的目的。主要研究方向是Web访问性能优化与框架组...转载 2019-04-18 14:45:44 · 577 阅读 · 0 评论 -
CSS3六角形代码
分享一段代码实例,它实现了六角形效果。代码实例如下:<!doctype html><html><head><meta charset="utf-8"><meta name="author" content="[网页链接](http://www.softwhy.com/%22) /><title>...原创 2019-04-28 16:53:07 · 1319 阅读 · 0 评论 -
一名十年程序员犯过的错
不管您是新人还是老手,您都会发现我的话是有用的。我期待听到您的观点,所以请不吝赐教给我回信。坚持使用一种平台,框架或者语言在过去10年间我所犯的最大的错误是:每次换工作时我都会换一个软件平台。开始我使用Enterprise Java Development,然后是嵌入C软件,然后,对于Windows桌面应用我使用VB, C#和C++,然后对于iOS应用我使用Objective-C,然后使用...原创 2019-04-28 21:59:18 · 370 阅读 · 0 评论 -
牛逼的前端工程师是如何练出来的
如何定义牛逼工程师有软件工程方面的研究说,对于开发者个体而言,最优秀的开发者的生产效率约为平均值的2倍,而优秀的开发者会吸引其它优秀的人,或者激励与帮助团队中的其它成员,最终使团队之间的生产效率差异达到10倍之多。所谓牛逼的工程师,就是那些个体效率是其它人2倍,形成团队之后达到10倍差异的一群人。前端领域这几年发展速度非常快,人才分布呈两级分化趋势,大家都在说缺前端,其实缺的是牛逼前端,对...原创 2019-04-28 21:59:13 · 697 阅读 · 0 评论 -
20个为前端开发者准备的文档和指南
是时间选择你想重温的工具或者技术了。如果你感到你已经很努力了,但是结果却并非你所愿,我将会帮助你。1. DevTools Challenger它是一个交互式的站点,演示了如何在Firefox开发者版本里使用其拥有的新的相关动画功能。2. The HTML & CSS(HTML和CSS技巧手册)一个很好的HTML/CSS的样式指南,可以帮助开发者编写“耐用,持久...原创 2019-04-30 21:53:01 · 1148 阅读 · 1 评论 -
前端与HTTP那些事儿
各版本的http发展在HTTP建立之初,主要是为了传输超文本标记语言(HTML)文档。随着时代的发展,也进行了若干次演进。下图是各个版本发布的时间轴。目前为止,使用最为广泛的是http1.1,http1.0应该比较少了,最新的是http2。这篇博文也主要,围绕着1.0、1.1、2.0三个版本进行介绍。http/1.0http1.0不会复用tcp链接,每次请求都会打开、断开一条链接。...原创 2019-04-30 21:53:03 · 2853 阅读 · 0 评论 -
书写高质量代码之状态维护
维护程序状态的一些小心得。状态之始我们第一眼接触新事物所触发的思考方式,决定了以后我们看待这样事物的角度,进而影响更深层次的理解和行为。编程相对于人类历史的进程而言,不过是个六七岁孩童偶然捡到的新玩具,因为新鲜好玩到现在都还爱不释手。这个玩具于我们的大脑会产生怎么样的化学反应是个未知数,每个个体都不同。你第一眼见到色彩或形状直接关系到你的兴趣点或是以后会怎样去把玩这个玩具。小朋友拿到新玩...原创 2019-04-30 16:55:07 · 3343 阅读 · 1 评论 -
能用HTML/CSS解决的问题就不要使用JS
为什么说能使用html/css解决的问题就不要使用JS呢?两个字,因为简单。简单就意味着更快的开发速度,更小的维护成本,同时往往具有更好的体验,下面介绍几个实例。1. 导航高亮导航高亮是一种很常见的问题,包括当前页面的导航在菜单里面高亮和hover时高亮。你可以用js控制,但是用一点CSS技巧就可以达到这个目的,不需要使用JS。在正常态时,每个导航的默认样式为:nav li{ ...原创 2019-04-29 21:56:17 · 3892 阅读 · 4 评论 -
三个常见的代码性能优化方式
编写有效率的代码是我们的一项基本技能。我们千万不要忽视代码的性能要求。越早考虑性能问题,需要支付的成本就越小,带来的价值就越大,不要等到出现性能问题时,才去临时抱佛脚。如果前期没有看重代码的性能问题,那么后期我们就要付出加倍的精力去维护和重构代码。代码的性能并不是可以多块地进行加减乘除,而是如何管理内存、磁盘、网络、内核等计算机资源,已达到性能最优化。在这篇文章里,我选了三个常见且实用的代码性...原创 2019-04-29 21:52:03 · 1783 阅读 · 0 评论 -
我是如何看待那些编程语言的?
所有的编程语言我都讨厌。曾经我想自创一门语言,但我没搞明白到底需要一门什么语言,所以也从未开始过。 许多时候,你没法选择使用哪种语言。不管我在用哪种语言,我都尝试去接受它的优点和缺点。Java喜欢 Java 的人肯定喜欢打字。我指的就是敲打键盘上的键。你得不断地重复又重复。设计 Java 系统的人是个疯子,他解决问题的方式就是,设计模式。如果你把设计模式看作是这个语言中解决问题的一种方式,那...原创 2019-04-20 16:04:51 · 346 阅读 · 0 评论 -
11个教程中不常被提及的JavaScript小技巧
这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日常工作中经常出现,但是我们又很容易忽略。1、过滤唯一值Set类型是在ES6中新增的,它类似于数组,但是成员的值都是唯一的,没有重复的值。结合扩展运算符(…)我们可以创建一个新的数组,达到过滤原数组重复值的功能。const array = [1, 2, 3, 3, 5, 5, 1];const un...原创 2019-04-29 15:37:12 · 3873 阅读 · 1 评论 -
如果把编程语言用中文来替代会怎么样?
首先大概的看一下中文编码:你以为会写中文就会编程吗?这就像你以为会写汉字就会写出好文章一样。编程是和机器沟通,因此要用机器的语言而不是人类的语言。最早的程序就是0和1的数字,不是中文也不是英文。以前的程序员,每天写程序就是在一条长长的纸带上打孔表示0和1。后来发现0和1的二进制太麻烦了,就把0和1压缩一下,用16进制表示,比如数字10,用二进制表示是1010,用16进制表示就是0A,这样表达起...原创 2019-04-24 20:07:07 · 2105 阅读 · 1 评论 -
关于开源,我有些话想说
最近,我经历了一次有意思的讨论。讨论的主题是代码开源,尤其是指那些用作商业用途的代码,比如用于创造你自己的产品或者服务的代码。以下就是这次讨论所得的,对“开源”的各个方面的思考。同时我也真心希望读者能进行讨论,分享自己的经验。质量不论何时,只要你决定公开地做一件事,你就会倾向于对其付出更多的努力,力求将其做好。不管是一场演讲,一次营销活动,还是一个软件项目。只要你想把这个软件项目公开,你就绝...原创 2019-04-24 19:52:15 · 218 阅读 · 0 评论 -
浏览器之争,我就服IE。不服?IE:有本事你就把我删了啊
浏览器之争从上个世纪就已经开始,已经持续了很长的时间。到目前为止,竞争依然激烈。在很多年前,IE还是最主流的web浏览器。但现在形势早已完全不同了,不知道大家还有多少人在用IE浏览器?今天,小编向大家分享一下针对IE的搞笑图片,只是逗乐而已,希望大家看的开心!1、当浏览器化作一种枪,你喜欢用哪种呢?2、这神奇的反射弧,有点长…3、浏览器们成长的烦恼4、这么说来,IE浏览器扳回一分!...转载 2019-04-24 19:12:53 · 329 阅读 · 0 评论 -
比起程序员中年危机更害怕:自己不知道接下来做什么?
我辞掉了我那份舒适、薪水又高的工作。我之所以会走这一步,是因为在我回顾过去已经取得的成绩之后,我不知道接下来的30年应该做什么。那就是中年危机……这里所谓的中年危机指的是,作为一个开发者,你总会到达一个已经做了一段时间并且开始思考下一个选择是什么的阶段。只是能挣到钱再也不够了:你需要额外的动力来继续下去,直到退休。你可以认为自己已经写了足够多的代码,想往上晋升,成为领导者/管理者。为什么...翻译 2019-04-24 17:26:52 · 188 阅读 · 0 评论 -
web组件正走在取代前端框架的路上
还记得 document.querySelector 开始获得主流浏览器支持,并逐渐结束 jQuery 统治的历史吗? 它终于让我们能够原生实现多年来使用 jQuery 做的事情,也就是轻松选择 DOM 元素。我相信类似的变革也会席卷像 Angular 和 React 这样的前端框架。这些框架让我们得以实现过去难以达成的目标,亦即创建可复用的自治前端组件;但随之而来的代价是代码更加复杂、需要专用...转载 2019-04-19 17:19:55 · 396 阅读 · 1 评论 -
一位老程序员给年轻程序员的一些建议,希望有用
1.想清楚,再动手写代码刚入行的新手,为了展示自己的能力,拿到需求迫不及待地就开始上手写代码,大忌! 在我看来真正写代码的时间只有20%,如果不想清楚,其他的80%时间在改bug。2.不交流,就会头破血流不爱说话和沟通,容易产生需求理解错误,最后做出来才发现不是产品要求的。 很多功能推到重来都是不交流产生的。3.文档没人看,但还是要写文档的作用大部分时候不是用来沟通的,是用来做记录的...原创 2019-04-15 15:21:24 · 431 阅读 · 0 评论 -
JavaScript 是真正的 OOP 语言吗?
JavaScript面向对象还是不面向对象,这是个问题。好吧,这就是我们将要在这篇文章中讨论的主题。我知道,这个话题已经被讨论过太多次了。但是,它总是被不断地提及。每当Java或C#或任何其他OOP语言的开发人员与JavaScript接触时,这些开发人员都会抱怨连连。他们说,用JavaScript工作简直是一团乱,没有类型,结构不合理,有些怪异,对象支持不给力,它绝对不是OOP语言。其中有一些...原创 2019-04-26 21:08:59 · 460 阅读 · 0 评论 -
程序员:在这技术更新如此快的时代,注意别因学太多而被压垮了
自学是个好主意。我非常赞成终生学习,你应该这样做。但是,在软件开发领域,有如此多的新技术,有如此多要学习的东西,我们在学习中会感觉被完全压垮了。你感觉你一直在扮演追赶的角色,但是一直都赶不上。就像是跑步机一直比你能跑的最快速度还要快几步,你一直受挫,还有在最后关头掉队的危险。试着学太多问题就是尝试学太多导致的。有100种不同的技术,这些都是你必须或想要在工作中应用的。你感觉为了能够胜任,为...原创 2019-04-16 14:44:03 · 1166 阅读 · 0 评论 -
前端最新学习路线及开发工具
前端学习路线图:由我自己经心梳理而成,知识由浅入深,循序渐进。自学前端同学,不必再纠结学习路径的问题,按照这份路线图学习就可以了。前端视频篇:根据学习路线图搭配了相应的视频、源码、笔记等资源,直接网盘下载就可以了。部分资源还在玩命更新中,请稍安勿躁,静候更新。前端工具篇:精心收集了50多款前端工具,包含前端流行框架、开发工具、手册、插件、模板引擎等等。市场上常用的、最新的几乎都在这里...原创 2019-04-09 20:10:32 · 240 阅读 · 0 评论 -
几分钟了解前端之——你不知道的HTML5
一、HTML5概念HTML5并不仅仅只是做为HTML标记语言的一个最新版本,更重要的是它制定了Web应用开发的一系列标准,成为第一个将Web做为应用开发平台的HTML语言。HTML5定义了一系列新元素,如新语义标签、智能表单、多媒体标签等,可以帮助开发者创建富互联网应用,同时有令人眼花缭乱的css 3,还提供了一些Javascript API,如地理定位、重力感应、硬件访问等,可以在浏览器内实...原创 2019-04-12 21:52:36 · 272 阅读 · 0 评论 -
一个预言家的命运:忽悠马云的“骗子”,风口上的先知
“我是一个既得利益者,”这个被称为中国10年来最成功CTO的男人说,“你能写写我的运气吗?”阿里巴巴集团技术委员会主席王坚难以想象他这样一个人会承担如此多的骂名。他看上去天真无害,是一个最标准的工程师模样。格子衬衫,右手的袖子因为配合挥舞的动作,常常耷拉下来。一脸羞涩的笑,55岁的年龄,走起来像是记忆里初中那种沉默的男孩。斜着肩膀大跨步,为了减少对视,低着头快走。在进入阿里之前,他的人...转载 2019-04-09 15:21:33 · 1709 阅读 · 0 评论 -
如果各个程序语言是个人的话,你希望是怎样?
如果有一天,各个程序语言都可以变成人了,你希望你用的程序语言是怎样的?如图中?最后,给大家推荐一个前端学习进阶内推交流群685910553(前端资料分享),不管你在地球哪个方位,不管你参加工作几年都欢迎你的入驻!(群内会定期免费提供一些群主收藏的免费学习书籍资料以及整理好的面试题和答案文档!)如果您对这个文章有任何异议,那么请在文章评论处写上你的评论。如果您觉得这个文章有意思,那么请分...原创 2019-04-15 21:58:35 · 303 阅读 · 0 评论 -
每个好程序员都应该读的10本经典书籍
如果你是一个程序员, 除了编码之外,你还需要大量的阅读。今天我要为大家介绍几本值得一读的书,包括《The Pragmatic Programmer》,《The Mythical Man-month: Essays on Software Engineering》和《Clean Code: A Handbook of Agile Software Craftsmanship》。书籍是知识和智慧的重...原创 2019-04-12 16:20:35 · 620 阅读 · 0 评论 -
35岁的C++仍受程序员青睐,C++20于年底完成
已经35岁的编程语言C++,依然深受程序员们的青睐。在TIOBE公布的2019年4月编程语言指数中,C++居第三位,指数同比增长1.62%。作为C语言的扩展,C++在1985年创建,最新的标准化版本C++17已经获得了大量编译器的支持,包括微软Visual Studio、GNU Compiler Collection (GCC)和Clang等。C++标准委员会(WG21)宣布,将在今年完成“...转载 2019-04-09 14:06:43 · 704 阅读 · 0 评论 -
只因是大专学历,HR就看低人,要回简历还被HR当场撕了
对于求职者来说,在求职过程中注定不会一帆风顺,正常被拒也没什么,毕竟这是双向选择的事情,面试失败也就什么好抱怨的,认识到自己的不足好好准备下一场面试。然而却有一些面试官的做法让人不忍直视,甚至让求职者愤怒。就有一名程序员发帖讲述了自己最近的一次面试被面试官撕掉简历的经历,发帖称:去面试,先花了半小时认真填写公司的笔试答题,答完题面试官来面试,一进来后就轻浮的说我们这不招大专学历,招了也得走特批...转载 2019-04-17 15:43:35 · 1191 阅读 · 2 评论 -
普通程序员和大神程序员的区别,除了秃顶,你还知道差在哪吗?
一、你和大佬的区别1、没有编程思想或许很多人觉得很扯,但确实是这样的。高级程序员在看到一个需求的时候,总是能够快速在大脑里生成这个需求在现实生活中的映射。每当产品经理提一个需求的时候,高级程序员首先想到的就是,这个需求需要哪些数据库上的改动,对现有的逻辑有什么影响,需要提供多少接口,存在哪些可能的风险,以及需要多久的开发周期。普通程序员拿到需求以后,首先表现的是一脸懵逼,因为往往产品经理...原创 2019-04-12 14:25:58 · 1048 阅读 · 0 评论