【技術(shù)開發(fā)焦點(diǎn)】C#多線程學(xué)習(xí)(六) 互斥對象
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
緣起 每次有新技術(shù)發(fā)布時(shí),我們總能感受到兩種截然不同的情緒:一種是恐懼和抵抗,伴隨著這種情緒的還有諸如"C# 2.0用的挺好的,為什么要在C# 3.0搞到那么復(fù)雜?"或者"我還在使用C#1.0呢?"等言辭;...
軟件工程是一門獨(dú)特的工程藝術(shù),需要解決的是不斷改變的需求變化。而對于WCF,對于SOA,由于涉及的是對多個(gè)系統(tǒng)之間的交互問題,如何有效地解決不斷改變的需求所帶來的問題就顯得更為重要:Service端...
在本篇文章上一部分Order Processing的例子中,我們看到原本已Collection形式定義的DetailList屬性(public IList<TDetail> DetailList),在Data Contract中卻以Array的方式體現(xiàn)(public OrderDetai...
通過第一部分的介紹,我們可以體會(huì)到,WCF 的Data Contract在CLR Type和Neutral Contract之間搭建了一座橋梁,彌合了.NET世界和廠商中立世界的差異。通過WCF Data Contract我們將CLR Data Type暴...
|
英文原文:How Would You Build Up a City from Components? 為什么越來越多的企業(yè)應(yīng)用開發(fā)正在轉(zhuǎn)向組件框架和解決方案?組件架構(gòu)是否有前途?我相信答案是肯定的,而且很快所有開發(fā)框架都將會(huì)是基于組件的&mdas...
我一直在IT企業(yè)的研究部門任職,迄今經(jīng)歷了三家公司:NEC、微軟、華為。工作都是既有基礎(chǔ)研究,又有產(chǎn)品開發(fā)。其實(shí),這兩者既有密切聯(lián)系,性質(zhì)上又迥然不同。前者在于發(fā)現(xiàn)或發(fā)明普適性的理論與方法,后者在于開發(fā)實(shí)用性...
英文原文:Express names in code: Bad vs Clean 編程初學(xué)者總是把大量的時(shí)間用在學(xué)習(xí)編程語言、語法、技巧和編程工具的使用上。他們認(rèn)為,如果掌握了這些技術(shù)技巧,他們就能成為不錯(cuò)的程序員。然而,計(jì)算機(jī)編程...
在《建設(shè)全功能團(tuán)隊(duì)》和《建設(shè)全功能團(tuán)隊(duì)——實(shí)踐篇》兩篇文章中,我的同事胡凱曾介紹過建設(shè)全功能團(tuán)隊(duì)的必要性和良好實(shí)踐,此后在圍繞這一話題的討論中,很多人都分享了自己的理解,或看好,或看淡。在Tho...
項(xiàng)目代碼風(fēng)格要求PDF版下載:項(xiàng)目代碼風(fēng)格要求V1.0.pdf代碼風(fēng)格沒有正確與否,重要的是整齊劃一,這是我擬的一份《項(xiàng)目代碼風(fēng)格要求》,供大家參考。1. C# 代碼風(fēng)格要求1.1注釋類型、屬性、事件、方法、方法參數(shù),根據(jù)需...
英文原文:The Best Developer Team Structure 在滅火時(shí),有一種“水桶陣型”——隊(duì)伍中所有人排成一列或幾列,將水桶從水源處傳遞到火災(zāi)現(xiàn)場。這樣在團(tuán)隊(duì)協(xié)作時(shí)甚至不需要語言交流,但顯然...
運(yùn)用一門程序設(shè)計(jì)語言對大多數(shù)程序員來說是小菜一碟,但是更上一層樓成為一名專家級(jí)的軟件開發(fā)者,恐怕目前還是大多數(shù)人的夢想。《程序員的思維修煉》一書中將程序員分為5個(gè)層級(jí):新手,高級(jí)新手,勝任者,精通者,專家。...
英文原文:Avoiding "the stupid hour" 時(shí)不時(shí)地,總會(huì)聽到、看到一些團(tuán)隊(duì)頻繁熬夜加班,甚至覺得這很浪漫。他們的想法是跟夜晚作弊,持續(xù)編寫代碼或做其他事情。有時(shí)這是因?yàn)槌轱L(fēng)的經(jīng)理,但也有時(shí)誘因來自團(tuán)隊(duì)內(nèi)...
其實(shí)吧,內(nèi)存泄露一直是個(gè)令人頭疼的問題,在帶有GC的語言中這個(gè)情況得到了很大的好轉(zhuǎn),但是仍然可能會(huì)有問題。一、什么是內(nèi)存泄露(memory leak)?內(nèi)存泄露不是指內(nèi)存壞了,也不是指內(nèi)存沒插穩(wěn)漏出來了,簡單來說,內(nèi)存泄露就是...
英文原文:Patterns for Continuous Delivery 當(dāng)你有了持續(xù)集成需要的構(gòu)建服務(wù)器和腳本之后,下一個(gè)問題肯定是:“我們該拿這些構(gòu)建版本怎么辦?”持續(xù)交付,以自動(dòng)化或半自動(dòng)化方式,將構(gòu)建版本從一個(gè)環(huán)...
英文原文:There is No Right Way to Develop Software 驅(qū)動(dòng)測試開發(fā)(TDD)是唯一能讓你寫出沒有 bug 的程序的方法。只有結(jié)對編程是可行的。我們之所以成功就是因?yàn)槲覀兪褂玫氖沁h(yuǎn)程開發(fā)人員。等等等等&hel...
英文原文:It Should Only Take You a Few Hours… 做一張桌子看起來十分的簡單。任何人都可以做,不是嗎?找個(gè)大塊的四方形木板,四個(gè)等長的木頭柱子,四個(gè)釘子和一個(gè)錘子。把四個(gè)柱子釘?shù)剿姆桨宓乃膫€(gè)角上...
英文原文:11 Laws of The System Thinking in Software Development “我會(huì)更加努力地工作” —— 一匹名叫Boxer的馬(出自喬治·奧威爾的《動(dòng)物農(nóng)莊》) 彼得·圣吉在其...
幾年前,我從溫伯格的《技術(shù)領(lǐng)導(dǎo)之路》中學(xué)到一點(diǎn):技術(shù)人員往往更喜歡和機(jī)器打交道,因?yàn)樗麄?ldquo;認(rèn)為”自己更適合和機(jī)器打交道;但是,優(yōu)秀的技術(shù)人員必須(也必然)具備好的溝通能力。所以,溫伯格鼓勵(lì)各位技術(shù)...
馬斯洛需求層次理論告訴我們,當(dāng)人窮困的時(shí)候,首要解決的是溫飽問題。解決了溫飽問題之后,接下來需要獲得的是精神上的滿足。產(chǎn)品也是一樣,給用戶解決問題是溫飽問題,打動(dòng)用戶,在情感上獲得用戶的共鳴則是精神上的...
英文原文:Code Organization in Large AngularJS and JavaScript Applications 本文作者Cliff Meyers是一個(gè)前端工程師,熟悉HTML5、JavaScript、J2EE開發(fā),他在開發(fā)過程中總結(jié)了自己在應(yīng)對JavaScript應(yīng)用越來...
什么是遺留系統(tǒng)(Legacy System)?根據(jù)維基百科的定義,遺留系統(tǒng)是一種舊的方法、舊的技術(shù)、舊的計(jì)算機(jī)系統(tǒng)或應(yīng)用程序[1]。這一定義事實(shí)上并沒有很好地揭露遺留系統(tǒng)的本質(zhì)。我認(rèn)為,遺留系統(tǒng)首先是一個(gè)還在運(yùn)行和使...
菜菜是個(gè)開朗樂觀的90后小文藝少女,隨和開放。飯飯是個(gè)睿智嚴(yán)謹(jǐn)?shù)?0后程序員,溫和傳統(tǒng)。她還是個(gè)大學(xué)生,他已是工作族。故事的發(fā)生始于青天白日被一大捆Money砸中的相愛幾率,兩個(gè)人的生活也從此發(fā)生了翻天覆地的...
首先,我不是標(biāo)題黨。其次,我只想說說十年來我自己的關(guān)于編程的故事,做過的一些亂七八糟的程序。我的成長并不快,下面這些程序已經(jīng)足夠讓我丟臉的了,喜歡發(fā)難的朋友,盡管嘲笑我吧(當(dāng)然,如果你產(chǎn)生了共鳴,我們或許是同...
IT 技術(shù)的發(fā)展日新月異,新技術(shù)層出不窮,具有良好的學(xué)習(xí)能力,能及時(shí)獲取新知識(shí)、隨時(shí)補(bǔ)充和豐富自己,已成為程序員職業(yè)發(fā)展的核心競爭力。本文中,作者結(jié)合多年的學(xué)習(xí)經(jīng)驗(yàn)總結(jié)出了提高程序員學(xué)習(xí)能力的三個(gè)要點(diǎn)。 ...
英文原文:The Google File System,編譯:ImportNew - 儲(chǔ)曉穎 新浪微博:@瘋狂編碼中的xiaoY 【譯者預(yù)讀】 GFS這三個(gè)字母無需過多修飾,《Google File System》的論文也早有譯版。但是這不妨礙我們加點(diǎn)批注...
【編者注】王淮是Facebook第二位中國籍工程師,也是第一位中國籍研發(fā)經(jīng)理,他一手開創(chuàng)了Facebook的支付安全和客服工具領(lǐng)域。2011年他離開Facebook,回國成為天使投資人,希望用自己在Facebook的經(jīng)驗(yàn)幫助創(chuàng)業(yè)者。 ...
今天發(fā)了一條微博:會(huì)原生 JavaScript 不代表什么,懂 jQuery、YUI 等才真正好。怎么這么多人有原生主義情結(jié)呢?走出那點(diǎn)小天地,海闊天高。 很多人已經(jīng)猜出,這是為了晚上的文章而發(fā),提前收集大家的想法。這個(gè)話題...
Paul Irish是著名的前端開發(fā)工程師,同時(shí)他也是Chrome開發(fā)者關(guān)系團(tuán)隊(duì)成員,jQuery團(tuán)隊(duì)成員,Modernizr、 Yeoman、CSS3 Please和HTML5 Boilerplate的lead developer。針對大家對WebKit的種種誤解,他在自己的博客發(fā)...
經(jīng)常有新入職的同學(xué),搞不清設(shè)計(jì)師和別的職位如產(chǎn)品經(jīng)理,在工作內(nèi)容上有什么區(qū)別。回答了幾次之后,我總結(jié)出兩方面的差別,簡單概括為:技能和定位。 “技能”指的是設(shè)計(jì)師掌握了項(xiàng)目中其他角色都不具...