分类 思想决定高度 下的文章

PHP程序员如何理解IoC/DI

思想

思想是解决问题的根本

思想必须转换成习惯

构建一套完整的思想体系是开发能力成熟的标志

——《简单之美》(前言)

.

“成功的软件项目就是那些提交产物达到或超出客户的预期的项目,而且开发过程符合时间和费用上的要求,结果在面对变化和调整时有弹性。”

——《面向对象分析与设计》(第3版)P.236

术语介绍

——引用《Spring 2.0 技术手册》林信良

非侵入性 No intrusive

框架的目标之一是非侵入性(No intrusive)

组件可以直接拿到另一个应用或框架之中使用

增加组件的可重用性(Reusability)

容器(Container)

管理对象的生成、资源取得、销毁等生命周期

建立对象与对象之间的依赖关系

启动容器后,所有对象直接取用,不用编写任何一行代码来产生对象,或是建立对象之间的依赖关系。

- 阅读剩余部分 -

C语言中.h和.c文件解

简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:

1.预处理阶段

2.词法与语法分析阶段

3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件)

4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格式信息。(生成.exe文件)

编译器在编译时是以C文件为单位进行的,也就是说如果你的项目中一个C文件都没有,那么你的项目将无法编译,连接器是以目标文件为单位,它将一个或多个目标文件进行函数与变量的重定位,生成最终的可执行文件,在PC上的程序开发,一般都有一个main函数,这是各个编译器的约定,当然,你如果自己写连接器脚本的话,可以不用main函数作为程序入口!!!!

(main .c文件 目标文件 可执行文件)

有了这些基础知识,再言归正传,为了生成一个最终的可执行文件,就需要一些目标文件,也就是需要C文件,而这些C文件中又需要一个main函数作为可执行程序的入口,那么我们就从一个C文件入手,假定这个C文件内容如下:

#include <stdio.h>
#include "mytest.h"
int main(int argc,char **argv) { 
    test = 25;
    printf("test.................%d\n",test);
}

- 阅读剩余部分 -

MySQL 高可用架构在业务层面的分析研究

相对于传统行业的相对服务时间9x9x6或者9x12x5,因为互联网电子商务以及互联网游戏的实时性,所以服务要求7*24小时,业务架构不管是应用还是数据库,都需要容灾互备,在mysql的体系中,最好通过在最开始阶段的数据库架构阶段来实现容灾系统。所以这里从业务宏观角度阐述下mysql架构的方方面面。

一,MySQL架构设计—业务分析

1)读多写少

虚线表示跨机房部署,比如电子商务系统,一个Master既有读也有些写,对读数据一致性需要比较重要的,读要放在Master上面。

M(R)仅仅是一个备库,只有M(WR)挂了之后,才会切换到M(R)上,这个时候M(R)就变成了读写库。比如游戏系统,有很多Salve会挂载后面一个M(R)上面。

- 阅读剩余部分 -

让团队工作效率提升10倍的“三点式”管理法

最近一位创业的老友找到了我,聊起他新近启动的移动互联网项目,席间不断流露出对现有团队不能很好理解和执行他想法的不满,最后干脆请我帮他介绍能做运营的人来负责。说实话,很多思路都不错,他说的很兴奋,乍一听也觉得很新鲜,但一个多小时旁听下来,他说了很多点,但接下来要做什么我怎么也没办法帮他理出个头绪来 。我想他在和他的团队沟通时,也一定慷慨陈词,但接下来具体要做什么,团队恐怕一直没搞清楚,这也应该是他对团队不满的症结点。

我不得不打断他的讲话,问他:“你是不是觉得你的团队执行力不够?”

“是啊,讲了半天,要么没明白我说什么,要么做的就不是我想要的。”

“那你自己能说明白你想要的是什么吗?不要说多,你能用一张纸把你接下来一段时间最想要做的三、五件事情写下来?”

“……”,我的朋友没说话,估计心里已经开始盘算那三、五件事情了。

我接着问:“你确保团队每个核心骨干也和你一样清楚,你接下来一段时间最想要做的那三、五件事情吗?你又和他们说清楚这三、五件事情干成什么样才算干好吗?”

“……”,这下他彻底陷入了沉思。

这样的情况我们在日常的管理工作中会遇到很多,当执行力出问题的时候,往往是团队不知道干什么,或者不知道怎么干的时候。我们通常所说的管理,实际上是由“管”和“理”两部分组成,所谓“管”就是规范、要求和目标;而“理”是梳理、路径和激励。想要提升执行力,就要通过“管”和“理”,来制定好目标,也就是管理者一段时间内最想做的事情;梳理好实施路径,也就是管理者要制定可量化的指标来推动目标的实现情况。

实际工作中,不管是推进一个项目,还是做一个活动,或是领导业务团队等等,我们往往会遇到一堆事情和问题,对于管理者来说,发现问题已经不是能力,能够迅速的从一堆问题中找到最当务之急需要解决的重点工作,才是能力。显然这还不够,能够带领团队出色的完成任务,在时间节点内,把重点工作做出亮点,这才是优秀的管理者应该具备的能力。这就是我认为的管理者带领团队,提升执行力,达成目标的“抓重点、做亮点、定节点”的“三点式”管理法。

- 阅读剩余部分 -

月薪30000的牛人这样写邮件

先看一个故事:

故事1 与人方便,自己方便

有两个能力相同,成绩都很好,经历也都差不多的学生,一位叫田宜龙,一位叫王裕源。

有位知名教授今年只招收一名博士生,田宜龙和王裕源都想争取这个名额,于是他们分头写了差不多的简历,寄给教授。

不太一样的是,田宜龙把简历写好,装进信封、写好地址、贴上邮票就寄出去了。

而王裕源同学则多了一个心眼,他在装简历的信封里,放了一个写着自己名字、地址、邮编并贴好邮票的空信封。

结果大家可能都猜得到——王裕源被录取了。

大家是不是觉得王裕源同学好贼啊?

再看一个故事:

故事2 和他一起做事很舒服

在上家公司有一位同事张志勇,三年多时间,从一名普通的java开发工程师做到了子公司的副总裁。

由于工作的性质,经常能接触到公司几位老总,有一次听到他们对张志勇的评价:

跟他一起做事情总感觉很舒服,其他工作能力且不说,仅在发邮件这一件事情上,在有重要邮件时,他一定会很快回复:收到了,然后简单说明会怎样的安排;在执行过程中又会定期邮件反馈事情的进展。

腹黑地说,张志勇真狡猾,在邮件这个很容易闪光的点上,他做的非常出彩。

当我们盯着别人看——“为什么是他”的时候,最好多想一想——“为什么不是我?”

当我们觉得王裕源同学很贼,张志勇很狡猾的时候,我们不妨想一想他们思考的出发点是什么?

多为他人着想把事情做在前面

做人按这个思想去做,朋友多

做事按这个思想去做,效率高

邮件按这个思想去写,升值快

上面这个字是“值”哦

- 阅读剩余部分 -