且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《Web前端工程师修炼之道(原书第4版)》——我需要学习哪些语言

更新时间:2022-10-07 22:53:09

本节书摘来自华章社区《Web前端工程师修炼之道(原书第4版)》一书中的我需要学习哪些语言,作者Jennifer Niederst Robbins,更多章节内容可以访问云栖社区“华章社区”公众号查看

我需要学习哪些语言
如果你是一个把时间花在Photoshop和Illustrator上的视觉设计师,你需要暂时放下学习如何用文本设计的念头,但我向你保证,这是很简单的一项工作。很多创作工具可以加快创作过程,我们将在本章的后面讨论。
下面是与网页开发相关的技术列表。至于学习哪种语言或者技术,取决于你对自己的定位。但是我建议每一个人都了解HTML 5和层叠样式表,而且如果你想做前端设计,JavaScript也是必备的技能。网络技术更多地倾向于服务端配置、数据库、站点性能,但是一般来说这些都不是前端的开发工作(虽然了解基本的后台技术没有什么坏处)。
看一看
Web相关技术如下:
HTML
CSS
JavaScript和 DOM 脚本
服务器端脚本和数据库管理
HTML
HTML(超文本标记语言)是用来创建网页文件的语言。当前业界使用的HTML版本有多个:包括有广泛基础的HTML4.01,新的健壮的HTML 5也获得更多的关注和浏览器支持。两个版本都有一个严谨的实现,即XHTML(扩展HTML)。XHTML本质上采用同样的语法规则。我们将在第10章中讲二者的区别。
HTML并不是一种编程语言,它是一种标记语言,也就是说,它是用来识别和描述一个文件中各个组件的系统,比如标题、段落和列表。标记表示文档的底层结构(你可以把它当做详细的、机器可读的纲要)。要编写HTML,你只需要耐心和常识,并不需要编程技巧。
学习HTML的***方法是动手编写一些页面,我们将在练习中这么做。如果你最终从事Web制作,那么你将天天与HTML打交道。即便只是一个爱好者,了解底层是如何工作的,对你也是很有帮助的。令人鼓舞的是,学习基本知识非常简单。
层叠样式表(CSS)
HTML用来描述网页的内容,而层叠样式表(CSS)用来描述你希望这些内容如何显示。在Web设计界,页面的外观称为“展示”。也就是说,字体、色彩、背景图片、行间距、页面布局等都是由CSS来控制的。使用最新版的CSS3可以给你的页面添加一些特殊效果和简单动画。
CSS不仅提供页面在传统的浏览器和屏幕上展示的方法,还提供控制文件在其他媒介上展示的方法,如在打印机和掌上设备中展示。对于明确说明非视觉展示的文件,它也提供了相应的规则,如要用屏幕阅读器阅读时,该如何发音(虽然这些并不被良好支持)。
样式表也是自动制作的很棒的工具,因为你可以通过修改单独的样式表文件改变站点所有的页面。现在几乎所有的浏览器都不同程度地支持样式表。
虽然单独使用HTML就已经可以发布网页,但如果使用样式表,你就可以不必拘泥于浏览器的默认样式。如果你想专业地设计网站,精通样式表是必须的。
我们将在第三部分更详细地讨论样式表。
JavaScript/DOM脚本
JavaScript是一种脚本语言,在网页中,它可以用来添加互动和行为,包括(只是其中一部分):
检查表单输入,以确保输入有效;
更换一个元素或整个站点的风格;
使浏览器记住有关用户的资料,方便他们下次访问;
构建界面窗口,如扩展菜单。
JavaScript是常用于操纵网页元素或者某些浏览器窗口功能的一种语言。当然还有其他的Web脚本语言,但是JavaScript(也称为ECMAScript)是标准和最普遍应用的脚本语言。
你可能也听过术语DOM脚本,它的使用与JavaScript相关。DOM是文件对象模型(Document Object Model)的简称,它指的是用JavaScript(或其他脚本语言)访问并控制的网页元素的标准列表。DOM脚本是一个更新的术语,它原来是指DHTML(动态HTML),现在这种说法已经过时了。
编写JavaScript就是编程,所以如果你先前没有编程经验,学起来可能会很费力。很多人通过阅读书籍,跟随并修改现有的程序来自学JavaScript。大多数Web创作工具都带有标准的脚本,你可以用这些脚本来实现常用的功能。
专业的Web开发者需要知道JavaScript,然而很多设计师都是依赖开发者来在他们的设计中添加JavaScript行为的。所以,虽然JavaScript很有用,但并不是所有的Web设计师都需要会编写。教授JavaScript超出了本书的范围;但是如果你想学习,我推荐你看看《Learning JavaScript》,Shelley Powers著(O扲eilly出版社, 2006)。
服务端编程
有一些网站的页面都是静态HTML文件和图片,但是大多数商业站点都有非常高级的功能,如表单处理、动态生成页面、购物车、内容管理系统和数据库等。这些功能都是由运行在服务器上的特殊Web程序来实现的。有很多编程语言和架构(括号中列出的)可以用来创建Web程序,包括:
PHP(CakePHP、 CodeIngniter、Drupal)
Python(Django、TurboGears)
Ruby(Ruby on Rails、 Sinatra)
JavaScript(Node.js、Rhino、SpiderMonkey)
Java(Grails、 Google Web Toolkit、 JavaServer Faces)
ASP.Net(DotNetNuk、ASP.Net MVC)
开发Web程序是程序员的任务,并不需要所有的Web设计师都编程。这就意味着你也可以在客户端提供这些功能。你不必自己编写所有的程序就可以实现购物车、内容管理系统、邮件列表和留言薄等功能。