首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

最全面的 Android 编码规范指南

1.2 指南说明本文档中的示例代码并不作为规范,仅供参考。 基本格式方面使用 AndroidStudio 默认模板即可(使用格式化快捷键处理后基本符合)。 2....2.3 特殊字符 2.3.1 空白字符 除了行结束符序列,ASCII水平空格字符(0×20,即空格)是源文件中唯一允许出现的空白字符,这意味着: 所有其它字符串中的空白字符都要进行转义。...1.2 指南说明本文档中的示例代码并不作为规范,仅供参考。 基本格式方面使用 AndroidStudio 默认模板即可(使用格式化快捷键处理后基本符合)。 2....对于多行的/ … /注释,后续行必须从开始, 并且与前一行的对齐。 以下示例注释都是OK的。...具体动画采用以下规则: 模块名_逻辑名称 逻辑名称 refresh_progress.xml market_cart_add.xml market_cart_remove.xml 普通的tween动画采用如下表格中的命名方式

1.7K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【架构师(第十七篇)】脚手架之 ejs 和 glob 的使用

    <%: script 标签,用于流程控制,不会输出在页面上 删除其前面的空格符 模板(输出是转义 HTML 字符串) 转义的数据到模板 <%#: 注释标签,...不执行,不输出内容 <%%: 输出字符串 <% %>: 一般结束标签 -%>: 删除后序的换行符 -%>: 将结束后的空格符删除 条件判断 中括号中,则匹配。若以 ! 或 ^ 开头,若字符不在中括号中,则匹配 !(pattern|pattern|pattern) 不满足括号中的所有模式则匹配 ?...(pattern|pattern|pattern) 满足 0 或 1 括号中的模式则匹配 +(pattern|pattern|pattern) 满足 1 或 更多括号中的模式则匹配 *(a|b|...c) 满足 0 或 更多括号中的模式则匹配 @(pattern|pat*|pat?

    1.3K10

    Roundcube mail代码审计笔记

    在index.php中,除了基本的路由分配以外,还有一个重要的特性。...跟入到后面的_write函数可以看到对模板的编译以及替换 而具体到相关的模板对象编译,则到涉及到 program/include/rcmail_output_html.php line 1217...-> return original string return $str; } 仔细观察不难发现,其实过滤的方向主要在单双引号的转义,尖括号的转义上。...当然,这样的转义已经足够应对90%的情况了。 这里主要是集中在分类上,如果说这里分类到转义比较清晰的路径上,就没什么办法和绕过什么的相关。...比如函数Q设置enctype为html,mode为strict,输出时就会转义包括尖括号、双引号等和XSS相关的符号。我们就没办法绕过了。

    1.3K10

    Android App 国际化

    这个情况可以通过正则表达式来搜索,搜索setText(.*"),需要注意对括号进行转义。 这下可以找到所有的setText。下面是几点注意事项 间接使用setText。...在方法参数中添加@ StringRes来限制传入的参数必须是本地资源中的字符串的资源id,同时需要将旧方法删除,不要让两者并存。...字符串中有时候会出现特殊字符,这类特殊字符在xml中需要转义,下面是一些常用的特殊字符转义之后的样 符号 转义表示 “ " 或 " ‘ ' 或 ' & & 或 & < < 或 < > > 或 > 换行...代码中找到引用的地方,替换成重复字段第一次出现的name(这也是刚才要排序的原因,可以在excel中直接找到第一次出现的name),最后在strings.xml中删除。...如何利用自动化的工具来解放人工操作,如何从看似杂乱无章的内容中寻找出规律,如何改善自己的编程规范,才是真正能从这个过程中学习到的东西。

    4.8K41

    AntDesign-React与VUE有点不一样,第一篇深入了解React的概念之一:JSX

    二、为什么要使用JSX 传统的MVC是将模板房子其他地方,比如标签或者模板文件,再在JS中通过梦中手段引用模板。按照这种思路,想想多少次我们面对四处分散的模板片段不知所措?...(个人理解就是写在JS里的HTML里面的JS需要{}大括号)。...(不要src="{user.avatarUrl}",会以为src为{user.avatarUrl}) 七、JSX嵌套 如果JSX标签是闭合式的,那么你需要在结尾处用/>,就好像XML/HTML一样:...九、HTMl转义 REACT会将所有要显示到DOM的字符串转义,防止XSS。...所以如果JSX中包含转义后的实体字符串比如©:(©)最后显示到DOM中不会被正确显示,因此REACT自动吧©中的特殊字符转义了。

    94110

    WordPress 的 PHP 编码规范

    >Link name'; echo "$linkname"; HTML 或 XML 属性中的文本应该进行转义,以便单引号或者双引号不会结束属性是的...HTML 标签无效甚,甚至引起安全问题,如何对属性进行转义,我们会在以后的文章中详细讲解。...,但是可以使用控制结构的替代语法(例如 if/endif, while/endwhile)——尤其是在 HTML 的模板中嵌入 PHP 代码的时候 ,例如: <?...PHP 开始和结束标记 在 HTML 模板中如果要嵌入多行 PHP 代码时,PHP 开始和结束标记都要自己单独一行。 正确(多行): function foo() { ?...不要使用 extract() extract() 是一个非常糟糕的函数,它使代码更难调试和更难理解,我们应该不应该使用它,并删除现有代码中的所有使用

    5.5K40

    走进Java接口测试之理解JSON和XML基础

    一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。...一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。...因此,我们用特定文本(称为实体引用)替换这些字符,以便从字面上解析这些字符 在 XML 中有 5 个预定义的实体引用: JSON与XML互转示例 在线格式互转: http://www.utilities-online.info...VS JSON 对比项 XML JSON 起源 1998年 2006年 祖先 SGML JavaScript 冗余 更多 更少 尺寸 更大 更小 序列化和反序列化速度 稍慢 快 数组 没有 是 命名空间支持...每当文档标记和元数据是数据的重要组成部分并且不能被删除时,总是更喜欢使用 XML。 JSON 的目的是结构化数据交换。它通过直接表示对象,数组,数字,字符串和布尔值来实现此目的。

    1.5K30

    JSON教程

    一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。...字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。...对于 AJAX 应用程序来说,JSON 比 XML 更快更易使用: 使用 XML · 读取 XML 文档 · 使用 XML DOM 来循环遍历文档 · 读取值并存储在变量中...(在中括号中) · 对象(在大括号中) · null ---- 八、JSON 数字 JSON 数字可以是整型或者浮点型: { “age“:30} ---- 九、JSON 对象...: 实例 deletemyObj.sites.site1; 你可以使用中括号([])来删除 JSON 对象的属性: 实例 deletemyObj.sites[“site1“] ---- 十、JSON 数组

    2K30

    走进Java接口测试之理解JSON和XML基础

    一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 ?...一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。 ?...因此,我们用特定文本(称为实体引用)替换这些字符,以便从字面上解析这些字符 在 XML 中有 5 个预定义的实体引用: ?...VS JSON 对比项 XML JSON 起源 1998年 2006年 祖先 SGML JavaScript 冗余 更多 更少 尺寸 更大 更小 序列化和反序列化速度 稍慢 快 数组 没有 是 命名空间支持...每当文档标记和元数据是数据的重要组成部分并且不能被删除时,总是更喜欢使用 XML。 JSON 的目的是结构化数据交换。它通过直接表示对象,数组,数字,字符串和布尔值来实现此目的。

    1.3K20

    Python 中的正则表达式全部用法速查

    字符  元字符 : 特殊字符  它们不匹配自己,在正则中具有其它的意义,匹配自己需要转义. ...元字符的完整列表:  基础字符  字符功能\转义[ ]匹配一类单个字符,在里面的字符除了[- ^ \s \S \d \D \w \W] 都是普通字符()分组.与数学中括号的作用大致相同.将括号内的内容视作一个独立字符或部分...组从0开始从左到右编号,它始终存在.要确定编号,只需计算从左到右的左括号字符. ...返回匹配成功的开始位置,否则返回 -1end(分组引用=0)返回匹配成功的结束位置,否则返回 -1span(分组引用=0)返回元组: ( 开始位置 , 结束位置 ),未匹配到返回 ( -1,-1 )expand('转义模板...')将结果集合中的元素,根据数字和命名引用填入到转义模板字符串的指定位置pos正则引擎开始搜索的索引位置endPos正则引擎结束搜索的索引位置lastindex最后一个匹配的组的数字引用,如果没有则为Nonelastgroup

    1.2K30

    xml与json

    xml与json 简介 XML(EXtensible Markup Language) 可扩展标记语言 特点 XML与操作系统、编程语言的开发平台无关 实现不同系统之间的数据交换 作用 数据交互 配置应用程序和网站...Ajax基石 XML文档内容由一系列标签元素组成 XML标签 元素内容 属性值用双引号包裹 一个元素可以有多个属性 属性值中不能直接包含 注意事项 所有XML元素都必须有结束标签 XML标签对大小写敏感 XML必须正确的嵌套 同级标签以缩进对齐 元素名称可以包含字母、数字或其他的字符 元素名称不能以数字或者标点符号开始 元素名称中不能含空格...[CDATA["姓名"]]> ​ 其二,使用XML转义序列表示这些特殊的字符,这5个特殊字符所对应XML转义序列为: & & < < > > " "...) 轻量级的文本数据交换格式 具有自我描述性 比XML传输速度快 语法规则 两种数据结构:对象和数组 大括号内为对象 中括号内为数组 对象中的数据由名称/值对构成 值的类型可为字符串、数字、布尔值、null

    54110

    Hugo 跨版本升级

    构建速度随着内容增多变慢 去年十月,在网站架构简化之后,我的完整发布编译时间从 1分钟 进入了 40s 的阶段,但是随着内容的膨胀、编译时间越来越慢了,可以看到不少发布时间变长。...官方直接提供压缩能力,是否足够替换 Pipeline 中定制的压缩服务? 页面模板查找逻辑、模板语法、站点配置文件变更,现有模板无法直接使用。...另外官方生成文档,默认会输出正确的 XML Version,所以可以检查并删除己配置的文档模板中下面的内容。 中添加下面的内容: disableKinds= ["RSS"] 如果你有定义 output 格式,并包含 RSS 定义,也需要删除该内容...举个例子,老版本语法: {{ $tagLink | urlize }} 解决方式比较 trick,需要手动在模板中进行转义,并补全 .html 后缀: { replace (replace (lower

    96210

    『Django』模板

    这些标签由一对花括号 {{ }} 或百分号 {% %} 包裹,以便与模板中的普通文本区分开来。...主要有两种类型的 Django 模板标签: 变量标签:用双花括号 {{ }} 包裹,用于在模板中输出变量的值,例如 {{ variable }}。...在模板中变量需要使用两对花括号 {{}} 包裹起来。 基本语法: {{ 变量名 }} Django 模板变量的用法和 Vue 是一样的。 那这个变量是从哪里传过来的呢?...自动转义功能可以确保在渲染模板时,将 HTML 标签和特殊字符(如 , &, ', " 等)转义为相应的HTML实体(如 , &, ', "),从而避免用户提供的数据被误解释为 HTML...-- blog/templates/blog.html --> {{ msg | length }} 字符串删除指定字符:cut 将指定的字符串删除掉,比如这个例子中要删除所有

    12010

    开心档-Kotlin 基本数据类型

    特殊字符可以用反斜杠转义。 支持这几个转义序列:\t、 \b、\n、\r、\'、\"、\\ 和 \$。 编码其他字符要用 Unicode 转义序列语法:'\uFF00'。...方括号 [] 语法可以很方便的获取字符串中的某个字符,也可以通过 for 循环来遍历: for (c in str) { println(c) } Kotlin 支持三个引号 """ 扩起来的字符串...---- 字符串模板 字符串可以包含模板表达式 ,即一些小段代码,会求值并把结果合并到字符串中。..."i = 10" println(s) } 或者用花括号扩起来的任意表达式: fun main(args: Array) { val s = "kxdang"...val str = "$s.length is ${s.length}" // 求值结果为 "kxdang.length is 6" println(str) } 原生字符串和转义字符串内部都支持模板

    51910

    Groovy模板引擎

    - 将模板保存为可写的闭包,在流式场景中很有用 XmlTemplateEngine - 输出XML文件的模板引擎 MarkupTemplateEngine - 一个完整的、优化过的模板引擎,可以用于生成...这个标记模板引擎主要用来生成类XML的模板,类似HTML等等。但是也可以用来生成所有类型的文档。前面那些模板都是基于字符串的。...xmlDeclaration()方法会生成一个标准的XML文档头。 comment方法生成HTML注释。 newLine生成一个新行。 包含 模板中还可以包含其他模板。...下面是三种包含方式,分别包含另一个模板,不需要转义的文本或者是需要转义的文本。...在创建模板配置对象的时候,我们可以传递一个Locale对象作为默认区域使用。 强类型声明 Groovy模板的类型是在运行时解析的,不过我们也可以手动声明数据类型,这样模板执行速度会更快。

    3K20

    前端XSS相关整理

    像圆括号、双引号、单引号等等这些控制字符,在进行JavaScript解析的时候仅会被解码为对应的字符串文本(比如这里并未对 (1) 进行编码,如果对括号及括号里面内容做JS编码,将无法执行alert函数...(前端模板和后端模板)之后,需要格外注意数据的输入输出 下面列举几个常见的 1.4.1 PHP使用Yii框架中的Smarty模板 有时候会使用 $smarty.get.abc 获取URL中的参数,未经转义...不过和后端一样,使用模板也要考虑到XSS的问题 Handlebars模板中可选择是否开启转义 模板Smarty,在使用模板的时候,一般都将模板变量放在了引号中,需要带符号来闭合来实现攻击 "> " onclick=alert(1) 在设置了特殊符号转义的情况下...a=\' + '&b==alert(1);function b(){}//'; 假设只对 ' " > 转义,可以试试从URL拿数据,这里需要利用到JS代码中关键的 &

    4.7K32
    领券