FeathersJS官方文檔閱讀筆記(三)

Feathers哲學(xué)

它并不是又一個(gè)Javascript框架,也不是一個(gè)重復(fù)被造的輪子。而是使用service和cross cutting concerns來(lái)構(gòu)建web應(yīng)用的嘗試??蓴U(kuò)展而又面向服務(wù)是它的一大特點(diǎn),結(jié)果會(huì)更靈活。它始終堅(jiān)信,UI、數(shù)據(jù)或商業(yè)邏輯是web應(yīng)用或移動(dòng)app的核心,而架構(gòu)可以幫助實(shí)現(xiàn)剩余的工作。

服務(wù)的概念

服務(wù)層可以幫助解耦應(yīng)用的接入和呈現(xiàn),也方便測(cè)試??梢詾镠TTP REST和websocket提供相同的API。

統(tǒng)一接口

好比如REST的一個(gè)關(guān)鍵約束,命名約定可以見(jiàn)詞知意。對(duì)應(yīng)于REST,有以下方法:GET, POST, PUT, PATCH and DELETE。而服務(wù)也有統(tǒng)一的接口。

const myService = {

// GET /path

find(params, callback) {},

// GET /path/

get(id, params, callback) {},

// POST /path

create(data, params, callback) {},

// PUT /path/

update(id, data, params, callback) {},

// PATCH /path/

patch(id, data, params, callback) {},

// DELETE /path/

remove(id, params, callback) {}

}

這個(gè)接口讓”hook”到方法執(zhí)行中以及返回后發(fā)射事件更簡(jiǎn)單,來(lái)提供實(shí)時(shí)功能。

Hooks

遵循小的模塊做一件事好于大的復(fù)雜模塊。然后,可以創(chuàng)建before和after hooks 來(lái)把各模塊鏈起來(lái)。

站在巨人之肩

Express 4 Feathers繼承了它。

Vorpal Feathers的CLI工具的生成器繼承了它。

Socket.io or Primus Feathers封裝了兩位巨人,來(lái)實(shí)現(xiàn)web socket傳輸。

mongoose, sequelize, knex, or waterline 服務(wù)適配器的ORM的實(shí)現(xiàn)。

npm 仍然是包管理工具

passport 完成了很多feathers-authentication的工作。

下面展示了利用Feathers實(shí)現(xiàn)的利器,業(yè)績(jī)Feathers的生態(tài)系統(tǒng)。

應(yīng)用方面

Feathers Chat

Feathers React Native Chat

起步中的項(xiàng)目

Feathers + Apollo

Feathers + React + Mobx

Feathers + React + Webpack

社區(qū)插件

。。。

認(rèn)證

Feathers-accounts

Feathers-service-verify-reset

通信

Feather-batch

數(shù)據(jù)庫(kù)

省略若干字

文檔

Feathers-swagger

多實(shí)例

Feathers-cluster

Feathers-sync

Email

Feathers-mailer

Feathers-mailgun

Feathers-sendgrid

回應(yīng)

Feathers-action

Feathers-action-creators

Feathers-action-reducer

Feathers-action-types

Feathers-react-redux

Feathers-reduxify-services

測(cè)試

Feathers-tests-fake-app-users

轉(zhuǎn)化

Feathers-populate-hook

Feathers-transform-hook

Feathers-virtual-attribute-hook

工具

Feathers-hooks-common

Feathers-hooks-utils

有效性

Feathers-hooks-validate-joi

Feathers-hooks-validatiob-jsonschema

Feathers-tcomb

Feathers-validate-hook

Feathers-validator

視圖層

donees-Feathers

Feathers-done-ssr

Feathers-mithril

Feathers-reactive

ng-Feathers

vue-syncers-Feathers

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Services services 是每個(gè)Feathers 應(yīng)用的核心。他們執(zhí)行應(yīng)用級(jí)別的I/O操作,實(shí)現(xiàn)數(shù)據(jù)進(jìn)出...
    hjw2015閱讀 1,178評(píng)論 0 2
  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測(cè)試 ...
    KeKeMars閱讀 6,603評(píng)論 0 6
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,545評(píng)論 19 139
  • realtime realtime意味著什么 realtime意味著,當(dāng)一個(gè) create,update,patc...
    hjw2015閱讀 1,350評(píng)論 0 1
  • Services是每個(gè)Feathers應(yīng)用的心臟。一個(gè)service就是一個(gè)簡(jiǎn)單的JavaScript對(duì)象,它提供...
    RayRoad閱讀 550評(píng)論 0 0

友情鏈接更多精彩內(nèi)容