在 bloglovin ,我们使用自己主动生成版本来设置Xcode,使当前的版本为在Git活跃的分支上 的提交数. 它一直正常工作着.但我们的技术也不是一帆风顺的. 糟糕的老方法 我们使用的技术是来自一个叫 "Cocoa is my Girlfriend"1 的网友发表的一篇文章,真是个不可 原谅的名字. 它工作原理例如以下: 1. 执行一个脚本拿到Git提交数并把它输出到一个 "infoplistwhatever.h" 文件里.这个文件名 是什么并不重要. 2.…
作为一名开发人员,常常碰到的一个问题是,当使用svn签出一份最新代码时,经常不能一次编译通过,导致花费大量时间去解决编译问题,这里碰到的问题一般可以分为三类: 1. 由于提交代码的开发人员失误,忘记提交本地更改的文件或少提交,特别是croj或sln项目和新添加的文件,因为新添加的文件在svn下默认是?状态的,这一点的话,只能靠开发人员自己细心解决: 2. 由于引用版本不一致,或版本更新,开发时俩个开发人员的编译调试,甚至本地测试都不会有问题,但是当需要发布测试版本或发布到生产环境时,就会发生版本…
Android开发最佳实践 摘要 ●使用 Gradle 和它推荐的工程结构 ●把密码和敏感数据放在gradle.properties ●不要自己写 HTTP 客户端,使用Volley或OkHttp库 ●使用Jackson库解析JSON数据 ●避免使用Guava同时使用一些类库来避免65k method limit(一个Android程序中最多能执行65536个方法) ●使用 Fragments来呈现UI视图 ●使用 Activities 只是为了管理 Fragments ●Layout 布局是…
前言 代码重构是业内经常讨论的一个热门话题,重构指的是在不改变代码外部行为的情况下进行源代码修改,所以重构之前需要考虑的是重构后如何才能保证外部行为不改变.对于后端代码来说,可以通过大量的自动化测试来确保重构后的代码逻辑,可对于普遍缺乏自动化测试的前端代码来说,重构之前一定要考虑再三才能下手. 有效地重构代码 我曾经有一次不算太成功的前端重构经历,所幸的是没有导致太大的问题,但教训是惨痛的.此次重构的项目本身没有足够的自动化测试,尤其是针对前端的自动化测试,所以在重构之前也预想到了重构的风险.先…
klg-jpa:spring-data-jpa 最佳实践 项目介绍 码云地址:https://gitee.com/klguang/klg-jpa JPA是sun为POJO持久化制定的标准规范,用来操作实体对象,执行CRUD操作,让开发者从繁琐的JDBC和SQL代码中解脱出来. 但是JPA有以下两个缺陷:1.臃肿的动态条件查询  2.众所周知,复杂查询(联接表查询)的效率低 spring-data-jpa和mybatis可以整合在一起使用有什么优缺点,这个问答种了解到 spring-data-jp…
1. 为什么需要一个前端监控系统 通常在一个大型的 Web 项目中有很多监控系统,比如后端的服务 API 监控,接口存活.调用.延迟等监控,这些一般都用来监控后台接口数据层面的信息.而且对于大型网站系统来说,从后端服务到前台展示会有很多层:内网 VIP.CDN 等. 但是这些监控并不能准确地反应用户看到的前端页面状态,比如:页面第三方系统数据调用失败,模块加载异常,数据不正确,空白开天窗等.   相关厂商内容 Native动态化最新技术解析 不可错过的智能时代的大前端 性能优化最佳实践经验谈 百…
异常处理是 Java 开发中的一个重要部分,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等.Java 提供了几个异常处理特性,以try,catch 和 finally 关键字的形式内建于语言自身之中.Java 编程语言也允许创建新的自定义异常,并通过使用 throw 和 throws关键字抛出它们.在Java编程中,Java 的异常处理不单单是知道语法这么简单,它必须遵循标准的 JDK 库,和处理错误和异常的开源代码. 这里我们将讨论一些关于异常处理的 Java 最佳实践.在我们…
主要章节如下: Solidity安全贴士 已知的攻击手段 竞态 可重入 交易顺序依赖 针对Gas的攻击 上溢/下溢 工程技术 参考文献 这篇文档旨在为Solidity开发人员提供一些智能合约的security准则.当然也包括智能合约的security理念.bug赏金计划指南.文档例程以及工具. 一般哲学 以太坊和其他复杂的区块链项目都处于早期阶段并且有很强的实验性质.因此,随着新的bug和安全漏洞被发现,新的功能不断被开发出来,其面临的安全威胁也是不断变化的.这篇文章对于开发人员编写安全的智能合…
介绍 最近开始刷一些书和题,此系列是介绍在读Web最佳实践的一些收获和体会. web前端发展现状 存在问题: 代码组织混乱 代码格式的问题突出 页面布局随意 网站整体性能差,没有意识到应用诸如缓存,动态加载,脚本压缩,图片压缩等提高性能技术 推荐做法: 压缩样式表和脚本文件 减少HTTP请求次数 简洁和符合W3C标准的HTML和CSS代码能减少浏览器解析的时间,加快渲染过程 页面请求数量越少,相对页面的加载速度更快 在JS代码中选择性能更好的实现方案,如延迟加载,动态加载等技术; 延迟加载 <s…
XSS与CSRF 哈哈,有点标题党,但我保证这篇文章跟别的不太一样. 我认为,网站安全的基础有三块: 防范中间人攻击 防范XSS 防范CSRF 注意,我讲的是基础,如果更高级点的话可以考虑防范机器人刷单,再高级点就防范DDoS攻击,不过我们还是回到“基础”这个话题上吧,对于中间人攻击,使用HTTPS是正确且唯一的做法,其它都是歪门邪道,最好还要购买各个浏览器都承认的SSL证书:防范XSS,关键点在于将用户提交数据呈现在页面上的时候,需要使用Html Encode,或在处理带HTML格式的用户表单…