10

我是一个对进入 Web 应用程序开发感兴趣的长期爱好者程序员。我对各种非 Web 语言有相当多的个人经验,但从未真正涉足 Web 应用程序。

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

对于想要扩展到 Web 开发的独立应用程序开发人员,您有什么建议?

4

3 回答 3

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 将在您的软件包存储库中,并且可能有特定于发行版的指南来设置它们。

于 2008-08-20T16:21:13.583 回答
2

许多语言都有网络对应物。用于 Java 的 JSP、用于 Ruby 的 Rails、用于 Python 的 Django 等。这可能是一个线索。

如果您想选择拥有最大用户群的平台(并且拥有最多的教程和示例),请选择 PHP。

不过,我强烈建议您研究各种框架。对于每一种面向 Web 的语言,肯定有很多资源可以消除编写所有低级管道代码的麻烦,因此您可以专注于重要的东西。就我个人而言,我几乎只使用 .NET,但我听说过很多不错的 PHP 框架,比如 Zend 平台和 CakePHP(用于 MVC 开发)。

如果您还打算在您的应用程序中使用 javascript 来为您的应用程序提供良好的 web 2.0 感觉,请使用一个隐藏混乱浏览器细节的库。如果您尝试自己执行所有跨浏览器脚本,您会发疯的。一些好的是 Prototype 和 jQuery。

于 2008-08-20T16:14:26.800 回答
1

Eloquent JavaScriptAppJet提供了很棒的教程,让您在学习的同时也能跟随。

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

当涉及到服务器交互时,请了解您的选择。Ajax 并不是全部。研究CometJSON-RPC等技术,以及查看各种服务器端框架,这些框架提供对 JavaScript 的轻松访问,例如DWRJayrock或任何使用您选择在服务器上使用的任何语言将您的函数公开给 JavaScript 的工具.

于 2008-08-20T16:17:23.330 回答