搜索到与相关的文章
编程技术

大话重构连载19:大对象的演化过程

很好,我们终于迈出了重构的第一步,而这第一步我们瞄准了代码问题的重灾区——超级大函数。超级大函数之所以是代码问题的重灾区,就是因为它们往往难于阅读、难于维护。面对大函数我们采取的办法是拆分,以功能为核心将其拆分成一个一个独立的函数。拆分后的程序变得易于阅读了,因为要读懂程序你不再需要读完所有代码,选择性的读取那些顶级函数,只需了了数行代码,你就可以明白整个程序。但是,当我们将数千行的大函数分解成数十个小函数时,另一个问题出现了。想象一下,数十个函数被杂乱无

系统 2019-08-29 22:08:26 2459

编程技术

FFMpeg中apiexample.c例子分析——编码分析

apiexample.c例子教我们如何去利用ffmpeg库中的api函数来自己编写编解码程序。(1)首先,main函数中一开始会去调用avcodec_init()函数,该函数的作用是初始化libavcodec,而我们在使用avcodec库时,该函数必须被调用。(2)avcodec_register_all()函数,注册所有的编解码器(codecs),解析器(parsers)以及码流过滤器(bitstreamfilters)。当然我们也可以使用个别的注册函数

系统 2019-08-29 22:07:02 2459

Android

Android文件图片上传的详细讲解(二)--AsyncTa

AsyncTask的用法AsyncTask的用法在开发Android应用时必须遵守单线程模型的原则:AndroidUI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则:1.不要阻塞UI线程2.确保只在UI线程中访问AndroidUI工具包当一个程序第一次启动时,Android会同时启动一个对应的主线程(MainThread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并

系统 2019-08-12 09:29:35 2459

编程技术

Swt/Jface中提供的dialog

Swt/Jface中提供了各种各样的Dialog,一般情况下就能满足我们的需求,现在把这些dialog介绍一下,下一篇文章再继续将如何自定义Dialog一、MessageDialog1,MessageDialog的用法很简单,只需要一句话.MessageDialog.openInfomation(shell,title,message);MessageDialog.openConfirm(shell,title,message);MessageDialog

系统 2019-08-12 09:29:31 2459

编程技术

不用递归实现无限级下拉树高效算法【原创】

在公司项目中用递归生成Tree时,出现了很严重的性能问题,在google中go很久,也没有找到不用递归实现无限级Tree的算法。后来,抱着尝试的心理。结果,我用两个循环就搞定了。自认为这个算法应该很高效,以后递归树的地方我就用这个算法了。不过,需要注意的是,你的数据必须是根据ID从小到大排过序的。否则,就会显示不正确。如果数据无序,建议你先排序然后才调用此算法。看来,我还是相当聪明的嘛,嘿嘿以下是代码:publicstaticvoidmain(String

系统 2019-08-12 09:29:29 2459

各行各业

集成和配置AutoMapper

AutoMapper的基本使用请参考:http://www.cnblogs.com/ljzforever/archive/2011/12/29/2305500.html学习一下Nop是如何配置和集成AutoMapper的。IStartupTask.csnamespaceNop.Core.Infrastructure{publicinterfaceIStartupTask{voidExecute();intOrder{get;}}}之前的随便介绍了IType

系统 2019-08-12 09:26:45 2459

Android

【Android Developers Training】 9. 覆盖于布

注:本文翻译自Google官方的AndroidDevelopersTraining文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。原文链接:http://developer.android.com/training/basics/actionbar/overlaying.html默认的,ActonBar会显示在你的activity窗口的上部,使得它会稍许减少了activity布局的剩余空间。如果在用户的UI交互过程中,你希望可以隐藏和

系统 2019-08-12 01:55:22 2459

数据库相关

PL/SQL --> 流程控制

--=======================--PL/SQL-->流程控制--=======================类似于高级语言,流程控制语句是PL/SQL语言的重要组成部分。这些流程控制语句使得PL/SQL加大了代码的灵活性和多样性,大大简化了程序的编写。下面将列出流程控制语句并给出具体事例。一、顺序结构按代码的书写顺序依次执行--在下面的示例中将逐步执行代码scott@ORCL>declarev_enamevarchar2(20);2v

系统 2019-08-12 01:55:05 2459

Android

Hardware Acceleration | Android Developers

HardwareAcceleration|AndroidDevelopersHardwareAccelerationInthisdocumentControllingHardwareAccelerationDeterminingifaViewisHardwareAcceleratedAndroidDrawingModelsSoftware-baseddrawingmodelHardwareaccelerateddrawingmodelUnsupported

系统 2019-08-12 01:55:05 2459

SqlServer

sql server 常用语句

1、数据库压缩日志GOALTERDATABASEwebsiteSETRECOVERYSIMPLE;--设置简单恢复模式GODBCCSHRINKFILE(website_Log,1);GOALTERDATABASEwebsiteSETRECOVERYFULL;--恢复为原模式GO2、重建所有索引execsp_msforeachtable'DBCCDBREINDEX(''?'')'重建索引DECLARE@namevarchar(100)DECLAREautho

系统 2019-08-12 01:54:32 2459