`
文章列表
本人向大家提供一个Swing学习交流的平台 http://www.swingchina.net
   NoSQL已经逐渐流行起来,给传统的RDBMS越来越大的压力。      目前,NoSQL的各厂商纷纷推出了Windows平台的产品 。        
Pairing NoSQL and Relational Data Storage: MySQL with MongoDB       文章作者假设些需求,分析和对比关系型数据库MySQL和NoSQL解决方案MongoDB的使用场景。本人比较赞同其观点。对于事务性并且实时要求不是特别高的处理,交给成熟的RDBMS来处理。对于简单地CRUD和实施统计方面,可以交给性能更加的NoSQL实现。       目前,所有NoSQL实现都不支持事务。这就导致了客户端不放心使用NoSQL,来处理关键性数据。当然给NoSQL一点时间,相信能够做得更好。       不过,本人认为NoSQL还 ...
最近在论坛里面,发现不少同学留言之间火药味十足,就是为了争论谁对谁错。   经验、技能和知识是在反复实践和推敲中产生的,答案往往只有一个。但是对于主观理解的东西,谁都会有偏差或偏好,没有必要针对个人。           鄙视别人的同时,想想自己的水平的到底如何。IT人士自尊心都很强,要相亲,而不是相轻嘛。          话不多说,何必较真嘛。
  在大规模Java 应用开发中,总会遇到内存泄漏的问题。通常的做法,通过 Profile 工具,分析 Java  Heap ,一般能够发现哪些对象内存占用巨大,而引起的泄漏问题。为了更好地深入了解问题的本质,以及从另外一个角度来分析问题,特写这篇文章。   可能不少的读者,并不清楚Java 对象到底占居多少的空间(单位:字节 =8 比特)。文章中会使用 JDK 6 update 7 自带的 Profile 工具 -Java VisualVM 。引入 Profile 工具的目的正是为了分析对象的大小。   首先,要区别Java 对 ...
    这篇文章介绍方法范围设计,这种设计是API开发人员容易忽视的部分,也是相对困难和耗时的。 所谓范围,这里分为两个方面:第一,物理范围;第二,逻辑范围。1.什么是物理范围 主要是指访问范围。Java编程语言提供了4种访问限定修饰符:public、protected、(package public)、private,这四个访问限定符的访问权限角度逐渐递减。这些修饰信息保存在类的字节码中,可以通过编译时确定和验证,这也是称为物理 范围的原因。2.什么是逻辑范围 如果说物理范围限于访问范围的话,那么逻辑范围更加广阔,包括方法返回类型、参数类型、参数数量等。具体的介绍在下篇 ...
   同上篇文章(JDBC设计模式)类似,也是谈设计模式,不过这次要谈的是Tomcat。      在面试中,如题。 我当时回答的是Mediator模式,好比调制解调器,就是常说的“猫”,通过模拟信号到电子信号。那么Tomcat也是如此,接收和解析的HTTP请求,封装成HttpServletRequest对象。      当时比较紧张,可能没有把题目吃透,那么这里我解释一下。     Tomcat是Servlet/JSP规范的RI,那也就说Servlet里面用到哪些设计模式?同时也有其特殊功能性。     责任链模式:java.servlet.FilterCha ...
   今天上午面试中,考官问我一个关于JDBC的设计模式的问题,但是回答是利用Bridge模式、Service Locator。后来,我想了仔细想了一下,其实还有一些。   为什么是Bridge呢?       因为JDBC驱动中,有一个jdbc-odbc,这个利用桥 ...
在《类的设计基础知识》文章中提到, 方法作为 命名的控制类或者对象的有状态或无状态的执行模块,可称作类或者对象的“行为”。 方法在类中的地位相当重要,利用面向对象的多态性能够设计更为优雅的结构, ...
对枚举类型印象大多来自于C 语言,在 C 语言中,枚举类型是一个 HardCode (硬编码)类型,其使用价值并不大。因此,在 Java 5 之前,枚举是被抛弃的。然而 Java 5 以后的发现版本开始对枚举进行支持,枚举的引入给 Java 世界带来了争议。 笔者比较赞同引入枚举,作为一门通用的静态编程语言,应该是海纳百川的(因此笔者赞成闭包进入Java 7 ),多途径实现功能。 如果您不了解枚举的用法,建议参考笔者以前网络资源,了解基本的用法。地址为: http://mercyblitz.blog.ccidnet.com/blog-htm- ...
从这篇文章开始进入实战阶段的设计阶段,本文介绍内置类设计的最佳实践。 回顾一下,类(Class )作为 Java 编程语言中的基本单元模块,提供了面向对象的四种基本性质: 抽象性、封装性、继承性和多态性。 在面向对象设计原则中, 尽可能偏好方法,而非字段(或属性) 。简单的说,方法更好的表达语义。因此,在方法实现过程中,经常会遇到类似的情景,接口方法method1  调用其他方法来完成功能需要。无非有三种情况,利用本类的(静态或者实例的)方法,调用某个类的静态可访问的方法和某个实例可访问的实例方法。但是, 良好类设计是尽量的隐藏实现细节,简单清晰地表达 ...
在开始类的设计之旅之前,首先引入一些基础知识,方便后续更详细的实践设计文章之理解,也是本章的主要内容。 Java作为“全面”支持面向对象编程(OOP)语言,其吸取了其他OOP(比如C++、Smalltalk语言等特性)的优点,提供了面向对象的四种基本性质: 抽象性 、 封装性 、 继承性 和 多态性 。 Java语言以"类(Class)"为基本单位(或者模块),按照成员划分,其主要组成部分为:字段(Field)、方法(Method),构造器(Constructor),其中,在Java 5发布之后,注解(Annotation)也加入了Cl ...
根据笔者的经验,计划编写 “Java 面向对象设计最佳实践” 专题,通过 用理论和实战的方法,试图介绍Java 面向对象设计,希望大家喜欢。本文是开章概述,由于经验和精力有限,欢迎大家指正和共同交流学习。 言归正传,Java 语言作为一门“ 全面 ”面向对象的编程语言,提供了面向对象的四种基本性质: 抽象性 、 封装性 、 继承性 和 多态性 。同时,不得不指出的是,这里的“全面”是狭义的,缘于Java 编程语言没有放弃面向过程语言的原生类型,并且有限性地支持
时常,在各大论坛看到不少的朋友在张贴简历,希望得到他人的指点。为此,根据笔者一点经验,谈谈看法。 在IT行业里面,相对竞争压力较大。好的简历是成功的前提,可是很多经验较少的朋友,尤其是毕业生,对写好简 ...
一年来很少写日志,更多地是项目开发和研究他人的经验和知识。 做开发4年来,给我一个总体的感觉是痛苦并且快乐着。相信很多朋友和我一样,解决了一个棘手的问题,更有甚者这个问题他人不能解决时,成就感油然而生。至于痛苦的方面,这可能和他人不同,我很少会为不能解决的问题而困惑,更多的是来自于团队合作和团队工作质量。有时候,会对队友很失望,无论是经验程度,还是处理人事的方法。 对于软件开发,笔者一点体会,简单地说,为了一个共同的目标,一个或多个团队相互合作,产生一定“结果”的社会过程。个人偏好地认为是一种过程,通常来说,由项目立
Global site tag (gtag.js) - Google Analytics