17 hawksoft

尚未进行身份认证

目前致力于用互联网+来拆除传统行业内或之间的篱笆!

等级
博文 663
排名 385

读《物理学的困惑》的思考

近几十年(起码50年)来,物理学界并没有什么大的进展,这本书的产生正是在这样的一个环境下,作者是一个物理学家,而且在弦理论耕耘多年,但这本书确实作者对弦理论的质疑,当然后面几个章节是对目前物理界的“腐朽”和“僵化”的批评。弦理论这些年发展的势头很猛,不过我对弦理论的接触比较少,多是道听途说,我了解的弦理论多是这本书贡献的,而这本书是批评弦理论的。因此,对于一个外行来说,我觉得我是没有能力对弦理...

2019-07-14 14:44:39

ToB产品经理不懂技术会有什么问题?

前面讲了,ToB和ToC的产品设计是有非常大的区别的。ToB产品所面临的业务复杂性远远超过ToC产品,这无疑增加了对产品经理的要求。目前很多ToB产品的设计也趋向于ToC方式,将产品的设计和开发分离,好处是降低了对产品设计的开发技术要求,市面上有很多从非计算机专业转过来的产品经理。这种做法也不能全说是坏事,也有积极的一面。但由于产品经理对IT技术的缺乏,也导致了非常多的问题,特别是做平台产品的时候...

2019-07-14 09:20:43

ToB或ToC

ToC强调个人自由,强调体验,是消费型。ToB强调团队协同,天生具有管理性质,属于生产型。虽然现在的产品设计中,两种产品的设计互有借鉴,但这两类产品的设计还是有非常大的区别的,基本的出发点都不同。这也是为什么腾讯总是很难做好企业服务的原因。不是人的能力和品质的问题,是思维方式的问题。目前来看,产品经理偏C的多,这也是很多ToB产品,特别是企业服务类的产品做得不好的根本原因。对于ToB产...

2019-07-11 09:04:18

Spring框架注解式事务的缺陷

事务基于连接(Connection)是基本的,由于Spring框架里,类实例的创建都是框架完成,参与事务的方法之间没有连接的传递,因此要保证事务的执行,就只能采用其它的方法,Spring框架采用的是将一个线程中执行的标有事务注解的数据库操作采用一个连接来达成事务处理的目的,优点是简单,不用程序员操心。但实际上这种事务处理方式有非常大的局限性:1)如果一个线程中有多个不同的事务很难处理;2)...

2019-07-06 18:51:38

为什么大家喜欢用已有框架

利用现有的框架,突破框架做自己的底层确实不容易,这几天经历了不少的坑,看起来还是填平了,但未来的坑还是未知。一套完整的分布式架构框架的基本功能就基本搞完了,还是蛮有成就感。但在这个过程中,也确实感到自己搞框架还是压力非常大,能体会绝大部分的程序员都不敢自己重复造轮子,搞个适合自己项目的框架的原因。底层意味着责任,而用现有的框架出了问题,都可以推到框架上,压力要小很多。而自己弄框架,出了问题,不管是...

2019-07-06 11:52:43

坑中坑:Datasource ,Connection,pooledConnection

昨天使用了DatasourceUtil.getConnection(),结果出现了悲剧,在我的电脑上没问题,在其它同事的电脑上都出现了从连接池获取的连接已经关闭的错误,经过分析,原因就是这个方法优先是获取同一个池子同一个进程的连接,而连接已经被我关闭了。要用这个方法,就必须使用对应的释放方法:DatasourceUtil.releaseConnection.由于我的处理机制,非事务方法不好处理,所...

2019-07-04 08:16:56

Mybatis用Connection进行数据操纵的注意事项

最近做底层遇到了很多坑,记录如下(有些内容来自网络,标记):注意:使用DataSourceUtils.getConnection(dataSource);方式获取连接,而不是dataSource.getConnection()。dataSource.getConnection()会取到非当前线程的连接导致和当前线程的事务中的连接不相同导致事务不生效的问题。mybatis插入语句结合...

2019-07-03 18:29:17

坑爹的mybatis+mysql

因为分布式框架,虽然用了mybatis,但底层进行了比较大的修改,在开发环境下,没问题,发布到测试环境,居然碰到了有些表不自动提交事务(默认的链接都是自动提交事务),但在其它表进行操作后,数据又提交了,大致如下:1)A表插入数据(执行一个插入语句,没有事务,自动提交);当前界面可以看到数据(另外一个查询链接),但在后台数据库无法看到数据;2)B表插入了一条数据,后台可以看到数据,而且A表的...

2019-07-03 18:18:12

DotNet写Java的小坑

用多了DotNet,把代码移植到Java,发现substring的参数不一样,前者是开始和长度,后者是开始和结束,小坑一个。

2019-06-29 12:30:09

Facebook的Libra之死

作为代币,类似QQ币那样的,是没有问题的,但会被监管。如果以此来推断区块链币将取代法币,那就是非常扯淡的事情了。比特币的存在只有两个基本目的:暗网交易和洗钱。华尔街有需求,比特币是可以有一定市场,但要撼动法币,第一个不答应的就是美联储。法币的背后的核心支撑是暴力,Libra如何保证信用?靠共识?这只是乌托邦的想法而已。韭菜很亢奋,而大部分旁氏骗局都是基于乌托邦式想法,放大人类内心那点小欲望。...

2019-06-23 10:17:36

前后端分离开发的利与弊

事物总是多面性的,开发也不例外。现在开发流行前后端分离,分离的好处当然很多:1)后端专注业务及逻辑,前端专注于展示和交互,前后端分离的好处就是专业分工和前端展示可以多样化。耦合度的降低增加了灵活性;2)前后端分离还是比较适合目前的应用方式(SaaS化)的。但前后端分离也有很多不利的地方:1)增加灵活性的同时也增加了复杂性;2)对业务的理解不利,前后端分离增加了系统开发的难度和工...

2019-06-22 07:20:08

5G的影响

跟3G,4G相比,从技术上来说,5G是没有多少革命性突破的,5G和4G相比主要的优势在于:速度、延时和成本。所以对于很多人来说,5G显得并不是很迫切,但对于整个社会来说,这个5G带来的变化却将是巨达的,我们来撸一撸:1)最为直观的影响当然是游戏和视频应用,这个影响大家都能理解,作用看起来也不是那么大,但实际上以后的游戏和电影的形态都会发生改变;2)AR+VR的应用将进入实质性的阶段,AR+VR...

2019-06-09 15:01:26

BIM手记(3) mousemove

viewer.canvas.onmousemove=function(e,a){vartheNode=viewer.impl.hitTest(e.x,e.y,false);//这个函数的作用就是获取鼠标位置的构建id(dbId)if(theNode){//viewer.clearSelection();viewer.toggleSelect(theNod...

2019-03-18 21:19:52

BIM二次开发笔记

模拟框选vartheMap=newMap();for(varx=200;x<600;x=x+3){for(vary=200;y<600;y=y+3){vartheNode=viewer.impl.hitTest(x,y,true);if(theNode){theMap.set(theNo...

2019-03-18 21:18:14

BIM笔记(1)

BIM前端开发,前面用的是Viewer3d.js来进行展示和交互,后端是轻量化引擎处理完成的数据。在autodesk的viewer3d.js,采用的是webgl技术。一个后端模型在前端展示的时候,viewer3d将构件进行了编号nodeId,模型种的每个构建都有一个唯一的nodeId,操作和交互就是以此为主。当然,也可以通过对象树进行操作,基本的数据结构在_models里,但隐藏比较深。Vi...

2019-03-18 21:17:19

Java用字符串做同步对象的注意事项

很多时候用字符串做线程同步变量是非常具有一定优势的,可以动态利用业务数据来进行。但字符串在很多编程语言中的处理都是比较特殊的,因此需要注意,我们认为的字符串相等,可能实际上在内存中是不相等的,这对于java和c#来说尤其如此。字符串是放在堆里面还是栈里面有很大的区别。记住,在Java中用字符串做同步,一定要用如下用法:StringtheSychString=("LOADVALUESXXX...

2019-03-16 00:51:10

用最基本的自然原理来看透这个社会

人类终究是自然的产物,人类的所有活动都受到自然规律的影响:1)能量守恒原理,这其实代表了很难无中生有,很多只是转换,而转换就涉及到效率,这个对于社会中的防骗很有用,当然,对于人类的发明创造更有用。2)热力学定律,熵增原理,宇宙的熵是增的,温度是整体下降的,直白的说,宇宙的整体是趋于无序化的。这个规律对人类影响是非常大的,因为生命过程就是一个不断从外界获取物质和能量来维持自身有序的过程。浅显...

2019-03-08 13:07:53

BIM开发手记

因为一个朋友的项目,他们需要进行BIM开发,后端使用了别人的轻量化引擎,前端使用autodesk的viewer3d来进行展示和交互,但他们的前端在和模型进行交互的时候遇到了操作上的困难。由于很多交互搞不定,只好请教外援。我处于码农的好奇,探究了一下BIM的这种交互。基于直觉,一个基于webgl和js的交互,其实和模型没有多大的关系,这里比较难,还是开发人员本身的水平和思路问题。其实对于图像的处...

2019-03-06 07:37:03

应用集成和微服务

系统庞大的时候,放在一起开发也好,部署也好,肯定是会有问题的,所以,就出现了子系统,后来又出现了SOA,所谓的面向服务。但到现在,由于网络带宽的提升,BS架构很流行,当然,另外一个方面,现在系统面临的吞吐也大了很多。到现在流行微服务。这种演变的本质就是系统功能太大时,需要拆分,这里面,实际上还有一个因素就是一个系统功能部署在一台服务器上所面临的计算能力问题,这种情况下需要进行分布式处理。分布式处理...

2019-03-01 14:51:12

Java开发框架基本完成

前面的文章说了,准备搞一个java的快速开发框架,主要的架构是:springboot+mybatis,但实际上,除了注解和jdbcTemplate之外,基本抛弃了Mybatis的功能,当然为了兼容,原来的模式也可以用。底层是基于mybatis的一个简单ORM系统,这个已经在项目中用了,之所以不用mybatis的那套,主要目的一时方便,二是为了后面扩展,为做类hadoop那种数据访问模式打个基础,便...

2019-02-27 23:55:43
CSDN身份
  • 博客专家
奖章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!