脚踏实地,不要飘忽不定

脚踏实地,不要飘忽不定

       前言:老老实实,扎扎实实,把基本动学好,不要动辄“架构”,“模式”。 很有段时间没有写博客了,不知道大家想我了没有!呵呵!

            

      最近接触到了不少开发人员,有刚刚踏入IT的,也有刚刚毕业的,也有已经工作了好几年的,总是问我一些比较莫名其妙的问题:“如何培养抽象的思维?”,“如何学习架构?“等等诸如之类的问题。之所以说”莫名其妙“,是因为这些问题任谁也不好回答,看起来是个问题,其实等于没有问!

 

     在后来和这些开发人员讨论的过程中,发现很多的基本都是“随大流,舍本逐末”。例如,认为ASP.NET就是拖控件,如果会开发自定义控件的,就算是牛X了。学了一点JQuery,越是网页中到处是JQuery,开始鄙视服务端控件。学了一点Ajax,所有的请求都是异步的了。学习了MVVM,就算是精通WPF,SL了。学习了.NET中的反射,不得了了:高级东西啊,到处用!学习了一点设计模式,于是认为“已经精通架构设计”,架构就是“设计模式”等。

      有些朋友也认为“做网站“没有技术含量,我就随便问了几个问题,例如:如何一ASP.NET站点,并且全球的用户量不断增加,已经达到了日访问量上百万,以后还会增加,于是性能成为了很大的问题,如何解决?

1.      请求优化,开启多少TCP链接,是否DNS缓存,

2.      页面加载优化:页面资源加载策略(jscss,图片,都是各不相同的)

3.      Web Farm负载均衡使用

a.      负载均衡的原理

4.      IIS优化,例如数据压缩,IIS内核缓存。

5.      数据读取优化,例如采用缓存,减小数据库压力(可以提出分布式缓存问题)

6.      缓存的相关策略,例如缓存什么数据,缓存多长时间。

7.      数据库分压问题:

a.      如,什么时候需要采用数据群集技术,

b.      如何进行数据库读写分离,

c.      如何进行主动数据库之前的数据同步,

d.      如何对数据库进行水平拆分,

e.      如何对数据库进行垂直拆分。

 

       有时候,只要反问一个简单问题,那些人基本就熄了:既然你精通ASP.NET,能不能把 从在浏览器中输入一个Url地址开发,到看到这个页面的输出,这其中涉及到的每个过程具体的描述一下?

      到现在为止,还没有见过几个人能够把这个过程描述清楚的,很多人都是简单的描述:发送请求,IIS接受,ASP.NET 运行时处理,返回结果。稍微好点的还知道有个“页面生命周期”?如果问问“请求经过的管道处理周期”,基本就看不住了。如果随意在其中任意挑一个小细节问下去,很多人就开始打马虎眼了!

    

    其实上面的问题,回答起来,是需要一定的功力的,从浏览器发送TCP请求,通过DNS寻找域名,然后“三次握手”,然后服务器开始处理,http.sys检测,IIS接受请求,加载ASP.NET运行时,然后为初始化Domain,读一些config,加载相应的权限等等。

 

    很多时候就是这样,对技术,很多的开发人员都大体上知道是个什么东西,如果稍微深入细节一点,知道的人就很少了。一旦问了问题,或者在做设计的时候,考虑的往往就不周详,漏洞百出!其实有个体会“知道的越多,发现自己知道的越少”!“细节决定成败!”

 

    也曾经告诉一些做.NET开发的朋友,把基本功能搞好(这里不是指的计算机学科的那些基本可能)。例如,知道程序集是什么东西,有什么组成,什么是清单,PE表头,知道一些IL的知识,了解一些垃圾回收的机制,了解什么是对象复苏,知道委托和事件是怎么做的,知道对象在哪里分配的等等。起码先把把语言关过了,再谈后面!

 

    今天算是即兴发言!有机会大家一起探讨!

 

 

   

  

 

 

     

     

作者:小洋,燕洋天
出处:http://yanyangtian.cnblogs.com/

承接架构设计,性能优化(程序,数据库等方面)技术咨询

 

 

posted @ 2011-06-16 20:11 小洋(燕洋天) 阅读(3812) 评论(56) 编辑 收藏

 回复 引用 查看   
#1楼2011-06-16 20:18 | chinazhangjie      
请问你文章下面的那段声明是怎么实现的?谢谢!
 回复 引用 查看   
#2楼2011-06-16 20:24 | Skiper      
“知道的越多,发现自己知道的越少”!非常认同这点,深有体会~~
 回复 引用 查看   
#3楼2011-06-16 20:32 | jaysh      
不错!
 回复 引用 查看   
#4楼2011-06-16 20:33 | 成品网站超市      
成品网站超市 www.txzs123.com/webmall
 回复 引用 查看   
#5楼2011-06-16 20:38 | goodfulcom      
“知道的越多,发现自己知道的越少”认同
 回复 引用 查看   
#6楼2011-06-16 20:45 | i surrender      
你写的真好 老师
 回复 引用 查看   
#7楼2011-06-16 20:57 | 陈年老生      
高手是磨砺出来的,心急吃不了热豆腐。
 回复 引用 查看   
#8楼2011-06-16 20:58 | 何戈洲      
不错,支持,写得非常好的好
 回复 引用 查看   
#9楼[楼主]2011-06-16 21:01 | 小洋(燕洋天)      
@何戈洲
呵呵,:)

 回复 引用 查看   
#10楼2011-06-16 21:06 | XueM      
仔细的阅读了一遍,感触很多,有时候我们拼命的学习新东西,感觉.NET里一切都是新的,一停下来就觉得自己跟不上.NET的潮流了,可是最基本的东西还是很容易被我们遗忘了,我就是一个小小的程序员,看到您上面说的很惭愧,许多东西都不会。
 回复 引用 查看   
#11楼[楼主]2011-06-16 21:07 | 小洋(燕洋天)      
@XueM
没事,闻道有先后,术业有专攻。
不晚

 回复 引用 查看   
#12楼2011-06-16 21:17 | 浪雪      
都是些基本问题……

的确是知道的越多,知道的越少。很多东西一往细节追究就另有一番天地。发现的天地多了才发现自己只是站在了其中的一块而已。

 回复 引用 查看   
#13楼2011-06-16 21:24 | 恋恋风尘      
一个人的时间与精力是极其有限的,想把什么都搞得清清楚楚是不现实也是不可能的,把精力主要集中在少数几个方面就非常专了,其他大部分的知识了解即可,碰到问题了再深入研究。
 回复 引用 查看   
#14楼[楼主]2011-06-16 21:33 | 小洋(燕洋天)      
@恋恋风尘
是这样的,先精一门,然后再广!

 回复 引用 查看   
#15楼2011-06-16 22:14 | 悠然自得      
说得的确很在道理。
 回复 引用 查看   
#16楼2011-06-16 22:32 | 魏琼东      
希望国内的程序员有更多的脚踏实地,而不是玩些虚的,任务一个企业、一个民族/国家要想富强,必先富其心智,如果都觉得学几个时髦的名词就牛X了,那只是表象,见过太多的从业者动不动在那蹦出几个中英混杂的名字,总感觉别扭。
 回复 引用 查看   
#17楼[楼主]2011-06-16 22:50 | 小洋(燕洋天)      
@魏琼东
赞同!!!

 回复 引用 查看   
#18楼2011-06-16 23:17 | 麦舒      
引用魏琼东:希望国内的程序员有更多的脚踏实地,而不是玩些虚的,任务一个企业、一个民族/国家要想富强,必先富其心智,如果都觉得学几个时髦的名词就牛X了,那只是表象,见过太多的从业者动不动在那蹦出几个中英混杂的名字,总感觉别扭。

要静下心来做技术,太难了。
基本的生活都没有解决好,怎么静得下心呢?

 回复 引用 查看   
#19楼[楼主]2011-06-16 23:32 | 小洋(燕洋天)      
引用麦舒:
引用魏琼东:希望国内的程序员有更多的脚踏实地,而不是玩些虚的,任务一个企业、一个民族/国家要想富强,必先富其心智,如果都觉得学几个时髦的名词就牛X了,那只是表象,见过太多的从业者动不动在那蹦出几个中英混杂的名字,总感觉别扭。

要静下心来做技术,太难了。
基本的生活都没有解决好,怎么静得下心呢?


这就很纠结了:其实也看个人,如果静不下心,技术方面的造诣可想而知;如果静心,但是周围的环境和自己的情况又使得自己不能静下来。

静心,是一种选择,更是一种毅力!

 回复 引用 查看   
#20楼2011-06-16 23:37 | 喃易      
的确很久不见楼主了啊,风格变了。。哈哈
 回复 引用 查看   
#21楼2011-06-17 08:59 | matchcolor      
楼主的博客好久没更新了.你的.NET 业务框架开发实战系列还写吗?
 回复 引用 查看   
#22楼2011-06-17 09:00 | 温景良(Jason)      
呵呵,做网站对优化的确要了解,这个是科学不是艺术,需要大家去理会的.
 回复 引用 查看   
#23楼2011-06-17 09:05 | 聂微东      
谢谢LZ,最近我也急躁了.放稳心态,脚踏实地,再接再厉。
 回复 引用 查看   
#24楼2011-06-17 09:07 | alangis      
说得很好,如果少打几个错别字就更好了。
 回复 引用 查看   
#25楼2011-06-17 09:25 | Edward.Net      
实际上我们在面试的过程中都偏向于提问很多难度较大而工作中基本不会用到的问题,所以我建议还是实际一些比较好。例如在asp.net开发中不会用到DNS缓存,三握手协议,CDN之类的东西,又何必故意刁难呢。
 回复 引用 查看   
#26楼2011-06-17 09:26 | ClarkZhou      
支持楼主,不过冒昧的问个俗事,如果满足您的标准,就上海来说待遇能达到多少??
毕竟在咱们镇里大多数程序员都是靠此维持生计,应该很少有人将此作为学术研究的吧!所以,我想应该是先有了基本的生活保障才能有更大发展!求指正!

 回复 引用 查看   
#27楼[楼主]2011-06-17 09:31 | 小洋(燕洋天)      
引用Edward.Net:实际上我们在面试的过程中都偏向于提问很多难度较大而工作中基本不会用到的问题,所以我建议还是实际一些比较好。例如在asp.net开发中不会用到DNS缓存,三握手协议,CDN之类的东西,又何必故意刁难呢。

这不算故意刁难啊!确实需要考虑,特别是搞互联网的!

 回复 引用 查看   
#28楼[楼主]2011-06-17 09:42 | 小洋(燕洋天)      
引用ClarkZhou:
支持楼主,不过冒昧的问个俗事,如果满足您的标准,就上海来说待遇能达到多少??
毕竟在咱们镇里大多数程序员都是靠此维持生计,应该很少有人将此作为学术研究的吧!所以,我想应该是先有了基本的生活保障才能有更大发展!求指正!


很矛盾的,技术不好,在技术领域基本就没有核心竞争力,生活也不会好到那里去!因为随便找个人都可以替代你!

再说了,踏踏实实把技术搞好不等于“作为学术研究”!二者没有任何关系!

 回复 引用 查看   
#29楼2011-06-17 09:53 | ClarkZhou      
引用小洋(燕洋天):
引用ClarkZhou:
支持楼主,不过冒昧的问个俗事,如果满足您的标准,就上海来说待遇能达到多少??
毕竟在咱们镇里大多数程序员都是靠此维持生计,应该很少有人将此作为学术研究的吧!所以,我想应该是先有了基本的生活保障才能有更大发展!求指正!


很矛盾的,技术不好,在技术领域基本就没有核心竞争力,生活也不会好到那里去!因为随便找个人都可以替代你!

再说了,踏踏实实把技术搞好不等于“作为学术研究”!二者没有任何关系!


谢谢您的指点!“作为学术研究”其实,我想表达的意思是,每样都必须那么精通么?请原谅我的语文水平。其实我想问的是如果满足您的标准的待遇!

 回复 引用 查看   
#30楼2011-06-17 12:57 | geass..      
引用ClarkZhou:
引用小洋(燕洋天):
引用ClarkZhou:
支持楼主,不过冒昧的问个俗事,如果满足您的标准,就上海来说待遇能达到多少??
毕竟在咱们镇里大多数程序员都是靠此维持生计,应该很少有人将此作为学术研究的吧!所以,我想应该是先有了基本的生活保障才能有更大发展!求指正!


很矛盾的,技术不好,在技术领域基本就没有核心竞争力,生活也不会好到那里去!因为随便找个人都可以替代你!

再说了,踏踏实实把技术搞好不等于“作为学术研究”!二者没有任何关系!


谢谢您的指点!“作为学术研究”其实,我想表达的意思是,每样都必须那么精通么?请原...

我个人的理解:如果那家公司真的需要你的技术,一般都可以满足你要求。

 回复 引用 查看   
#31楼2011-06-17 13:40 | 玉开      
其实就从浏览器发出请求到接受到请求是一件很复杂的事情,这中间光TCP这一块就没几个人能说的清楚,三次握手都干什么呢,为什么要三次握手呢?
还有涉及到Http协议的,浏览器发出请求和服务器发出响应这中间也有很多事情在做。
不过如果你是做asp.net开发网站前端的,不知道三次握手的细节也很正常,不知道浏览器是怎么发送请求怎么解析服务器端响应的也是很正常的。

把asp.net接受到请求到处理完请求这一块弄清楚就非常了不起了。

 回复 引用 查看   
#32楼2011-06-17 13:48 | 深蓝医生      
引用Skiper:“知道的越多,发现自己知道的越少”!非常认同这点,深有体会~~

这个我也顶!

 回复 引用 查看   
#33楼2011-06-17 15:23 | ClarkZhou      
@geass..
首先,楼主的观念是值得肯定的;
其次,我觉得很多道理大家都懂!其实,我只是想问一下楼主,如果达到他的要求的程序员的待遇是多少!从而能大致估算一下得失?!考虑一下时间、生活、经济成本等等。因为我觉得镇里的绝大多数程序员都是靠写程序吃饭的,不计算成本应该不大可能,俺也是其中一个,当然我不代表任何一个人,所以发表一下观点,希望前辈高人们指点。

 回复 引用 查看   
#34楼2011-06-17 16:41 | kevin0227      
@深蓝医生
必须顶

 回复 引用 查看   
#35楼2011-06-17 17:15 | 岁月w      
现在这个社会很现实,都逼着我们学这个学那个,如果你不学习就会落伍了,按照楼主说的人的精力很有限,但是在这个残酷的社会中就是逼着我们去做很多我们不愿意的事情,我们要不停的去学习,这样才能赶上社会的潮流,我们都喜欢去努力专研点精通的,但是这个社会不允许我们这样做,没办法!!!!!!!!
 回复 引用 查看   
#36楼2011-06-17 17:32 | 叶小钗      
不错,楼主
 回复 引用 查看   
#37楼2011-06-18 00:23 | zagelover      
谢谢~受用了~
 回复 引用 查看   
#38楼2011-06-18 14:12 | 紫砂壶      
今天才发现楼主的博客,特别是里面的系列文章,正是我找了很久的东西竟然都在你的博客里!!
首先感谢楼主的系列技术文章为我等菜鸟指明道路。
再次感谢楼主的系列技术文章为我等菜鸟指明道路。。。

 回复 引用 查看   
#39楼2011-06-18 14:13 | 紫砂壶      
还有楼主能否加下我的qq交个朋友啊我的qq:344926705
 回复 引用 查看   
#40楼2011-06-20 08:25 | 夼中玥      
自己还差很多,努力
 回复 引用 查看   
#41楼2011-06-20 17:56 | T-John      
努力学习,向LZ学习!经常写点东西,不然我会想你的。
 回复 引用 查看   
#42楼2011-06-22 09:17 | newzhq      
洋哥教训的是
 回复 引用 查看   
#43楼2011-06-25 21:44 | jaj      
醍醐灌顶,谢谢了
 回复 引用 查看   
#44楼2011-06-26 12:37 | Aga's Article Store      
不错哦,不过内功很深厚的同时,也需要有一定的招式能耍才行
 回复 引用 查看   
#45楼2011-07-12 14:28 | Bulid For C#      
引用XueM:仔细的阅读了一遍,感触很多,有时候我们拼命的学习新东西,感觉.NET里一切都是新的,一停下来就觉得自己跟不上.NET的潮流了,可是最基本的东西还是很容易被我们遗忘了,我就是一个小小的程序员,看到您上面说的很惭愧,许多东西都不会。

太有同感了~~老师写的真好

 回复 引用 查看   
#46楼2011-07-18 15:04 | shuangyu2      
听楼主一席话,感到惭愧,脚踏实地继续努力!
 回复 引用 查看   
#47楼2011-07-19 17:57 | 程兴亮      
好文章。值得
 回复 引用 查看   
#48楼2011-07-20 10:31 | 澈澈      
内功,招式,很形象- -,
小小程序员学习了,

 回复 引用 查看   
#49楼2011-08-02 09:04 | 陈浮生      
学习了!
 回复 引用 查看   
#50楼2011-08-08 23:33 | 忧忧夏天      
引用知道的越多,发现自己知道的越少”!“细节决定成败!

很有道理

 回复 引用 查看   
#51楼2011-08-09 11:53 | GengL      
知道的越多,发现自己知道的越少
 回复 引用   
#52楼2011-08-09 18:18 | fordeath12[未注册用户]
很有道理。
 回复 引用 查看   
#53楼2011-08-15 10:40 | Matt.com      
不过我想说的是对于刚毕业的还是很有难度的,如果碰到一个好老师。
他可能会教你如何来理解底层,可碰到不好的,谁会意思到去关注底层和原理呢

 回复 引用 查看   
#54楼2011-10-29 08:42 | 紫砂壶      
DNS缓存,三握手协议,CDN之类的东西,这些一般的我感觉没必要了解的很清楚,只要知道有这么回事就行了,你要是真想搞懂,不说别的就光tcp/ip协议就够你学一阵子的,把.net的部分精通已经很不错了,况且认得精力是非常有限的.net的知识更新的还这么快。。特别是做网站程序的知识跟新的更快,,再者真到了分析服务器集群了,cdn技术,那就是网络系统工程师的职责了,因为这又是一个新领域了。。。
 回复 引用 查看   
#55楼2011-11-28 12:14 | 丶Terminator      
顶楼主啊,我好迷茫,工作了刚好一年,你知道什么时候是个头儿
 回复 引用 查看   
#56楼2012-01-18 18:19 | JackyLoveAngel      
呵呵,写了不错
发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 2083041 g9cL+d4C6Lo=
架构设计
架构设计