开始学习Web应用程序设计的最佳方式


10

我是一个很有兴趣进入Web应用程序开发的业余爱好者程序员。我对各种非网络语言有着相当丰富的个人经验,但从未真正分享到Web应用程序。

我通常没有学习新的语言或技术的任何问题,所以我不担心这是“最好的”语言或网络堆栈的工作。相反,我想知道任何讨论Web应用程序设计的推荐资源(书籍,文章,网站,甚至是大学课程):管理和优化服务器交互,安全问题,可伸缩性以及属于设计的其他主题比实施。

对于希望分支到Web开发的独立应用程序开发人员,您会推荐什么?

10

有各种各样的Web应用程序语言可以进入。我最经验的人(因此会在这里讨论)是PHP,eRuby和Ruby on Rails。所有这些在互联网上都有很好的教程 - 我会链接到下面的一些教程。

要选择哪一个取决于你想要做什么。使用PHP和eRuby你必须自己做大部分事情 - 而Ruby on Rails会为你做很多事情(很有用,但如果你不知道自己在做什么也会很危险)。 Ruby on Rails非常适合做与数据库相关的事情 - 例如标准的CRUD(创建,读取,更新,删除)应用程序。 Ruby on Rails(通常缩写为RoR)教程的标准类型教程是一个博客应用程序(创建条目,读取条目,更新条目,删除条目)或地址簿应用程序。几乎可以在一行代码中执行许多这类应用程序 - 使用RoR的“脚手架”功能。

PHP和eRuby让你自己做更多的工作 - 但在某些情况下这可能会更好。 PHP比eRuby更广为人知,但我喜欢Ruby语言,所以我倾向于使用eRuby。这些都适合做简单的应用程序(比如网站上的联系表单)或更复杂的应用程序(phpBB - 一个论坛软件是用php编写的)。

至于哪一个选择 - 我会和他们一起玩,看看你的想法。尝试运行教程的前几个部分,看看你是否喜欢它。

这里来的链接,各种教程:

PHP

eRuby的

Ruby on Rails的

有几个教程可以帮助您入门。其中一些将带您安装必要的软件(网络服务器和其他任何所需的软件 - 例如.php或ruby),有些则不需要。在Windows上安装Apache(webserver),MySQL(db)和PHP的一个好方法是使用XAMPP。如果你在linux上,那么apache,mysql和php将在你的软件包仓库中,并且可能有发行版特定指南来设置它们。


2

很多语言都有网页对应。用于Java的JSP,用于Ruby的Rails,用于Python的Django等等。这可能是领先的。

如果你想一起去可以说是最大的用户群的平台(和与,教程和实例的最大桩),去PHP。

尽管我强烈建议查看各种框架。对于每一种面向网络的语言,必定会有大量的资源来解决编写所有低级管道代码的麻烦,因此您可以专注于重要的东西。就我个人而言,我几乎完全使用.NET,但我听说过一堆很好的PHP框架,比如Zend平台和CakePHP(用于MVC开发)。

如果您打算也用在您的应用程序的JavaScript,得到很好的Web 2.0的感觉你的应用程序,请使用隐藏凌乱的浏览器的详细信息库。如果您尝试自己完成所有跨浏览器脚本,那么你会变得疯狂。一些好的是Prototype和jQuery。


1

Eloquent JavaScriptAppJet提供了极大的教程,让你当你学习跟随一起。

一旦你涵盖了所有的基础知识,Ajaxian应该回答你关于应用程序设计等方面的许多问题。他们不仅发布了许多有关这些主题的优秀文章,还应该探索他们链接的许多网站,因为这些网站通常也提供丰富的信息。

当谈到服务器交互时,请了解您的选项。 Ajax并不是全部。研究技术,如CometJSON-RPC,以及在寻找能够提供轻松访问的JavaScript如DWRJayrock,或使用你选择在服务器上使用任何语言暴露你的功能,JavaScript的任何工具不同的服务器端框架。