c#比delphi先进的地方】的更多相关文章

下面是一个例子: using System;namespace HelloWorld{  class Hello{            private static string DateDiff(DateTime DateTime1, DateTime DateTime2) {string dateDiff = null;   TimeSpan ts = DateTime1.Subtract(DateTime2).Duration(); dateDiff = ts.Days.ToString…
第1步:创建SSH Key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步. 如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key: $ ssh-keygen -t rsa -C "youremail@example.com" 你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码. 如果一…
起因 前几天在群里和以前一起在成都培训的同学谈论到了求职, 有一位朋友说他在某家外包公司试用失败了, 然后我说了句:不要去外包公司.即使工资高一点. 其实说的时候也没考虑到他本人的处境, 毕竟还房贷资金是很紧张的, 而后有位同学说:是呀,我也就一万多点, 可我并不快乐云云, 可怜我这个正在吃低保的人无法反驳, 只能打出一句:怎么说呢,故作高深却也没想出一个说法出来, 今日做房屋大扫除的时候突然想到了我久违的理由. 以下的观点仅是个人所偏见, 思想杂序无章, 经不起个把推敲, 若有冒犯还请海量.…
在之前的章节,偶们设置了核心的基础设施,现在我们将使用基础设计添加关键特性,你将会看到投资是如何回报的.我们能够很简单很容易地添加重要的面向客户的特性.沿途,你也会看到一些MVC框架提供的附加的特性. 1 添加导航控件 如果使用分类导航,需要做以下三个方面: 增强List action模型,让它能过滤repository中的Product对象 重访并增强URL方案,修改我们的重路由策略 创建sidebar风格的分类列表,高亮当前分类,并链接其它分类 1.1 过滤Product列表 偶们要增强视图…
说起mysql的集群估计很多人会首先想起mysql自带的replication或者mysql-mmm.mysql-mmm其实也是基于mysql自带的replication的,不过封装的更好用一些,但是配置起来还是比较麻烦,而且对于动态增减master节点可以说是无能为力的. 偶然的情况下了解到有一个基于mysql的集群galera,除了只支持InnoDB以外,基本就没什么缺点了.大家看看官方是怎么说的: Features MySQL/Galera is synchronous multi-mas…
-------------------------------------------- Hello World //引入头文件 //c中的引入头文件的方式 //#include <stdio.h> //#include <Foundation/Foundation.h> #import <Foundation/Foundation.h>  //引入头文件(单单引入这一个头文件,无后顾之忧,里面包含了太多的头文件,一有全有) //1.面试题:为什么要使用import,i…
format是是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序可以不相同 3.填充方式十分灵活,对齐方式十分强大 4.官方推荐用的方式,%方式将会在后面的版本被淘汰 format的一个例子 print 'hello {0}'.format('world') 会输出hello world format的格式 replacement_field     ::=…
33个优秀的HTML5应用演示 (转) HTML5能做什么?取代Flash?制作动画?开发程序应用?这些都只是HTML5的一小部分功能而已. 大家可能听到很多关于Flash是否会被HTML5取代的讨论,个人认为,HTML5在某些应用场合有其更先进的地方,会慢慢取代Flash,但是无法被完全取代,Flash永远会占有一席之地. 如果你想知道HTML5能做些什么,看看下面这些惊艳的动画示例,相信你看完这些例子后会对未来的Web发展充满无限期待.为了有更好的效果,建议在Chrome浏览器中浏览. 下面…
format是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序可以不相同 3.填充方式十分灵活,对齐方式十分强大 4.官方推荐用的方式,%方式将会在后面的版本被淘汰 format的一个例子     1 print 'hello {0}'.format('world') 会输出hello world format的格式 replacement_field    …
作为Unity4.0的主要更新功能,Mecanim动画被寄予了很多的期望.系统有先进的地方,也有不足的地方.这些我们留到最后再来总结. 阿赵粗略的学习了一下,写下以下的教程.这篇教程简单的说明了Mecanim系统的用法和控制方式,里面用到的资源,是从AssetStore里面下载的,如果有兴趣的朋友可以去免费下载.            学习目标: 我预先准备了几个没有带动画的3d模型,fbx格式,然后一些导出好的动画文件. 我们要做的事情,就是使用新的动画系统,把这些动画做出状态机,赋予给这些没…
备份 冷备:关闭数据库并进行数据库物理文件的拷贝过程. 热备:数据库处于open阶段时的备份,通过指令将数据库文件头锁定,然后进行物理系统拷贝,然后通过指令解冻数据文件头,解冻后通过日志文件和undo表空间内容进行写入,是数据库达到最新状态. RMAN备份:基于块的备份,只备份数据库中使用过的块,这是比冷备和热备先进的地方.节约空间.时间. 1)rman内存管理:备份时首先占用large pool,如果large pool没有分配大小,将占用共享池内存. 2)rman备份恢复目录:首先的存储路径…
解析苹果的官方例子LazyTableImages实现图片懒加载原理 首先在官网下载源码: https://developer.apple.com/library/ios/navigation/#section=Resource%20Types&topic=Sample%20Code 打开运行: 仔细观察你会发现,只有在滑动停止的时候才会加载图片,是在如下位置实现的: 以下是设计先进的地方: 下载图片是可以取消的: 总结: 实现起来很easy:)…
home list tags talk user rss Mac&iOS Socket 大纲 一.Socket简介 二.BSD Socket编程准备 1.地址 2.端口 3.网络字节序 4.半相关与全相关 5.网络编程模型 三.socket接口编程示例 四.使用select 五.使用kqueue 六.使用流 注:文档中设计涉及的代码也都在本人github目录下,分别为socketServer和socketClient.对应着各个分支.  一.Socket简介 在UNIX系统中,万物皆文件(Eve…
AngularJS 指令解析(一) 前言 笔者AngularJS接触时间差不多是两年多,虽然这两年多AngularJS版本日新月异,但是笔者的版本是比较老的1.4.3,一方面是自己对这个版本比较熟悉,另一方面是老项目需要维护,当然本文笔者也尽可能地写到通俗易懂,毕竟AngularJS在很多设计上也有独到之处,但是人无完人,笔者可能有疏漏的话,烦请提醒留言.下面回归正文,总体而言,AngularJS在设计上有两点比较重要的地方,分别是指令(directive)和作用域(scope).directi…
format 用法详解 不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 单个参数可以多次输出,参数顺序可以不相同 填充方式十分灵活,对齐方式十分强大 官方推荐用的方式,%方式将会在后面的版本被淘汰 format填充字符串 一 填充 1.通过位置来填充字符串 print('hello {0} i am {1}'.format('world','python')) # 输入结果:hello world i am python print('hello {} i am {}'.format…
format是代替%s格式的方法 不需要理会数据类型的问题,在%s方法中的%s只能代替字符串类型 填充方式十分灵活,对其方式十分强大 format填充字符串 通过位置来填充字符串 #format会把参数按位置顺序来填充到字符串中,第一个参数是0,第二个参数是1...... >>> a = 'hello {0},i am {1}'.format('zhangsan','lisi') >>> print(a) #也可以不输入数组,这样也会按顺序来填充 hello zhang…
CMS(Concurrent Mark Sweep)收集器是一种以获取 最短回收停顿时间 为目标的收集器.采用的是"标记-清除算法",整个过程分为4步 由于整个过程中,并发标记和并发清除,收集器线程可以与用户线程一起工作,所以总体上来说,CMS收集器的内存回收过程是与用户线程一起并发地执行的.集器 G1特点: (1)初始标记 CMS initial mark 标记GC Roots能关联到的对象 Stop The World--->速度很快 (2)并发标记 CMS concurre…
扩展阅读:JVM从入门开始深入每一个底层细节 六.内存模型 6.1.内存模型与运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干不同数据区域. Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节. 这里所讲的主内存.工作内存与Java内存区域中的Java堆.栈.方法区等并不是同一层次的内存划分,这两者基本上是没有关系的.如果两者一定要勉强对应起来,从变量.主内存.工作内存的定义看,主内存主要对应于…
Garbage Collect(垃圾回收) 1.1 如何确定一个对象是垃圾? 要想进行垃圾回收,得先知道什么样的对象是垃圾. 1.1.1 引用计数法 对于某个对象而言,只要应用程序中持有该对象的引用,就说明该对象不是垃圾,如果一个对象没有任 何指针对其 引用,它就是垃圾. 弊端 :如果AB相互持有引用,导致永远不能被回收. 1.1.2 可达性分析 通过GC Root的对象,开始向下寻找,看某个对象是否可达 能作为GC Root:类加载器.Thread.虚拟机栈的本地变量表.static成员.常量…
Spring Boot入门 1.spring boot是配置好的spring集成框架,约定大于配置 2.微服务:把service拆出来独立运行在各个机器上.看下面这两篇论文 原文地址:http://martinfowler.com/articles/microservices.html 翻译:https://www.cnblogs.com/liuning8023/p/4493156.html 3.从官网下模板创建spring boot项目 从https://start.spring.io/里找g…
1.安装Windows系统 安装过程除了分区时要预留出部分空间来安装CentOS之外,其它操作与正常安装一样. 2.安装CentOS系统 使用光盘引导安装,因安装为服务器版,建议选择无界面,最小化安装,须要什么服务再自行添加安装. 安装分区到预留空间中.其它默认安装完成. 3.修改引导文件 使用root用户登陆打开引导文件 vi /boot/grub2/grub.cfg 找到### BEGIN /etc/grub.d/30_os-prober ###在后面添加 menuentry 'Window…
format是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序可以不相同 3.填充方式十分灵活,对齐方式十分强大 4.官方推荐用的方式,%方式将会在后面的版本被淘汰 format的一个例子 print ('hello {0}'.format('world')) 通过位置来填充字符串 print('hello {0} i am {1}'.format('Kevi…
转载自微信公众号:Java高级架构(Java-jiagou)-----看完这篇文章,我奶奶都知道JVM中的内存模型与垃圾回收了! 六.内存模型 6.1  内存模型与运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干不同数据区域. Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节. 这里所讲的主内存.工作内存与Java内存区域中的Java堆.栈.方法区等并不是同一层次的内存划分,这两者基本上是没有…
前言: 前面的文件介绍了JVM的内存模型以及各个区域存放了那些内容,本编文章将介绍JVM中的垃圾回收Garbage Collector,和大家一起探讨一下. 如何确定一个对象是垃圾: 这里介绍两种方法: 引用计数法 对于某个对象而言,只要应用程序中持有该对象的引用,就说明该对象不是垃圾,如果一个对象没有任何指针对其引用,它就是垃圾. 可达性分析 通过GC Root的对象,开始向下寻找,看某个对象是否可达.能作为GC Root:类加载器.Thread.虚拟机栈的本地变量表.static成员.常量引…
前面两篇文章提到 reactor模式:单线程的reactor模式 reactor模式:多线程的reactor模式 NIO的server模式只有5个阶段,但是,NIO的selectionkey里确实有个accept事件,所以,为了区别,衍生出了主reactor和从reactor 并且,从reactor可以根据服务器的负荷,新增多个从reactor进行请求处理 服务器架构如下图 这个就是完整版的reactor模式的架构图了,目前使用到了reactor模式的框架(如netty),基本用的模式就是这个…
01 Garbage Collect(垃圾回收) 1.1 如何确定一个对象是垃圾? 要想进行垃圾回收,得先知道什么样的对象是垃圾. 1.1.1 引用计数法 对于某个对象而言,只要应用程序中持有该对象的引用,就说明该对象不是垃圾,如果一个对象没有任何指针对其引用,它就是垃圾. 弊端 :如果AB相互持有引用,导致永远不能被回收. 1.1.2 可达性分析  通过GC Root的对象,开始向下寻找,看某个对象是否可达  能作为GC Root:类加载器.Thread.虚拟机栈的本地变量表.static成员…
0x00 起源 项目的一些微服务集成了 Spring Data Redis,而底层的 Redis 客户端是 lettuce,这也是默认的客户端.微服务在某些环境中运行很正常,但在另一些环境中运行就会间歇性的发生 RedisCommandTimeoutException:有时长时间没人使用(当然也不操作 Redis 了),例如一个晚上没人操作系统,第二天早上使用时就会发生这个异常.而且发生该异常之后,访问 Redis 就会一直抛这个异常,但过了一段时间后,又正常了.或者立即重启微服务,也会正常了.…
浅谈Java的反射机制和作用 作者:Java大师 欢迎转载,转载请注明出处 很多刚学Java反射的同学可能对反射技术一头雾水,为什么要学习反射,学习反射有什么作用,不用反射,通过new也能创建用户对象. 那么接下来大师就带你们了解一下反射是什么,为什么要学习反射? 下面我们首先通过一个实例来说明反射的好处: 方法1.不用反射技术,创建用户对象,调用sayHello方法 1.1 我们首先创建一个User类 package com.dashi; /** * Author:Java大师 * User对…
C++能在堆栈.堆.资料区创造对象. 但是Delphi只能在堆上创造对象…
最近写delphi项目,用到的数据集中的dataset,一直修改exception啊,写下过程. 在对数据集进行任何操作之前,首先要打开数据集.要打开数据集,可以把Active属性设为True,例如: CustTable.Active := True; 也可以调用Open函数,例如:CustQuery.Open; 要关闭数据集,可以把Active属性设为False或者调用Close函数. 其次 如果有exception的话,就要判断state,下面我列举下state的值(这样是我从网上找的) S…