- 博客(38)
- 收藏
- 关注
原创 数据库触发器before和after
before与after区别: before:(insert、update)可以对new进行修改,after不能对new进行修改,两者都不能修改old数据。(如果触发器使用after,而定义的触发器调用的函数使用new,就不会执行) 对于insert语句, 只有new是合法的; 对于delete语句,只有old才合法; 对于update语句,new、old可以同时使用。
2017-12-11 16:43:45
7754
原创 幂等性
在编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。例如,“setTrue()”函数就是一个幂等函数,无论多次执行,其结果都是一样的.更复杂的操作幂等保证是利用唯一交易号(流水号)实现。
2017-03-12 20:14:57
418
转载 DRY Principles through Python Decorators
Python decorators are a powerful tool to remove redundancy. Along with modularizing functionality into appropriate bite-sized methods, it makes even the most complex workflows into concise functionalit
2017-01-12 15:14:50
394
原创 python中的 @ 修饰符
@符号用作函数修饰符是python2.4新增加的功能,修饰符必须出现在函数定义前一行,不允许和函数定义在同一行。一个修饰符就是一个函数,它将被修饰的函数做为参数,并返回修饰后的同名函数或其它可调用的东西。def f1(arg): print("function f1") rl = arg() print(rl) return rl + " f1 return"#
2017-01-11 22:18:40
1317
转载 python os模块
虽然进程可在单独的内存空间中执行,但除非这些Python进程在单独的处理器上执行,否则,实际并不是“同时”运行的。是由操作系统把处理器的时间片分配给一个进程,用完时间片后就需退出处理器等待另一个时间片的到来。另一种方式是在在程序中指定多个“执行线程”,让它们在相同的内存空间中工作。这称为“多线程处理”。线程比进程更有效,因为操作系统不必为每个线程创建单独的内存空间。新建进程用os.fork函数。但它
2017-01-10 14:58:18
630
转载 Python yield 使用浅析
带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。如何生成斐波那契數列斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐波那契數列的前 N 个数是一个非常简单的问题,许多初学
2017-01-08 18:30:44
259
原创 Python3
Numbers>>> 8 / 5 # division always returns a floating point number1.6>>> 17 / 3 # classic division returns a float5.666666666666667>>>>>> 17 // 3 # floor division discards the fractional par
2016-12-28 15:36:01
371
原创 HTML笔记
<!--HTML简介• HTML 是用来描述网页的一种语言。• HTML 指的是超文本标记语言: HyperText Markup Language• HTML 不是一种编程语言,而是一种标记语言,标记语言是一套标记标签 (markup tag)• HTML 使用标记标签来描述网页• HTML 文档包含了HTML 标签及文本内容• HTML文档也叫做 web 页面HTML 标签• HT
2016-12-23 10:42:06
5554
原创 JavaScript学习笔记
<!--JavaScript 是脚本语言JavaScript 是一种轻量级的编程语言。JavaScript 是可插入 HTML 页面的编程代码。JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。JavaScript 用法HTML 中的脚本必须位于 <script> 与 </script> 标签之间。脚本可被放置在 HTML 页面的 <body> 和 <head> 部分
2016-12-19 18:20:07
835
原创 golang学习笔记
//每个 go 程序都是由包构成//程序从 main 包开始执行//本程序通过导入路径 "fmt" 和 "dll/stringutil" 来使用这两个包//按照约定,包名与导入路径的最后一个元素一致//在 Go 中,如果一个名字以大写字母开头,那么它就是已导出的。 例如, Pizza 就是个已导出名, Pi 也同样,它导出自 math 包//函数可以返回任意数量的返回值//Go 的返回值可被命
2016-12-14 22:06:18
902
原创 golang []byte转string
func BytesToString(bs []byte) string { l := len(bs) buf := make([]string, 0, l) for i := 0; i < l; i++ { buf = appendString(buf, bs[i]) } return strings.Join(buf, dot)}func
2016-12-12 11:16:36
4989
转载 闭包的概念、形式与应用
什么是闭包?闭包并不是什么新奇的概念,它早在高级语言开始发展的年代就产生了。闭包(Closure)是词法闭包(Lexical Closure)的简称。对闭包的具体定义有很多种说法,这些说法大体可以分为两类:一种说法认为闭包是符合一定条件的函数,比如参考资源中这样定义闭包:闭包是在其词法上下文中引用了自由变量(指除局部变量以外的变量)的函数。另一种说法认为闭包是由函数和与其相关的引用环境组合而成的
2016-12-09 10:17:05
2915
原创 How to Write Go Code
Workspaces A workspace is a directory hierarchy with three directories at its root: • src contains Go source files • pkg contains package objects • bin contains executable commandsThe GOPAT
2016-12-06 17:29:28
533
原创 链式哈希表的实现
哈希算法一般用于快速查找和加密算法chtbl.h#ifndef CHTBL_H#define CHTBL_H#include <stdlib.h>#include "list.h"/* Define a structure for chained hash tables. */typedef struct CHTbl_ {int buckets;int
2016-11-26 19:38:23
1378
原创 集合的实现
set.h#ifndef set_h#define set_h#include <stdio.h>#include "list.h"/*Implement sets as linked lists. */typedef List Set;/* Public Interface. */void set_init(Set *set, int (*match)(const void *key1,
2016-11-23 15:36:41
267
原创 单链表的实现
list.h#ifndef list_h#define list_h#include <stdlib.h>/** Define a structrue for linked list elements. */typedef struct ListElmt_{ void *data; struct ListElmt_ *next;} ListElmt;/** Defi
2016-11-16 22:51:53
238
原创 memcpy函数 & 使用泛型指针交换任何类型数据
memcpy函数源码void *memcpy(void *dest,void *src, unsigned int count){ if (dest == src) return src; char* d = (char*)dest; char* s = (char*)src; while(count-- > 0) *d++ = *s++
2016-11-09 10:05:39
1137
转载 AttributedString
使用 AttributedString// NSFontAttributeName 设置字体属性,默认值:字体:Helvetica(Neue) 字号:12// NSForegroundColorAttributeNam 设置字体颜色,取值为 UIColor对象,默认值为黑色// NSBackgroundColorAttributeName 设置字体所
2016-07-03 16:42:39
1109
原创 android apk文件反编译(Mac)
1.apktool安装使用 下载按照以下提示:(注意root权限即第5条) 使用apktool d xxx.apk进行反编译,得到一个同名的文件夹。里面就有我们需要的布局文件。2.dex2jar安装使用 下载 1、将apk文件后缀名直接改为.zip并解压。得到其中的classes.dex文件 ,它就是java源代码经过编译再通过dx工具打包而成的。 2、将classes.de
2016-04-18 18:45:11
308
原创 自动布局与可视化格式语言
概述 大多数UI组件的定位可以使用下面的公式来解决: obj1.propery1 = obj2.property2 * multiplier) + constant value 约束是相对于父视图的一个概念。约束使用NSLayoutConstraint的类方法来创建:[NSLayoutConstraint constraintWithItem:(nonnull id)
2016-03-13 22:04:36
384
原创 日历(NSCalendar)
//日历 static const NSCalendarUnit CalendarUnitYMD = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay; NSCalendar *calendar = [NSCalendar currentCalendar]; //计算当月第一天 NSDateCom
2016-01-26 23:10:21
1237
原创 tips
UIView动画 使用[UIView animateWithDuration:...]执行动画改变view期间不宜重新加载view中的数据,尤其是有滑动操作的时候。(比如UITableView、UICollectionView等,最好在动画执行之前重载数据。)- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ //最好在这里
2016-01-22 00:01:05
326
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人