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
Angular+Flask搭建一个记录工具的更多相关文章
- 从零开始用 Flask 搭建一个网站(一)
前言 笔者之前未接触过 Python,只是略懂一点前端,所以说从零开始也相差无几吧.Flask 是一个轻量级的基于 Python 的框架,但是扩展性非常良好(Github 上 22000 多个 sta ...
- 从零开始用 Flask 搭建一个网站(二)
从零开始用 Flask 搭建一个网站(一) 介绍了如何搭建 Python 环境,以及 Flask 应用基本项目结构.我们要搭建的网站是管理第三方集成的控制台,类似于 Slack. 本篇主要讲解数据如何 ...
- 从零开始用 Flask 搭建一个网站(三)
从零开始用 Flask 搭建一个网站(二) 介绍了有关于数据库的运用,接下来我们在完善一下数据在前端以及前端到后端之间的交互.本节涉及到前端,因此也会讲解一下 jinja2 模板.jQuery.aja ...
- 从零开始用 Flask 搭建一个网站(四)
前言 从零开始用 Flask 搭建一个网站(三) 介绍了网页前端与后端.前端与前端之间数据的交流.本节主要介绍一下如何应用 Flask-OAuthlib, 使用 Flask-OAuthlib 就可以轻 ...
- Python Flask搭建一个视频网站实战视频教程
点击了解更多Python课程>>> Python Flask搭建一个视频网站实战视频教程 第1章 课程介绍 第2章 预备开发环境 第3章 项目分析.建立目录及模型规划 第4章 建立前 ...
- Python - 利用flask搭建一个共享服务器
零.概述 我利用flask搭建了一个简易的共享服务器,分享给大家 一.python代码 import os import time from flask import Flask,render_tem ...
- jquery+flask+keras+nsfw快速搭建一个简易鉴黄工具
1. demo 地址:http://www.huchengchun.com:8127/porn_classification 接口说明: 1. http://www.huchengchun.com:8 ...
- Flask框架搭建一个日程表
目录 前言 项目介绍 技术栈 Flask Web开发流程 一.搭建环境 1.1: 创建虚拟环境 1.2: 安装依赖包 1.3: 创建依赖包列表文件 1.4: 测试hello word 二.应用程序开发 ...
- 用Python手把手教你搭建一个web框架-flask微框架!
在之前的文章当中,小编已经教过大家怎么搭建一个Django框架,今天我们来探索另外的一种框架的搭建,这个框架就是web框架-flask微框架啦!首先我们带着以下的几个问题来阅读本文: 1.flask是 ...
随机推荐
- 如何实现桌面App图标可以动态显示消息数(类似手机上的QQ图标)?
手机上的APP , 像QQ和微信等都可以在图标上动态显示消息数(最大99) , 那么你有没有想过这些效果是如何实现的?桌面上开发的传统应用程序能否也实现类似的功能? 1 思路 桌面快捷方式的图标本质上 ...
- JavaScript的运动框架学习总结
一.目录 1. 入门案例——实现匀速运动 2. 入门案例——实现缓冲运动 3. 实现任意值的运动框架v.1 4. 改进任意值的运动框架v.2 5. 改进任意值的运动框架v.3 6. 实现链式运动框架 ...
- VS2012 asp.net mvc 4 运行项目提示:"错误消息 401.2。: 未经授权: 服务器配置导致登录失败"
创建mvc4 应用程序发布,运行出错.出现未经授权: 服务器配置导致登录失败.请验证您是否有权基于您提供的凭,后来找得解决方法: 打开点站的web.confg文件,将: <authorizati ...
- URL-统一资源定位器
URL - Uniform Resource Locator URL 可以由单词组成,比如 “w3school.com.cn”,或者是因特网协议(IP)地址:192.168.1.253.大多数人在网上 ...
- sap去除后缀0方法
原贴地址:http://fuhesap.com/SAP/179.html SHIFT str LEFT DELETING LEADING '0'.如果要在layout显示不出前面的0 格式: & ...
- userprofile同步用户失败的原因和解决方案
userprofile同步账号进行出现同步不到用户.有个时候同步成功了但是为0个用户.有个时候提示同步失败或拒绝等错误.如何查看同步服务同步的结果.其实明白sharepoint2010同步用户的原理都 ...
- SharePoint 2013 列表关于大数据的测试
本文主要介绍SharePoint列表库的效率问题,一直以来以为阙值5k,超过会线性下降,需要分文件夹存放:或许这是之前版本的描述,但是2013版本通过测试,真心不是这么一回事儿. 下面,简单介绍下自己 ...
- Map集合概述
java集合最后一站之Map,给自己的总结画个句号... Map用于保存具有映射关系的数据. 1.HashMap和Hashtable实现类 HashMap和Hashtable都是Map接口的典型实现类 ...
- 生成iOSAPP的二维码
1.打开iTunes,在"应用"里面搜索要找的APP 2.右键要生成二维码的APP,选择"拷贝链接" 3.百度一个二维码生成器 4.把刚才拷贝的链接粘贴进去,点 ...
- iOS开发之──传感器使用 (转载)
在实际的应用开发中,会用到传感器,下面首先介绍一下iphone4的传感器,然后对一些传感器的开发的API作一简单介绍. AD:WOT2015 互联网运维与开发者大会 热销抢票 在实际的应用开发中,会用 ...