摘要:
在学习Object C中的过程中,关于struct的资料貌似非常少,查阅了C方面的资料总结了一些学习心得! 一. 定义结构 结构体是一种数据类型的组合和数据抽象。结构体的定义语法如下: struct 结构体名称 { 类型 变量名; 类型 变量名; } 实例代码如下:struct student { char* name; enum sex sex; int age;};结构体的定义 上面代码定义了一个结构体student,其中有三个变量name,sex,age ,其中sex是一个枚举。student是一个标识符,也... 阅读全文
随笔档案-2014年03月
实施项目--你明白软件的价值和个人的价值么?
2014-03-26 08:00 by 贺臣, 5292 阅读, 收藏, 编辑
摘要:
在2013即将结束的最后一个月里,我跑客户的时间时间达到了26天,作为一个技术出身的我这是非常不可思议的,在多年前我敢都不敢想! 在历史上一个月里我连续工作的天数也就27天,当然这是呆在公司办公室里,负责码代码,不会与直接客户面对面接触的(目前大多数技术人员都是如此)。这段时间的持续改变让我不得不深思! 一. 代码的价值 案例1: 最近有个项目实施难度有点大,当然我本身是技术出身,所以有时候还是比较有优势,因为可以当场为客户解决问题。我们是为一家生产型企业实施一个生产仓库管理系统,现在条件比较复杂,反正就是涉及到生产,出入库等!实施到一个出库的时候,有个功能是这样的: ... 阅读全文
Object C学习笔记19-枚举
2014-03-23 21:09 by 贺臣, 2570 阅读, 收藏, 编辑
摘要:
一. 枚举类型 枚举类型是一个基本类型,不能再分为为任何其他的类型。在一般的编程语言中都有枚举(enum)这种数据结构类型。枚举类型主要用于将一个变量限定在特定的范围内。比如一周有七天,那么一周的值就限定在了七个值内。 二. 枚举的定义 enum 枚举名称 { 枚举值列表 } 案例1:enum Body{AB,CD,EF,HG}; 测试枚举值代码: enum Body a,b,c,d; a=AB; b=CD; c=EF; d=HG; NSLog(@"%d",a); N... 阅读全文
Object C学习笔记18-SEL,@ selector,Class,@class
2014-03-22 23:00 by 贺臣, 4131 阅读, 收藏, 编辑
摘要:
本章是对上一章>的一点补充,所以比较简单点。 一. SEL 类型 在上一篇介绍了几个方法,都只是介绍了其使用方式但是没有具体介绍参数:- (id)performSelector:(SEL)aSelector;- (id)performSelector:(SEL)aSelector withObject:(id)object;- (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2;- (BOOL)respondsToSelector:(SEL)aSelector; 其中... 阅读全文
Object C学习笔记17-动态判断和选择器
2014-03-22 21:29 by 贺臣, 3049 阅读, 收藏, 编辑
摘要:
当时学习Object C的时被人鄙视了一顿,说使用.NET的思想来学Object C就是狗屎;不过也挺感谢这位仁兄的,这让我学习的时候更加的谨慎。今天的学习笔记主要记录Object C中的动态类型相关内容。 首先还是和.NET先对比一下,.NET中存在一个关键字var ,这个估计用过.NET的都知道,除非没有接触过3.0以上版本的。在.NET中能够使用var来声明任何类型的局部变量,负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量.但是这里要注意的时var 并不是一个新的类型,只是一个关键字而已,在定义参数和返回值的时候都不能使用var. 在.net中还有... 阅读全文
Object C学习笔记16-委托(delegate)
2014-03-22 07:27 by 贺臣, 6835 阅读, 收藏, 编辑
摘要:
在.NET中都知道委托(delegate),通俗点的解释就是可以将方法作为一个参数传到另外一个方法中使用。 委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其他任何方法一样,具有参数和返回值。在Object C中也同样存在委托的概念,但是委托一般与协议(Protocol)同时使用,而且和.NET中的委托稍有区别 一. 定义委托(delegate)先定义一个协议(Protocol) 回顾一下上一篇所学的,先定义一个协议(Protocol)ProtocolName, 协议ProtocolName中定义了两个方法: first ,s... 阅读全文
Object C学习笔记15-协议(protocol)
2014-03-21 17:41 by 贺臣, 7588 阅读, 收藏, 编辑
摘要:
在.NET中有接口的概念,接口主要用于定义规范,定义一个接口关键字使用interface。而在Object C 中@interface是用于定义一个类的,这个和.NET中有点差别。在Object C中有一个协议(protocol) 的概念,这个和.NET中的interface类似。 协议(Protocol) 在列出的方法在本类中并没有相应实现,而是别的类来实现这些方法,而定义协议必须使用protocol关键字。 一. 如何定义protocol的定义 如何使用XCode新建一个协议.h 文件定义协议代码如下:#import @protocol ProtocolCom @requir... 阅读全文
实施项目--.NET实现仓库看板的一些感想
2014-03-19 17:38 by 贺臣, 5824 阅读, 收藏, 编辑
摘要:
从一名技术开发人员到实施人员的蜕变,从不同的角度看待同一个问题,或许会有不一样的结果。这里记录一下最近一个项目实施的案例,非常有感触! 一. 项目情况简介 本次项目是给一个国外生产型企业做仓库方面的系统,其中有一个功能就是给仓库做一个电子看板。所谓的电子看板就是在一个大屏幕上显示仓库进料和出料的情况,在大屏幕上显示指定数量的单号信息,就和医院的叫号系统一样,每行数据不停的向上滚动。 上面这个功能其实非常简单,就是查询相应的数据在屏幕上显示即可. 仓库每天可能收到20多个订单的进料单据,系统将单据分为三个状态: 待收货,收货中,收货完成 待收货,收货中的订单要在屏幕上轮番... 阅读全文
Object C学习笔记14-分类(category)
2014-03-17 21:48 by 贺臣, 2517 阅读, 收藏, 编辑
摘要:
在.NET中有一个非常带劲的特性,那就是扩展方法.扩展方法使你能够向现有类型“添加”方法(包括你自定义的类型和对象噢),而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法,但是可以像扩展类型上的实例方法一样进行调用。 先看看.NET中扩展方法的定义和使用 public static class test { public static bool In(this object o, IEnumerable c) { foreach (object obj in c) ... 阅读全文
Git.Framework 框架随手记--历史原因
2014-03-15 12:12 by 贺臣, 2879 阅读, 收藏, 编辑
摘要:
Git.Framework 是近几年工作的一些工作经验总结,虽不能和某些知名的框架相提并论,但是还是比较实用的。此框架经过三年多的升级和维护,已经具有较强的实用性,在此记录该框架的使用操作方式,贡献给公司第一线开发的技术人员们,感谢你们所付出的努力。 一. 框架由来 前几年我都是在互联网公司工作,做什么大型B2B,B2C网站。至于有多大就不提了,但是在其间做开发人员使用的技术的确比较辛苦,那个时候公司使用的技术还比较落后,最起码我是这么认为的,开发效率很低,一层不变的开发模式,Copy到想吐的代码。我是从事.NET技术开发的,当时公司还是使用的.NET2.0开发的,要知道2.0 和... 阅读全文
安装VS2008无法更改安装路径解决方法
2014-03-10 09:25 by 贺臣, 7303 阅读, 收藏, 编辑
摘要:
一直用VS2012 以及 VS2012开发,但是他们都不支持Wince程序的开发,所有要安装VS2008.但是发现VS2008只能安装在C盘,要知道C空间很宝贵的。 经过查找资料发现系统中已经安装了VS2008相关的组件,正是因为这些组件导致一些目录不能修改,解决方法如下: Microsoft Visual Studio Tools for Applications 2.0 - ENU Microsoft Visual Studio Tools for Applications 2.0 Language Pack - CHS Microsoft Visual... 阅读全文
Object C学习笔记13-Dictionary字典
2014-03-09 22:07 by 贺臣, 6083 阅读, 收藏, 编辑
摘要:
通过Array数组和Set集合的学习和理解,可以想象得到Dictionary也分为两种情况了,那就是可变和不可变两种类型的。的确如此,在Object C中提供了两个字典类,分别为NSDictionary 和 NSMutableDictionary. 在.NET中我们也学习过Dictionary类,这个集合的存储方式是键值对的方式存储的。而且使用Dictionary查找元素也极为简单。 一 NSDictionary 不可变字典 (1) 初始化字典NSDictionary *dic=[NSDictionary dictionaryWithObject:@"hechen" for 阅读全文
Object C学习笔记12-集合
2014-03-08 17:25 by 贺臣, 2351 阅读, 收藏, 编辑
摘要:
这里讲到的集合是指Set集合,其实Array也是一种类型的集合。在Object C中提供了两个集合类NSSet和NSMutableSet。其实NSSet和NSArray性质一样,都是用于存储对象的。 然而Array集合和Set集合还是有区别的,主要是在于Set集合的搜索速度要比Array速度要快,NSArray和NSMutableArray 是一种有序集合,其存储的值在内存中是连续的,而NSSet和NSMutableSet是无需集合,在内存中的存储方式是不连续的,在NSSet,NSMutableSet采用了hash算法,你懂的! 一. NSSet集合 刚才上面也简单的介绍了一... 阅读全文
Object C学习笔记11-数组
2014-03-07 21:43 by 贺臣, 7689 阅读, 收藏, 编辑
摘要:
在Object C也提供了类似C#中的Array数组对象,在Object C中使用NSArray 来创建数组;但是在Object C中NSArray 只能存放对象类型的指针,不能存放int,char,double等基本数据类型。 一. 不可变数组对象 这个和之前的NSString有些类似,NSArray 能够创建不可变的数组对象。一旦初始化这个对象就不能动态的修改和增加这个数组。 (1)使用arrayWithObjects来初始化数组内容,参考如下代码:NSArray *items=[NSArray arrayWithObjects:@"abc",@"cdf&qu 阅读全文