随笔分类 -  编程语言

摘要:是类型与算法是否为可变的问题,及相互结合的问题。 类型的变化方式; 算法的变化方式; 数据+算法、数据+数据、算法+算法的结合问题。 编程语言的核心问题是: 数据与算法的结合; 数据扩展与修改;同一算法接口对类属数据的处理。 算法与算法的结合; 三个问题。 数据与算法的结合; 数据的类属化; 同一签 阅读全文
posted @ 2018-11-01 11:03 zzfx 阅读(259) 评论(0) 推荐(0) 编辑
摘要:Different programming languages provide different types of abstraction, depending on the intended applications for the language. For example: In objec 阅读全文
posted @ 2018-10-30 12:01 zzfx 阅读(254) 评论(0) 推荐(0) 编辑
摘要:所谓的抽象:只声明、未定义; 抽象机制决定了软件的架构; 关键词:动态、扩展、多态 抽象的载体: 类型抽象:协议、接口、虚基类、抽象类、泛型、基类、高阶类型; 函数抽象:高阶函数、依赖抽象类型的函数; 抽象的具体化: 继承、实现、构造; 抽象类型变量的声明(抽象的关联): 变量、参量、返回值; 抽象 阅读全文
posted @ 2018-10-30 11:45 zzfx 阅读(512) 评论(0) 推荐(0) 编辑
摘要:1、类型系统; 2、函数指令系统; 3、运行时系统; 4、api系统; 运行时系统包含: 1)类型运行时系统; 2)函数的动态派发系统; 3)内存管理、多线程(cpu、内存基本使用)、异常处理等; 指令系统依赖与类型系统,类型系统为函数指令系统提供上线文(编译时和运行时)。 类型系统:主要包含内存布 阅读全文
posted @ 2018-09-27 15:00 zzfx 阅读(775) 评论(0) 推荐(0) 编辑
摘要:Objective-C 的动态性是由 runtime 相关的库赋予的。 当然其他语言也完全可以运行在一个 Runtime 库上而获得动态性,由于多数高级语言的诞生都对应着一种编译器,因此将编译器的特性概括进语言里讲,也不是不可以。 http://www.cocoachina.com/ios/2016 阅读全文
posted @ 2018-09-19 16:01 zzfx 阅读(295) 评论(0) 推荐(0) 编辑
摘要:重载:同级、符号不同; 重写:继承关系、命名空间不同; 覆盖:无法查找、使用原来的函数;参考oc分类的函数。 阅读全文
posted @ 2018-07-19 15:37 zzfx 阅读(132) 评论(0) 推荐(0) 编辑
摘要:抽象类与类型定义相关; 接口类与行为规范相关; 接口类不是类型。 抽象类:是不完整的类,函数实现未定义;可以继承,不可以实例化。 接口类:接口类不是类;是类间交互的规范;不能继承、不能实例化,只能实现。 接口类:协议类。 接口类是抽象类的二次抽象,将抽象类中的数据移除。 接口类只依赖通用数据,不依赖 阅读全文
posted @ 2018-06-25 12:56 zzfx 阅读(146) 评论(0) 推荐(0) 编辑
摘要:静态类型:编译阶段类型检查,编译器负责。 动态类型:运行时类型检查,程序员负责。 灵活性与多干活的二难。 阅读全文
posted @ 2018-06-13 19:44 zzfx 阅读(170) 评论(0) 推荐(0) 编辑
摘要:多态有类型系统衍生。 有限类型、无限类型、确定类型。 Classifications Christopher Strachey (1967) introduced the concept of polymorphism informally into procedural programming l 阅读全文
posted @ 2018-06-07 16:47 zzfx 阅读(273) 评论(0) 推荐(0) 编辑
摘要:如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。本文介绍的是Overload和Override的区别。 Overload是重载的意 阅读全文
posted @ 2018-06-07 16:37 zzfx 阅读(471) 评论(0) 推荐(0) 编辑
摘要:In programming languages and type theory, polymorphism (from Greek πολύς, polys, "many, much" and μορφή, morphē, "form, shape") is the provision of a 阅读全文
posted @ 2018-06-07 16:32 zzfx 阅读(283) 评论(0) 推荐(0) 编辑
摘要:无法在一个class上extend多个abstract class,但是你可以use多个trait abstract class是在类型系统上做文章,trait片段是mixin 类型约束 代码复用 class 是 是 interface 是 否 trait 否 是 阅读全文
posted @ 2018-06-07 15:31 zzfx 阅读(263) 评论(0) 推荐(0) 编辑
摘要:命令式编程只需要掌握语言的语法(变量+语句),再加上平台的api即可认为完成学习。 函数式编程在上面的基础上要掌握更多的算子使用方法及含义。 阅读全文
posted @ 2018-05-30 19:38 zzfx 阅读(192) 评论(0) 推荐(0) 编辑
摘要:LINQ http://www.cnblogs.com/lifepoem/archive/2011/12/16/2288017.html LINQ是.NET Framework 3.5的新特性,其全称是 Language Integrated Query,即语言集成查询,是指将查询功能和语言结合起来 阅读全文
posted @ 2018-05-07 20:12 zzfx 阅读(255) 评论(0) 推荐(0) 编辑
摘要:分为两步: 1、用类型指定构造类型; 2、构造变量进行赋值; 阅读全文
posted @ 2018-04-25 19:30 zzfx 阅读(135) 评论(0) 推荐(0) 编辑
摘要:命令式编程的计算在编译时构建完成; 声明式编程的计算在运行时构建完成; 这里所谓的构建为关键节点的组合。 例如函数式编程,最底层或最基本的运算单元还是命令式编程。 阅读全文
posted @ 2018-04-11 13:02 zzfx 阅读(819) 评论(0) 推荐(0) 编辑
摘要:命令式编程强调的是时序; 声明式编程强调的是逻辑; 函数式编程强调的是逻辑。 阅读全文
posted @ 2018-03-29 10:47 zzfx 阅读(340) 评论(0) 推荐(0) 编辑
摘要:命令式关注实现细节; 声明式关注组成逻辑。 命令式编程强调执行上的顺序; 声明式编程强调逻辑上的行为和顺序。 阅读全文
posted @ 2018-03-27 19:18 zzfx 阅读(131) 评论(0) 推荐(0) 编辑
摘要:In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. programming around 阅读全文
posted @ 2018-03-20 22:45 zzfx 阅读(169) 评论(0) 推荐(0) 编辑
摘要:要素:数据+运算: 简单组合+负责组合。 组合即为联系。 数据的组合:结构体、集合、类; 运算的组合:表达式、语句、函数。 自定义高级语言基本特性: (1)类型:支持int、char、void基本类型和复杂的string类型。 (2)表达式:支持四则运算,简单关系运算和字符串连接运算。 (3)语句: 阅读全文
posted @ 2018-03-09 14:40 zzfx 阅读(1026) 评论(0) 推荐(0) 编辑