實值型別的裝箱和拆箱

實值型別是比參考型別更“輕型”的一種類型,因為它不需要作為對象在託管堆中分配,不會被記憶體回收,也不通過指標來引用。 static void Main() { System.Collections.ArrayList list = new System.Collections.ArrayList(); Point p;//分配一個Point,不在堆中分配。 for (int i = 0; i <

JS 跨域問題。。

本來看著好玩的,在自己部落格上弄個一個tx微博,但是突然發現姓名和地址的寬度在google裡有點大,擠變形了,唉。。不想用css,css覆蓋啊啥的也不行啊,用js改變寬度。。結果悲劇的發現了這個js跨域問題找資料。。未解決。。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html

對象相等性和同一性

System.Object類型提供了一個名為Equals的虛方法,它的作用是比較兩個對象包含相同的值返回true。 System.Object是這樣實現的:public class Object{public virtual Boolean Equals(Object obj){if(this==obj) return ture;return

lock Monitor 生產者消費者

public class Cell {bool flags = false;int result = 0;public void Write(int n) {lock (this) {if (flags) {try { Monitor.Wait(this); }catch

把指定表中的列添加到目標表中不包含的列

CREATE PROC pro_addColumn(@oldDB VARCHAR(20),@newDB VARCHAR(20),@oldtable VARCHAR(50),@newtable VARCHAR(50))ASEXEC ('USE '+ @newDB+'')IF object_id(''+@newtable+'') is null BEGIN PRINT @newtable+'不存在,建立表' EXEC('SELECT * INTO '+@newtable+' FROM '+@

不是HR,Leader你到底需要招什麼樣的程式員(變形金剛?超人?可能嗎!)

不是HR,Leader你到底需要招什麼樣的程式員        ------變形金剛?超人?可能嗎?前言:  被別人面試過,也面試過別人;揣摩著別人的招聘需求,自己也在寫著不著邊際的招聘需求,寫完一看,我了個去了,我是在招超人嗎?突然問自己,我要招什嗎?是可以實實在在工作的員工,還是電影裡面的超人和變形金剛?平時和朋友們坐在一起,看看別人寫的招聘需求都會拿出來調侃一番,這哪是在招人啊,這是找超人,要會這,又要會那,有這樣的人嗎?有,也許可以有,也許是真有,這工資要給多少,給的起嗎,給的起能滿足這

html5 初試 Web SQL Database

Web SQL Database API不包含在html5規範中,它是一個獨立的規範,它引入了一套使用 SQL 操作用戶端資料庫的 API。所有現代瀏覽器都支援此API。它使用的SQL是SQLite 。html5 中使用 Local and session storage 本機存放區非常的方便,索引值對方式雖說是使用方便,但對一些大量的資料結構處理就力有不及了,而Web SQL Database正適合這種類型的資料存放區。Web SQL Database 是非同步。串連/建立Database: 

group by,case then

在帶有group by 子句的查詢語句中,在select 列表中指定的列要麼是group by 子句中指定的列,要麼包含聚組函數select ClientMediaTypeID,count(ID) from Table group by Table.ClientMediaTypeID

[Tools]常用的幾個VS配套工具

1.Resharper   ReSharper是一款微軟Visual Studio .NET 2008的外掛程式,提供了智能C#輔助編碼功能和即時錯誤顯示功能,並支援重構。ReSharper為C#開發人員提供許多能夠有效提高生產力的功能,這些功能已被成千上萬使用IntelliJ IDEA的Java程式員所採用  安裝完成之後VS的Menu會多出一項:Resharp,具體提示請自行Google 2.StyleCop   Microsoft

[Tools].Net UI Spy工具:ManagedSpy

很久之前在接手一個大型的Winform項目的時候。有如下困難:1,項目很大整個產品的Build由1400多個Project組成2,產品的組件、控制項太多太多3,代碼已經是N代傳到N代了基於以上的現狀,項目組中的人員,沒有誰對於整體能大概的把握。那麼在維護和修改的時候,如何能根據UI的操作,快速定位到某個控制項、組件的代碼位置,就十分必要了。當時首先想到的就是找一個UI

依賴倒置原則

定義:高層模組不應該依賴低層模組,二者都應該依賴其抽象;抽象不應該依賴細節;細節應該依賴抽象。問題由來:類A直接依賴類B,假如要將類A改為依賴類C,則必須通過修改類A的代碼來達成。這種情境下,類A一般是高層模組,負責複雜的商務邏輯;類B和類C是低層模組,負責基本的原子操作;假如修改類A,會給程式帶來不必要的風險。解決方案:將類A修改為依賴介面I,類B和類C各自實現介面I,類A通過介面I間接與類B或者類C發生聯絡,則會大大降低修改類A的幾率。        

介面隔離原則

定義:用戶端不應該依賴它不需要的介面;一個類對另一個類的依賴應該建立在最小的介面上。問題由來:類A通過介面I依賴類B,類C通過介面I依賴類D,如果介面I對於類A和類B來說不是最小介面,則類B和類D必須去實現他們不需要的方法。解決方案:將臃腫的介面I拆分為獨立的幾個介面,類A和類C分別與他們需要的介面建立依賴關係。也就是採用介面隔離原則。舉例來說明介面隔離原則:(圖1  未遵循介面隔離原則的設計)        

迪米特法則(最少知道原則))

定義:一個對象應該對其他對象保持最少的瞭解。問題由來:類與類之間的關係越密切,耦合度越大,當一個類發生改變時,對另一個類的影響也越大。解決方案:盡量降低類與類之間的耦合。         自從我們接觸編程開始,就知道了軟體編程的總的原則:低耦合,高內聚。無論是面向過程編程還是物件導向編程,只有使各個模組之間的耦合盡量的低,才能提高代碼的複用率。低耦合的優點不言而喻,但是怎麼樣編程才能做到低耦合呢?那正是迪米特法則要去完成的。        

單一職責原則

定義:不要存在多於一個導致類變更的原因。通俗的說,即一個類只負責一項職責。問題由來:類T負責兩個不同的職責:職責P1,職責P2。當由於職責P1需求發生改變而需要修改類T時,有可能會導致原本運行正常的職責P2功能發生故障。解決方案:遵循單一職責原則。分別建立兩個類T1、T2,使T1完成職責P1功能,T2完成職責P2功能。這樣,當修改類T1時,不會使職責P2發生故障風險;同理,當修改T2時,也不會使職責P1發生故障風險。        

裡氏替換原則

肯定有不少人跟我剛看到這項原則的時候一樣,對這個原則的名字充滿疑惑。其實原因就是這項原則最早是在1988年,由麻省理工學院的一位姓裡的女士(Barbara Liskov)提出來的。定義1:如果對每一個類型為 T1的對象 o1,都有類型為 T2 的對象o2,使得以 T1定義的所有程式 P 在所有的對象 o1 都代換成 o2 時,程式 P 的行為沒有發生變化,那麼類型 T2 是類型 T1

開閉原則

定義:一個軟體實體如類、模組和函數應該對擴充開放,對修改關閉。問題由來:在軟體的生命週期內,因為變化、升級和維護等原因需要對軟體原有代碼進行修改時,可能會給舊代碼中引入錯誤,也可能會使我們不得不對整個功能進行重構,並且需要原有代碼經過重新測試。解決方案:當軟體需要變化時,盡量通過擴充軟體實體的行為來實現變化,而不是通過修改已有的代碼來實現變化。        

sql中的時間函數

主要使用資料庫內建函數完成轉自:http://www.cnblogs.com/aijun/archive/2011/03/18/1987750.htmlSQL查詢今天的記錄:datediff(day,[Datetime],getdate())=0  把Datetime換為你的相應欄位;SQL查詢昨天的記錄:datediff(day,[Datetime],getdate())=1  把Datetime換為你的相應欄位,getdate()-Datetime即為時間差。 本月記錄:SELECT *

[MQ]ActiveMQ訊息收發簡單例子

例子中使用的訊息類型是:MapMessage。代碼比較簡單,帖出來給大家看看:接收訊息:private void Receive() { var factory = new ConnectionFactory(Program.BrokerUri); var timeout = new TimeSpan(0, 0, 10); using (var connection =

若要增加配額,請使用相應繫結元素上的 MaxReceivedMessageSize 屬性

在WCF/WebService中,如果傳回值過大,比如Array,List,DataSet等達到一定數量級的話,可能引發下面的異常:WebService代碼Client端代碼1. 受信Message Quota Size超過65536 (System.ServiceModel.CommunicationException)解決方案:修改用戶端設定檔app.config 的 maxReceivedMessageSize,maxBufferSize 兩個屬性。但是,數量級繼續增大,還會遇到新的問題:

兩字串中的最大公用字串的個數及公用字串

class Program { static void Main(string[] args) { string str1 = "sodjfuckjjs1234dfa"; string str2 = "sdjfcucknnd12345"; string targetstr = string.Empty; string shortstr = str1.Length >

總頁數: 61357 1 .... 6995 6996 6997 6998 6999 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.