草庐IT

读书区

全部标签

吴军《浪潮之巅》阅读随笔(一)

​ 大概用了半个月的时间,中间断断续续的吧,在今天读完了吴军老师《浪潮之巅》上册的内容。这本书带给我的感触很多,下面我简单的做个记录和大家分享。​ 从整体上看,这本书着眼于硅谷的发展,比较细致地介绍了硅谷一些知名IT企业的兴衰起伏。给我的感觉像是给每个企业写了一个传记,这貌似是一本讲述硅谷科技史的书。但是往深了去想,它又带给我很多除了历史知识之外的收获。​ 题外话:我为什么会读到这本书?​ 这应该是两年前的事了,我清楚地记得有一节课,系主任无意中提到了这本书的名字,而且大概提了一下书的内容。我本身就对历史比较感兴趣,这本书又在历史的基础上和我的专业做了融合,让我印象深刻。所以我记住了这

ipa上传AppStore

将ipa提交到AppStore需要Mac电脑操作,现在大部分的程序员都是使用混合开发平台windows系统的电脑,自己装虚拟机过程又繁琐。使用此工具只需要网页上点两下帮你完成这些鸡毛蒜皮事,让你有更多的时间花在改bug上1.打开苹果开发者账户中心获取App专用密码,地址https://appleid.apple.com/zh_CN​2.点击App专用密码​3.点击添加一条记录,获取上传的专用密码​​​4.配置到工具中接下来就可以上传ipa文件提交到AppStore中了,具体上架流程需要自己操作,有问题评论留言互相交流学习。​ 

关于生命的本质 复制

生命的本质就是复制。那么,生命1.0的生命(单细胞生命),是选择性复制,比如,下一代,就是单纯的复制一下自己。如果,当前自己产生了变异,那变异是怎么来的,选择当自己某方面,强,或者不强,去遗传给下一代。这样,下一代就能更适应环境,所以,复制的时候,不仅复制了下一次需要的各种数据,基因链(比如,要长成什么样子,有什么样的方式,获取尽量持久的生命)生命2.0的生命(多细胞生命),它经历了很久,所以,复制给下一代的是学习的方法和足够强大和灵活的身体基因,简而言之就是,软件部分,只提供的学习能力部分,硬件,提供了最完善的各种功能。然后,让你自己学习和突破。基因链(硬件部分基本是固定的,细节选择性复制,

Java面试知识点总结(一)

基础篇一、什么是JavaJava是一门面向对象的高级编程语言,不仅吸收了C++语言的各种优点,比如继承了C++语言面向对象的技术核心。还摒弃了C++里难以理解的多继承、指针等概念,,同时也增加了垃圾回收机制,释放掉不被使用的内存空间,解决了管理内存空间的烦恼。因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。二、Java的特点有哪些Java语言是一种分布式的面向对象语言,具有面向对象、平台无关性、简单性、解释执行、多线程、安全性等很多特点。下面针对这些特点进行逐一介绍。面向对象Java

SpringCloud知识点整理

一、SpringCloud如何实现服务的注册?首先创建一个maven主工程。创建2个model工程:一个model工程作为服务注册中心,即EurekaServer,另一个作为EurekaClient。启动一个服务注册中心,只需要一个注解@EnableEurekaServer,这个注解需要在springboot工程的启动application类上加eureka是一个高可用的组件,它没有后端缓存,每一个实例注册之后需要向注册中心发送心跳(因此可以在内存中完成),在默认情况下erurekaserver也是一个eurekaclient,必须要指定一个server。eurekaserver是有界面的,启

QT官方社区及版本说明

Qt版本说明版本分类Qt商业版:提供给商业软件开发。它们提供传统商业软件发行版并且提供在协议有效期内的免费升级和技术支持服务。Qt开源版:提供了和商业版本同样的功能。它是免费的,使用开源版需要了解其采用的各种开源协议。版本说明2009年12月1日,诺基亚发布了Qt4.6。2013年7月3日,Qt5.1正式版发布了,这是Qt5.0发布后经过6个月的开发而测试的新版本。2014年4月,在QtCreator3.1Beta面世一个多月之后,终于迎来了其正式版。全新的QtCreator3.1.0主要包括Bug修复与系统改进,同时,还添加了一些新的功能特性。2019年7月,Qt5.13版本发布,QtCre

描述性统计

Part2描述性统计一、直方图直方图是用面积而不是用高度来表示数,所以其不同于条形图左边的刻度表示该块每单位所占总面积的百分比,可以称其为密度尺度。例如以每50元为一个单位,200-400就有四个单位。每一块所拥有的单位数\(\times\)左边每单位所占百分数=该块所占总百分比直方图的总面积=总单位数\(\times\)每单位对应密度尺度=1直方图的绘制是根据百分表来绘制的,即统计的变量的每个子区间内的实例占总实例的百分比数。在绘制时需要注意边界处理(终点约定):即位于子区间边界的值该划分到哪个子区间中。直方图的高度表示什么呢?高度表示拥挤程度(单位区间的密度),也就是堆积在该区间的实例数小

Java案例——生产者与消费者模式

需求:某小区单元定制牛奶,送奶人员会将牛奶放入奶箱,该奶箱共能存放30瓶牛奶,居民从奶箱中取奶。请用程序实现这一过程分析:1.创建奶箱类:定义一个成员变量,表示是奶箱中的第几瓶奶,提供存放牛奶和取出牛奶的方法2.创建生产厂家类:实现Runable接口,重写run方法,调用存放牛奶的方法3.创建居民类:实现Runable接口,重写run方法,调用取出牛奶的方法4.创建测试类:1.创建奶箱对象2.创建生产厂家对象,并将奶箱对象作为构造方法参数传递,调用存储牛奶的方法3.创建居民对象,并将奶箱对象作为构造方法参数传递,调用取出牛奶的方法4.创建两个线程,分别把生产厂家对象、居民对象作为构造方法参数传

Java基础——多线程(Lock锁)

一、Lock锁虽然我们可以理解同步代码块和同步方法的锁对象问题,但是我们并没有直接看到在哪里上了锁,在哪里释放了锁,为了更清晰的表达如何加锁和释放锁,JDK5以后提供了一个新的锁对象LockLock实现提供比使用synchronized方法和语句更广泛的锁定操作二、Lock中提供了获得锁和释放锁的方法1.voidlock():获得锁2.voidunlock();释放锁Lock由于是接口,不能直接实例化,这里采用它的实现类ReentrantLock来实例化三、ReentrantLock的构造方法ReentrantLock():创建一个ReentrantLock的实例例如:之前的卖票案例就可以这样

Java基础——多线程之线程安全的类

线程安全的类StringBuffer1.线程安全,可变的字符序列2.从jDK5开始,被StringBuilder替代。通常应该使用Stringbuilder类,因为它支持所有相同的操作,但是它更快,因为它不执行同步Vector1.从Java2平台v1.2起,该类改进了List接口,使其成为JavaCollectionsFramework的成员。与新的集合实现不同,Vector被同步,如果不需要线程安全的实现,建议使用ArrayList代替Vector,但多线程也不会用Vector,它被一个方法代替了//staticListsynchronizedList(Listlist)//返回由指定列表支