系統(tǒng)架構(gòu)師-基礎(chǔ)到企業(yè)應(yīng)用架構(gòu)-表現(xiàn)層
一、前言 最近也許是由于假期的原因,我發(fā)布的文章的速度變慢了,對大家說下抱歉,這個(gè)系列的確我很難寫,感謝大家對我的支持和關(guān)注,的確我在發(fā)布后得到大家的支持和認(rèn)可,讓我有了更多的動(dòng)力,之前發(fā)布的有些內(nèi)容,可能對各層講解的內(nèi)容的廣度還不夠,當(dāng)然這和我個(gè)人的水平面有關(guān),還請各位多多提出寶貴意見和建議。 從... ...
白話算法(6) 散列表(Hash Table)從理論到實(shí)用(中)
不用鏈接法,還有別的方法能處理碰撞嗎?捫心自問,我不敢問這個(gè)問題。鏈接法如此的自然、直接,以至于我不敢相信還有別的(甚至是更好的)方法。推動(dòng)科技進(jìn)步的人,永遠(yuǎn)是那些敢于問出比外行更天真、更外行的問題,并且善于運(yùn)用豐富的想象力找到新的可能性,而且有能力運(yùn)用科學(xué)的方法實(shí)踐的人。 如果可以不用鏈表,把節(jié)... ...
白話算法(6) 散列表(Hash Table)從理論到實(shí)用(上)
● O(n) 查找和 O(1) 查找,兩個(gè)模型 ● 在計(jì)算機(jī)上實(shí)現(xiàn) O(1) 查找 ● 房子不夠住,難道睡馬路?● 用鏈接法處理碰撞 ● 如何讓21億人使用10個(gè)地址?● 除法散列法 ● 乘法散列法 ...
寫給剛剛畢業(yè)非名校而且正在迷惑中的工科大學(xué)生們之二——全真教與梅超風(fēng) 談程序員的修煉之路
一時(shí)激動(dòng) 寫下了這個(gè)系列之二。這個(gè)話題 其實(shí)在我上課的時(shí)候 已屬老調(diào)重彈的話題 即使在我的新書《葵花寶典——WPF自學(xué)手冊》中第15章也談過 但是還從未見之互聯(lián)網(wǎng)。這是把家底亮出來。當(dāng)然能夠?qū)懗鰜磉€是緣于第一篇 被大家所關(guān)注。老實(shí)講 這里是程序員的舞臺 我只不過是這個(gè)舞臺上的一個(gè)“龍?zhí)住?能夠得到大... ...
系統(tǒng)架構(gòu)師-基礎(chǔ)到企業(yè)應(yīng)用架構(gòu)-業(yè)務(wù)邏輯層
一、上章回顧 上章我們主要講述了系統(tǒng)設(shè)計(jì)規(guī)范與原則中的具體原則與規(guī)范及如何實(shí)現(xiàn)滿足規(guī)范的設(shè)計(jì),我們也講述了通過分離功能點(diǎn)的方式來實(shí)現(xiàn),而在軟件開發(fā)過程中的具體實(shí)現(xiàn)方式簡單的分為面向過程與面向?qū)ο蟮拈_發(fā)方式,而目前更多的是面向?qū)ο蟮拈_發(fā)設(shè)計(jì)方式。并且我們也講述了該如何通過設(shè)計(jì)手段去分析功能點(diǎn)及設(shè)計(jì)分離... ...
今天你拋棄了ASP.NET了嗎?問題篇
一個(gè)怨公的聲音--------------------------------------我用ASP.NET開發(fā)也有幾年了,一直在忍耐,忍耐,終于,我實(shí)在忍無可忍了。ASP.NET制造出來的問題比帶來的好處多的多的多的多!1. VIEWSTATE之類的問題就不說了,為了持久客戶端狀態(tài),用了個(gè)通用的架... ...
依賴屬性之“風(fēng)云再起”
由于依賴屬性是WPF和Silverlight的核心概念,微軟在C\S和B\S平臺上主要精力都放到了WPF和Silverlight技術(shù)上,同時(shí) Silverlight也是Windows Phone的兩大編程模型之一(另外一種是XNA),所以我們花費(fèi)了大量的時(shí)間和篇幅進(jìn)行論述。在上一篇WPF基礎(chǔ)到企業(yè)應(yīng)... ...
如何解決EnterLib異常處理框架最大的局限——基于異常類型的異常處理策略
個(gè)人覺得EnterLib的EHAB是一個(gè)不錯(cuò)的異常處理框架,借助于EHAB,我們可以配置的方式來自定義異常處理策略,從而帶來最大的靈活性和可維護(hù)性。但是,在我看來,EHAB有一個(gè)最大的局限,就是異常處理策略的粒度過大——只能提供基于異常類型級別。本篇文章通過一個(gè)自定義異常處理器很好地解決了這個(gè)問題。 ...
淺談這次ASP.NET的Padding Oracle Attack相關(guān)內(nèi)容
上一周爆出了一個(gè)關(guān)于ASP.NET的安全漏洞,有關(guān)這個(gè)漏洞的第一篇文章應(yīng)該是ScottGu的說明,但是其中各方面談的也是語焉不詳。由于這個(gè)漏洞關(guān)系到“安全”這樣敏感的話題,其中又涉及到密碼學(xué)這樣常人看不明白的技術(shù),于是導(dǎo)致了各種猜測和推測,其中甚至與我對ASP.NET的了解所有矛盾,因此我覺得也大都... ...
6個(gè)重要的.NET概念:棧,堆,值類型,引用類型,裝箱,拆箱
引言 本篇文章主要介紹.NET中6個(gè)重要的概念:棧,堆,值類型,引用類型,裝箱,拆箱。文章開始介紹當(dāng)你聲明一個(gè)變量時(shí),編譯器內(nèi)部發(fā)生了什么,然后介紹兩個(gè)重要的概念:棧和堆;最后介紹值類型和引用類型,并說明一些有關(guān)它們的重要原理?! ∽詈笸ㄟ^一個(gè)簡單的示例代碼說明裝箱拆箱帶來的性能損耗。聲明變量的內(nèi)... ...
Silverlight MMORPG網(wǎng)頁游戲開發(fā)課程[一期] 第七課:場景之地形與尋徑
在上一課實(shí)現(xiàn)場景遮擋效果的基礎(chǔ)上如能融合相應(yīng)的地形系統(tǒng),那么整個(gè)場景才能算做是個(gè)有機(jī)整體。傳統(tǒng)的2D-RPG游戲場景按視角劃分可分為橫向、縱向與斜向的,本節(jié)我將分別向大家介紹如何搭建基于直角坐標(biāo)系及斜視角的RPG游戲場景,并在此基礎(chǔ)上實(shí)現(xiàn)精靈的完美尋徑功能。 ...
詳解ASP.NET的最新安全漏洞,Padding Oracle攻擊原理及其他
微軟在9月17日中午正式對外公布了ASP.NET平臺下的安全漏洞,即Microsoft Security Advisory (2416728)。SecurityFocus上已將此漏洞定義成了"Design Error",那么微軟一開始的設(shè)計(jì)就是錯(cuò)誤的,為什么這么說呢?且待我們慢慢來分析。昨天在園友辰... ...
對ASP.NET的最新安全漏洞進(jìn)一步跟進(jìn)說明
今天上博客園,看見了關(guān)于ASP.NET的安全漏洞,內(nèi)容大致是:黑客可以下載ASP.NET網(wǎng)站的核心文件(WEB.CONFIG),我估計(jì)還可以下載任意文件,例如數(shù)據(jù)庫。這個(gè)BUG基本上是致命的,可是博客園的描述卻非常的少,我看了半天也沒有明白什么意思,如何攻擊,于是挖掘下去?,F(xiàn)在把一些明細(xì)寫出來。微軟... ...
Step by Step-構(gòu)建自己的ORM系列-開篇
首先、園子里面之前的很多同仁已經(jīng)討論過了ORM相關(guān)的框架及其優(yōu)點(diǎn)和缺點(diǎn)。雖然我本篇討論的有點(diǎn)晚,但是其畢竟優(yōu)點(diǎn)大于缺點(diǎn),本文只是簡單的介紹我討
論ORM的目的,及為什么要討論這個(gè)已經(jīng)被大家討論的成熟的不能再成熟的東西。
我們先來看看ORM的優(yōu)缺點(diǎn): ...
C++強(qiáng)大背后
在31年前(1979年),一名剛獲得博士學(xué)位的研究員,為了開發(fā)一個(gè)軟件項(xiàng)目發(fā)明了一門新編程語言,該研究員名為Bjarne Stroustrup,該門語言則命名為——C with classes,四年后改稱為C++。C++是一門通用編程語言,支持多種編程范式,包括過程式、面向?qū)ο?object-ori... ...
云計(jì)算之旅5—實(shí)戰(zhàn)第一個(gè)云程序
本篇文章在安排上大致如下:首先回顧前面的基礎(chǔ)知識,這樣大家就可以有一個(gè)大概的認(rèn)識;接著介紹開發(fā)工具,正所謂“工欲善其事,必先利其器”;再接著就是開發(fā)第一個(gè)簡單程序,通過這個(gè)簡單程序來看一下其開發(fā)過程;開發(fā)完畢之后就需要部署,在講部署之前我們必須要有賬戶來完成此操作,所以緊接著就依次講解賬戶申請和部署... ...
談?wù)勀阕钍煜さ腟ystem.DateTime
最近一直在負(fù)責(zé)公司內(nèi)部框架的升級工作,今天對一個(gè)小問題進(jìn)行了重新思考——時(shí)間的處理。具體來說,是分布式應(yīng)用中如何有效地進(jìn)行時(shí)間的處理以提供對跨時(shí)區(qū)的支持。不過,對該問題解決方案的介紹我會(huì)放在后續(xù)的文章中,在這里我們先來介紹一些基礎(chǔ)性的內(nèi)容——談?wù)勎覀兪煜さ腄ateTime類型 ...
IoC+AOP的簡單實(shí)現(xiàn)
對EnterLib有所了解的人應(yīng)該知道,其中有一個(gè)名叫PIAB的AOP框架;而整個(gè)EnterLib完全建立在另一個(gè)叫作Unity的底層框架之上,我們可以將Unity看成是一個(gè)IoC的框架。對于一個(gè)企業(yè)應(yīng)用來說說,AOP和IoC是我們進(jìn)行邏輯分離和降低耦合度最主要的方式,而將兩者結(jié)合起來具有重要的現(xiàn)實(shí)... ...
談如何邊做事,邊提高
來博客園的基本是寫程序的,好像是廢話,縮小點(diǎn)范圍,來這里起嘛證明,大家都想學(xué)習(xí)進(jìn)步,都是同道中的同道中人。興趣,往高一點(diǎn)說叫理想,是我們共同的動(dòng)力,從上一文中再次得到印證。 評論中,有位朋友說自己“每天晚上學(xué)習(xí)到兩三點(diǎn),早上再花一兩個(gè)小時(shí)趕到公司繼續(xù)做”,誠心佩服!想一兩年前的自己,亦要甘拜下風(fēng)???.. ...
由Effiproz DataBase來看.NET開源數(shù)據(jù)庫發(fā)展
這篇文章本來應(yīng)該寫在上個(gè)周末, 可是臨時(shí)有事給耽誤了,上周五在MSDN上看到Effiproz DataBase發(fā)布了1.2版本. 在Effiproz以前也用過幾個(gè)嵌入式開源數(shù)據(jù)庫. 不過Effiproz DataBase是純C#編寫的. 開發(fā)者就可以將它移植到具備CLR的大多數(shù)環(huán)境中,包括.NET ... ...



