<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[startwithdp的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/startwithdp</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; startwithdp]]></copyright><item><title><![CDATA[Oracle Instant Client 在windows下的安装和使用：]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/46636691</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/46636691</guid><author>startwithdp</author><pubDate>Thu, 25 Jun 2015 15:08:51 +0800</pubDate><description><![CDATA[【安装】从oracle官方网站下载instant client文件，一般来说，有basic、sqlplus、odbc、jdbc，就足够用的了：

instantclient-basic-win32-11.2.0.1.0.zip

instantclient-sqlplus-win32-11.2.0.1.0.zip

instantclient-odbc-win32-11.2.0.1.0]]></description><category></category></item><item><title><![CDATA[GDAL源码剖析]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/45563691</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/45563691</guid><author>startwithdp</author><pubDate>Thu, 07 May 2015 17:12:35 +0800</pubDate><description><![CDATA[一、GDAL简介
    GDAL官方网站http://www.gdal.org/，本文章中的基本内容都是参照官网中的信息，如有错误或者与官网中的内容冲突，以官网中的为正确。
在开始文章之前，我想先提出几个问题，什么是GDAL？GDAL能做什么？GDAL怎么使用？GDAL内部结构是怎么组织的？GDAL提供的算法原理是什么？对于上面的几个问题，希望大家看完该系列文章后能对上面的几个问题少点疑惑，]]></description><category></category></item><item><title><![CDATA[C#中的Invoke和BeginInvoke方法详解]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/44462013</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/44462013</guid><author>startwithdp</author><pubDate>Thu, 19 Mar 2015 18:23:23 +0800</pubDate><description><![CDATA[在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate，至于委托的本质请参考我的另一随笔：对.net事件的看法。
  
一、为什么Control类提供了Invoke和BeginInvoke机制？
关于这个问题的最主要的原因已经是dotnet程序员众所周知的，我在此费点笔墨再次记录到自己的日志，以便日后提醒一下自己。
1、windows程序消息机制
Windo]]></description><category></category></item><item><title><![CDATA[Notepad++列编辑、正则查找、替换]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/43955659</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/43955659</guid><author>startwithdp</author><pubDate>Thu, 26 Feb 2015 19:29:59 +0800</pubDate><description><![CDATA[本文转载自：高爽|Coder，原文地址：http://blog.youkuaiyun.com/ghsau/article/details/22507859。





目标：

       将源数据转成初始化sql语句。
源数据：



[plain] view
 plaincopyprint?






104110040018,1,中国银行,中国银行天津琼州道]]></description><category></category></item><item><title><![CDATA[WPF UpdateSourceTrigger]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/42398841</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/42398841</guid><author>startwithdp</author><pubDate>Sun, 04 Jan 2015 20:33:07 +0800</pubDate><description><![CDATA[1. UpdateSourceTrigger：

WPF通过Binding实现控件和ViewModule（Module）数据源的双向同步，如果想在数据源中的数据变更时及时通知控件，需要类实现INotifypropertychanged接口，如果数据源是个集合，在集合中的数据变更时也想刷新控件，则该集合需要是Observablecollection。
如果用户更改前台控件的值，什么时候通知后台]]></description><category></category></item><item><title><![CDATA[WPF在子窗体中关闭整个程序]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/41313411</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/41313411</guid><author>startwithdp</author><pubDate>Thu, 20 Nov 2014 15:04:16 +0800</pubDate><description><![CDATA[需求:需要在许多子窗体中关闭整个程序(WPF)

winform实现:Application.Exit();

WPF实现:

    App.xaml文件:


     
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.mic]]></description><category></category></item><item><title><![CDATA[使用IAsyncResult接口实现异步调用]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/41084251</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/41084251</guid><author>startwithdp</author><pubDate>Thu, 13 Nov 2014 18:34:25 +0800</pubDate><description><![CDATA[使用IAsyncResult接口实现异步调用

在.net framework中，许多I/O操作（文件I/O操作以及网络I/O）都提供异步版本的API，我们可以直接使用这些API来达到异步调用的目的。 在今天的示例中，发送HTTP请求的API中，就支持异步操作，我将演示使用这些异步API的操作过程。

在客户端，我将使用以下代码完成异步调用过程：
/// 
/// 使用IAsyncRes]]></description><category></category></item><item><title><![CDATA[判断某一点在直线的左右侧的算法]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/40625137</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/40625137</guid><author>startwithdp</author><pubDate>Thu, 30 Oct 2014 19:12:32 +0800</pubDate><description><![CDATA[判断 某一点在直线左右侧

左右方向是相对前进方向的,只要指定了前进方向就可以知道左右(比如指定前进方向是从直线的起点到终点).判断点在直线的左侧还是右侧是计算几何里面的一个最基本算法.使用矢量来判断. 
定义：平面上的三点P1(x1,y1),P2(x2,y2),P3(x3,y3)的面积量：


S(P1,P2,P3)=|y1 y2 y3|= (x1-x3)*(y2-y3)-(y1-y]]></description><category></category></item><item><title><![CDATA[WPF给button加快捷键]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/39083765</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/39083765</guid><author>startwithdp</author><pubDate>Fri, 05 Sep 2014 18:09:20 +0800</pubDate><description><![CDATA[1.一般做法是：
XAML中：


  x:Key="ClickCommand" Text="Text" />


     Command="{StaticResource ClickCommand}" 
                    Executed="ClickHandler" />


     Key="C" Modifiers="Ctrl" Command="{Stat]]></description><category></category></item><item><title><![CDATA[对C# delegate的理解]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/38898723</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/38898723</guid><author>startwithdp</author><pubDate>Thu, 28 Aug 2014 15:39:39 +0800</pubDate><description><![CDATA[delegate是一种类型，这一点类似于lei]]></description><category></category></item><item><title><![CDATA[向上管理]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/38898663</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/38898663</guid><author>startwithdp</author><pubDate>Thu, 28 Aug 2014 15:23:04 +0800</pubDate><description><![CDATA[了解老板并构建双向关系

当我作为职场新人第一天报道时，就很好奇将要面对的是一位什么样的老板。他是一位斯文的中年人，个子不高，戴副眼镜，书生气十足，一看就是从程序员升上来的管理者。他给我指定了一个Mentor（导师）后，就很少管我，除了周会我们只是在一起吃饭时聊聊无关痛痒的事情——往往是新闻上那些无聊的八卦。给我分配什么任务我就做什么，我从来不挑工作，但也没太多主见。就这样，我唯唯诺诺地度过了]]></description><category></category></item><item><title><![CDATA[点到线段的最短距离]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/38275383</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/38275383</guid><author>startwithdp</author><pubDate>Tue, 29 Jul 2014 18:28:44 +0800</pubDate><description><![CDATA[点到线段最短距离的运算与点到直线的最短距离的运算二者之间存在一定的差别，即求点到线段最短距离时需要考虑参考点在沿线段方向的投影点是否在线段上，若在线段上才可采用点到直线距离公式，如图1所示。

                  


图1 （a）最短距离为点P与其在线段AB上投影C之间的线段PC
                                        （b）最]]></description><category></category></item><item><title><![CDATA[关键字virtual,override,new的使用]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/38037789</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/38037789</guid><author>startwithdp</author><pubDate>Tue, 22 Jul 2014 11:07:02 +0800</pubDate><description><![CDATA[当一个方法被声明为Virtual时，它是一个虚拟方法，直到你使用ClassName variable = new ClassName();声明一个类的实例之前，它都不存在于真实的内存空间中。这个关键字在类的继承中非常常用，用来提供类方法的多态性支持。


    virtual修饰的方法为虚方法，暗示其子类最好有自己的实现。
    override修饰的方法为重写方法，表示覆盖了基类原有]]></description><category></category></item><item><title><![CDATA[C#多态]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/38037301</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/38037301</guid><author>startwithdp</author><pubDate>Tue, 22 Jul 2014 11:06:23 +0800</pubDate><description><![CDATA[在C#中，多态性的定义是：同一操作作用于不同的类的实例，不同的类将进行不同的解释，最后产生不同的执行结果。C#支持两种类型的多态性：]]></description><category></category></item><item><title><![CDATA[C# IEnumerable和IEnumerator的区别，如何实现]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/31781665</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/31781665</guid><author>startwithdp</author><pubDate>Tue, 17 Jun 2014 16:58:06 +0800</pubDate><description><![CDATA[IEnumerable接口和IEnumerator接口是.NET中非常重要的接口，二者有何区别？

    1. 简单来说IEnumerable是一个声明式的接口，声明实现该接口的类就是“可迭代的enumerable”,但并没用说明如何实现迭代器(iterator).其代码实现为：

         public interface IEnumerable
         {
  ]]></description><category></category></item><item><title><![CDATA[LISKOV替换原则与继承]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/31740887</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/31740887</guid><author>startwithdp</author><pubDate>Tue, 17 Jun 2014 10:33:53 +0800</pubDate><description><![CDATA[何时用继承呢？大部分情况我们仅仅为了利用另一个已存在的类的功能而继承，或者几个类有功能近似，或者代码重复，就提取个公用类，然后再继承之。长期以来，我都是这样的理解
。如果从实现上来说，这样是没有问题的，复用了代码，减少了重复。但如果用Liskov原则来审查设计就会发现，这样的实现其实是很欠妥的。是滥用继承的一种。下面我们具体分析。

      Liskov原则要求我们，“任何能用基类的地方]]></description><category></category></item><item><title><![CDATA[基本的SQL语法]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/26502603</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/26502603</guid><author>startwithdp</author><pubDate>Wed, 21 May 2014 19:16:05 +0800</pubDate><description><![CDATA[1.增加字段
     alter table docdsp     add dspcode
char(200)
2.删除字段
     ALTER TABLE table_NAME DROP COLUMN
column_NAME
3.修改字段类型
     ALTER TABLE table_name     ALTER COLUMN
column_name new_data_t]]></description><category></category></item><item><title><![CDATA[解释性语言与编译性语言]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/25740229</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/25740229</guid><author>startwithdp</author><pubDate>Tue, 13 May 2014 21:09:40 +0800</pubDate><description><![CDATA[首先了解下计算机语言的发展,目前共经历四个时代,或许以后会出现5,6代语言
 
机器
汇编
高级
C++、Visual C++、Visual Basic 、Delphi、Java等屏蔽了机器的细节,提高了语言的抽象
结构化(面向对象)
SQL是一个典型的结构化语言
 
虽然语言已经发展到了第四代,但是计算机不能直接理解高级语言，只能直接理解机器语言，所以必须要把其他语言翻译成机器]]></description><category></category></item><item><title><![CDATA[C#关键字-where(泛型类型约束)]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/25636737</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/25636737</guid><author>startwithdp</author><pubDate>Mon, 12 May 2014 16:56:38 +0800</pubDate><description><![CDATA[在定义泛型类时，可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类，则会产生编译时错误。这些限制称为约束。约束是使用 where 上下文关键字指定的。下表列出了六种类型的约束：

约束
说明

T：结构
类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型。有关更多信息，请参见使用可以为 null 的类]]></description><category></category></item><item><title><![CDATA[浅谈partial class的理解]]></title><link>https://blog.youkuaiyun.com/startwithdp/article/details/25220341</link><guid>https://blog.youkuaiyun.com/startwithdp/article/details/25220341</guid><author>startwithdp</author><pubDate>Wed, 07 May 2014 15:53:23 +0800</pubDate><description><![CDATA[浅谈partial class的理解
第一种说法：  partial classes:局部类型  partial类型可以使我们把对某个类的描述写在不同地方，甚至写到两个或多个不同的文件中去。partial信息只对编译器有用，编译器在编译时看到对某个类的描述是“碎”的（partial 的），它会去其他地方收集该类的其他碎片，然后把所有的该类的碎片组合成完整的一个类，再对其编译。所以partial ]]></description><category></category></item></channel></rss>