SQLCipher加密SQLite数据库 Android本身自带有不加密的数据库SQLite,如果要保存密码之类的敏感数据在本地的话方法一是使用字段加密解密算法,方法二是整个数据库都加密掉。如果只是加密解密某个字段(如数据库)就推荐使用第一种方法,轻便易用;如果想要整个数据库都加密的话,就推荐方法二了,使用其他的数据库SQLite,如SQLCipher,其是实现加密了的SQLite数据库,使用方法与Android自带的大部分一样,就需...
SQLite加密 关于SQLiteSQLite是一个轻量的、跨平台的、开源的数据库引擎,它的在读写效率、消耗总量、延迟时间和整体简单性上具有的优越性,使其成为移动平台数据库的最佳解决方案(如iOS、Android)。然而免费版的SQLite有一个致命缺点:不支持加密。这就导致存储在SQLite中的数据可以被任何人用任何文本编辑器查看到。比如国内某团购iOS客户端的DB缓存数据就一览无余:...
Android 手机上获取物理唯一标识码 唯一标识码这东西在网络应用中非常有用,例如检测是否重复注册之类的。import android.provider.Settings.Secure;private String android_id = Secure.getString(getContext().getContentResolver(), Secure.ANDROID_ID);我们在项目过程中或多或少会使...
Android OrmLite OrmLite可以帮助我们将会数据库操作,不用自己去写SQL语句,而且设置它跟使用Sqlite一样的方式,它是一种关系型数据,我比较喜欢的就是它能够帮助我判断数据表项是更新还是创建等操作,不需要自己去写大量的SQL语句去判断,下面介绍一下它的使用文档以及一些基本的注意点:官方网址:http://ormlite.com/JavaDOC地址:http://ormlite.com/j...
扁平化UI套件 UI kits通过UI套件,我们可以初步了解扁平化设计。套件非常的节省时间——可以自由选择套件中的元素,然后进行自己的实验。大多数UI套件的格式是PSD,非常易于编辑。下面推荐的UI套件种类不一,从简单免费的到复杂收费的,扁平化的UI套件可真是越来越多了;这里我们提供了一个推荐列表。在选择UI套件时,不要对颜色太较真。大多数的套件都支持改变颜色主题,只需点击几下,就能全...
10款实用Android UI工具 移动应用的UI设计好似达摩克利斯之剑,一方面,体验良好的UI可以加强应用在用户心中的形象和识别性,反之,一个体验糟糕的UI设计可能会使用户产生厌恶感。为此,本文特为广大开发者推荐10款轻巧使用的UI设计工具。移动应用的UI就好像达摩克利斯之剑,一方面,一个视觉、交互、体验良好的UI可以加强应用在用户心中的形象和识别性,而另一方面,一个体验糟糕的UI设计不仅使用户无法沉浸在应用内,而...
Android 获得所有应用程序包 推荐方法1、 <wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr><wbr><wbr>//全部程序
android游戏开发学习 博客分类: android 相关资源(转自:http://yuanzhifei89.iteye.com/blog/1166835)2D中如何判断一点在另一个点的那个方位:http://blog.csdn.net/rabbit729/article/details/4424929游戏开发书籍推荐:http://rightmost.blog.163.com/blog/static/18058539920112223202311/...
eclipse里配置Android ndk环境,用eclipse编译.so文件 做Android NDK开发时,c代码需要用ndk-build来进行编译,而java代码则需要用Android sdk编译。编译c代码有两种方法:一、写好c代码后,然后用cygwin搭建ndk-build环境,用ndk-build来编译出相关的.so文件(libs目录)之后, 再用eclipse里去编译java程序,从而使用.so文件。该方法在上一篇搭建NDK环境有介绍...
Android sharedUserId研究记录 签名简介:在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,。这个数字证书并不需要权威的数字证书签名机构认证,它只是用来让应用程序包自我认证的。调试时,ADT会自动的使用debug密钥为应用程序签名。debug密钥是一个名为debug.keystore的文件,它的位置:系统盘符:/Documents...
Android AM命令行启动程序的方法 在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am.usage: am [subcommand] [options] start an Activity: am start [-D] <INTENT> -D: enable debugging send a broadcast Intent: am broadcast <...
八款开源 Android 游戏引擎 事实上,这种想法完全是没有必要且不符合实际的,作为能和苹果iOS分庭抗礼的Android(各种意义上),当然也会有相当数量的游戏引擎存在。仅仅因为我们处于这个狭小的天地间,与外界接触不够,所以对它们的存在茫然不知罢了。下面我就罗列出八款常见的Android游戏引擎,以供有需要者参考(收费,下载量过小,不公布源码,以及鄙人不知道(-_-)的引擎不在此列)。1、AngleAngle是一款专为Andro...
Soap 协议 详解 SOAP简介SOAP(SimpleObjectaccessPRotocal,简单对象访问协议)技术有助于实现大量异构程序和平台之间的互操作性,从而使存在的应用能够被广泛的用户所访问。SOAP是把成熟的基于HTTP的WEB技术与xml的灵活性和可扩展性组合在了一起。SOAP 的一个主要目标是使存在的应用能被更广泛的用户所使用。为了实现这个目的,没有任何SOAPAPI或SOAP对象请求代理(SOAPO...
WebService的优缺点 一优点(版本一)1、可操作的的分布式应用程序可以实现不同应用程序和在不同系统平台上开发出来的应用程序之间通信。与RMI、DOCM、CORBA最大的不同就是:Web Service 以 SOAP 作为基本通信协议从而避免了复杂的协议转换.2、普遍性、使用HTTP和XML进行通信任何支持HTTP和XML 技术的设备都可以拥有和访问Web Service,不同平台...
Google在世界各国不同域名 国家<wbr style="color:rgb(70,70,70); font-family:simsun; font-size:14px; line-height:21px; text-indent:28px; background-color:rgb(244,245,231)"><span style="color:rgb(70,70,70); font-family:sim...
SQL连接查询2 外连接(左右联接查询) 外连接主要包括左连接、右连接和完整外部连接。 1)左连接:Left Join 或 Left Outer Join 左连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值(Null)。 我们看对应的SQL语句:Select Student...
Android Fragment生命周期 官网帮助文档链接:http://developer.android.com/guide/components/fragments.html主要看两张图,和跑代码一,Fragment的生命周 二,与Activity生命周期的对比 场景演示 : 切换到该Fragment11-29 14:26:35.095: D/AppListFr...
Android如何通过shareduserid获取系统权限 android会为每个apk进程分配一个单独的空间(比如只能访问/data/data/自己包名下面的文件),一般情况下apk之间是禁止相互访问数据的。通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中.所以默认就是可以互相访问任意数据. 也可以配置成运行成不同的进程, 同时可以访问其他APK的数据目录下的数据库和文件.就像访问本程序的数据一样(使...
INSTALL_FAILED_SHARED_USER_INCOMPATIBLE的问题 eclipse编译出来的apk,安装时报出INSTALL_FAILED_SHARED_USER_INCOMPATIBLE的错误。原因:apk的AndroidManifest.xml中声明了android:sharedUserId="android.uid.system",但没有相应的签名解决方案:1. 找到编译目标系统时的签名证书platform.pk8和platfor...
通过命令行启动APK程序 在ADB环境下,可以通过如下命令来启动一个已经安装的APK程序:adb shell am start -n breakan.test/breakan.test.TestActivity其中"breakan.test/breakan.test.TestActivity"中的"breakan.test"是程序的包名,"TestActivity"是程序Activity类的类名。如果在ANDR...
上帝的玩偶:haXe语言 在动画片《我叫MT》中,有个“五火球神教”,五火球神教的口号是“征服世界”。在小说《风姿物语》中疯狂的白家的某代家主白拉登,他手中的扇子上写着“世界征服”四个大字。 疯狂!只能用疯狂来形容。少年们,下面请看一群疯狂的黑客为我们提供的程序语言“征服世界”的解决方案吧!这里的黑客指的是真正的黑客,是程序世界里勇于尝试和探险的人,不是那些Cracker们。这是一个激动人心...
禅道程序员的10条原则 英文原文:The 10 rules of a Zen programmer 在一个阴雨的早上,我坐在桌子旁,开始想如何才能高效的工作。在我成为一个自由职业者之前,我有很长一段时间都很努力工作,但收效甚微。 我在 2006 开始接触禅学。我马上意识到:古代的禅宗大师们几百年前早就已经知道现今的程序员应该如何工作。虽然我很讨厌“如何成为一个更好的程序员”之类的文章,但我仍旧想分享一些我的...
椭圆曲线入门详解 转载请注明http://blog.csdn.net/boksic 如有疑问欢迎留言如果不知道数学上的群、循环群等概念,可以先了解ElGamal加密算法 后再回过来椭圆曲线加密这两个算法有共通之处,都是在离散问题难解群上的加密算法,椭圆曲线是进一步的加深首先,什么是椭圆曲线椭圆曲线(Elliptic curve)叫椭圆曲线只是因为方程跟椭圆的曲线积分比较相似椭圆...
基于python的中文词频分析 受http://yixuan.cos.name/cn/2011/03/text-mining-of-song-poems/这篇文章的启发,觉得PYTHON来做文字处理分析应该不错,可以来做个词频分析,分析聊天记录可以看出每个人的说话习惯用的是暴力方法 不用语义分析 直接列出所有出现的字词 做下来觉得难点就在中文编码这部分 python下中文涉及的编码转化确实要琢磨一番首先数据文件要存为...
老子的软件之道 - 道篇 32 知止不殆 摘要:老子哲学 道德经 软件哲学、软件之道 参阅:序消灭人狼软件的十大命题编程规则 圣人曰:道常无名。朴虽小天下莫能臣也。侯王若能守之,万物将自宾。天地相合以降甘露,民莫之令而自均。始制有名,名亦既有,夫亦将知止,知止可以不殆。譬道之在天下,犹川谷之於江海。本章老子进一步阐述道及道的作用,提出“始制有名,知止不殆”的思想,告诉我们治理需要建立体制,确立边界,明确岗位和职责,使各项事务有...
四种途径将HTML5应用变成android应用 作为下一代的网页语言,HTML5拥有很多让人期待已久的新特性。HTML5的优势之一在于能够实现跨平台游戏编码移植,现在已经有很多公司在移动设备上使用HTML5技术。随着HTML5跨平台支持的不断增强和智能手机的迅速普,HTML5技术有着非常好的发展前景,甚至有人预言HTML5将引燃移动平台游戏开发技术的新革命。 越来越多的开发者热衷于使用html5+JavaScript开发移动...
用例图中的关系(一) 一、用例图概述用例图,是一种客户与开发者之间可以沟通、理解的表现形式。可以认为用例图是开发者与客户之间的可视化契约。我认为最主要的一点就是,在这个用例模型中,一直是以用户的角度为主的,做为开发人员也要时刻站在用户的角度来看待整个系统。从原则上来讲,用例之间都是独立、并列的,它们之间并不存在着包含从属关系。但是为了体现一些用例之间的业务关系,提高可维护性和一致性,用例之间可以抽象出包含(i...
一句话评论设计模式六大原则 原则,故名思议则是本质的意思。所谓擒贼先擒王,研究设计模式自然要先了解设计原则,所有的模式都是在这些原则的基础之上发展起来的,有的是侧重一个,有的是多个都有所涉及。看完设计模式之后,我感觉到每个模式都有这些原则的影子,还渗透着面向对象的三大属性,也觉得这些原则也都有相通之处,,正是有了他们才使我们由代码工人转为艺术家。下面我来点评一下六大原则,望各位拍砖:1、单一职责原则(Singl...
老子的软件之道 - 道篇 31 避免恶性竞争 摘要:老子哲学 道德经 软件哲学、软件之道 参阅:序消灭人狼软件的十大命题编程规则 圣人曰:夫佳兵者不祥之器,物或恶之,故有道者不处。君子居则贵左,用兵则贵右。兵者不祥之器,非君子之器,不得已而用之,恬淡为上。胜而不美,而美之者,是乐杀人。夫乐杀人者,则不可得志於天下矣。吉事尚左,凶事尚右。偏将军居左,上将军居右。言以丧礼处之。杀人之众,以悲哀泣之,战胜以丧礼处之。 本章是讲战争之道的,老...
老子的软件之道 - 道篇 30 领导者的行为规范 摘要:老子哲学 道德经 软件哲学、软件之道 参阅:序消灭人狼软件的十大命题编程规则 圣人曰:以道佐人主者,不以兵强天下。其事好还。师之所处荆棘生焉。军之後必有凶年。善有果而已,不敢以取强。果而勿矜。果而勿伐。果而勿骄。果而不得已。果而勿强。物壮则老,是谓不道,不道早已。 圣人常怀仁爱之心,老子更是悲天悯人,他老人家反对战争,强调以道辅佐国君,而不要以武力逞强与天下,其中的道理对于企业的领导...
老子的软件之道 - 道篇 29 过犹不及 摘要:老子哲学 道德经 软件哲学、软件之道 参阅:序消灭人狼软件的十大命题编程规则 圣人曰:将欲取天下而为之,吾见其不得已。天下神器,不可为也,为者败之,执者失之。夫物或行或随、或歔或吹、或强或赢、或挫或隳。是以圣人去甚、去奢、去泰。 本章老子告诫我们要按客观规律做事,不要走极端,不要心存奢望,不要好大喜功。对软件领域更具有指导价值: 想通过强行开发的方式建设企业级应用系统,我认为这样...
老子的软件之道 - 道篇 28 大制不割 摘要:老子哲学 道德经 软件哲学、软件之道 参阅:序消灭人狼软件的十大命题编程规则 圣人曰:知其雄,守其雌,为天下溪。为天下溪,常德不离,复归於婴儿。知其白,守其黑,为天下式。为天下式,常德不忒,复归於无极。知其荣,守其辱,为天下谷。为天下谷,常德乃足,复归於朴。朴散则为器,圣人用之则为官长。故大制不割。本章老子提出了为人处世的根本原则:知雄守雌、知白守黑、知荣守辱。为人不要只知刚...
教育改变命运 初四我们如期来到了学校,这个本该是二三万人活动的舞台上只有一二百人,显得是那么的格格不入,可是我们丝毫没有觉察到什么不妥,因为我们一直都是在做别人看着不该做的事,一切的一切都是源于有一个个性而高瞻远瞩的老师(博客),丝毫没有过誉的嫌疑,‘教育改变命运’是他常说的一句话,老师的能力我们都看在眼里,一个一个难以想象而早已被预言的事实逐渐活生生的摆在我们面前,使我们不得不成为忠实的米粉,任其设计和...
2012年一月月末总结 距离上次写月末总结,似乎隔了很长时间了。这样看来,一个月确实挺漫长的。首先还是总结一下自己的学习吧。windows编程方面自己感觉学习得有条不紊,虽然说进步不是很快,但是这个也不能心急啊。一口吃不成胖子。况且我是和linux一起学习的,最纠结的就是每天频繁开关机进grub的时候了。本来想好是在linux下面装个windowsXP然后装个vs的,但是可能是我电脑的原因吗?装上后经常卡,而且偶尔会...
我们还有多少时间可以浪费 转眼大三下学期了,大一刚来时候在12教门口找我们系的情景在在眼前,高中和我妈骑车自行车带着铺盖卷时的情形还记得,初中刚到学校拿着学校要求带的笤帚排着队的情形还记得,幼儿园被姐姐带到学校站在教室门口的情形还记得,还记得小学盼着初中,初中盼着高中,高中盼着大学,而现在,我的的确确的在盼着毕业,但是过年回家一趟听工作的工作说“还是上学好啊”,我不知道时间对于我来说意味着什么,就像米老师说的,他很值钱,但...
1%与90%与信息技术素质 今天是龙年的初五,也是我回学校的开学的第一天,在一片欢声笑语中我渡过了开学的第一课。 是啊,为什么要这么早就开学了!我们开学来了之后要干什么呢! 在开学的前一天,姐姐和妈妈也说,才回来这么几天,晚回去一两天也没有事。为什么要这么早就回去啊? 说实话,当时,妈妈和姐姐真得不想要我这么早就回学校。说,学习吧,不在乎这么几天,关键是学习的方法与效率。我当时,也说得不是太...
寒假开会问题之IT意识 今天是初五,寒假回来第一天上课。放假之前米老师在会上千叮咛万嘱咐的事情,结果还是有很多同学,没有注意这些细节。结果只能说明我们的IT意识还是太淡薄,我们还太需要在我们的日常生活中继续加强我们IT意识的培养。这次会议上,暴露了大家的很多问题。包括财物分开放问题,安全问题、携带好自己东西问题,金钱与时间的关系问题,善于发现、总结的问题。诸多问题的暴露,也预示着大家都还有很大的提...
程序员淡定的姿态和操蛋的心 程序员的通病:逼。其实这个逼字可以分为两个阶段,年轻的时候,是傻逼;年纪大点的时候,是牛逼。但也不绝对。我身边好多做软件,或是被软件做的朋友。有上30的,有才过20的。有倚老卖老,有年少轻狂的。记得一朋友说:妈的,最他妈讨厌写代码不写文档的。但据我所知,很多时候他也是不写的。第一可能是小项目,写在代码注释就行了。第二可能是公司对这方面就不是很重视或是规范化的操作...
程序人生--一个程序员对学弟学妹建议 我始终认为,对一个初学者来说,IT界的技术风潮是不可追赶。我时常看见自己的DDMM们把课本扔了,去买些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心。而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑。C#就象当年的ASP 一样,“忽如一夜春风来,千树万树梨花开”,结果许多学校的信息学院成了“Web 学院”。96, 97级的不少大学生都去...
widowsSDK创建对话框的三种方法 自己看对话框也有些时间了,下面来总结下对话框的一些知识点。对话框有模态对话框和非模态对话框两种基本形式。非模态对话框允许我们把输入焦点切换到同一个应用程序的另一个窗口,该对话框也无需关闭,这个比较普遍。模态对话框主要是两类:应用程序模式对话框和系统对话框。应用程序对话框不允许我们在本应用程序中切换输入焦点,但是可以切换到其他应用程序中去,比如点击记事本的文件打开按钮,会弹出选择打开文件...
Gentoo Linux安装注意事项 今天想安装个gentoo,其实以前是安装过的,但是每一次都是在 grub地方卡住了,所以这次心想趁着寒假的时间再次实践一下,把每一步都记录下来。1.下载ISO镜像文件。可以从官方网站下载http://www.gentoo.org/main/en/where.xml 有时候从官方网站下载起来会比较慢,163有个开源的镜像网站,也可以从那里去下 载http://mirrors.163.com/...
怎样能防止瞌睡? 中医N种方略解决神乏 中医一直被认为是一个对身体伤害相对较小的医治方式,要提神,中医可是有种种的对策呀,就看你个人的喜好了,下面我们介绍主要的3种提神方法。 方略1:草药茶助我提神 茶一直被认为是提神的首选,也许你仅仅局限于简单的绿茶、红茶或者是普通的茶叶,其实许多时尚而美味的药茶也是我们提神的好伴侣。 ◆薄荷茶 喝薄荷茶是最值得推崇的提神方式,近来被美国《...
HTML5 Canvas实现透明效果 Context对象可以通过改变它的globalAlpha属性来改变生成它的Canvas对象的透明度。globalAlpha属性的取值范围是[0, 1],0表示完全透明,1表示完全不透明。<!DOCTYPE HTML><html><body><canvas id="canvas" width="600" height="400"&am
windowsSDK利用子窗口控件设置窗口透明 在看对话框之前,还是觉得有必要先看一下子窗口控件,很多对话框的知识点都涉及到子窗口控件。正好看到学长的一篇实现窗口透明化的文章,对它比较感兴趣,于是就想拿这个例子来练练手首先先介绍下窗口透明化的实现:首先是下面这个函数LONG SetWindowLong(HWND hWnd,int nlndex,LONG dwNewLong);SetWindowLong该函数改变指定窗口的...
三层架构实战篇——抽象工厂+反射实现验证用户登录! 一、“三层”架构就一定要分三层吗?答案当然是否定的,分层的根本目的就是要达到“高内聚,低耦合”。我们不应该为了分层而分层,那么什么样的分层才是最好的分层呢?我认为,没有最好的分层,只有合理的分层。同时,我们也要根据具体的情况来分析,如果系统很small,不用分层也不是不可。当然,对于一些逻辑复杂的大型系统,分层便显得尤重要了,可以达到所说的,利用团队开发、可复用性、表达的业务逻辑清楚、利于维护...
VB.NET中的文本框 一、文本框显示Datatable临时表中的数据dim dt as new DataTableTextBox1.Text=dt.Rows(0)(1).ToString'上式中(0)表示的第0行,而(1)表示的是第1列。也就是说:DataTable.Rows.(i)(j)表示的就是第i行第j列的数据。二、限制用户不能直接在文本框中输入信息在VB中只需 TextBox1.Locked...
要有一颗感恩的心 现在我们在学校里学习,感觉很幸福,也很快乐!同时我们都很清楚,我们这样学习环境是怎么来的!老师为我们做的,我们看在眼里,记在心上!让我们成为老师的骄傲,不要让他为我们感到失望!师恩永怀!...
fedora 16 使用LiveCD修复grub2引导 我承认我这个人太贪心了,自从我的电脑装了fedora16变成双系统以后,竟然又对opensuse感兴趣了,结果兴冲冲的想装个三系统玩玩,但是其实我对linux方面根本不太懂啊,结果在安装的时候把opensuse的grub引导直接安装到了MBR上面,把原来fedora16的grub2引导给覆盖了,结果电脑识别不了fedora16,而且opensuse又识别不了我的无线网卡,整个就杯具了,还好学长及时...
windowsSDK加速键实例分析 今天在看windows程序设计菜单里面的加速键,看了好几遍才勉强看懂,下面来解释一下书本里面的代码: #include <windows.h>#include "resource.h"#define ID_EDIT 1LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);TCHAR szAppName...
设计模式初探 假期开始的时候才开始看大话设计模式,现在书差不多看了一半了,对于设计模式有了朦胧的感觉,他的作用是不言而喻的,通过书中的对话,和对一个一个例子的不断的改进,用不同的模式加以改造,使得代码的重用性更高,更易于理解,最重要的是维护性好,使得自己的代码称为一件完美的艺术品。 编码是一门艺术,设计模式则是雕琢的工具。还有五天放假,希望放假前能够研习完这本书,以后的代码也就有了策略了,不再...
Android 下拉刷新控件之ScrollView版本实现 这还是一个下拉刷新的控件其实也是对于下拉控件类似与ListView的一个扩展。对于ListView下拉刷新详情见:http://blog.csdn.net/nono_love_lilith/article/details/7100845然后下面一哥们索要demo,顺便写了下,也顺便也说明下ScrollView版本的下拉和资源下载地址。效果图1:效果图2:...
windowsSDK 菜单资源浅谈 这几天在看菜单,今天自己动手写了一下,出现了一些错误。首先我先自己简单的写了一个只包含菜单资源的文件:#include <windows.h>#include "resource.h"LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;//TCHAR szAppName[] = TEXT ("ownmenu...
Android面试题之二(中) 这部分面试题基本都是在2011年常见的。发几个常见。大部分直接copy其实好多你只要理解大致的意思就行了。解答都是偏长。1.如何避免ANR?答:ANR:Application Not Responding,五秒在Android中,活动管理器和窗口管理器这两个系统服务负责监视应用程序的响应。当出现下列情况时,Android就会显示ANR对话框了: 对输入事件(如按键、触摸屏...
Android面试题之一(初) 听一朋友说的,现在去面试Android移动开发发现面试越来越坑爹了。记得2010年时,基本只要会java,懂4大组件,5大布局就基本ok了。以前找工作也了解过一些面试题。简单分向下比较早版本的几个面试题。(更多详细内容请度娘或是谷哥)1.开发环境搭建流程。答:其实大现在有些人可能还是没分清ddms,adt,sdk这些到底指的什么。记得最早时在他人指导下我们都是这样搭的:拷过...
软件开发过程中的三层架构的深入解析和搭建(一) 一、什么是三层架构(1)情景:设想我们去餐厅吃饭,我们刚刚坐下来,就会有服务员过来为我们服务。服务员记下我们点的菜,然后将菜单传给厨房的大厨。大厨拿出后勤人员事先买好准备好的菜开始烹制,然后交给服务员端出来让我们享用。其实这个餐厅的饮食服务业务可以分解为三个部分来完成,每一部分各司其职。服务员只管接待顾客、向厨师传递顾客的需求;厨师只管烹炒不同口味、不同特色的美食;后勤工作人员...
vim进阶学习笔记 最近在看《学习vi和vim编辑器第7版中文版》,一些基本的命令这里就不介绍了,反正大家都找得到,这里给大家介绍一点有趣的东西 关于ex 编辑器 ex编辑器是一个行编辑器,在vim中输入 Q 会进入到ex编辑器,如果是不小心进入的,输入vi 或者 visual 就可以回到vim 中了 大家都知道 vim 是有三种模式的,其实命令行模式的vim 就是打开了一个可视化的ex编辑器。所以...
存储过程使用 谓存储过程就是Transact-SQL语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。由于存储过程被预先编译过,所以执行起来要比单行SQL语句效率高出很多,在应用程序开发过程中应尽可能的采用存储过程进行数据的增加、更新、删除和查询操作,以提升应用程序的整体运行效率。执行SQL Server的存储过程需要如下步骤:1、生成SqlCommand对象并将其Com...
初步计划 磨磨唧唧一个多月了,感觉寒假之前很长一段时间就开始忙机房收费系统的重构了,过程是处处碰壁,不断的摔倒,又泥泞的站起来。进入寒假,打算是完成重构第一遍。这个过程是打算使用经典的三层架构,不使用其他任何的设计模式。起步之后,感觉还是困难重重,这时候一方面还是感觉图比较难画:用例图还好,宏观上的观摩,比较好把握;画类图的时候总是把握不了火候,类图中的每一种关系都表示着一种代码的实现方式,有些时候还是...
vb.net学习总结 现在算算,学习VB.net用了差不多两个礼拜的时间吧,也是因为开始的时候不太适应这个教程。从学习C#、设计模式再到VB.net的学习,感觉到自己对面向对象的理解在一点点的加深,也感觉到编程很有意思,也不要太难。 在刚开始学习vb.net的时候,首先讲的是一个平台——.net framework。仅管在前面的学习当中有接触过,但是,一直不是太理解,感觉挺乱的。于是,自已仔细的整理了一篇关于...
windows SDK模拟游戏钢琴的实现(二) 昨天晚上失眠了,于是一直在想实现GDI的一个效果:首先绘制10个相连的矩形,当鼠标移到某个矩形的时候,自动填充那个矩形的背景颜色为灰色,移开的时候恢复原来的白色。当只有一个矩形的时候,当然不是一件难事。但是当有10个矩形的时候,问题就产生了。首先先看一下代码:#include <windows.h>#include <math.h>#define NUM ...
再见2011,写给2012的自己 回顾 在写博客之前,浏览了一下自己这一年的博客,从暑假的机房收费系统,到UML,到C#、再到设计模式、最后是VB.net的学习。感觉到自己的生活很充实,也感受到,自己在提高班这个大家庭中成长着。 看着自己先前写的博客,看到了自己的点滴成长,和在成长过程中所犯的错误,现在读读,别有一番心情,好像更能体会到米老师所写的一篇博客的含义了。《博客,提高班学生成长的秘籍 "写东西就是用文字整...
2011全年总结 2012终于来了,更加荒诞的是:竟然是本人的本命年。。。无语……算了还是赶紧总结吧。。。看了几篇大家写的总结,大多数人选择时间顺序,依次写了自己的收获。应该说他们对自己的文章的架构是:按照总分总的关系,中间采用时间顺序,依次填充。清晰的记得去年寒假大家一起在机房学习的情景。感觉那时候讨论的机会特别多,一有一点小问题就会聚在一起讨论。大家总是把自己学习的方法拿出来分享。俯瞰这一年,感觉自...
Android 单个TextView中文字颜色,超链接等效果的设置 一般在一个TextView中的字体颜色,效果都是统一的。如果一段文字,前几个文字要显示高亮,中间部分一个超链接,后半部分自定义颜色。简单点可能直接用3个textView来表示了。因为上次做一个彩票的软件,对于双色球来说,大家都知道。双色,那就有两种颜色。很显然,这个效果,最后需要在一个TextView中完成。(当然也可以2个,红色和蓝色分开)。然后我们第一反应是想到一个...
写在末日年初 昨天是学校统一放假,这一年我的大三也过了一半,也经历了一个最忙碌的学期,不得不说时间过的真的很快,早就没有了那种悠闲惬意的心情,迎接的都是要做的好多事情。记得电影“当幸福来敲门”男主人公在自白他成功前的那一段时间这么说:我的这段人生叫做奔跑。我现在离所谓的成功还很远,是在一点点的向上爬,但是要不断的爬。 在暑假结束的时候,我的进度是刚开始软件工程,由于这学期的专业课比较多,每天的课程...
专业课的复习与考试 在近两周的时间里,我都在和自己的专业课的复习与考试打交道。通过这两周的专业课的学习,还是有好多想和自己说的,还有,自己有好多的方面做得不好。 这个学期的专业课的学习,我是通过两个视频教程来开展的。我做得不好的一点就,我在学习完之后没有及时的总结,这就造成学习的效果很差。 还有一点,就是对待学习知识与考试的关系。有的时候仅管自己学习的很系统,但是要去了解老师要考什...
关于位运算符实现的问题 今天在看SDK教学文章的时候,发现了一个关于位运算符的问题首先附上关键代码段: case WM_LBUTTONDOWN: { hitPoint.x = LOWORD(lParam); hitPoint.y = HIWORD(lParam); MouseClick = TRUE; In...
Android 异步操作AsyncTask 异步的轻量级实现;AsynceTask简述:1.功能类似于Handler,都是为了防止UI线程操作阻塞而衍生而来。2.AsyncTask是Handler的一个轻量级实现,模型类似于IntentService于Service。都是为了更加方便操作。(因为一般的异步,我们都是开启一个子线程或是匿名线程,缺点就是样的实现对于线程的操作,控制是十分困难)3.阐述下Handler,一般我们就...
Android传感器的运用之ACCELEROMETER Android中支持很多种传感器:比如加速度,重力的,光感,磁感等等。在运用该API常用到的两个类和一个接口SensorManager:传感器管理类;Sensor:一个描述传感器的类;SensorEventListener:传感器事件监听类(SensorListener类已过期);一般运用步骤:1.通过上下文获取SensorManager的对象。Context.ge...
总结(四)第三个月 12月了 ,时间过得实在是快啊。期末考试一门接着一门的就来了。 上个月说了,这个月要像华哥学习,开始做笔记了。在windows编程上面,首先借来的那本windows系统编程看了几十页就看不下去了,下的源码也不能用,因为还要配置动态链接库,所以在上面做了一些笔记后就把书本还掉了。还是华哥向我推荐的 《windows程序设计》好,华哥一直强调那就是本圣经啊~~这本书讲得比较详细,也比较清晰,像我这...
总结(三)第二个月 唉,不知不觉又是一个月末了。这个月很悲剧啊。首先这个月进行了期中考试,考试结果跟我想象的也差不了多少,我认为不会挂的就没有挂,我认为挂了的就挂了。其次呢这个月又进行了党校考试,话说上次考了59,但是我不抛弃不放弃,坚定不移再次考试,竟然又是一个59.。彻底无语啊,但是我还是不抛弃不放弃,我还是坚定不移地在准备第三次的考试。这个月一直在看windows编程和linux命令行手册。还是有些收获的。但...
总结(二)第一个月 月末总结 一个月又快过去了。 总算是顺利地进入了红色家园。家园很温馨啊,搞搞聚餐啊,搞搞秋游啊,挺开心的。 把校学生会给退了。在三轮的时候技术部副会长亲自来找我,但是最终我还是选择不去了。因为社团太多的话毕竟会忙不过来,如果已经加入了家园,以后再加入安协的话,确实会忙不过来的,毕竟还要兼顾学习。 现在已经习惯经常去安协了。毕竟那里的氛围好一点,虽然有时候有点吵的话不...
总结(一) 起点 大学生活在暑假的时候,对于大学生活,我抱着的心态有点激动,但好像没有多少感觉。因为我没有融入过那个环境,我根本不知道那究竟是怎样的生活。 报名那天的学长,我也不会想到他就是我的辅导员助理太白学长。报名那天是父母跟我一起开车把我送到学校,在寝室给我整理这整理那。然后最终他们回去了。这时的我也没有太多失落,反而有一种开心的心情。其实住寝室最开心的事情就是有一群好兄弟。暑假在家里的时候,...
windows SDK模拟游戏钢琴的实现(一) 最近想做一个模拟钢琴的小软件,想做个既有键盘接口又有鼠标接口的小软件。所涉及到的知识点如下: 1.有关键盘的知识 2.有关鼠标的知识 3.GDI的知识 4.媒体播放函数的有关知识 因为这几天也正好在看这些内容,所以理论结合实际是最好的学习方式 首先要找钢琴音阶,但是上网找了一圈也没有发现,最后在4399里面找到一个差不多类型的模拟钢琴游戏,而且音色不错,索性用Ad...
寒假生活突然开始啦 昨天还在忙着恶心的考试,今天就和大家集体到新食堂进餐了。从恶心的复习、考试突然过渡到提高班的学习中来,有点小麻木的感觉。前阵子的复习日子过得真的难受死了。表面的复习工作还可以应付,但是机房收费系统重构了一半,一边做系统,一边复习专业课显得就有点捉襟见肘,无暇东顾了。那阵子的日子是这么过的:整天想着这个方法怎么写,白天又不得不去上自习。。。最后的考试还恶心,考最后一课微分几何的时候难受死了,...
SDK编写简单的随机数生成器 上几天帮同学搞了一个随机数生成器,首先在网上搜索了一下,发现网上有的做的也比较的简单,但是功能还是比较全的。而且发现自己学的东西刚好可以写一个随机数生成器。当然还有些预备知识没有学,所以现学现用了。计时器的有关知识我已经了解了,首先要用到创建字体,然后是创建父窗口控件,然后就是利用RGB的颜色的变化了。看了几天的书,终于写出来了。下面是代码:#include <...
linux物理内存探测 linux在被bootloader加载到内存后, cpu最初执行的linux内核代码是/header.S文件中的start_of_setup函数,这个函数在做了一些准备工作后会跳转到boot目下文件main.c的main函数执行,在这个main函数中我们可以第一次看到与内存管理相关的代码,这段代码调用detect_memeory()函数检测系统物理内存在header.S中执行下面汇编代码:...
WinCE 6.0 KITL 正常使用 串口输出信息 [2] Enable/disable KITL [3] KITL interrupt/poll mode [4] KITL Active/Passive mode [5] Enable/disable DHCP [6] Set IP address [7] Set IP mask [8] Set default router [9] Enable/disable VMINI [a] Set MAC...
android学习笔记19:ListView 在使用Listview时,我们可以直接在XMl文件里指定使用的数组资源,也可以在Java代码里通过数组指定。在定义listview的时候我们还可以定义分隔符,使得listview更加美观。布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.an...
android学习笔记18:ToggleButton ToggleButton也是button的一种,不同体现在togglebutton分为按下和没有按下两种不同的状态。这个程序通过使用togglebutton动态的改变了linearlayout的布局方式。public class ToggleButtonTest extends Activity{ @Override public void onCreate(Bundle saved...
如何减少BUG 一个非常庞大的话题,写在这辞旧迎新之际,警示自己! 软件开发,谁都会,谁都可以,但并不是谁都能做出能用的结果,应为在开发过程中,不可避免的会引入BUG,所以才要调试,漫长的调试周转时间及解决BUG的时间,大大增加了软件开发不可能成功的因素。 而往往最困难的问题,解决方法也最容易,大道理都是显而易见的! Bell实验室安全监控系统项目的V.A.Vyssotsky提出,关键的工作是产品定...
android学习笔记17:文字设置 在Android文字可以设置的属性包括大小,颜色,是否是密码,是否显示阴影,超链接,文字无法显示的时候的省略规则等。<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientat...
android学习笔记16:带提示的输入框 在需要用户输入数据的时候,友好的界面是非常重要的,所以如果我们能在输入框给用户一些提示,将能很好的提高程序的易用性,android就给我们提供了这样一个属性,也就是android:hint。另外这个程序的textview里面使用一下android中的shape属性,可以参见我前一篇转载的博客。<?xml version="1.0" encoding="utf-8"?>&l...
Android中shape的使用 原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://kofi1122.blog.51cto.com/2815761/521605本人在美工方面一直是比较白痴的,对于一些颜色什么乱七八糟的非常头痛,但是在Android编程中这又是经常涉及到的东西,没办法,只有硬着头皮上。Android中常常使用shape...
开发人员,请爱护你的身体 最近一周身体极度不适,口腔溃疡、嗓子痛、感冒咳嗽、发烧,统统来了一个遍,非常痛苦。所以最近一直关注有关于软件开发人员的身体健康问题的网站、文章。看了许多文章,在结合自己在这一周之内痛苦的感受,所以才写这样一篇文章来提醒自己“开发人员关注健康,刻不容缓”。其实,作为软件开发人员都知道,我们为了生存,必须要终日坐在电脑面前埋头苦干,所以...
android学习笔记15:图片浏览器 这个图片浏览器可以实现浏览程序里预定义好的图片数组,且可以动态改变图片的透明度和查看图片的局部细节图,使用了imageview这个控件,通过setimagebitmap这个方法来改变图片,使用setalphe来改变图片的透明度。<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http:...
WinCE 6.0 KITL 不能使用DM900 网卡驱动修改记录 修改理由:由于eboot 和KITL 同时调用 DM9000DBG_Init 这个函数,在eboot 掉用时使用的是没有经过映射的地址,当镜像加载完成后,时候的是映射过的地址。 而DM9000DBG_Init 任然时候的是没有经过映射的地址。这样做导致的直接后果是,KITL起来当访问没有这段地址(0x15000000)的时候立马死机。但是有引出了另外的一个问题,就是这样修改在启动eboot...
vs2010 无法嵌入互操作类型“mshtml.HTMLAnchorElementClass”。请改用适用的接口 无法嵌入互操作类型“mshtml.HTMLAnchorElementClass”。请改用适用的接口选中项目【引用】下的 mshtml.dll,鼠标右键,选择属性,把“嵌入互操作类型”设置为False。...
WinCE 6.0 EBoot 快速编译技巧 1. 在SouceInsight 修改源文件。 2.在SolutionExplorer找到Eboot路径 3.鼠标选中EBoot工程文件,右击,选择编译 4.在Release路径中就能找到更行过的Eboot可执行文件...
ImageView的scaletype属性 参考:http://android.blog.51cto.com/268543/316255ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType)。android:scaleType是控制图片如何 resized/moved来匹对ImageView的size。ImageView.ScaleType /a...
linux物理内存描述 linux使用于广泛的体系结构,因此需要用一种与体系结构无关的方式来描述内存。linux用VM描述和管理内存。在VM中兽药的普遍概念就是非一致内存访问。对于大型机器而言,内存会分成许多簇,依据簇与处理器“距离”的不同,访问不同的簇会有不同的代价。每个簇都被认为是一个节点(pg_data_t),每个节点被分成很多的成为管理区(zone)的块,用于表示内存中的某个范围。除了ZONE_DMA,ZON...
GAMS将har数据转换为gdx数据和Access数据过程中的异步问题 GAMS是非常优秀的经济学建模软件,可以用来求解一般均衡和其他优化问题。GTAP作为一种大型多区域CGE模型,也可以使用GAMS来求解,但使用之前,必须将GTAP提供的har数据转换为GAMS所能使用的gdx数据,如果要在C#或Java等高级语言中调用该数据,则还必须将gdx数据转换成Access数据库数据,数据流为:har--------GAMS--------> gdx-----...
令人深思的文章:也许你这辈子都只是个小人物 中小学成绩一直很出色,但也不是惊天动地的神童。考上一所不错的大学,但也不是清华北大。进来后发现身边的人都挺挫,其实自己也不过这么回事。毕了业,进了一所还算不错的单位,但也不是什么nb企业 。拿着固定的收入,住着租的房子或者公司宿舍。努力个三五年工资涨到五六千,nb点的八千上万?攒钱贷款买了房,娶了妻,在钢筋混凝土的都市的一个角落里有了一个自己的洞...
最简单的BBS项目源码展示 下载地址http://download.csdn.net/detail/hsttmht/3987324articletree.jsp<%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="gbk"%><%@ page import="java.sql.*"...
IHTMLDocument2 Interface 汉化 IHTMLDocument2 MembersactiveElementGets the object that has the focus when the parent document has focus.当它的父文档拥有焦点时 获得当前focus的子对象alinkColorSets or gets the color of all active...
2012元旦小品 网络达人孔乙己参加招聘面试 过节了,准备个小品节目《(穿越)招聘》,以下是其中的一部分片段仅供娱乐。原创作品,转载请注明出处blog.csdn.net/upi2u......主持人:现在来看下一位,他是一个曾经生活在绍兴的秀才,通过网络自学成了网络达人,今天也来到现场参加面试。请孔乙己上场。孔乙己:(孔乙己上场,边走边摇头)子曰:甲乙丙丁,子丑寅卯。刚跟老婆大人签了一个请假工作流出来溜达溜达,其实我是来面试的...
年末考试了,总结了 期末考试说远也不远了,望同学们以突击为主,作-弊为辅:采取师进我藏,师退我抄,迂回作战方针!送你一幅对联:考试不作-弊来年当学弟,宁可没人格不能不及格。横批:死也要过。考试必要技巧:三长一短选最短;三短一长选最长;长短不一要选B;参差不齐就选D。以抄为主,以蒙为辅,蒙抄结合,一定及格. ...
linux内存管理概述 linux内存管理建立在基本的分页机制基础上,在linux内核中RAM的某些部分将会永久的分配给内核,并用来存放内核代码以及静态内核数据结构。RAM的其余部分称为动态内存,这不仅是进程所需的宝贵资源,也是内核本身所需的宝贵资源。实际上,整个系统的性能取决于如何有效地管理动态内存。因此,现在所有多任务操作系统都在经历优化对动态内存的使用,也就是说,尽可能做到当要时分配,不需要时释放。内存管理是o...
C#获得IHTMLDocument2并且创建链接的单击事件 private void button4_Click(object sender, EventArgs e) { IntPtr ParenthWndldsl = new IntPtr(0); IntPtr EdithWnd = new IntPtr(0); Thread.Sleep(200); ParenthWndldsl = FindWindow(null, "电话服务...
linux内核分析之调度——实时调度算法 linux内核中提供了两种实时调度策略:SCHED_FIFO和SCHED_RR,其中RR是带有时间片的FIFO。这两种调度算法实现的都是静态优先级。内核不为实时进程计算动态优先级。这能保证给定优先级别的实时进程总能抢占优先级比他低得进程。linux的实时调度算法提供了一种软实时工作方式。实时优先级范围从0到MAX_RT_PRIO减一。默认情况下,MAX_RT_PRIO为100,所以默认的实时优先级...