net开源开发web框架_我的6大Web开发开源框架

本文介绍了六个流行的开源后端Web框架,包括Ruby on Rails、Cake PHP、Spring Web MVC、ASP.NET、Django和Laravel。每个框架都有其独特的特点和优势,如Ruby on Rails的DRY原则,Cake PHP的快速原型构建,Spring的DispatcherServlet和测试支持,ASP.NET的跨平台能力,Django的安全身份验证系统,以及Laravel的文件缓存和安全漏洞处理。这些框架极大地提高了开发效率和应用的安全性。
摘要由CSDN通过智能技术生成

net开源开发web框架

有许多后端框架是开源的,并且易于使用,但是并非所有框架都提供了出色的功能。 后端框架是网站开发的重要组成部分,因为它们就像网站的基本要素。 基本上,他们处理网站幕后的一切。

后端框架具有广泛的库,API,Web服务器等。 他们负责数据库,确保数据库与前端进行正确的通信并生成后端功能。

如所承诺的,接下来是我的前6个后端框架的摘要。

1. Ruby on Rails

Ruby on Rails是用Ruby语言编写的服务器端框架。 它支持配置的使用,例如MVC和DRY。 Ruby是对象排列的,它鼓励了轻量级应用程序的结构并提高了适应性。 它通过启用出色的特性来支持与外部应用程序的完美协作。

Ruby on Rails的功能

  • 根据模型-视图-控制器(MVC)模式,它是一个数据库支持的Web应用程序。
  • 由于创建相同的结果所需的代码更少,因此可以节省时间和精力。 它使应用程序的构建速度提高了30–40%。
  • 不要自己重复(DRY)-该代码减少了系统中信息的重复,并在最小化错误的同时促进了修改。
  • 该代码是可伸缩的。
  • Ruby on Rails也意味着遵循安全开发生命周期。

使用Ruby on Rails的公司

  • 爱彼迎
  • 的GitHub
  • Zendesk
  • Shopify
  • 大本营
  • 声云
  • 葫芦
  • 炊具
  • 广场

Ruby on Rails模型

  • 活动记录
  • 活动记录迁移
  • 活动记录验证
  • 活动记录回调
  • 活动记录协会
  • 活动记录查询界面

2. Cake PHP

Cake PHP是一个快速的开发框架,它是Web应用程序的基础结构。 它使我们能够以结构化和快捷的方式工作,而不会损失任何敏捷性。 它为您提供了对应用程序进行逻辑编码的工具。

Cake PHP的功能

  • 它生成代码,并允许您快速构建原型。
  • 它已获得MIT的许可,并能够开发商业应用程序。
  • 它具有用于以下目的的内置工具:
    • 翻译
    • 输入验证
    • XSS保护
    • CSRF保护
    • SQL注入
    • 数据库访问
    • 快取
    • 形式篡改保护

Cake PHP数据库配置


   
   
public $default = array (

’datasource’ =>DATABASE / Mysql’ ,

’persistent’ => FALSE ,

’host’ => ‘localhost’ ,

’port’ => ‘’ ,

’login’ => ‘cakeBlog’ ,

’password’ => ‘c4k3 - rUl3Z’ ,

DATABASE=> ‘cake_blog_tutorial’ ,

’schema’ => ‘’ ,

’prefix’ => ‘’ ,

’encoding’ => 'utf8’

);

Cake PHP提供了高级安全性,并具有其他功能,例如防止SQL注入,跨站点脚本编写,验证,快速构建以及跨站点请求伪造保护。

3. Spring Web MVC

Spring Web Model-View-Controller (MVC)框架基于Servlet API构建,并已包含在Spring框架中。 Spring Framework 5.0已被引入作为React堆式Web框架,名称为“ Spring WebFlux”。 它还基于其源模块(spring-webflux)。

Spring Web MVC的功能

  • DispatcherServlet-DispatchServlet有助于清楚地分离角色,例如控制器,验证器,命令对象,模型对象等。
  • 配置功能-Spring Web MVC具有强大而直接的配置,可帮助跨上下文引用。
  • 过滤器-浏览器可以通过HTTP GET甚至HTTP POST提交来自数据的请求,非浏览器可以使用HTTP PUT,PATCH和DELETE。 整个Servlet API由ServletRequest.getParameter *()组成,仅支持通过HTTP POST进行字段访问。
  • 测试-Spring测试具有Servlet API模拟,TestContext Framework,Spring MVC测试,客户端REST和WebTestClient。

4. ASP.NET

ASP.NET框架是一个在Linux,Windows和macOS上运行的开源项目。 它使用Windows窗体,WPF和UWP构建Windows应用程序。 使用.NET框架,您无需迁移现有的应用程序,例如在ASP.NET Core中编写新的Web服务。

此外,.NET框架还可以帮助:

  • 使用.NET库或NuGet包-使用.NET标准,您可以跨所有.NET实现(例如NET Core)实现代码。 使用.NET Standard 2.0,其兼容性代码允许.NET Standard / .NET Core项目调用.NET Framework库。
  • .NET Framework允许使用.NET Core不可用的技术,如ASP.NET Web窗体,ASP.NET Web页,WCF服务实现,与工作流相关的服务(Windows Workflow Foundation(WF),工作流服务(WCF + WF) .NET Core不提供对语言的支持(对于.NET Core不可用)和语言支持。

.NET Framework的功能

  • 跨平台功能; 它可以在macOS,Linux和Windows上运行。
  • 性能提升
  • 并排版本控制
  • 新的API
  • 开源的

5. Django

Django被认为是期限很短的完美主义者的框架,因为它有助于以更少的代码快速构建Web应用程序。 Django是高端Python框架,可帮助快速开发和开发简洁直观的设计。 事实证明,此框架的效率已被网络上一些最繁忙的应用程序使用,例如Mozilla,National Geographic和Pinterest。

Django的功能

  • Django帮助创建丰富的动态数据库访问API。

   
   
class Fruits ( models . Model ) :

name = models . CharField ( max_length = 200 )

can_rock = models . BooleanField ( DEFAULT = TRUE )

class Apples ( models . Model ) :

name = models . CharField (TYPE OF Apple” , max_length = 200 )

instrument = models . CharField ( choices = (

( ‘a’ , “apple” ) ,

( ‘g’ , “green apple” ) ,

( **** ‘c’ , “Cameo Apple” ) ,

) ,

max_length = 1

)

band = models . ForeignKey ( “Fruits” )
  • 身份验证-Django处理用户帐户,组,权限和基于cookie的用户会话。 它带有功能齐全且安全的身份验证系统。

   
   
FROM django . contrib . auth . decorators import login_required

FROM django . shortcuts import render

@login_required

def my_protected_view ( request ) :

RETURN render ( request , ‘protected . html’ , {CURRENT_USER ’: request . user } )
  • 安全性-Django帮助开发人员避免了许多常见的安全性错误。 它提供了多种保护措施以防止:
    • 点击劫持
    • 跨站脚本
    • 跨站请求伪造(CSRF)
    • SQL注入
    • 远程执行代码

6. Laravel

Laravel是一个Model-View-Controller框架,它使用PHP(一种用于网站创建的最流行的语言)。 Laravel具有功能强大的广泛而出色的API。 它提供了一些工具来帮助更快地构建网站和Web应用程序,并使它们更加稳定和易于维护。

Laravel的特点

  • 使用Gate门面的App / Providers / AuthServiceProvider类使实现身份验证非常简单。

   
   
/**

* Register any authentication / authorization services.
*/


public FUNCTION boot ( )

{

$this -> registerPolicies ( ) ;

Gate::define ( ‘edit - settings’ , FUNCTION ( $user ) {

RETURN $user -> isAdmin;

} ) ;

Gate::define ( ‘update - post’ , FUNCTION ( $user , $post ) {

RETURN $user -> id == $post -> user_id;

} ) ;

}

资料来源: Laravel

  • 使Web应用程序更快-将Laravel配置为使用文件缓存驱动程序,该驱动程序将缓存的对象存储在文件系统中。 缓存配置位于config / cache.php。 它使用内存中的缓存,例如Memcached或APC。
  • 处理安全漏洞-Laravel通过保护Web应用程序免受最严重的安全风险来保护Web应用程序。 代码本身非常安全,因此可以处理跨站点请求伪造,SQL注入和跨站点脚本。

回味

后端框架提供了完整的敏捷性和灵活性,以处理通过大量请求和响应创建的负载。 他们是开发人员的催化剂,可以帮助他们摆脱困境。 上面列出的是自定义Web开发人员正在使用的一些最佳后端框架,这些框架可帮助他们在非常短的时间内创建一些最佳应用程序。

翻译自: https://opensource.com/article/20/3/frameworks

net开源开发web框架

什么是Nancy呢?如果你学习过Ruby的话,就会知道Ruby中有个框架叫做Sinatra,Nancy就是Sinatra的.Net版本。如果你感觉微软的MVC过于笨重、过于繁琐,那么Nancy可能就是你苦苦寻找的东西。Nancy是一个轻量级的独立的框架,下面是官网的一些介绍:Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能多的方式,并提供一个super-duper-happy-path所有交互。Nancy 设计用于处理  DELETE ,  GET ,  HEAD ,  OPTIONS ,  POST ,  PUT   和 PATCH  等请求方法,并提供简单优雅的 DSL 以返回响应。Nancy和Asp.net MVC原理相似,但有自己的一套路由机制,在使用上更加易用,可以用Nancy快速开发一些网站。Nancy并不依赖任何现有的框架,所以他可以运行在任何平台上面。官方网站 http://nancyfx.org/ 更详细的介绍参见 http://blog.spinthemoose.com/2011/07/18/nancy-a-micro-web-framework-for-net/ 顺便介绍个使用Nancy 做的Quartz.net的web控制台 https://quartznetwebconsole.codeplex.com/ 参考文章:使用Nancy和Simple.Data两个轻量级的框架打造一个分布式开发系统(一)Frictionless .NET Web App Development with NancyFrictionless .NET Web App Development with Nancy Part II - Introducing a View EngineFrictionless .NET Web App Development with Nancy Part III - Introducing MongoDBFrictionless .NET Web App Development with Nancy Part IV – Hosting Slides from ANUG talk on Nancy扩展NoteService,支持NancyFx用Nancy和Simple.Data创建一个图片博客 第一部分:开始一个工程用Nancy和Simple.Data创建一个图片博客 第二部分:定义routes用Nancy和Simple.Data创建一个图片博客 第三部分:渲染一些ViewsIntegrating Nancy with protobuf-netBuild Simple Web UIs with the Nancy Framework轻量级MVC框架:Nancy学习 标签:web框架
WebBuilder是一款跨平台、数据库和浏览器的可视化Web应用开发平台。WebBuilder使用了多项最新的技术,使Web应用的开发更快捷和简单。 作为一款高效的Web开发工具,WebBuilder的特色是: .基于浏览器的集成开发环境 .丰富的组件库 .开发应用简单快速 .高效率和高稳定性 .跨平台、数据库和浏览器 .服务器端的脚本支持 .智能的数据库访问机制 使用WebBuilder可开发ERP、OA、CRM、HR、MIS以及电信、银行、政府、企业等各行业的企业级应用系统,帮助信息化管理系统的快速构建。完善的基础架构,具有大型应用系统必须的完整功能,使应用系统的开发仅需致力于业务的开发。 您可以到 http://www.putdb.com 在线使用或下载到本地使用,软件开源并基于GPL协议授权。 功能强大的集成开发环境 在线的带语法分析和高亮的JavaJavaScript、ServerScript、SQL编辑器,所见即所得的表单设计器,强大的组件管理器和模块管理器,智能的对象探测器。 企业级的Portal 灵活且易于使用的Portal整合了各方应用,给用户的操作带来了极佳的体验。 跨异构数据库的管理工具 在线表格编辑,高亮的SQL和语法分析,支持大数据量的访问,支持所有类型数据(包括BLOB)的导入导出。 跨平台的远程服务器文件访问 使用资源管理器般的简单,就能轻松操纵远程服务器系统,给系统的远程开发带来方便。 随心所欲的权限控制 能够对任意粒度的操作进行严格的权限控制。 企业级的后台任务管理 管理和控制后台计划任务稳定地运行。 纯HTML和JavaScript 包括图表在内,无任何插件,可以方便地在任何终端上面访问。 丰富的组件库 支撑后台和前台应用的快速开发。 国际化开发支持 解决不同区域的文字、日期和数字等的差异。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值