文斌的专栏

聊聊架构设计、软件工程、敏捷开发、移动应用的那些事

Native App 不再首选

近日调研了与Web App、Hybrid App、React、HTML5相关的技术及当前的应用现状,确实有弱Native化的趋势。

2015-05-13 19:53:00

阅读数 3592

评论数 0

架构师应该编码吗?

架构师从编码中来,通过构建原型、框架和基础,实验新技术,代码评审等必不可少的编码活动最终完成产品的交付。难道不应该编码吗?

2015-03-02 19:15:25

阅读数 3436

评论数 0

单例的灾难

单例模式是设计模式的一种,由于其实现简单、易于使用,几乎为程序员必备模式,你问100个程序员,可能99个人都会用单例模式,但是,如果再让他们总结一下单例的弊端,那能脱颖而出的就没有几个了。     单例的生存期超长,会导致内存的持续占用。这是最常见的答案。     单例在多线程环境需要小心的处理线...

2014-08-05 18:51:51

阅读数 3954

评论数 0

用Unicode迎接未来

项目中使用了emoji,然后,问题产生了,后端MySQL数据库无法存储emoji字符,悲了个剧。emoji是Unicode字符集的子集,Unicode的使用应该很普遍了,怎么会遇到这样的问题呢?这还要从头说起。     Unicode是为了解决全球字符的统一编码,用这一个字符集就可以容纳得下全球各...

2014-06-17 19:51:42

阅读数 1929

评论数 0

如何避免设计过度与不足

在知乎上看到关于“什么是软件开发中的过度设计”的问题,其中一个回答很形象,摘要如下:        假如今天你打算开发一个知乎的客户端,那么一个过度设计的"你"就开始琢磨了,嗯,我要面向对象,我要可扩展,我要牛逼!开始设计,首先业务和界面要分开,先用库的形式搞一个知乎sdk,然后你就搞了一大堆接口...

2013-06-14 15:58:25

阅读数 5646

评论数 1

实用设计模式之观察者模式

1.什么是观察者模式        观察者模式是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。 2.观察者模式的实现        虽然在Java中提供了现成的Observer和Observable实现,但由于Observable...

2013-03-30 11:32:01

阅读数 2793

评论数 0

实用设计模式之单例模式

1.什么是单例模式        单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并提供全局访问点。 2.单例的使用        教科书中的示例是很简单的,要想实现一个单...

2013-03-27 19:13:31

阅读数 5402

评论数 0

实用设计模式之状态模式

状态模式的针对性很强,当有状态变化的时候很多工程师会倾向于选择状态模式,但在使用时仍然存在着很多问题,比如状态的拆分不清晰、状态的变迁不准确、类的职责划分不单一等,一旦与具体的业务逻辑和已有的代码上下文放在一起,就出现了混乱。因此,本文以一个实际的例子来总结一下在现实当中如何使用状态模式。 1.什...

2013-03-17 16:29:51

阅读数 4142

评论数 2

测试驱动开发——读《浮现式设计》有感

题记:正在读《浮现式设计:专业软件开发的演进本质》(荣获第19届Jolt生产力大奖)一书,顺手写下了一点自己的感想与浅见,是以为记。         前几天刚在我的微博上说我在读一本《测试驱动开发》的书,今天在读《浮现式设计》时又遇见了“测试驱动开发”,好友胡研还调侃说现在有需求驱动开发、系分驱动...

2013-03-02 15:25:32

阅读数 2016

评论数 2

注重纪律——读《浮现式设计》有感

题记:正在读《浮现式设计:专业软件开发的演进本质》(荣获第19届Jolt生产力大奖)一书,顺手写下了一点自己的感想与浅见,是以为记。         这一章的主题是单元测试,给我带来了很多思考。        首先就是测试经济学,作者为我们带来了非常有趣的辩证逻辑:大多数软件开发专业人员都会称赞测...

2013-02-27 21:24:01

阅读数 1978

评论数 0

注重实践——读《浮现式设计》有感

题记:正在读《浮现式设计:专业软件开发的演进本质》(荣获第19届Jolt生产力大奖)一书,顺手写下了一点自己的感想与浅见,是以为记。         各行各业几乎都有自己的实践,不管是约定俗成,还是通过文字传承,都在这个行业中起着重要的作用。作为软件专业,虽然年轻,但该专业对实践格外重视,所以注重...

2013-02-25 20:12:27

阅读数 6503

评论数 1

注重原则和智慧结晶——读《浮现式设计》有感

题记:正在读《浮现式设计:专业软件开发的演进本质》(荣获第19届Jolt生产力大奖)一书,顺手写下了一点自己的感想与浅见,是以为记。         使用与创建分离原则是我以前没有接触的,说起来很易于理解,即分离对象的创建和使用职责,在一个系统中,限制任意实体A与任意实体B之间的关系,A可以创建B...

2013-02-24 11:07:15

阅读数 1767

评论数 0

注重软件质量——读《浮现式设计》有感

题记:正在读《浮现式设计:专业软件开发的演进本质》(荣获第19届Jolt生产力大奖)一书,顺手写下了一点自己的感想与浅见,是以为记。         封装、内聚、耦合,这是编码的首要原则。        这三个原则不是面向对象开发才有的,早在面向过程的开发方法中就已经作为普适原则存在了,随便问一位...

2013-02-23 17:20:43

阅读数 1741

评论数 0

闲说缓存

翻翻博客,离最近的一篇也已经过去4个月了,这四个月当中,摩托裁员了,微软换了Windows Phone 8内核了,Apple的New iPad能销售了,Google的Android份额又升了,4年一次的奥运会也结束了。外部环境在变,内部环境也在变,部门调整,项目变更,团队有了新力量,熟悉的脸孔也在...

2012-08-13 19:50:19

阅读数 4972

评论数 4

移动应用的架构约束

架构设计是在平衡各种约束条件,比如运行环境、接口标准、人员因素、技术因素、办公条件等等,具体到移动应用软件,其架构设计又有哪些特殊的约束条件呢?        首先是运算能力。移动应用主要的运行环境是移动设备如各种手机、嵌入式设备、平板电脑等。这些设备相比于PC机,其运算能力是低一些。运算能力的高...

2012-04-16 18:57:43

阅读数 4239

评论数 3

移动应用需要架构设计吗

移动应用需要软件架构设计吗?这是个经常被提到的问题。         回顾十几年前为PC开发应用软件的历史。早期没有架构设计,在可维护性和易扩展性上面都要付出相当大的成本。后来人们认识到了软件架构的重要性,并使得软件架构的概念逐渐成熟起来,在延长软件的生命周期上发挥了巨大的作用。现在,几乎所有的软...

2012-04-09 22:40:39

阅读数 6513

评论数 10

架构如何才能抵制熵增

首先我们来了解一下熵增定律,百度百科的描述是:  “孤立系统总是趋向于熵增,最终达到熵的最大状态,也就是系统的最混乱无序状态。但是,对开放系统而言,由于它可以将内部能量交换产生的熵增通过向环境释放热量的方式转移,所以开放系统有可能趋向熵减而达到有序状态。”         “熵增的热力学理论与几率...

2012-02-29 23:30:05

阅读数 11288

评论数 12

架构师的大局观

时常听到大局观这个词,每每总是心存敬畏,大局观到底为何? 当我还是一个刚入行的软件工程师的时候,我每天忙碌于代码,输入的是各种需求,输出的是各种功能模块。当时,我心中的大局观就是我输出的模块能被他人很方便的调用,能与其他人合作得愉快,能为产品做好我负责的那部分。 当我成为一名高级软件工程师的时候,...

2011-12-10 16:53:55

阅读数 10677

评论数 22

设计模式15问

设计模式是什么?›  优秀的设计范例›  从优秀设计方案中发现和总结出来的经验›  在实践中反复出现的设计问题的优秀解决方案›  设计和开发人员相互交流的基本术语 设计模式不是什么?›  面向对象设计的框架›  可供简单组合的积木式的设计元件›  新发明的创新思路和方法›  解决面向对象设计问题的...

2011-07-25 13:59:48

阅读数 3275

评论数 1

微博网站用OAuth就一定安全吗?

以新浪微博的OAuth为例看开放平台的鉴权安全问题

2011-04-20 10:57:00

阅读数 12844

评论数 47

提示
确定要删除当前文章?
取消 删除
关闭
关闭