vm內(nèi)存模型是什么呢?jvm內(nèi)存模型是一類用于描述由java棧、java堆、方法區(qū)、本地方法棧和程序計(jì)數(shù)器各部件構(gòu)成的Java程序。在執(zhí)行過程中,由jvm管理的不同數(shù)據(jù)區(qū)域的一類圖表。jvm內(nèi)存模型每個(gè)區(qū)域儲(chǔ)存各自不同的內(nèi)容,且都有其特定的作用,如線程私有的有虛擬機(jī)棧,本地方法棧和程序計(jì)數(shù)器,線程共享的有方法區(qū)和堆區(qū)。
1.jvava棧用于描述Java方法執(zhí)行的內(nèi)存模型
2.Java堆用于垃圾收集器管理
3.方法區(qū)用于存儲(chǔ)已被虛擬機(jī)加載的數(shù)據(jù)
4.本地方法棧用以為虛擬機(jī)使用到的Native方法服務(wù)
5.程序計(jì)數(shù)器用于指示當(dāng)前線程所執(zhí)行的字節(jié)碼的行號(hào)
jvm內(nèi)存模型模型的繪制方法非常簡單易學(xué),通過以下五個(gè)簡單步驟,即可輕松繪制出一幅專業(yè)的jvm內(nèi)存模型模型,不信?接著往下看!
第一步:點(diǎn)擊下載“億圖圖示”軟件,或訪問在線版億圖圖示。啟動(dòng)軟件!
第二步:新建jvm內(nèi)存模型。在搜索欄中輸入“jvm內(nèi)存模型”進(jìn)行搜索。然后從例子庫中,選擇一個(gè)模板,點(diǎn)擊打開jvm內(nèi)存模型模板。
第三步:先點(diǎn)擊畫布中的jvm內(nèi)存模型,點(diǎn)擊需要修改的部分,可將左側(cè)符號(hào)庫中文本、邊框和標(biāo)題、圖形符號(hào)等素材一鍵拖入畫布中,進(jìn)行修改圖形與符號(hào),操作非常方便。右側(cè)面板可修改主題可配色,進(jìn)行美化等操作。
第四步:雙擊文本框,可替換jvm內(nèi)存模型模型模板里的文字。
第五步:完成jvm內(nèi)存模型的繪制后,可以點(diǎn)擊右上角的保存、下載、打印、分享等按鈕,對(duì)繪制好的jvm內(nèi)存模型作品進(jìn)行存儲(chǔ)。也可以將作品導(dǎo)出為圖片、SVG、PDF、PPT等格式。
億圖圖示是一款專業(yè)的可視化繪圖工具,在任何場合都可以用于展示創(chuàng)意、分享想法。軟件內(nèi)置260多種繪圖類型,豐富的模板素材可以幫助快速繪制jvm內(nèi)存模型、網(wǎng)絡(luò)圖、流程圖、思維導(dǎo)圖、商務(wù)圖表、組織結(jié)構(gòu)圖、甘特圖、地圖、線框圖以及網(wǎng)絡(luò)拓?fù)鋱D等專業(yè)圖形,提高工作效率。使用這款軟件無需繪圖基礎(chǔ),可以直接選擇jvm內(nèi)存模型的模版,然后進(jìn)行拖拽式操作,即使是新手也能迅速創(chuàng)建出有專業(yè)水準(zhǔn)的圖表,所有jvm內(nèi)存模型模板都支持一鍵套用。
繪制jvm內(nèi)存模型,推薦使用億圖圖示,直接套用多種模板,快速繪制出符合要求的jvm內(nèi)存模型模型,提升效率!
1、模板豐富,顏值極高
繪制專業(yè)的模板,就得選用專業(yè)的軟件,億圖圖示模板非常豐富,有260種繪圖類型,26000+個(gè)矢量圖形,3000+個(gè)繪圖模板。即使是新手,也能輕松實(shí)現(xiàn)創(chuàng)意表達(dá),高效制作專業(yè)圖。
1、操作方式簡單便捷
軟件支持進(jìn)行拖拽式操作,并且可自動(dòng)吸附及對(duì)齊,讓您的操作體驗(yàn)更加舒適流暢。
3、多平臺(tái),易適配,易查看
軟件支持Windows、Mac和Linux三個(gè)系統(tǒng),V10.1 版本支持桌面版與網(wǎng)頁版兩種方式云同步存儲(chǔ),文件可一鍵分享好友,非常便捷。
4、導(dǎo)入格式多
可以一鍵導(dǎo)入Visio,SVG類型的文件,也可以批量轉(zhuǎn)化Visio,比如可以批量轉(zhuǎn)化一整個(gè)目錄的Visio文件到Edraw文件,一次性實(shí)現(xiàn)文件眾多文件轉(zhuǎn)移,操作便捷。
5、支持多種導(dǎo)出格式
可以一鍵將圖表導(dǎo)出為各種格式,如圖片,Html,PDF,SVG,Office等,讓圖表內(nèi)容更加清晰直觀,增加美感。
vg在線編輯器 https://editor.method.ac/
使用的是polygon標(biāo)簽
該標(biāo)簽?zāi)軇?chuàng)建含有不少于三個(gè)邊的圖形。
如下
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <polygon points="0,10 5,2 5,7 10,0"/> </svg>
效果如下
其坐標(biāo)為路徑
poliline 為曲線
同樣輸入的為坐標(biāo)
此時(shí)為了和上一個(gè)區(qū)分,將file設(shè)置為不填充,設(shè)置描邊為black
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <polyline points="0,10 5,2 5,7 10,0" fill="none" stroke="black"/> </svg>
效果如下
其中 填充為非零繞數(shù)原則
path類似于筆的路徑
其擁有一個(gè)屬性d,該屬性d由下方的單詞的首字母組成。
Moveto
畫筆的起點(diǎn)
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <path d="M10,100"/> </svg>
Lineto
該執(zhí)行從畫筆的起點(diǎn)到位置繪制一條直線
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <path d="M0 0 L0 20 L40 0 "/> </svg>
Curveto
繪制貝塞爾曲線,由三個(gè)參數(shù)組成,考慮兩個(gè)控制點(diǎn)
直接選擇畫板手繪吧,實(shí)在看不懂了,貌似缺少了橢圓的一些數(shù)學(xué)知識(shí)
總結(jié)
繪制一顆心,以下是在網(wǎng)上找的
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <path d="M1,3 A2,2 0,0,1 5,3 A2,2 0,0,1 9,3 Q9,6 5,9 Q1,6 1,3 Z "/> </svg>
沒看懂。。。
text元素
依舊當(dāng)做圖片處理
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <text x="0" y="20" fill="red">Hello world</text> </svg>
此為屬性,定義任何類型的線條
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <text x="0" y="20" stroke="black">Hello world</text> </svg>
對(duì)圖片模糊
先引入圖片
<image x="0" y="0" width="100%" height="300px" xlink:/>
此時(shí)圖片顯示
接著定義可復(fù)用的組即defs
defs 標(biāo)簽為可復(fù)用的組標(biāo)簽
使用的是file用于存放濾鏡的地方
使用file標(biāo)簽
使用feGaussianBlur濾鏡即模糊濾鏡
使用的in的參數(shù)為SourceGraphic表示圖形作為原始的輸入
此外還有背景圖,通道等
stdDeviation 表示模糊的程度
完整的如下
<defs> <filter id="f1" x="0" y="0"> <feGaussianBlur in="SourceGraphic" stdDeviation="15" /> </filter> </defs>
接著再次使用濾鏡
<image filter="url(#f1)" x="0" y="0" width="100%" height="100px" xlink:/>
一個(gè)模糊
效果不錯(cuò)
此外還有陰影漸變,等濾鏡,等就太復(fù)雜了,設(shè)計(jì)到矩陣變換等高等數(shù)學(xué)的內(nèi)容,自己有心無力。
使用adobe ai 生成svg文件
創(chuàng)建一個(gè)畫板
選擇字符
添加字體
轉(zhuǎn)曲
獲取svg代碼
畫出圖像
代碼如下
<!DOCTYPE html> <html> <head> <title>svg頁面</title> </head> <body> <p>這是一個(gè)svg</p> <!-- svg 圖形的命名空間 --> <svg version="1.1" id="圖層_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1366 768" style="enable-background:new 0 0 1366 768;" xml:space="preserve"> <g> <path d="M722.2,346.5c17.1,128.1-27.4,231.2-133.3,309.2c-36.1,26.6-79.1,43.8-123.5,49.7c-109.2,14.4-200.7-14.2-274.5-85.9 c-62.1-60.1-93.1-133.1-93.1-218.8c0-103.3,45-188.2,135.1-254.6c36.1-26.6,78.9-44.2,123.3-50.2 c128.7-17.4,232.7,23.8,312.1,123.6C697.2,255.9,716,300.4,722.2,346.5z M709.2,403.7c1.8-83.1-27.7-154-88.5-212.8 c-58.6-56.5-128-84.7-208.1-84.7l-32.3,66.3l35.2,7.1l27.5-27.5l48.5,3.2l9.7,25.9L472,210.3v17.5l18.1,3.6l8.4-13.6l32-20l-1,13.6 l12,20.7l-14.2,14.9l9,8.7l-21.3,1.3l8.7,17.5l-46.2,22l7.1,26.2h-14.5l-6.5-25.9l-33.9-0.6l-6.1,10l-13.9-6.5L387,322.1l18.1,21.7 l-0.6,23.9l19.1,14.2l111.2,12.6l35.2,24.9l-4.2,61.7l-76.6,76.6c-5,5-9.8,18.7-14.5,41.4c-4.5,21.3-6.1,36.5-4.8,45.6l-11.6,13.3 c-9-17.9-20.8-45.4-35.2-82.4c-3.4-12.7-6.5-28.9-9-48.5c-1.9-16.2-3.9-32.4-5.8-48.8l-48.5-42.7l43-50.7l-17.8-25.5 c-27.4-5.6-45.1-10.6-53.3-15c-8.2-4.4-22.3-16.8-42.3-37l16.8,32.6l-11.3,4.8l-26.2-49.1l5.2-45.9l-8.1-32.3l-25.2-24.6l-18.4-4.5 l-16.2,11.3l-17.8,4.5c-49.6,57.3-74.1,123.3-73.4,197.9c0.8,76.3,32.7,151,87.1,204.4c58.1,57,128.4,85.4,210.9,85.4 c81.9,0,151.8-28.7,209.6-86C675.7,552.8,707.5,479.1,709.2,403.7z"/> </g> </svg> </body> </html>
到此,可以發(fā)揮ai的想象啦。包括繪制圖形,使用濾鏡,畫圖圖標(biāo)等等,哪怕使用圖片導(dǎo)入ai,繪制出矢量圖。完美的ai和html的一次結(jié)合
http://svgjs.com/ 使用該svg.js框架可以快速的操縱svg
s2flowchart 是一個(gè)可視化庫,可將任何JavaScript代碼轉(zhuǎn)換為漂亮的SVG流程圖。你可以輕松地利用它學(xué)習(xí)其他代碼、設(shè)計(jì)你的代碼、重構(gòu)代碼、解釋代碼。這樣一個(gè)強(qiáng)大的神器,真的值得你擁有,看下面截圖就知道了,有沒有很強(qiáng)大。
安裝
yarn add js2flowchart
使用
index.html
index.js
我們直接在文本域中輸入自己的代碼,如下,左邊會(huì)直接生成流程圖,這只是一個(gè)簡單的示例:
js2flowchart獲取您的JS代碼并返回SVG流程圖,適用于客戶端/服務(wù)器,支持ES6。
主要特點(diǎn):
定義抽象級(jí)別以僅渲染導(dǎo)入/導(dǎo)出,類/函數(shù)名稱,函數(shù)依賴性以逐步學(xué)習(xí)/解釋代碼。
自定義抽象級(jí)別支持創(chuàng)建自己的抽象級(jí)別
表示生成器,以生成不同抽象級(jí)別的SVG列表
定義流樹修改器以映射眾所周知的API,例如 .map,。forEach, .filter到方案上的循環(huán)結(jié)構(gòu)等。
銷毀修飾符,用于在方案上用一個(gè)形狀替換代碼塊
自定義流樹修改器支持創(chuàng)建自己的流修改器
流樹忽略過濾器完全省略一些代碼節(jié)點(diǎn),如日志行
聚焦節(jié)點(diǎn)或整個(gè)代碼邏輯分支突出顯示方案的重要部分
模糊節(jié)點(diǎn)或整個(gè)代碼邏輯分支以隱藏不太重要的東西
定義的樣式主題支持選擇您喜歡的樣式
自定義主題支持創(chuàng)建自己的主題,更好地適合您的上下文顏色
自定義顏色和樣式支持提供方便的API來更改特定樣式而無需樣板
用例場景:
通過流程圖解釋/記錄您的代碼
通過視覺理解學(xué)習(xí)其他代碼
為有效JS語法簡單描述的任何進(jìn)程創(chuàng)建流程圖
以上所有功能可以直接到github上詳細(xì)了解,用法太多,這里就不在介紹了!
這么強(qiáng)大的東西,有人肯定說如果在開發(fā)的時(shí)候?qū)崟r(shí)看到流程圖有助于理解代碼,官網(wǎng)提供了插件(我在最新版中測試失效了,不知道是否是我使用的有問題還是插件本身的問題),如果感興趣的可以到擴(kuò)展商店搜索code-flowchart。如果測試成功,歡迎到評(píng)論區(qū)分享。以下是我vscode版本和官網(wǎng)的插件使用截圖。
如果利用好這個(gè)插件,可以開發(fā)出Chrome插件,以及其他JavaScript編輯器或者IDEA的插件,由于官方github已經(jīng)幾個(gè)月沒更新了,所以還不知道未來會(huì)不會(huì)支持!
來都來了,走啥走,留個(gè)言唄~
IT大咖說 | 關(guān)于版權(quán)
由“IT大咖說(ID:itdakashuo)”原創(chuàng)的文章,轉(zhuǎn)載時(shí)請(qǐng)注明作者、出處及微信公眾號(hào)。投稿、約稿、轉(zhuǎn)載請(qǐng)加微信:ITDKS10(備注:投稿),茉莉小姐姐會(huì)及時(shí)與您聯(lián)系!
感謝您對(duì)IT大咖說的熱心支持!
相關(guān)推薦
推薦文章
據(jù)說這份高考卷,只有程序員能得滿分!
干貨分享:一次Java內(nèi)存泄漏排查實(shí)戰(zhàn)
這個(gè)程序員實(shí)在是太帥了
最近活動(dòng)
融云微課堂
線下活動(dòng) | Apache Flink 1.9 版本即將發(fā)布,新版本有哪些新特性?
線下活動(dòng) | 阿里云實(shí)時(shí)計(jì)算專場沙龍,與你探討大數(shù)據(jù)實(shí)時(shí)計(jì)算的解決方案
點(diǎn)擊【閱讀原文】更多IT技術(shù)圈干貨等你挖掘
閱讀原文
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。