主頁 > 後端開發 > 要替代C和Java 的后浪,現在混得怎么樣?

要替代C和Java 的后浪,現在混得怎么樣?

2020-09-21 07:25:17 後端開發

  近日,TIOBE發布了2020年5月的編程言語排行榜,C言語時隔5年重返第一,Java和Python排列二、三位,
  前段時刻,B站推出的青年節演講視頻《后浪》在朋友圈刷屏,看著“后浪”們五光十色的生活,搭檔們紛紛自嘲自己便是被拍在沙灘上的那一個,被生活瘋狂蹂躪,
  可是在編程言語界,“后浪”們掀起的波瀾則十分有限,與近年來連續涌現的新式編程言語比較,那些出道即巔峰、一巔幾十年的“前浪”們,好像還沒有要退位讓賢的意思,
  在TIOBE發布的最新編程言語排行榜中,排名前十的言語中有8個誕生于上個世紀90年代,最“年青”的是誕生于2001年的C#,而坐落第一的C言語距今已有48年的前史,
  假如咱們再來縱觀自2002年以來的編程言語排行榜,基本上也仍是這些老牌編程言語的身影,尤其是C與Java這兩位“前浪”老大哥的江湖位置一向難以撼動,
  數十年來,連續呈現的新式編程言語不在少數,其中不乏一些以代替某種老言語為意圖而規劃的,那么這些編程言語界的“后浪”們,是否能夠追上“前浪”們的腳步呢?下面不妨讓咱們來看看這些年編程界的聞名“后浪”們,
  1、前浪C++(1979)VS后浪Go(2009)
  誕生于2009年的Go言語堪稱編程言語中的“星二代”,Go的早期作者有三人,分別是RobPike,KenThompson和RobertGriesemer,每一位的來頭可都不小,
  RobPike曾是貝爾實驗室的Unix團隊以及Plan9操作體系方案的成員,與Thompson同事多年,并共創出廣泛運用的UTF-8字元編碼
  KenThompson則是B言語、C言語的作者,Unix之父,1983年圖靈獎和1998年美國國家技能獎得主
  而RobertGriesemer在開發Go之前是GoogleV8、Chubby和HotSpotJVM的主要奉獻者
  2007年,RobPike以為C++在Google分布式編譯平臺上的編譯程序過分綿長,所以他和RobertGriesemer開端討論“簡化編程言語比較于在臃腫的言語上不斷增加新特性,會是更大的進步”
  兩人一拍即合,隨即說服了身邊的KenThompson,三人決議要搗鼓一門新言語,幾天后,他們在Google內部發起了一個叫Golang的專案,很快,一個在C言語根底上進行了優化的新言語誕生了,這便是Go
  作為一個規劃意圖便是為了代替C/C++的新言語,Go的語法在許多地方學習了C/C++,比方用花括號作為定界符,以分號作為句子結束等等,這使得Go很簡單就能被通曉C/C++的開發人員承受,
  而在沿襲C/C++基本語法的根底上,Go新參加了許多針對當下盛行的分布式體系的實用功能,比方超輕量級的執行緒goroutine,在高并發的體系中,能夠按照多執行緒的辦法寫程式,然后保證邏輯的清晰和簡單,又能夠獲得十分高的功能
  而相同的作業在C++中則需求呼叫第三方結構,假如用多執行緒,會導致體系執行緒過多帶來許多的背景關系切換overhead;假如選用根據訊息的架構,盡管能夠獲得較高的功率,但程式邏輯會被打散,可讀性和可保護性較差,
  此外,Go言語作為Google大力支撐的“親兒子”,擁有編譯、測驗、除錯、功能分析等一整套老練的工具,編譯功率極高,再加上其還內置了http、json、xml、正則運算式等許多后端體系開發中常用的庫,能夠說是一門現已十分老練的工程化開發言語,
  而在這方面,C++則需求用到許多的第三方開源工具或庫,在工程上需求花費更多的精力進行技能選型,一起也不利于后期保護,
  根據上述的長處,Go言語被公以為十分適合構建命令列實用程式和網路服務等,尤其是云核算場景下的高并發運用,現在廣泛盛行的容器引擎Docker、容器編排體系Kubernetes都是用Go撰寫的,Go也因而被一些人稱為“容器言語”,
  盡管Go在許多方面現已逾越C/C++,并且在云原生相關范疇占有了一席之地,可是依然難以撼動C/C++言語在許多工業根底設施終端的位置,
  C/C++的優勢依然在于它的運轉功率,假如是低級設備驅動程式、內核空間操作體系組件以及其他需求嚴厲控制記憶體布局和辦理的使命,C依然是不貳之選,
  現在,Go在各種威望編程言語排行榜上都名列前茅,且一向呈上升趨勢,在云原生建造如火如荼地當下,Go至少在“云”這一范疇現已完成了對長輩的逾越,
  2、前浪C++(1979)VS后浪Rust(2010)
  Rust是繼Go之后另一個企圖代替C/C++的新言語,2010年前后,跟著大規劃事務的拓展和分布式核算的盛行,GraydonHoare也和RobPike相同看到了C++等傳統編程言語在高并發場景下的缺陷,企圖創造更優異的言語來代替它們,
  Rust原本是Graydon從2006年開端搗鼓的個人專案,隨后該專案得到了Mozzila基金會的贊助,而Graydon本人也于2009年參加Mozzila公司,帶領團隊完善Rust言語的開發,
  2010年,Mozzila正式對外透露了Rust的存在,2013年,Mozzila基金會宣告將與三星合作,運用Rust言語開發一款瀏覽器引擎Servo,成為首個運用Rust撰寫的大型專案,2015年,Rust首個1.0正式版發布,
  Rust開端是Mozilla為了處理軟體在言語級別上無法真實利用多核核算帶來的功能提升而創建的,這一點與Go有些相似,
  比較長輩C++,Rust在代碼安全這一特性上下足了功夫,比方記憶體安全方面,Rust在安全代碼里不容許空指標、懸垂指標和資料競爭,這些問題在編譯階段就無法經過,
  Rust社區中心開發者Nichols表示:“之前,咱們只能運用C或許C++才干撰寫具有較低記憶體占用空間的高質量代碼,可是,在生產代碼中運用這些言語需求你手動辦理記憶體并了解可能導致未定義行為的一切辦法,”
  Nichols指出,不斷擴展的CVE代碼縫隙資料庫證明,即使是最優異的程式員也疲于應對層出不窮的代碼縫隙,“為了保證你安全地運用記憶體,Rust編譯器十分嚴厲,這樣你就能夠專注于你真實想要處理的問題,”
  盡管Rust憑仗其代碼安全的特性獲得了部分開發者的青睞,但由于其無論是在功能仍是語法上,均不足以推翻C/C++,再加上其學習曲線并不滑潤,因而與“家大業大”的Go比較,Rust在前期的開展不溫不火,
  直到上一年7月,微軟突然宣告將擁抱Rust,探究用Rust作為C/C++和其他言語的安全代替方案,以此來改善運用程式的安全狀況,
  微軟以為Rust是現在業界體系編程的最佳挑選,原因不僅是它能夠以記憶體安全的辦法撰寫體系級程式,還在于其精密性
  微軟此舉讓Rust在開發者中的位置直線上升,越來越多的企業和個人開端重視并重視代碼安全的問題,然后重新審視這門新言語
  這主要體現在2020年以來環繞Rust言語產生的幾件作業:
  1.Linux內核保護者表示樂意承受用Rust開發Linux驅動
  2.AWS宣告贊助Rust
  3.微軟更進一步,在今年年初開發并開源了受Rust啟示的新編程言語Verona
  4.最近,蘋果也站出來擁抱它,方案將部分C代碼移植到Rust
  現在,Rust言語的開展整體來說依然比較緩慢,根據最新的一份調查報告顯現,大多數不樂意承受Rust的開發者以為,Rust現在的問題主要在于學習曲線峻峭、缺少所需的庫、缺少IDE支撐等,能夠說,Rust的開展依然負重致遠,
  3、前浪Objective-C(1986)VS后浪Swift(2014)
  Swift是為數不多的成功把“前浪”拍在沙灘上的“后浪”,
  2010年,或許是遭到競爭對手Google推出Go的啟示,Apple高層也決議開發一套新的編程言語,用以代替運用了數十年的Objective-C,而最早接到這個使命的人正是ChrisLattner,
  Chris在大學還沒結業的時分就成為了業界聞名的編譯器專家,其碩士期間發表的論文奠定了LLVM結構的開展根底,在參加Apple公司今后,Chris創造的LLVM+Clang成為了Apple軟體產品的編譯結構,而Swift言語便是Chris繼LLVM與Clang之后的又一力作,
  Swift是一門博采眾長的現代言語,在規劃的程序中,Chris參閱了Objective-C、Rust、Haskell、Ruby、Python、C#等言語的長處,終究構成了Swift的語法特性,
  與長輩OC比較,Swift的語法更加簡潔,例如行尾不再需求分號,if/else句子也不需求括弧,呼叫辦法時[]也不再嵌套,支撐字串插入,省略了OC中的%s,%d,%@等等,
  一起,Swift把oc頭檔案.h和完成檔案.m合并成了一個代碼檔案.swift,使得Swift代碼更易于保護,最重要的是,拿手優化的蘋果工程師讓Swift的運轉速度能夠逼近C++,是OC運轉速度的近1.4倍,
  在Swift誕生今后,蘋果軟體的開發者只需求保護本來一半量的代碼檔案,大大提高了開發功率,降低了保護成本,
  現在,Swift幾乎現已徹底代替Objective-C,成為蘋果旗下MacOS、iOS的干流開發言語,許多剛剛入行的iOS新人開發者乃至沒有觸摸過Objective-C,不出意外的話,Objective-C很有可能在不久的將來被人們逐步忘記,
  可是Swift團隊的目標好像遠不止于干掉老大哥這么簡單,在行將發布的5.3版別中,Swift將增加對Windows和其他Linux發行版PC操作體系的支撐(現在僅支撐MacOS和Ubuntu),至于其后續開展怎么,咱們還將持續重視,
  4、前浪JavaScript(1995)VS后浪Dart(2011)
  Dart是Google工程師們繼Go之后造的又一個輪子,與Go相似,Dart開端也是一群Google工程師覺得JavaScript不太行,因而想要重新造一個更好的言語代替它,所以就有了Dart,
  Google工程師以為,JS開端從規劃到發布的時刻極短(僅為7個月),在言語標準和慎重性方面存在先天不足,比方語法過于松懈、缺少模塊化才能、中心庫不完備、編程言語范型不明確等,且難以用改進的辦法來修復,
  事實上,Google工程師多年來也為改善JavaScript的功能做出了諸多奉獻,特別是經過V8引擎強化了JIT對JS的編譯才能,然后讓Chrome瀏覽器的功能一騎絕塵,這足以闡明當時的JavaScript在Google工程師眼里的確存在許多問題,
  Dart開端也是作為一種在瀏覽器中運轉的腳本言語而生,Google還專門在Chrome中內置了一個DartVM引擎用來對Dart進行推行,得益于Chrome巨大的用戶體量,這一舉措讓Dart堆集了規劃可觀的早期用戶群體,
  原以為在Google的保駕護航下,Dart能夠穩步開展并終究趕超JavaScript,可是令Google沒想到的是,半路竟殺出了一個Node.js,
  Node.js是一個JavaScript運轉環境,它讓JavaScript能夠開發后端程式,完成幾乎其他后端言語完成的一切功能,這意味著JavaScript能夠與PHP、Java、Python、.NET、Ruby等后端言語等量齊觀,
  從那時起,“但凡能用JavaScript寫的運用終將用JavaScript來寫”開端在圈內廣為流傳,值得一提的是,Node.js正是根據Google自己的開源JavaScript引擎V8開發而來,
  V8本來是用于Chrome對JavaScript的解說器,鬼才RyanDahl把V8搬到了服務器上,用來做服務器的軟體并取得了成功,在往后的幾年里,前端開發的形式因JavaScript而改動,React、React-Native、Vue等根據JavaScript的明星專案敏捷興起,Dart逐步被人們忘記在旮旯,
  可是Google一向沒有放棄Dart,2018年,Google對Dart進行了底層重構,并于8月推出了Dart2.0版別,將其重新定義為一種一起支撐Web和移動客戶端開發、具有豐厚工具箱和組件的言語,
  同年12月,Google發布了用Dart撰寫的跨平臺運用開發工具Flutter,讓Dart能夠在服務端撰寫命令列程式,一起在前端能夠編譯成JavaScript運轉在瀏覽器中,
  隨后,Google開端新一輪發力推行全新的Dart,包含為另一個聞名前端結構Angular推出對應的Dart版別,指定Dart作為未來的操作體系Fuchsia的官方開發言語等,Dart社區又煥發了勃勃生機,
  能夠說在剛剛誕生的前幾年里,作為一門運轉在瀏覽器中的腳本言語,Dart是完敗于長輩JavaScript的,而現在乘著“大前端”的革新浪潮,要說逾越JavaScript盡管也不太現實(畢竟“但凡能用JavaScript寫的東西終將用JavaScript來寫”),但Dart在未來一段時刻里仍是一個十分有潛力的“后浪”代表,
  5、前浪Java(1995)VS后浪Kotlin(2011)
  Kotlin是Google公司繼Go之后又一力捧的新編程言語,Kotlin誕生于2010年,出自JetBrains,并于2012年正式開源,Kotlin開端的規劃意圖是為了創建一種兼容Java的編程言語,并讓它比Java更好,
  作為一門相對比較新的JVM言語,Kotlin得到了Google公司的大力支撐,2017年,Google在I/O開發者大會上官宣Kotlin正式成為Android官方開發言語,兩年后的I/O大會上,Google再次加碼Kotlin,宣告其成為Andoid開發官方首選言語
  Kotlin的語法交融了Scala、Groovy、Python、Swift等許多言語的特性,假如運用過其中恣意一門言語,上手Kotlin將十分簡單,與Java比較,Kotlin引入了函式式編程辦法,一起有各種語法糖簡化了代碼量,
  但與其他企圖代替“前浪”的新言語不同,Kotlin走的是一條100%兼容Java的路途(打不過就參加),眾所周知,Java這么多年聳峙不倒的原因是因為其開展多年堆集的巨大生態,包含豐厚的函式庫、IDE、編譯器、老練的運用生態等等,
  Kotlin則能夠呼叫Java的絕大多數庫,也就能夠直接運用Java現有的生態,因而許多開發者挑選混用Kotlin與Java,
  由于選用的是與長輩調和共生的形式,現在Kotlin現已逾越Scala和Clojure,成為JVM上第二大受歡迎的言語,尤其是在安卓開發范疇得到了許多國內外開發者的認可,也是一個十分有前景的優異“后浪”,
  6、結語
  這些21世紀今后(2010年前后)以代替老言語為意圖而誕生的新言語中,能夠順利代替“前浪”的言語屈指可數,有的乘著新技能的春風在某一新式范疇成為了行業標桿,有的在與“前浪”的調和共生中鄙陋發育,靜待日后的逆襲,
  當然,更多的是消逝在了前史的長河里,乃至沒有泛起一絲漣漪……
  究其原因,現在依然盛行的言語諸如C/C++、Java、Python、JavaScript等等,盡管它們大多數誕生于上個世紀,但它們一向以來也都在針對新時代的需求不斷地優化,閱歷了數十個乃至上百個版別的更迭,許多言語現已與誕生之初徹底不相同了,
  再加上它們數十年來堆集的函式庫、IDE、編譯器、運用生態等自成一脈的豐厚體系,讓“后浪”們難以望其項背,
  從商業的視點來說,在行業格局沒有產生推翻性革新的時分,現有的熱門言語依托多年堆集的巨大用戶根底,就足以構成壟斷,
  就算有更好的新言語呈現,它們也能夠敏捷吸收這些新言語的優良特性,就像大企業吞并小企業,或許直接照搬它們優異的事務功能相同,讓自己變得更好,也更簡單被大部分開發者承受,
  所以要想在編程言語界把“前浪”們拍在沙灘上,“后浪”們要走的路還有很長很長,

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

標籤:Java

上一篇:搭建 springboot selenium 網頁檔案轉圖片環境

下一篇:為什么java8還在被大量使用?

標籤雲
其他(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)

熱門瀏覽
  • 【C++】Microsoft C++、C 和匯編程式檔案

    ......

    uj5u.com 2020-09-10 00:57:23 more
  • 例外宣告

    相比于斷言適用于排除邏輯上不可能存在的狀態,例外通常是用于邏輯上可能發生的錯誤。 例外宣告 Item 1:當函式不可能拋出例外或不能接受拋出例外時,使用noexcept 理由 如果不打算拋出例外的話,程式就會認為無法處理這種錯誤,并且應當盡早終止,如此可以有效地阻止例外的傳播與擴散。 示例 //不可 ......

    uj5u.com 2020-09-10 00:57:27 more
  • Codeforces 1400E Clear the Multiset(貪心 + 分治)

    鏈接:https://codeforces.com/problemset/problem/1400/E 來源:Codeforces 思路:給你一個陣列,現在你可以進行兩種操作,操作1:將一段沒有 0 的區間進行減一的操作,操作2:將 i 位置上的元素歸零。最終問:將這個陣列的全部元素歸零后操作的最少 ......

    uj5u.com 2020-09-10 00:57:30 more
  • UVA11610 【Reverse Prime】

    本人看到此題沒有翻譯,就附帶了一個自己的翻譯版本 思考 這一題,它的第一個要求是找出所有 $7$ 位反向質數及其質因數的個數。 我們應該需要質數篩篩選1~$10^{7}$的所有數,這里就不慢慢介紹了。但是,重讀題,我們突然發現反向質數都是 $7$ 位,而將它反過來后的數字卻是 $6$ 位數,這就說明 ......

    uj5u.com 2020-09-10 00:57:36 more
  • 統計區間素數數量

    1 #pragma GCC optimize(2) 2 #include <bits/stdc++.h> 3 using namespace std; 4 bool isprime[1000000010]; 5 vector<int> prime; 6 inline int getlist(int ......

    uj5u.com 2020-09-10 00:57:47 more
  • C/C++編程筆記:C++中的 const 變數詳解,教你正確認識const用法

    1、C中的const 1、區域const變數存放在堆疊區中,會分配記憶體(也就是說可以通過地址間接修改變數的值)。測驗代碼如下: 運行結果: 2、全域const變數存放在只讀資料段(不能通過地址修改,會發生寫入錯誤), 默認為外部聯編,可以給其他源檔案使用(需要用extern關鍵字修飾) 運行結果: ......

    uj5u.com 2020-09-10 00:58:04 more
  • 【C++犯錯記錄】VS2019 MFC添加資源不懂如何修改資源宏ID

    1. 首先在資源視圖中,添加資源 2. 點擊新添加的資源,復制自動生成的ID 3. 在解決方案資源管理器中找到Resource.h檔案,編輯,使用整個專案搜索和替換的方式快速替換 宏宣告 4. Ctrl+Shift+F 全域搜索,點擊查找全部,然后逐個替換 5. 為什么使用搜索替換而不使用屬性視窗直 ......

    uj5u.com 2020-09-10 00:59:11 more
  • 【C++犯錯記錄】VS2019 MFC不懂的批量添加資源

    1. 打開資源頭檔案Resource.h,在其中預先定義好宏 ID(不清楚其實ID值應該設定多少,可以先新建一個相同的資源項,再在這個資源的ID值的基礎上遞增即可) 2. 在資源視圖中選中專案資源,按F7編輯資源檔案,按 ID 型別 相對路徑的形式添加 資源。(別忘了先把檔案拷貝到專案中的res檔案 ......

    uj5u.com 2020-09-10 01:00:19 more
  • C/C++編程筆記:關于C++的參考型別,專供新手入門使用

    今天要講的是C++中我最喜歡的一個用法——參考,也叫別名。 參考就是給一個變數名取一個變數名,方便我們間接地使用這個變數。我們可以給一個變數創建N個參考,這N + 1個變數共享了同一塊記憶體區域。(參考型別的變數會占用記憶體空間,占用的記憶體空間的大小和指標型別的大小是相同的。雖然參考是一個物件的別名,但 ......

    uj5u.com 2020-09-10 01:00:22 more
  • 【C/C++編程筆記】從頭開始學習C ++:初學者完整指南

    眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開。您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎。 C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由 ......

    uj5u.com 2020-09-10 01:00:41 more
最新发布
  • Rust中的智能指標:Box<T> Rc<T> Arc<T> Cell<T> RefCell<T> Weak

    Rust中的智能指標是什么 智能指標(smart pointers)是一類資料結構,是擁有資料所有權和額外功能的指標。是指標的進一步發展 指標(pointer)是一個包含記憶體地址的變數的通用概念。這個地址參考,或 ” 指向”(points at)一些其 他資料 。參考以 & 符號為標志并借用了他們所 ......

    uj5u.com 2023-04-20 07:24:10 more
  • Java的值傳遞和參考傳遞

    值傳遞不會改變本身,參考傳遞(如果傳遞的值需要實體化到堆里)如果發生修改了會改變本身。 1.基本資料型別都是值傳遞 package com.example.basic; public class Test { public static void main(String[] args) { int ......

    uj5u.com 2023-04-20 07:24:04 more
  • [2]SpinalHDL教程——Scala簡單入門

    第一個 Scala 程式 shell里面輸入 $ scala scala> 1 + 1 res0: Int = 2 scala> println("Hello World!") Hello World! 檔案形式 object HelloWorld { /* 這是我的第一個 Scala 程式 * 以 ......

    uj5u.com 2023-04-20 07:23:58 more
  • 理解函式指標和回呼函式

    理解 函式指標 指向函式的指標。比如: 理解函式指標的偽代碼 void (*p)(int type, char *data); // 定義一個函式指標p void func(int type, char *data); // 宣告一個函式func p = func; // 將指標p指向函式func ......

    uj5u.com 2023-04-20 07:23:52 more
  • Django筆記二十五之資料庫函式之日期函式

    本文首發于公眾號:Hunter后端 原文鏈接:Django筆記二十五之資料庫函式之日期函式 日期函式主要介紹兩個大類,Extract() 和 Trunc() Extract() 函式作用是提取日期,比如我們可以提取一個日期欄位的年份,月份,日等資料 Trunc() 的作用則是截取,比如 2022-0 ......

    uj5u.com 2023-04-20 07:23:45 more
  • 一天吃透JVM面試八股文

    什么是JVM? JVM,全稱Java Virtual Machine(Java虛擬機),是通過在實際的計算機上仿真模擬各種計算機功能來實作的。由一套位元組碼指令集、一組暫存器、一個堆疊、一個垃圾回收堆和一個存盤方法域等組成。JVM屏蔽了與作業系統平臺相關的資訊,使得Java程式只需要生成在Java虛擬機 ......

    uj5u.com 2023-04-20 07:23:31 more
  • 使用Java接入小程式訂閱訊息!

    更新完微信服務號的模板訊息之后,我又趕緊把微信小程式的訂閱訊息給實作了!之前我一直以為微信小程式也是要企業才能申請,沒想到小程式個人就能申請。 訊息推送平臺🔥推送下發【郵件】【短信】【微信服務號】【微信小程式】【企業微信】【釘釘】等訊息型別。 https://gitee.com/zhongfuch ......

    uj5u.com 2023-04-20 07:22:59 more
  • java -- 緩沖流、轉換流、序列化流

    緩沖流 緩沖流, 也叫高效流, 按照資料型別分類: 位元組緩沖流:BufferedInputStream,BufferedOutputStream 字符緩沖流:BufferedReader,BufferedWriter 緩沖流的基本原理,是在創建流物件時,會創建一個內置的默認大小的緩沖區陣列,通過緩沖 ......

    uj5u.com 2023-04-20 07:22:49 more
  • Java-SpringBoot-Range請求頭設定實作視頻分段傳輸

    老實說,人太懶了,現在基本都不喜歡寫筆記了,但是網上有關Range請求頭的文章都太水了 下面是抄的一段StackOverflow的代碼...自己大修改過的,寫的注釋挺全的,應該直接看得懂,就不解釋了 寫的不好...只是希望能給視頻網站開發的新手一點點幫助吧. 業務場景:視頻分段傳輸、視頻多段傳輸(理 ......

    uj5u.com 2023-04-20 07:22:42 more
  • Windows 10開發教程_編程入門自學教程_菜鳥教程-免費教程分享

    教程簡介 Windows 10開發入門教程 - 從簡單的步驟了解Windows 10開發,從基本到高級概念,包括簡介,UWP,第一個應用程式,商店,XAML控制元件,資料系結,XAML性能,自適應設計,自適應UI,自適應代碼,檔案管理,SQLite資料庫,應用程式到應用程式通信,應用程式本地化,應用程式 ......

    uj5u.com 2023-04-20 07:22:35 more