基于LeanCloud云引擎的Web全栈方案
LeanEngine-Full-Stack
The FULL STACK DEVELOPER
复杂的项目, 协作分工, 自动化流程,代码组织结构,框架选择,国际化方案等
Generator 或者Seed
LeanCloud Node.js 服务的 Web 全栈开发技术解决方案。
将基础架构, 自动化构建, 国际化方案等底层技术解决方案组织成一个整体。
整套方案Javascript代码全部使用ECMAScript6
Server端运行基于LeanEngine Node.js环境,npm Express 4.X
主要基于Gulp 框架基于Angular.1.4.X UI框架基于Angular Material
npm bower安装 SASS而非直接写css 文件
整个脚手架Server基于LeanEngine 底层已将API路由的基础结构做好,
并且将一些常规处理也整合在内
服务端基本代码结构,组织结构
基础的路由分层, 默认在/api/路由下
对API的HTML5 CORS跨域协议的设置
对方问域白名单控制,集成的可配置文件
常规错误处理等
Web 前端 从整体技术栈选择上可以看出,是一个稳健并且有一定前瞻性的技术方案。
成熟的Angular架构体系,UI设计层面基于Google 积累多年面发布的设计语言
Material Design, UI框架基于Angular Material 框架
Angular 1.4在性能上有较大的提升, ECMAScript 6 来开发
代码基本组织结构 趋向于HTML5 Web Component 的组织方式
底层配置 包括HTML5 CORS协议的底层支持, 域名白名单等配置。
纯前端路由方案, 基于HTML5 History API 和 ui-router
自动构建系统, 基础的代码压缩,合并,ECMAScript和SASS编译等过程,
也会将构建后的生成代码拷贝到public 目录,供发布使用。
SASS的基本结构, 以入一些Mixin 和基础单元的处理方式。
纯前端的国际方案,可以实时切换语言资源。
基础结构
public //LeanEngine Web 前端发布
server-modules
app.js //服务端代码主入口
api-router.js //API接口器由配置
tool.js // 工具方法
hello.js //示例代码
-- web-project//Web前端项目目录
-- gulp 自动化构建的逻辑模块
--dist //构建军之后的源码目录
--src // 源码目录
-- server.js LeanEngine 的环境配置
整套架构Server端与Web 前端完全分离, 在Server端编写REST API, Web项目则是完全
Web App, 而不是通过模板来耦合, web-project目录包含了Web项目的全部代码,是完全独立的
一套体系, 也可以提出出去, 作为单独项目维护。
前端框架为什么选择Angular
Angular 1.x Angular 2.x React 和Ploymer之间有纠结, 而我们最终选择了Angular 1.4.x版本
React 并不成熟 解决了View层的分离,将渲染与编译过程分离,
在Web端表现为将JSX变为Virtual Dom, 再将Virtual Dom 每次Diff后的部分
渲染为HTML, 而开发一个应用程序不仅仅需要这些,还需要一套
完备的处理各种底层问题的方案, 如我们在上面技术列出来的方面。
React数据层Flux 编辑范式并不成熟, UI层组件稀缺, 即便是
前端路由方案也是颇有争议, 黑科技不断。
React Native 但是大提高了Native App 的开发体验,其优势
大于目前的劣试。
LeanCloud中的Javascript SDK也支持React Native中使用
ECMAScript 6
箭头函数,语言层面的模块化,原生的Promise 全部使用
node --harmony 来实现对ECMAScript 6的支持, Node.js 4.x 刚发布
完全对其支持了, TypeScript 之类的ECMAScript 6超集, 更
纯粹的JavaScript, 前端会通过babel 自动化编译处理。
LeanEngine - Full- Stack
该项目为基于LeanCloud提供的Nodejs服务 LeanEngine 的Web 全
栈开发的技术解决方案
将基础架构, 自动化构建,国际化方案等底层
技术问题的解决方案组织在一起。
自动化方案基于Gulp , 框架基于Angular 1.4.x
UI框架主要基于Angular Material, 构建
依赖于npm , Web前端依赖通过bower安装,
服务端基本代码结构,组织结构
基础的路由分层,默认在/api/路由下
对API的HTML5 CORS跨域协议的设置
对访问域白名单控制, 集成的可配置文件
常规错误处理。
基于LeanCloud云引擎的Web全栈方案的更多相关文章
- 基于React-Native0.55.4的语音识别项目全栈方案
移动端的API能力验证方案与PC端不一样!不一样!!不一样!!! 即使需要使用的API都存在,也不一定能用,这一点和PC端是有很大区别的,国内的手机系统虽然都是基于Android,但几乎都会经过各大厂 ...
- 联万物,+智能,为行业,华为云升级OceanConnect IoT全栈云服务
[中国,上海,2019年9月19日] 9月18日,在HUAWEI CONNECT 2019期间,华为云CTO张宇昕在华为云峰会上升级OceanConnect IoT全栈云服务,发布包括端.边.管.云. ...
- Web 全栈大会:万维网之父的数据主权革命
大家好,今天我和大家分享一下由万维网之父发起的一场数据主权革命.什么叫数据主权?很容易理解,现在我们的数据是把持在巨头手里的,你的微信通讯录和聊天记录都无法导出,不管是从人权角度还是从法理角度,这些数 ...
- web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2)
web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2) 主要技术 前端 vue 全家桶 ElementUI 后端 Node.js Koa2 Mongoess 数据库 mong ...
- 《web全栈工程师的自我修养》读书笔记
有幸读了yuguo<web全栈工程师的自我修养>,颇有收获,故在此对读到的内容加以整理,方便指导,同时再回顾一遍书中的内容. 概览 整本书叙述的是作者的成长经历,通过经验的分享,给新人或者 ...
- 《web全栈工程师的自我修养》阅读笔记
在买之前以为这本书是教你怎么去做一个web全栈工程师,以及介绍需要掌握的哪些技术的书,然而看的过程中才发现,是一本方法论的书.读起来的感觉有点像红衣教主的<我的互联网方法论>,以一些自己的 ...
- web性能优化 来自《web全栈工程师的自我修养》
最近在看<web全栈工程师的自我修养>一书,作者是来自腾讯的前端工程师.作者在做招聘前端的时候问应聘者web新能优化有什么了解和经验,应聘者思索后回答“在发布项目之前压缩css和 Java ...
- 处女作《Web全栈开发进阶之路》出版了!
书中源码下载地址:https://github.com/qinggee/WebAdvanced 01. 当初决定写博客的原因非常的纯洁:只要每个月写上 4 篇以上博客,月底的绩效奖金就多 500 块. ...
- grandstack 基于graphql&&react&& apollo&& neo4j 的全栈开发工具
grandstack是一个基于graphql&&react&& apollo&& neo4j 的全栈开发工具. 有篇关于graphql 的5个常见问题的 ...
随机推荐
- 树莓派做AP发射wifi(RTL8188CUS芯片) 分类: shell ubuntu Raspberry Pi 2014-11-29 01:25 822人阅读 评论(0) 收藏
最近在做一个项目,需要用树莓派作为AP发射wifi,对比cubieboard,树莓派的配置容易得多,而且支持也更多. 较为官方的介绍配置为无线热点的文章莫过于这一篇<RPI-Wireless-H ...
- java不求有功,但求无过—异常处理
在程序开发中,错误往往有两种.一种是编译时出现的错误,该种错误比較easy发现.还有一种是执行时出现的错误,该种错误是开发者比較头疼的.异常就是一个执行时的错误,比如,除数为0 ,数组越界等. 异常处 ...
- CSU1306:Manor(优先队列)
Description Bob有n个正整数,他将这n个整数根据大小划分成两部分.对于小于等于k的整数放在集合A中,其余的放在集合B中.每次他从集合B中取出一个最大的值,将其变成0放入A集合中.然后将A ...
- 3高并发server:多路IO之epoll
1 epoll epoll是Linux下多路复用IO接口select/poll的增强版本号,它能显著提高程序在大量并.发连接中仅仅有少量活跃的情况下的系统CPU利用率,由于它会复用文件描写叙述符 ...
- [转] 学习React Native必看的几个开源项目
http://www.lcode.org/study-react-native-opensource-one/ http://gold.xitu.io/entry/575f498c128fe10057 ...
- 覆盖equals的时候总要覆盖hashCode
import java.util.HashMap; public class Student { private String name ; private String id; public Stu ...
- Map的迭代操作
Map的迭代操作 public static void main(String[] args) { Map<String, List<Integer>> map = new H ...
- 9.22 noip模拟试题
水灾(sliker.cpp/c/pas) 1000MS 64MB 大雨应经下了几天雨,却还是没有停的样子.土豪CCY刚从外地赚完1e元回来,知道不久除了自己别墅,其他的地方都将会被洪水淹没. CCY ...
- display:table- cell属性的练习
display:table- cell属性指让标签元素以表格单元格的形式呈现,类似于td标签.目前IE8+以及其他现代浏览器都是支持此属性的,但是IE6/7只能对你说 sorry了,这一事实也是大大制 ...
- 使用java注解的例子有没有
使用java注解的例子 参考文档:http://www.cnblogs.com/pepcod/archive/2013/02/20/2918719.html http://www.shaoqun.co ...