Google(谷歌)软件六大原则
安装
我们认为,软件不应误导/隐瞒用户进行安装。当用户在自己的电脑上安装或者激活某个软件时必须明了其目的,而且应当有选择不安装的权力。应用程序不应通过将自己隐藏于用户正在安装或升级的程序中等方式,秘密地安装在用户的计算机上。在软件联合推广/捆绑时,也必须将各项应用程序的功能明确告知用户。
事前披露
当一项应用程序被安装或激活时,它必须向用户说明其自身的主要和重要的功能。而且如果这项应用程序通过向用户展示广告等方式牟利,它也应清晰而显著地加以说明。这类信息应以一般用户都能看得见、读得懂的方式加以呈现 ―― 而不是淹没在细小的文字中、须滚动屏幕方能看到。例如,某项应用程序通过呈现弹出广告或将用户的个人数据传送给第三方等方式获得报酬,则必须向用户说明。
易于删除
用户应能轻易掌握如何终止或删除某项应用程序的方法。这一过程应尝试将应用程序中足够多的组件清除,以终止其所有功能,无论这些功能是否可被用户感知;同时不得破坏用户的计算机。一旦某项应用程序被终止或删除,它不应继续保持活动状态或在一段时间后自行激活,或由另一程序激活。
动作透明
如果某项应用程序对用户体验产生了影响或改变,应向用户告知该程序就是引起这些变化的原因。例如,某项应用程序打开了一个窗口,那么这个窗口上就应当注明其所代表的应用程序的名称。应用程序不应故意通过多重名称或令人费解的名称将自己隐蔽起来。用户应能够以直接手段控制这些程序,例如通过点击由这些应用程序产生的可视标识。
如果某项应用程序向用户展示了广告,必须明确地将相应信息标注为广告,并告知用户它是由哪项应用程序产生的。如果一项应用程序做出了一项改变,而这项改变旨在影响用户使用其他应用程序的体验(例如设置用户浏览器的默认主页),则必须对用户说明这些改变。
信息传送提示
如果一项应用程序收集并传送用户的地址等个人信息,用户应当被告知。我们认为,必须事先明确询问用户,并征得用户的同意后方可发送,询问必须明晰,声明哪些信息将被收集和传送。如果用户希望了解详情,应当方便地找到相关的隐私政策,说明这些信息将被如何使用以及是否将与第三方共享。
廉者择邻而居
应用程序提供者不应容许自己的产品被其他不遵守上述原则的应用程序所捆绑。
许多互联网用户发现,随着时间推移,他们的计算机里堆满了不请自来的软件 - 其中包括广告软件、间谍软件或者纯粹的垃圾。这是因为他们所安装的某些应用程序中间捆绑了垃圾程序,而那些垃圾程序自己产生了更多的垃圾,以至于越积越多、越埋越深。我们认为,任何情况下,只要有多个应用程序被安装,就一定要明确告知用户,这样即使几个月之后有人向用户询问“这是什么?”他们中大多数仍能知道某项程序从何而来,以及为什么要安装它。
通常状况下,参与捆绑程序的公司之间存在着复杂的业务关系。在种情况下,一些善意的公司可能会从某些对用户并没有好处的软件的发布或其产生的收入中获得利益。收费为他人发布或付费请他人发布不受欢迎的软件只会产生更多不受欢迎的软件。有良好商业道德的软件生产商或广告主可以通过避免缔结此类商务关系而阻止这些软件的发布 - 即便它们是通过中介渠道发布的。
我们相信,根除这一问题无论对于用户还是行业,都是有百利而无一害。正是出于这一考虑,我们将努力坚持只在遵从上述原则的捆绑程序中发布我们的软件产品,而且如果业内其他企业都是如此的话,用户将会最终受益。 |
相关推荐
谷歌开发手册是其内部工程师遵循的一套详细、严谨的开发指南,旨在确保项目的高质量、可维护性和效率。以下将深入解析这份手册中的关键知识点。 一、编码规范 谷歌开发手册强调了良好的编码风格,包括但不限于命名...
《谷歌Java开发规范》是Google公司为Java开发者提供的一套详尽且权威的编码指导原则,旨在提升代码质量,提高团队协作效率,并降低维护成本。这份规范不仅关注语法层面的约定,更注重代码的可读性、可维护性和可扩展...
在企业软件开发和信息技术服务支撑环境中,涉及到众多关键要素,这些要素构成了高效、稳定且具有竞争力的业务运营基础。以下是对这些核心知识点的详细说明: 1. **需求分析**:软件开发的起点通常是需求分析,这...
在软件开发过程中,图标起着至关重要的作用,它们不仅可以提升应用程序的视觉吸引力,还能帮助用户快速识别和理解功能。以下是一些关于软件开发中常用图标的相关知识点: 1. 图标设计原则: - 易识性:图标应当...
1. **结构化开发方法**:遵循功能分解原则,自顶向下、逐步求精,直至实现软件功能。 2. **面向对象的方法**:通过定义对象、属性和行为来构建软件。 3. **统一软件开发过程(RUP)**:一种迭代式的开发过程,涵盖了...
在Android应用开发中,你需要了解Android SDK(软件开发工具包),它是开发Android应用的基础。SDK包括了编译工具、调试器、模拟器以及库文件等,使得开发者可以在多种环境中编写、测试和调试应用。教程会详细介绍...
在软件开发过程中,需要遵循一定的原则和标准,以确保项目的顺利进行和高质量的结果。文章还讨论了当前软件行业的一些问题,如项目经理的角色、技术框架的选择和团队文化的重要性。 知识点: 1. 软件开发的三个...
遵循一定的编码标准,如PEP8(Python)或Google Java Style Guide,有助于减少误解和提高代码审查效率。 2. **模块化与封装**:模块化是将代码组织成小而独立的部分,封装则将数据和行为结合在一起,防止外部不必要...
此外,遵循合法授权,尊重软件版权,是每个开发者必须遵守的原则。对于初学者来说,了解并熟练掌握这些工具的使用方法,将对他们的学习路径和职业发展大有裨益。而对于经验丰富的开发者,这种综合资源则可作为他们...
移动应用开发需要遵循软件开发生命周期,确保软件的质量和可靠性。 4. 软件工程瀑布式开发模型:软件工程瀑布式开发模型是指将软件开发过程分为多个阶段,每个阶段完成后,进入下一个阶段,直到软件的发布。移动...
在C++软件开发中,网络数据管理软件是一个关键领域,涉及到多方面的技术知识。下面将详细探讨这个主题,包括C++编程语言的基础、网络编程、数据管理和软件工程实践。 首先,C++是一种强大的、面向对象的编程语言,...
【谷歌地球修复工具】是一款基于易语言开发的应用程序,专门设计用于解决用户在使用Google Earth过程中遇到的问题。易语言是一种中文编程环境,以其简洁的语法和面向初学者的设计而受到欢迎,但因为其可被用于编写...
然而,需要注意的是,虽然这个压缩包提供了便利,但为了保持项目整洁和可维护性,应遵循“按需引入”的原则,避免引入不必要的依赖,防止潜在的版本冲突和性能问题。 总之,"软件开发所需所有jar"是一个宝贵的资源...
### 行业中软件开发流程详解 #### 一、需求分析 软件开发的第一步是进行需求分析。这一阶段,无论是大型企业还是小型团队,都必须深入理解客户需求,并将其转化为具体的开发文档。对于大公司而言,这一步骤尤为重要...
Google C 编程规范是Google内部开发人员遵循的一套编码标准,旨在提高代码的可读性、可维护性和一致性。这一规范覆盖了从基本的代码格式到复杂的编程实践,为开发者提供了详尽的指导。本文将基于Google C 编程规范的...
在软件开发过程中,尤其是前端开发领域,图片素材起着至关重要的作用。它们不仅可以提升用户体验,还可以使界面更具吸引力。以下是一些关于软件开发中图片素材使用的相关知识点: 1. **图片格式选择**:常见的图片...
在软件开发过程中,文档起着至关重要的作用,它记录了项目的整个生命周期,包括需求分析、设计、实现、测试和维护等各个阶段的信息。"完整的软件开发文档.zip"这个压缩包很可能包含了以下关键部分: 1. **需求规格...
《Google Maps API开发大全code》是一份详尽的资源,旨在帮助开发者深入理解和熟练运用Google Maps API进行地图应用的...记得在开发过程中遵循Google的开发指南,保持代码整洁,优化用户体验,同时注意版权和隐私问题。
然而,需要注意的是,文件列表中出现的“检测血色骗子黑客站.exe”、“黑吧VIP培训.txt”等内容,这可能涉及非法或不道德的活动,与正规的软件开发原则相悖。软件开发应当遵守法律法规,尊重用户隐私,确保软件的...