`
sharong
  • 浏览: 485846 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
D1667ae2-8cfc-3b68-ac7c-5e282789fa4a
论开源
浏览量:8484
7eb53364-fe48-371c-9623-887640be0185
Spring-data-j...
浏览量:12780
社区版块
存档分类
最新评论
文章列表
3.从公司企业的高度来看开源 首先需要承认,从人类发展史上来说,代码开源确实是极大的推进了社会科技水平的发展,有着积极的进步的意义。但是,从商业公司的高度上来讲,开源还是不开源,公司都会权衡各种利弊,不是做活雷锋的。商业公司开源的大多是基础设施,其目的,一个是让更多的人参与到开发中来,帮助提高开发速度与软件质量,另一个是作为一种低价倾销手段,让这种基础设施霸占市场。商业公司由自己的雇员主导开源软件的开发,通过不断更新和上层应用来避免对手分支做大做强,靠开源扩展的市场份额在上层应用和服务上获利。 开源对商业公司来说,是一种生态,一种商业模式,软件背后的运营和过程管理这些事情,远比源码重要得多。公司 ...
接下来第二篇,我们从国家层面来审视一下开源运动。 2.开源运动的国家目标 据考证,开源运动的根源是美国嬉皮士运动,也就是当年一帮蓄发吸大麻天天高喊共产主义口号的美国愤青。结果开源社区真的实现了各尽所能不计报酬。。。用Linus的话说,开源是种回归,因为研究活动本来就是开放的,后来有人为了商业利益封闭了,现在有人重新把一些东西开放了。 多种迹象表明,早期开源的主力是西欧和北欧,这些地方的政府早就看到了美帝封锁各项软件技术这一点,很早就开始对开源进行财政上的支持,甚至会买些商用软件来开源。如果没有开源,美帝软件的license费用还高得吓人。 事实上,直到今天,美帝对本国大量世界领先的软硬件技术 ...
笔者从事软件行业已15年左右,编码也有10年以上经验。长期以来,就我所知,基本是从C/C++,Java的生态环境开始,由国外一堆极具gongchan主义情怀的理想主义者引领,一直在提倡软件开源的思想,及至最近十年,几乎ruby,scala,c ...
近日拜读了1号店CTO韩军编著的《玩转电商系统》,还没看完已经收获良多。原来一整套的电商系统如此之复杂庞大,想把电商做大做好,需要在技术层面上下非常大的功夫。 首先前端各种商品的展示页面,需要能支撑住高并发访问,以及可能需要两阶段事务处理的下单,订单系统。注意,订单系统在后台有一个潜在的功能,是对每一个订单进行算法分析计算,查找到一个配货送货的最优算法,以尽量降低网站供应链成本。 接下来,前端还需要一个比价调价模块,可以方便快速的,近乎自动化方式的对网站上的所有分类商品进行适时调价,优惠促销等。 知己知彼,方能百战不殆。为了和同行竞争,电商网站必须配备爬虫模块,经常性的,神不知鬼不觉的去同行网 ...
在编码时,两个Enum实例,直接用==就可以比较它们的值了,而不是比较这两个Object的地址。这显然和通常的Object不一样。而且,在JDK7之后,枚举还能用在switch-case开关语句中。 Enum不是primitive类型,却可以用==比较,这是为什么呢?Enum本身可以是多实例的,关键在于,它的每个值对应唯一的Object,因此,它有几个值,就生成几个实例。所有相关的变量都是代表这几个实例的,自然要么==,要么!=,比较值和比较地址是一样的。 看下面的例程: public enum AA{ aa; public static void main(Stri ...
很久以前(4,5年前)当核心码农,只需保质保量完成既定任务。技术选型开会的时候随便yy,反正最后拍板背书的人不是我。完成特定的任务,想算法,做优化,实实在在的产出,很有成就感。 而最近这几年,开始渐渐提升自己 ...
今天在eclipse mars中导入一个外部项目,在编译时出现了下面的错误: Access restriction: The type 'BASE64Encoder' is not API (restriction on required library 'C:\Program Files\Java\jre1.8.0_20\lib\rt.jar') 出现这个错误,是因为调用了Eclipse或MyEclipse自带的jre运行库,访问“rt.jar”的会出现“访问限制” 解决方法有两种: 1.不调用Eclipse等集成环境自带的jre,替换成自己安装的JDK就可以了。 如下图: 2.Ecli ...
北京时间昨晚(2015-12-07)22点左右,mysql开发团队发布了最新的5.7.10版本,正好我这里也需要安装mysql,于是开始动作。 我的系统环境是centos7,64位系统,所以在http://dev.mysql.com/downloads/mysql/下载页面,可以选择Linux - Generic和Red Hat Enterprise Linux / Oracle Linux两个类别中的安装包。另外,还可以选择yum方式安装。下面逐一对安装时出现的各种状况进行说明。 1.首先来看选择Linux - Generic下载Linux Using Generic Binaries的ta ...
当前很多应用已经开始将响应返回为json串,所以基于springframework框架开发的服务端程序,让响应返回json字符串成为了一种常用手段。 这里介绍一下如何在spring-MVC框架下方便快捷的返回json字符串。 首先,需要在controller类的方法名头上加@ReponseBody注解,但是只增加这个注解是不够的,在使用httpclient4.5.x模拟post请求时,出现http status 406的错误: 406 Not Acceptable 指定的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容(HTTP 1.1新) 如果采用Spring- ...
HttpClient 3.x,4.x都提供http连接池管理器,当使用了请求连接池管理器(比如PoolingHttpClientConnectionManager)后,HttpClient就可以同时执行多个线程的请求了。 hc3.x和4.x的早期版本,提供了PoolingClientConnectionManager,DefaultHttpClient等类来实现http连接池,但这些类在4.3.x版本之后大部分就已经过时,本文使用4.3.x提供的最新的PoolingHttpClientConnectionManager等类进行http连接池的实现. 废话不多说,下面是全部代码: publi ...
近期因为项目需要,调研了myBatis 3.x的使用,当然,顺便也就研究了一下使用Generator来通过逆向工程生成pojo,mapper等文件。使用这个工具之前,要先下载相关的jar包,我使用的是最新的mybatis-generator-core-1.3.2.jar。 下面将generatorConf ...
2015年9月3日晚上,全国球迷又在极度憋屈中看完了中港较量,国足在全场占优的情况下,对港足毫无办法,最后以0:0收场。依我看,这场比赛问题不在国足队员,错误全在教练。 国足对香港的世预赛比赛,很明显上半场香港全力 ...
微信公众号“罗辑思维”运营时间大概有2年多了,渐渐的也成为了一种现象。笔者可以说是它最早的一批用户,从罗辑思维公众号成立不久即开始关注,经历了几个发展阶段,现在做个分析,以飨读者。 以前的互联网做内容的 ...
本文前提是,因为更容易安装各种webserver,数据库,redis缓存,mq等软件,笔者使用Ubuntu Kylin作为开发系统已经好长时间了。 而今天(2015-07-23)下午2时许,系统提示有新的更新包,于是就进行了一下更新,记得只有一个核心组件 ...
北京时间2015年6月7日凌晨2:45分,欧洲足坛再次拉开了年度巅峰大戏,欧冠决赛在柏林奥林匹克球场拉开帷幕。 对于资深球迷来说,都清楚意大利尤文图斯和西班牙巴萨是两支风格迥异的球队,等着上演一出好戏。众所周知,意 ...
Global site tag (gtag.js) - Google Analytics