摘要:〇、接口、泛型、委托、事件1.泛型和协变逆变2.委托和事件3.c#基础4.c#4.0协变逆变的理解一、linq等数据处理1.数据查询2.数组3.linq 总结二、并行程序1.并行性能简单分析三、编码技巧1.考虑用类型代替参数检查2.c#没有指针导致的性能问题研究一二3.匿名函数递归4.代码设计的几个基础技巧5.浮点数比较6.如何管好.net的内存四、理论1.程序的信息学意义2.思考问题要先注意主体3.论设计,需求和编码三者的关系4.程序的分解过程5.为什么0.1无法被二进制小数精确表示?6.0/0=2?7.结构和类8.CTS类型系统9.我设想的接口10.善用不同语言描述问题11.排列组合学习要 阅读全文
posted @ 2013-04-13 12:28 诺贝尔 阅读 (490) 评论 (0) 编辑
摘要:收集生活中的一些感言:一、人生如梦,贵在自省二、把重要的事情先做好三、不选对的,三思而行四、驱动力五、当我们为生活疲于奔命时,生活已经离我们而去。—— 约翰·列侬六、郁闷的时候干脆休息七、努力学习不如努力休息八、该对谁感恩九、……(陆续增加中) 阅读全文
posted @ 2010-06-14 16:15 诺贝尔 阅读 (516) 评论 (2) 编辑
摘要:[TOC] github SSH配置 前言 github有两种更新的渠道,一种是https的,一种是ssh的,其中https每次都要输入密码,非常烦。所以,最好是配置好ssh。 ssh 配置 ssh是什么?他是一种远程登录服务,登录后连接到服务器的终端上,然后就可以为所欲为了。git服务器也支持ss 阅读全文
posted @ 2019-03-18 16:44 诺贝尔 阅读 (336) 评论 (0) 编辑
摘要:[TOC] github 进阶说明 前言 我们可以什么都不管,照搬命令来完成我们大部分git工作,但是如果想要进一步,就要深入理解git的实现原理,和底层机制。 三个目录树 1. HEAD 仓库指针 2. index file 暂存区 3. Working Directory 工作目录 默认情况,头 阅读全文
posted @ 2019-03-18 10:36 诺贝尔 阅读 (179) 评论 (0) 编辑
摘要:[TOC] github使用说明 前言 什么是github,github能做什么?它是一个代码仓库,但是你可以把它当做一个远程硬盘(云盘、网盘)。和一般网盘的区别在于,它通过一个叫做git的软件进行同步,上传或下载操作,这个软件有非常强大的同步功能,甚至可以建立不同的存储分支,让同步的文件有多个不同 阅读全文
posted @ 2019-03-15 15:24 诺贝尔 阅读 (73) 评论 (0) 编辑
摘要:[TOC] vue.js 学习笔记3——TypeScript 工具 typescript 通过tsconfig.json 文件配置。 可通过gulp 等工具管理项目自动化编译和运行。 基础类型 boolean 布尔、number 数字、string 字符串、enum 枚举、any 任意、void 空 阅读全文
posted @ 2019-03-06 16:12 诺贝尔 阅读 (528) 评论 (0) 编辑
摘要:装系统,尤其是双系统,总是无法绕过引导的坑。linux的grub是非常复杂的引导系统,学习它非常累。而windows又不能引导linux。你可能会想,怎么就没有一种简单的引导方式,就好像引导光盘,引导u盘那样,插上去就能用呢?因为传统的mbr引导设计得很小气,所以多个系统都拼命争夺那个小小的引导区域,而自己却又不懂得引导对方,所以就相互伤害,相互覆盖引导。但是,uefi横空出世,比较好的解决了这个... 阅读全文
posted @ 2019-03-03 16:05 诺贝尔 阅读 (721) 评论 (0) 编辑
摘要:最近对家里面那5,6个路由器下手了。路由列表:小米mini 2台。 优酷路由宝l1,tp wdr3320,tp wr840n, 友华wr1200js,小米路由r1n步骤:1. 想办法开启ssh2. 复制breed 进去路由器3. 刷breed。这是一个引导系统。4. 用breed 刷rom。相关工具:1.breed web 一套自动化安装breed的工具2.winscp 手工用ssh复制文件相关... 阅读全文
posted @ 2019-03-02 15:27 诺贝尔 阅读 (125) 评论 (0) 编辑
摘要:[TOC] deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息,折腾不止。 更换成lxde桌面 deepin桌面其实还不错,就是感觉有点卡通化,没什么之感,很单薄,而且性能感觉不太好的样子(很难说清楚)。据说lxde是一个性能很高的桌面环境,所以我就尝试了一下。 2019 阅读全文
posted @ 2019-02-19 16:56 诺贝尔 阅读 (770) 评论 (0) 编辑
摘要:[TOC] vue.js 学习笔记 前言 好! MVVM 和 MVC 架构 MVVM:M 是模型(数据),V是视图(界面),VM是V和M的双向协调者。 MVC:M 是模型,V是视图,C是控制器(业务) vue使用了MVVM架构来设计框架。架构是说逻辑分层,框架是指具体的实现。很明显VM的实现是这个框 阅读全文
posted @ 2019-02-17 15:51 诺贝尔 阅读 (322) 评论 (0) 编辑
摘要:[TOC] deepin linux 学习笔记(二)——文本编辑器 前言 今天来谈一下linux的编辑器,特别是命令行下面的文本编辑器。在视窗环境下有很多可以用,也很容易操作的文本编辑器,但是linux经常会需要在命令行下面编辑文本,比如一些配置文件的修改,这就要求要熟练相关的工具。 老实说,新手进 阅读全文
posted @ 2019-01-30 17:13 诺贝尔 阅读 (957) 评论 (0) 编辑
摘要:[TOC] deepin linux学习笔记 前言 linux给一般用户的感觉就是黑客使用的系统。但是国产deepin在家用市场作得还不错,我现在使用下来,写博客,看B站,查找资料貌似没有什么障碍。这个deepin创新的地方是自带了QQ和微信,解决了最大的痛点。 在我使用过程中,发现chrome浏览 阅读全文
posted @ 2019-01-29 19:20 诺贝尔 阅读 (224) 评论 (0) 编辑
摘要:[TOC] 用markdown写博客 前言 博客园支持用markdown语法写博客。markdown是什么东西?他是一套中间格式化文本的语法,用他写文章在支持这个语法的排版系统里面,会生成对应的排版格式。因为这套中间语言,那么我们就不用学习各种平台独有的排版方式,节省时间。当然,最重要的是markd 阅读全文
posted @ 2019-01-28 16:45 诺贝尔 阅读 (76) 评论 (2) 编辑
摘要:h1 h2 h3 h4 [TOC] xxx[^jiao] 你们好,我不知道在什么时候能够 ======= 在这里 不知道什么时候开始 printf('hello world'); //这不是谁的错。 // int i = 100; myu 'sfsj sfas22222 sfas sfas "博客园 阅读全文
posted @ 2019-01-28 13:56 诺贝尔 阅读 (37) 评论 (0) 编辑
摘要:虽然我对路由器没什么兴趣,但是紧跟潮流还是有必要的,现在因为网络闭关锁国政策,很多人都想自己搭配一台私人的服务器,不想被商业公司左右数据安全。我感觉这个是一个商机,建议大家可以朝这个方向发展。这里最关键的一步,其实就是私人智能路由器,俗称软路由的搭建。这里我记录个人学习LEDE软路由的经验,和大家分享。国内社区: www.koolshare.cn作为新手,不太懂这个社区和lede是什么关系,但是国... 阅读全文
posted @ 2018-10-31 11:40 诺贝尔 阅读 (4869) 评论 (0) 编辑
摘要:linux的资料比较零散,经常是好不容易查到了,然后几秒钟就忘了,然后就怎么都找不到了。看来学这个不能偷懒,必须要随时随地把资料给记录下来。这就是这篇博文的意义。Xfce 一个图形桌面环境。debian 一个linux发行版。引导提示符,按tab编辑命令行:desktop=xfceX Window 最小安装:aptitude install xorg安装xfce:aptitude install ... 阅读全文
posted @ 2018-10-31 09:37 诺贝尔 阅读 (127) 评论 (0) 编辑
摘要:所以说,英文真是个好东西,很多资料都只有英文版本,要是不懂英文,甚至你不知道这个资料的存在,更别提用蹩脚的翻译软件去翻译了。wsl 的资料:https://docs.microsoft.com/zh-cn/windows/wsl/interop这里面提到可以用wsl 命令,在windows中使用linux系统里面的程序。wsl 用的命令是运行在windows下面的,比如ls 列出的目录,它并不是l... 阅读全文
posted @ 2018-09-27 18:22 诺贝尔 阅读 (95) 评论 (0) 编辑
摘要:今天一早起床,打开debian,居然出现 错误: 0x80070040 。不知道是怎么回事,网上有篇文章详细介绍了windows linux子系统,打算参考来做做:https://www.jianshu.com/p/bc38ed12da1d 。非常有技术的一篇文章。用wslconfig /u Debian删了系统,输入debian重新安装。过程倒是很简单快捷,就是想不到这个子系统那么容易完蛋。既然... 阅读全文
posted @ 2018-09-26 22:53 诺贝尔 阅读 (125) 评论 (0) 编辑
摘要:最近买了部新电脑,海尔n4105的一体机,好像叫s7。 放在房间里面,看看资料。因为性能孱弱,所以不敢安装太强大的软件,然后又有一颗折腾的心。所以尝试了win10自带的linux子系统。然后在应用商店搜索linux推荐debian 系统。安装了之后这个linux就会成为win10里面一个命令行应用,实际运行是这样的:其他感觉应该会和debian原始版差不多,当然没有图形界面,还有功能也是受限的。为... 阅读全文
posted @ 2018-09-26 00:38 诺贝尔 阅读 (246) 评论 (0) 编辑
摘要:会计在国家大事上,用来做税收工具。但是人们其实也可以用来做复杂的记账工具的。因为太复杂了,所以要辛苦学习一下。以下是我学习的心得体会,也许是错的,本人不是专业会计,不负责任。记账要满足公式:借和贷,量相等资产=负债+权益利润=收入-支出(费用、成本)2式和3式用于不同的情况,2式用于静态分析,3式用于动态分析。啥子意思哦?比如初始条件是静态平衡的,通过2式描述。期间有各种经济业务,那就会产生新的收... 阅读全文
posted @ 2018-09-19 15:05 诺贝尔 阅读 (232) 评论 (0) 编辑
摘要:本来想搞一个nas系统,结果上来linux的贼船。本来是看上了deepin深度linux,结果看到排名第一的manjaro 就忍不住手。通过hyper-v虚拟机安装,发现这个所谓的第一不知道第一在哪里,效率不是很高,源又少,我想要的vscode莫名其妙的没有,网上的资料很多事落后的。pacman包管理器,yaourt命令,然后是yay,都没有vscode。没办法,换成debian linux,这个... 阅读全文
posted @ 2018-09-17 16:57 诺贝尔 阅读 (127) 评论 (0) 编辑
摘要:AOT是预编译成本地程序,避免JIT动态编译存在的性能问题。netcore一个吸引人的项目,就是基于coreRt 运行时的本地编译技术,下面我来替大家尝试一下它究竟表现如何。 https://dotnet.myget.org/F/dotnet-core/api/v3/index.json Exe netcoreapp2.0 首先要在项目文件添加相关的包源,也... 阅读全文
posted @ 2018-08-23 16:54 诺贝尔 阅读 (186) 评论 (0) 编辑
摘要:dotnet core 有一个转变,他用dll格式来代替exe作为通用执行格式,然后要命令行dotnet yourApp.dll 来运行程序。为了提高逼格,双击可以运行,可以采用以下方案:方案一 用bat文件可以编写一个bat来执行,如mylib.bat文件内容:@dotnet mylib.dll@pause方案二 发布指定运行环境用命令行:dotnet publish -f netcoreapp... 阅读全文
posted @ 2018-08-23 12:32 诺贝尔 阅读 (1098) 评论 (2) 编辑
摘要:win10这个奇葩,共享文件夹变得非常困难。其他不说,关键点在于获取虚拟机的 ip,我的虚拟机系统是winxp,虚拟机本身可以上网。拿到ip,用这个ip还是无法访问\\ip 的共享文件夹,因为win10需要安装一个组件:SMB 1.0 的组件,安装完大概就能连同了。不过网络邻居还是无法发现的(不知道怎么设置),要手写路径登陆,然后弹出用户登录框,输入guest,密码留空,就行了。如果你还是无法连通... 阅读全文
posted @ 2018-08-22 18:25 诺贝尔 阅读 (3646) 评论 (0) 编辑
摘要:All在项目文件里面,这一行代表引用包,可是有三个子项目,需要说一下:IncludeAssetsExcludeAssetsPrivateAssets这三个是什么意思?中文翻译,Assets是资产,反正无法理解说的是什么鬼。一开始我以为它可以定制引用库里面那个类,搞了好久才发觉这是一个部署选项。可以取值:compile 影响是否编译到当前项目runtime 影响到运行时可不可以使用con... 阅读全文
posted @ 2018-08-22 12:47 诺贝尔 阅读 (111) 评论 (0) 编辑
摘要:vscode是一个简单的开发工具,启动快,速度快。但是当前1.26版本对多项目支持好像有点问题。命令行有个dotnet sln,但是只能添加新项目,却没有创建解决方案的命令。如果强行添加他会提示没有解决方案文件,莫名其妙!当然可以添加文件夹的方式,在一个项目中看到另一个项目的文件结构,但是这无法等同于解决方案。另外,库文件的调试感觉很麻烦,因为库不能运行,不知道有什么好的方案。库打包给另一个项目用... 阅读全文
posted @ 2018-08-22 11:11 诺贝尔 阅读 (567) 评论 (0) 编辑
摘要:突然想起delegate委托是支持+= 和-=操作的,然后研究一下究竟这个是怎么做到的,好模仿一下。一开始以为是+=的运算符重载,但是在类库参考中并没有这个运算符重载,只有!= 和==运算符重载。有点纳闷,最终发现,原来+=这些直接就是语法层面的实现,只是针对delegate才有的福利,所以也不存在模仿的可能性了。顺便就总结一下event事件和delegate委托的区别。这个区别有点类似字段和属性... 阅读全文
posted @ 2018-08-22 10:43 诺贝尔 阅读 (384) 评论 (3) 编辑
摘要:之前研究过c#的async和await关键字,幕后干了什么,但是不知道为什么找不到相关资料了。现在重新研究一遍,顺便记录下来,方便以后查阅。基础知识async 关键字标注一个方法,该方法返回值是一个Task、或者Task、void、包含GetAwaiter方法的类型。该方法通常包含一个await表达式。该表达式标注一个点,将被某个异步方法回跳到该点。并且,当前函数执行到该点,将立刻返回控制权给调用... 阅读全文
posted @ 2018-08-19 16:19 诺贝尔 阅读 (550) 评论 (1) 编辑
摘要:EF Core (EntityFramework Core)是实体关系映射(O/RM)数据库访问框架。这个模式的好处就是让开发人员可以用对象模型来操作数据库,这是一种对开发人员较为友好的方式。O/RM牛逼在哪?非对象模型操作数据库,就要直接用sql语言来做大量的CURD操作(Creat 创建;update 更新;read 读取;delete 删除)。这些操作编写繁琐又容易出错,目的却只是为了操作数... 阅读全文
posted @ 2018-05-02 04:54 诺贝尔 阅读 (1244) 评论 (1) 编辑
摘要:.NET Core 基于Nuget包。它是一个.nupkg后缀的zip文件。工具dotnet 工具vs2017 的程序包管理控台这两个工具都可以用命令行来下载安装,更新,上传包(上传要先在网站注册账号);也可以用vs里面的UI工具管理。项目文件控制包项目文件(.csproj后缀)是一个xml文件,描述了引用包的关系,很多时候需要手工编辑这个来达到高级目标。 用命令do... 阅读全文
posted @ 2018-04-29 10:57 诺贝尔 阅读 (215) 评论 (0) 编辑
摘要:.Net Core 是由NuGet包(package)组成的平台。一起使用的多个包的集合:元包(Metapackage)package 包 (对应以前的程序集概念)Framework 框架assembly 程序集重要的NuGet包:System.Runtime 基础包System.Collections 泛型集合System.Net.Http 用于HTTP网络通信System.IO.FileSys... 阅读全文
posted @ 2018-04-26 18:45 诺贝尔 阅读 (282) 评论 (0) 编辑
摘要:重点内容:open live writer http://openlivewriter.org语法高亮插件 http://www.cnblogs.com/memento/p/5995173.html为何要推荐这套工具:说一下这个工具的好处,第一个是截图插图很方便,但是要设置一下保存的方式,如果用网页端就很麻烦。语法高亮有一点用,但是贴大片的代码其实并不是个好的习惯。以上这些,我只要截图,一粘贴,其... 阅读全文
posted @ 2018-03-01 12:16 诺贝尔 阅读 (72) 评论 (0) 编辑
摘要:interface IState { string Name { get; set; } //后件处理 IList Nexts { get; set; } Func Selector { get; set; } } class State : IState { pu... 阅读全文
posted @ 2017-02-02 20:45 诺贝尔 阅读 (501) 评论 (0) 编辑
摘要:泛型不同参数类型生成的对象是相互独立的。 //如 Tuple ts; Tuple to; //ts to 是两个类型的对象。 很多时候,我们希望实现 to = ts 这种操作,为什么?因为看上去它应该如此。 为了达到这个目的,就要解决“泛型参数转换的问题”,这个问题的知识点是in out 泛型变体。老实说,这个问题本身不困难,只是非常不直观,很容易让人忘记。 首先一点,为了实现to = ts,实际... 阅读全文
posted @ 2017-02-02 16:18 诺贝尔 阅读 (676) 评论 (0) 编辑
摘要:lambda 传递ref参数有个语法bug,必须要显式书写参数类型。 //如 delegate bool FuncType(ref int num); FuncType func1; func1 = num => true; //错 func1 = (ref num) => true;//错 func1 = (ref int num) => true;//ok //并且,当一个参数书写类型,其... 阅读全文
posted @ 2017-02-02 13:54 诺贝尔 阅读 (682) 评论 (0) 编辑
摘要:你好吗? using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions... 阅读全文
posted @ 2017-01-31 17:40 诺贝尔 阅读 (85) 评论 (0) 编辑
摘要:微信公众号作为一个平台级别的产品,对商业应用来说,有很大的吸引力。如何让公众号更好的吸粉?靠内容不是一般小商户可以做到的,那是网红自媒体的强项。一般商户要怎么突围?那就是提供实用,有意义的功能给粉丝。 而微信公众号自身功能是非常匮乏的,没有什么提供,连客服功能都几乎没有,所以这些那些的,就需要开发人 阅读全文
posted @ 2017-01-31 16:48 诺贝尔 阅读 (539) 评论 (1) 编辑
摘要:不知不觉,c#已经诞生n年了,人生有几个十年?c#就浪费了整整一个十年。 这十年里面,电脑发展缓慢,而服务端和手机发展迅速,这是一个移动和后端化的十年,而这个方向,正正是c#没有关注到的,c#把注意力放在了前端,放在了电脑,虽然微软也想弄手机系统,但是失败了,为什么会失败?我也搞不清楚,总之就是失败 阅读全文
posted @ 2016-09-28 22:58 诺贝尔 阅读 (175) 评论 (0) 编辑
摘要:safehandle 是一种析构机制,她和析构函数有什么分别。 首先要理解析构函数。析构函数在.net中是没有顺序的,因此你不能假定另一个对象的析构函数在你之后运行,哪怕它是你的成员!如果你的成员也有析构函数,那么你能做什么,什么不应该做? 第一,在析构函数运行时,你不应该假设它没清理资源,而去试图 阅读全文
posted @ 2016-02-15 14:03 诺贝尔 阅读 (780) 评论 (0) 编辑
摘要:RCW是.net 对com的包装,比如office就是通过RCW来被.net调用的。可以百度:office pia 了解更多信息。 RCW 是一个.net类。 1.关闭线程对rcw的自动清理 System.Threading.Thread.CurrentThread.DisableComObject 阅读全文
posted @ 2016-02-15 13:25 诺贝尔 阅读 (347) 评论 (0) 编辑
摘要:有很多人有个盲点,就是只看到结果,没有看到过程,更没有看到前提。要完整的看问题,就要细心的把前提条件给写出来。这个很重要。如快速排序的效率是 n* log2(n),前提条件是什么,是这个排序的内容是不限定的,平凡的。而现实中我们遇到很多问题,都是特殊的,因而可以有优化的余地。 阅读全文
posted @ 2015-10-19 15:43 诺贝尔 阅读 (102) 评论 (0) 编辑
摘要:WCF是.NET提供的具备高度灵活性的通信管理框架。 wcf使用OData(开放式数据协议)创建数据服务,将数据通过URI公开,允许使用REST(具象状态传输)来访问及更改数据,即标准HTTP动词GET、PUT、POST和DELETE操作。OData定义了Atom、JSON、XML格式等发布协议。 〇、概述 1.定义数据模型 1.1 ADO.NET 实体框架 1.2 基于CLR对... 阅读全文
posted @ 2014-12-10 14:54 诺贝尔 阅读 (853) 评论 (0) 编辑