zoukankan      html  css  js  c++  java
  • NET full stack framework

    NFX UNISTACK 介绍

    学习.NET Core和ASP.NET Core,偶然搜索到NFX UNISTACK,现翻译一下Readme,工程/原文:https://github.com/aumcode/nfx

    NFX

    Server UNISTACK 框架

    许可:Apache 2.0

    这个框架从头开始编写,并在Windows和Linux / mono服务器上运行。

    文档指南:NEW 20160117,我们在NFX文档/指南添加

    NUGET:https://www.nuget.org/packages/NFX/

    pm> install-package NFX

    几个演示工程:https://github.com/aumcode/nfx-demos

    重要:

    不是典型的.NET系统,实际上NFX框架跟微软软件全家桶几乎没关系,而此工程的目的是为使用核心CLR功能和基础类(如list, array, dictionary)的统一软件集提供另外的选择(译者注:意思是说,微软你家的CLR全家桶太TM闹心了,我要另立门户)。NFX是一个我们正在开发的Aum编程语言的基类库,当前我们已经使用了C#和.NET framework的特定基类库(very-BCL)。

    NFX未使用任何第三方组件,除了数据库访问的组件(主要是为了MongoDB和MySQL)。NFX使用以下指定的基类库:

    • 基础/基本类型:字符串型, 整型, 双精度型, 小数型, 日期时间型, 数学运算

       Basic/primitive types: string, ints, doubles, decimal, dates, +Math

    • 并行任务库:25%的特性 - 创建、运行、等待完成、Task、并行、For/Each

       Parallel task library: 25% of features - create, run, wait for completion, Task, Parallel.For/Each

    • 集合:列表,字典,并发字典,哈希集,队列

       Collections: List, Dictionary, ConcurrentDictionary, HashSet, Queue

    • 线程:进程,锁/监视器,内部锁*,线程通信

       Threading: Thread, lock()/Monitor, Interlocked*, AutoresetEvent

    • 各种:秒表类,控制台,窗体类则用于一些交互测试(不影响运行)

       Various: Stopwatch, Console, WinForms is used for SOME interactive tests(not needed for operation)

    • 在分离的数据访问组件中的一些ADO引用(Reader/SQLStatement)

       Some ADO references (Reader/SQLStatement) in segregated data-access components

    • 反射接口

       Reflection API

    • 绘图2D(图形)

       Drawing 2D (Graphics)

    NFX不使用/避免使用:

    • Windows特有功能,如内核,用户,GDI(仍有<10,我们准备甩掉这货)
    • Windows特有技术(IIS,MS SQL Server, Active Directory,Windows Cluster, COM,Azure)
    • 特定.NET工具:NCover, MsTest,各种VS插件 - 必须保证任何开发人员得到源码后能在30分钟内进行开发,运行不需要设置/安装
    • ASP.NET
    • MVC
    • WCF
    • Silverlight,WPF,Phone
    • Entity / LINQ to * (NFX专注于使用框架和虚拟指令对混合类型进行数据存储,不仅仅是SQL)
    • System.Configuration.*
    • ASYNC / AWAIT - 主动避免
    • 任何微软包含的序列化(BinaryFormatter/DataContractSerializer/JSON)
    • 上百的“重型”.NET“典型”类(DataSet/DataTable/Unity 等)
    • 众多.NET工程典型引用:log4net, nLog, EntLib, Castle, NSpring, ServiceStack, Newtonsoft等
    • 去掉NuGet依赖,整个“包”的思想与单包(Unistack)背道而驰

    单包 =  所有需要的基础组件都应该创建解决方案/应用

    NFX单包有:

    应用容器 + 依赖注入点

    配置引擎

    本地/分布式桩/堆(Heaps)(大内存BigMemory),能保存数以亿计对象以驻留到内存中长期而不需要消灭回收(GC)

    八种以上不同目标/不同导流的日志方式(文本、Email、flood filter等)

    基于契约分布式通讯框架:NFX.Glue(替换WCF)

    保证用户、凭证、角色和权限的安全

    JSON解析、序列化/反序列化支持

    超高效二进制序列化支持

    Erlang 通用运行时库(CLR)原生类型支持:元组,列表,句式匹配

    文本lexing/解析和处理管道:C# lexer,JSON lexer/Parser

    RelationalSchema语言编译器 - 对不同目标生成不同DDL

    模板化引擎(Web、Email或非文本内容等)

    NFX.WAVE -自带混合可注入线程模型Web服务端(替换IIS+ASP.NET)

    NFX.WAVE.Mvc - MVC的Web框架

    WV.js - 能自动绑定的MVC/MVVM的Web组件库

    带自载指令/查询/事务的数据访问层

    ID生成器 - 全局分布ID,IDS (GDID);FID - 快速处理面ID

    自载社交网络 - 推特/非死不可/孤狗+

    自载支付处理 - Stripe,PayPal

    自载文件系统 - - AmazonS3, SVN, 本地

    QR码生成

    在研发:自载文档模型以渲染生成PDF、HTML等不同文件格式

    在研发:PDF DOM模型+渲染

    原创作者:http://www.cnblogs.com/huangsheng/
  • 相关阅读:
    面对对象1
    php数组
    操作字符串,正则表达式
    php运算符and函数
    sql 数学函数and字符串函数and日期函数
    高级查询
    简单查询
    php环境搭建
    第三阶段项目错误记录
    thinkphp获取刚添加数据的主键值
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/7458314.html
Copyright © 2011-2022 走看看