首页 » 软件架构

学了这些才能成为Java架构师

       既然称为java架构师,首先你要是一个高级java攻城尸,熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,连接池,线程池...java反射技术,写框架必备的技术,但是有严重的性能问题,替代方案java字节码技术;nio,没什么好说的,值得注意的是"直接内存"的特点,使用场景;java多线程同步异步;阅读全文 »

2017年2月22日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

三层架构和MVC那点事儿

       据说在上个世纪40年代, 有个叫IBM的公司宣称, 全世界只需要5台计算机就够了! 当时的人们肯定预料不到未来蓬勃发展的PC, 更想不到人们对计算有着多么大的需求。 那时候电脑是一个称为 哑终端 的东西, 这个东西可怜到只能用来发送、接收和显示字符, 不能安装程序, 没有复杂的交互, 即使是这样, 还只能是少数人有机会去使用。 但是,这个哑终端和一个无所不能的庞然大物相连接阅读全文 »

2016年12月5日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

谈谈程序员、技术主管和架构师

       在程序员从初级走向资深的过程中,会面临两个支路,一个叫「技术主管」,另一个则是「架构师」。为什么这是两条支路?因为现在回过来看,这两条路从来都不是程序员的自然成长路径,下面我们先从「技术主管」开始吧。 技术主管 技术主管,有些公司可能又叫「技术经理」,英文一般是 Tech Leader 或简称 TL。在拉姆·查兰 (Ram Charan) 那本《领导梯队》中提到一个人的工作角色中至少阅读全文 »

2016年10月10日
作者:鸡啄米 分类:职场人生 浏览: 评论:1

搭建“随需而变”的试验数字化管理系统—跟优必得学架构设计

       试验是产品研发、生产制造、维修保障过程中必不可少的重要技术手段,在优化产品性能、延长产品寿命、提高产品质量以及控制成本方面都起着至关重要的作用。然而企业试验过程中,日积月累大量的试验产生海量试验数据,如何管理和组织这些存放分散、类型多样、格式复杂的试验数据一直是一个困扰试验管理人员的难题。同时,如何合理的调配试验资源,高效的利用试验台架以及仪器仪表,如何规范试验的流程保证试验的准确、高效,避免重复阅读全文 »

2016年6月17日
作者:鸡啄米 分类:软件开发 浏览: 评论:1

架构设计之路(十):Session Per Request

       Session Per Request是什么   这是一个使用NHibernate构建Web项目惯用的模式,相关的文章其实很多。我尽量用我的语言(意思是大白话,但可能不精确)来做一个简单的解释。   首先,你得明白什么是session。这不是ASP.NET里面的那个session,初学者在这一点上容易犯晕。这是NHibernate的概念。阅读全文 »

2016年2月15日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

中小型网站架构优化心得

       先看网站架构图:... 以上网站架构广泛运用中大型网站中,本文从架构每一层分析所用主流技术和解决手段,有助于初入网站运维朋友们,进一步对网站架构认识,从而自己形成一套架构概念。 第一层:CDN 国内网络分布主要南电信北联通,造成跨地区访问延迟大问题,对于有一定访问量网站来说,增加CDN(内容分发网络)层可有效改善此现象,也是网站加速的最好选择。阅读全文 »

2016年2月4日
作者:鸡啄米 分类:软件开发 浏览: 评论:2

架构设计之路(九):从CurrentUser说起

       CurrentUser,也就是当前用户,这是我们系统中大量使用的一个概念。 确认当前用户 当然,我们利用的是cookie:用户的ID存放在cookie中,服务器端通过cookie中的Id,查找数据库,得到需要的用户信息。 那么,这里就有一个安全问题,如何防止cookie的伪造或篡改?我们采用了以下方法: 首先,cookie中除了存放用户Id,还存放了一个加密过后的验证码阅读全文 »

2015年12月18日
作者:鸡啄米 分类:软件开发 浏览: 评论:1

架构设计之路(八):MVC点滴

       WebForm 随着ASP.NET MVC的兴起,WebForm已成昨日黄花,但我其实还很想为WebForm说几句。 没有经历过从ASP向ASP.NET转变的同学,是很难理解当WebForm出现时,程序猿世界的欢呼雀跃的。事实上,我也是在Razor出现之后,才勉勉强强的转向MVC,因为看见<% %>这个东西就怕。阅读全文 »

2015年12月14日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(七):把框架拉出来

       前面的几篇博客反响还不错,但还有一个硬伤,“说了这么多理论,能不能实践?”讲类似概念的文章不算多,但也不少了,但我一直没能从中收获太多的东西,反而更是云里雾里的糊涂了。估计这主要是两方面的原因造成的:我智商低,却爱较真!   你说得得天花乱坠,我只信一点,眼见为实,“是骡子是马,牵出来溜溜?”阅读全文 »

2015年12月9日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(六):忘掉数据库

       前面写了这么多,很大程度上就是为了这一章做准备。面向对象或者领域驱动,最重要的一点就是要忘记数据库!我花了很长很长的时间,才理解了这一点,从而真正的迈向一个崭新的天地;而后,我又花了很长很长的时间,才勉强做到这一点;我希望,有一天,这将不再是一个问题,我不需要考虑这一点…… 为什么业务层这么薄 三层架构流行起来之后,我们很清楚的知道UI层负责页面交互并调用下一层,也知道阅读全文 »

2015年12月4日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(五):测试驱动

       上一章我们提到,单元测试只是测试驱动的一个子集;换言之,测试驱动有着更宽广的概念,他要求以“测试”为驱动力,来推动整个开发活动。这个观点似乎非常具有争议性,相当多的人认为其根本不具有可执行性。但很奇怪的是,当我第一眼接触这个观点,我就觉得,它像一道闪电划破长空,它光华璀璨,价值无以伦比!阅读全文 »

2015年10月13日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(四):单元测试

       在带队的过程中,性能的问题还比较好解决,最消极的想法,“好啊,多一事不如少一事,你让我不管还不简单?”,但要求写测试代码,那就炸锅了!以我的经历,“测试驱动”是一个最具争议的话题,没有之一。吹捧者和反对者泾渭分明,而且都有大量的论据和证明。记得曾经有一篇文章,大意是:“公司付钱给你不是让你写测试代码的”,下面一片狂赞。阅读全文 »

2015年10月8日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(三):性能

       我们在上一篇博客架构设计之路(二):目标中设定了架构的目标,只有一个,就是可维护性。完全没有提性能,这是故意的。 似乎程序员都是急性子,或许是被windows冗长的开机时间折磨够了,有可能是因为提升性能的效果是最显而易见的……总之,我发现,绝大部分程序员对性能的关注和热情是无与伦比的!阅读全文 »

2015年9月30日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(二):目标

       标准来源于目标 前文说过,评价架构好坏是一个很主观的东西。既然大家写出来的程序都能跑,凭什么就说你架构好,我的架构就差?拿出来大家评评理,张三说好,李四说不行,王五说将就……究竟谁说了算?现在已经不是一个迷信权威的时代了,所以不管你多少光环加持,你都得说出子丑寅卯来,都得服众才行。阅读全文 »

2015年9月28日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

架构设计之路(一):前言

       我学计算机学开发,目的很明确,就是奔着“架构”来的。当然,最初我不知道这个名词,我以为我就是去学“做网站”的。什么时候能够学会?最开始我以为三个月应该够了,然后延期到六个月,再延期到一年、两年……直到现在。在这个过程中, 我算是深刻的体会到“学无止境”,或者“学得越多越觉无知”是什么意思。阅读全文 »

2015年9月24日
作者:鸡啄米 分类:软件开发 浏览: 评论:0

小菜和大鸟的编程故事之三:代码规范和重构意识

       本文续接上文。       大鸟说:“且先不说出题人的意思,单就你现在的代码,就有很多不足的地方需要改进。比如变量命名,你的命名就是ABCD,变量不带有任何具体含义,这是非常不规范的;判断分支,你这样的写法,意味着每个条件都要做判断,等于计算机做了三次无用功;数据输入有效性判断等,如果用户输入的是字符符号而不是数字怎么办?阅读全文 »

2013年5月7日
作者:鸡啄米 分类:软件开发 浏览: 评论:2

小菜和大鸟的编程故事之一:活字印刷-面向对象思想的先驱

       本编程系列来自于伍迷家园,是我看过的关于设计模式方面很好的教程之一,在这里推荐给大家,望能喜欢。   话说三国时期,曹操带领百万大军攻打东吴,大军在长江赤壁驻扎,军船连成一片,眼看就要灭掉东吴,统一天下,曹操大悦,于是大宴众文武,在酒席间,曹操诗性大发,不觉吟道:“喝酒唱歌,人生真爽。......”。阅读全文 »

2013年4月19日
作者:鸡啄米 分类:软件开发 浏览: 评论:8

利用Memcache解决数据库高并发访问的瓶颈问题

       对于高并发高访问的Web应用程序来说,数据库存取瓶颈一直是个令人头疼的问题。特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰值已经达到500的时候,那你的程序运行离崩溃的边缘也不远了。很多小网站的开发人员一开始都将注意力放在了产品需求设计上,缺忽视了程序整体性能,可扩展性等方面的考虑,结果眼看着访问量一天天网上爬,可突然发现有一天网站因为访问量过大而崩溃了,到时候哭都来不及。阅读全文 »

2013年4月10日
作者:鸡啄米 分类:软件开发 浏览: 评论:10

软件工程师要有完美主义

       软件工程师编程的时候要有严谨的态度,发现问题应该及时解决,甚至要有一种完美主义。软件工程师要把自己的程序当做一个作品来对待,这个作品的优劣是你能力的体现,也是知识和经验的沉淀,一定要尽我所能的编程,写好程序。阅读全文 »

2011年8月23日
作者:鸡啄米 分类:软件开发 浏览: 评论:1

软件工程师应该自信更应该负责

       软件工程师对自己写的程序应该有自信,更应该有负责的态度。往往软件工程师是有自信的,但是负责就不一定能做到了。这里说的软件工程师应该有自信不是说盲目的自信,而应该是在对自己的程序的架构、软件的稳定性、软件的效率等各方面都有一定掌握的基础上建...阅读全文 »

2011年8月22日
作者:鸡啄米 分类:软件开发 浏览: 评论:1
分页:[«]1[»]