14

假设我今天醒来,想创建一个 StackOverflow.com 的克隆,并获得数百万美元的 0.02 美元广告点击的财务意外之财。我从哪里开始?

我对网络技术的理解是:

  • HTML 是最终显示的内容
  • CSS 是一种使 HTML 看起来令人愉悦的机制
  • ASP.NET 允许您使用 .NET(?) 添加功能
  • JavaScript 做事
  • AJAX 做异步的事情
  • ... 而这样的例子不胜枚举!

要写一个好的网站,我只需要买七本书并全部阅读?Web 2.0 网站真的是所有这些技术的协同作用吗?

有人从哪里开始创建具有专业外观的网站,以及沿途有哪些步骤。

4

10 回答 10

12

虽然我的知识主要基于使用互联网搜索我想知道的内容(w3schools.com 帮助了很多,A List Apart 也提供了很多帮助),但一些好书在此过程中帮助了我,尽管它们一直是特定于平台/语言的,所以除非有人好奇,否则我会避免提及它们。至少对我来说,打开一本书这样我就不必调整窗口大小或在它们之间切换是非常有价值的。

您列表的第一部分还可以,但最后几项需要调整。ASP.NET 将服务器端功能(大部分)添加到您的应用程序中。它存在于浏览器之外,因此非常强大并且可以轻松地与各种最终用户共享。

服务器端处理的问题(有人说)是,当您要求执行某个操作时,您的应用程序必须发出新的 HTTP 请求。因此,如果您单击指向产生一组新数据的页面的链接,您不会立即获得结果。页面重新加载,或加载单独的页面。

Javascript 在一定程度上解决了这个问题——它允许您即时响应用户输入。您想在用户单击按钮时显示两个数字的总和吗?你可以用Javascript来做。

Javascript 的问题在于它不能直接与数据库对话,或探索服务器的文件系统,或其他类似的东西。它存在于浏览器中——时期。

AJAX 在您的用户浏览器和您的服务器之间架起了一座桥梁。使用 AJAX,Javascript在不刷新页面或加载新页面的情况下发出 HTTP 请求。Javascript 与服务器端脚本(不一定是 ASP,也可以与 PHP、Rails、Coldfusion 等一起使用)对话并发送和接收信息。而且由于 Javascript 不依赖于页面加载,一个快速、快速的 AJAX 脚本几乎可以给人一种普通桌面应用程序的感觉,在这种应用程序中,您在对应用程序的数据执行简单操作时不必等待 HTTP 请求。

于 2008-08-15T20:11:40.667 回答
9

我认为这一系列Opera 文章会让您对 Web 标准和 Web 开发的基本概念有一个很好的了解。

2014 年更新:Opera 文档于 2012 年重新定位到webplatform.org的这一部分:

http://docs.webplatform.org/wiki/Main_Page

于 2008-08-15T20:18:46.860 回答
3

伊恩的回答很有分量。您可以购买所有这些书籍并阅读它们,而对 Web 开发一无所知。你真正需要做的就是从没有 Stack Overflow 这么大的东西开始。从您的个人网站开始。阅读列表中的一些 web dev/css 文章。了解文档类型以及使用它们的原因。添加一些 css 并更改周围的颜色。转到quirksmode并仔细阅读该网站。添加一些js。关注Crockfords 网站上的一些链接。您可能会偶然发现他的精彩视频讲座,您应该观看。然后回到你写的所有js并重写它。然后选择您想学习的服务器端语言。Python很容易,但你选择什么并不重要。然后回来将所有这些整合到您的站点中。在这一点上,您至少会开始使用 Web 开发,并且会使用多种不同的技术。

编辑:我忘了提。阅读书籍

过去与我合作过的许多开发人员在他们的职业生涯中都没有真正进步。我可能完全错了,但我将其归因于没有阅读足够的书籍并依赖于一遍又一遍地使用相同的错误代码。

于 2008-08-18T19:39:33.660 回答
2

你可以出去买一堆书并开始阅读,然后很快就会被看似巨大的学习曲线所淹没成为。

或者,我的建议是,您可以定义一个要解决的问题,然后着手寻找该问题的解决方案。从小事做起。“我有一个问题:我没有关于我自己的网站。”。定义你需要做什么来解决这个问题,学习基础知识,然后去做。然后,定义一个新问题,它可能依赖于第一个问题的解决方案,找到你需要做的事情,然后去做。

这就是所有技术专业人员的发展方式。我的第一个网站是一个只有文字的个人网站。然后我添加了一些笑话和一些电影名言。然后我厌倦了人工处理所有更新,我学会了如何将它们放入数据库并从数据库中检索它们以进行显示。它会一直持续下去。

当你从你的意外之财中得到的钱多到你不知道该怎么处理时,请打电话给我。

于 2008-08-15T23:55:01.713 回答
2

如果您真的只想双脚跳入,我建议您查看 Adob​​e 的 ColdFusion。开发者版是免费的,可以在 windows、os x 和 linux 上运行。文档是权威且广泛的,有一个非常活跃的开发者社区,只有几本书你可能想深入研究。权威指南是一系列书籍,可在亚马逊上找到

ColdFusion 的好处是您可以将其用作其他语言的垫脚石,并在此过程中保持高效。您甚至可以将它与 Java 混合在一起,因为它本身是用 Java 编写的。还有很多内置的好东西,你必须在网上搜索或用其他语言支付更多费用。诸如全文索引、图形、服务器监控、基于 ajax 的控件、flash/flex 集成、异步操作系统调用等。

您甚至可以选择构建面向对象的代码或过程代码,尽管有些人不会认为这是一种好处。不过,这些人很少就哪种风格应该获胜达成一致。

干杯!

于 2008-08-21T15:40:06.733 回答
2

我认为 sitepoint 是学习 Web 开发最佳实践的最佳资源。他们有很棒的文章很好的参考资料,并且可能是最好的论坛之一。但是那里的人可能有点脾气暴躁。;) 如果你是一个真正的书呆子,阅读 HTML 5 和 CSS 的规范也是一个很好的学习方式。

于 2008-09-29T12:00:01.363 回答
1

我和伊恩在这件事上。读书固然很好,但没有什么比陷入困境更好的了。实际上,早在 1999 年,我就从 ASP 傻瓜指南(那将是“经典” ASP)开始。

如果我今天要从头开始,我会寻找涵盖完整堆栈解决方案的东西,无论是 Apache/PHP/MySQL、RoR 还是其他。

ATM 我没有使用 Rails 的经验,但它可能是一个很好的起点,因为它包含很多你必须尽早弄清楚的东西(与 Scriptaculous,一个 JS 框架集成)——你总是可以稍后了解幕后发生的事情。

.NET 始终是一种选择,如果您对 Visual Studio 感到满意,它可能是您的最佳选择,但除此之外它不是最容易上手的。

如果您了解一点 HTML,但对服务器端编程基本上是新手,您可能会看看 ColdFusion。它实际上非常强大,并且像 Rails 一样包含许多“开箱即用”的好处。有一家名为Railo的瑞士公司目前正在发布一个隶属于 JBoss 的开源 ColdFusion 引擎。

最后也是最重要的 - 不要忘记数据库!迟早你需要掌握一些非常严肃的SQL......

于 2008-08-19T10:16:15.903 回答
1

CFML(又名“ColdFusion”,尽管它真的是 Adob​​e 产品,而不是语言)绝对容易学习,如果你想要 CFML 的 FOSS,除了 Railo,你还可以使用Open BlueDragon,它是一个 GPL CFML 引擎。

于 2008-09-29T11:54:37.147 回答
1

使用 Web 标准进行设计是一本很棒的入门读物!

http://www.zeldman.com/dwws/

于 2008-09-29T12:02:01.203 回答
0

我会推荐这本书:
http ://www.amazon.com/MCTS-Self-Paced-Training-Exam-70-528/dp/0735623341/ref=sr_1_1?ie=UTF8&s=books&qid=1218830714&sr=8-1

刚考完才看完,虽然知道网络理论部分,但觉得很有价值。
这当然是一本特定于 ASP.NET 的书,但无论如何我都建议学习。

在你学习了所有 ASP.NET 的东西之后,我建议你阅读一下JQuery

快乐编码:)

于 2008-08-15T20:08:55.973 回答