01 2013 档案

摘要:近几日,心情一直不好。天气也总是阴霾,沉闷的让人喘不过气来。 昨天的事业部年会,犹豫了好久,终于还是去了。 晚宴还算丰盛,只是人太多,近千人一起共进晚餐,熙熙攘攘的,欢笑声、喝彩声以及舞台音乐混在一起,略显得吵杂了些。每个人脸上都洋溢着微笑,尽管或真或假。这本是一个应该欢乐的时刻,这本是一个应该狂欢的场合,只是我却怎么也高兴不起来...... 只为,一个人的离开。 丁是和我同年毕业,一起进入现在的项目组的。我必须得承认,丁的工作能力比我要强得多,即便是在我们这一批一同进入这个项目组的10个新员工里面,也是出类拔萃的。人很聪明,工作上手很快,在我还对机能开发流程懵懵懂懂,需要老员工带... 阅读全文
posted @ 2013-01-30 20:54 依旧淡然 阅读(2121) 评论(2) 推荐(0) 编辑
摘要:串口是串行接口(serialport)的简称,也称为串行通信接口或COM接口。 串口通信是指采用串行通信协议(serialcommunication)在一条信号线上将数据一个比特一个比特地逐位进行传输的通信模式。 串口按电气标准及协议来划分,包括RS-232-C、RS-422、RS485等。1.串行通信 在串行通信中,数据在1位宽的单条线路上进行传输,一个字节的数据要分为8次,由低位到高位按顺序一位一位的进行传送。 串行通信的数据是逐位传输的,发送方发送的每一位都具有固定的时间间隔,这就要求接收方也要按照发送方同样的时间间隔来接收每一位。不仅如此,接收方还必须能够确定一个信息组的开... 阅读全文
posted @ 2013-01-28 21:48 依旧淡然 阅读(92645) 评论(7) 推荐(16) 编辑
摘要:在Android学习过程中,碰到很多地方需要使用到网络编程相关的东西。很可惜以前没接触过网络编程相关的知识,但是为了能够继续深入的学习Android开发,只好从头开始一点一点学起,希望能够补充一些关于网络编程的知识。 首先,需要搭建网络编程的开发编译环境,这里选择了MyEclipse和Tomcat作为开发的平台。关于如何下载、安装以及配置MyEclipse和Tomcat,可以参考百度文库《JavaWeb开发环境的安装与配置》(http://wenku.baidu.com/view/9673f831eefdc8d376ee325f.html),讲解的非常详细,按照上面的手顺一步步的安装,应... 阅读全文
posted @ 2013-01-27 13:19 依旧淡然 阅读(6306) 评论(0) 推荐(0) 编辑
摘要:窗口是位于屏幕中的一个矩形区域,它用于接收用户的输入,然后以文本或图形的形式显示输出。 那么如何来创建一个窗口呢?可以通过以下五个步骤来完成。 第一,创建窗口类,用于指定窗口的宏观特性。 第二,调用RegisterClass函数注册窗口类。 第三,调用CreateWindow函数创建窗口,用于指定窗口的细节式样。 第四,调用ShowWindow函数显示窗口,调用UpdateWindow函数更新窗口。 第五,消息循环,处理窗口过程函数。 在本篇博文中,将详细介绍如何来创建一个窗口类,也就是上述五个步骤中的第一步,其他几步的实现方法将在后续的博文中一一介绍。1.窗口类 当应用程... 阅读全文
posted @ 2013-01-26 20:33 依旧淡然 阅读(3004) 评论(0) 推荐(0) 编辑
摘要:同其他的编程语言教材一样,CharlesPetzold同样选择了使用“HelloWorld”作为这部堪称经典的《Windows程序设计》的第一个Windows程序范例。 我把它称为永恒的“HelloWorld”。 在开始学习如何编写Windows应用程序之前,我们有必要先了解一下Windows工作原理的中心思想——动态链接。1.动态链接 Windows工作原理的中心思想是动态链接。 何为动态链接呢? Windows自身带有一大套函数,应用程序就是通过调用这些函数来实现它的用户界面和在屏幕上显示文本与图形的。这种调用并不会像C语言库函数的机器码一样将这些函数代码直接链接到你的应用程... 阅读全文
posted @ 2013-01-23 22:16 依旧淡然 阅读(1145) 评论(1) 推荐(1) 编辑
摘要:要进行Windows应用程序开发,首先需要选择一款合适的开发编译环境。这里,我选择了使用VS2008作为开发编译环境。 以下简单的介绍一下如何在VS2008上新建一个Windows应用程序。 运行VS2008之后,选择菜单栏的“文件”,然后选择“新建”,再选择“项目”后,将弹出“新建项目”对话框,如图1所示。图1新建项目对话框 在项目类型中,我们选择“Visual”目录下的“Win32”。在模版中,我们选择“VisualStudio已安装的模版”目录下的“Win32控制台应用程序”。在名称后面,我们可以输入项目的名称,如“windows_HelloWorldDemo”。在位置后面,我... 阅读全文
posted @ 2013-01-21 21:48 依旧淡然 阅读(4499) 评论(0) 推荐(0) 编辑
摘要:在Android中,要将一张图片显示在屏幕上,需要创建一个显示图片的对象,该对象就是ImageView。1.ImageView常用属性 要对图片进行适屏裁剪操作,首先需要了解ImageView的常用属性。 ImageView的常用属性如图1所示。图1ImageView的常用属性 其中,android:adjustViewBounds[boolean]属性的作用是设置为true时,可以调整图片的边界。android:src(int)属性用于加载图片资源。android:scaleType(ImageView.ScaleType)属性的作用是设置图片以何种方式(类型)匹配ImageVie... 阅读全文
posted @ 2013-01-20 20:01 依旧淡然 阅读(17549) 评论(1) 推荐(0) 编辑
摘要:软件模式是将模式的一般概念应用于软件开发领域。 软件模式并非仅限于设计模式,还包括架构模式、分析模式和过程模式。1.设计模式的基本要素 设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效果、实例代码和相关设计模式。1.1模式名称 模式名称通过一两个词来描述模式的问题、解决方案和效果,绝大多数模式都是根据其功能或模式结构来命名的。1.2问题 问题描述了应该在何时使用模式,它包含了设计中存在的问题以及问题存在的原因。1.3解决方案 解决方案描述了设计模式的组成部分,以及这些组成成分之间的相互关系,各自的职责和协作方式。1.4效果 效果描述了模式应用的效果以及在使用模... 阅读全文
posted @ 2013-01-19 00:09 依旧淡然 阅读(853) 评论(0) 推荐(0) 编辑
摘要:对于面向对象的软件系统设计来说,在支持可维护性的同时,提高系统的可复用性是一个核心的问题,面向对象设计原则正是为解决这个问题而诞生的。1.面向对象设计原则 常用的面向对象设计原则包括以下7个: 单一职责原则(SRP):类的职责要单一,不能将太多的职责放在一个类中。 开闭原则(OCP):软件实体对扩展是开放的,但对修改是关闭的,即在不修改一个软件实体的基础上去扩展其功能。 里氏代换原则(LSP):在软件系统中,一个可以接受基类对象的地方必然可以接受一个子类对象。 依赖倒转原则(DIP):要针对抽象层编程,而不要针对具体类编程。 接口隔离原则(ISP):使用多个专门的接口来取代一个... 阅读全文
posted @ 2013-01-17 22:12 依旧淡然 阅读(584) 评论(1) 推荐(0) 编辑
摘要:统一建模语言UML(UnifiedModelingLanguage)是一种可视化的标准建模语言,它是一种分析和设计语言,通过UML可以构造软件系统的蓝图。 使用UML建模的目的是把所要设计的结构和系统的行为联系起来,并对系统的结构进行可视化控制。1.UML的结构 UML是由图形符号表达的建模语言,其结构主要包括以下几个部分。1.1视图(View) 在UML建模过程中,使用不同的视图从不同的角度来描述软件系统。UML包括5种视图,分别为用户视图、结构视图、行为视图、实现视图和环境视图,如图1所示。图1UML中的5种视图 其中,用户视图以用户的观点表示系统的目标,它是所有视图的核心,该... 阅读全文
posted @ 2013-01-12 21:55 依旧淡然 阅读(1095) 评论(0) 推荐(0) 编辑
摘要:SeekBar拖动条可以由用户控制,进行拖动操作。比如,应用程序中用户需要对音量进行控制,就可以使用拖动条来实现。1.SeekBar控件的使用1.1SeekBar常用属性 SeekBar的常用属性有以下一些:android:max[integer]//设置拖动条的最大值android:progress[integer]//设置当前的进度值android:secondaryProgress[integer]//设置第二进度,通常用做显示视频等的缓冲效果android:thumb[drawable]//设置滑块的图样android:progressDrawable[drawable]//设置... 阅读全文
posted @ 2013-01-11 23:34 依旧淡然 阅读(13455) 评论(4) 推荐(1) 编辑
摘要:在Android中,可以通过RadioButton和RadioGroup的组合来实现单项选择的效果。而多项选择则是通过CheckBox来实现的。1.单项选择RadioButton 我们知道,一个单项选择是由两部分组成的,分别是前面的选择按钮和后面的“答案”。选择按钮可以通过RadioButton来实现,而“答案”则可以通过RadioGroup来实现。 具体的实现步骤如下: 首先,在布局文件中定义一个TextView控件,用来显示问题。 然后,再在布局文件中定义一个RadioGroup控件,用来显示答案。 最后,再在RadioGroup控件中定义四个(根据需求而定)RadioBut... 阅读全文
posted @ 2013-01-05 16:42 依旧淡然 阅读(11331) 评论(0) 推荐(1) 编辑
摘要:Button继承自TextView,所以TextView的一些属性同样也适用于Button控件。 Button的直接子类为CompoundButton。Button的间接子类有CheckButton、RadioButton、Switch和ToggleButton。1.Button常用属性设置1.1设置Button的背景颜色 要设置Button按钮的背景颜色,可以通过在xml文件中设置android:background属性实现,同样也可以通过在代码中使用setBackgroundColor()方法来实现。<Button android:id="@+id/button1" 阅读全文
posted @ 2013-01-03 21:42 依旧淡然 阅读(8479) 评论(0) 推荐(1) 编辑
摘要:因为之前在玩单片机时,总想着可以做一个上位机程序,不求有多完美,能有个简单的人机交互界面,并能够和单片机进行通信就可以了。 具体过程为,用户在上位机程序上进行操作,然后通过串口通信与单片机进行交互,单片机再通过控制各种外设来做出相应的响应。 上述过程的简单示意,如图1所示:图1简单的嵌入式系统示意图 正是为了可以自己做一个上位机软件,所以我开始了Windows程序设计的学习之旅。后续的系列博文《Windows程序设计》将会记录下我学习Windows编程的点点滴滴。 给自己定一个学习目标吧。 花半年的时间学习完这本厚厚的《Windows程序设计(第五版)》,为自己的8*8*8光立方... 阅读全文
posted @ 2013-01-01 16:01 依旧淡然 阅读(828) 评论(0) 推荐(0) 编辑
摘要:在Android中,动画Animation的实现有两种方式:TweenAnimation(渐变动画)和FrameAnimation(帧动画)。渐变动画是通过对场景里的对象不断做图像变换(平移、缩放、旋转等)产生动画效果。帧动画则是通过顺序播放事先准备好的图像来产生动画效果,和电影类似。 帧动画主要是通过AnimationDrawable类来实现的。1.AnimationDrawable类 AnimationDrawable类用于创建由一系列Drawable对象构成的逐帧动画对象,它可以作为一个视图对象的背景。 AnimationDrawable类的常用方法有以下一些:mAnimati... 阅读全文
posted @ 2013-01-01 11:29 依旧淡然 阅读(8441) 评论(0) 推荐(1) 编辑