Google+ 主要有两个组成部分:前端和后端。前端是您登录 Google+ 帐户时看到的部分。它是用户界面 (UI)——Google+ 中让您可以执行操作的部分。后端是您看不到的一面。它位于谷歌及其庞大的数据中心。
Google+ 团队使用 Google Bigtable 和 Colossus 作为系统后端的基础。Bigtable 是一个分布式存储系统。它是谷歌的重要组成部分——Bigtable 也作为该公司互联网搜索工具的基础。Colossus 是 Google File System 的后续系统。虽然谷歌优化了旧的文件系统来跟踪网络内容,但对实时搜索的新关注需要新的工具。Colossus 就是那个工具。
Google+ 的大部分是基于两种不同的语言构建的:Java 和 JavaScript。尽管名称相似,但这两种语言没有直接关系。JavaScript 的语法与 Java 的语法相似,但 JavaScript 并非源自 Java。
Java
Java 是由 Sun Microsystems 开发的一种编程语言。Java 的创建者旨在将其用于构建程序,而不是作为计算机科学家和学术界的研究手段。它是一种基于类、面向对象的语言,但这究竟意味着什么?一个对象是信息、过程和身份的组合。一个类是对对象的分类。所有具有某种结构并遵循特定行为类型的对象都将属于同一类。在用这种语言编程时,您会构建这些类类别并将对象组织到其中。其他基于类的语言包括 C 和 C++。
Web 开发者喜欢 Java,因为可以用它创建小程序。一个小程序是一个可以在网页中运行的小程序。你可以把它直接嵌入到你的超文本标记语言 (HTML) 代码中,为网站创建新的功能。Google+ 依赖于 Java,并使用一个名为 Guice 的注入框架。Guice 的目的是消除构建工厂的需要。在 Java 中,工厂是一种保护程序架构的方式,以便其他程序员可以添加自己的代码并增加程序的功能。Google+ 的这一部分运行在谷歌的服务器上。
JavaScript
JavaScript 是一种客户端脚本语言,而不是一种成熟的编程语言。Sun Microsystems 没有创建 JavaScript——是 Netscape 做的。与 Java 小程序一样,JavaScript 代码可以在 Web 浏览器中运行。将 JavaScript 代码插入到网页的 HTML 中可以为您的网站添加功能。
在 Google+ 中,JavaScript 元素在客户端的浏览器中运行。客户端是访问 Google+ 的机器,而服务器是提供内容的机器。谷歌还使用一个名为 Closure 的工具,它简化了 JavaScript 并简化了流程,以便开发人员可以快速更改以修复 Google+ UI 中的问题。
虽然 Java 和 JavaScript 没有关联,但 Web 开发者确实都用它们来突破网页功能的极限。
在 Google+ 的所有功能中,“环聊”实用工具可能是最复杂的。它依赖于可扩展消息和出席协议 (XMPP)、XMPP 的扩展(如 Jingle)、实时传输协议 (RTP)、NAT 会话遍历实用工具 (STUN) 和安全实时传输协议。这是一种花哨的说法,意思是“环聊”背后的技术非常复杂。与 Skype 等视频服务不同,“环聊”不依赖于点对点网络。相反,所有处理能力都在谷歌的系统端。只有谷歌的工程师才确切知道需要多少处理能力才能使所有这些视频“环聊”流畅运行。
Google+ 会成为下一个 Facebook 吗?虽然私人测试版在用户中营造了一种排他性氛围并刺激了对服务访问的需求,但 Google+ 的受欢迎程度能否持续下去,只有时间才能证明。
要了解有关 Google+ 和其他主题的更多信息,请查看下一页的链接。