㈠ 為什麼說不會偷懶的程序員不是好程序員
為什麼呢!我們可以舉些簡單的例子:1.只有懶惰的程序員才會去編寫那些可以最終代替自己工作的自動化工具,好的程序員都會有一套自己的代碼自動生成工具,有的是用模板語言,有的是用shell.在開發一個新的系統時,系統基礎框架設計好後,很多業務層代碼基本上都是一個模子出來的,要想讓這些代碼都是從一個模子里出來,那麼就需要在底層下很大的功夫才能做到.所以,每個程序員夠應該有,或者會寫代碼自動生成工具,當然,
為什麼呢!我們可以舉些簡單的例子:
1.只有懶惰的程序員才會去編寫那些可以最終代替自己工作的自動化工具,好的程序員都會有一套自己的代碼自動生成工具,有的是用模板語言,有的是用shell.在開發一個新的系統時,系統基礎框架設計好後,很多業務層代碼基本上都是一個模子出來的,要想讓這些代碼都是從一個模子里出來,那麼就需要在底層下很大的功夫才能做到.所以,每個程序員夠應該有,或者會寫代碼自動生成工具,當然,這個工具並不是一個成功工具!它的前提是你必須在底層有足夠的抽象.
2.只有懶惰的程序員才不會去去寫大段的冗餘重復的代碼,他們會想出各種方法來避免這種冗餘代碼的情況,做的好的,就是在系統的基礎架構層來解決大部分這樣的問題,通過精緻的設計模式,高度抽象的模塊,易用的介面,高度可配置的基礎平台等等來實現,做的一般的會利用各種開源工具來代替自己想要的代碼,做的差些的就是不斷利用refactor重構出那些重復代碼.
㈡ 想做一名程序員,談談你的優缺點
優點:會喘氣。
缺點:無理取鬧 裝可憐 色狼 耍流氓 猥褻 齷齪 變態 咸豬手 慣犯 六親不認 沒良心 游手好閑 一事無成 長不大 懦弱 精神有問題 盜竊 辱罵+打壓+攻擊朋友和親人 無所適從 體弱多病 窮 無能 惹事生非 敏感 神經病 沒人性 弱智 反應遲鈍 鑽死牛角尖 下流無恥 不知好歹 死板 膽小如鼠 犯奇葩 作惡多端 腦殘 騙取同情 行騙 沒誠意 不明事理 無上進心 不孝 窩囊 思想極端 沒禮貌 白眼狼 自我中心 自以為是 撒謊 發壞 骯臟 懶惰 不守信用 干擾單位工作秩序 隨地亂扔垃圾和吐痰以及大小便 心理扭曲 嘩眾取寵 搗亂 傻子 討人嫌 不愛干凈 不老實 忘恩負義 早出晚歸 夜不歸宿 自私自利 纏人 賣國 反動 濫用職權 二百五 許可權狗 犯賤 反咬一口 破罐子破摔 記憶力差 笨 幸災樂禍 挑釁 黑化+冒充人 出賣人 斤斤計較 霸道 犯二 暴力 威脅人 不要臉 沒臉沒皮 厚臉皮 獨裁 報復人 傷害人……
㈢ 程序員需要有多懶
我認識到一個非常有悖常理的現象,優秀的程序員都是即懶又傻的。
因為懶,他才會寫出各種各樣的工具來替自己幹活。因為懶,他才會想辦法避免去寫無聊重復的代碼——因此避免的代碼的冗餘,消減了維護的成本,使重構變得容易。最終,這些由於懶惰激發出的動力而開發出的工具和最佳編程實踐方法提升了產品的質量。
懶惰的程序員也因此變成了優秀的程序員。當然,這只是事情的一部分;從一個懶惰的程序員變成一個優秀的程序員,他/她會在學習如何能夠永遠保持懶惰時表現出驚人的不懶惰——也就是,什麼樣的軟體工具能讓自己幹活更輕松,什麼方法能避免繁冗,如何能讓工作更容易的維護和重構。
其次,(我將用多一點篇幅來說明這一點,因為我發現這個觀點比第一個更難接受。)優秀的程序員都是傻的。為什麼?因為如果他很聰明,或他知道自己很聰明,他就會:
a)停止學習
b)對自己的工作不再高標准、高要求
第一點將會導致他不再努力的去發現新的技術,讓自己工作的更快捷。第二點將導致他的代碼變得難以debug,難以重構。在程序員和編譯器無休止的戰爭中,程序員最好一開始就投降並承認是自己的錯,而不是編譯器的錯(除非是關於字元編碼問題,有些編譯器確實有問題)。
但是,還有一個優秀的程序員必須笨的更重要的理由。為了尋找到更好的問題解決方案,他必須保持一個謙虛的心態,他必須跳出模式想問題。某種程度上,這會讓他們回到小孩的思維模式;因從未經歷「no」的打擊而極具創造力。
相反的思維模式就不是那麼具有創見性,會認為對現狀了如指掌,會接受現狀。可是又有誰知道多少你認為的不可能是真正的不可能?知道的越少你就會越激進。你開發的工具越好,你的產品就會因為它們變得質量更高。
㈣ java是誰發明的
十大事件與Java相關的四十個名字
1990-1994:Java緣起
文/孟岩
Larry Wall說,優秀程序員應有的三個特點:懶惰、急躁和傲慢。Java就是誕生在一群懶
惰、急躁而傲慢的程序天才之中。
1990年12月,Sun的工程師Patrick Naughton被當時糟糕的Sun C++工具折磨的快瘋了。
他大聲抱怨,並威脅要離開Sun轉投當時在Steve Jobs領導之下的NeXT公司。領導層為了
留住他,給他一個機會,啟動了一個叫做Stealth(秘密行動)的項目。隨著James
Gosling等人的加入,這個項目更名為Green。其目標是使用C++為嵌入式設備開發一種新
的基礎平台技術,James Gosling本人負責開發一個SGML編輯器。正如人們事後分析的那
樣,這位天才的程序員太懶惰,所以沒有把C++學好,開發中碰了一頭包;太急躁??所以
不願意停下來讀讀Scott Meyers的新書《Effective C++》;太傲慢??所以輕易地決定開
發一中新的編程語言。他把這種語言命名為C++++--,意思是C++「加上一些好東西,減
去一些壞東西」。顯然這個糟糕的名字不可能長命百歲,很快這種頗受同伴喜愛的小語
言被命名為Oak。
到了1992年9月,Oak語言連同Green OS和一些應用程序一起發布在稱做Start 7的小設備
上,從而使之有了第一次精彩的亮相。隨後,Sun開了一家名為FirstPerson的公司,整
個團隊被轉移到這家公司里研發機頂盒,以投標時代華納公司的一個項目。這幫天才被
技術狂熱所鼓舞,開發出了一個高交互性的設備,結果沒想到時代華納公司和有線電視
服務商並不願意用戶擁有那麼大的控制權,從而在競標之戰中敗給了SGI。Oak的鋒芒之
銳,竟然把客戶都給嚇懵了。Sun沮喪地關閉了FirstPerson,召回了整個團隊。事實證
明,傳統行業中那些腦滿肥腸的保守主義者是腐朽沒落的。回去!回到激情澎湃的IT產
業,抓住互聯網的大潮,這才是出路!1994年,Oak被命名為Java,針對互聯網的新一輪
開發如火如荼,一切已經就緒,熔岩在地下奔流,火山即將噴發。
1995: Java香濃世界
文/馬偉
1995年,Sun正式對外公布了Java,並且發布了JDK 1.0。這種外形酷似C++,卻包含一顆
Smalltalk般純潔的面向對象之心的全新程序設計語言及其平台,幾乎在一夜之間就成為
軟體產業的新寵兒。Java當時僅僅被用來為網站製作一些動態應用,諸如動畫圖片之類,
但這仍然引起了很多Web開發者們的注意,他們非常渴望有一種安全的語言,可以在靜態
的HTML網頁上製作動畫圖片。Sun最終把Java集成到NetScape瀏覽器。同時因為它具有
「只寫一次,隨處運行」的特性,而引起了很多開發者的注意,他們可以再也不用為了
使程序能夠在不同型號的硬體上運行而耗費大量的時間來編譯代碼了。
當時的Web瀏覽器的出現也為Java的出現起到了很好的推動作用,通過Java和Web瀏覽器
的結合,人們似乎看到了什麼,有人甚至預言PC將在一兩年內退出歷史的舞台,取而代
之的是基於Java的瀏覽器應用程序,通過網路計算設備來進行應用。Java的出現為當時
的軟體產業帶來了無限的遐想。
1996:Java大躍進,盟主地位就此定
文/馬偉
SUN在1996年一開始首先成立了JavaSoft組織,並在1月23日正式發布自己的Java 1.0,
作為20世紀業界出現的最重要的技術之一,Java引起了編程世界的革命。直到現在,
Java仍然是互聯網上最流行的語言。
在Sun正式發布Java 1.0之後,Java這門新生的語言就擁有了自己的會議??JavaOne,這
次會議初試啼音就吸引了600多名參與者。除了擁有這么多的積極參與者來進行Java的開
發之外,各大知名公司也紛紛向Sun申請Java的許可。一時間,NetScape、惠普、IBM、
Oralce、Sybase甚至當時剛推出Windows 95的微軟都是Java的追隨者。
Java的應用就像是世界上的頂級玩家們組成的一個公開聯盟,告訴全世界我們大家就是
都在用著Java。也正是因為如此,Java也找到了自己的歸宿。現在的J2EE已經成為中大
型企業級應用的標准,成為承接資料庫和Web之間的一個重要橋梁。
當年Java的機會實在太多了,以至於很難知道到底該做什麼。最終Java在應用伺服器市
場獲得了難以取代的地位,也確定了J2EE的發展方向,並且仍將延續下去。
1997-2001: 微軟與Sun的Java官司
文/孟岩
Java誕生的1995年,正是微軟在軟體產業地位達到巔峰的時代,Windows 95發布時的風
光場面給人們留下的深刻印象至今難忘。盡管如此,作為最卓越的技術領袖,比爾?蓋茨
仍然敏銳地注意到Java。當他了解了Java的一些細節之後,給予了這樣的評價:「Java是
很長時間以來最優秀的程序設計語言。」基於此,微軟於1996年3月申請並獲得了Java許
可證。微軟對於Java的這一熱情態度在當時大大提高了人們對Java的興趣和信心,但也
有不少人擔心微軟會依靠自己強大的影響力在標准之外另立標准,從而破壞Java的純潔
性。
果然,從1997年發布Visual J++的第一個版本開始,微軟就開始在Java中摻入自己的私
有擴展。這毫無疑問引起Sun的高度重視。1997年10月,Sun向美國加州地方法院起訴微
軟公司違反兩公司就微軟使用Java技術所簽定的合同,指控微軟公司在自己的Java產品
中做了「不恰當的修改」,違反了合同中承諾向用戶提供Java兼容產品的條款。這一官
司曠日持久,直到2001年1月雙方達成和解,微軟將繼續提供採用Sun開發的Java技術的
現有產品(包括測試版)。不過,Sun有限制地僅對包括Java 1.1.4的微軟產品提供許
可。到了2001年7月,微軟公布新版的Windows XP將不再支持Sun的JVM,並且推出了.NET
平台與Java分庭抗禮。
現在回過頭去看,當時的這一場官司對Java世界產生了深遠的影響。如果沒有這一場官
司,也許很多Java程序員都在使用Visual J++,基於WFC開發Windows客戶端程序,同時
不得不面對被兩個不同的事實標准所分裂的Java世界。
㈤ 調侃it程序員搞笑段子
程序員段子1、一個好的程序員是那種過單行線馬路都要往兩邊看的人。(Doug Linder)2、程序有問題時不要擔心。如果所有東西都沒問題,你就失業了。(軟體工程的Mosher定律)3、程序員的麻煩在於,你無法弄清他在搗騰什麼,當你最終弄明白時,也許已經晚了。(超級計算機之父Seymour Cray)4、我想大部分人都知道通常一個程序員會具有的美德。當然了,有三種:懶惰,暴躁,傲慢。(Perl語言發明者Larry Wall)5、編程時要保持這種心態:就好象將來要維護你這些代碼的人是一位殘暴的精神病患者,而且他知道你住在哪。(Martin Golding)6、一個人寫的爛軟體將會給另一個人帶來一份全職工作。(Jessica Gaston)7、如果建築工人像程序員寫軟體那樣蓋房子,那第一隻飛來的啄木鳥就能毀掉人類文明。(Gerald Weinberg)8、這世界最有可能毀滅的方式大多數專家都同意是次意外。這就是為什麼會有我們,我們是計算機專家,我們創造意外。(Nathaniel Borenstein)9、我們這個行業有個特別奇怪的現象:不僅我們不從失敗里吸取教訓,同時也不從成功中學習經驗。 (Keith Braithwaite)10、一種新技術一旦開始流行,你要麼坐上壓路機,要麼成為鋪路石。(Stewart Brand)11、一同學問我,軟體外包是什麼。解釋了幾句還沒明白,遂想了一下:包工頭知道吧?頓悟!12、十行代碼九個警告八個錯誤竟然敢說七日精通六天學會五湖四海也不見如此三心二意之項目經理簡直一等下流。13、一個程序猿在肉店買了1公斤肉,回家一稱,他不高興的跑回肉店對老闆說:少了24克14、網路聊天的時候,想表達對方是豬,一般人會打xxx你這個豬。,程序員會打 xxx.isPig = TRUE。15、兩個程序員,一個技術精湛,思維嚴謹,認真負責,Bug極少,至今單身;一個技術一般,吊兒郎當,Bug一堆,經常被測試MM叫到她旁邊,接受批評,後來成了她男朋友16、寶寶數學很好,2歲就可以從1數到10了。後來,我告訴他0比1還小。今天吃餃子,我說:寶寶,你數數你想吃幾個餃子?0,1,2,3。一邊說著一邊拿起一個餃子,這是第0個。老婆怒吼:下一代還是做程序員的命!17、程序員找不到對象,一般有三種情況:C#、JAVA都有對象,但是經常找不到對象。ASM C直接沒有對象。javascript都是偽對象,最多算曖昧。但C++日子一直都好過,因為C++是多繼承,富二代呀!!!18、程序猿:我的第一個問題是,對於我第二個和第三個問題,你可不可以只用能和不能來回答?老闆:OK!我的第二個問題是,如果我的第三個問題是我能不能漲工資?那麼你對於我的第三個問題的答案能不能和第二個問題的答案一樣?老闆:19、假如生活欺騙了你,找50個程序員問問為什麼編程;假如生活讓你想死,找50個程序員問問BUG改完了沒有;假如你覺得生活拮據,找50個程序員問問工資漲了沒有;假如你覺得活著無聊,找50個程序員問問他們一天都幹了什麼!20、c程序員看不起c++程序員, c++程序員看不起java程序員, java程序員看不起c#程序員,c#程序員看不起美工, 周末了,美工帶著妹子出去約會了一群傻X程序員還在加班!21、客戶被綁,蒙眼,驚問:想干什麼?對方不語,鞭笞之,客戶求饒:別打,要錢?又一鞭,十萬夠不?又一鞭,一百萬?又一鞭。客戶崩潰:你們TMD到底要啥?要什麼?我幫你做項目,寫代碼的時候也很想知道你TMD到底想要啥!22、這位同學,請問你知道《邊城》嗎?呸!別跟我提編程,老子這輩子最討厭的就是編程!23、摘自雷登書屋數據處理字典: 死循環: n.,見無限循環。 無限循環:n.,見死循環。24、一個人正吸著雪茄,吐著煙圈。他女朋友生氣了發飆道,你沒看見包裝盒上的警告么?吸煙有害健康! 那人回答道:我是程序員。我們不關心警告,只關心錯誤。25、程序員的四大理想:南極有套房,澳大利亞有群羊,全世界電腦死光光,孩兒有個娘。26、有一種崩潰叫密碼輸入有誤;有一種驚慌叫做賬號異地登陸;有一種感情叫隱身對其可見;有一種誤會叫人機離線;有一種失落叫沒有訪問許可權;有一種感情叫站點訪問失敗;有一種無奈叫bug無法復現。27、黑體的鋸齒,宋體的滄桑,崩潰的避頭尾集。美工永遠糾結於網站程序員的粗獷,就像MAC永遠不懂PC的憂傷。程序員搞笑段子28、程序猿追求MM不成,含淚追問:我在你眼裡算什麼?!MM答曰:真人版的windows優化大師極客哥們莫傷心,小戴安慰遞紙巾。29、據說有一位軟體工程師,一位硬體工程師和一位項目經理同坐車參加研討會。不幸在從盤山公路下山時壞在半路上了。於是兩位工程師和一位經理就如何修車的問題展開了討論。硬體工程師說:我可以用隨身攜帶的瑞士軍刀把車壞的部分拆下來,找出原因,排除故障。項目經理說:根據經營管理學,應該召開會議,根據問題現狀寫出需求報告,制訂計劃,編寫日程安排,逐步逼近,alpha測試,beta1測試和beta2測試解決問題。軟體工程說:咱們還是應該把車推回山頂再開下來,看看問題是否重復發生。