Time of Update: 2018-12-03
今天關注webkit中dom樹是怎麼構建的,HTML是怎麼分析的。1、dom相關的代碼在webcore中dom目錄下,有很多類,比較重要的是Document.h、DocumentFragment.h、DocumentParser.hDocumentParser是一個基類感覺好像沒幹什麼事,只是傳入了一個開始parse的狀態,在DocumentFragment中有parseHTML,好像開始了真正的parse操作; 2、HTML的parse操作,從DocumentFragment中的parseH
Time of Update: 2018-12-03
轉載:http://ourpgh.blogspot.com/2008/09/webkitjavascriptcorev8.html WebKit作為一個瀏覽器引擎,其中Javascript實現包括JavaScriptCore和V8,為了能更全面的瞭解WebKit,我們需要深入的瞭解Javascript實現的基本原理、其在WebKit中的作用以及與其他部分之間的互動,同時與Gecko中的Javacript實現作初步的對比。讓我們開始瞭解WebKit之Javascript實現JavaScriptCo
Time of Update: 2018-12-03
因為閱讀chromium的需要,也熟悉了一下chromium使用的GYP構建系統,其實這個系統和我原來所在的一個公司的構建系統非常相似,因此學習起來也比較容易。首先看一下gyp的安裝,如果你使用ubuntu系統那麼安裝可以通過下面的命令完成:sudo apt-get install gyp下面我們就通過一個例子來看看gyp的使用,假設我們編寫三個檔案hello_world.cc, my_class.h, my_class.cc這三個檔案內容如下:hello_world.cc#include
Time of Update: 2018-12-03
參考了張逸的書,對抽象工廠這個建立型模式進行了複習.關於該模式的一些介紹和應用場合,我就不再多說了,有很多人的blog 和書上都有介紹.下面把項目的 架構和實現給大家。架構:實現代碼:IReportFactory.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace AbstractFactory{ public interface
Time of Update: 2018-12-03
通常而言,工作的前兩年,最想換環境。工作3到5年,最想休息! 但無論如何,多看看別人的經曆與想法,對我們也會大有益處!轉一篇文章:
Time of Update: 2018-12-03
在項目過程中,我們有時經常喜歡用靜態變數(static)來緩衝一些不便的公用資料,但是這麼做有一點需要注意:靜態變數的保護。由於一些因素(比如查詢資料庫),我們無法對靜態變數加上final屬性,因此如果靜態變數暴漏後,如果有對靜態變數寫操作(即修改變數)的話,很可能會引起意想不到的錯誤。當然平時我們用緩衝幾乎都是讀取操作,所以這個問題不容易引起我們的注意。例子說明:package test;import java.util.ArrayList;import java.util.Iterator;
Time of Update: 2018-12-03
1.cd,load等命令使用變數時加上括弧cd命令後面的路徑如果有空格,需要用引號將路徑括起來,否則會切換失敗。2.從cell數組(元素全是字串)中尋找某個字串,並返回字串的下標 find(ismember(cellarray, "str1") == 1)3.判斷矩陣a,b是否相等isequal(a,b)4.判斷矩陣是否為對稱陣isequal(a,a')5.找出矩陣中每一行大於0的元素個數sum(a>0,2)其他條件可以類推
Time of Update: 2018-12-03
問題描述: 有一個需要使用每個資源的n個活動組成的集合S= {a1,a2,···,an },資源每次只能由一個活動使用。每個活動a都有一個開始時間和結束時間,且 0<= s < f < 。一旦被選擇後,活動a就佔據半開時間區間[s,f]。如果[s,f]和[s,f]互不重疊,則稱兩個活動是相容的。該問題就是要找出一個由互相相容的活動組成的最大子集。動態規劃:一、 定義子集合Sij = { ak S : f i <= sk < f k &
Time of Update: 2018-12-03
一個矩陣乘法的問題, 迭代矩陣用二分的方法, 要注意只需考慮奇偶性, 所以用01矩陣就夠了.題目是從0開始計算, 所以迭代次數為t-1. PS. 動態申請空間果然很慢, 還是模版好.用new動態申請空間時:Accepted 6960K 1063MS (沒有delete)Accepted 1860K 1235MS (加了delete) 使用靜態二維數組+memcpy:Accepted 360K 219MS 源碼: /*********************************
Time of Update: 2018-12-03
一般思想1、將問題簡化,從比較簡單的情況開始分析,比如1個元素情況,2個元素情況,3個元素情況,不斷增加,尋找規律,這樣有利於發現規律,從而解決問題,並且也有利於處理邊界情況。比如編程之美1.11、又如送貨站選址問題、1的個數問題等都可一通過逐漸的分析加以解決2、從比較簡單的例子,類比程式運行過程,比如二分尋找,可以使用4個元素的例子,類比尋找過程,總結判斷條件等。3、拿到一個問題,首先看看能否依照題意通過迴圈直接求解,能否分治求解,分治求解關鍵的是兩部和合并後如何求解,例如距離最近的點問題,歸
Time of Update: 2018-12-03
原文地址:http://soft.zol.com.cn/271/2718681.html在Win7中進行一些設定,或修改某些檔案時,經常會彈出當前帳戶沒有操作許可權的提示,即使已經是管理員賬戶也不行。事實上,出於安全方面的考慮,預設情況下Win7系統的系統管理員Administrator賬戶是處于禁用狀態的,需要手動開啟才能使用。開啟它的方法很簡單,按照下面的步驟來操作就可以。方法一:從系統管理中開啟管理員Administrator賬戶。 點擊開始按鈕,滑鼠右鍵點擊“電腦”,選擇“管理”。
Time of Update: 2018-12-03
轉載請註明出處:http://blog.csdn.net/horkychenWebKit的迴歸測試是由一組指令碼構成的Layout
Time of Update: 2018-12-03
轉載請註明出處:http://blog.csdn.net/horkychen 1. XCode 4開啟時,自動載入上次的工程,需要較長時間。 這是因為Lion提供了新功能讓應用程式恢複上次關閉時的狀態。如果僅是臨時不希望下去開啟時不要開啟現在使用的項目,可以在退出使用CMD+Q+OPTION代替CMD+Q。 如果預設不希望再開啟,就可以使用下面的指令: defaults write com.apple.Xcode
Time of Update: 2018-12-03
沒有人是完全獨立的孤島,每個人都是整體的一部分。——約翰·多恩 (至少你擁有95%以上的知識在網上都可以找到!
Time of Update: 2018-12-03
轉載請註明出處:http://blog.csdn.net/horkychen(譯註:我一直思考如何把旁邊的電腦也用來一起編譯一個大工程,今天發現了這份資料。先翻譯一下,找時間實踐。)不知道是什麼原因,XCode 4.x似乎不支援分布式編譯了。雖然可以通過定義distcc伺服器啟用分布式編譯,但基本上還是在本地工作。仔細看看編譯日誌:setenv DISTCC_HOSTS localhost所以呼叫distcc後沒有帶來期望的網路處理事務。做上面的設定需要重寫/Developer/usr/etc/
Time of Update: 2018-12-03
很早就聽說:學而不思則罔,思而不學則怠!我是學電腦,思考固然很重要!但現在我自己又總結出這樣一句話:學而不做則癡,做而不學則迷。我是教書的,有很多時候需要說,但現在感覺到除了能說之外,更需要做。而且做不是隨意的做,寫程式這個行當,有很多規範,做就要按規範做!而且程式不是隨便就能寫出來的。很早就學完了軟體工程,直到今天才知道軟體工程不是學會的,而是做會的。原來工程是用來做的!鬱悶,害的我學了那麼長時間。工作了,也天天在學習。自認為每天都有收穫,現在看來這些收穫後面原來還有更多更大的收穫等著自己。每
Time of Update: 2018-12-03
找了一段時間,發現了MSHTML沒有提供繞開列印對話方塊的方法。昨天試了下一個Windows Web Browser Control,居然可以了,下面做個記錄: m_Browser.Navigate(sHttpAddress, &vtNULL, &vtNULL, &vtNULL,
Time of Update: 2018-12-03
看到Stack Exchange上對於在Bug Report中加入"Person to blame"欄位的討論,這的確是一個很好的題目,這裡麵包含了很多的東西。該不該加這個欄位且不說,其實最重要是看動機和目的。為什麼管理者要加這個欄位呢?
Time of Update: 2018-12-03
項目最本質的一個特性是不確定性,所以實際的執行與預估有些偏差很正常。預估較實際所花費的工作量時大時小,有人快,有人慢。單獨從個人能力來解釋進度並不客觀,因為本來項目排程時就應當考慮到人的能力的不同。既然一切都在項目進度規劃中定義,所有工作都能按步就搬的完成自然最好,但項目的不確定性告訴我們這是難以確定的。總有些任務會提前,也總有些任務會滯後。如果我們只關注滯後的任務,那可以想像項目總會延期的,最好的結果也只能是按時完成。但如果我們能利用到提前完成的時間呢?項目中識別關鍵路徑並嚴加監控是常用的做法
Time of Update: 2018-12-03
.net架構下的事件和委託理解起來比較困難,特別是委託這個特殊的類型學習起來總是要花點時間。下面結合Observer模式做了一個簡單的例子,希望對初學者有協助。首先建一個控制台應用程式。代碼如下 :Program.cs:using System;using System.Collections.Generic;using System.Text;namespace ObserverPattern{ /// <summary> ///