IDEA開源代碼生成插件EasyCode源碼分析

1.理論準備:

     在IntelliJ官網強行看了一會英語,最終放棄。 一是閱讀時間過慢,二是全部看有些浪費時間。看了很多相關的博客,個人認爲這個很不錯,地址: IntelliJ IDEA插件結構

2.架構分析:

    到目前爲止,我已經拿到源碼調試通過過去了兩三天了,始終不能較爲連貫的將各種知識範疇給聯繫起來,所以趁今天有時間將其整理整理,按照個人的理解理了個圖。

  上圖中,我主要關注的點在右邊橘紅色部分,也是該代碼插件主要的功能實現。

3.核心代碼結構分析:

  最新版(1.2.4版本),其實體有16個,我將其按照功能分類進行一下整理:

  上圖爲實現代碼生成的核心實體。

4.執行流程-源碼分析:

  首先,我們從它的使用方式來看:

  從這裏結合前期的理論準備,我們需要知道這樣的一些配置:

  接口體系如下: 

  點擊相應的菜單,會跳轉到相應的界面。 注意,這邊的類均是  swing下的,它們本身可以看作是相應的視圖,有自己的視圖接口體系,所以我只看與邏輯相關的代碼,一些事件監聽之類的方法就跳過。 

   以生成代碼爲例子:

  總之,要進行代碼的生成,必須有合法的列名與實體類型的映射關係。驗證合法後,通過點擊菜單,將會打開一個視圖實體,SelectSavePath,它是Dialog的子類。其構造方法如下:

 

   最後,根據配置,選擇是否需要格式化代碼。   代碼生成的一個大體流程就是這樣。 

5.配置分析:

  該文件,幾乎包括了對該插件所有 源  , 的配置。 

  大體的配置邏輯便是這樣,相應的頁面樣式,這裏就不繼續分析了。  待後面更加熟悉之後,再行看情況進行分析。 

  此外,關於velocity模板部分還未進行學習,感覺挺強大的,值得一學。。 。 

  感謝開源的大佬無私奉獻,讓我們有機會接觸方方面面的知識。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章