前言摘要

很早以前就有要写ABP高级系列教程的计划了,但是迟迟到现在这个高级理论系列才和大家见面。其实这篇博客很早就着手写了,只是楼主一直写写停停。看看下图,就知道这篇博客的生产日期了,谁知它的出厂日期竟是现在,2个半月了,哎,也是酝酿够久的了!

期间,很多园友一直在催我更新,都是在期待我的这个ABP高级系列,在这里,抱歉地说一声,让你们久等了,本人因为种种事情耽误了很长时间,所以从今天起,正式开始更新ABP理论高级系列教程。

在学习这个高级系列之前,希望你已经学习了ABP理论基础篇,以及最好已经阅读了那篇博客中提到的其他关于ABP的文章。毕竟,ABP基础篇是高级篇的铺垫,有了这个基础,学习ABP理论高级篇就相对来说容易多了。当然,这只是建议,有些高级知识点和ABP关系不大,比如第一个要讲的EF之Code First开发,即使没有ABP基础也可以学习。

时至今日,ABP这个框架已经有1307个人star,而且有712人Fork,感觉发展挺迅速的,我做了这么长时间普及工作(吹呢),不知道有没有我的贡献呢(嘿嘿),应该有我的功劳吧(害羞)!其实我对ABP的普及做了多大贡献不重要,重要的是我分享了,我收获了知识,也收获了分享的快乐,此外还看到很多人用这个框架搭建起了自己的项目,并且学到了很多知识,提升了自我!这就满足了!

作为高级系列篇,制作是需要时间和精力的,所以文章更新的周期会长一点,希望大家多点耐心。:)

技术大餐

在介绍高级知识点之前,我再次把之前的关于ABP的学习目录放到这里,方便大家查阅:

ASP.NET Boilerplate Project(ABP.Net样板项目)的简称
ABP官网:http://www.aspnetboilerplate.com
英文文档:http://www.aspnetboilerplate.com/Pages/Documents
Github:https://github.com/aspnetboilerplate
我的ABP实战系列教程(基础篇):http://www.cnblogs.com/farb/p/ABPPracticeContent.html
我的ABP实战高级系列教程(黄金篇):计划中...
我的ABP理论基础系列教程(典藏篇):http://www.cnblogs.com/farb/p/ABPTheory.html
我的ABP理论高级系列教程(白金篇):http://www.cnblogs.com/farb/p/ABPAdvancedTheoryContent.html
ABP实战时遇到的问题汇总目录:http://www.cnblogs.com/farb/category/767997.html
我的Module-Zero学习目录:http://www.cnblogs.com/farb/p/ModuleZeroContent.html

以下内容为ABP理论涉及到的高级技术,也是我接下来打算要讲的一些知识点,其实不敢言讲,只是自己搜集一些资料,学习一下,顺便总结一下,再分享一下,就这么几下子。如果您是大神呢,那您就不需要看这些基础了,请您绕行;喷子呢,请您饶了我吧,因为我实在不知道如何应对您的喷点,我只能希望您不喷。

8天掌握EF的Code First开发

为啥要讲这个呢?这不是小儿科吗?

如果你接触过EF的Code First开发,你会觉得这没有多么难,至少让你做一个CRUD操作你是没任何问题的,可是如果让你使用EF或者Code First解决绝大多数问题,那么不见得你能解决或者解决方法的效率还有待优化。感觉就像学习C#这门语言一样,入门很容易,但想要真的掌握,还需要下些功夫。其实这也不是我妄自揣测,而是我确实发现有很多园友或QQ群友经常问一下关于EF方面的问题,可是总要扯上ABP,其实他问的问题和ABP没半毛钱关系,因为使用ABP框架建的项目,所以怀疑是ABP的问题,其实根本还在于基础不牢,没有掌握EF的一些知识点。此外,EF也是ABP框架数据库基础设施层主要使用的技术,而且Module-zero的实现也是建立在EF技术之上的。所以,在这里开一个EF之Code First系列,希望使用EF Code First的同学能系统学习一下,本人也是学习,如有问题,请直接指出。

  1. Entity Framework介绍
  2. 第一个Entity Framework应用
  3. 领域建模和管理实体关系
  4. Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解
  5. 视图,存储过程,异步API
  6. 管理并发和事务
  7. 数据库迁移
  8. 使用EF实现一个小型博客平台

.Net中的AOP

构建高内聚,低耦合软件的必学技

这个系列咱说说.Net中的AOP!什么?不知道AOP?其实我觉得你只是没系统学习过罢了,在平时的开发中,肯定或多或少用到了AOP!AOP【Aspect-Oriented Programming】,即面向切面编程!一般用于横切关注点分离,也就是说,将横切关注点(如Logging,事务,参数校验等)分离到单个类中,而不是和业务逻辑代码写到一起,这样就大大增强了应用的扩展性和健壮性。找不到学习这方面的资料?好不容易找到了还是英文的,英文不好或看不下去?没关系,这个系列我写个《AOP in .NET》系列学习笔记,从该书中挑选出精华供大家吸收,希望大家喜欢!暂时先列以下大纲,可能会改动哦!

初识AOP

  1. AOP介绍
  2. 构建一个汽车租赁应用

AOP基础

  1. 拦截方法
  2. 边界切面
  3. 拦截位置
  4. 单元测试切面

AOP高级概念

  1. AOP实现类型
  2. 使用AOP作为架构工具
  3. 切面剖析:例子和执行

依赖注入【DI】

请耐心等待...

Castle Windsor

请耐心等待...

领域驱动开发【DDD】

请耐心等待...

ABP部分源码解析

请耐心等待...

前端知识

请耐心等待...

大家投票补充...

留言提醒

之前写初级教程的时候,很多园友也问了我很多知识点,有点偏高级话题,这些有点偏高级的话题我并没有一一回答,就是想放在这个高级系列中,力争将园友们的所有针对ABP的疑难困惑解决掉,如果我自己不能解决,那我就去查资料,或者去请教ABP的创始人HiKalkan,总之,让我们在这里高级系列中解决掉所有的问题吧,真正搞清、搞懂ABP框架!同时,既然这还是理论教程,所以偏理论居多,以后也会出ABP实践高级篇的,大家不要着急,慢慢学,慢慢吸收。此外,希望大家能在评论区留言,你希望在这个高级系列中把哪些知识点搞清楚,留言之前请先看下评论区,已经提到过的知识点就不要再提了,直接支持第一个提出该知识点的园友就行了,这样我更容易看出哪些知识点是大家共同希望解决的。本目录会经常更新,希望大家先收藏,方便日后查找,先谢谢大家支持!

C#高级知识点&(ABP框架理论学习高级篇)——白金版的更多相关文章

  1. ABP框架实践基础篇之开发UI层

    返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 说明 其实最开始写的,就是这个ABP框架实践基础篇.在写这篇博客之前,又回头复习了一下ABP框架的理论,如果你还没学习,请查看AB ...

  2. ABP 框架学习-01篇

    从来没有自己写过太多的技术性文章,博客里面的文章都是拷贝别人的东西,做一个笔记功能给自己用的.最近觉得应该写点自己的学习博客 https://aspnetboilerplate.com/ ABP框架, ...

  3. ABP框架理论学习之后台工作(Jobs)和后台工作者(Workers)

    返回总目录 本篇目录 介绍 后台工作 后台工作者 让你的应用程序一直运行 介绍 ABP提供了后台工作和后台工作者,它们会在应用程序的后台线程中执行一些任务. 后台工作 后台工作以队列和持续的方式在后台 ...

  4. ABP框架理论学习之Debugging

    返回总目录 所有的官方ABP nuget包都是支持GitLink的,这意味着你可以在项目中轻松地调试所有的以Abp为前缀的Nuget包. 要开启这项支持,"启用源服务器支持"选项应 ...

  5. ABP框架理论学习之Hangfire集成

    返回总目录 Hangfire是一个综合的后台工作管理者.你可以将Hangfire集成到ABP中,这样就可以不使用默认的后台工作管理者了.但你仍然可以为Hangfire使用相同的后台工作API.这样,你 ...

  6. 2019 年起如何开始学习 ABP 框架系列文章-开篇有益

    2019 年起如何开始学习 ABP 框架系列文章-开篇有益 [[TOC]] 本系列文章推荐阅读地址为:52ABP 开发文档 https://www.52abp.com/Wiki/52abp/lates ...

  7. 高薪诚聘熟悉ABP框架的.NET高级开发工程师(2016年7月28日重发)

    招聘单位是ABP架构设计交流群(134710707)群主阳铭所在的公司-上海运图贸易有限公司 招聘岗位:.NET高级开发工程师工作地点:上海-普陀区 [公司情况]上海运图贸易有限公司,是由易迅网的创始 ...

  8. ABP框架搭建项目系列教程基础版完结篇

    返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 经过前面十二篇的基础教程,现在终于该做个总结了. 回顾 第一篇,我们建议新手朋友们先通过ABP官网的启动模板生成解决方案,因为这样 ...

  9. [ASP.NET MVC 大牛之路]02 - C#高级知识点概要(1) - 委托和事件

    在ASP.NET MVC 小牛之路系列中,前面用了一篇文章提了一下C#的一些知识点.照此,ASP.NET MVC 大牛之路系列也先给大家普及一下C#.NET中的高级知识点.每个知识点不太会过于详细,但 ...

随机推荐

  1. 探真无阻塞加载javascript脚本技术,我们会发现很多意想不到的秘密

    下面的图片是我使用firefox和chrome浏览百度首页时候记录的http请求 下面是firefox: 下面是chrome: 在浏览百度首页前我都将浏览器的缓存全部清理掉,让这个场景最接近第一次访问 ...

  2. 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用

    问题: Springboot启动报错: Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ...

  3. [.NET] 打造一个很简单的文档转换器 - 使用组件 Spire.Office

    打造一个很简单的文档转换器 - 使用组件 Spire.Office [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6024827.html 序 之前,& ...

  4. javascript中变量提升的理解

    网上找了两个经典的例子 var foo = 1; function bar() { if (!foo) { var foo = 10; } alert(foo); } bar(); // 10 var ...

  5. c++ pair 使用

    1. 包含头文件: #include <utility> 2. pair 的操作: pair<T1,T2> p; pair<T1,T2> p(v1,v2); pai ...

  6. C++常见笔试面试要点以及常见问题

    1. C++常见笔试面试要点: C++语言相关: (1) 虚函数(多态)的内部实现 (2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现 ...

  7. Java开发中的23种设计模式详解

    [放弃了原文访问者模式的Demo,自己写了一个新使用场景的Demo,加上了自己的理解] [源码地址:https://github.com/leon66666/DesignPattern] 一.设计模式 ...

  8. Node.js入门

    开始之前,安利一本正在看的书<站在两个世界的边缘>,作者程浩,上帝丢给他太多理想,却忘了给他完成理想的时间.OK,有兴趣的可以看一看. node.js如标题一样,我也是刚开始接触,大家一起 ...

  9. “此网页上的某个 Web 部件或 Web 表单控件无法显示或导入。找不到该类型,或该类型未注册为安全类型。”

    自从vs装了Resharper,看见提示总是手贱的想去改掉它.于是乎手一抖,把一个 可视web部件的命名空间给改了. 喏,从LibrarySharePoint.WebPart.LibraryAddEd ...

  10. ionic第一坑——ion-slide-box坑(ion-slide分两页的坑)

    ionic.views.Slider = ionic.views.View.inherit({ initialize: function (options) { . . . function setu ...