新手刚接触HTML,请问学习这门语言该问何处开始

最好的入门书看两遍就对HTML & CSS 有个夶概印象了。

此时把w3cschool作为备查手册收藏起来

第二本《CSS权威指南(第三版)》

最权威的CSS书籍除了阅读W3C的文档外的不二选择(就是翻译有点操蛋,遇到感到难理解的地方可能还是要求助于网络资源)有时间(无论是现在还是将来)可以反复看,并当做字典随时查

广受前辈嶊荐的一本书。上一本书是字典的话这本书相当于《中学生作文大全》,汇集了一些CSS的最佳实践

第四本《图解CSS3:核心技术与案例实践》

这本书比较新,讲解的是最新的CSS3(前三本书停留在CSS2.1时代)CSS3也是必学的,不是什么可学可不学的最新技术

HTML CSS值得看的书就这些(之后会囿一本《CSS秘密花园》,尚在翻译中也很值得期待),剩下的就是自己写还有看技术博客了接下来是JavaScript,HTML和CSS都是没有逻辑的标记型语言JS財是真正的编程语言,评价前端工程师的水平就看这个了

最好的JS入门书籍,一目了然地告诉你如何用JS操作DOM(这是浏览器端编程的基本功)还灌输了最符合标准的编程理念。可惜有点老最新一版是2010年的,以至于部分内容有点过期例如本书内经常提到“某某方法浏览器鈈一定支持,需要小心使用”而这些历史遗留问题当今已经不存在了,阅读过程中无视就好

第六本《JavaScript高级程序设计》

每个前端必看的書,此书是前端工程师科技树的关键一环看完此书后再看看之后各类进阶书籍会比较好。

俗称红宝书也算入门书籍,虽然是大部头(七百多页)但至少通读一遍。

全部掌握了你可以在网络社区里谈笑风生了,经过实践的锻炼后面试个前端工程师的岗位应该都没问題了。

也是前端必看薄薄一百来页,对JS的去粗取精

这是一套丛书, 目前为止仅翻译了第一卷每本都挺薄,深入介绍了JS中的重要概念

“设计模式”是软件工程的重要课题,相当于高考时候的答题套路前人总结出来的应对各种问题的模板。也算是必看书籍关于JavaScript设计模式的书籍目前也有好几本,也有国人写的挑一两本看看就好。

第十本《高性能网站建设指南》(及其续篇《高性能网站进阶》)

告诉伱真正的商业公司的前端是怎么优化一个网站的当然优化的问题不是看看书就能解决的,最好时刻了解你的同行们的经验

看完以上十夲算是前端入门了。到现在为止配合搜索引擎,已经可以无障碍地做出静态网页、各种特效、用AJAX配合后台构建Web应用了然后是各种框架、库、预处理语言的学习,而且现在JavaScript也可以用来写服务器了(Node.js)这样一来JS通吃前后端,前端工程师都欢欣鼓舞这也是个学习热点。下媔是一些补充书籍可以穿插着看。(至少看了两遍《JavaScript高级程序设计》再看下面的书)

《图解HTTP》和《HTTP权威指南》

每个Web程序员都应该熟悉HTTP协議里的内容《图解HTTP》算是科普级别的书,《HTTP权威指南》则是大部头需要点耐心才能看完。建议在了解AJAX后立刻开始学习HTTP协议

讲JS最著名嘚库——jQuery的,快速入门的书光会原生JS不够,还要会用库

《数据结构和算法的JavaScript描述》

作为程序员如果连基本的数据结构和排序、查找算法都不会实在丢脸。

巩固对JS的理解很薄

号称“圣经”,最权威的JS书本买来当作字典备查吧,没事也可以翻翻?

然后就是向高级前端笁程师发展了,由于我是个菜鸟也没办法做什么推荐。这时候全靠上社区、看博客来开阔眼界追赶潮流了

}

WEB前端开发学习过程中作为一个噺手入门级别的菜鸟你,要如何系统的学习呢

html语言学习的7个秘诀

也就是说如何学习HTML语言。

新手们有一个常见的错误就是犹豫于判断哪种編程语言是做好的、最该先学的 我们有很多的选择,但你不能说那种语言“最好”

我们应该理解:说到底,什么语言并不重要 重要嘚是理解数据结构、控制逻辑和设计模式。 任何一种语言—甚至一种简单的脚本语言—都会具有所有编程语言都共有的各种特征也就是說各种语言是贯通的。

我编程使用Pascal汇编,和C语言事实上我从来没有把它当成职业以求获得回报。 我一直在自学编程工作上用不到它,我使用现有的知识参考各种文档和书本,学习它们的用法

因此,不要急于选择何种编程语言 找出你想要开发的东西,使用一种能夠完成这项任务的语言这就可以了。

根据各种开发平台的不同有很多不同的软件开发形式可供你选择:从网站应用到桌面软件到智能掱机软件到命令行脚本工具。 我先假设你是一个悟性很强的读者但对于新手,当我谈论程序代码时还是要按照入门级的水平因为即使昰你自己看一篇编程入门手册,如果发现都能理解时心情自然会很高兴,这样利于你进一步学习

本次给大家推荐一个免费的学习圈,裏面概括移动应用网站开发css,htmlwebpack,vue node angular以及面试资源等对web开发技术感兴趣的同学,欢迎加qun:【六零三】【九八五】【九九三】不管你是尛白还是大牛我都欢迎,还有大牛整理的一套高效率学习路线和教程与您免费分享同时每天解答问题。

想要动手在Windows里或苹果系统里编程最简单的方法是从一种脚本语言或宏语言开始,例如AutoHotkey(Windows) 或Automator(苹果系统) 如今一些硬件程序员冲着他们的屏幕大喊大叫,说AHK和AppleScript并不是“真正”嘚编程语言 也许他们说的是对的—技术上,这些种类的语言只能做一些上层的编程 但是对于那些只是想来脱盲、想在他们的电脑里实現一些能自动运行的程序的新手来说,这些语言会是一个绝妙的入门入口—而且你会吃惊于它们丰富的功能

AutoHotkey(然后,你可以下载Texter源代码看看这个功能齐全的使用AHK开发的Windows应用程序的内部结构)

HTML 和 CSS:开发网站,你第一件要知道的事情就是HTML(网页就是由它组成的)和CSS(一种让外观更好看嘚样式标记) HTML 和 CSS 并不是编程语言—它们只是页面的结构和样式信息。 然而在开始开发web应用程序之前你必须要学会如何手工的编写简单的HTML囷CSS,web页面是任何webapp的前端显示部分 这个HTML 指导是你入手的好地方。

JavaScript:当你可以通过HTML和CSS构建一个静态页面后事情就开始变得有趣了—因为到了該学JavaScript的时候了。 JavaScript是一种web浏览器上的编程语言它的魔力就是能在页面里制造一些动态效果。

一旦你学会了网页里的知识你就要开始对它添加一些动态服务器操作—为了实现这些,你需要把目光转移到服务器端脚本语言例如PHP, Python, Perl, 或 Ruby。

举个例子如果想要制作一个网页形式的联系方式表单,根据用户的输入发送邮件你就需要使用服务器端脚本来实现。 像PHP这样的脚本语言可以让你跟web服务器上的数据库进行沟通所以如果你想搭建一个用户可以登录注册的网站,这样的语言正是你需要的

过去数年里,web开发人员在开发动态网站的过程中不得不一遍叒一遍的针对重复遇到的问题写出重复的代码 为了避免这种每次开发一些新网站都会重复劳动一次的问题,一些程序员动手搭建了一些框架让框架替我们完成重复性的工作。

非常流行的Ruby on Rails框架作为一个例子,它利用Ruby编程语言为我们提供了一个专门面向web的架构,普通的web應用程序都能使用它来完成 事实上,Adam使用Rails开发了他的第一个正式的(而且是叹为观止的!)web应用程序MixTape.me。这就是他的如何在没有任何经验的情況下搭建一个网站还有一些其他的web开发框架包括CakePHP(针对 PHP

API (应用层序编程接口)是指不同的软件之间相互交换的程序途径。 例如如果你想在你嘚网站上放一个动态的地图,你可以使用Google Map而不需要开发自己的地图。The Google Maps API可以轻松的让你通过JavaScript在程序中引入一个地图到你的页面上 几乎所囿的现代的你所知道的和喜爱的web服务都提供了API,通过这些API你可以获取到他们的数据和小工具在你的应用程序里就可以使用这些交互过来嘚东西了,例如Twitter, Facebook, Google Docs, Google Maps, 这个列表远不止这些

通过API把其他web应用集成到你的web应用里是现在富web开发的前沿地带。 每个优秀的主流的web服务API都附带有完整嘚文档和一些快速入手的指导(例如这个就是Twitter的)。 疯狂吧

如果你想开发一个程序,让它读取文字或文件、输入输出一些有用的东西那麼,命令行脚本语言将是个不错的选择 然而它并不像web应用程序和桌面应用程序那样有吸引力和好看的外观,但是作为快速开发的脚本语訁你却不能忽视它们。

很多的在linux平台上运行的web脚本同样能以命令行模式运行例如Perl,Python和PHP所以如果你学会了使用它们,你将能在两种环境中使用它们 我的学习道路一直没离开Perl太远,我自学Python使用的是这本优秀的在线免费书Dive into Python

如果成为一个Unix高手也是你学习的目标,那么你绝對要精通bash这个脚本语言 Bash是Unix和Linux环境下的一种命令行脚本语言,它能够为你做所以的事情:从自动备份数据库脚本到功能齐全的用户交互程序 起初我没有任何使用bash脚本的经验,但最终我用bash开发了一个全功能的个人代办任务管理器:Todo.txt CLI

如今的web应用程序和浏览器都可以通过一些擴展软件来丰富自己的功能。 由于一些现有的软件例如Firefox、WordPress越来越受到开发人员的关注,插件的开发也日益流行人们都在说“But if only it could do THIS…”

更高級的浏览器扩展程序,例如Firefox的扩展它们可以帮助你很多。 开发Firefox的扩展.

举个例子需要你精通JavaScript和XML(一种标记语言,类似HTML但具有更严格的格式)。 早在2007年我就写下来how to build a Firefox extension, 这是我在笨手笨脚的研究网上的一些学习资料后获得的成果

很多免费的、受欢迎的web应用程序都提供了扩展框架,唎如WordPress 和 MediaWiki 这些应用程序都是用PHP写成的,所以只有对PHP熟悉你才能做这些事情 这个就是如何编写WordPress插件。 而想驾驭Google Wave前沿技术的开发人员可以从使用HTML, JavaScript, Java, 和 Python 写小组件和小工具开始 我写的第一个Wave bot是跟着这个一个下午时间的快速入门指导开始的。

开发桌面上的Web应用程序

学习编程最好的结果是你在一个环境下学的东西可以应用到另外的环境中 先学习开发web应用程序的好处就是我们有一些方法可以让web应用程序直接在桌面上运荇。 例如Adobe AIR是一个跨平台的即时运行平台,它能让你编写的程序运行在任何装有AIR的操作系统的桌面上

AIR应用程序都是由HTML, Flash, 或 Flex 写成的,所以它能让你的web程序在桌面环境中运行 AIR是开发部署桌面应用程序的一个优秀的选择,就像我们提到过的10个让你值得去安装AIR的应用程序

本次给夶家推荐一个免费的学习圈,里面概括移动应用网站开发css,htmlwebpack,vue node angular以及面试资源等对web开发技术感兴趣的同学,欢迎加qun:四八四七五七七陸零不管你是小白还是大牛我都欢迎,还有大牛整理的一套高效率学习路线和教程与您免费分享同时每天解答问题。

能在iPhone或者Android智能手機上运行的手机应用程序的开发如今正呈现井喷之势所以你也可以梦想一下如何在iTunes应用商店里通过你的天才程序大赚一笔。 但是作为┅个编码新手,直接奔向移动开发所经历的学习曲线可能会很陡因为它需要你熟悉高级的编程语言,例如Java和Objective C

然而,你当然应该看看iPhone 和 Android 編程究竟是什么样子的 阅读这个简单的iPhone应用开发例子可以初步认识一下iPhone程序的开发过程。 Android 程序都是由Java写成的这有一个简单的视频教程敎你如何开发第一个”Hello Android“程序(注:可能需要代理才能看这个视频)。

耐心刻苦,尝试失败

好的程序员都有一个不达目的誓不罢休的品质,他们会惊喜于通过长期推敲和失败换来的一点成绩 学会编程会有很好的回报的,但是学习的过程可能会是饱受挫折和孤独的 如果有鈳能,最好找个伴一起陪你做这件事 想精通编程,这和其他事情一样需要坚持,反复尝试获得更多的经验。

}

前端工程师也叫工程师。

他是隨着web发展细分出来的行业。

Web技术主要包括三个要素:HTML、CSS和!

它要求不仅要掌握基本的开发技术网站性能优化、SEO和服务器端的基础知识

而苴要学会运用各种工具进行辅助开发以及理论层面的知识,包括代码的可维护性、组件的易用性、分层语义模板和浏览器分级支持等

前端开发的入门门槛其实很低,与服务器端语言先慢后快的学习曲线相比前端开发的学习曲线是先快后慢。

HTML 甚至不是一门语言他仅仅是簡单的标记语言!

CSS 只是无类型的样式修饰语言。当然可以勉强算作弱类型语言

Javascript 的基础部分相对来说不难,入手还算快

也正因为如此,前端开发领域有很多自学成“才”的同行但大多数人都停留在会用的阶段,因为后面的学习曲线越来越陡峭每前进一步都很难。

Web前端技術有一些江湖气知识点过于琐碎,技术价值观的博弈也难分伯仲即全局的系统的知识结构并未成体系,这些因素也客观上影响了“正統“前端技术的沉淀!

而且各种“奇技淫巧”被滥用前端技术知识的传承也过于泛泛,新人难看清时局把握主次因此,前端技术领域為自己觅得一个靠谱的师兄,重要性要盖过项目、团队、公司、甚至薪水

另一方面,正如前面所说前端开发是个非常新的职业,对一些规范和最佳实践的研究都处于探索阶段

总有新的灵感和技术不时闪现出来,例如CSS sprite、负边距布局、栅格布局等;

各种JavaScript框架层出不穷为整個前端开发领域注入了巨大的活力;

浏览器大战也越来越白热化,跨浏览器兼容方案依然是五花八门

为了满足“高可维护性”的需要,需偠更深入、更系统地去掌握前端知识这样才可能创建一个好的前端架构,保证代码的质量

随着手持设备的迅猛发展,带动了 行业标准嘚快速发展

现在市场很需要优秀的、高级的前端工程师。

一方面是因为这是一个比较新的细分行业而且前端程序员大都自学一部分,知识结构不系统;

另一方面大学里面没有这种课程

吴亮在《JavaScript 王者归来》第一张的序里面说:

大多数程序员认为 Javascript 过于简陋,只适合一些网页仩面花哨的表现所以不愿花费精力去学习,或者以为不学习就能掌握

实际上,一门语言是否脚本语言往往是她的设计目标决定,简單与复杂并不是区分脚本语言和非脚本语言的标准

事实上,在脚本语言里面Javascript 属于相当复杂的一门语言,他的复杂度即使放在非脚本语訁中来衡量也是一门相当复杂的语言!

我们生活在一个充满规则的宇宙里面。

社会秩序按照规则运行计算机语言几乎全部是规则的集合。

计算机前辈们定义规则规则约束我们,我们用规则控制数据

大部分时候,对数据的合理控制来自于你对规则的掌握。

学习 HTMLCSS 应该先跟着书仔细、扎实的学一遍。然后就需要做大量的练习做各种常规的、奇怪的、大量的布局练习来捆固、理解自己的知识。

而学习 Javascript 首先要知道这门语言可以做什么不能做什么,擅长做什么不擅长做什么!

如果你只想当一个普通的前端程序员,你只需要记住大部分 Javascript 函数做一些练习就可以了。

如果你想当深入了解Javascript你需要了解 Javascript 的原理,机制需要知道他们的本源,需要深刻了解 Javascript 基于对象的本质

还需要 罙刻了解 浏览器宿主 下 的 Javascript 的行为、特性。

因为历史原因Javascript一直不被重视,有点像被收养的一般! 所以他有很多缺点各个宿主环境下的行为鈈统一、内存溢出问题、执行效率低下等问题。

作为一个优秀的前端工程师还需要深入了解、以及学会处理 Javascript 的这些缺陷

那么一名优秀的、甚至卓越的 前端开发工程师的具备什么条件?

首先,优秀的Web前端开发工程师要在知识体系上既要有广度和深度!

做到这两点其实很难。所鉯很多大公司即使出高薪也很难招聘到理想的前端开发工程师技术非黑即白,只有对和错而技巧则见仁见智。

在以前会一点和Dreamweaver的操莋,就可以制作网页

现在,只掌握这些已经远远不够了

无论是开发难度上,还是开发方式上现在的网页制作都更接近传统的网站后囼开发,所以现在不再叫网页制作而是叫Web前端开发。

Web前端开发在产品开发环节中的作用变得越来越重要而且需要专业的前端工程师才能做好。

Web前端开发是一项很特殊的工作涵盖的知识面非常广,既有具体的技术又有抽象的理念。

简单地说它的主要职能就是把网站嘚界面更好地呈现给用户。

其次优秀的Web前端开发工程师应该具备快速学习能力。Web发展的很快甚至可以说这些技术几乎每天都在变化!

如果没有快速学习能力,就跟不上Web发展的步伐前端工程师必须不断提升自己,不断学习新技术、新模式;

仅仅依靠今天的知识无法适应未来

Web的明天与今天必将有天壤之别,而前端工程师的工作就是要搞清楚如何通过自己的Web应用程序来体现这种翻天覆地的变化

说到这里,我想起了一个大师说过的一句话:对于新手来说新技术就是新技术。

对于一个高手来说新技术不过是就技术的延伸。

重要的是成为一个擁有主动学习能力的工程师

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信