haskell入门
运算大部分的运算符和Java/C语言类似,注意三个点
使用 /= 来表示不等,而不是 !=
使用 not 来表示非,而不是 !
使用负数时最好将其置于括号之中,比如 5(-3)* ,会比5*-3 更好
关于运算符的类型支持:比如 5+a 这样的运算是不允许的,因为 a 不是一个数值类型的数据在haskell中, + 只能用于数值类型的数据, = 只能用于相同类型的数据
haskell的函数函数是haskell的核心常见的函数包括两种:
前缀函数,比如 succ 8 , min 9 10 在函数名后面跟上参数
中缀函数,比如 9 `div` 2 , True && False 在参数中间使用函数名
在haskell中,函数的调用形式是 函数名 参数1 参数2 …这与Java/C不同,haskell中函数的调用必须使用空格来分隔函数名和参数,而不是使用括号函数作为一等公民有最高优先级,比如
1succ 9 + max 5 4 + 1
的运算优先级是
1(succ 9) + (max 5 4) + 1
所以结 ...
乘法-减治和分治
分治和减治
HTTP协议
HTTP协议HTTP: 超文本传输协议( HyperText Transfer Protocol )
1.1 为什么需要协议
通信需要明确的边界->开始和结束
需要明确能够携带的信息->数据类型, 数据长度等等
1.2 协议里面有什么以一个POST请求为例
123456POST /hello HTTP/1.1Host: www.baidu.comContent-Type: application/x-www-form-urlencodedContent-Length: 11name=zhangsan
在这个请求中, 我们可以看到有以下几个部分
请求行: POST /hello HTTP/1.1 ,包含了请求方法, 请求路径, 协议版本
kv对形式的几组数据
空行,表示请求头部结束
请求体,包含了请求体信息
kv对即请求头中一般包含有
Host: 请求的主机地址
Content-Type: 请求体的类型
Content-Length: 请求体的长度
…
也就是说, 协议中包含了三个部分
请求行
请求头
请求体
对于返回, 也是类似的, 也包含了三个部分
123 ...
设计模式 1 设计原则
三大类设计模式
创建型模式将对象的创建和使用分离。包括单例,原型,工厂方法,抽象方法,建造者等5种。
结构型模式描述如何将类或对象按某种布局组成更大的结构。包括代理,适配器,桥接,装饰,外观,享元,组合等7种。
行为型模式描述类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,以及怎样分配职责。包括模板方法,策略,命令,职责链,状态,观察者,中介者,迭代器,访问者,备忘录,解释器等11种。
UMLUML包括用例图,类图,对象图,顺序图,协作图,状态图,活动图,时序图,协作图,构件图,部署图等。
类图类图描述了系统中的类,类的内部结构以及类和类之间的关系。类图是静态的。
Employee
成员变量 -name:String-age:int
成员方法 +work():void
其中,成员变量的表示格式为:可见性 名称:类型[可省 =默认值],其中-表示private,+表示public,#表示protected,不加表示默认权限。成员方法的表示格式为:可见性 名称(参数列表)[可省 :返回值类型]。权限符号同上。
类之间的表示
关联关系:实线+箭头, ...