我是一位长期爱好的程序员,对进入Web应用程序开发很感兴趣。我对各种非网络语言有相当多的个人经验,但从未真正分支到网络应用程序。
我在学习新语言或技术方面通常没有任何问题,所以我并不担心哪种语言或网络堆栈可以使用。相反,我想知道讨论Web应用程序设计的任何推荐资源(书籍,文章,网站甚至大学课程):管理和优化服务器交互,安全性问题,可扩展性以及其他属于设计的主题而不是实施。
对于希望扩展到Web开发的独立应用程序开发人员,您会推荐什么?
答案 0 :(得分:10)
您可以使用各种各样的Web应用程序语言。我最常遇到的(因此将在这里讨论)是PHP,eRuby和Ruby on Rails。所有这些都有很好的互联网教程 - 我将链接到下面的一些。
选择哪一项取决于您的具体目标。使用PHP和eRuby你必须自己做大部分事情 - 而Ruby on Rails会为你做很多事情(很有用,但如果你不知道你在做什么,也会很危险)。 Ruby on Rails非常适合做与数据库相关的事情 - 例如标准的CRUD(创建,读取,更新,删除)应用程序。标准类型的应用程序Ruby on Rails(通常缩写为RoR)教程教你是一个博客应用程序(创建条目,读取条目,更新条目,删除条目)或地址簿应用程序。几乎可以在一行代码中完成许多这类应用程序 - 使用RoR的'scaffold'功能。
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将在你的软件包存储库中,并且可能有发行版特定的指南来设置它们。
答案 1 :(得分:2)
许多语言都有网络版本。 JSP for Java,Rails for Ruby,Django for Python等。这可能是一个领先者。
如果您想要使用可以说是最大用户群的平台(以及最大的教程和示例),请选择PHP。
我强烈建议您研究各种框架。对于每种面向Web的语言而言,必然会有大量资源可以消除编写所有低级管道代码的麻烦,因此您可以专注于重要的事情。我个人几乎只使用.NET,但我听说过一堆不错的PHP框架,比如Zend平台和CakePHP(用于MVC开发)。
如果您打算在应用程序中使用javascript来为您的应用程序提供良好的Web 2.0感觉,请使用隐藏凌乱的浏览器详细信息的库。如果您尝试自己完成所有跨浏览器脚本,那么您将疯狂。一些好的是Prototype和jQuery。
答案 2 :(得分:1)