主頁 > 軟體設計 > 一年北漂Java妹子,上周剛面試回來后的面試總結,已識訓6個offer,建議近期在找作業的收藏必看

一年北漂Java妹子,上周剛面試回來后的面試總結,已識訓6個offer,建議近期在找作業的收藏必看

2020-11-24 19:06:35 軟體設計

因為在原公司待的不是很開心,然后決定裸辭了(千萬不要裸辭!!!一方面心理壓力比較大,另一方面也可能會被壓薪資)
裸辭之后沒著急找作業,因為原先做的東西比較偏底層,所以也是學習了一段時間先拿小公司練練手,大廠問的東西無外乎專案、基礎、演算法,這些的話樓主推薦幾本書,基本問的東西都在這里面了《Redis設計與實作》、《Mysql技術內幕 InnoDB存盤引擎》、《TCP-IP詳解卷一》、《HTTP權威指南》、《深入理解Linux內核》、《研磨設計模式》、《資料結構與演算法分析-c語言描述》機械工業的那個 我這邊是應聘go的開發,學習go的話推薦《Go并發編程實戰》、林海的《Go原始碼決議》最好原始碼和書一起看

這篇挺長的,抽著看吧

百度

一面

  • redis和etcd的區別

  1. 從資料結構方面來講 Redis支持多種資料型別(string,set,list,hash,zset)

  2. 從讀寫性能上來講,Redis讀寫性能優異,并且提供了RDB、AOF持久化,而etcd v3的底層采用boltdb做存盤,value直接持久化

  3. 從使用場景上來看,etcd更適用于服務發現,配置管理,而Redis更適用于非強一致性的需求,比如說是佇列,快取,分布式Session

  4. 兩者都是KV存盤,但是etcd通過Raft演算法保證了各個節點間的資料和事務的一致性,更強調各個節點間的通信;Redis則時更像是記憶體式的快取,因此來說讀寫能力很強,

  5. Redis是c開發的,etcd是go開發的,他是源于k8s的興起作為一個服務發現,

  6. etcd v3只能通過gRPC訪問,而redis可以通過http訪問,因此etcd的客戶端開發作業量高很多,

  • etcd的Raft演算法介紹一下

  • ping指令的實作,涉及到哪些協議

  • linux的用戶態和內核態,什么時候切換到內核態

  • 為什么說執行緒的切換比協程要慢

  • redis、etcd 分布式鎖的實作

  • redis string型別的底層實作

  • 和c語言string的區別

  1. 獲取字串長度只需要O(1)的時間復雜度,程式僅需要訪問SDS的len屬性即可

  2. c語言會產生緩沖區溢位,在Redis中如果需要對SDS進行修改時,API回顯檢查SDS的空間是否滿足修改所需要的要求,如果不滿足的話,API會自動將SDS的空間拓展到執行修改所需要的大小,然后才執行實際的修改操作

  3. 減少修改字串時帶來的記憶體重分配次數,SDS通過free屬性記錄未使用的位元組,通過未使用空間,SDS實作了空間預分配和惰性空間釋放兩種優化策略,是的修改字串長度N次最多需要執行N次的記憶體重分配,

  4. c字串只能保存文本資料,SDS可以保存文本或者二進制資料

二面

二面基本是場景設計題,具體忘了,有一說一百度面試體驗很好,和面試官一起探討解決的辦法
之后有一道智力題吧,有10個元素存到長度為12的陣列中,有兩個元素重復,找出這兩個元素

比如a+b通過把元素累加在進行減法運算可以得到a+b
通過累乘再進行除法運算可以得到a*b的值
考慮到假如元素溢位,那么可已通過平方累加得到a^2+b^2的值
根據關系式可以求得a,b的值

三面

  • go和java的區別
    可以從多個角度來講 比如面向物件來說,多型繼承等等
    從運行速度來講,go的并發模型 channel和goroutine
    從包管理來講,go mod 包括之前的dep等等

  • go的gmp調度原理

  • cpu的背景關系切換問題

  • channel有無緩沖槽的區別
    主要還是從同步和異步來講

  • redis的zset實作

  • 負載均衡實作
    幾道演算法題 現場手寫的
    堆排的一道問題,string化整型,鏈表反轉

四面

手寫了兩道演算法,單鏈表的中間節點 一道dp題目 百度的演算法題目都是easy到meduim級別的
然后對專案問的比較細,比如在實作的虛擬鏈路中keepalive是怎么實作的啊,有什么可以優化的點嗎
怎么查找程式的性能瓶頸等等

最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題整理等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】


滴滴 自動駕駛Vovager

一面

主要是專案和部分基礎知識這里記不太清了
演算法 劍指63 股票問題
dp[i]=max(dp[i-1],num[i]-num[j])

1

2

3

4

5

6

7

8

9

10

11

12

13

func maxProfit(prices []int) int {

size := len(prices)

if size==0||size==1{

return 0

}

profit := 0

cost := prices[0]

for i := 1; i < size; i++ {

cost = min(prices[i], cost)

profit = max(profit, prices[i]-cost)

}

return profit

}

問了能不轉py

二面

二面主要問了專案以及一道演算法題和場景設計題,我個人覺得不具有總結性

三面

*epoll和poll的區別
三面送命了,順時針列印矩陣,一般按層模擬就好了,我也不知道怎么腦子就抽了

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

func spiralOrder(matrix [][]int) []int {

if matrix == nil || len(matrix) == 0 || len(matrix) == 0 {

return []int{}

}

top := 0

hsize := len(matrix)

lsize := len(matrix[0])

left := 0

bottom := hsize - 1

right := lsize - 1

index := 0

x, y := 0, 0

sum := make([]int, hsize*lsize)

for bottom >= top && right >= left {

for x = left; x <= right; x++ {

sum[index] = matrix[top][x]

index++

}

for y = top + 1; y <= bottom; y++ {

sum[index] = matrix[y][right]

index++

}

if bottom > top && right > left {

for x = right - 1; x > left; x-- {

sum[index] = matrix[bottom][x]

index++

}

for y = bottom; y > top; y-- {

sum[index] = matrix[y][left]

index++

}

}

left++

right--

top++

bottom--

}

return sum

}

最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題整理等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】


Aibee

一面

  • 陣列中找出和為k的兩個元素回傳下標 模板題了
    另一道有意思的題目可以參考leetcode 560題

  • 無頭結點的鏈表元素洗掉

  • 排行榜的設計

  • https加密程序

  • InnoDb的索引模型 詳細一些

  • 覆寫索引和非覆寫索引的區別

二面

演算法和股票差不多
根據專案延伸來問的一些問題

  • slice的底層實作

  • gmp調度模型

  • golang的gc回收

  • tcp的粘包問題

  • mysql隔離級別

三面

沒啥好說的 和面試官互相吹牛逼了

最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題整理等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】


小米

一面

  • Redis快取策略

  • 分布式CAP原理

  • Mysql事務的隔離級別 分別解決了哪些問題?

  • mysql的存盤引擎的區別?

  • Redis持久化的區別

  • Grpc的程序

二面

懟了專案 業務上不合適

  • 怎么限制goroutine的數量?

  • redis為什么快?


位元組跳動

一面

  • https的程序

    1. 客戶端請求網址,服務器接收到請求后回傳證書公鑰

    2. 客戶端驗證證書的有效性和合法性,然后生成一個隨機值

    3. 客戶端通過證書的公鑰加密隨機值,將加密后的密鑰發送給服務器

    4. 服務器通過私鑰解密密鑰,通過解密后的密鑰加密要發送的內容

    5. 客戶端通過密鑰解密接受的內容

  • http keep-alive的作用

  • 755 是什么權限? 詳細見linux權限入門
    7=rwx=4+2+1 5=rx
    擁有者可讀可寫可執行 群組可讀可執行 其他組可讀可執行

  • linux 查找當前檔案后20行
    tail -n 20 filename

  • linux統計字符出現的個數
    grep -o objStr filename|wc -l

  • epoll和poll的區別
    本質都是IO多路復用

  • 演算法題 10進制轉7進制

  • 演算法題 判斷數獨的有效性

二面

撕AVL樹 撕哈希表

最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題整理等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】


知乎

一面

專案

  • redis的多集群方案

  • mysql的b+索引

  • golang的記憶體分配機制

  • golang的多型實作

  • interface的底層實作

二面

只問了兩道演算法
連續子序列的最大和并回傳所有序列
另一道忘了

三面

  1. 非遞回形式的前序遍歷

  2. k個有序鏈表合并

專案問題

  • golang的context包

  • string型別轉為[]byte程序發生了什么

  • redis的資料型別及底層實作

  • mysql聚集索引和非聚集索引底層實作

  • b+樹和紅黑樹

騰訊

一面

之前看面經聽說騰訊面試官惜字如金,果真就想幾個字騙一段話啊

  • golang的多路復用

  • fasthttp為什么快

  • pprof使用

  • 性能調優怎么做

  • http2.0的多路復用怎么實作的

  • 最大連續子序列和

  • mysql怎么監控流量

  • golang調度 能不能不要p

  • 負載均衡哪些演算法?

二面

二面基本圍繞專案拓展來說的 人家說你簡歷寫的我不問,,
場景設計 秒殺、抽獎、推薦 三劍客
etcd和zk的區別
etcd的Raft演算法詳細講一下

三面

專案細問包括一些基礎問題沒啥好講的
職業規劃等等


BIGO

  • prometheus實際使用

  • linux tcp 半連接

  • 常見的linux指令
    tail pwd chmod lsof netstat top

  • 實作一個壓測工具
    golang撰寫一個http客戶端,支持引數httprequest -c 5 -r 1000 http://**** 客戶端,輸出所有回應

  • string型別加法實作

  • sql題

    復制代碼

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    CREATE TABLE IF NOT EXISTS `mytable` (

    `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,

    `video_id` bigint unsigned NOT NULL DEFAULT 0,

    `uid` int unsigned NOT NULL DEFAULT 0,

    `country` varchar(194) NOT NULL ,

    `class` varchar(64) NOT NULL ,

    `status` tinyint(4) unsigned NOT NULL DEFAULT '0',

    `video_view` bigint(20) unsigned NOT NULL DEFAULT '0',

    `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,

    PRIMARY KEY (

    `id`

    )

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

    SELECT * FROM mytable WHERE created > ? AND class = ? AND country IN (?) ORDER BY created DESC LIMIT 100;

    SELECT * FROM mytable WHERE class = ? AND country IN (?) ORDER BY video_view DESC LIMIT 100;

    SELECT * FROM mytable WHERE created > ? AND class IN (?) LIMIT 100;

    SELECT * FROM mytable WHERE created > ? AND country IN (?) LIMIT 100;

    怎么建索引?

  • map如何實作順序讀取
    空間換時間
    借助額外的資料結構比如slice 等,對key進行排序,遍歷slice得到順序輸出

  • 協程泄***r>如果你啟動了一個 goroutine,但并沒有符合預期的退出,直到程式結束,此goroutine才退出,這種情況就是 goroutine 泄露,當 goroutine 泄露發生時,該 goroutine 的堆疊(一般 2k 記憶體空間起)一直被占用不能釋放,goroutine 里的函式在堆上申請的空間也不能被 垃圾回收器 回收,

  • 空結構體的用處
    空結構體不占用記憶體空間

    1. 實作set

    2. 實作chan struct{} 不占用記憶體空間,實作傳遞信號的通道
      剩下的忘了一直在看表了想著還不結束, 面了兩個小時

最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題整理等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】


面試總結

不知道你們看完了發現沒,就一個百度,就要懂很多知識點,那如果阿里巴巴,支付寶,華為、等一線大廠呢?是不是感覺自己還要學習的還有很多~

經過這次面試,我總結一下幾點:

1、基本語法

這包括static、final、transient等關鍵字的作用,foreach回圈的原理等等,今天面試我問你static關鍵字有哪些作用,如果你答出static修飾變數、修飾方法我會認為你合格,答出靜態塊,我會認為你不錯,答出靜態內部類我會認為你很好,答出靜態導包我會對你很滿意,因為能看出你非常熱衷研究技術,

2、集合

非常重要,也是必問的內容,基本上就是List、Map、Set,問的是各種實作類的底層實作原理,實作類的優缺點,集合要掌握的是ArrayList、LinkedList、Hashtable、HashMap、ConcurrentHashMap、HashSet的實作原理,能流利作答,當然能掌握CopyOnWrite容器和Queue是再好不過的了,另外多說一句,ConcurrentHashMap的問題在面試中問得特別多,大概是因為這個類可以衍生出非常多的問題,關于ConcurrentHashMap,我給網友朋友們提供三點回答或者是研究方向:

(1)ConcurrentHashMap的鎖分段技術

(2)ConcurrentHashMap的讀是否要加鎖,為什么

(3)ConcurrentHashMap的迭代器是強一致性的迭代器還是弱一致性的迭代器

3、設計模式

設計模式在作業中還是非常重要、非常有用的,23種設計模式中重點研究常用的十來種就可以了,面試中關于設計模式的問答主要是三個方向:

(1)你的專案中用到了哪些設計模式,如何使用

(2)知道常用設計模式的優缺點

(3)能畫出常用設計模式的UML圖

4、多執行緒

這也是必問的一塊了,會問得深入一些比如說Thread和Runnable的區別和聯系、多次start一個執行緒會怎么樣、執行緒有哪些狀態,當然這只是最基本的,出乎意料地,幾次面試幾乎都被同時問到了一個問題,問法不盡相同,總結起來是這么一個意思:假如有Thread1、Thread2、Thread3、Thread4四條執行緒分別統計C、D、E、F四個盤的大小,所有執行緒都統計完畢交給Thread5執行緒去做匯總,應當如何實作?

聰明的網友們對這個問題是否有答案呢?不難,java.util.concurrent下就有現成的類可以使用,

另外,執行緒池也是比較常問的一塊,常用的執行緒池有幾種?這幾種執行緒池之間有什么區別和聯系?執行緒池的實作原理是怎么樣的?實際一些的,會給你一些具體的場景,讓你回答這種場景該使用什么樣的執行緒池比較合適,最后,雖然這次面試問得不多,但是多執行緒同步、鎖這塊也是重點,synchronized和ReentrantLock的區別、synchronized鎖普通方法和鎖靜態方法、死鎖的原理及排查方法等等

5、IO

IO分為File IO和Socket IO,File IO基本上是不會問的,問也問不出什么來,平時會用就好了,另外記得File IO都是阻塞IO,Socket IO是比較重要的一塊,要搞懂的是阻塞/非阻塞的區別、同步/異步的區別,借此理解阻塞IO、非阻塞IO、多路復用IO、異步IO這四種IO模型,Socket IO如何和這四種模型相關聯,這是基本一些的,深入一些的話,就會問NIO的原理、NIO屬于哪種IO模型、NIO的三大組成等等,這有些難,當時我也是研究了很久才搞懂NIO,提一句,NIO并不是嚴格意義上的非阻塞IO而應該屬于多路復用IO,面試回答的時候要注意這個細節,講到NIO會阻塞在Selector的select方法上會增加面試官對你的好感,如果用過Netty,可能會問一些Netty的東西,畢竟這個框架基本屬于當前最好的NIO框架了(Mina其實也不錯,不過總體來說還是比不上Netty的),大多數互聯網公司也都在用Netty,

6、JDK原始碼

要想拿高工資,JDK原始碼不可不讀,上面的內容可能還和具體場景聯系起來,JDK原始碼就是實打實地看你平時是不是愛鉆研了,

JDK原始碼其實沒什么好總結的,純粹看個人,總結一下比較重要的原始碼:

(1)List、Map、Set實作類的源代碼

(2)ReentrantLock、AQS的源代碼

(3)AtomicInteger的實作原理,主要能說清楚CAS機制并且AtomicInteger是如何利用CAS機制實作的

(4)執行緒池的實作原理

(5)Object類中的方法以及每個方法的作用

7、框架

老生常談,面試必問的東西,一般來說會問你一下你們專案中使用的框架,然后給你一些場景問你用框架怎么做,比如我想要在Spring初始化bean的時候做一些事情該怎么做、想要在bean銷毀的時候做一些事情該怎么做、MyBatis中$和#的區別等等,這些都比較實際了,平時積累得好、有多學習框架的使用細節自然都不成問題,

如果上面你的問題答得好,面試官往往會深入地問一些框架的實作原理,問得最多的就是Spring AOP的實作原理,當然這個很簡單啦,兩句話就搞定的的事兒,即使你不會準備一下就好了,

8、資料庫

資料庫十有八九也都會問到,一些基本的像union和union all的區別、left join、幾種索引及其區別就不談了,比較重要的就是資料庫性能的優化,如果對于資料庫的性能優化一竅不通,那么有時間,還是建議你在面試前花一兩天專門把SQL基礎和SQL優化的內容準備一下,

不過資料庫倒是不用擔心,一家公司往往有很多部門,如果你對資料庫不熟悉而基本技術又非常好,九成都是會要你的,估計會先把你放到對資料庫使用不是要求非常高的部門鍛煉一下,

9、資料結構和演算法分析

資料結構和演算法分析,對于一名程式員來說,會比不會好而且在作業中絕對能派上用場,陣列、鏈表是基礎,堆疊和佇列深入一些但也不難,樹挺重要的,比較重要的樹AVL樹、紅黑樹,可以不了解它們的具體實作,但是要知道什么是二叉查找樹、什么是平衡樹,AVL樹和紅黑樹的區別,

10、Java虛擬機

Java虛擬機應該是很重要的一塊內容,談談Java虛擬機中比較重要的內容

ava虛擬機的記憶體布局

GC演算法及幾種垃圾收集器

類加載機制,也就是雙親委派模型

Java記憶體模型

happens-before規則

volatile關鍵字使用規則

也許這些內容面試無用,但在走向大牛的路上,不可不會,

11、Web方面的一些問題

Java主要面向Web端,因此Web的一些問題也是必問的,

談談分布式Session的幾種實作方式?(常用的四種能答出來自然是讓面試官非常滿意的)

講一下Session和Cookie的區別和聯系以及Session的實作原理

這兩個問題之外,web.xml里面的內容是重點,Filter、Servlet、Listener,不說對它們的實作原理一清二楚吧,至少能對它們的使用知根知底,另外,一些細節的方面比如get/post的區別、forward/重定向的區別、HTTPS的實作原理也都可能會被考察到,

最后,如果有興趣有時間,建議學習、研究一下SOA和RPC,面向服務體系,大型分布式架構必備,救命良方、包治百病、屢試不爽,


最新2020整理收集的一些面試題(都整理成檔案),有很多干貨,包含mysql,netty,spring,執行緒,spring cloud、jvm、原始碼、演算法等詳細講解,也有詳細的學習規劃圖,面試題資料等,需要獲取這些內容的朋友微信掃描下方二維碼免費獲取:暗號:【CSDN】

?¨è?é??¥????è?°

看完三件事??

如果你覺得這篇內容對你還蠻有幫助,我想邀請你幫我三個小忙:

  1. 點贊,轉發,有你們的 『點贊和評論』,才是我創造的動力,

  2. 關注公眾號 『 java爛豬皮 』,不定期分享原創知識,

  3. 同時可以期待后續文章ing🚀

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/226823.html

標籤:其他

上一篇:勝天半子!阿里內部力薦SpringBoot全堆疊筆記全網首發,原始碼實戰齊飛

下一篇:末流985程式員死磕位元組跳動,半年面試11次終于入職,特來奉上我的復習資料!

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more