原创 Tapable之HookCodeFactory 源碼分析

路徑:/node_modules/tapable/lib/HookCodeFactory.js 創建HookCodeFactory類 對外暴露HookCodeFactory  

原创 Compiler.js 源碼分析

路徑:/node_modules/webpack/lib/Compoiler.js 引入一些東西 創建一個繼承了Tapable的對象Compiler 暴露Compiler對象 創建一個繼承了Source的對象SizeOnlySource

原创 Tapable之index.js 源碼分析

package.json "main": "lib/index.js", "version": "1.1.3" 路徑:/node_modules/webapck/node_modules/tapable/lib/index.js

原创 webapck.js 源碼分析

package.json  "main": "lib/webpack.js" "version": "4.43.0" 路徑:/node_modules/webpack/lib/webpack.js 源代碼代碼摺疊起來比較好看。 使

原创 Tapable之Hook.js 源碼分析

路徑:/node_modules/webapck/node_modules/tapable/lib/Hook.js 創建Hook類 創建createCompileDelegate函數 使用createCompileDelegate初始化H

原创 spring家族常用註解

類解耦 通過反射來創建對象,避免通過new關鍵字 讀取配置文件來獲取要創建的對象的全限定類名(唯一標誌) 結構 持久層 持久層接口 持久層實現 業務層 業務層接口 業務層實現 持久層調用jdbc,業務層調用

原创 日期

1、大數學家高斯有個好習慣:無論如何都要記日記。 他的日記有個與衆不同的地方,他從不註明年月日,而是用一個整數代替,比如:4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒着主人

原创 C 注意事項

1、遞歸函數中定義static變量,只在第一次調用的時候,去定義,並初始化這個變量,其餘的時候,不會去執行這條語句#include <stdio.h>

原创 圖及其他

1、連通性給定一個方陣,定義連通:上下左右相鄰,並且值相同。可以想象成一張地圖,不同的區域被塗以不同顏色。輸入:整數N, (N<50)表示矩陣的行列數接下來N行,每行N個字符,代表方陣中的元素接下來一個整數M,(M<1000)表示詢問數接

原创 博弈

1、取球博弈(1) 今盒裏有n個小球,A、B兩人輪流從盒中取球。每個人都可以看到另一個人取了多少個,也可以看到盒中還剩下多少個。 兩人都很聰明,不會做出錯誤的判斷。 每個人從盒子中取出的球的數目必須是:1,3,7或者8個。 輪到某一方取球

原创 素數

1 求第10002個素數n 之前大約有 n/ln(n)個素數#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> int main(){

原创 遞歸 蟲子與杆

1、有一根27釐米的細木杆,在第3釐米、7釐米、11釐米、17釐米、23釐米這五個位置上各有一隻螞蟻。 木杆很細,只能同時通過一隻螞蟻。 開始時,螞蟻的頭朝左還是朝右是任意的,它們只會朝前走或調頭,但不會後退。 當任意兩隻螞蟻碰頭時,兩隻

原创 表達式求值

#include <iostream> #include <vector> #include <cstdio> using namespace std; string f(string s){ vector<char> v; vect

原创 逆序對

#include <iostream> #include <algorithm> using namespace std; void show(int * a, int b){ for(int i = 0; i < b; i++){

原创 分治法與動態規劃

1、二分查找已知有序的序列,比如:2,3,3,5,9,9,9,12,12,13,15,22,22,22,22,25,25,23,91,95有整數x,比如: x=23要求找到一個剛好比x稍微大一點的元素位置當數組較大的時候,需要二分查找加快