假设我今天醒来并希望创建一个StackOverflow.com的克隆版,并获得数百万美元的广告点击数百万美元的财务意外收获。我从哪里开始?
我对网络技术的理解是:
要写一个好的网站,我只需要购买七本书并全部阅读? Web 2.0站点真的是所有这些技术的协同作用吗?
有人去哪里开始创建具有专业外观的网站,以及沿途的步骤。
答案 0 :(得分:11)
虽然我的知识很大程度上建立在使用互联网来搜索我想知道的东西(w3schools.com帮助很多,和A List Apart一样)的情况下,但是一些好书也帮助了我。他们一直是平台/语言特定的,所以除非有人好奇,否则我会避免提及它们。对我来说,至少,打开一本书以便我不必调整窗口大小或在它们之间切换是非常有价值的。
列表的第一部分没问题,但最后几个项目需要调整。 ASP.NET为您的应用程序添加了服务器端功能(大部分)。它存在于浏览器之外,因此非常强大,可以与各种最终用户轻松共享。
服务器端处理的问题(某些人说)是当您要求执行操作时,您的应用程序必须发出新的HTTP请求。因此,如果单击指向生成一组新数据的页面的链接,则不会立即获得结果。页面重新加载或加载单独的页面。
Javascript在一定程度上解决了这个问题 - 它允许您即时响应用户输入。当用户单击按钮时,是否要显示两个数字的总和?你可以使用Javascript。
Javascript的问题在于它无法直接与数据库对话,也无法探索服务器的文件系统或其他类似的东西。它存在于浏览器中 - 期间。
AJAX填补了用户浏览器和服务器之间的空白。使用AJAX, Javascript 可以在不刷新页面或加载新页面的情况下发出HTTP请求。 Javascript与服务器端脚本(不一定是ASP,与PHP,Rails,Coldfusion等一起使用)进行通信,并发送和接收信息。由于Javascript不依赖于页面加载,因此快速,快速的AJAX脚本几乎可以给人一种常见桌面应用程序的感觉,在对应用程序的数据执行简单操作时,您不必等待HTTP请求。 / p>
答案 1 :(得分:8)
我认为这一系列的Opera Articles将让您对Web标准和Web开发的基本概念有所了解。
2014年更新:Opera文档于2012年重新定位到webplatform.org的此部分:
答案 2 :(得分:3)
伊恩的回答很重要。您可以购买所有这些书籍并阅读所有书籍,对网络开发一无所知。你真正需要做的是从一些不像Stack Overflow那么大的东西开始。从您的个人网站开始。阅读a list apart上的一些web dev / css文章。了解doctypes以及使用它们的原因。添加一些CSS并更改颜色。转到quirksmode并仔细阅读该网站。添加一些js。关注Crockfords site上的一些链接。您可能会偶然发现他应该观看的精彩视频讲座。然后在那之后回到你写的所有js并重写它。然后选择您想要学习的服务器端语言。 Python非常简单,但是你选择的并不重要。然后回来并将所有这些整合到您的网站中。此时,您将至少开始使用Web开发,并将使用多种不同的技术。
编辑:我忘了提。 阅读书籍。
我过去曾与之合作的许多开发人员已经完成了他们的职业生涯,并没有在一定程度上取得进展。我可能完全错了,但我将其归因于没有阅读足够的书籍并依赖于反复使用相同的错误代码。
答案 3 :(得分:2)
你可以出去购买一堆书并开始阅读它们,很快就会在看似庞大的学习曲线中不知所措,从而无处可去,这就是你所拥有的,对于一个富有的互联网企业家来说,这是你想去的地方。
或者,我建议的是,您可以定义要解决的问题,然后继续寻找该问题的解决方案。从小事开始。 “我有一个问题:我没有关于我自己的网站。”定义解决该问题所需的操作,学习基础知识并进行操作。然后,定义一个新问题,它可能依赖于第一个问题的解决方案,找到你需要做的事情,然后去做。
这就是所有技术专业人士的发展方式。我的第一个网站是个人网站,只有文字。然后我添加了一些笑话和一些电影报价。然后我厌倦了处理所有更新的人,我学会了如何将它们放入数据库并从数据库中检索它们以供显示。它会一直持续下去。
当你从经济意外收获的钱中获得更多的钱而不是你知道如何处理时,请打电话给我。
答案 4 :(得分:2)
如果你真的只想双脚跳进去,我建议你从Adobe看看ColdFusion。开发人员版本是免费的,可以在windows,os x和linux上运行。该文档具有权威性和广泛性,有一个非常活跃的开发人员社区,您可能只想了解几本书。权威指南是一系列可以在Amazon
上找到的书籍关于ColdFusion的好处是你可以将它作为其他语言的垫脚石,并在此过程中保持高效。你甚至可以将它与Java混合在一起,因为它本身是用java编写的。还有许多内置的东西,你必须在网上搜索或支付更多的其他语言。诸如全文索引,图形,服务器监控,基于ajax的控件,flash / flex集成,异步操作等等。
您甚至可以选择构建面向对象的代码或程序代码,尽管有些人不会将其视为一种好处。但是,那些人很少同意哪种风格应该获胜。
干杯!
答案 5 :(得分:2)
我认为sitepoint是学习Web开发最佳实践的最佳资源。他们有great articles,good references,可能是best forums之一。然而,那里的人可能有点脾气暴躁。 ;) 如果你是一个真正的书呆子,阅读HTML 5和CSS的规范也是一个很好的学习方法。
答案 6 :(得分:1)
我和伊恩在这一个。阅读书籍一切都很好,但没有什么能够被困住。我实际上是在1999年开始使用ASP的傻瓜指南(那是“经典的”ASP)。
如果我今天要从头开始,我会看一些涵盖完整堆栈解决方案的东西,无论是Apache / PHP / MySQL,RoR还是其他什么。
ATM我没有Rails的经验,但它可能是一个非常好的开始,因为它包含很多你必须尽早弄清楚的东西(与Scriptaculous,JS框架集成) - 你可以随时了解幕后发生的事情。
.NET始终是一个选项,如果您对Visual Studio感到满意,那么它可能是最佳选择,但这并不是最简单的选择。
如果你知道一些HTML,但基本上是服务器端编程的新手,你可以看看ColdFusion。它实际上非常强大,就像Rails包含许多“开箱即用”的好处。有一家名为Railo的瑞士公司正在发布一个与JBoss有关的开源ColdFusion引擎。
最后也是最重要的 - 不要忘记数据库!迟早你需要掌握一些非常严肃的SQL ......
答案 7 :(得分:1)
CFML(又名“ColdFusion”,即使它真的是Adobe产品,而不是语言)绝对容易学习,如果你想要FML用于CFML,除了Railo你可以使用Open BlueDragon这是一个GPL CFML引擎。
答案 8 :(得分:1)
使用Web标准进行设计是第一次阅读!
答案 9 :(得分:0)
我刚读过它参加考试,虽然我知道网络理论的一部分,但我发现它具有很大的价值。
这当然是一本ASP.NET特定的书,但这是我建议学习的东西。
在您学习了所有ASP.NET内容之后,我建议您阅读JQuery。
快乐编码:)