• 面試現(xiàn)場:遇到不會(huì)回答的問題,如何力挽狂瀾??

    ?????????本文來源:https://blog.csdn.net/beibei_programme/article/details/94737215前言今天給大家講講面試過程當(dāng)中最長遇到的窘境,也是最能體現(xiàn)一個(gè)候選人臨場應(yīng)變能力的地方,那就是當(dāng)我們在面試的過程當(dāng)中,遇到的問...

  • 10個(gè)常見的軟件架構(gòu)模式

    想知道如何設(shè)計(jì)大型企業(yè)級的系統(tǒng)嗎?在開始主要的代碼開發(fā)之前,我們必須選擇一種合適的體系架構(gòu),它將為我們提供所需的功能和質(zhì)量屬性。因此,在將它們應(yīng)用到我們的設(shè)計(jì)之前,應(yīng)該先了解不同的體系結(jié)構(gòu)。-???什么是架構(gòu)模式???-根據(jù)維基百科,架構(gòu)模式是在給定上下文中解決軟件架構(gòu)中常見問題...

  • Service?層和?Dao?層有必要為每個(gè)類都加上接口嗎?

    作者:架構(gòu)思維toutiao.com/i6882356844245975563前幾天刷頭條又刷到了「Service層和Dao層真的有必要每個(gè)類都加上接口嗎?」這個(gè)問題,之前簡單回答了一波,給出的觀點(diǎn)是「看情況」!現(xiàn)在結(jié)合我參與的項(xiàng)目以及閱讀的一些項(xiàng)目源碼來看。如果項(xiàng)目中使用了像S...

  • 面試官欺負(fù)人:new?Object()到底占用幾個(gè)字節(jié)?

    前言我們來分析一下堆內(nèi)布局以及Java對象在內(nèi)存中的布局吧。對象的指向先來看一段代碼:package?com.zwx.jvm;public?class?HeapMemory?{????private?Object?obj1?=?new?Object();????public?st...

  • C 語言的單元測試與代碼覆蓋率

    ↓推薦關(guān)注↓前言測試是軟件開發(fā)過程中一個(gè)必須的環(huán)節(jié),測試確保軟件的質(zhì)量符合預(yù)期。對于工程師自己來說,單元測試也是提升自信心的一種方式。直接交付沒有經(jīng)過測試的代碼是不太好的,因?yàn)檫@很可能會(huì)浪費(fèi)整個(gè)團(tuán)隊(duì)的時(shí)間,在一些原本早期就可以發(fā)現(xiàn)的問題上。而單元測試,就是發(fā)現(xiàn)問題一個(gè)很重要的環(huán)節(jié)...

  • 手?jǐn)]一個(gè)線程池

    點(diǎn)擊上方藍(lán)字關(guān)注下我唄之前分享過一次手寫線程池-C語言版,然后有朋友問是否有C線程池實(shí)現(xiàn)的文章:其實(shí)關(guān)于C線程池的文章我好久以前寫過,但估計(jì)很多新朋友都沒有看到過,這里也重新發(fā)一下!本人在開發(fā)過程中經(jīng)常會(huì)遇到需要使用線程池的需求,但查了一圈發(fā)現(xiàn)在C中完備的線程池第三方庫還是比較少...

  • 一文看懂各種開源許可協(xié)議

    參與開源項(xiàng)目貢獻(xiàn),或者使用開源項(xiàng)目的代碼,一定要注意查看項(xiàng)目所遵循的開源許可協(xié)議,許可協(xié)議決定你貢獻(xiàn)的代碼將被如何規(guī)范的使用,也決定你要如何規(guī)范的使用開源項(xiàng)目的代碼。目前世界上的開源許可證(OpenSourceLicense)大概有上百種,今天我們來介紹下幾種我們常見的開源協(xié)議。...

  • 如何理解互斥鎖、條件變量、讀寫鎖以及自旋鎖?

    鎖是一個(gè)常見的同步概念,我們都聽說過加鎖(lock)或者解鎖(unlock),當(dāng)然學(xué)術(shù)一點(diǎn)的說法是獲?。╝cquire)和釋放(release)。恰好pthread包含這幾種鎖的API,而C11只包含其中的部分。接下來我主要通過pthread的API來展開本文。mutex(互斥量...

    CPP開發(fā)者
    2021-10-28
  • 1s 創(chuàng)建 100G 文件,最快的方法是?

    在我們?nèi)粘9ぷ髦?,為了?yàn)證開發(fā)的功能,比如:文件上傳功能或者算法的處理效率等,經(jīng)常需要一些大文件進(jìn)行測試,有時(shí)在四處找了一頓之后,發(fā)現(xiàn)竟然沒有一個(gè)合適的,雖然Linux中也有一些命令比如:vim、touch等可以創(chuàng)建文件,但是如果需要一個(gè)100G或者1T的大文件,這些命令就顯得力...

    CPP開發(fā)者
    2021-10-28
  • 這個(gè)?MySQL?bug?99%?的人會(huì)踩坑!

    這周收到一個(gè)sentry報(bào)警,如下SQL查詢超時(shí)了。select?*?from?order_info?where?uid?=?5837661?order?by?id?asc?limit?1執(zhí)行showcreatetableorder_info?發(fā)現(xiàn)這個(gè)表其實(shí)是有加索引的CREAT...

  • 一文詳解?API?設(shè)計(jì)最佳實(shí)踐

    -???前言???-良好設(shè)計(jì)的API=快樂的程序員。應(yīng)用程序接口(API)是一種接口,它讓應(yīng)用程序可以輕松地使用另一個(gè)應(yīng)用程序的數(shù)據(jù)和資源,API對于一個(gè)產(chǎn)品或公司的成功至關(guān)重要。如果沒有API,你大部分喜歡的軟件今天就不會(huì)存在。例如,GoogleMapsAPI可以讓你在app或...

  • 性能優(yōu)化之Java多線程批量拆分List導(dǎo)入數(shù)據(jù)庫

    |前言前兩天做了一個(gè)導(dǎo)入的功能,導(dǎo)入開始的時(shí)候非常慢,導(dǎo)入2w條數(shù)據(jù)要1分多鐘,后來一點(diǎn)一點(diǎn)的優(yōu)化,從直接把list懟進(jìn)Mysql中,到分配把list導(dǎo)入Mysql中,到多線程把list導(dǎo)入Mysql中。時(shí)間是一點(diǎn)一點(diǎn)的變少了。非常的爽,最后變成了10s以內(nèi)。下面就展示一下過程。...

  • 梳理消息隊(duì)列?MQ/JMS/Kafka

    是不是平常聽到說消息隊(duì)列啊,JMS啊,MQ啊、kafka啊巴啦啦的一堆術(shù)語,聽不懂?關(guān)系混亂?今天就讓我們來一起來看看他們都是什么吧。1消息隊(duì)列介紹首先舉個(gè)收快遞的栗子,傳統(tǒng)的收快遞,快遞小哥把我們的快遞送到我們的手里。他需要什么條件嗯?快遞小哥有時(shí)間送,我們有時(shí)間取,快遞小哥和...

  • 北京朝陽一互聯(lián)網(wǎng)公司被端,警方上門,23人被帶走…這種開發(fā)千萬別干!

    勞動(dòng)者作為普通員工,在很多情況下是很難知曉用人單位的經(jīng)營行為是否涉嫌違法。為了保住自己的工作,對于管理者的安排言聽計(jì)從。但是在此還是需要提醒廣大職場人,在選擇行業(yè)以及用人單位時(shí)需要具有風(fēng)險(xiǎn)防范意識。在從事用人單位安排的工作內(nèi)容時(shí)一定要具有風(fēng)險(xiǎn)防范意識。有向上想掙錢的心是好的,但是...

  • C 20?新特性的小細(xì)節(jié)

    之前整理過一篇C20新特性的文章全網(wǎng)首發(fā)??!C20新特性全在這一張圖里了,里面提到過latch、barrier和semaphore,但是沒有詳細(xì)介紹過三者的作用和區(qū)別,這里詳細(xì)介紹下。latch這個(gè)可能大多數(shù)人都有所了解,這就是我們經(jīng)常會(huì)用到的CountDownLatch。用于使...

    CPP開發(fā)者
    2021-10-27
發(fā)布文章