[img]attachment/%e6%9c%aa%e5%91%bd%e5%90%8d.bmp[/img]#include <stdio.h>
main()
{
int i=0,j=0;
float a[3][3]={0,1,2,3,4,5,6,7,8};
printf("&a[0]=%p\n",a[0]);
printf("&a[1]=%p\n",a[1]);
printf("&a[2]=%p\n\n",a[2]);
printf("&a[0][0]=%p\n",&a[0][0]);
printf("&a[1][0]=%p\n",&a[1][0]);
printf("&a[2][0]=%p\n",&a[2][0]);
printf("&a[2][2]=%p\n",&a[2][2]);
printf("\n&a[0]+1=%p\n",a[0]+1);
printf("&a[1]+1=%p\n",a[1]+1);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("\na[%d][%d]=%p\t",i,j,&a[i][j]);
}
}
for(i=0;i<3;i++)
{
printf("\na+%d=%p\n\n",i,a+i);
}
//printf("%f\n",*(a[1]+2));
printf("sizeof:a[0]==%d\n",sizeof(a[0]));
printf("sizeof:a[1]==%d\n",sizeof(a[1]));
printf("sizeof:a[2]==%d\n",sizeof(a[2]));
printf("\nsizeof a = %d\n",sizeof(a));
for(i=0;i<3;i++)
{
printf("\n&(a[0]+%d)=%p\n",i,a[0]+i);
}
for(i=0;i<3;i++)
{
printf("\n&(a[1]+%d)=%p\n",i,a[1]+i);
}
for(i=0;i<3;i++)
{
printf("\n&(a[2]+%d)=%p\n",i,a[2]+i);
}
printf("\n&a+0=%p\n",a+0);
printf("\n&a+1=%p\n",a+1);
printf("\n&a+2=%p\n",a+2);
printf("&(a[1]+2)=%p\n",a[1]+2);
printf("\na[1]+2=%f\n",*(a[1]+2));
printf("&(a+1)=%p\n",a+1);
printf("a+1=%f\n",*(a+1));
}
float a[3][3]={0,1,2,3,4,5,6,7,8};
&a[0]=0xbfbfeac0
&a[1]=0xbfbfeacc
&a[2]=0xbfbfead8
&a[0][0]=0xbfbfeac0
&a[1][0]=0xbfbfeacc
&a[2][0]=0xbfbfead8
&a[2][2]=0xbfbfeae0
a[0][0]=0xbfbfeac0
a[0][1]=0xbfbfeac4
a[0][2]=0xbfbfeac8
a[1][0]=0xbfbfeacc
a[1][1]=0xbfbfead0
a[1][2]=0xbfbfead4
a[2][0]=0xbfbfead8
a[2][1]=0xbfbfeadc
a[2][2]=0xbfbfeae0
a+0=0xbfbfeac0
a+1=0xbfbfeacc
a+2=0xbfbfead8
sizeof a = 36
sizeof:a[0]==12
sizeof:a[1]==12
sizeof:a[2]==12
&(a[0]+0)=0xbfbfeac0
&(a[0]+1)=0xbfbfeac4
&(a[0]+2)=0xbfbfeac8
&(a[1]+0)=0xbfbfeacc
&(a[1]+1)=0xbfbfead0
&(a[1]+2)=0xbfbfead4
&(a[2]+0)=0xbfbfead8
&(a[2]+1)=0xbfbfeadc
&(a[2]+2)=0xbfbfeae0
&a+0=0xbfbfeac0
&a+1=0xbfbfeacc
&a+2=0xbfbfead8
&(a[1]+2)=0xbfbfead4
a[1]+2=5.000000
&(a+1)=0xbfbfeacc
a+1=5.000003
main()
{
int i=0,j=0;
float a[3][3]={0,1,2,3,4,5,6,7,8};
printf("&a[0]=%p\n",a[0]);
printf("&a[1]=%p\n",a[1]);
printf("&a[2]=%p\n\n",a[2]);
printf("&a[0][0]=%p\n",&a[0][0]);
printf("&a[1][0]=%p\n",&a[1][0]);
printf("&a[2][0]=%p\n",&a[2][0]);
printf("&a[2][2]=%p\n",&a[2][2]);
printf("\n&a[0]+1=%p\n",a[0]+1);
printf("&a[1]+1=%p\n",a[1]+1);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("\na[%d][%d]=%p\t",i,j,&a[i][j]);
}
}
for(i=0;i<3;i++)
{
printf("\na+%d=%p\n\n",i,a+i);
}
//printf("%f\n",*(a[1]+2));
printf("sizeof:a[0]==%d\n",sizeof(a[0]));
printf("sizeof:a[1]==%d\n",sizeof(a[1]));
printf("sizeof:a[2]==%d\n",sizeof(a[2]));
printf("\nsizeof a = %d\n",sizeof(a));
for(i=0;i<3;i++)
{
printf("\n&(a[0]+%d)=%p\n",i,a[0]+i);
}
for(i=0;i<3;i++)
{
printf("\n&(a[1]+%d)=%p\n",i,a[1]+i);
}
for(i=0;i<3;i++)
{
printf("\n&(a[2]+%d)=%p\n",i,a[2]+i);
}
printf("\n&a+0=%p\n",a+0);
printf("\n&a+1=%p\n",a+1);
printf("\n&a+2=%p\n",a+2);
printf("&(a[1]+2)=%p\n",a[1]+2);
printf("\na[1]+2=%f\n",*(a[1]+2));
printf("&(a+1)=%p\n",a+1);
printf("a+1=%f\n",*(a+1));
}
float a[3][3]={0,1,2,3,4,5,6,7,8};
&a[0]=0xbfbfeac0
&a[1]=0xbfbfeacc
&a[2]=0xbfbfead8
&a[0][0]=0xbfbfeac0
&a[1][0]=0xbfbfeacc
&a[2][0]=0xbfbfead8
&a[2][2]=0xbfbfeae0
a[0][0]=0xbfbfeac0
a[0][1]=0xbfbfeac4
a[0][2]=0xbfbfeac8
a[1][0]=0xbfbfeacc
a[1][1]=0xbfbfead0
a[1][2]=0xbfbfead4
a[2][0]=0xbfbfead8
a[2][1]=0xbfbfeadc
a[2][2]=0xbfbfeae0
a+0=0xbfbfeac0
a+1=0xbfbfeacc
a+2=0xbfbfead8
sizeof a = 36
sizeof:a[0]==12
sizeof:a[1]==12
sizeof:a[2]==12
&(a[0]+0)=0xbfbfeac0
&(a[0]+1)=0xbfbfeac4
&(a[0]+2)=0xbfbfeac8
&(a[1]+0)=0xbfbfeacc
&(a[1]+1)=0xbfbfead0
&(a[1]+2)=0xbfbfead4
&(a[2]+0)=0xbfbfead8
&(a[2]+1)=0xbfbfeadc
&(a[2]+2)=0xbfbfeae0
&a+0=0xbfbfeac0
&a+1=0xbfbfeacc
&a+2=0xbfbfead8
&(a[1]+2)=0xbfbfead4
a[1]+2=5.000000
&(a+1)=0xbfbfeacc
a+1=5.000003
一些c 常见技巧
/*砍掉字符串中所有空格*/
void CUT_ALL_SPC(char *s)
{
int i,n;
char d[10000];
n=0;
for(i=0;i
if(s[i]!=32)
{
d[n]=s[i];
n++;
}
d[n]=0;
strcpy(s,d);
}
/*砍掉字符串左边空格*/
void CUT_LEFT_SPACE(char *s)
{
int i,j,k=0;
i=strlen(s)+1;
for(j=0;j
for(k=0;j
}
/*砍掉字符串右边空格*/
void CUT_RIGHT_SPACE(char *s)
{
int i,j;
i=strlen(s)-1;
for(j=i;j>-1;j--) if (s[j]!=' ') break;
s[j+1]=0;
}
/*获取机器日期*/
int DATE(char *s,char type)
{
char dat[30];
int num;
struct tm *tblock;
time_t t;
t=time(NULL);
tblock=localtime(&t);
strcpy(dt,asctime(tblock));
strcpy(s,"");
switch(type)
{
case 'N':
num=(*tblock).tm_year+1900;
itoa(num,s,10);
break;
case 'Y':
num=(*tblock).tm_mon+1;
itoa(num,s,10);
break;
case 'R':
num=(*tblock).tm_mday;
itoa(num,s,10);
break;
case 'S':
strcpy(dt,asctime(tblock));
MID(s,dt,12,8);
break;
}
}
return num;
}
/*成批拷贝文件*/
int CopyFile(char *sfile,char *dfile,int f2d,int barlong,int height,int x,int y)
{
int Copyfile(char *sf,char *df);
int MakeNdir(char *Dir);
char filename[200][13],d[40],s[40],s1[40];
struct ffblk ffblk;
int done,i,j,l,len;
i=0;
done=findfirst(sfile,&ffblk,0);
if (!done) strcpy(filename[i],ffblk.ff_name);
while(!done)
{
done=findnext(&ffblk);
if (!done)
{
i++;
strcpy(filename[i],ffblk.ff_name);
}
}
if (f2d)
{
Copyfile(sfile,dfile);
return 1;
}
strcpy(s,sfile);
l=strlen(sfile);
for(j=l-1;j>=0;j--)
if (s[j]=='')
{
s[j+1]=0;
break;
}
/*拷贝一个文件*/
int Copyfile(char *sf,char *df)
{
FILE *in,*out;
char ch;
in=0;
out=0;
if ((in=fopen(sf,"rb"))==NULL)
exit(0);
if ((out=fopen(df,"wb"))==NULL)
exit(0);
while(!feof(in))
{
ch=fgetc(in);
if (ferror(in)) return 0;
fputc(ch,out);
if (ferror(out)) return 0;
}
fclose(in);
fclose(out);
return 1;
}
/*建立目录*/
int MakeNdir(char *Dir)
{
int i,l,j;
char s[10][40];
j=0;
l=strlen(Dir);
for(i=0;i
if (Dir[i]=='')
{
LEFT(s[j],Dir,i);
j++;
}
strcpy(s[j],Dir);
for(i=0;i<=j;i++)
if (access(s[i],0)) mkdir(s[i]);
return 1;
}
/*得到目录*/
int GetDir(char *dirF,char dataK[][14])
{
struct ffblk ffblk;
int done;
int i;
i=0;
done=findfirst(dirF,&ffblk,FA_DIREC);
while(!done)
{
if (ffblk.ff_attrib==16||ffblk.ff_attrib==17)
{
strcpy(dataK[i],ffblk.ff_name);
strcat(dataK[i],"");
i++;
}
done=findnext(&ffblk);
}
return i;
}
/*得到文件名*/
int GetFile(char *dirF,char dataK[][14])
{
struct ffblk ffblk;
int done;
int i;
i=0;
done=findfirst(dirF,&ffblk,0);
while(!done)
{
strcpy(dataK[i],ffblk.ff_name);
done=findnext(&ffblk);
i++;
}
return i;
}
/*砍掉字符串中所有空格*/
void CUT_ALL_SPC(char *s)
{
int i,n;
char d[10000];
n=0;
for(i=0;i
if(s[i]!=32)
{
d[n]=s[i];
n++;
}
d[n]=0;
strcpy(s,d);
}
/*砍掉字符串左边空格*/
void CUT_LEFT_SPACE(char *s)
{
int i,j,k=0;
i=strlen(s)+1;
for(j=0;j
for(k=0;j
}
/*砍掉字符串右边空格*/
void CUT_RIGHT_SPACE(char *s)
{
int i,j;
i=strlen(s)-1;
for(j=i;j>-1;j--) if (s[j]!=' ') break;
s[j+1]=0;
}
/*获取机器日期*/
int DATE(char *s,char type)
{
char dat[30];
int num;
struct tm *tblock;
time_t t;
t=time(NULL);
tblock=localtime(&t);
strcpy(dt,asctime(tblock));
strcpy(s,"");
switch(type)
{
case 'N':
num=(*tblock).tm_year+1900;
itoa(num,s,10);
break;
case 'Y':
num=(*tblock).tm_mon+1;
itoa(num,s,10);
break;
case 'R':
num=(*tblock).tm_mday;
itoa(num,s,10);
break;
case 'S':
strcpy(dt,asctime(tblock));
MID(s,dt,12,8);
break;
}
}
return num;
}
/*成批拷贝文件*/
int CopyFile(char *sfile,char *dfile,int f2d,int barlong,int height,int x,int y)
{
int Copyfile(char *sf,char *df);
int MakeNdir(char *Dir);
char filename[200][13],d[40],s[40],s1[40];
struct ffblk ffblk;
int done,i,j,l,len;
i=0;
done=findfirst(sfile,&ffblk,0);
if (!done) strcpy(filename[i],ffblk.ff_name);
while(!done)
{
done=findnext(&ffblk);
if (!done)
{
i++;
strcpy(filename[i],ffblk.ff_name);
}
}
if (f2d)
{
Copyfile(sfile,dfile);
return 1;
}
strcpy(s,sfile);
l=strlen(sfile);
for(j=l-1;j>=0;j--)
if (s[j]=='')
{
s[j+1]=0;
break;
}
/*拷贝一个文件*/
int Copyfile(char *sf,char *df)
{
FILE *in,*out;
char ch;
in=0;
out=0;
if ((in=fopen(sf,"rb"))==NULL)
exit(0);
if ((out=fopen(df,"wb"))==NULL)
exit(0);
while(!feof(in))
{
ch=fgetc(in);
if (ferror(in)) return 0;
fputc(ch,out);
if (ferror(out)) return 0;
}
fclose(in);
fclose(out);
return 1;
}
/*建立目录*/
int MakeNdir(char *Dir)
{
int i,l,j;
char s[10][40];
j=0;
l=strlen(Dir);
for(i=0;i
if (Dir[i]=='')
{
LEFT(s[j],Dir,i);
j++;
}
strcpy(s[j],Dir);
for(i=0;i<=j;i++)
if (access(s[i],0)) mkdir(s[i]);
return 1;
}
/*得到目录*/
int GetDir(char *dirF,char dataK[][14])
{
struct ffblk ffblk;
int done;
int i;
i=0;
done=findfirst(dirF,&ffblk,FA_DIREC);
while(!done)
{
if (ffblk.ff_attrib==16||ffblk.ff_attrib==17)
{
strcpy(dataK[i],ffblk.ff_name);
strcat(dataK[i],"");
i++;
}
done=findnext(&ffblk);
}
return i;
}
/*得到文件名*/
int GetFile(char *dirF,char dataK[][14])
{
struct ffblk ffblk;
int done;
int i;
i=0;
done=findfirst(dirF,&ffblk,0);
while(!done)
{
strcpy(dataK[i],ffblk.ff_name);
done=findnext(&ffblk);
i++;
}
return i;
}
一 家用高性价比标准配置 平台AMD!!
1.CPU:AMD Athlon64 X2 4000+ AM2(65纳米/盒)
参考价格:465
入选原因:1.几乎没有假盒,因为散装4000+单加杂牌风扇还要2次包装之后利润几乎是0。
2.体制好,配合一般的主板,在不加风冷和电压的情况下几乎全都能稳定超到4800+使用,而且相当稳定。相当于花465元买到了价值710的产品。
2.主板:捷波 悍马HA02-GT
参考价格:580
入选原因: 1.采用的是570x的主芯片组,做工精良。配合4000+稳定的运行在4800+甚至更高。配合AMD的CPU和ATi的显卡组成传说中的3A. 兼容性现在以不是问题,但这样的组合更给人自信。570X的芯片组也是现在组建A平台的最佳主流选择。
2.现在的570x的主板几乎都是捷波的代工,虽然这款是价格最高的,但是毫无疑问也是性能最稳定,做工最奢华的。我自己用的是盈通的A570X,其实就是这款主板的简化版,只是简化了一个供电和散热 ,但价格便宜了180。稳超4800+!
3.显卡:蓝宝石 X1950GT黄金版
参考价格:790
入选原因:显卡这一块,确实很难选择,但是考虑到整机的价位水准和使用性的话,我还是给大家推荐1950GT.目前所有的DX9.0游戏1950GT都能给大家一个满意的成绩。而且这个价格也是相当到位。蓝宝石这个牌子在论坛里的口碑更不用说。
4.硬盘:希捷 160G 7200.10 8M(串口/5年盒)
参考价格:465
入选理由:大家共同的选择,虽然希捷硬盘的价格偏贵,但是毕竟是5年的质保,也算给大家一个心理安慰吧。我自己用的是日立的,这里还是给大家推荐了希捷,为什么?因为这是论坛里面大多数人的选择,少数服从多数的选择。160G硬盘对家用来说已经足够了,配合刻录机使用,我个人觉得更大的硬盘完全没有必要。80G的话,现在来说,确实有点落伍了,不是么?
5.内存:Kingmax 1GB DDR2 800 Long-DIMM
Kingmax 1GB DDR2 800 Long-DIMM
参考价格:185+185=370
入选理由:最可靠,最便宜的800内存之一。2G双通道轻松对应现在的各种电脑使用环境。
其实667也是很好的选择,我在这里推荐800是因为以后的延续性更好,而且这个价位,确实也不贵。
6.机箱:新战线新灵830
参考价格:185
入选理由:机箱这个东东,大家各有所爱,但是这款机箱确实是相同价位中,做工最扎实!设计最精良!价格最便宜!最人性化的。很像品牌机的机箱,模样中规中矩。本人使用的就是这个,怎么说也是在中关村转了一天之后的选择。所以特别推荐给大家。
7.电源:航嘉 磐石400
参考价格:280
入选理由:额定功率350w,最大输出450w。配合以上推荐的配置,游刃有余。可以完全发挥出个配件的性能,稳定,安静,可靠。航嘉长城这些电源的口碑还是很好的,在论坛里面的选择也是最多的。
3.DVD LG GSA-H55L
参考价格:280
入选理由:DVD刻录的选择很多,这个还可以,带光雕。
整体价格:3415左右!
配合22寸/24寸液晶显示器,家用经典大众主流电脑。以上配件稳定,可靠,没有任何兼容问题,没有任何使用中的瓶颈。还可以适当超频(4000+到4800+稳定)。性价比高。当然,很多配件朋友们还可以找到更便宜的代替,我自己也是这样做的,但是以上配置绝对是今年论坛里面最经典的一套。
整理一下
CPU P4 620 1200元
RAM DDR2 533 kingston/kingmax 512M 300元
HardDisk 160G SATA 500元
VideoCard 双敏7058 Turbo 699元
MotherBoard ASUS P5PL2 999元
Monitor samsung or viewsonic 1040
DVD-ROM 190元 or DVD-RW 399元
其他 300元
总价5200元左右吧,虽然比很多人期望的5000元的价格贵了200元,但是,你在使用的时候却远远不是这500元可以买到的,东西虽贵,但是值得。最后就是装机的时候要祝你好运
===============================================================
还有个`设计的话CPU最好用Intel 游戏最好用AMD
显示器 明基 FP71G+s 1980元 示器主色为银色,响应时间为8ms,具备DVI数字接口,显示效果不错
显示器 三星710N 12ms 2200元 (17寸液晶显示器)
光驱 BenQ 1650V 180元
音箱 慧海 乐吧D-102 150元 慧海的音箱更是使整套配置充满了时尚的气息,再搭配一台轻薄的17寸液晶显示器,更体现出了机主MM的简洁、大方。
漫步者 R101T06
机箱 永阳YY-A209 250元(挺漂亮的)
鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元
罗技 光电高手800套装
整机主要以白色和银色为主,既美观,又不会造成颜色的巨大反差。
美观虽然很重要,但可不能作为选择的唯一参考,一定要在权衡了性能、价格、质量后再决定选购,切勿为了美观牺牲了性能。
cpu和内在的东西一定要强悍。。。思考中。。
内存:金士顿 800 1G RAM DDR2 533 kingston/kingmax 512M 300元
4.硬盘:希捷 160G 7200.10 8M(串口/5年盒)
参考价格:465
入选理由:大家共同的选择,虽然希捷硬盘的价格偏贵,但是毕竟是5年的质保,也算给大家一个心理安慰吧。我自己用的是日立的,这里还是给大家推荐了希捷,为什么?因为这是论坛里面大多数人的选择,少数服从多数的选择。160G硬盘对家用来说已经足够了,配合刻录机使用,我个人觉得更大的硬盘完全没有必要。80G的话,现在来说,确实有点落伍了,不是么?
5.内存:Kingmax 1GB DDR2 800 Long-DIMM
Kingmax 1GB DDR2 800 Long-DIMM
参考价格:185+185=370
入选理由:最可靠,最便宜的800内存之一。2G双通道轻松对应现在的各种电脑使用环境。
硬盘:西捷160G HardDisk 160G SATA 500元
MotherBoard ASUS P5PL2 999元
1.CPU P4 620 1200元
2.CPU:AMD Athlon64 X2 4000+ AM2(65纳米/盒)
入选原因:
1.几乎没有假盒,因为散装4000+单加杂牌风扇还要2次包装之后利润几乎是0。
2.体制好,配合一般的主板,在不加风冷和电压的情况下几乎全都能稳定超到4800+使用,而且相当稳定。相当于花465元买到了价值710的产品。
电源:航嘉 磐石400参考价格:280
电源长城350的+机箱240元左右
入选理由:额定功率350w,最大输出450w。配合以上推荐的配置,游刃有余。可以完全发挥出个配件的性能,稳定,安静,可靠。航嘉长城这些电源的口碑还是很好的,在论坛里面的选择也是最多的。
DVD-ROM 190元 or DVD-RW 399元
显卡7900/8600/8800系列的有钱就买8800
======================================================================
华硕945P主板型号为P5LD2 SE,采用Intel 945P+ICH7芯片组,不仅支持1066MHz的前端总线,同时还支持新一代65nm制程的单、双核CPU以及EM64T、EIST、Hyper-Threading等新技术。供电部分,采用三相供电设计,搭配品质过硬的松下电容,提供了良好的稳定性。扩展部分,主板提供了主流的一个PCI-E X16、两个PCI-E 1X、三个传统的PCI插槽。内存方面,主板具备四根可支持DDR2 667的内存插槽,最大容量可扩充至4G,足以应付日常使用。另外,主板集成千兆网卡以及5.1声道声卡。
编辑点评:
虽然此款主板在这5款主板中是最贵的,基本已经达到945系列主板的价格顶峰,基本同965系列的二线主板一个价位,但华硕主板的品质在广大消费支心中还是有一定影响力的。且这款主板的规格确实是相当高。对于800多元的价格还是说得过去的。
总结
P965与945之争早已由价格决定,价格又决定了其产品规格。如果您不是需要8个以上的USB口,更多的SATA接口,千兆网卡……,本着够用的就好的经济原则,选一片性能稳定的945主板搭建双核平台又有什么不可以的呢。
机箱 永阳YY-A209 250元
Kingmax 1GB DDR2 800 Long-DIMM 参考价格:185+185=370 2G双通道
硬盘:西捷160G HardDisk 160G SATA 500元
系列型号:Core 2 Duo(酷睿2) 1220元
电源长城350 150 元
华硕主板945p P5LD2 SE 豪华版本 700元
明基 FP94VW 1949元
鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元
机箱:永阳YY-A209 价格:250元; 内存:Kingmax 1GB DDR2 800 Long-DIMM 价格:185+185=370 组2G双通道;硬盘:西捷160G HardDisk 160G SATA 500元 cpu:Core 2 Duo(酷睿e6300) 1220元;电源:长城350 150 元; 主板:华硕主板945p P5LD2 SE 豪华版本 700元 液显:明基 FP94VW 1949元 鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元 光驱:BenQ 1650V 180元 合计(5439)
1.CPU:AMD Athlon64 X2 4000+ AM2(65纳米/盒)
参考价格:465
入选原因:1.几乎没有假盒,因为散装4000+单加杂牌风扇还要2次包装之后利润几乎是0。
2.体制好,配合一般的主板,在不加风冷和电压的情况下几乎全都能稳定超到4800+使用,而且相当稳定。相当于花465元买到了价值710的产品。
2.主板:捷波 悍马HA02-GT
参考价格:580
入选原因: 1.采用的是570x的主芯片组,做工精良。配合4000+稳定的运行在4800+甚至更高。配合AMD的CPU和ATi的显卡组成传说中的3A. 兼容性现在以不是问题,但这样的组合更给人自信。570X的芯片组也是现在组建A平台的最佳主流选择。
2.现在的570x的主板几乎都是捷波的代工,虽然这款是价格最高的,但是毫无疑问也是性能最稳定,做工最奢华的。我自己用的是盈通的A570X,其实就是这款主板的简化版,只是简化了一个供电和散热 ,但价格便宜了180。稳超4800+!
3.显卡:蓝宝石 X1950GT黄金版
参考价格:790
入选原因:显卡这一块,确实很难选择,但是考虑到整机的价位水准和使用性的话,我还是给大家推荐1950GT.目前所有的DX9.0游戏1950GT都能给大家一个满意的成绩。而且这个价格也是相当到位。蓝宝石这个牌子在论坛里的口碑更不用说。
4.硬盘:希捷 160G 7200.10 8M(串口/5年盒)
参考价格:465
入选理由:大家共同的选择,虽然希捷硬盘的价格偏贵,但是毕竟是5年的质保,也算给大家一个心理安慰吧。我自己用的是日立的,这里还是给大家推荐了希捷,为什么?因为这是论坛里面大多数人的选择,少数服从多数的选择。160G硬盘对家用来说已经足够了,配合刻录机使用,我个人觉得更大的硬盘完全没有必要。80G的话,现在来说,确实有点落伍了,不是么?
5.内存:Kingmax 1GB DDR2 800 Long-DIMM
Kingmax 1GB DDR2 800 Long-DIMM
参考价格:185+185=370
入选理由:最可靠,最便宜的800内存之一。2G双通道轻松对应现在的各种电脑使用环境。
其实667也是很好的选择,我在这里推荐800是因为以后的延续性更好,而且这个价位,确实也不贵。
6.机箱:新战线新灵830
参考价格:185
入选理由:机箱这个东东,大家各有所爱,但是这款机箱确实是相同价位中,做工最扎实!设计最精良!价格最便宜!最人性化的。很像品牌机的机箱,模样中规中矩。本人使用的就是这个,怎么说也是在中关村转了一天之后的选择。所以特别推荐给大家。
7.电源:航嘉 磐石400
参考价格:280
入选理由:额定功率350w,最大输出450w。配合以上推荐的配置,游刃有余。可以完全发挥出个配件的性能,稳定,安静,可靠。航嘉长城这些电源的口碑还是很好的,在论坛里面的选择也是最多的。
3.DVD LG GSA-H55L
参考价格:280
入选理由:DVD刻录的选择很多,这个还可以,带光雕。
整体价格:3415左右!
配合22寸/24寸液晶显示器,家用经典大众主流电脑。以上配件稳定,可靠,没有任何兼容问题,没有任何使用中的瓶颈。还可以适当超频(4000+到4800+稳定)。性价比高。当然,很多配件朋友们还可以找到更便宜的代替,我自己也是这样做的,但是以上配置绝对是今年论坛里面最经典的一套。
整理一下
CPU P4 620 1200元
RAM DDR2 533 kingston/kingmax 512M 300元
HardDisk 160G SATA 500元
VideoCard 双敏7058 Turbo 699元
MotherBoard ASUS P5PL2 999元
Monitor samsung or viewsonic 1040
DVD-ROM 190元 or DVD-RW 399元
其他 300元
总价5200元左右吧,虽然比很多人期望的5000元的价格贵了200元,但是,你在使用的时候却远远不是这500元可以买到的,东西虽贵,但是值得。最后就是装机的时候要祝你好运
===============================================================
还有个`设计的话CPU最好用Intel 游戏最好用AMD
显示器 明基 FP71G+s 1980元 示器主色为银色,响应时间为8ms,具备DVI数字接口,显示效果不错
显示器 三星710N 12ms 2200元 (17寸液晶显示器)
光驱 BenQ 1650V 180元
音箱 慧海 乐吧D-102 150元 慧海的音箱更是使整套配置充满了时尚的气息,再搭配一台轻薄的17寸液晶显示器,更体现出了机主MM的简洁、大方。
漫步者 R101T06
机箱 永阳YY-A209 250元(挺漂亮的)
鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元
罗技 光电高手800套装
整机主要以白色和银色为主,既美观,又不会造成颜色的巨大反差。
美观虽然很重要,但可不能作为选择的唯一参考,一定要在权衡了性能、价格、质量后再决定选购,切勿为了美观牺牲了性能。
cpu和内在的东西一定要强悍。。。思考中。。
内存:金士顿 800 1G RAM DDR2 533 kingston/kingmax 512M 300元
4.硬盘:希捷 160G 7200.10 8M(串口/5年盒)
参考价格:465
入选理由:大家共同的选择,虽然希捷硬盘的价格偏贵,但是毕竟是5年的质保,也算给大家一个心理安慰吧。我自己用的是日立的,这里还是给大家推荐了希捷,为什么?因为这是论坛里面大多数人的选择,少数服从多数的选择。160G硬盘对家用来说已经足够了,配合刻录机使用,我个人觉得更大的硬盘完全没有必要。80G的话,现在来说,确实有点落伍了,不是么?
5.内存:Kingmax 1GB DDR2 800 Long-DIMM
Kingmax 1GB DDR2 800 Long-DIMM
参考价格:185+185=370
入选理由:最可靠,最便宜的800内存之一。2G双通道轻松对应现在的各种电脑使用环境。
硬盘:西捷160G HardDisk 160G SATA 500元
MotherBoard ASUS P5PL2 999元
1.CPU P4 620 1200元
2.CPU:AMD Athlon64 X2 4000+ AM2(65纳米/盒)
入选原因:
1.几乎没有假盒,因为散装4000+单加杂牌风扇还要2次包装之后利润几乎是0。
2.体制好,配合一般的主板,在不加风冷和电压的情况下几乎全都能稳定超到4800+使用,而且相当稳定。相当于花465元买到了价值710的产品。
电源:航嘉 磐石400参考价格:280
电源长城350的+机箱240元左右
入选理由:额定功率350w,最大输出450w。配合以上推荐的配置,游刃有余。可以完全发挥出个配件的性能,稳定,安静,可靠。航嘉长城这些电源的口碑还是很好的,在论坛里面的选择也是最多的。
DVD-ROM 190元 or DVD-RW 399元
显卡7900/8600/8800系列的有钱就买8800
======================================================================
华硕945P主板型号为P5LD2 SE,采用Intel 945P+ICH7芯片组,不仅支持1066MHz的前端总线,同时还支持新一代65nm制程的单、双核CPU以及EM64T、EIST、Hyper-Threading等新技术。供电部分,采用三相供电设计,搭配品质过硬的松下电容,提供了良好的稳定性。扩展部分,主板提供了主流的一个PCI-E X16、两个PCI-E 1X、三个传统的PCI插槽。内存方面,主板具备四根可支持DDR2 667的内存插槽,最大容量可扩充至4G,足以应付日常使用。另外,主板集成千兆网卡以及5.1声道声卡。
编辑点评:
虽然此款主板在这5款主板中是最贵的,基本已经达到945系列主板的价格顶峰,基本同965系列的二线主板一个价位,但华硕主板的品质在广大消费支心中还是有一定影响力的。且这款主板的规格确实是相当高。对于800多元的价格还是说得过去的。
总结
P965与945之争早已由价格决定,价格又决定了其产品规格。如果您不是需要8个以上的USB口,更多的SATA接口,千兆网卡……,本着够用的就好的经济原则,选一片性能稳定的945主板搭建双核平台又有什么不可以的呢。
机箱 永阳YY-A209 250元
Kingmax 1GB DDR2 800 Long-DIMM 参考价格:185+185=370 2G双通道
硬盘:西捷160G HardDisk 160G SATA 500元
系列型号:Core 2 Duo(酷睿2) 1220元
电源长城350 150 元
华硕主板945p P5LD2 SE 豪华版本 700元
明基 FP94VW 1949元
鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元
机箱:永阳YY-A209 价格:250元; 内存:Kingmax 1GB DDR2 800 Long-DIMM 价格:185+185=370 组2G双通道;硬盘:西捷160G HardDisk 160G SATA 500元 cpu:Core 2 Duo(酷睿e6300) 1220元;电源:长城350 150 元; 主板:华硕主板945p P5LD2 SE 豪华版本 700元 液显:明基 FP94VW 1949元 鼠标、键盘 三星anypro 水系套装(水晶键+水之灵动) 120元 光驱:BenQ 1650V 180元 合计(5439)
计算的方法很简单,将你们姓名笔划的总数作比较,以大的数字减小的 ,例如:"水云烟"想知道自己和"沧海一粟"的关系是什么,要将自己名字的笔划(共18划)和"沧海一粟"名字的笔划(共31划)相减(即31-18),得出的数字是13——「适合你的人」,果然是很适合的版主,十分准确啊!
差值对照表:
0 亲密无间
1 永远和你在一起
2 水火不相容
3 知心朋友
4 心上人
5 帮你做事的人
6 帮你的人
7 面和心不合
8 男女关系不正常
9 情投意合
10 关系马虎
11 尊敬你的人
12 爱你的人
13 适合你的人
14 说你坏话的人
15 克星
16 救星
17 忠心的人
18 狼心狗肺的人
19 单相思
20 山盟海誓
21 情敌
22 服从你的人
23 永远在一起
24 伴终生
25 恨你又爱你
差值对照表:
0 亲密无间
1 永远和你在一起
2 水火不相容
3 知心朋友
4 心上人
5 帮你做事的人
6 帮你的人
7 面和心不合
8 男女关系不正常
9 情投意合
10 关系马虎
11 尊敬你的人
12 爱你的人
13 适合你的人
14 说你坏话的人
15 克星
16 救星
17 忠心的人
18 狼心狗肺的人
19 单相思
20 山盟海誓
21 情敌
22 服从你的人
23 永远在一起
24 伴终生
25 恨你又爱你

如果安装了securetCRT那么有一个好东西,
/usr/ports/comms/zmtx-zmrx
安装后,zmtx是用来发送文件,zmrx是用来接收文件 的。“接收”和“发送”是相对于FreeBSD的那台机器来说的。
出现没有那个目录,是没有安装Port:
root@iZ25z0ugwgtZ:~ # cd /usr/ports/comms/zm
/usr/ports/comms/ not found
root@iZ25z0ugwgtZ:~ # cd /usr/ports/comms/
/usr/ports/comms/: No such file or directory.
————————————————————————————————————————————————————
FreeBSD系统的一个非常方便的地方就是它的ports,如果系统没安装ports的话可用下面几种方式安装ports:
1、sysinstall--->configure----->distributions----->ports----->选择Ftp或其它的网络连接即可。
2、直接从官方站点下载ports.tar.gz再解压,这样很快。位置:ftp://ftp.freebsd.org/pub/FreeBSD/ports/ports/parts.tar.gz
3、如果是FreeBSD6。0,那么运行:
#portsnap fetch
#portsnap extract
#portsnap update
另外:
更新ports后,如果运行make search name=xxx不成功,请在/usr/ports下运行make fetchindex。
摘自:http://www.jb51.net/os/Unix/1484.html
————————————————————————————————————————————————————
root@iZ25z0ugwgtZ:~ # sysinstall
sysinstall: Command not found.
现在的freebsd 10已经没有了sysinstall 的命令了,已经换成bsdinstall 这个安装命令,和bsdconfig配置的这两个命令了,你要装mpd5可以用ports来安装
whereis mpd5
cd /usr/ports/net/mpd5
make fetch-recursive
make config-recursive
make install clean
这样就装上去了,然后就是修改配置文件,设定开机启动
/usr/ports/comms/zmtx-zmrx
安装后,zmtx是用来发送文件,zmrx是用来接收文件 的。“接收”和“发送”是相对于FreeBSD的那台机器来说的。
出现没有那个目录,是没有安装Port:
root@iZ25z0ugwgtZ:~ # cd /usr/ports/comms/zm
/usr/ports/comms/ not found
root@iZ25z0ugwgtZ:~ # cd /usr/ports/comms/
/usr/ports/comms/: No such file or directory.
————————————————————————————————————————————————————
FreeBSD系统的一个非常方便的地方就是它的ports,如果系统没安装ports的话可用下面几种方式安装ports:
1、sysinstall--->configure----->distributions----->ports----->选择Ftp或其它的网络连接即可。
2、直接从官方站点下载ports.tar.gz再解压,这样很快。位置:ftp://ftp.freebsd.org/pub/FreeBSD/ports/ports/parts.tar.gz
3、如果是FreeBSD6。0,那么运行:
#portsnap fetch
#portsnap extract
#portsnap update
另外:
更新ports后,如果运行make search name=xxx不成功,请在/usr/ports下运行make fetchindex。
摘自:http://www.jb51.net/os/Unix/1484.html
————————————————————————————————————————————————————
root@iZ25z0ugwgtZ:~ # sysinstall
sysinstall: Command not found.
现在的freebsd 10已经没有了sysinstall 的命令了,已经换成bsdinstall 这个安装命令,和bsdconfig配置的这两个命令了,你要装mpd5可以用ports来安装
whereis mpd5
cd /usr/ports/net/mpd5
make fetch-recursive
make config-recursive
make install clean
这样就装上去了,然后就是修改配置文件,设定开机启动
我一直都认为qq空间都是小孩子玩的游戏,成人嘛,就写写博客,看看色戒啥的,不过玲玲传给了我这个小游戏,我还是觉得挺幸福的哈哈。
请大家看好游戏规则:
1、被点到名字的要在自己的博客或者空间上写下答案,所有问题都要真实回答,并且要将这几个题目传给你的七个好朋友,通知对方“你被点名了”。
2、这七个人要在博客或者空间上注明是在哪接到的题目,并且再将题目传给其他七个朋友,让游戏继续下去,不得回传,被点名的人将得到大家的祝福,并且所有美丽的愿望都会在不久以后得以实现。
3、虽然不可以回点,但是你的朋友的朋友还是可能会点到你,如果有第二次,甚至第三次点到,那说明你将会是一个非常幸运和幸福的人。
4、答完题后,删除掉一个你想删除的问题,增加一个你想问的问题,然后传给你的朋友。
1. 现在对自己最重要的是什么?
不会变老
2. 在你眼里我是一个怎样的人?
开朗温柔善良 爱喝可乐 爱吃所有能导致脂肪肝的东西 一个黄白花小狗的主人(玲玲)
3. 你现在住在哪个城市,如果能够选择,你希望住在哪里?
北京 如果可以选择,我还是想一直呆在北京
4. 如果现在可以让你随心所欲去旅行,你想去哪?
最俗气的香港迪士尼,唉,不行的话就北京欢乐谷吧.
6. 最不喜欢什么类型的人?
钱奴,还有爱抱怨的人
7. 会不会做饭?你希望你的伴侣(未来的伴侣)会做饭吗?
会作,绝对的会作。无所谓了,他会洗碗就行
8.在你们眼里我的性格哪方面吸引人?
老请我吃饭哈哈(玲玲)
9. 如果你爱的人不爱你怎么办?
那我也不爱他了
10. 你msn现用的“名称”是什么,有什么含义?
旁孟儿--加菲语录:有时候活活撑死是一件多么幸福的事情啊
含义就是我喜欢加菲,就喜欢他那种冷幽默,活象s我了。
11. 你最喜欢你伴侣的什么?你希望你的伴侣具有什么品质?
喜欢他的体贴和幽默。我希望他能成熟和遵守承诺.
12. 谈谈你最近在听的音乐?
单田方《乱世枭雄》---张作霖的故事
13. 你会选择你爱的人还是爱你的人?
爱我的
14. 你觉得自己哪方面性格特征对别人最有吸引力?
hiahia,爱笑和幽默吧。(可是我并不认为我有吸引力)
15. 最近最让你感动的是什么?
有人说我是个好女孩(没有任何目的的)
16. 如果暗恋她(他),你敢说出口吗?
不敢
17. 2007你最难忘的的事情?
开会,很多会
18. 你是个感性的人还是理性的人?
理性的
19. 当你对很重要的事情感到力不从心时,怎么处理?
船到桥头自然直,没有挂不上的电话,不会有没钱花饿死的时候,没有一直一直投诉的客户.
20. 你认为怎么样才算幸福的生活?
默默胖墩儿和加菲那样的生活
21. 最近在看什么书
《加菲猫》
22 搬家时遇到很多曾经用过很久但以后不会再用到的物品,要怎么处理
扔了
23 .对你来说选择单位哪方面最重要?
环境好,跟同事的关系好,不会勾心斗角,工资过得去.
24. 小时候的梦想是什么,实现了吗?
小时候的梦想是作一个以写字为生的人。
结果现在只能在qq上写字。
25.你最大的希望是什么(不是关于你自己生活的)?
爱我的人一切顺利。
26. 你现在的梦想是什么?
永远不变老
27. 阿拉丁给你一个时光机,你用来做什么?
去唐朝,比比我和杨贵妃谁更好看
28 你们觉得我很胖嘛?选择(A 不胖 B很标准 C完美 D以上皆是)
D,备注:以上皆是。
我呸,玲玲这个题是个陷阱,2007年尾的时候还说了慌,我愧呀。
不过我喜欢这个题哈哈
29.感到孤单时你会做什么?
逛超市,花钱,不回家。
30.如果总加班还没加班费,你会怎么办?
如果大家都加班,我就会很开心,大家还可以聊天。
31.如果只有我一个人加班,不管有没有加班费我都要走。
你们现在对你们的生活满意吗?为什么?
我觉得还成,为什么嘛,我觉得才刚起步,对生活还不太明白它的真正含义,姑且作答。
我想把最后的31题改了,改成:
为何有女孩不喜欢不折手段达到目的的男孩?
点 无奈 芯 我 千朵 回答该问题。
请大家看好游戏规则:
1、被点到名字的要在自己的博客或者空间上写下答案,所有问题都要真实回答,并且要将这几个题目传给你的七个好朋友,通知对方“你被点名了”。
2、这七个人要在博客或者空间上注明是在哪接到的题目,并且再将题目传给其他七个朋友,让游戏继续下去,不得回传,被点名的人将得到大家的祝福,并且所有美丽的愿望都会在不久以后得以实现。
3、虽然不可以回点,但是你的朋友的朋友还是可能会点到你,如果有第二次,甚至第三次点到,那说明你将会是一个非常幸运和幸福的人。
4、答完题后,删除掉一个你想删除的问题,增加一个你想问的问题,然后传给你的朋友。
1. 现在对自己最重要的是什么?
不会变老
2. 在你眼里我是一个怎样的人?
开朗温柔善良 爱喝可乐 爱吃所有能导致脂肪肝的东西 一个黄白花小狗的主人(玲玲)
3. 你现在住在哪个城市,如果能够选择,你希望住在哪里?
北京 如果可以选择,我还是想一直呆在北京
4. 如果现在可以让你随心所欲去旅行,你想去哪?
最俗气的香港迪士尼,唉,不行的话就北京欢乐谷吧.
6. 最不喜欢什么类型的人?
钱奴,还有爱抱怨的人
7. 会不会做饭?你希望你的伴侣(未来的伴侣)会做饭吗?
会作,绝对的会作。无所谓了,他会洗碗就行
8.在你们眼里我的性格哪方面吸引人?
老请我吃饭哈哈(玲玲)
9. 如果你爱的人不爱你怎么办?
那我也不爱他了
10. 你msn现用的“名称”是什么,有什么含义?
旁孟儿--加菲语录:有时候活活撑死是一件多么幸福的事情啊
含义就是我喜欢加菲,就喜欢他那种冷幽默,活象s我了。
11. 你最喜欢你伴侣的什么?你希望你的伴侣具有什么品质?
喜欢他的体贴和幽默。我希望他能成熟和遵守承诺.
12. 谈谈你最近在听的音乐?
单田方《乱世枭雄》---张作霖的故事
13. 你会选择你爱的人还是爱你的人?
爱我的
14. 你觉得自己哪方面性格特征对别人最有吸引力?
hiahia,爱笑和幽默吧。(可是我并不认为我有吸引力)
15. 最近最让你感动的是什么?
有人说我是个好女孩(没有任何目的的)
16. 如果暗恋她(他),你敢说出口吗?
不敢
17. 2007你最难忘的的事情?
开会,很多会
18. 你是个感性的人还是理性的人?
理性的
19. 当你对很重要的事情感到力不从心时,怎么处理?
船到桥头自然直,没有挂不上的电话,不会有没钱花饿死的时候,没有一直一直投诉的客户.
20. 你认为怎么样才算幸福的生活?
默默胖墩儿和加菲那样的生活
21. 最近在看什么书
《加菲猫》
22 搬家时遇到很多曾经用过很久但以后不会再用到的物品,要怎么处理
扔了
23 .对你来说选择单位哪方面最重要?
环境好,跟同事的关系好,不会勾心斗角,工资过得去.
24. 小时候的梦想是什么,实现了吗?
小时候的梦想是作一个以写字为生的人。
结果现在只能在qq上写字。
25.你最大的希望是什么(不是关于你自己生活的)?
爱我的人一切顺利。
26. 你现在的梦想是什么?
永远不变老
27. 阿拉丁给你一个时光机,你用来做什么?
去唐朝,比比我和杨贵妃谁更好看
28 你们觉得我很胖嘛?选择(A 不胖 B很标准 C完美 D以上皆是)
D,备注:以上皆是。
我呸,玲玲这个题是个陷阱,2007年尾的时候还说了慌,我愧呀。
不过我喜欢这个题哈哈
29.感到孤单时你会做什么?
逛超市,花钱,不回家。
30.如果总加班还没加班费,你会怎么办?
如果大家都加班,我就会很开心,大家还可以聊天。
31.如果只有我一个人加班,不管有没有加班费我都要走。
你们现在对你们的生活满意吗?为什么?
我觉得还成,为什么嘛,我觉得才刚起步,对生活还不太明白它的真正含义,姑且作答。
我想把最后的31题改了,改成:
为何有女孩不喜欢不折手段达到目的的男孩?
点 无奈 芯 我 千朵 回答该问题。
唯心主义是客观存在的。作为哲学两大对立主题,唯心主义和唯物主义的争斗持续了几千年的时间。到了今天其实两大理论发展的都以足够完善,谁要驳倒谁也是很难办到的事情,既然这样,我们暂且放下一直信奉的唯物主义,来看看唯心主义的积极性。
在西方社会中,唯心主义起到的作用是积极的而且重要的。宗教本来就是唯心主义,其在西方社会中起到了叫化人类,净化心灵,提高道德素质的作用。唯心主义普遍认为人是有灵魂的,肉体即使消亡,精神依然存在。这就可以让我们在个体灭亡后,依然对其保存着爱与依赖。因为个体曾经存在,而且灵魂存在,所以其在我们的精神世界存在,这就是我们造成了只要我们的个体存在,那些曾经存在的人和爱过的人,就永远在精神世界存在。所谓柏拉图提出的“精神恋爱”的理论也是如此,一种借助与曾经物质行为的恋爱,即使脱离了物质,也会永远存在,只要个体本身没有改变,那么从理论上看,这种“精神恋爱”是会永远存在的。
失去是痛苦的,无论是失去亲人还是朋友或是爱人。但是这种精神的客观存在性就刚好的解决了这个问题。因为即使物质性的人已经消失,或者永远不再出现,但是精神性的物质是永远存在的。只要我们的个体是正常的,那些曾经出现的事物会永远存在的,并且会循环出现的。这就大大的减少了人类的痛苦,因为失去亲人是痛苦的,正因为其灵魂的存在,或者在我们的精神世界的存在,那么我们就可以看作其依然存在,而且永远存在,直到我们也消失的那一天。所以,从精神层面来分析,从主观出发的任何两个人,只要在精神世界想要和对方在一起,那么他们其实就能永远在一起。
再来看看联系的观点,唯物主义认为事物是普遍联系的。但是在现实生活中却又存在很多的特例。孤立的看问题其实是客观存在,而且很多时候起到的是积极的作用。我们在我们在看待问题的时候完全可以只针对一个问题,解决问题,忽略它周围的联系,因为一个事物的联系越复杂,处理起来就越复杂,相反,把事物只看作一个个体,针对一个个体解决问题,不仅提高效率,可以减少不必要的麻烦。在人与人的交往中,两个人就是一个世界,我们没有必要在乎他的家庭背景,还是教育程度等等联系,只要两个人的世界完美就够了。
综上,唯心主义是客观存在,并且其在很大方面起到了积极的作用,其世界观和方法论从宏观上看,是对唯物主义的补充和完善。
在西方社会中,唯心主义起到的作用是积极的而且重要的。宗教本来就是唯心主义,其在西方社会中起到了叫化人类,净化心灵,提高道德素质的作用。唯心主义普遍认为人是有灵魂的,肉体即使消亡,精神依然存在。这就可以让我们在个体灭亡后,依然对其保存着爱与依赖。因为个体曾经存在,而且灵魂存在,所以其在我们的精神世界存在,这就是我们造成了只要我们的个体存在,那些曾经存在的人和爱过的人,就永远在精神世界存在。所谓柏拉图提出的“精神恋爱”的理论也是如此,一种借助与曾经物质行为的恋爱,即使脱离了物质,也会永远存在,只要个体本身没有改变,那么从理论上看,这种“精神恋爱”是会永远存在的。
失去是痛苦的,无论是失去亲人还是朋友或是爱人。但是这种精神的客观存在性就刚好的解决了这个问题。因为即使物质性的人已经消失,或者永远不再出现,但是精神性的物质是永远存在的。只要我们的个体是正常的,那些曾经出现的事物会永远存在的,并且会循环出现的。这就大大的减少了人类的痛苦,因为失去亲人是痛苦的,正因为其灵魂的存在,或者在我们的精神世界的存在,那么我们就可以看作其依然存在,而且永远存在,直到我们也消失的那一天。所以,从精神层面来分析,从主观出发的任何两个人,只要在精神世界想要和对方在一起,那么他们其实就能永远在一起。
再来看看联系的观点,唯物主义认为事物是普遍联系的。但是在现实生活中却又存在很多的特例。孤立的看问题其实是客观存在,而且很多时候起到的是积极的作用。我们在我们在看待问题的时候完全可以只针对一个问题,解决问题,忽略它周围的联系,因为一个事物的联系越复杂,处理起来就越复杂,相反,把事物只看作一个个体,针对一个个体解决问题,不仅提高效率,可以减少不必要的麻烦。在人与人的交往中,两个人就是一个世界,我们没有必要在乎他的家庭背景,还是教育程度等等联系,只要两个人的世界完美就够了。
综上,唯心主义是客观存在,并且其在很大方面起到了积极的作用,其世界观和方法论从宏观上看,是对唯物主义的补充和完善。
喜欢历史是从小学开始的。那时候,父母给我借了一部《上下五千年》,每个星期天早上起来,都要拜读几篇。春秋战国是我的最爱,百家争鸣,春秋五霸,一个个历史事件都被我反复咀嚼。后来自己用零用钱买了两本成语故事,我更是爱不释手,虽然没有刻意背诵,更搞不清里面的“阴谋阳谋”,但是当绝对能把所有的故事复述下来。
后来长大了,看过《中国通史》以后,自觉对中国历史了解个大概,就此不前。自从读了黄仁宇先生的《万历十五年》之后,对于历史看法改变许多。以前看到的历史,大多是通史,也就是说是所有人眼中的历史,是史家记述的历史,呈现在读者面前的,是约定俗成的观点。历史到底发生了什么,我们谁也无法知道,我们所能知道的只是别人告诉我们的那些事情,所以约定俗成的观点就会在我们的意识中形成一种思维定势。
其实历史就是一种观点,不是别人的观点,是自己的观点。我们需要做的,不是记住哪些年发生哪些事情,而是从中看到一些规律,或者领悟出什么,然后提炼出自己的观点。
后来长大了,看过《中国通史》以后,自觉对中国历史了解个大概,就此不前。自从读了黄仁宇先生的《万历十五年》之后,对于历史看法改变许多。以前看到的历史,大多是通史,也就是说是所有人眼中的历史,是史家记述的历史,呈现在读者面前的,是约定俗成的观点。历史到底发生了什么,我们谁也无法知道,我们所能知道的只是别人告诉我们的那些事情,所以约定俗成的观点就会在我们的意识中形成一种思维定势。
其实历史就是一种观点,不是别人的观点,是自己的观点。我们需要做的,不是记住哪些年发生哪些事情,而是从中看到一些规律,或者领悟出什么,然后提炼出自己的观点。
今年初,在台北电台采谈周杰伦时,当歌迷说起BEYOND时,问他谈谈对BEYOND看法时他竟说:"我不知道有个BEYOND乐队"!
看到这一句话我的心顿时无法平静!非常愤怒!从没想过会有人这样侮 辱BEYOND,这样侮蔑家驹!更想不到做为一个歌手竟会说出这样的话!周杰伦有没想过!20年后他还能在红馆开演唱会?还会有那么多的歌迷的呐喊与追随!20年后他的歌还会不会有人听?!我想就是等到20年后!再说这话我们BEYOND的歌迷也会好受点!
BEYOND的歌不论你走在什么地方,不管是在城市,在农村,都能听到他们的歌声!不管是汽车上,不管在KTV房!就连民工都会哼!就连三岁小孩都听过BEYOND的歌!难道周杰伦连一个三岁小孩都不如吗?那他还有什么资格做一名歌手?!
虽然我早就很讨厌周杰伦,但是现在我要以一个公正的身份评下他们!
先说周杰伦吧,这几年确实很走红,他个人也确实是有点创作能力!这点我是肯定的!但我个人认为,他的歌语无伦次,毫无逻辑!叫人听不懂他在唱什么!特别是在一首有句话:他爸爸打了他妈妈一巴!我想不到他还能写出这种歌!就像央视主持人白岩松说的一样,现在歌坛越来越多的垃圾,就是因为有这些歌!
1. 作风上:周杰伦诽闻不断,什么蔡依林啊!BEYOND呢?有谁听过他们有什么诽闻没?
2. 音乐的创作上:周伦杰是创作的大多是情爱的,根本就没什么可取之处.没血没肉的歌,很已然必将没什么人听!因为乐坛太多这样的歌了!而BEYOND的歌写取材很广,<真的爱你>等写的是亲情,等写的是关爱,<大地>等写的是爱国.而这些歌都是乐坛最经典的.即使写爱情都是那么的含蓄!像<喜欢你><情人>.再过一百年也会有很多人听的!
3. 音乐的影响上:周杰伦的歌是属于流行歌曲,只能流行一时!BEYOND的歌影响了一代又一代人.他的歌是黑暗中的星星!在遇到搓折时能给人力量!
4. 从歌声上:周杰伦的歌声很一般,很容易摸仿!而黄家驹的歌声充满磁性,充满感情.粗犷!有力量!
5. 从才能上:周杰伦还算有点能!但和BEYOND是无法比的!因为他们根本就不是同一个层次!BEYOND是亚洲最伟大的乐队,红遍香港,大陆,爱猫扑,爱生活,马来西亚,新加坡,红遍全亚洲的乐队!他们的吉他水平令人难于置信!全中国百分之九十九的喜爱吉它的人都把他们作为他们自己的理想境界!就连达明一派的吉它手刘以达都称黄家驹,黄贯中为大哥!
6. 从精神上看:周杰伦根本就没什么精神可谈!而BEYOND的精神就是坚持,打不死,关爱的精神!这是年轻人必须要有的精神!
7. 从歌迷来看!周杰伦是属于偶像派,歌迷追随的是偶像!而这些歌迷很容易变化偶像,因为现在的歌坛平均一年就产生一个新星歌手,那些歌迷都会驱之若鹘!因为他们追随的只是心中的偶像!而不管他们的偶像是谁!而BEYOND的歌迷不同!他们同样有坚持的精神,20年过去了,一百年过去了都一样爱他们心中的神!因为他们追随的不只是BEYOND的歌,更重要的是BEYOND精神!
最后我总结下,BEYOND之最的家驹之最!
BEYOND这个名字是百度这个网站搜索最多的字眼!
BEYOND乐队是全亚洲最伟大的乐队
BEYOND是世界上留下最多经典歌曲的乐队
BEYOND是第一个进入香港红馆开演唱会的乐队
BEYOND是香港乐队和个人中第一个在大陆开演唱会的乐队
BEYOND是出最多专辑的乐队
BEYOND是香港唯一成功的乐队,唯一一个人地下走上地面的乐队
BEYOND影响了最多歌手,像黑豹乐队,就连最近走红的歌手扬臣刚都说没有BEYOND就没有他
……………….还有很多我就不一一列出来了
再说下黄家驹吧
家驹创作的最有纪念意义的歌曲:当然是AMANI 光辉岁月 of2FS
最符合家驹一生的歌曲:海阔天空ax
最简单的演出装束:四人演唱会中家驹的花布裤子和布鞋Fe@
家驹和弟弟家强最默契的动作:四人演唱会中贯中的〈大地〉结束后家驹和家强同时向观众举手"-Ab
最应被模仿的饰物:请注意四人演唱会中家驹和家强所佩带的钥匙耳环 uH
最精彩的创意:四人演唱会中家强在〈冷雨夜〉中的BASS演奏,据说是第一例BASS独奏,然而这是哥哥家驹的提议。家驹的创意无人能比 [0"
最精彩的一段主音吉他演奏:〈灰色轨迹〉中家驹的主音吉他演奏的很凄美 hz)
最经典的情歌:情人(我个人最喜欢情人!最早的时候家驹为阿伦写的,之后他自己唱的那版可能是给歌迷的,但本身是情歌! bH?%*9
最经典的摇滚歌曲:金属狂人 iS0
最经典的献给亲人的歌曲:真的爱你 3GU
家驹最常用的手势是我爱你的手势 "m\
家驹最酷的动作是>MTV中在雪地里握拳仰望天空高唱vXW
家驹最惬意镜头的是>茫茫大海中,躺在甲板上遥望天空.~)
家驹最感人的场面:91演唱会光辉岁月的真情演绎,尤其最后伴着旋律韵转(好感动,每次看到这儿都会感动的流泪)Z
驹最帅的的时候(我认为)91金属狂人赤膊跑上台的时候。w%
家驹最疯狂的时候(还是我认为)91金属狂人躺在地上的时候。$ag
家驹写的最令人意外的作品:《千秋家国梦》里的插曲"千秋思念"是家驹作的曲,主场田震,很意外吧!估计大家谁也没注意
离开你一百个星期
我回到了这里
寻找我们爱过的证据
没有人愿意提起
玫瑰花它的过去
今天这里的主题
我把它叫作回忆
我知道爱情这东西
没什么道理
过去我和你在一起
是我太叛逆
现在只剩我自己
偷偷的想你
玫瑰花的葬礼
埋葬爱的回忆
感觉双手麻痹
不能自已
已拉不住你
真的好美丽
那天的烟花雨
我说要娶穿碎花洋裙的你
玫瑰花的葬礼
埋葬深深爱着的你
残朵停止呼吸
渗入大地
没人会注意
一片小雨滴
陪着我等天明
我用这最后一分钟怀念你
我在夜幕笼罩的天桥上潜行
每一级阶梯
都留着你我昔日印迹
温存迷醉吵闹清醒
都还在我的脚畔兜转不清
没来得及把红色玫瑰递给你
爱就象是一场雨
已经离我而去
你说过
太过鲜艳的爱情终将凋零
玫瑰花的葬礼
埋葬关于你的回忆
感觉双手麻痹
不能自已
已拉不住你
真的好美丽
那天的烟花雨
我说要娶穿碎花洋裙的你
玫瑰花的葬礼
埋葬深深爱着的你
残朵停止呼吸
渗入大地
没人会注意
一片小雨滴
陪着我等天明
我用这最后一分钟怀念你
总是不经意想起了你
总是回想过去埋怨我自己
现在的你已经太遥不可及
只能留在我记忆
玫瑰花的葬礼
埋葬关于你的回忆
感觉双手麻痹
不能自已
已拉不住你
真的好美丽
那天的烟花雨
我说要娶穿碎花洋裙的你
玫瑰花的葬礼
埋葬深深爱着的你
残朵停止呼吸
渗入大地
没人会注意
一片小雨滴
陪着我等天明
我用这最后一分钟怀念你
我用这最后一分钟怀念你
屮回忆未来~ 23:46:10
招PHP开发人员,有合适的推荐.我顶。。。得了
流年 23:46:25
呵呵
屮回忆未来~ 23:47:03
我想问问现在php比较好的框架有那些值得推荐的啊。。?
谢谢
屮回忆未来~ 23:47:57
mambo如何?
流年 23:48:14
mambo不能算是框架,是一个应用系统
屮回忆未来~ 23:48:54
但是可以在他上面搞快速开发啊。。smarty呢?
流年 23:49:10
smarty只是一个模版引擎
屮回忆未来~ 23:49:30
那你认为好的框架是什么呢?请赐教
流年 23:49:44
首先你要明白什么是框架,呵呵
屮回忆未来~ 23:50:17
不明白喔。。。
屮回忆未来~ 23:50:24
讲讲嘛。。
流年 23:50:52
目前主流的php国外框架有zendframework cakephp和symfony,国内的有thinkphp和fleaphp
屮回忆未来~ 23:51:11
thinkphp,这个是你搞的吧。。(*^__^*) 嘻嘻……
流年 23:51:15
是的
流年 23:51:42
当然,可能还有很多小的,或者没有开源的,我说的都是开源的
屮回忆未来~ 23:52:07
你觉得你的thinkphp在高访问的情况下性能能行吗?瓶颈有没有啊
流年 23:52:24
那么你觉得zendframework可以吗?
屮回忆未来~ 23:53:16
没用过,zend的编辑器我觉得确实不错,但它的框架不知道喔。
流年 23:53:50
高并发和大流量的访问不是靠软件本身来承载的
屮回忆未来~ 23:54:28
考系统吗?我觉得应该把常用的数据cach起来,你有用c写php模块的资料没有呢?
流年 23:54:44
没有,缓存都是支持的
流年 23:55:50
但是怎么缓存,缓存什么,是应用要考虑的
屮回忆未来~ 23:58:37
很有道理。。。
屮回忆未来~ 23:59:06
其实很多时候都是以应用考虑,框架也就自己搭建了
屮回忆未来~ 00:00:23
你的框架我肯定看看。。。我觉得应该很好学吧,有没有上升到思想这个层面啊
流年 00:01:31
呵呵,你看过就知道了
屮回忆未来~ 00:02:13
www.liu21st.com现在还用吗?搞成thinkphp.cn了
流年 00:02:46
基本不用了
流年 00:02:55
只是维护thinkphp.cn
屮回忆未来~ 00:03:41
喔,我想在邮件系统采用你的框架,不知道是否成熟
屮回忆未来~ 00:03:54
webmail
流年 00:04:03
过两天就发布正式版本了
屮回忆未来~ 00:06:25
我建议把ldap操作也给php封装了。。
流年 00:06:43
封装是类库的事情,不是框架的事情
屮回忆未来~ 00:16:42
学习学习。。。
屮回忆未来~ 00:17:06
你的网站模板好像又改了,给一份好吗?
屮回忆未来~ 00:17:19
我的网站 www.happycun.com/blog
流年 00:17:45
你的模版不是很好麽
屮回忆未来~ 00:18:31
是你上次推荐的啊,我想搞成你那样的。。。觉得方便阅读,我这个太呆板了。三栏
流年 00:19:13
我的也是用其它网站的改的而已,样式这个东西你去找wp的模版大把了
屮回忆未来~ 00:25:21
好的。正式版本发了给小弟发一份好不?我想学习学习xdy108@126.com
屮回忆未来~ 00:25:31
招PHP开发人员,有合适的推荐.我顶。。。得了
流年 23:46:25
呵呵
屮回忆未来~ 23:47:03
我想问问现在php比较好的框架有那些值得推荐的啊。。?
谢谢
屮回忆未来~ 23:47:57
mambo如何?
流年 23:48:14
mambo不能算是框架,是一个应用系统
屮回忆未来~ 23:48:54
但是可以在他上面搞快速开发啊。。smarty呢?
流年 23:49:10
smarty只是一个模版引擎
屮回忆未来~ 23:49:30
那你认为好的框架是什么呢?请赐教
流年 23:49:44
首先你要明白什么是框架,呵呵
屮回忆未来~ 23:50:17
不明白喔。。。
屮回忆未来~ 23:50:24
讲讲嘛。。
流年 23:50:52
目前主流的php国外框架有zendframework cakephp和symfony,国内的有thinkphp和fleaphp
屮回忆未来~ 23:51:11
thinkphp,这个是你搞的吧。。(*^__^*) 嘻嘻……
流年 23:51:15
是的
流年 23:51:42
当然,可能还有很多小的,或者没有开源的,我说的都是开源的
屮回忆未来~ 23:52:07
你觉得你的thinkphp在高访问的情况下性能能行吗?瓶颈有没有啊
流年 23:52:24
那么你觉得zendframework可以吗?
屮回忆未来~ 23:53:16
没用过,zend的编辑器我觉得确实不错,但它的框架不知道喔。
流年 23:53:50
高并发和大流量的访问不是靠软件本身来承载的
屮回忆未来~ 23:54:28
考系统吗?我觉得应该把常用的数据cach起来,你有用c写php模块的资料没有呢?
流年 23:54:44
没有,缓存都是支持的
流年 23:55:50
但是怎么缓存,缓存什么,是应用要考虑的
屮回忆未来~ 23:58:37
很有道理。。。
屮回忆未来~ 23:59:06
其实很多时候都是以应用考虑,框架也就自己搭建了
屮回忆未来~ 00:00:23
你的框架我肯定看看。。。我觉得应该很好学吧,有没有上升到思想这个层面啊
流年 00:01:31
呵呵,你看过就知道了
屮回忆未来~ 00:02:13
www.liu21st.com现在还用吗?搞成thinkphp.cn了
流年 00:02:46
基本不用了
流年 00:02:55
只是维护thinkphp.cn
屮回忆未来~ 00:03:41
喔,我想在邮件系统采用你的框架,不知道是否成熟
屮回忆未来~ 00:03:54
webmail
流年 00:04:03
过两天就发布正式版本了
屮回忆未来~ 00:06:25
我建议把ldap操作也给php封装了。。
流年 00:06:43
封装是类库的事情,不是框架的事情
屮回忆未来~ 00:16:42
学习学习。。。
屮回忆未来~ 00:17:06
你的网站模板好像又改了,给一份好吗?
屮回忆未来~ 00:17:19
我的网站 www.happycun.com/blog
流年 00:17:45
你的模版不是很好麽
屮回忆未来~ 00:18:31
是你上次推荐的啊,我想搞成你那样的。。。觉得方便阅读,我这个太呆板了。三栏
流年 00:19:13
我的也是用其它网站的改的而已,样式这个东西你去找wp的模版大把了
屮回忆未来~ 00:25:21
好的。正式版本发了给小弟发一份好不?我想学习学习xdy108@126.com
屮回忆未来~ 00:25:31
什么是妻子?就是你愿意把积蓄交给她保管的女人。什么是情人?就是你偷偷摸摸地去和她约会又怕妻子撞见的女人。什么是红颜知己?就是你能把有些秘密说给她听却不能说给妻子听的女人。
妻子是一种约束,约束你不能随便和别的女人交往;情人是一种补偿,补偿你想从妻子那得到却又无法得到的激情;红颜知己就是一种点拨,点拨你心中的迷津。
妻子陪你过日子,情人陪你花钞票,红颜知己陪你聊聊天。妻子不能替代情人,因为她没有情人有情调;情人不能代替妻子,因为她没有妻子的亲情;妻子和情人都代替不了红颜知己,那是心灵的需要。
妻子是一个和你没有一点血缘关系的女人,却为你深夜不回家而牵肠挂肚;情人是一个和你没有一点家庭关系的女人,却让你尝尽做男人滋味尽情销魂;红颜知己是一个还没和你扯上关系的女人,却能分担你的快乐和忧愁。
妻子是一个家,是一个能给你浮躁的心带来安抚的港湾;情人是家的累赘,只是不到万不得已你不想甩掉;红颜知己是家的点缀,没有她你不会觉得寂寞,但你会觉得生活没意思。
妻子的关心像一杯白开水,有时会成为一种唠叨,只是在生病时才成为一种温馨;情人的关心就像在白开水里加了一勺糖,慢慢地品上一个晚上还不满足;红颜知己的关心就像工作到午夜喝一杯咖啡,越喝越提神。
妻子怀上你的孩子会深情地问你想要个男孩还是要个女孩,情人怀上你的孩子会哭着来问你该怎么办啊?对于红颜知己,你会把你的情人怀孕的消息告诉她,并问她你该怎么办。至于妻子,你会在她发现你的情人肚子大了的秘密后才告诉她:“其实,我早就想告诉你了。”然后拼命地向她解释,并作可怜状。
妻子回了娘家一个星期不回来你也不想,情人三天不见你就给她打电话:上哪去了?今晚我们到老地方喝杯咖啡好吗?心中有了苦闷,你最想找个红颜知己倾诉,告诉她你在妻子和情人之间疲于奔命,实在受不了了。
最让男人受不了的是妻子的唠叨,情人的眼泪,红颜知己的误解。妻子的唠叨使男人的心乱上加乱,情人的眼泪让男人已硬的心变得酥软,红颜知己的误解把男人的心由悬崖推进深谷。
最好的妻子,就是男人能从她身上找到情人和红颜知己两种相互交织的感觉,只是这种感觉男人很难找到。最好的情人是在你和她的关系被妻子发现而主动退出又不提任何要求,只是情人很难做到这点。最好的红颜知己是有一天她能成为情人,甚至妻子,只是这种想法很难实现。
如果有可能,男人都在想把红颜知己变成情人,如果再有可能,再把她变成妻子。只是变成妻子的红颜知己就不再是知己了,因为很少有男人把自己的妻子当成知己的。男人心中有好多秘密不能随便说给妻子听。要不,那还叫男人么?
娶一个妻子是为了怕别人说闲话,找一个情人是为了给单调的生活加点味精,交一个红颜知己是想给空虚的心灵浇点鸡汤。男人一生都在寻找的不是一个妻子,也不是一个情人,而是一个甚至更多的红颜知己。
有些失去是注定的,有些缘分是永远不会有结果的,爱一个人不一定要拥有,但拥有了一个人就一定要珍惜,不要等到伤害的时候才去乞求原谅,不要等到失去的时候再去挽回。如果我不小心流下一滴泪水,那是因为我不愿意忘记你是谁
妻子是一种约束,约束你不能随便和别的女人交往;情人是一种补偿,补偿你想从妻子那得到却又无法得到的激情;红颜知己就是一种点拨,点拨你心中的迷津。
妻子陪你过日子,情人陪你花钞票,红颜知己陪你聊聊天。妻子不能替代情人,因为她没有情人有情调;情人不能代替妻子,因为她没有妻子的亲情;妻子和情人都代替不了红颜知己,那是心灵的需要。
妻子是一个和你没有一点血缘关系的女人,却为你深夜不回家而牵肠挂肚;情人是一个和你没有一点家庭关系的女人,却让你尝尽做男人滋味尽情销魂;红颜知己是一个还没和你扯上关系的女人,却能分担你的快乐和忧愁。
妻子是一个家,是一个能给你浮躁的心带来安抚的港湾;情人是家的累赘,只是不到万不得已你不想甩掉;红颜知己是家的点缀,没有她你不会觉得寂寞,但你会觉得生活没意思。
妻子的关心像一杯白开水,有时会成为一种唠叨,只是在生病时才成为一种温馨;情人的关心就像在白开水里加了一勺糖,慢慢地品上一个晚上还不满足;红颜知己的关心就像工作到午夜喝一杯咖啡,越喝越提神。
妻子怀上你的孩子会深情地问你想要个男孩还是要个女孩,情人怀上你的孩子会哭着来问你该怎么办啊?对于红颜知己,你会把你的情人怀孕的消息告诉她,并问她你该怎么办。至于妻子,你会在她发现你的情人肚子大了的秘密后才告诉她:“其实,我早就想告诉你了。”然后拼命地向她解释,并作可怜状。
妻子回了娘家一个星期不回来你也不想,情人三天不见你就给她打电话:上哪去了?今晚我们到老地方喝杯咖啡好吗?心中有了苦闷,你最想找个红颜知己倾诉,告诉她你在妻子和情人之间疲于奔命,实在受不了了。
最让男人受不了的是妻子的唠叨,情人的眼泪,红颜知己的误解。妻子的唠叨使男人的心乱上加乱,情人的眼泪让男人已硬的心变得酥软,红颜知己的误解把男人的心由悬崖推进深谷。
最好的妻子,就是男人能从她身上找到情人和红颜知己两种相互交织的感觉,只是这种感觉男人很难找到。最好的情人是在你和她的关系被妻子发现而主动退出又不提任何要求,只是情人很难做到这点。最好的红颜知己是有一天她能成为情人,甚至妻子,只是这种想法很难实现。
如果有可能,男人都在想把红颜知己变成情人,如果再有可能,再把她变成妻子。只是变成妻子的红颜知己就不再是知己了,因为很少有男人把自己的妻子当成知己的。男人心中有好多秘密不能随便说给妻子听。要不,那还叫男人么?
娶一个妻子是为了怕别人说闲话,找一个情人是为了给单调的生活加点味精,交一个红颜知己是想给空虚的心灵浇点鸡汤。男人一生都在寻找的不是一个妻子,也不是一个情人,而是一个甚至更多的红颜知己。
有些失去是注定的,有些缘分是永远不会有结果的,爱一个人不一定要拥有,但拥有了一个人就一定要珍惜,不要等到伤害的时候才去乞求原谅,不要等到失去的时候再去挽回。如果我不小心流下一滴泪水,那是因为我不愿意忘记你是谁
转自IT168 觉得对框架的认识和定位很有帮助,虽然讲的不是php,但是思想是一致的。
1 空前繁荣的开源世界
大致2000年以前,Java世界还是Sun一言九鼎,唯我独尊的时代。Sun发布的任何规范和标准都无一例外地被Java社区有意无意的追捧着,Java世界沉浸在一片歌功颂德,前拥后簇的氛围里。IBM,Bea,Oracle这些Java阵营的代表者也都为能最先最快实现Sun的各种规范而弹冠相庆。
但这三四年来,Java的列车驶进了春秋战国百家争鸣,百花齐放的时代, Apache,JBoss,opensymphony,Eclipse,Codehaus等开源组织个个门庭若市,车水马龙。Java世界似乎天天在过年——张灯结彩,新桃换旧符。打开theserverside.com网站,每天映入眼帘是一条条各种开源项目发布、升级的新闻。虽然嘈杂了些,但却异彩纷呈,惊艳四座。在Java世界里,十室之内必有隐士,十步之内必有芳草,有才华的程序员太多了,抑或怀才的程序员被独裁式的统治压抑太久了,一旦找到了海德公园,庞涓、孙膑、苏秦、张仪式的高手纷纷走出隐居的鬼谷,在开源舞台上劲舞一支,高歌一曲,用一个个开源项目彰显着自己独特的魅力。
从客户端到数据库,从页面流程控制到业务流程控制,从全文搜索到地图搜索,从论坛到博客,在各种应用领域你都可以方便地找到多个相似的Java开源框架。开源框架的空前繁荣有力的促进了Java技术的交流和分享。一些面向开源的社区,论坛纷纷建立,国内比较著名的就有满江红开源论坛、中文Spring论坛、JavaScud开源平台、JavaEye社区等,宣讲、争论、协作、互动,无数激情和智慧碰撞出耀眼的火花。
随着开源项目的日益增多,国内甚至出现了象open-open.com Java开源大全的汇总整理网站,它如一个开源项目的大集市,将开源项目分类整理,提供简要的描述说明信息,方便使用者了解、查询和比较。
开源项目的繁荣还为技术图书业创造了机会,不管是国外的Amazon,还是china-pub或dearbook,开源框架或产品的技术图书,如Spring,Hibernate,Struts,Eclipse等等都成为荣登榜首的畅销先锋。
这场几乎来源于民间的开源飓风给开发者和CTO们的思路和决策带来了巨大的影响,据Bea的调查,全球排名前2000家软件开发公司中有70%以上在使用一种或多种开源框架——多达28%的公司在开发环境中使用了一种以上的应用服务器。
同时开源也给走传统路线的Java巨头们带来战略性的影响:Sun去年宣布将其旗舰产品——Solaris开源;去年IBM向第三方厂商开放了其高性能通用并行文件系统(GPFS)的源代码;Unisys也改变企业战略定位投入开源怀抱等等不胜枚举,它们纷纷将营利模式从原来的产品销售调整为支持与服务。
2 开源框架带来的烦恼
虽然开源的框架、类库越来越丰富,可供选择的替代者越来越多,但Java程序员却感觉自己慢慢陷入到了技术的漩涡之中:因为他们发现只要一段时间不关注开源社区,就有潮水般陌生的技术框架、专业术语、英文缩略词挟裹着一团团亢奋的热浪将自己淹没,让他们觉得随时都有被Java世界抛弃的危险。许多年纪稍大的程序员甚至觉得职位转换,甩掉技术干管理已经时不我待。
选择的困惑
雨后春笋般涌现的开源框架都声称自己是最好的,有过多次因盲从于技术鼓吹而失望伤心的经历后,现在的开发者都变得成熟理智了,他们不会轻易相信某个框架自身的承诺,不会轻易附和他人的宣传,这确实是件好事。为了作出理智的选择,他们往往要自己亲自摸索以做出评判。
有时,我们会发现向上司推荐一个框架已经变成一件困难的事情,因为上司会冒出各种各样的问题:如Webwork比Struts好在哪里?Hibernate和iBatis有什么区别?OpenWFE比之jBpm有什么优势等等。所以要确定一个框架时,往往需要将相似的框架都研究一遍,以便有充足的理由让上司相信我们的选择是最优的。
但是,要将同类的框架都做一次研究并比较优劣并非易事,如开源工作流引擎就有Willow,OpenWFE,jBpm,Werkflow,OSWorkflow等不下30余种的框架,炫耀的声音一个比一个响亮。每种框架都有自己的设计思路和实现方案,况且这种技术预研性的工作,又不可能在项目周期内占用太多的时间,而不深入预研又不可能客观地作出评判,所以往往是熬红的双眼依然带着迷茫的目光。
此外,用人单位为了减少新员工的培训时间,对求职者往往有明确的框架使用技能和经验的要求。求职者为了能找到一个好工作,不得不逼迫自己学习更多的框架,以便让自己拥有更多的求职机会。
搭配的困难
开源的繁荣虽然给各个领域都造就了许多优秀的框架,如Spring,Struts,Hibernate,Lucene、OSCache等等,但却没有出现一个一站式,统管全局的整合开发框架。开发者在享用大餐之前,事先得充当大橱的角色,将这些盐,油、酱、菜按合理的方式调配好。
虽然,我们一直强调整体大于单个的总和,但是如何将单个“个体”正确的组合成发挥更大效应的“整体”却并非易事。因为这些单独的框架都由不同的团队开发,框架与框架之间存在天然的阻抗,这种框架和框架之间的“代沟”需要额外配置和编码才能弥合。
每个框架都拥有自己的配置文件,框架的整合经常带来配置的灾难,如将Spring和Struts整合时,不仅Struts本身的配置文件一个不能少,在Spring中还需要每个Action提供配置信息,而且两者需要遵守一定的契约。
相互搭配的框架和框架之间经常会出现相似的或重复的功能,如何取舍,如何使用往往让开发者们为难。如Spring本身提供了AOP方法返回结果的缓存功能,而Hibernate本身也提供二级缓存,究竟两者都使用呢,还是择一而从?往往中间又会引出很多争论。
框架整合的问题已经日益突出,我们可以在各开源论坛或社区发现大量有关讨论的主题。目前也出现了一些试图解决的框架整合问题的开源项目,如国外的AppFuse,国内的SpringSide,为框架的整合提供了专业的指导。但是并没有很好的解决现实开发中的实际需要。这些整合框架为了增加通用性,网都撒得太大,导致整合框架本身象一个庞然大物,让人望而生畏,定制性和灵巧性上都存在不足,降低了它们的实用性,所以这些整合性的开源项目往往降格为指导性的实例。
升级的困扰
活跃的框架每天都在升级改造,丰富功能。其次由于开源框架在一定程度上存在随意性,往往导致框架在实际使用后,发现大量隐含的Bug,所以有时对某个框架的升级变得不可避免。开源框架比之Sun正规的规范有着更加灵活的升级方式,高低版本不兼容的问题已经成为司空见惯的事情。如著名的Hibernate,其3.0版本和2.0版本的包名都发生了彻底的变化,刚发布的Acegi和低版本也存在很大的差异,无法兼容。
一个整合性的框架由多个出自于不同团队的框架组成,整合框架在这些组合框架之上高位运行,底层框架的升级变化就造成了组合框架水涨船高的局面,整合框架脆弱的稳定性很容易被打破。
组合框架的升级还直接带来了开发团队学习的压力,为了熟悉框架新功能和改进,在开发工作之余,他们不得不努力压榨自己的业余时间不断地充电学习。总是某个框架新功能学习还未完成,另一个框架的新版本又在一阵欢呼声中闪亮登场,让开发人员发现自己所有的努力只是一场骑牛追马游戏。
3 开发者如何走出迷局
框架的爆炸性增长和技术更替一日千里的速度,让刚刚从传统J2EE迷局中走出来的开发者重新堕入了新的困境之中。有许多切身体验的开发者在网上大倒苦水,甚至有许多声音在呐喊,希望重新回到JSP+JavaBean+JDBC那个纯真的年代中去。
框架的作者们本想还软件开发一个清新美满的世界,不想个体性的良性企盼变成了一种整体性的混乱纷争。在纷繁复杂的开源世界如何走出迷局和困境,把握自己技术航船的方向,是每个开发者们冥思遐想的事情。
重点学习 触类旁通
每个人的时间是有限的,对于周期紧,进度急,加班赶的开发者来说更加如此,使得开发者不可能 “识遍天下字,读尽人间书”逐个学习框架。选择好适合自己、适合项目的框架进行重点学习尤为重要。不但要掌握技术细节,更要理解框架的原理和思想,这样在接触相关框架时,我们才能触类旁通,慧眼识真。
如果你深入理解了Struts框架的MVC的原理和思想,在接触Tapestry,Spring MVC等框架时,你会发现两者只是形上的区别,而非质上的差异,即使因现实需要确实要转换框架时,也可以轻松平滑地过渡。
不求最好 但求适用
开发人员往往都是完美主义者,吹毛求疵,带着浓重的偏执狂倾向。是的,偏执狂是优秀程序员的一个特点,时下《只有偏执狂才能生存》也正在大卖热卖,Rod Johnson,Gavin King,Oberg也都是偏执狂。
但在有进度工期压力的情况下,我们不得不向实现妥协。对于公司来说,利润永远都是第一位的,不管用不用框架或用什么框架,只要能如期保质保量完成用户的所有功能需求,就是最好的项目。客户永远看不到,也不关心你使用了哪个优秀的技术和框架。
所以,在实际的开发中,也许我们常常需要委曲内心的冲动,只要目前的框架能满足需求,我们没有必须象服装界一样赶追时髦,一切不求最好,但求适用。
如果Spring Template JDBC已经很好的满足了目前的需求,就没有必要一定要上Hibernate,如果自己开发的简要列表控件效果不错,就无须转换为ExtremeTable。新框架的学习需要代价,但这种代价的价值在实际发挥功效之前是不被肯定的。况且看似不合时宜的那些简单而古老的技术也可以做出强大的系统,如世界上最大的java项目——巴西全国医疗系统,就是构建在JSP+JavaBean+Servlet之上。
注重积累 搭建平台
我们常常发现一些软件公司自身没有任何积累,完全寄希望于这些整合框架解决所有的问题。开源框架解决的都是某个领域的通用性问题,每个公司由于其所处行业,服务用户的不同,要求公司拥有自己的解决方案,框架的通用性和公司的个性化需求是存在矛盾的。软件公司应该加强自身的积累,在这些框架的基础上搭建好符合自身需求的快速开发平台,屏蔽掉底层框架的复杂功能和细枝末节,降低对开发人员的技能要求,以便新员工能够快速参与到项目中,而无需进行一个个开源框架的学习。
虽然这种积累和平台的建设会耗费额外的工作量,但首先它是一个循序渐进的过程,其次这种任务仅由两三个技术突出的技术人员承担,带来的好处是直接降低了其他开发人员使用难度和技术要求,在一定程序上避免了开源框架的所带来的不稳定性影响。
4 小结
开源的繁荣带来了丰富的框架,有力的推动了业界的发展,同时我们也看到,这种繁荣所带来的惊喜背后紧跟着许多困惑的眼神,迷失在繁荣的混乱之中的开发者们希望走出困惑,走出迷局。
如何在嘈杂喧闹的开源世界把握方向寻求突破,不管是对于开发者还是软件公司的决策者都值得深深的思考。
1 空前繁荣的开源世界
大致2000年以前,Java世界还是Sun一言九鼎,唯我独尊的时代。Sun发布的任何规范和标准都无一例外地被Java社区有意无意的追捧着,Java世界沉浸在一片歌功颂德,前拥后簇的氛围里。IBM,Bea,Oracle这些Java阵营的代表者也都为能最先最快实现Sun的各种规范而弹冠相庆。
但这三四年来,Java的列车驶进了春秋战国百家争鸣,百花齐放的时代, Apache,JBoss,opensymphony,Eclipse,Codehaus等开源组织个个门庭若市,车水马龙。Java世界似乎天天在过年——张灯结彩,新桃换旧符。打开theserverside.com网站,每天映入眼帘是一条条各种开源项目发布、升级的新闻。虽然嘈杂了些,但却异彩纷呈,惊艳四座。在Java世界里,十室之内必有隐士,十步之内必有芳草,有才华的程序员太多了,抑或怀才的程序员被独裁式的统治压抑太久了,一旦找到了海德公园,庞涓、孙膑、苏秦、张仪式的高手纷纷走出隐居的鬼谷,在开源舞台上劲舞一支,高歌一曲,用一个个开源项目彰显着自己独特的魅力。
从客户端到数据库,从页面流程控制到业务流程控制,从全文搜索到地图搜索,从论坛到博客,在各种应用领域你都可以方便地找到多个相似的Java开源框架。开源框架的空前繁荣有力的促进了Java技术的交流和分享。一些面向开源的社区,论坛纷纷建立,国内比较著名的就有满江红开源论坛、中文Spring论坛、JavaScud开源平台、JavaEye社区等,宣讲、争论、协作、互动,无数激情和智慧碰撞出耀眼的火花。
随着开源项目的日益增多,国内甚至出现了象open-open.com Java开源大全的汇总整理网站,它如一个开源项目的大集市,将开源项目分类整理,提供简要的描述说明信息,方便使用者了解、查询和比较。
开源项目的繁荣还为技术图书业创造了机会,不管是国外的Amazon,还是china-pub或dearbook,开源框架或产品的技术图书,如Spring,Hibernate,Struts,Eclipse等等都成为荣登榜首的畅销先锋。
这场几乎来源于民间的开源飓风给开发者和CTO们的思路和决策带来了巨大的影响,据Bea的调查,全球排名前2000家软件开发公司中有70%以上在使用一种或多种开源框架——多达28%的公司在开发环境中使用了一种以上的应用服务器。
同时开源也给走传统路线的Java巨头们带来战略性的影响:Sun去年宣布将其旗舰产品——Solaris开源;去年IBM向第三方厂商开放了其高性能通用并行文件系统(GPFS)的源代码;Unisys也改变企业战略定位投入开源怀抱等等不胜枚举,它们纷纷将营利模式从原来的产品销售调整为支持与服务。
2 开源框架带来的烦恼
虽然开源的框架、类库越来越丰富,可供选择的替代者越来越多,但Java程序员却感觉自己慢慢陷入到了技术的漩涡之中:因为他们发现只要一段时间不关注开源社区,就有潮水般陌生的技术框架、专业术语、英文缩略词挟裹着一团团亢奋的热浪将自己淹没,让他们觉得随时都有被Java世界抛弃的危险。许多年纪稍大的程序员甚至觉得职位转换,甩掉技术干管理已经时不我待。
选择的困惑
雨后春笋般涌现的开源框架都声称自己是最好的,有过多次因盲从于技术鼓吹而失望伤心的经历后,现在的开发者都变得成熟理智了,他们不会轻易相信某个框架自身的承诺,不会轻易附和他人的宣传,这确实是件好事。为了作出理智的选择,他们往往要自己亲自摸索以做出评判。
有时,我们会发现向上司推荐一个框架已经变成一件困难的事情,因为上司会冒出各种各样的问题:如Webwork比Struts好在哪里?Hibernate和iBatis有什么区别?OpenWFE比之jBpm有什么优势等等。所以要确定一个框架时,往往需要将相似的框架都研究一遍,以便有充足的理由让上司相信我们的选择是最优的。
但是,要将同类的框架都做一次研究并比较优劣并非易事,如开源工作流引擎就有Willow,OpenWFE,jBpm,Werkflow,OSWorkflow等不下30余种的框架,炫耀的声音一个比一个响亮。每种框架都有自己的设计思路和实现方案,况且这种技术预研性的工作,又不可能在项目周期内占用太多的时间,而不深入预研又不可能客观地作出评判,所以往往是熬红的双眼依然带着迷茫的目光。
此外,用人单位为了减少新员工的培训时间,对求职者往往有明确的框架使用技能和经验的要求。求职者为了能找到一个好工作,不得不逼迫自己学习更多的框架,以便让自己拥有更多的求职机会。
搭配的困难
开源的繁荣虽然给各个领域都造就了许多优秀的框架,如Spring,Struts,Hibernate,Lucene、OSCache等等,但却没有出现一个一站式,统管全局的整合开发框架。开发者在享用大餐之前,事先得充当大橱的角色,将这些盐,油、酱、菜按合理的方式调配好。
虽然,我们一直强调整体大于单个的总和,但是如何将单个“个体”正确的组合成发挥更大效应的“整体”却并非易事。因为这些单独的框架都由不同的团队开发,框架与框架之间存在天然的阻抗,这种框架和框架之间的“代沟”需要额外配置和编码才能弥合。
每个框架都拥有自己的配置文件,框架的整合经常带来配置的灾难,如将Spring和Struts整合时,不仅Struts本身的配置文件一个不能少,在Spring中还需要每个Action提供配置信息,而且两者需要遵守一定的契约。
相互搭配的框架和框架之间经常会出现相似的或重复的功能,如何取舍,如何使用往往让开发者们为难。如Spring本身提供了AOP方法返回结果的缓存功能,而Hibernate本身也提供二级缓存,究竟两者都使用呢,还是择一而从?往往中间又会引出很多争论。
框架整合的问题已经日益突出,我们可以在各开源论坛或社区发现大量有关讨论的主题。目前也出现了一些试图解决的框架整合问题的开源项目,如国外的AppFuse,国内的SpringSide,为框架的整合提供了专业的指导。但是并没有很好的解决现实开发中的实际需要。这些整合框架为了增加通用性,网都撒得太大,导致整合框架本身象一个庞然大物,让人望而生畏,定制性和灵巧性上都存在不足,降低了它们的实用性,所以这些整合性的开源项目往往降格为指导性的实例。
升级的困扰
活跃的框架每天都在升级改造,丰富功能。其次由于开源框架在一定程度上存在随意性,往往导致框架在实际使用后,发现大量隐含的Bug,所以有时对某个框架的升级变得不可避免。开源框架比之Sun正规的规范有着更加灵活的升级方式,高低版本不兼容的问题已经成为司空见惯的事情。如著名的Hibernate,其3.0版本和2.0版本的包名都发生了彻底的变化,刚发布的Acegi和低版本也存在很大的差异,无法兼容。
一个整合性的框架由多个出自于不同团队的框架组成,整合框架在这些组合框架之上高位运行,底层框架的升级变化就造成了组合框架水涨船高的局面,整合框架脆弱的稳定性很容易被打破。
组合框架的升级还直接带来了开发团队学习的压力,为了熟悉框架新功能和改进,在开发工作之余,他们不得不努力压榨自己的业余时间不断地充电学习。总是某个框架新功能学习还未完成,另一个框架的新版本又在一阵欢呼声中闪亮登场,让开发人员发现自己所有的努力只是一场骑牛追马游戏。
3 开发者如何走出迷局
框架的爆炸性增长和技术更替一日千里的速度,让刚刚从传统J2EE迷局中走出来的开发者重新堕入了新的困境之中。有许多切身体验的开发者在网上大倒苦水,甚至有许多声音在呐喊,希望重新回到JSP+JavaBean+JDBC那个纯真的年代中去。
框架的作者们本想还软件开发一个清新美满的世界,不想个体性的良性企盼变成了一种整体性的混乱纷争。在纷繁复杂的开源世界如何走出迷局和困境,把握自己技术航船的方向,是每个开发者们冥思遐想的事情。
重点学习 触类旁通
每个人的时间是有限的,对于周期紧,进度急,加班赶的开发者来说更加如此,使得开发者不可能 “识遍天下字,读尽人间书”逐个学习框架。选择好适合自己、适合项目的框架进行重点学习尤为重要。不但要掌握技术细节,更要理解框架的原理和思想,这样在接触相关框架时,我们才能触类旁通,慧眼识真。
如果你深入理解了Struts框架的MVC的原理和思想,在接触Tapestry,Spring MVC等框架时,你会发现两者只是形上的区别,而非质上的差异,即使因现实需要确实要转换框架时,也可以轻松平滑地过渡。
不求最好 但求适用
开发人员往往都是完美主义者,吹毛求疵,带着浓重的偏执狂倾向。是的,偏执狂是优秀程序员的一个特点,时下《只有偏执狂才能生存》也正在大卖热卖,Rod Johnson,Gavin King,Oberg也都是偏执狂。
但在有进度工期压力的情况下,我们不得不向实现妥协。对于公司来说,利润永远都是第一位的,不管用不用框架或用什么框架,只要能如期保质保量完成用户的所有功能需求,就是最好的项目。客户永远看不到,也不关心你使用了哪个优秀的技术和框架。
所以,在实际的开发中,也许我们常常需要委曲内心的冲动,只要目前的框架能满足需求,我们没有必须象服装界一样赶追时髦,一切不求最好,但求适用。
如果Spring Template JDBC已经很好的满足了目前的需求,就没有必要一定要上Hibernate,如果自己开发的简要列表控件效果不错,就无须转换为ExtremeTable。新框架的学习需要代价,但这种代价的价值在实际发挥功效之前是不被肯定的。况且看似不合时宜的那些简单而古老的技术也可以做出强大的系统,如世界上最大的java项目——巴西全国医疗系统,就是构建在JSP+JavaBean+Servlet之上。
注重积累 搭建平台
我们常常发现一些软件公司自身没有任何积累,完全寄希望于这些整合框架解决所有的问题。开源框架解决的都是某个领域的通用性问题,每个公司由于其所处行业,服务用户的不同,要求公司拥有自己的解决方案,框架的通用性和公司的个性化需求是存在矛盾的。软件公司应该加强自身的积累,在这些框架的基础上搭建好符合自身需求的快速开发平台,屏蔽掉底层框架的复杂功能和细枝末节,降低对开发人员的技能要求,以便新员工能够快速参与到项目中,而无需进行一个个开源框架的学习。
虽然这种积累和平台的建设会耗费额外的工作量,但首先它是一个循序渐进的过程,其次这种任务仅由两三个技术突出的技术人员承担,带来的好处是直接降低了其他开发人员使用难度和技术要求,在一定程序上避免了开源框架的所带来的不稳定性影响。
4 小结
开源的繁荣带来了丰富的框架,有力的推动了业界的发展,同时我们也看到,这种繁荣所带来的惊喜背后紧跟着许多困惑的眼神,迷失在繁荣的混乱之中的开发者们希望走出困惑,走出迷局。
如何在嘈杂喧闹的开源世界把握方向寻求突破,不管是对于开发者还是软件公司的决策者都值得深深的思考。