- 浏览: 54428 次
- 性别:
- 来自: 长春
-
文章列表
在香山上,我坐在坡顶,看着下面的斜坡,但我知道我可以爬下去,而且不受伤,我想这是一种本能,以致于我是如此自信,都不用考虑细节,当我考虑细节的时候,发现我真的可以,那些长在斜坡上的树木,那些可以抓握的石头,斜坡的角度。虽然我在一开始并没有去考虑这些,但我已经知道我可以,而且很自信,真是不可思议。我想这可能是我的生物本能,让我们能在丛林中生存。
由此我想到技术,如果我能在第一眼看到需求的时候就能确定能不能做,有哪些方法,各种方法的优劣,能做到怎么样,需要多长时间,那样应该是很厉害了。
学习计算机体系结构,操作系统,tcp/ip,设计原则等原理性的东西能给我一种自 ...
最近失业了,一直在看技术书,找工作。
今天突然看到之前看过的一个系列,博客园的《失业的程序员》系列,见http://www.cnblogs.com/shenyisyn/archive/2013/02/26/2933778.html
然后看到csdn上的一篇小说,一个程序员的小说。http://bbs.csdn.net/topics/90178878
突然感到身为人的一面。
也可能是我单身的缘故吧,常常只记得生成中只有工作,技术,前途了。
忽视了自己的感受,自己的喜爱。
技术成了固执的理由,看人时也带了些偏见,看不惯,认为某些人天生就是有毛病的。
但最近找工作以来,还是碰了一些壁的 ...
一.TCP/IP协议是什么
首先,TCP/IP是为了解决任意两台主机上程序的互联而规定的一组平台无关的协议,如果没有标准的协议,那么每次需要网络通信的时候,应用程序就得处理从网卡的二进制信息流,到路由寻址,到端口连接,这一系列事情,导致网络无法发展壮大,信息的传递也会变得复杂。
首先看TCP/IP协议簇吧,从底层到高层为
网络接口层,网络层,传输层,应用层。
其中网络接口层,指物理连接和相邻网络结点的通信,协议有:ARP协议,RARP协议,以太网协议,无线网(WIFI)协议,比如线路中当前谁可以发送信息,如何识别信息的发送方,信息的格式。可以有不同的实现,比如令牌环,以太网,无 ...
常常我们会有空下来的时间,当然是在每周休息,生活,运动都保证的情况下,我们通常需要这些时间来给自己充充电。毕竟,技术是程序员的吃饭的家伙,不专注一些,将来可能吃不饱。
为了方便起见,首先假设大家是在公司工作,并且有具体的业务要做,如果是纯粹研究性质的,那就不必要看下去了。
首先,要学习工作中用到的技术,如果因工作上用到的技术不达标,工作不能胜任,这将很大程度上影响你的饭碗。
当在工作中已经达到一般员工的水平后,每天的工作可能不那么有挑战性了,这个时候,可以试着关注下目前项目的情况,评估一下,项目目前哪里做的好,如何做的,哪里做的不好,是什么原因造成的,技术选型为什么要这 ...
之前看书比较快,就有一种错觉,所有的书都要以很快的速度看完。
但这是错的。
看书是获取知识的一种方式,有些知识我们了解的比较少,看相关的书有可能会比较吃力。有些知识我们已经知道很多了,可以很快的略过。有些作者的语言很通俗易懂,我们能很快吸收,但也有作者或是译者的语言读起来比较拗口,需要时间去理解。
因此不能片面追求读得多,读得快。
读书是为了获取知识,应该以知识掌握的情况来衡量,读完后,有没有得到自己想要的知识,有没有建立起对相关知识的清晰概念,能不能准确的描述出你学到了什么东西,以后可能在哪些地方用到。
所以为了掌握知识,我要采取其他措施来巩固知识,比如做读书笔记 ...
如果我们要采用一项技术,需要对其整体概念有了解。
我们要解决什么问题,这个解决方案的优点是什么,缺点是什么,有没有其他选择的方案,它们之间有什么不同。
技术的学习和使用也有层级之分。
第一层:问题的解决方案,能否解决问题,优点,缺点,不同方案的比较
第二层:内部的实现原理
第三层:使用时要特别注意的地方,细节
第四层:如何使用
每一层要解决的问题不同,我们一般可能从第一层部分开始,然后第四层,最后是第三层,以致于最后忘记了第一层的真正问题,是否有更好的方案。以及第二层内部实现原理,导致在出现问题的时候不太容易解决。
另外,不同层级之间考虑的问题不太相同, ...
从GOOGLE开发者大会来看,移动设备的持有量持续上升,2011年Android系统激活量为1亿,2012年为4亿。2013年Android激活量为9亿,有480亿次应用程序下载,发展迅速。而百度第一季度的移动互联网报告也表明,人们花在移动设备上的时间也超过了在PC上的时间。
GOOGLE PLAY FOR EDUCATION,远程教育或许会改变以后教育的形式,与之相关的肯定会有学校,课堂的形式,私人授课,网络视频会议。
原文见http://jjhou.boolan.com/programmer-5-talk.htm,侯捷写的,繁体字看起来很有感觉。
作者针对程序员对新技术的浮躁追求,发表了自己对技术的理解,以及如何应对技术日新月异的变化,给出了一些建议。
引文
“
追求新知固 ...
一.要理解浏览器的同源策略,首先要理解http的请求过程。
1.浏览器收到用户输入的url,如www.baidu.com
2.浏览器根据域名去DNS服务器查找对应的服务器ip
3.浏览器与服务器上的80端口建立tcp连接
4.浏览器将http请求报文发给服务器
5.服务器接收请求,将html文件以响应报文的形式发给浏览器
6.浏览器接收到响应报文,解析其中的html文件,渲染。如果html文件中有引用其他资源,如
<script type="text/javascript" src="www.test.com/a.js"/>, ...
JTA(Java Transaction API)是JAVA提供的控制分布式事务的API。
UserTransaction 提供了面向程序员的编程接口。
TransactionManager提供给容器,来管理事务边界。
Transaction代表事务对象,每新建一个事务,就会生成一个Transaction对象。它具体实施对XA资源的加载,释放,回滚,提交。
XAResource 代表一个资源管理器连接器,通过它来实与资源管理器通信,实现XA协议。
技术是什么
之前以为是能解决遇到的任何技术问题,实现任何业务需求。
但当自己不顾一切去追求技术,追求新的,别人没有用过的技术时,却愈发茫然了。因为不知道为什么,在工作中是因为学到很多技术,然后解决了一些问题。但当我继续学习的时候,却没有动力了,因为目前的技能已经能够完成工作了,而在这以后就关注设计模式,软件工程方面虚点的东西了,这些却不像学技术那样直接见效,而在其他方面,也不知道该怎么走了。
辞职了,不顾一切的辞职了,因为工作不能带给我任何成就感了,没有进步,做出来自己不满意的东西,没有去反驳觉得很紧的工期,看不到未来。
辞职后花了一个多月的时间,看tcp/ip,计算 ...
由于之前做项目中,觉得开发模式有问题,让人感觉特别不好,所以想是不是现在这种开发模式不行。
目前用的是scrum敏捷开发。
每周迭代。
看了敏捷宣言,觉得书中讲的特别有道理,让人热血沸腾。
又看了本书《人月神话》,强调了人和月不能互相置换。
再又是《XP的实践和反思》,给敏捷清醒了下。
这本书批判了XP中的简单设计,快速交付,无限重构,没有文档。
由于有些项目需求是固定的,而且对项目的稳定性要求极高,如果采用XP,那么很可能初期项目质量差,后期持续重构,线上系统的不稳定。
还有就是国产的《走出软件作坊》,讲得很实际,是他带团队的经验,
前段时间要走了,在《人月神话 ...
最初看面向对象方面的知识是因为看到很多不好的代码,包括我自己的,然后看《重构》,《HeadFirst面向对象开发》,《设计模式》,看了部分《敏捷开发:原则,实践,模式》,然后是《设计原本》,《建筑的永恒之道》,coo ...
看开源软件,发现文档都是在代码注释里生成的,这样比较方便查看代码结构,需要将代码设计思路描述在其中,生成文档。但流程这些还是需要一些其他的图来说明,比如概要设计,需要分析之类的。
发现为了程序的一点简便性,Spring还是做了很多的。比如在事务中,由最初的编程式控制事务和数据链接,然后将数据链接的获得和释放对程序员屏蔽,然后将事务处理与数据源管理对程序屏蔽。从每个service独立配置代理到动态代理和AOP,带来的是编程的简便性,也增加了理解复杂性。