自从移动端跨平台开发概念开始兴起后,出来很多解决方案,不管是框架生成原生控件,还是直接外面套个webview做个H5应用,这些方案都给移动开发带来了便利。
安装Drupal8需要环境
安装Drupal8需要环境
环境:UNIX/Linux,OS X,或者windows
web服务器: Apache2,nginx,Microsoft IIS等
数据库:推荐数据库 Mysql(5.5.3),MariaDB(5.5.20),Percona Server(5.5.8),支持:PostgreSql(9.1.2),SQLite(3.6.8)
Swift编码规范
关于Swift的代码的相关规范,不同的开发者都有自己相应的规范,可能还是很多人根本就没有规范。为了保证同一个公司同一个项目组中代码美观并且一致,这里写下这份Swift编程规范指南。该指南首要目标是让代码紧凑,可读性更高且简洁。
代码格式
- 使用四个空格进行缩进
- 每行最多160个字符,这样可以避免一行过长(Xcode->Preferences->Text Editing->Page guide at column: 设置成160即可)
- 确保每个文件结尾都有空白行
- 确保每行都不以空白符作为结尾(Xcode->Preferences->Text Editing->Automatically trim trailing whitespace + Including whitespace-only lines)
左大括号不用另起一行
1
2
3
4
5
6
7
8
9
10
11
12class SomeClass {
func someMethod() {
if x == y {
/* ... */
} else if x == z {
/* ... */
} else {
/* ... */
}
}
/* ... */
}要在逗号后面加空格
1
let array = [1, 2, 3, 4, 5];
小公司如何谈服务器安全
经常会被一些客户问到服务器的安全是怎么考虑的,对于这个问题,我心中总是会默默地在说:你们考虑得太多了,你们的目前还不需要考虑这么多,把放在这个问题上的心思放在自己的业务上吧,如何去思考怎么运营好现在的业务再说。但是还是一脸正经地说一堆书上的东西,书上写的东西的可操作性却是另外一件事情了。
那作为小公司创业,应该如何保护好自己的服务器,如何最小的成本去谈安全呢?
小公司业务不多的情况下,服务器的安全主要分为两类,一类是代码与数据安全,一类是运维层面上的。
Jenkins+Cocoapods+Coding+Git+Fir iOS项目持续集成
持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
为什么使用持续集成
1、减少重复繁琐的打包过程
2、任何时间、任何地点测试都可以获取到新包
3、增强项目的可见性
做持续集成对我们开发者来说是一件一劳永益的事情,对于发包这个问题,相信是每个程序员GG心中挥之不去的痛,而测试MM们也在每次马上就发出来的承诺中得出一个结论就是“你是个大骗子”。
所以每次被测试MM追着要包,产品经理说给我装一个新包瞧瞧呗,后台GG说给我装一个老版本调试一下啊。。。这个时候我们的内心是奔溃的,然后我们不得不暂停手下的工作,切换到某个版本,Archive。。。其实对于打包发包这种事情根本就不是开发需要做的,因为这是一个简单没有技术含量且浪费时间的工作。时间就是金钱,所以为了不再浪费我们开发宝贵的时间,自动化构建这件事情必须得提上日程了。
代码规范之程序员必须知道的命名规范
代码规范中最重要同样也是最重要的规范应该就是代码规范了吧。代码中到处都需要命名,作为程序员我们可能常常会为一些变量、常量、函数等命名而烦恼。下面有一些关于命名的注意事项,它可以帮助我们提高命名的能了,使我们的代码更具有可读性。
使用能够表达意图的名字
名字得能告诉我们它要做什么,为什么存在,以及是如何工作的。选择能够表达意图的名字,将更有利于我们理解代码。
1 | int d; // elapsed time in days |
在上面的片段中,我们只能从注释中知道变量d指的是什么。于是阅读代码的人为了知道它的含义就不得不去寻找它的实例以获取线索。所以,要是我们能够好好命名这个变量,阅读代码的人就能够瞬间知道这变量的含义。
JS代码规范
ESlint:ECMAScript/JavaScript代码的分析工具,根据编写的规则检测代码语法和风格错误
- 规则可配置性高:可设置「警告」、「错误」两个 error 等级,或者直接禁用;
- 包含代码风格检测的规则;
- 支持插件扩展、自定义规则。
安装
通过npm安到本地node_modules
cd到工程目录
npm i --save-dev eslint eslint-plugin-react eslint-plugin-react-native
使用
cd到工程目录
创建或导入配置文件:eslint --init
开始分析代码:eslint test.js test2.js或eslint 目录/
关于项目进度与项目质量问题的解决方案
关于项目进度与项目质量问题的解决方案,由车大侠总结并同步发布到了简书:http://www.jianshu.com/p/399558f1f471
主要从以下几个方面解决:
- 明确开发流程,并明确每个阶段对应人员的工作职责
- 选择一款合适的团队协作工具对整个开发流程进度进行把控
- 人事部需要制定合适的绩效考核制度,提高员工工作积极性及责任感
- 对沟通方式、文档管理、代码规范、项目交付管理等方面进行规范
- 对可能造成项目延期的客观原因应该及时与客户沟通并保留记录
- 应当有专人担当项目经理一职,负责整个项目的开发进度及质量
App开发过程中常见问题分析
数组越界
取值写死了
之前调试的时候,取了三条数据,所以取值的时候就按照index,0,1,2来取值,忽略了后台没有返回值的情况下去取值就会报数组越界。例如:1
2NSMutableArray *array = [[NSMutableArray alloc]initWithObjects:@1,@2,@3, nil];
NSNumber *number = [array objectAtIndex:4];
for循环取值越界
列表中时count+1行,然而取值时还是按照顺序来取值。
RxJava 学习笔记 2
RxJava 的适用场景和使用方式
1、与 Retrofit 的结合
Retrofit 是 Square 的一个著名的网络请求库。没有用过 Retrofit 的可以选择跳过这一小节也没关系,我举的每种场景都只是个例子,而且例子之间并无前后关联,只是个抛砖引玉的作用,所以你跳过这里看别的场景也可以的。