网站重构
文章平均质量分 95
Phodal
待我代码编成,娶你为妻可好
展开
-
遗留系统重构的模式与原则
设计模式强调为开发大规模系统提供可复用的设计指南。 —— 《反模式:危机中软件、架构和项目的重构》就重构的基本原则来说,倒也不是很复杂:小步前进。走一小步,提交一次代码,方便回滚,有一天你会懂的。随时可用。如果不能保证随时可用,那就说不上是重构了。融入日常。当你习惯了重构,记得在日常工作中使用。重构模式:EPDCA我尝试从书中找到一个合适的模式,但是都没有发现符合我的步骤。...原创 2020-01-09 22:45:55 · 1429 阅读 · 0 评论 -
致JavaScript也将征服的物联网世界
凡是能用JavaScript写出来的,最终都会用JavaScript写出来。—— Atwood定律在那篇《最流行的编程语言JavaScript能做什么?》里,我们列举了JavaScript在不同领域的使用情况,今天让我们来详解一下JavaScript在物联网中的应用。基础:物联网的三个层级开始之前, 先让我们简单地介绍点物联网的基础知识。如果你有点Web开发经验的话,都知道下图是CS架构:相比于一原创 2016-08-07 22:14:26 · 32880 阅读 · 29 评论 -
我写的那六本开源计算机书
教你设计物联网系统这是由我的毕业设计延伸出来的一本电子书、APP。设计物联网系统是件有意思的事情,它需要考虑到软件、硬件、通讯等多个不同方面。通过探索不同的语言,不同的框架,从而形成不同的解决方案。在这里,我们将对设计物联网系统有一个简单的介绍,并探讨如何设计一个最小的物联网系统。目标读者:初入物联网领域,希望对物联网系统有一个大概的认识和把握,并学会掌握一个基础的物联网系统的设计。GitHub:原创 2016-06-03 21:37:00 · 3271 阅读 · 0 评论 -
为什么我偏爱用GitHub来写书?
为什么我偏爱用GitHub来写书?GayHub作为一个全球著名的社交网站,它的用途可不仅仅只有约基那么简单。今天,让我们来说说为什么我越来越喜欢用Git来写书——只是电子书,并且将它发布到GitHub上。GitHub上的第一本书我在GitHub上写的第一本书是《一步步搭建物联网系统》,它是我的毕业论文与博客的合集。在这本电子书里,我和我的同学小兵一起协作来编写内容。在今天看来,这仍是一本不错的物联网原创 2016-04-21 22:46:12 · 14238 阅读 · 0 评论 -
技术文章写作及运营的技巧:分析篇 | 什么样的文章受欢迎?
对于以技术为核心的技术博客来说,人们是冲着他们需要的内容去的,绝大多数情况下都不是在闲逛。如果你的网站里没有他想要的东西的话,他便会离开,人们是出于目的去搜索,基于动机,而不是无聊的在闲逛。无聊的话,他们更多的会去刷刷朋友圈的,看看鸡汤。文章的类型依据我的经验,我将技术博客分为下面几种类型: 文章类型 频率 时间 技术细节型 几次/天 15~30分钟 干货型 几次/月原创 2016-04-17 14:19:02 · 12156 阅读 · 2 评论 -
你不再需要动态网页——编辑-发布-开发分离
尽管没有特别的动力去构建一个全新的CMS,但是我还是愿意去撰文一篇来书写如何去做这样的事——编辑-发布-开发分离模式是如何工作的。微服务是我们对于复杂应用的一种趋势,编辑-发布-开发分离模式则是另外一种趋势。在上篇文章《Repractise架构篇一: CMS的重构与演进》中,我们说到编辑-发布-开发分离模式。系统架构如先前提到的,Carrot使用了下面的方案来搭建他们的静态内容的CMS。在这个方案原创 2015-11-17 15:32:27 · 9538 阅读 · 2 评论 -
Repractise架构篇一: CMS的重构与演进
重构系统是一项非常具有挑战性的事情。通常来说,在我们的系统是第二个系统的时候才需要重构,即这个系统本身已经很臃肿。我们花费了太量的时间在代码间的逻辑,开发新的功能变得越来越慢。这不仅仅可能只是因为我们之前的架构没有设计好,而且在我们开发的过程中没有保持着原先设计时的一些原则。如果是这样的情况,那么这就是一个复杂的过程。还有一种情况是我们发现了一种更符合我们当前业务的框架。动态CMSCMS简介CMS是原创 2015-11-15 21:55:05 · 3832 阅读 · 0 评论 -
编辑-发布-开发分离:git作为NoSQL数据库
动态网页是下一个要解决的难题。我们从数据库中读取数据,再用动态去渲染出一个静态页面,并且缓存服务器来缓存这个页面。既然我们都可以用Varnish、Squid这样的软件来缓存页面——表明它们可以是静态的,为什么不考虑直接使用静态网页呢?为了实现之前说到的编辑-发布-开发分离的CMS,我还是花了两天的时间打造了一个面向普通用户的编辑器。效果截图如下所示:作为一个普通用户,这是一个很简单的软件。除了El原创 2015-11-20 12:59:34 · 2563 阅读 · 0 评论 -
自己动手写编辑器——Lumia Inspired by Atom
继上一篇 node webkit 用javascript打造web native之后,终于算是可以做出一个atom编辑器,只是这里是为了记念一下Nokia的Lumia手机,最后代码见https://github.com/gmszone/lumia开始之前需要配置好开发环境,也就是这个,下面是Mac OS下的https://github.com/rogerwang/node-原创 2014-04-08 20:23:18 · 7606 阅读 · 9 评论 -
网站重构——轻量化的网站架构设计四markdown angular
因为再有的博客基本上是用markdown写的,所以需要将markdown写的博客转为html,再丢给angular处理。#MarkdownMarkdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber)和亚伦·斯沃茨(Aaron Swartz)。它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档”。这种语言吸收了很多在电子邮件原创 2014-03-22 14:49:34 · 3845 阅读 · 0 评论 -
网站重构——轻量化的网站架构设计三,angular restify
有趣的是angularjs可以简化前端的开发,但是可以让我们把计算都放到桌面上,而不是服务器,在某种意义上来说可以减少系统的负担。值得注意的是,在这里我们只需要用到的是模板(Template)。Angular JSAngularJS是一款开源 JavaScript函式库,由Google维护,用来协助单一页面应用程式运行的。它的目标是透过MVC模式 (MVC) 功能增强基于浏览器原创 2014-03-18 09:04:09 · 3412 阅读 · 0 评论 -
网站重构——轻量化的网站架构设计二,使用restify生成RESTful接口
有趣的是在有了数据之后,我们可以用很快的速度构建出一个app,构建出一个接口。我们要做的就是将系统一部分一部分解耦出来,成为一个又一个的独立部分node restify简单地来说,这是一个用于构建REST服务的工具。restify is a node.js module built specifically to enable you to build correct REST w原创 2014-03-16 14:43:25 · 3655 阅读 · 0 评论 -
网站重构——轻量化的网站架构设计一,使用nodejs sqlite3查询数据
终于可以试着开始重写自己博客的框架,这又是一个愉快的过程,不再需要去考虑网站被迫关闭几天的问题,我们想要的结果就是从dev.db中读取到我们想要的数据,这就是这篇文章所要表达的内容。nodejs如果你了解过nodejs的话,剩下的就简单了。安装node-sqlite3这里用到的模块就是这个了[node-sqlite3][0]npm install sqlite3node-s原创 2014-03-16 14:33:56 · 4048 阅读 · 0 评论