Time of Update: 2018-12-04
1 Node.js簡介Node.js是一個讓Javascript運行為服務端的開發平台。其採用V8引擎來執行JS指令碼,同時提供了基於COMMONJS規範的JS介面,使得代碼開發的移植性較好。Node下的編程採用事件的思想,將磁碟、網路、使用者請求、資料庫請求等進行非同步處理,使得單個線程的執行效率更高。當然缺點是非同步執行對於程式行為的理解不太方便。2
Time of Update: 2018-12-04
上篇文章介紹了如何安裝、啟動apache的web伺服器,本文說明如何對其進行配置以達到特殊的功效。Apache的配置指令分為兩類:一類由核心模組如core,http等使用,必須位置httpd.conf檔案中,另一類由標準或三方模組使用1
Time of Update: 2018-12-04
本文的代碼和API說明基於Node 0.8.12版本,並不能保證在不同的node版本順利執行1 stdioconsole模組是Node提供的核心模組,提供基本的輸出功能。console.log([format],...) 向控制台輸出日誌,類似的API還有info() err() warn(),格式有%s,%d,%j(json格式)console.dir(object) 利用util.inspect()輸出對象的分析console.time(tag)
Time of Update: 2018-12-04
轉載自:http://roclinux.cn/ 原作作者:rocrocket Git架構 Git 使用“三大資料結構”來完成它的工作,當前工作目錄、“index file”(index cache) 和 git倉庫。 git commit 會將 index file 中的改變寫到 git 倉庫;git add 會將“當前工作目錄”的改變寫到“index file”;“commit -a”則會直接將“當前工作目錄”的改動同時寫到“index file”和“git倉庫”。 將 Current
Time of Update: 2018-12-04
定義/意圖:定義一組演算法並對其封裝,使其可以互相替換,並根據所處上下文,使用不同的演算法或商務規則問題:對所需要演算法的選擇取決於發出請求的客戶或要處理的資料。如果只有一些不會變化的演算法,則不需要Strategy模式解決方案:把演算法的選擇和演算法的實現分離,允許根據上下文進行選擇參與者與共同作業者:Strategy基類指定不同演算法的公用介面,具體Strategy實現不同的演算法,上下文通過類型為Strategy的引用使用具體的Strategy實現。Context將來自客戶的請求發給Str
Time of Update: 2018-12-04
最近又完成一個C++伺服器項目的開發,使用了多線程,在測試過程中遇到一些問題,記錄一下,以供以後查看。 1 記憶體泄露 由於採用了緩衝的機制,而且操作的是大塊資料,因此用的new比較多。在做壓力測試的時候經常把記憶體耗光,導致死機。 當確認存在記憶體泄露的時候,首先要先把代碼檢查了一遍,尋找所有的new和delete操作是否配對使用了。檢查代碼可以從設計層面上糾正一些問題,但對於編程過程中的疏忽或設計中遺露的細節就可能錯過,尤其對於那些變化中的代碼,
Time of Update: 2018-12-04
意圖/定義:將對象組合成樹形結構以表現“整體/部分”階層,組合可以讓客戶以一致的方式處理個別對象以及對象組合。問題:你想表示對象的部分/整體階層或者需要忽略組合對象與單個對象的不同解決方案:參與者和共同作業者:在Composite中用來儲存組件實現Component介面中實現的有關操作效果:組合模式解耦了客戶程式與複雜元素內部結構實現:範例程式碼,以公司的結構為例,一個公司可能由多個單個人以及一些部門組成。現在我們需要瞭解公司的人員組成情況,可我們又不希望去瞭解公司各個部門內部或這些個人的組織情
Time of Update: 2018-12-04
意圖/定義:將一個複雜物件的構建與其表示相分離,使得同樣的構建過程可以建立不同的表示。問題:面對複雜物件的建立工作,通常各個部分對象用一定的演算法構成,但複雜物件的各個部分經常面臨著劇烈的變化,而將它們組合在一起的演算法相對穩定 解決方案:將各個部分的建立獨立封裝起來參與者與共同作業者:抽象的Builder類,為導向者可能要求建立的每一個構件(Part)定義一個操作(介面)。這些操作預設情況下什麼都不做。一個ConcreteBuilder類對它所感興趣的構建重定義這些操作。每個ConcreteB
Time of Update: 2018-12-04
經常在公司坐電梯,由於樓層較高,是雙聯裝的電梯,但是經常等電梯很久,經常有人罵寫電梯調度演算法的。回來閑來無事,自己嘗試寫了一個簡單的。情境很簡單,每一層電梯口只有一個按鈕,不區分上下,當有人按下這個鍵後,電梯會過來停在此層,這個人可以進去,並選擇自己想去的層。電梯的調度策略也很簡單,在一次向上的過程中,如果有人在下面按了鍵,電梯並不直接向下,而是運行到此次向上的最頂層,然後再下次向下啟動並執行過程中去服務這個請求。 elevator.pyimport timefrom myque
Time of Update: 2018-12-04
'定義模組層級變數Dim NowRow As Integer第一步:在MSHFlexGrid的MouseDown事件中添加如下代碼Private Sub mfgAddDeleteUser_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single) With mfgAddDeleteUser .Row = .MouseRow NowRow = .Row .Col =
Time of Update: 2018-12-04
打小就喜歡曆史和地理的自己,最近沉浸於中國四大名著之一《三國演義》。 用現在人的眼光欣賞古代人的思想,常常為古人的聰明才智所折服。 其實現代人和古代人一樣,處在曆史長河輪迴過程中的某一階段。從這些偉人身上,我們可以看到以後幾十年後的自己。我就幾處精彩地方和大家分享下。 三國魏、蜀、吳。先說蜀國,雖然劉備才能不是很出眾,但其特別擅長外交。文臣有臥龍孔明、鳳雛龐統等當世名才,武將有趙雲、關雲長、張飛、黃忠、馬超五虎上將。各個臣子對劉備是及其的忠誠,可見劉備攻心術之厲害。
Time of Update: 2018-12-04
1 bufferbuffer為Node提供的處理二進位位元組流的工具,未經處理資料存在在buffer對象裡,當需要與string相互轉換時,需要指定string的編碼。目前Node支援下列編碼:ascii,utf8,utf16le,base64,hex。binary在未來可能會被Node拋棄。下面列舉Buffer類的方法和屬性new Buffer(size) new Buffer(array) new Buffer(str,[encoding])
Time of Update: 2018-12-04
Public Sub ToExcel(Flex As MSHFlexGrid) On Error Resume Next Dim oExcel As Excel.Application Dim obook As Excel.Workbook Dim objExlSht As Excel.Worksheet Dim listrst() As Variant Dim lngRows As Long Dim lngCols As Long Dim
Time of Update: 2018-12-04
周末花了一天的時間把這本書通讀了一遍,合上書這本書其實並沒有從技巧這一層面去講解如何構建和設計人脈,相應的方法論也並非講什麼實戰。記下最多的是作者告誡讀者如何提升自己的實力,真誠待人,不貪小利等去吸引人才團結在自己的周圍。如果想結交名人,更是要實心誠意,不怕挫折。總之,講的是道,而非實戰,讓大家從根本上轉變待人處事的觀念,提升內功,而非走旁門左道。 具體內容以腦圖的形式給出,方便複習之用。
Time of Update: 2018-12-04
’在SubMain表單中定義全域變數strUserNamePublic strUserName As String '在frmMain表單載入時進行使用權限設定Private Sub Form_Load() Dim strSQL As String Dim strMsg As String Dim strLevel As String Dim rstMrc As ADODB.Recordset '判斷使用者登入層級 strSQL = "select *
Time of Update: 2018-12-04
http://www.cppblog.com/kevinlynx/archive/2008/03/19/44828.html Author : Kevin
Time of Update: 2018-12-04
單元測試任務包括:1 模組介面測試;2 模組局部資料結構測試;3 模組邊界條件測試;4 模組中所有獨立執行通路測試;5 模組的各條錯誤處理通路測試。 模組介面測試是單元測試的基礎。只有在資料能正確流入、流出模組的前提下,其他測試才有意義。測試介面正確與否應該考慮下列因素: 1 、輸入的實際參數與形式參數的個數是否相同; 2、 輸入的實際參數與形式參數的屬性是否匹配; 3 、輸入的實際參數與形式參數的量綱是否一致; 4、
Time of Update: 2018-12-04
近期接手了一個伺服器項目,伺服器程式已經上線將近2個月,期間有過幾次崩潰,崩潰時沒有產生coredump,從伺服器處理序的監管deamon的反應來看,伺服器處理序是收到了SIGSEGV導致崩潰。而日誌輸出上僅僅能查到崩潰位置位於代碼中使用的公司的基礎程式碼程式庫中,而這個庫已經被證明是正確的。 由於崩潰問題並不嚴重,曾經負責調查的人認為是伺服器程式收到了異常報文,這個問題也隨著這位同事的離職而不了了之。
Time of Update: 2018-12-04
1 編寫故事這一章只列出了好故事的特點INVEST:獨立的、可討論、對使用者有價值、開發人員可評估、小的、可測試的。2 使用者角色建模這一章只列出了如何獲得使用者角色的方法,但並沒有給出何種劃分為好的依據。具體方法是一種精化的過程。 大家頭腦風暴找出所有可能的角色 初步整理,查看相關性 對相關的角色進行合并及移除 抽象出使用者角色。此外這一章給出了虛擬角色、極端人士兩種考慮分類以保證我們考慮的齊全。3
Time of Update: 2018-12-04
1 安裝通過yum或apt-get的方式不在此說明,下面說明原始碼安裝的問題。Linux下源碼安裝比較常規,最一般的即./configure;make;make install. 但由於不同版本對系統依賴的包不同,在安裝過程中如果遇到依賴的情況需要安裝相應的依賴。1.1