Micro:bit-模块的类型和流程控制

之前我们介绍了一些Micro:bit的基本情况,并且也实现了一个简单的心跳小程序,这节课我们来看看Micro:bit在线编程网站提供了哪些模块,这些模块都是干什么的,然后通过一个小程序展示它们之间的运行顺序是怎样的。

前导知识-输入与输出

对于编程来说,除了程序本身的算法和实现,最重要的就是输入和输出了,我们可以把程序看作是一个黑盒子,我们给它一个输入,它会给我们一个输出,程序就是把输入转化为输出的过程。因为我们的输入类型不同,输出的形式也不一样,因此有了各式各样的程序。

前导知识-程序的流程与基本概念

对于编程来说,除了程序本身的算法和实现,最重要的就是输入和输出了,我们可以把程序看作是一个黑盒子,我们给它一个输入,它会给我们一个输出,程序就是把输入转化为输出的过程。因为我们的输入类型不同,输出的形式也不一样,因此有了各式各样的程序。

Micro:bit初遇–心跳的感觉

上回我们介绍了Micro:bit的基本情况,硬件参数等,相信大家对micro:bit这块小板子也有了初步的认识,今天我们来看看如何用图形界面编制一个简单的心跳小程序,文章的最后有实际的效果视频。

Micro:bit初识

Micro:bit是由英国BBC公司推出的面向青少年编程教育的微型计算机,别看它身材不大,但麻雀虽小五脏俱全,一块小板子上集成了加速度传感器,磁力传感器,两个可编程按钮,25个单色led,蓝牙等常用传感器设备,而尺寸只有信用卡的一半大小,采用micro usb口供电,可外接电池盒,在底部还有多个环孔连接器,可用于控制外接设备。

解决Macbook Pro下Win10双系统蓝牙鼠标无法连接及卡顿

最近给公司配的macbook装上了双系统,但是蓝牙鼠标在win10下无法配对,在解决了配对问题后,又发现鼠标指针十分卡顿,这里记录一下方法

[C#]dynamic+reflection=像public一样调用private类成员

在项目上写UT时,代码里面有大量的protected属性,需要被mock掉,但是因为是protected,不能被外部赋值,因此找到了用dynamic加反射的形式实现一个包装类,能够像调用public成员一样点吧点吧调用private成员

OOP系列之OO设计七大原则

对于OOP,想必大家都很熟悉,通常我们说的OOP有5大原则,即SOLID,这里我加上了两条也比较重要的迪米特法则和多用组合少用继承,组成了OO设计的七大原则,我们一起来复习一下。

OOP系列之聊聊依赖

依赖,或者用英语更准确,dependency,是程序设计中不同对象或方法之间所必不可少的,我们的代码就是由不同的方法不同的对象相互调用组成的,因此,对于依赖,我们要做到心里有数,依赖是如何产生的,依赖的强弱关系是怎样的。依赖的强弱是指依赖者对被依赖对象的依赖程度,即替换被依赖对象所花费的代价程度如何,依赖程度越强,替换掉被依赖对象的代价就越大,方法越底层,难度越大,灵活性越差。

[C#]单线程递归遍历文件夹

最近在做一些代码分析的小程序,抓出代码里面符合特定规则的文件,把符合特征的代码文件和代码片段抓出来,输出成一个txt文件,方便统计和查找,为日后分析做准备,因为要遍历所有项目文件,所以需要程序依次访问每个文件夹下的所有文件,因为还有子文件夹,因此想到了用递归来遍历,这个实现没有涉及多线程,以后有机会再改成多线程吧,这里记录一下方法,用到了尾递归。

[C#]聊聊.net core的InMemoryCache

这两天在看.net core的in memory cache,这里记录一下用法,主要涉及MemoryCache的Get/Set/Expire/Flush。

[C#]在Mac上安装VsCode+Vim插件

这里总结一下在Mac上安装VsCode和Vim插件时遇到的一些坑,希望能帮助到遇到同样问题的人。

[C#].net 异步编程的前世今生 & async & await

今天我们来聊一聊.net异步编程,.net 4.5为我们提供了两个新的关键字async 和 await,使我们能够借助TAP提供的一系列Async方法像同步编程一样来写异步代码,这篇文章里还会回顾一下之前异步编程的一些模式,比如EAP,APM,让我们体会一下async和await带来的便利。

聊聊三体
聊聊三体

三体世界由一颗行星和三颗质量相近的恒星构成,行星围绕三个恒星做无规则运动,导致没有规律性的气候。上一刻还是适合生存的气候(它们称为恒纪元),或许下一刻就会进入不适合其生存的气候(称为乱纪元),恒纪元与乱纪元会持续多久,什么时候出现都没有规律,以致这颗行星上的文明出现又被毁灭达二百多轮次。三体人虽然能够通过主动脱水让自己干纤维化以度过乱纪元,到恒纪元时再浸泡复活,但是度过期充满了未知的危险,脱水次数也是有限度的。

[C#]代码之坑–编译器不会告诉你的那些事

这些一个个的零散的小点都是在日常工作中总结出来的,似乎没有哪一本编程书会讲这些,所以就总结出来放到这里,要记住你所做的一切决定,都是有代价的,或是性能,或是灵活性,没有最优解,你需要自己去权衡。