12月18~31技术

  1、软件开发中的11个系统思维定律
彼得·圣吉在其著作《第五项修炼》中提到的系统思维定律同样适用于软件开发。
1. 今日的问题源于昨日的解决方案(Today’s problems come from yesterday’s solutions)
2. 用力越大,系统的反作用力也越大(The harder you push, the harder the system pushes back)
3. 福兮祸之所伏(Behavior grows better before it grows worse)
4. 最容易出去的方法往往会导致返回来(The easy way out usually leads back in)
在生活中学到的一些解决方案能够帮助我们轻易地并且更早的地获得成功。我们总是试图把它们强加到任何情形上,而忽略了特殊的背景以及相关人员。
5. 治疗带来的结果可能会比疾病导致后果更严重(The cure can be worse than the disease)

6. 欲速则不达(Faster is slower)
当我们看到成功的曙光,我们会全力以赴,不再小心谨慎。然而,最优增长速率通常会比可能的最快增长速率要慢得多。
7. 在时间和空间上,因果并不密切相关(Cause and effect are not closely related in time and space)
8. 微小的改变可以产生明显的效果,但这种杠杆效应最大的地方往往也最不明显(Small changes can produce big results-but the areas of highest leverage are often the least obvious)
开发者为系统的每项功能设计自动化单元测试。因此,设计更灵活、人们更自信、系统在每此修改之后都能得到完全的测试。

9. 鱼与熊掌可以兼得,但不是同时兼得(You can have your cake and eat it too – but not at once)

10. 把一头大象分两半不会得到两头大象(Dividing an elephant in half does not produce two small elephants)
11. 无可非议(There is no blame)



要掌握系统思维方式并控制这些系统,我们需要做到如下几点:

    1. 要明白我们是在跟什么样的系统打交道,是人或是软件;

    2. 有意识地学习相互关系、因果链;

    3. 把系统看做一个整体,并且视其为其他系统的一部分。

系统思维方面有很多挑战,通过获取并且利用有关系统工作方式的知识,我们可以战胜其中的很多挑战。但是,大部分严峻挑战是我们人类与之相冲突的本性。我们的激情、感情以及本能可以轻易改变我们理智、条理分明的思维方式。掌握系统思维方式的第一步就是要学习如何跟自己合作。


二、WebSphere之父:这个产品是我一生所犯最大的技术错误
目前最大的技术问题是IT系统本身太复杂了,它阻碍了企业更加敏捷和高效
现在IT部门75%~85%的预算都花在维持自身运转上,根本没有多少精力来创新

三、亚马逊Kindle幕后功臣:以色列人和甲骨文
Windows、ICQ、杀毒软件、手机技术——以色列拥有一大堆的研发成果,尽管未必是完全自从零开始的,但现代生活的许多重要技术却源于以色列


12、年中总结会上的经验体会(脱水版)
    .1.重构,伴随着整个软件开发过程,大到软件需求评审会上的需求变更,小到一时灵感对变量的命名,重构不挑食,重构无处不在。
    2.从现在起,开始考虑代码质量。
    3.时时刻刻考虑程序的健壮性和异常,即使过单行道的时候都会向道路两边看看再过去。
    4.代码就像你的左脚,测试就像你的右脚。
    5.虽然软件开发是一个团队活,但是独立开发一些比较有价值的小工具,感觉也不错。
    6.学习需要坚持,特别是看别人的代码。

13、google wave:将个人通信和协作工具,基于web服务+计算平台+通信协议
    旨在合并电子邮件、即时通信, wiki和社交网络

14、 谷歌首席工程师:坚持算法原则,不掺主管色彩

15、 微软展示"Montage"概念,将搜索结果做成画册

16、 Linux的localhost,hostname,127.0.0.1和Ip这些是依靠什么实现的?
     127.0.0.1是由内核实现的....
     windows是在
     C:\Windows\System32\drivers\etc下
     Linux一般说来host是在/etc/hosts这个文件中实现的;
     127.0.0.1 localhost
     xxxx(ip)    yyy(hostname)
     主机名当然也可以用dns来实现,但是先查询本地的host文件还是先查询dns则的看/etc/host.conf文件里面的order关键词是如何定义的;

17、 mysql查询系统当前时间
     select now();
     select current_time(),current_DATE(), current_timestamp();


18、 LInux查询系统当前时间: #date
19、 一接到任务就开始Coding的程序员,通常就是加班最多的程序员

20、 软件打补丁的原理是什么?如何给软件打补丁?
    和update类似,修改了一些问题然后用这些新东西替换原来的东东...

    Apusic打补丁的方式:
    A、 如果是class文件,放入工程的classes下面对应的目录中
    B、 如果是Jar包,则放在工程sp目录下
        Apusic在加载时会优先加载sp目录下的东东

21、 JAVA程序执行顺序
   静态块——块——构造器
   JAVA中赋值顺序:
   静态块直接赋值——块直接赋值——父类继承的属性赋值——静态变量声明时赋值——成员变量声明时赋值——构造器赋值

22、 关于IP
  0.0.0.0
  127.0.0.1
  真实ip

0.0.0.0为windows对所有位置IP的地址的描述,包括网卡dhcp,取得的地址,pppoe的ip及其他非本机指定的Ip,代表默认网络。帮助路由器发送路由表中无法查询的包;
如果设置了全零网段的路由,路由表中无法查询的包都将送到全零网络中去... ...



   关于这三者的表现, 在命令行下键入 telnet进行测试

23、 #ps -ef |grep datacenter
     #jps
     #jconsole
     #jstack PID 目录
tl非常善于在命令行下使用手册解决问题


24、 如何在图上画线/圆圈/添加注释?
    photoshop
    fireworks
    ms paint

25、 excel中如何输入身份证号码?
   ^_^ ^_^ 默认的excel会将身份证以科学计数法的形式表示
   ——在前面添加一个'即可,其形式为: ‘身份证号

26、 cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已被Redhat收购)。它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对cygwin产生了兴趣。

27、 为什么家用电都是使用的交流电而非直流电,为什么电池又是使用的直流电呢



因为交流电是不能被储存的,你见过什么电器备用的是交流电池的吗?或者有见过交流电池吗? 答案是没有的!
  所谓备用电池就是没有市电的时候能使用电设备正常使用的供电设备。
基站是24小时工作的,所以不能有断电的事发生,所以要用备用电池供电,一般基站的功率都很大,所心要用到很多电池组才能维持它的有时间正常工作。
  一般情况下基站的备用供电是这样的:用市电的时候就给电池组供电,一但发生了断电,就立即自动切换到备用电池组。但备用电池组是要通过大功率的逆变器将它的低压直流变成高压交流来使用,不过也有可能直接用备用的直流给基站供电的。

   交流电即交变电流,大小和方向都随时间做周期性变化的电流。直流电则相反。电网公司一般使用交流电方式送电,但有高压直流电用于远距离大功率输电、海底电缆输电、菲同步的交流系统之间的联络等

电流的方向与大小不同

家庭用的电,是由发电机所发出来的电,为交流电;而干电池则是利用化学变化制造出来的电,为直流电。

交流电与直流电的电功能是相同的,但是流动方向却不同。

直流电的电流是以同样的强度朝同样的方向流动;而交流电,则其电流强度与方向具有周期性和规律的变化.这个变化称为频率(赫=Hz),现在世界各地大多数是使用50赫的电


由于输电线上功率的损耗与电流的平方成正比,为了进行远程输电,必须提高电压,对于直流电,电压高于500伏就会出现各种技术上无法解决的难题,这导致当时直流输电系统的输电距离非常短。

现在随着技术的进步,直流输电也变为一种新潮流。



28、掌握一门语言的标准流程
语法——常用方式练习——应用模式学习,需求学习和源码学习——工程化应用,阅读大型、超大型的开源代码,了解一个软件的过程——参与开发将技术应用到实际中
    .选择一个稳定的操作系统、编辑器
    .建立自己的源码库,把常用的代码,别人的经典代码都拷贝到资源库
    .卓越的能力源于卓越的工具
    .高精度调试


你可能感兴趣的:(windows,linux,软件测试,Excel,网络应用)