HTML、CSS、JavaScript、PHP、 MySQL按什么顺序来学习

APP开发指南 日期:2014-03-05
如果你有耐心坚持个一年以上的话, 我会推荐HTML, css ,js, apache ,php, mysql

后三者是需要装软件的, 推荐wamp, 绝佳的一站式环境配置, WampServer, the web development platform on Windows 直接包括了apache, php, mysql三个软件, 省的自己一个一个装.
有不少人在评论里问mac os下对应的软件, 这里补充一下: XAMPP Installers and Downloads for Apache Friends

首先学习HTML, css, 这两个东西是一套的, 非常容易理解, 把w3school上面的教程过一遍就会了, 记住要一个个过, 千万不要偷懒, 一旦开始偷懒, 你会越来越偷懒, 最后什么都没学成. HTML 教程 , CSS 教程

下一步是学js, js相比前两个会难的多, 因为js才是一门正式的编程语言, 同样, w3school的教程全过一遍, JavaScript 教程 , 教程过完了就可以买书看了, 强烈推荐一本超好入门书: 《JavaScript DOM编程艺术(第2版)》(Jeremy Keith,Jeffrey Sambells), 认真学, 多看, 看完之后学jquery, 这个时候你基本能够了解语言库了, jquery 也直接过一遍w3school的教程, jQuery 教程 . jquery会了, 基本上你网页开发前端就已经入门了, 如果你学的扎实, 反复的看, 其实你就可以胜任前端开发的工作了, 不过浏览器兼容性还是解决不了的, 不过你目标不是前端工程师, 浏览器的兼容性不了解也无所谓.

在第二步你学习js的时候, 你可能就接触一些后端的东西, 没错, 就是ajax. 这个是需要后端返回数据的. 这个时候你要开始学习php了, 入门php相比于js会更麻烦一些, 因为运行php需要有很多细节要处理, 所以一本好的入门书籍是非常重要的, 这个w3school上面的php帮不了什么忙了, 推荐一本书: 《php和mysql web开发(原书第4版)》([澳]威利,[澳]汤姆森) , 当然, 这过程中你会遇到各种各样的问题, 但是如果你学到了这一步, 非常欢迎你私信我来学习, 我绝对帮助, 现在肯学习的孩子太少了, 而且题主才上高中, 太难能可贵了.

一些注意点, 学习HTML, css, js的时候, 只要有浏览器就够了, 不需要装wamp, 编辑器推荐sublime, 多用google, 多敲代码, 尤其是多敲代码非常重要, 不敲代码你什么都学不会. 其他的想起来再补充吧.

对于那些说加入xxx阵营的, 不要理他们, 直接在win上面学, php和apache对win的兼容性非常好, 完全可以从入门学到精通都无需碰linux. 当然, 如果你网站最终上线的话, 还是需要接触linux服务器进行部署. 这个到需要部署的时候再说, 提前接触linux就是浪费时间.

没错,你列出的学习顺序非常正确。本人就是从小学习电脑最后自己建站的。D2CN就是我的。

HTML是网页标记语言,是浏览器能够阅读的语言。你如果想你的网页让别人能看到,就必须学习HTML。且不说你是否建站,只要你写的东西想要浏览器能正确显示出来,那就要懂HTML。
HTML的编辑工具倒是起点很低,MS WORD就可以做到。你另存为HTM文档,再用记事本打开,就能看到HTML代码了,很好理解的代码。买本HTML的书籍,一会就会。

会了HTML,也只是知道了网页编辑的入门。真正要建站,就需要了解CSS了。简单来说,CSS是基于HTML的网页美化标记语言,被嵌套在网页中。语法比较直接,多数是文档格式化名词。可以自定义格式类,也可以被外部调用(嵌套)。如果是外部嵌套,基本上你就快要用到建站知识了。但没关系,这些仍然还可以在你的本地电脑模拟,并不真的需要一个服务器。

JavaScript也是标记语言,它被内嵌于HTML中,语法是Java语法。是因为HTML的功能实在受局限,多数是静态展示,没有互动能力。而JavaScript可以允许网页中使用一些特殊效果。早起的浏览器是不支持JavaScript的,但现在的浏览器没有不支持的。

上述3个标记语言,都还只是基于浏览器端的解释运行,可以完全独立于服务器。你在本地电脑的一个文件夹里写好,也完全可以在这个文件夹里用浏览器玩这些东西而不需要服务器支持。

上面3个标记语言再厉害,做出来的页面也只是一个或者一些页面而已。如果没有程序或者数据库的支持,这些页面就算再漂亮也最终没法对外部数据请求产生大规模回应。这时候,就需要动态页面(Dynamic Webpage)的支持了。要实现Dynamic Webpage,就要用到Php或者Aspx这些动态编程语言,以下就按php说。

Php这些编程语言不能被浏览器阅读,但是可以被安装了特定服务端软件的Web服务器(比如Apache)运行。通过服务器端的运行按照程序设定,向客户端浏览器发送结果。结果可以是被HTML化的页面。换句话说,服务器端在运行php程序,但在客户端,你只收到了一份html页面,这样你就在你自己的浏览器上看到了服务器端想给你看的内容。这个动作是可以交互的,你可以向服务器提出你的要求,服务器根据程序编制,返回给你特定的HTML内容(含Javascript和CSS)。可以是数据库里的内容,也可以是其他类型的内容,只要php能够实现。php的语法结构还是比较像C或者Java的,只要有点编程经验,理解Php不难。

有了php,仅仅依靠php那点语句是做不出什么动态网页的,一般都要搭配数据库,也就是你所说的Mysql了。Mysql只是常见的数据库系统之一,在类UNIX系统上是免费的,性能也不错,所以用的人比较多。很多商业网站为了避免版权纠纷和成本考虑,都使用类UNIX系统的服务器搭配Mysql。
Mysql不能说是个语言,它只是一种数据库系统而已。Sql是数据库业界基本标准化的数据库服务器访问查询语言,这个要学习一下才能编制出适当的查询。一般来说,以你的例子,在php中设置好数据库查询参数,并且写好查询语句,php服务器会向mysql服务器发出查询请求,mysql服务器会返回给你查询结果。然后php根据查询结果,经过适当处理,然后HTML标记化之后,返回给客户端浏览器,完成一次页面运行。

恭喜你,现在你看到Dynamic webpage了,就像你现在看到了我敲的这么多字,实际上已经被知乎存在了他们的数据库mysql里,而你点击我的答案标题,实际上是向知乎的服务器端发出了一个请求,这个请求被知乎的服务器收到,进行数据查询(可以是php进行这个查询),得到我这个答案,然后送给Apache服务器上的php进行处理,php得到这个结果,送答案的同时,也调出作者名称和资料给你看到并开始进行格式化(HTML)和美化(CSS+JavaScript)。而你点击别人的答案,也会得到同样的效果,但答案内容不同,这就是Dynamic Webpage的含义。

最后,你并不需要马上去了解怎样架设服务器。虚拟主机也很多。可以租一个先玩玩。但做好一个网站,上述这些语言多少还是要知道点好。


转载请注明文章出处:APP开发
上一篇:揭秘神秘精英黑客组织w00w00,WhatsApp、Napster、Facebook等创始人或高管曾参与
下一篇:为什么设计师不愿意被人称为美工?