Angular+Flask搭建一個記錄工具


平時用的最多的文本編輯器就是Notepad++,很多東西都是通過Notepad++直接記錄的:

  • 沒有看完的網頁鏈接
  • 要整理、收藏的網頁
  • 讀書筆記
  • 要處理的事情
  • 待看/看過的文檔和電子書
  • 等等。。。

隨着內容越來越多,就不方便管理和查看了。

於是決定自己實現一個簡單的記錄工具來管理這些信息,工具就叫Remember。

關於Remember

自己平時工作主要用Python,並且對前端方向一直很有興趣,所以Remember的開發就使用了Angular和Flask,分別實現了前端的頁面邏輯和后台的RESTful API。

另外,Remember開發中主要用到了下面的工具:

  • 通過pylint、jshint進行Python、JavaScript代碼的靜態檢查
  • JavaScript的單元測試使用karma和Jasmine
  • 前端包管理使用bower
  • 前端構建使用gulp

下面就看看Remember中提供的一些功能。

管理任務

Markdown編輯/預覽

管理便簽

管理文件

一些感想

在開發Remember的過程中遇到了一些問題,也開始更加注意一些事情。

編碼風格很重要

每個開發人員都有自己的編碼習慣和風格,不能說誰的編碼風格就是最好的。

但是,對於一個項目,編碼風格的統一很重要,統一風格的代碼將更方便的管理、查閱,降低維護成本。

在開發Remember的時候自己也是盡量去按照Python和JavaScript的style guide去編碼,主要有以下參考。

對於Python,主要參考:

對於JavaScript和Angular,主要參考:

即使有了統一的風格,對於Python和JavaScript這些解釋性的語言,靜態檢查也是很有必要的。所以Remember中就使用了pylint和jshint進行靜態檢查。這種靜態檢查可以進一步保持統一的代碼風格,同時幫忙發現一些代碼錯誤。

單元測試

由於自己是邊開發邊使用Remember,所以經常有一些改動,但是改動之后沒有進行測試,有時候相關的功能就不正常了,就需要查看最近的提交記錄。

所以對一些基本的功能模塊,編寫單元測試還是很必要的。

Remember中主要使用karma和Jasmine進行JavaScript單元測試,但是測試的coverage還是很少,需要慢慢補上。

使用工具簡化流程

開發過程中接觸了一些工具,很大程度上方便了開發。

記得以前需要什么前端庫的時候,都是直接搜索,然后下載相應的js/css文件。不僅工作效率低下,對於這些庫的管理也是一個很大的問題。所以去了解了一下bower這個工具,然后就可以方便的獲取和管理需要使用的庫了。

另外就是使用了gulp進行一些自動化構建,以前很多手動的工作現在都簡化成了一個簡單的命令。通過gulp合並、壓縮js/css/html之后,加載首頁的對比:

  • 壓縮合並前:

  

  • 壓縮合並后:

  

尋找和利用一些工具來簡化流程是十分必要的,往往會有事半功倍的效果(Ps:現在前端開發的工具實在太多了)。

總結

Remember開發過程是邊開發邊使用,到現在已經可以滿足我的需求了,而且現在已經習慣了使用這個工具進行各種記錄工作。但是還有很多可以增加、改進的地方,就慢慢來吧。

雖然對JavaScript有一些了解,但是Angular是開始做這個工具時候現學的;關於JavaScript的單元測試工具,通過bower管理前端庫,通過gulp構建前端項目等等都是邊學邊使用,所以收獲還是挺多的。

 

項目源碼已經托管到Github上了,如果你也剛開始學習Angular或Flask,希望項目的源碼能夠對你有所幫助。

如果你也需要一個記錄工具,不妨試試Remember,或者基於Remember定制一個符合你習慣的工具。

 

Remember on Github:https://github.com/WilberTian/Remember

Gif 制作工具:ScreenToGif

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM