1.开源
这个我想不用解释。
2.多用户、多任务、多线程
Linux系统同时可以支持多个用户,每个用户对自己的文件设备有特殊的权利,能够保证各用户之间互不干扰,就像手机开了助手一样,同时登陆多个qq账号,当硬件配置非常高时,每个用户还可以同时执行多个任务、多个线程同时工作、提高效率,简直是完美的一塌糊涂,单凭多用户而言就完爆其他操作系统。
3.稳定性和高效性
你也许会听到Windows服务器长时间运行而突然宕机,但你绝不会听到Linux系统服务器因为长时间不关机会卡死,在Linux上几乎是不会出现这种情况的。Linux服务器可以无休止的运行下去不宕机,因为它继承了Unix卓越的稳定性和高效性。正因为它的稳定才获得了众多用户的青睐,因为它的高效,它的使用范围更加广阔,然而Linux还可以提供一些高可靠性的服务,比如:LNMP、虚拟化、数据库服务等等。
4.安全性和SELinux
其安全性相比其他系统也要安全很多,由于Linux拥有相当庞大的用户和开源社区支持,因此能很快发现系统漏洞,并迅速发布安全补丁及时更新,同时还具有很强的“免疫力”特点,很少受到病毒攻击,对于一个开放式系统而言,在方便用户的同时,很可能存在安全隐患。
不过,利用Linux自带防火墙(iptables,firewalld)、入侵检测和安全认证等工具,及时修补系统的漏洞,就能大大提高Linux系统的安全性,让黑客们无机可乘,同时还有安全增强机制SElinux,在linux内核中提供强制访问控制,功能非常全面,能够很好保护系统和服务,不过很多人喜欢把它关闭,这相对安全性就不是很好了。
还有Tcp_wrappers也能够提供很好的网络服务访问控制,Linux系统对于用户和文件管理权限的管理也是相当出色的,能够很好的控制权限,保证文件的机密性,也是其他系统无法比拟,所以Linux系统在一定程度上是坚不可摧的。
5.性能优势
由于Linux要保证其稳定性,所以并没有像其它操作系统一样内核如此臃肿庞大、漏洞百出,随着Linux内核的不断更新,不断提升着优势,Linux操作系统能把服务器的硬件优势体现的淋漓尽致,因为Linux系统吸取了Unix系统近1/4世纪发展的经验,最主要的是Linux开放源代码,保证系统稳定性,更好的调用硬件功能,同时还提供了丰富的系统资源工具top,freee,df,vmstat,dmesg,iostat,sar,uptime等,方便查看资源的利用率。
以上这些足够让你投向Linux的怀抱了。
当然,除了这些,还有一些说不定道不明的定西,比如:
biggerthanbigger
把你的Linux系统拿出去,开始用命令行做点事情。
比如说,输入sudorm-rf/*
Ⅱ 一个好的程序员至少应该具备哪些条件
楼上的几位显然误会我的意思了,我并不是说不应当写文档加注释注重团队精神,看看下面的一篇文章,那位三天就写出UNIX的他需要写文档注释和团队精神吗,他用不着。哪个高手没有一点傲气和自信,他之所以敢对用户说:拿到你想要的,然后滚蛋,你已经很幸运了!是因为他有这个资本。天才本就不循规蹈矩,那样他就不叫天才了。
MIT BBS上说微软电话面试的一道题就是“Who do you think is the best coder,
and why?”。我觉得挺有意思的,也来凑个热闹。排名不分先后。
Bill Joy, 前任Sun的首席科学家,当年在Berkeley时主持开发了最早版本的BSD。他还
是vi和csh的作者。当然,Csh Programming Considered Harmful 是另一个话题乐。据
说他想看看自己能不能写个操作系统,就在三天里写了个自己的Unix, 也就是BSD的前
身。当然是传说了,但足见他的功力。另一个传说是,1980年初的时候,DARPA让BBN在
Berkley Unix里加上BBN开发的TCP/IP代码。但当时还是研究生的B伯伯怒了,拒绝把BBN
TCP/IP加入BSD,因为他觉得BBN的TCP/IP写得不好。于是B伯伯出手了,端的是一箭封
喉,很快就写出了高性能的伯克利版TCP/IP。当时 BBN和DARPA签了巨额合同开发TCP/IP
Stack,谁知他们的代码还不如一个研究生的好。于是他们开会。只见当时B伯伯穿
个T-shirt出现在会议室(当时穿T-shirt不象现在,还是相当散漫的哈)。只见BBN问:你
怎么写出来的?而B伯伯答:简单,你读协议,然后编程就行了。最令偶晕倒的是,B伯
伯硕士毕业后决定到工业界发展,于是就到了当时只有一间办公室的Sun, 然后他就把
Sparc设计出来乐。。。象这种软硬通吃的牛人,想不佩服都不行的说。据Bill Joy的同
事说,一般开会的时候B伯伯总是拿一堆杂志漫不经心地读。但往往在关键之处,B伯伯
发言,直切要害,提出漂亮的构想,让同事们彻底崩溃。对了,他还是java Spec和JINI
的主要作者之一。
John Carmack,ID Software的founder和Lead Programmer。上个月和一个搞图形的师兄
聊天,他竟然不知道John Carmack, 也让偶大大地晕了一把。不过也许搞研究的和搞实
战的多少有些隔吧。想必喜欢第一人称射击游戏的都知道J哥哥。90年代初只要能在PC
上搞个小动画都能让人惊叹一番的时候,J哥哥就推出了石破天惊的Castle Wolfstein,
然后再接再励,doom, doomII, Quake...每次都把3-D技术推到极限。J哥哥的简历上说
自己的专长是"Exhaust 3-D technology",真是牛人之言不我欺的说。做J哥哥这样的人
是很幸福的,因为各大图形卡厂家一有了新产品就要向他“进贡"
,不然如果他的游戏不支持哪种卡,哪种卡基本就会夭折乐。当初MS的Direct3D也得听
取他的意见,修改了不少API。当然,J哥哥在结婚前十数年如一日地每天编程14小时以
上,也是偶们凡人望尘莫及的。对了,J哥哥高中肆业(?),可以说是自学成才。不过
呢,谁要用这个例子来为自己学习不好辩护,就大错特错了。那 Leonardo Da Vinci还
是自学成才呢(人是私生子,不能上学)。普通人和天才还是有区别的。对了,其实偶们
叫“达分奇”是相当不对的,因为Vinci是地名,而Da Vinci就是从Vinci来的人的意
思。换句话说,Leonardo Da Vinci就是“从Vinci来的Leonardo”的意思。叫别
人“Da Vinci”就不知所谓乐。嗯,扯远了,打住。
David Cutler,VMS和Windows NT的首席设计师,去微软前号称硅谷最牛的kernel开发
员。当初他和他的手下在微软一周内把一个具备基本功能的bootable kernel写出来,然
后说:“who can't write an OS in a week?",也是牛气冲天的说。顺便说一句,D爷
爷到NT3.5时,管理1500名开发员,自己还兼做设计和编程,不改coder本色啊。
D爷爷天生脾气火爆,和人争论时喜欢双手猛击桌子以壮声势。 日常交谈fuck不离口。
他面试秘书时必问:"what do you think of the word 'fuck'?" ,让无数美女刹羽而
归。终于有一天,一个同样火爆的女面对这个问题脱口而出:"That's my favorite
word"。于是她被录取乐,为D爷爷工作到NT3.5发布。
Don Knuth。高爷爷其实用不着偶多说。学编程的不知道他就好像学物理的不知道牛顿,
学数学的不知道欧拉,学音乐的不知道莫扎特,学Delphi的不知到 Anders Hejlsberg,
或者学Linux不知道Linus Torvalds一样,不可原谅啊。为了让文章完整,就再罗唆几句
吧。高爷爷本科时就开始给行行色色的公司写各种稀奇古怪的编译器挣外快了。他卖给别
人时收一两千美元,那些公司拿了code,加工一下卖出去就是上万上十万。不过也没见高
爷爷不爽过,学者本色的说。想想那可是60年代初啊,高爷爷写编译器写多了,顺带就搞
出了个 Attribute Grammar和LR(k),大大地造福后人啊。至于高爷爷在CalTech的编程比
赛(有Alan Kay得众多高高手参加)总是第一,写的Tex到86年就code freeze,还附带2^n
美分奖励等等都是耳熟能详的,偶就不饶舌乐。
顺便说一下,高老大爷是无可争议的写作高手。他给Concrete Mathematics 写的前言可
谓字字铿锵,堪为前言的典范。他的技术文章也是一绝,文风细致,解释精当,而且没
有学究气,不失轻快跳脱。记得几年前读Concrete Mathemathics,时不时开怀大笑,让
老妈极其郁闷,觉得我nerdy到家,不可救药。其实呢,子非鱼,安知鱼之乐,更不知那
完全是高爷爷的功劳。说到写作高手,不能不提Stephen A. Cook。他的文章当年就被我
们的写作老师极力推荐,号称典雅文风的样本。库爷爷一头银发,身材颀长,总是面带
谦和的微笑,颇有仙风道骨,正好和他的仙文相配的说。
高爷爷其实还是开源运动的先驱。虽然他没有象Richard Stallman那样八方奔走,但他
捐献了好多作品,都可以在网上看到,比如着名的Mathematical Writing,MMIXWare,
The Tex Book等,更不用说足以让他流芳百世的Tex乐。
Ken Thompson,C语言前身B语言的作者,Unix的发明人之一(另一个是Dennis M. Riche
老大,被尊为DMR),Belle(一个厉害的国际象棋程序)的作者之一, 操作系统Plan 9的主
要作者(另一个是大牛人Rob Pike,
前不久被google挖走了)。Ken爷爷也算是计算机历史上开天辟地的人物了。1969年还是
计算机史前时代,普通人都认为只有大型机才能运行通用的操作系统,小型机只有高山
仰止的份儿。至于用高级语言来写操作系统,更是笑谈。Ken爷爷自然不是池中物,于是
他和DMR怒了,在1969年到1970间用汇编在PDP-7上写出了UNIX的第一个版本。他们并不
知道,一场轰轰烈烈的UNIX传奇由此拉开了序幕。Ken爷爷在1971年又把Unix用C重写,
于是C在随后20年成就了不知多少豪杰的梦想和光荣。
Ken爷爷还有段佳话: 装了UNIX的PDP-11最早被安装在Bell Lab里供大家日常使用。很
快大家就发现Ken爷爷总能进入他们的帐户,获得最高权限。Bell
Lab里的科学家都心比天高,当然被搞得郁闷无比。于是有高手怒了,跳出来分析了UNIX
代码,找到后门,修改代码,然后重新编译了整个UNIX。就在大家都以为“这个世界清
净了”的时候,他们发现Ken爷爷还是轻而易举地拿到他们的帐户权限,百思不解后,只
好继续郁闷。谁知道这一郁闷,就郁闷了14年,直到Ken爷爷道出个中缘由。原来,代码
里的确有后门,但后门不在Unix代码里,而在编译Unix代码的C编译器里。每次C编译器
编译UNIX的代码,就自动生成后门代码。而整个Bell Lab的人,都是用Ken爷爷的C编译
器。
(6)Rob Pike, AT&T Bell Lab前Member of Technical Staff ,现在google研究操作系
统 。罗伯伯是Unix的先驱,是贝尔实验室最早和Ken Thompson以及Dennis M. Ritche开
发 Unix的猛人,UTF-8的设计人。他还在美国名嘴David
Letterman的晚间节目上露了一小脸,一脸憨厚地帮一胖子吹牛搞怪。让偶佩服不已的
是,罗伯伯还是1980年奥运会射箭的银牌得主。他还是个颇为厉害的业余天文学家,设
计的珈玛射线望远镜差点被NASA用在航天飞机上。他还是两本经典,The Unix
Programming Environment 和 The Practice of Programming 的作者之一。如果初学者
想在编程方面精益求精,实在该好好读读这两本书。它们都有中文版的说。罗伯伯还写
出了Unix下第一个基于位图的窗口系统,并且是着名的blit终端的作者。当然了,罗伯
伯还是号称锐意革新的操作系统,Plan9,的主要作者。可惜的是,Plan9并没有引起多
少人的注意。罗伯伯一怒之下,写出了振聋发聩的雄文 Systems Software Research is
Irrelevant,痛斥当下系统开发的不思进取,固步自封的弊病。虽然这篇文章是罗伯伯
含忿出手,颇有偏激之词,但确实道出了系统开发的无奈:开发周期越来越长,代价越
来越大,用户被统一到少数几个系统上,结果越来越多的活动是测量和修补,而真正的
革新越来越少。
就在罗伯伯郁闷之极的时候,google登门求贤来乐。如果说现在还有一家大众公司在不
遗余力地把系统开发推向极致的话,也就是google乐。随便看看google的成果就知道
了。具有超强容错和负载平衡能力的分布式文件系统GFS
(现在能够用100,000台廉价PC搭起一个巨型分布系统,并且高效便宜地进行管理的系统
也不多哈),大规模机器学习系统(拼写检查,广告匹配,拼音搜寻。。。哪个都很牛的
说),更不用说处理海量并行计算的各式google服务了。Rob在System Software
Research is Irrelevant里萧瑟地说现在没有人再关心系统研究的前沿成果了。想不到
他错了,应为google关心。google网络了大批功成总是试图吸取系统研究的最新成果。
想必Rob Pike在google很幸福。愿他做出更棒的系统。
Dennis M. Ritchie, 既然Ken Thompson是我的偶像,新闻组上人称DMR的Dennis M.
Ritchie自然也是,毕竟两人共同缔造了UNIX,而Dennis几乎独力把C搞大(当然,C的前
身是B,而B是Ken Thompson一手做出来的)。两人1983年分享图灵奖,是有史以来少数几
个因工程项目得奖的工程师(本来是唯一的一对儿,但Alan Kay才因为SmallTalk得奖,
所以就成了唯二的乐) 一个人一生能做出一个卓越的系统已经不易,DMR的C和UNIX长盛
不衰近30年,至今生机勃勃,DMR此生可以无憾的说。
D爷爷也算有家学渊源:他老爸在AT&T贝尔实验室工作了一辈子,并在电路设计方面卓有
成就,还出了本颇有影响的书The Design of Switching Circuits,据说在交换理论和
逻辑设计方面有独到的论述。当然,D爷爷和他老爸是不同时代的人:他老爸的研究成
形于晶体管发明之前,而D爷爷的工作离了晶体管就玩儿不转乐。:-D
不要看D爷爷搞出了C,其实他最爱的编程语言是Alef,在Plan9上运行,支持并行编程。
Alef的语法和C相似,但数据类型和执行方式都和C大大不同。说到语言,D爷爷对后来
人有非常中肯的建议:抱着学习的目的来开发你自己的语言,不要冀望于它被众人接
受。这个建议不光对语言开发有用,也适用于其它大型系统的开发。别的不说,DMR后来
领导自己的团队在1995年和1996分别推出了Plan9和Inferno操作系统,又用多少人知道
呢?其实,D爷爷当初也没想过C会风行世界。他开发C的初衷和Eric S. Raymond
在Cathedral and Bazaar里阐述的一样,就是要消除自己对现有工具的不爽之处。谁
知D爷爷无心插柳,C竟然受到众多程序员的狂热拥戴,连D爷爷自己都大惑不解。在一次
采访中D爷爷说大概那是因为C的抽象程度碰巧既满足了程序员的要求, 又容易实现。当
然C一度是Unix上的通用语言也是原因。但不管怎么说,D爷爷对编程语言出色的审美意
识奠定了C广为流传的基础。
最后八卦一下。D爷爷的业余爱好和NBA大牛Karl Malone一样:开卡车。不过D爷爷更喜
欢开NASCAR,而KM独爱巨无霸。J D爷爷自称心中不供偶像,如果一定要说一个,那就
是Ken Thompson了。现在Ken爷爷退休当飞机教练去了,而D爷爷当了贝尔实验室系统开
发部的头,整日忙于开支票。他俩合作20年,屡屡创造历史。这段令人神往的佳话,也
就长留你我心中乐。
P.S., 很多人都以为Brian W. Kernighan是C的作者。其实BWK只是写了那本经典K&R C。
据D爷爷说,他,Ken, 和Kernighan三人中,Kernighan最能写文章,他次之,而Ken写
得最少;但说到编程,Ken爷爷才是当之无愧的老大。
Edsger Wybe Dijkstra, 对,就是E.W. Dijkstra. 一提到EWD,很多人就会想起找最短
路径的Dijkstra Algorithm,就好像一提到Sir. Tony Hoare,就想起Quick Sort一样。
其实这些个算法不过是两个牛人在他们职业生涯中最琐碎的贡献。比如Dijkstra算法,
无非是戴爷爷在1956年为了展示新计算机
ARMAC的计算能力,初试身手的成果,属于他的算法处女作。据戴爷爷自述,他搞出最
短路径算法的时候连纸笔都没用。当时他和他老婆在阿姆斯特丹一家咖啡厅的阳台上晒
太阳喝咖啡,突然就把这个算法想出来乐。而且当时的算法研究还比较原始,牛人们忙
着用计算机搞数值计算,对离散算法不屑一顾。那时连一个象样的专注于离散算法的专
业期刊都没有。戴爷爷于是推迟发表这个算法。直到1959年,他才把这个算法发表
在Numerische Mathematik的创刊号上,权为捧场。:-)
EWD在多个领域牛气冲天,端的是理论和编程两手硬的高手。只不过他的很多工作比较
深刻,学校的老先生们觉得本科生接受不了,不给本科生讲而已。
戴爷爷大概因为最短路径算法一战成名,于是有人请他参加另一台计算机X1的设计工
作,并且把设计实时中断系统的任务派给了他。现在看来实时中断也许不算什么,但要
知到,X1前根本就没有实时中断的概念。实现它简直就是一场豪赌。戴爷爷起初还不情
愿,但经不住项目负责人Bram和Carel的轮番 “吹捧”:我们知道实时中断让您工作变
得非常困难,但象您这样的牛人肯定能做出来的说。结果戴爷爷被糖衣炮弹彻底击穿,
接下了这个烫手山芋。两三年后,他不仅搞出了实时中断,还围绕这个写出了自己的博
士论文,顺利戴上博士帽。
让戴爷爷真正成名立万的还是在X1上开发的Algo60,最早的高级语言之一。戴爷爷没日
没夜地工作了8个月,就搞出了Algo60,也因此获得了 1972年的图灵奖。因为Algo60,
戴爷爷发表了一篇石破天惊的文章:Recursive
Programming,于是人们才知道,原来高级语言也可以高效地实现递归,原来从此以后,
所有程序员都不可避免地和戴爷爷发明的一个词(应该说是概念)打交道:堆栈。
而且Algo60还让戴爷爷深入地思考多道程序设计的问题,最终发明了每个系统程序员
都绕不开的概念:semaphore。当然,戴爷爷总是把他发明的概念严格形式化,极具科
学家本色的说。和这些成就想比,他提出的吃饭的哲学家问题,也就没什么好说的了。
说来好笑,当时的大学(忘了哪所了)还是觉得戴爷爷没有受过正统的数学训练,也不是
专门搞数值分析的,所以最后不太情愿地给了他一个教职。这种小挫折并不能妨碍象戴
爷爷这样的牛人创造历史。他一边教数值分析(:-D) ,一边开始开发一个新的操作系
统,并培养计算机科学家。几年后,THE Multiprogramming
System横空出世。THE是第一个支持松散耦合,显式同步的进程并由此使得严格证明系统
没有死锁变得容易的操作系统。可惜戴爷爷任职的系不识货,还强行解散了他的研究小
组(1972年戴爷爷给他的系主任说他得了图灵奖,系主任的第一反应是你们搞计算机就
喜欢乱发奖)。这让戴爷爷相当郁闷,得了抑郁症。在极度郁闷之中,戴爷爷决定用写作
来治疗自己的抑郁症。于是经典就诞生乐:Notes on Structured Programming。戴爷爷
从此被尊为结构化编程的奠基人,而且他的抑郁症也被治好乐。
EWD太牛,结果他的故事也太多。先到这里吧。1973起,他的故事就在美国发生了。
Anders Hejlsberg,微软.NET的首席架构师,编程语言设计和实现的顶尖高手。他一手
做出了 Turbo Pascal, 也是Delphi, J++(尤其是WFC),C#, 和.NET的主要作者。这些作
品的名字足以为他立传。作为一个程序员,我在这样的大师面前实在无语。生子当
如Anders的说。李维的<>里已详细讲述了Anders的传奇故事,我就不用费舌了:
http: //java.mblogger.cn/iexploiter/posts/1505.aspx
Artima上有Anders谈C#的系列访谈。MSDN上有一段Anders导游的录像 。有兴趣可以去看
看牛人的丰采。
Ⅲ 程序员需要学什么
程序员可以分为很多种,像Unix程序员、Windows程序员,或是C++程序员、Delphi程序员,
1. 嘉华职业教育程序员首先学的就是各种脚本,asp、jsp、php等等,这些东西大同小异,基本可以举一反三。
2. 数据库,
数据库连接池和事务机制是非常重要的,应该知道数据库用什么来保证事务,连接池如何实现,这些都是商务应用的关键。譬如,目前很多的应用服务,像weblogic、MTS,都包含事务处理,可以说好的事务处理决定了他们的竞争力。
3. 组件技术
现在的Web应用推动了组件技术的发展。以前,从老式的静态库、动态库(dll),到现在的COM/DCOM,再到正在兴起中的Web Service;从单机调用,到基于内部网的分布式调用,到现在基于Internet的分布式计算。现在的应用都是基于组件的n层结构,最明显的就是COM和JavaBean。
这些东西体现了软件架构的发展,以前是基于单机的应用,然后是C/S结构,到现在的B/S结构。程序员一定要注意软件技术的发展趋势,只有这样,才不至于被淹没在技术的洪流中。
4. 网络技术
这可以说是程序员最应该懂得东西。起码,应该知道服务器的机制,要明白Http协议。就拿IIS来说,要懂得web应用程序运行的进程安全和IIS的关系,懂得ISApi的作用。
如果有时间,就看看TCP/IP,看看winsock,也可以到嘉华职业教育申请免费听课。
我所说的这些都是基于微软技术下的东西,其他的像Java方面的东西都可以对照参考,就不多说了,这也是我这几年来的一些心得。总之,学海无涯,每当接触一些新的东西,就会发现自己的不足,同时也就觉得基础知识的重要。说实话,像我们做应用开发,用别人的东西,在现在这种情况下,新的技术层出不穷,稍不注意就会被甩开,这也是没有办法的事情。
.
.
.
.
.
.
.
.
..
.
..
.
.
.
.
.
喜欢阳光的人,喜欢坐在冬日的太阳底下的躺椅上,眯着眼儿,看一会儿闲书,喝一壶清茶,吃几粒瓜子儿,掰下一块儿豆腐干,放到身边也眯着眼儿的老猫的嘴里。
喜欢阳光的人,喜欢坐在秋日的太阳底下的葡萄架下,让阳光透过葡萄叶子,斑斑点点的洒落满身,读一阙儿秋词,叹一句儿天凉好个秋,捡一片儿落叶,思一会儿寂寥。
喜欢阳光的人,喜欢坐在夏日傍晚的河滩上,对着半江瑟瑟半江红的河面,听渔舟晚唱,看村子里袅袅升起的炊烟,思恋妈妈做的晚饭。
喜欢阳光的人,喜欢春日里躺在阳光下的绿草坪上,看白云朵朵游弋在蔚蓝的天空,听着小孩子们嬉闹的欢笑声,感受着嫩嫩的小草的柔和的触摸,心里软软的,酥酥的,荡漾开了的是对于阳光的热爱,对于生活的感悟。
思念的风筝断了线,
随着风尘淡淡飘远。
看着又是一年秋瑟,
你的感觉还是那么单薄。
那些年最喜欢白天,
白天,可以天天坐在你的旁边。
这些年最喜欢黑夜,
梦里,总是在重复离你不远的那些年。
你是一只自由鸟,
别了我这一棵梧桐树,还有一片云与天。
我是一棵梧桐木,
没了你这一只自由鸟,剩下的还有什么我会去要?
老照片看了一遍又一遍,
总是勾勒着你现在脸上的凹陷。
你的感觉像一阵风一样袭来,
捉摸不到行踪,又冰冷的刺穿我假装的不难过。
你知道我多想,
多想在你的面前揭开我的心事,也让你明白我的心愿。
你知道我有多想,
多想坐在伤心的你旁边,也让你体会我的温暖。
你知道我到底有多想,
多想在你无聊的时候和你聊天,也好让我在你的人生中也有两个人那样的时光。
可到了现在,我有多可怜,
只有孤单的时候去想你,越是想你就越是孤单。
我也许只是你心灵书上的一个逗号点,
也曾你让你心里有过那么一次停顿,之后便消失不见。
就等一切的岁月都已写完,而你再去翻看这一本人生时,
我可不可以求求你,不要把刻着我名字的这个小点轻轻淡淡的忽略。
因为它是你留给我的念,也是我留给你的恋。
秸梗花,祢曾有笑过,是否记得烟花绽放照亮夜空时;秸梗花,祢曾哭过,是否记得满地的残叶瘦梗没人怜;秸梗花,祢曾有忧过,是否记得那年月圆时,祢是对月空吟的游子。祢喜,祢忧,祢愁,祢的一颦一笑牵于心。流年间,恍如梨花千树一夜放,鬓白红瘦断衷肠。
十八岁的流沙飘散在空中,随风而逝。淡淡紫色秸梗花曾是十八年间唯一的信念。自从与秸梗花相遇,到相知。每一秒都洋溢着紫色的幸福。
十八岁时,我只守这我的这一朵秸梗花。那时有个约定叫十点之约;那时有个梦叫毕业后就牵手;那时有条路叫顺道;那时…
我未曾给过繁华,也未曾给过锦帛,更无从有过快乐时光。因此我是不负责任的。所拥有的灿烂也只是如烟花绽放在夜空的一瞬。祢笑,如孩子般烂漫。我却不安,因为我怕我没有力量去保护这朵淡淡紫色的秸梗花。祢曾愿与我邂逅着每一个心情,诉说每一份感触。我曾愿静静地倾听每一种声音,也会为祢说:这人怎么能这样…
时间像是倘在手中的水,无论怎样紧握还是从指间一点点的流走。唯一不变的是对秸梗花的淡淡情愫。当时针敲响零点时,十八岁也随着昨天一起逝去了,消失在这世间无处可寻。突然心好像空了,像是被偷走什么重要的东西。诚恐,彷徨,不安如疯长的藤蔓,爬满了心房。是不是十八岁的情愫也如落叶般散去呢?没有,桔梗的情愫并没有消失,而是留在回忆里了,这一辈子也不会丢了。心这才微微地平静了些。是啊!一生一世就够了;来世可以相知相遇,不一定要相爱;可以做肝胆相照的朋友,不一定要耳鬓厮磨;可以成为至爱的亲人,不一定要爱恨间纠结。依旧怀着对你淡淡的紫色情愫。至今我仍珍惜着,氤氲的情愫,如同葳蕤,一丝丝萧瑟也与此情显得格格不入,更是在氤氲后透彻着成熟的滋味。相信这一切便会是永恒,无可厚非。然,所有永恒在时间的消磨之后变得不堪一击。再也经不起考验,一碰就碎。对那淡淡的紫色情愫曾未变过,只是被现实给脱垮了。朋友对我说了句:蝶恋花。蝶为花醉,花却随风飞。风过无痕,但给我留下的是岁月的斑驳,十八岁的烙印。我知道这些不算什么,但真的很难受,哽咽着。后来的后来我才明白最痛的痛不是不珍惜而错过,而是珍惜了,依然失去。
“桃花依旧笑春风,人面不知何处去。”生活要继续,但已是没有了灵魂,一切如同行尸走肉般活着,没有任何意义。那桔梗花依然再绽放着,可已是物是人非。氤氲早已灰飞烟灭,芬芳馥郁片刻化为灼热刺伤瞳孔。低吟浅唱:玉容寂寞泪阑干,梨花一枝春带雨。十八岁的年轮辗到十九岁,车轮下的桔梗花依旧散发出淡淡的幽香。我不断的提醒自己:过去固然重要,但不是唯一,总是活在过去的人注定会失败。这句话我是在日记里看到的,时间也久远了,也记不清是谁说的了。懂了,不会有永恒不变的爱,地久天长的那是亲情,是血脉相连的责任。所以我举行了葬礼,把那份桔梗的情愫深深的埋葬在回忆的尽头。或许这正如桔梗花的花语一样吧,无望的爱!
已逝的十八岁,让一切变得苍白了许多。半段纠结的桔梗情,忽如在耳畔誓说着不变的诺言。幽幽紫色的情愫,磨灭不了,更是无可奈何。
Ⅳ 现在学java好还是.net好
在很多网站上,网友都会问一个相同的问题,到底是学Java还是.net,个有个的见解。
自从.Net问世以来,程序员都很关心的一个问题是“该学Java或.NET”。我也在挣扎,该“该继续Java的研究,或者该开始准备培养.NET的知识”。
最好是能两者兼顾,但是每个人的时间都很有限,想要兼顾两者,其实不太容易。投入在.NET的时间越多,所能花费在Java的时间自然就少了,反之亦然。在信息爆炸的时代,重要的不是信息的取得,而是信息的抉择。信息太多,时间太少,如果不能慎选适合的技术,只会平白浪费许多时间,斫丧自己的竞争力。
一 开发效率方面:
对我们来说选择开发工具的最需要衡量的就是这一因素:
表现层开发:J2EE这方面非常欠缺,把这一任务丢给了应用服务器厂商和编程人员,不象.Net拥有很牛的.Net Studio,不过Jbuilder 6已经出来了,支持EJB2.0 也不算太落后,但一直没有解决方案的就是页面用户控件(当然Turbine的Action Event也算一种),缺乏可视化设计和Servlet应用程序框架生成。我期望的一种方式是具有象.Net Studio一样的可以所见即所得的编辑模板(Template),绑定用户按钮事件处理。目前可以通过javascript库,模板库及宏库略微缓解一下Servlet的开发。ASP .Net和Servlet都支持动态更新表现层。
二 XML支持能力:
.Net一直叫嚣的就是我集成了XML和Web Service,但JDK1.4也搞出了XML规范,这方面已经差不多了,不过.Net的易用性好得很,而且就此一家,程序员不必费心思选组件或产品。
在采用XML和XSLT的开发模式中:微软的SQL Server 2000直接提供了HTTP Query到XML数据的功能,不过我用dbxml也能做得这一点嘛,还适用于多数的主流RDBMS,更牛!这种开发模式应该是未来的方向。
三 理解的两者本质
Java是绑定于一种语言的跨系统的平台,是一个有多家供应商提供竞争性产品的规范。
Ⅳ 如何成为一个程序员
1、 程序员意味着要编程序。(如果你仅仅想得到一份高薪水的工作,喝喝咖啡就等老板发薪水,我奉劝你还是另找一份更合适的工作,譬如练摊,真的,兄弟,这份工作不适合你)
2、你是学文的还是学理的,编程序也许需要浪漫,但更需要逻辑和严谨。(说坦白点就是,在你没有找到乐趣以前,它很枯燥)
3、你有对新技术追求的热情吗?你有刨根问底的探索精神吗?(热情绝对是最重要的!你仔细思考一下自己的性格适合当程序员吗?)
4、当程序员决不是什么好差事,时刻需要学习,需要思考。(直到你成为那个可以引导别人去学习和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序员的未来很迷茫。(但我认为关键看你自己!我希望你是一个有追求的人,不仅仅是混碗饭吃。因为真正的乐趣在于创造;如果你能改变软件业的历史,那才是英雄;不想成为Bill Gates,不想成为Dennis Ritchie和 Bjarne Stroustrup,我会说你没有追求。有个关于程序员未来的笑话,也许你还没听过,你该听一听,摘抄如下:
一个程序员对自己的未来很迷茫,于是去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Lippman,他现在领导的程序员的队伍可能是地球上最大的”
于是他去问Lippman。
Lippman说“程序员的未来就是驾驭程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问Gates,他现在所拥有的财产可能是地球上最多的”
于是他去问Gates。
Gates说“程序员的未来就是榨取程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝说“我的孩子,你去问侯捷,他写的计算机书的读者可能是地球上最多的”
于是他去问侯捷。
侯捷说“程序员的未来就是诱惑程序员”
这个程序员对这个未来不满意,于是他又去问上帝。
“万能的上帝呀,请你告诉我,我的未来会怎样?”
上帝摇摇头“唉,我的孩子,你还是别当程序员了”)
6、当程序员还是很有乐趣的。(当你学到新知识时,当你有新的思想见解时,当你有新的产品问世时,和知己探讨你的成果时…我问你,觉得这些是乐趣吗?)
7、当程序员不易也不难。(世间事有难易乎?为之…;不为…。你有决心和信心吗?)
8、你真的要当程序员?是你自己的想法?
9、你舍得花钱买书吗?(读好书绝对是学习编程的最佳捷径。你一定会说,现在电脑书籍真他XX的贵,没法子,谁让知识和技术在人家的脑袋,在人家的书里呢;等你写书时可以把价格定低一点,记着还有好多没钱但想买书的兄弟很困难呀。要舍得买书,买好书,不好的的书不如不读,其害大于其益,关于买什么书,你可以问高手或看候捷的书评;准备一个小本子记录你想买的书的名字,逛书店时看看,如果好就买下,记住要读,别光买不看。) 10、我告诉你,程序就是:任何有目的的、预想好的动作序列,它是一种软件。
11、编程序就是编写程序。
12、你想好了吗?(如果你想好了还是决定要当程序员,可以继续往下读;否则,你可以继续寻找别的出路了。)
(三) 一个程序员应该具备的基础知识和概念
1、计算机是有什么组成的,CPU是什么东西,其工作原理是什么。(对于这些以及下面将要提到的概念我不会告诉你什么答案,你可以看相应的教材,关于教材我会在下一部分详述,记住理解最重要!)
2、机器语言和微指令集的概念。
3、程序的概念。
4、汇编语言是低级语言但不是机器语言。
5、高级语言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,Java等等;如果你是中国软件业的英雄,你也写一门语言,最好不用英语) 6、编译程序和解释程序的概念和其原理。(编译器是高手和专家编写的)
7、HTML、XML等是标识性语言。
8、Prolog是人工智能语言。
9、操作系统OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,Linux,等等都是OS,还有一些实时OS,嵌入OS,编这些的绝对是高手)
10、Windows编程说白了就是Windows API的调用。(中国的程序员很多只是会编windows程序,用的是VB,我的建议是这些程序员顶多只是低级编码员,我称其是coder)
11、VC++、VB、BC、BCB、Delphi、VF等都只是编程的工具和环境,不是编程语言。
12、面向结构的设计概念。
13、面向对象的概念。(好好理解,兄弟,这个东西还是很重要的)
14、软件工程的概念和原理。(如果你想当老总就需要好好研究了,系统分析员比编码员要高一个等级,薪水也高哟)
15、数据库的概念。(要熟悉一些着名的数据库系统和语言的名字,如Orcle,SQL,DB2,DyBase等)
16、了解网络概念。
17、了解多媒体概念。
18、熟悉和掌握数据结构和基本算法。
19、是不是要求太高了,别着急慢慢来,进步在不知不觉之中。(一旦开始学习,一个月以后你就会有一个基本的概念;两个月以后你就会感觉自己有了全面的基础知识;当你知道编程序是怎么回事时,说明你已经入门了。也有很多人编了很多年程序还没有入门呢,你不会希望自己步其后尘吧。要有信心和耐心。沉不住气怎么能成大事?!)
(四) 教材推荐
――-推荐的教材主要还是针对概念来的,最好选用名校的教学用书。
1、《计算机组成原理》(熟悉)
2、《数据结构》(掌握)
3、《操作系统》(了解->熟悉)
4、《The C language》(掌握)
5、《编译原理》(了解原理)
6、《汇编语言》(了解)
7、《计算机网络》(了解)
8、《软件工程》(了解)
9、《关系数据库》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向对象设计》(掌握;结合C++学习)
(五)一些经验和体会
1、真正的程序员用C++;(一位专家说的)
2、动手去编程序;
3、动脑去思考;
4、要有良好的编程风格;
5、读书,读好书,尽量读原版书!(我反复强调这一点,读书要有选择,坚持读好书,名家出的经典书,不要浪费实践在一些粗制滥造的书上面;坚持博览群书)
6、有自己的学习计划;
7、总结自己的经验教训;(准备一个笔记本,记录错误和心得)
8、不要怕学新东西;
9、要有软件工程的思想;
10、善于发现问题,然后去寻找答案;
11、向高手请教;(要虚心直到你成为高手)
12、和同行交流;(不善于交流肯定不行)
13、懂得软件的实质,不要被千变万化的表象所迷惑;
14、真正要学习用的是编程语言和方法,不是什么库,什么类,什么工具;(学用那些什么库都比较简单,但光会这些库,我觉得还远远不够)
15、学习wiodows编程主要是学习windows OS和win32 API;
16、有空了解一下嵌入式开发;
17、有空了解一下PDA软件开发;
18、了解一下.NET框架和C#语言,也许它是你新的衣食父母;
19、要有耐心,不要作浮躁的人; 20、对程序加注释,并保留你的老程序;
21、学到的东西越多,了解的越多,你就越接近专家;
22、有空去逛逛CSDN,那里有你很多知己;
23、要有信心成为一个优秀的程序;
(六)一些好书的推荐
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向对象高效编程》
8、《设计模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推荐)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技术内幕》
14、《MFC 深入浅出》
15、《软件需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序员参考手册》
19、《用TCP/IP进行网际互连》
20、《COM 本质论》
(七)学习计划
――-这个学习计划是我个人定的,也共享给大家参考一下,共同进步吧。 1、《计算机组成原理》
2、《操作系统》
3、《数据结构》
4、《汇编语言》
5、《 C 》
6、《 C++ 》
7、《VC 技术内幕》
8、《Programming Windows》
9、《深入浅出MFC》
10、《Advanced Windows》
11、《Inside The C++ Object Model》
12、《Thinking in C++》
13、《Effective C++》
14、数据库
15、网络
16、嵌入式OS和编程
17、硬件单片机
18、.NET和C#
19、软件工程
20、UNIX和Linux
Ⅵ LINUX和UNIX系统哪个好,分别有什么优势,有人知道吗
可以看看下面的对比:
UNIX是在posix之前就有的,Linux是在posix出来之后有的,最初的Linux是仿制的minix,UNIX和Linux很多软件都是相通的,Linux是UNIX的一个分支,别的分支还有freebsd等,UNIX是命令行下的系统,Linux是可以算加了窗体管理的系统。
UNIX是一个功能强大、性能全面的多用户、多任务操作系统,可以应用从巨型计算机到普通PC机等多种不同的平台上,是应用面最广、影响力最大的操作系统。
Linux是一种外观和性能与UNIX相同或更好的操作系统,但,Linux不源于任何版本的UNIX的源代码,并不是UNIX,而是一个类似于UNIX的产品。
从发展的背景看,Linux是从UNIX发展而来的。这种继承使得Linux的用户能大大地从UNIX团体贡献中获利。因为UNIX是世界上使用最普遍、发展最成熟的操作系统,它是七十年代中期发展起来的微机和巨型机的多任务系统,虽然有时接口比较混乱,并缺少相对集中的标准,但还是发展壮大成为了最广泛使用的操作系统之一。UNIX的用户可以从很多方面得到支持和帮助。因此,Linux做为UNIX的一个克隆,同样会得到相应的支持和帮助,直接拥有UNIX在用户中建立的牢固的地位。
从使用费用上看,UNIX与Linux的区别在于Linux是一种开放、免费的操作系统,而UNIX系统基本上需要有偿使用。这一区别使得我们能够不用花钱就能得到很多Linux的版本以及为其开发的应用软件。当我们访问Internet时,会发现几乎所有可用的自由软件都能够运行在Linux系统上。并且,一大批世界级的优秀的程序员正在努力开发和提供基于Linux的共享软件。 但是,也正是由于Linux源码可以开放的缘故,所以现在真正的商业应用尚未开始,原因很简单:任何人都可以了解其内部最薄弱的环节,都可以实施侵袭和攻击。
从产品方面看,UNIX和Linux都是操作系统的名称.但UNIX这四个字母除了是操作系统名称外,还作为商标归SCO所有.Linux商业化的有RedHat Linux 、SuSe Linux、slakeware Linux、国内的红旗等,还有Turbo Linux.UNIX主要有Sun 的Solaris、IBM 的AIX,HP的HP-UX,以及x86平台的的SCO UNIX/UNIXwareUNIX多数是硬件厂商针对自己的硬件平台的操作系统,主要与CPU等有关,如Sun 的Solaris作为商用,定位在其使用SPARC/SPARCII的CPU的工作站及服务器上,当然Solaris也有x86的版本,而Linux也有其于RISC的版本。
至于价格,个人使用的Linux基本上算是免费的,不同的Linux发行厂商针对企业级应用在基本的系统上有些优化,如RedHat的Enterprise产品,这些产品包括支持服务是比较贵的。像IBM/HP/SUN的UNIX,因为主要是针对其硬件平台,所以操作系统通常在设备价格中。
在性能上,Linux没有UNIX那么全面,但基本上对个人用户和小型应用来说是绰绰有余.通常情况下,如果你有机会使用到UNIX环境,比如银行、电信部门,那一般都是固定机型的UNIX。比如电信里SUN的居多,民航里HP的居多,银行里IBM的居多。学习中,不同的UNIX命令集有些不同。
——引自红黑联盟
作者“sxmalinhu”
Ⅶ 为什么程序员都喜欢Linux操作系统
着作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:钟宇腾
链接:
来源:知乎
是的,因为Linux目前为止,也没有为“普通”用户真正的优化过
要让“普通”用户接受Linux,除了弄一个像Windows或Mac OS一样的图形界面,没有其它办法
你不可能说服用户去尝试使用Terminal,普通用户理你才怪呢。不使用Terminal,Linux系统的优势为零,残废一样的图形界面根本无法获得普通用户的青睐,只能说是“可用”。
而作为程序员,学习和探索是一项最基本的能力
Linux的Terminal和开发环境、文件组织结构都可以大大的提高你的开发效率,尤其是Shell的命令、管道等等功能,把命令组合起来可以发挥让人意想不到的效果,也大大地提高你的工作效率
而要程序员去掌握Linux的用法将是非常容易的,因为程序员本身就有读懂文档的能力,相对于普通用户来说门槛太低了
但是你不能要求普通用户去接受Linux,至少现在不可能,因为Linux没有任何一处是为了普通用户着想的,普通用户去读文档将会让他们感觉到非常地苦恼和沮丧
Linux本身没有问题,因为它只是一个内核,普通用户能不能接受它那是GUI的问题,和配套软件的问题
同样是UNIX系,Mac OS X从BSD走出来之后,在这之上构建了一个绚丽的图形系统,但是其内核依然是BSD,也可以使用各种CLI工具,所以Mac OS X几乎就是喜欢Linux的程序员们的最终归宿
而Mac OS X的图形界面使得普通用户的使用门槛降低,普通用户也会喜欢使用它的
所以Mac OS X不就是一个很好的例子么?Linux般的开发体验+普通用户喜爱的图形界面的完美结合。其实Linux阵营目前也在努力,Ubuntu现在就是想让Linux系统更亲近用户,希望它能成功吧