朋友,
我在c ++中有一些exp,现在有点开始我的J2EE(生存:)))。与此同时,我有计划进入我自己的门户网站。但由于对Web技术的经验很少,我需要从头开始。我有点困惑,走哪条路,我就在这里。 PHP,Python或JSP,考虑到这样一个事实,无论如何我必须在我的工作中学习J2EE。 是否值得学习PHP或Python来开发一个我希望获得80-100K的门户网站 每天点击“如果”一切顺利还是jsp就足够了?
非常感谢
答案 0 :(得分:13)
在学习其中任何一个之前,花一些时间深入学习HTML和CSS。还学习Javascript和JQuery(或您最喜欢的客户端库)。关于这个主题的O'Reilly书籍几乎都是好的IMO。
我这样说是因为我认为你会发现,对于大多数现代网站来说,很多丰富的东西都转移到客户端,远离服务器端。在这个模型下,PHP或JSP中的代码可能看起来非常相似(即,从数据库中获取数据并将其提供给您的视图或JSON供客户端使用)。
答案 1 :(得分:1)
考虑到你已经习惯了c ++,应该看看aspx和c# - 可能更接近你目前的经验。
也就是说,PHP是一个轻而易举的事,所以它不应该提出任何挑战。请记住,如果你想从语言中获得最大的收益,你必须要学习一些关于配置apache和框架(cake,codeigniter,zend等)的知识。
答案 2 :(得分:1)
如果您从性能和扩展的角度很好地设计网站,那么您列出的所有服务器端技术对于您期望的流量“足够” - 以及您未提及的许多其他技术,例如其他基于Java的方法,C#,以及(最后但并非最不重要)Ruby(可能与Rails一样,但是,与其他语言一样,它有几个框架供您选择)。
正如大多数人所说的那样,客户端的考虑更加清晰 - 除非你想尝试像gwt这样的“客户端代码的服务器端生成器”(我告诉后者运行良好,但是我个人总是对代码生成器保持警惕,特别是使用代码生成器,而不是理解它为你做的“代码”,在这种情况下是HTML,CSS和带有自己框架的Javascript。除了GWT和类似的方法(如果这是你选择的毒药),真正学习HTML,CSS和Javascript是必须的 - 然后你可以再次选择许多很多框架(jQuery,Dojo,closure,等等。)
对于性能问题,你真的想研究Steve Souders的site(以及书籍等) - Steve是服务器端大师,直到测量显示他的瓶颈真的是客户端,然后他把自己变成了 客户端性能向导;-)。但是为了充分利用这些书籍,你需要先了解HTTP,HTML等等,然后开始使用; - )。
答案 3 :(得分:1)
每天点击次数并不是衡量效果的真正有用指标。你真的需要关注峰值负载和可接受的响应时间。
每天80-100k次点击平均每秒约1次。点击量不会均匀分布,因此对于正常流量,您可能会遇到每秒10次点击的峰值负载。
如果您要通过简报或商业广告推广该网站,预计会以每秒100次点击次数啄食。
如果您销售1美元的机票,预计将达到每秒1000次点击的峰值。
现在,您为网站选择的语言并不像您选择的数据库(不一定是关系型)以及将数据存储在数据库中那样重要。
扩展前端相对容易,因此真正快速有效的HTML生成应该不是主要关注点。选择一个对开发时间有效的平台。
答案 4 :(得分:0)
我希望这个问题能够被认为是主观的。但是,我会花2美分。
JSP可能与J2EE相吻合。 (我听说它可能有点僵硬,但我没有经验可以提供有关此事的任何见解。)
PHP是一个很好的候选者,因为它很受欢迎。你可以在网上找到很多信息。
Python并不像webdev那样受欢迎,因此找到示例并不容易。
我也是第二个Dave Markle的观点。如果你想学习webdev,HTML,CSS和JavaScript也是至关重要的。您可能永远不想成为一名前端开发人员,但在某些时候您无法摆脱这些技术的处理。
答案 5 :(得分:0)
有很多选择。
由于您已经了解(并且正在了解)Java,因此一种选择是将GWT用于服务器和客户端。这可以帮助您,因为您不需要学习另一种语言(JS / HTML / Python / PHP等)。如果你的门户网站很大,使用Java可以帮助你更好地组织应用程序 - 通常基于JS / HTML的应用程序不适合正确的组织,即使你使用像jQuery或YUI这样的好JS库。拥有一个好的组织可以帮助很多 - 在更新和修改之后。
如果您计划的合资企业是一个/两个人的企业或者是时间限制 - 上市时间是一切 - 那么我不会建议更早的方法 - 特别是如果您的服务器端部分预计是大。
Java是一种编写代码的慢速语言。你将用6个月的时间用Python编写的项目将花费你近1年的Java时间。在这样的scneario中,我更喜欢Python - 它是一种正确的语言 - 与PHP不同,你也可以在那里创建具有良好组织的代码 - 虽然比使用Java有点不那么有条理。
请注意,如果您的客户端代码比服务器端代码复杂得多,那么使用GWT对您没有任何伤害。但是如果你的服务器端代码与客户端相比非常复杂,那么我建议使用Python。
另一点是使用现有的Web框架来简化您的工作。对于Python,Django是一个很好的选择。这本身可以将您的工作时间减少50%或更多,同时使您的代码更加安全和可扩展。
答案 6 :(得分:0)
它真的与C ++不太相似,但我会推荐PHP。你真的不能指望服务器端脚本语言类似于像C ++这样的编译语言。就个人而言,我发现PHP是一种丑陋,凌乱的语言,但是一旦你进入它,它就会非常有价值。其他语言有太多缺点。 ASP.Net过于以微软为中心,Python和Ruby on Rails过于模糊,也是非大括号的语言,这意味着它需要进行大量调整才能改变它们。希望这可以帮助。