搜索

论坛版块 MAKA教程 H5制作技巧

Html5从入门到精通-优秀程序员的八大习惯!

跳转楼层 0 382
MIN酱
x0

发表于 2016-10-17 15:09:03 | 显示全部楼层 |阅读模式
许多小伙伴使用过MAKA之后,都想要转型做Html5设计师,MIN酱今天就来跟大家谈谈html5从入门到精通的方法!首先要讲的是,优秀程序员的这八大习惯,看看这些习惯你都有了吗?如果还没有,赶紧培养起来!

html5从入门到精通3.jpg

(作者Jeff Standen,有着21+年经验的软件开发者)

首先开发spike解决方案——这是我早期敏捷/极限编程所养成的习惯之一。spike解决方案是一次性原型,可以帮助你在投入大量时间和精力之前验证你是否走对路。
区别就在于原型,因为你遵循这样一个规则,在你完成研究之后,你最终会扔掉“spike”代码。所以允许你偷工减料,迅速行动,因为它不会出现在产品或代码审查中。
此方法有助于迅速发现设计的哪些部位尚不明确,而不必过早地尝试架构或设计决策。

html5从入门到精通1.jpg

致力于小而连贯代码块的版本控制——通过类似CVS/Subversion,每次提交都直接发送到服务器。做部分文件的提交并不简单。
随着Git的出现,只提交较大文件的若干行代码变得很容易,并且可以在push到远程代码仓库之前先本地rebase/merge提交。
有一次,我在工作于更大功能的时候,采用了小型增量提交,我的工作效率直线上升。这样做能够清空我的大脑以便于面对更重要的事情。

html5从入门到精通2.jpg

经常写代码——最近,我正工作于:一个基于Web的企业协作和自动化平台(PHP/MySQL),一个基于云的实时指标聚合器和使用循环哈希(Node.js/Redis)的API,一个面向iOS app商店(Swift/SpriteKit)的棋盘游戏,专门的基于URLcronjob可替代基于webSaaS服务(JAVA),等等。
用过大量框架和语言有助于我的抽象和算法思维。
我从工具,如Eclipse RCP、Tapestry和Hibernate中学到了很多伟大的经验教训,并用到我的PHP项目里。尤其是在2000年初,在有Java特征的企业生态系统用于PHP存在之前。我从Unity3d/C#学到了很多关于网络和面向消息的架构。

如果我只坚持单一平台和社区的话,就永远不会知道这些概念。

编写简单的代码——我以前习惯于写复杂的代码以作为对自己的挑战。而现在的挑战是要编写优雅且简单的代码——到一种每个人都觉得他们也能做到的地步(即使他们不能)。简单代码通常来自于若干次复杂代码的迭代。引用Antoine de Saint Exupéry的话就是:“不是没有什么可添加,而是没有什么可消减的时候,才算是达到了完美。”
这也使得我们在长时间休止之后返回项目,以及鼓励其他人参与进来变得容易多了。

最后优化——我们很容易掉入试图比用户或计算机更聪明,并且预优化各种边缘情况的陷阱。关注帕累托法则(80%的效果来自于20%的工作)。写代码,运行代码,当必要的时候专注于最大的瓶颈。这也支持保持代码库的简单。不要首先优化代码并不意味着编写粗糙的代码。代码总是应该精益和优雅,没有必要画蛇添足,不要将一整天的时间用在挤压剩下的10%,但其实已经能够工作良好的一些东西上。不但工作效率会下降,而且还会引进更多复杂性,解决方案变得不那么可归纳,等等。

着眼于“最重要的事情优先”——总是有一些项目领域比其他的更有趣或更具挑战性。工作于那些有趣的东西总是比工作于那些必要的东西更有诱惑。
在攻克重要部分时,将有趣部分作为一种调剂,也就是说,两者都做一点也是可以。
因此,光从这一点上说,将大的问题分解成小问题的理念是不言自明的。每个人都懂。所以,我会通过计分若干“quick wins”来开启我的一天,这能让我更有冲劲和更专注(“quickwins”可以是任何东西,包括有趣又小型的挑战),然后我会首先冲向“最重要的事情”。

html5从入门到精通4.jpg

了解全栈——当我刚开始干这一行的时候,没有什么比等别人做完他们那部分东西,然后我才能继续我那部分工作更糟糕的了(设计师,后端人员,前端人员,数据库人员,服务器人员,等等)。
于是,当我2000年创办自己的软件开发公司的时候,我做了一个明智的决定,那就是涉猎全栈。我知道我不可能擅长所有东西,也不可能是最后唯一对所有一切负责的人,但我想要做终端到终端的原型,因为我没有耐心看过程。

每当我需要的东西触碰到我不懂的领域时,我会研究它。于是乎,我学会了服务器管理,数据库管理,设计,前端/后端开发,云架构等。
通过了解其他领域是做什么的,我才能写出包含它们需要的代码。

html5从入门到精通5.jpg

当然,Jeff Standen提出的这些要点似乎不是所谓的“小习惯”,但我向你保证,它们是小变化历经20年时间导致的结果。重要的行为变化并没有意义,更多的是如何频繁地练习这门技术。所以,当你下定决心要学习Html5从入门到精通,就需要问问自己,有多大的决心去养成这些良好的习惯?