FreeSql 项目大概在20天前想着要做的,今天发布0.0.4在群里被一位大神讽刺。

这位无名氏哥们的观点,先声明这不是找安慰的文章,更加不是报复打击的目的。

1 所以这个比EF好在哪里
2 毕竟EF是官方的技术,你自己造的轮子得说明自己哪里不是重复造轮子,而不是问已有的轮子到底怎么样
3 EF完全可以胜任并且超出一个ORM框架需要的所有功能
4 你可以觉得EF不够好,自己做一个更好的,但是这建立在你能指出EF哪里不好的前提下
5 另外插入一个话题,[图片]这个项目引用 很显然 这违背了.NET Core的小包思想,四个字,按需引用
6 这根本就不是什么拆包的问题,而是在开发的时候就是小包,你不了解.NET Core的思想,每必要非得说自己是正确的,有人教你,你就虚心接受,没什么大不了的
7 你target了.NET Standard,却走的是原来的那一套思路,
8 在接受一个新的平台的时候,你需要接受它的思想
9 不要重复造轮子,你如果觉得ef有缺陷,哪不好,自己提issue,给pull request,如果你觉得ef一无是处,你自己做,那也得说明它比ef好在哪里,是吧
10 你和ef的区别在于你把sql语句暴露出来了,而ef是使用IQueryable来完全封装sql的
11 IQueryable是一个标准接口,你要标新立异,本来就是兼容性很差的
12 你觉得微软不对你可以别用微软,但是你用微软你就得遵循用微软的人在遵循的标准
13 ORM框架本身,并不是一个功能性的东西,就是提供一个优雅的coding style,但是你的ORM框架,却忽略了coding style的问题
14 现在.NET上的ORM框架、甚至是一些no sql的数据驱动,他们的查询操作,主流的,你觉得有几个不是实现IQueryable接口的?
15 你标新立异,就代表着现存项目没有这个开发成本来重构成基于你的框架的版本,新的项目也无法接受选型你这个框架的风险
16 不实现IQueryable接口的查询API,实际项目无论是迁入到你这个框架,还是从你的框架迁出到别的框架,都有巨额的重构成本
17 你写出来一个东西来符合自己的理解,自己觉得更优雅,但是实际项目选型的时候要选用你的框架,会有这些问题:
1)你的文档中没有任何对比说明你的框架哪比EF更好
2)你的框架迁入迁出成本太高
3)你的框架缺乏学习资源
4)你的框架缺乏可靠的社区支持
18 是,有了.NET Core,微软拥抱开源了,.NET开发者都可以融入开源社区了,但是你得知道什么是开源社区,开源社区什么东西能好,什么东西得避免,开源社区的运作思想,而不是,哦,我写一个库,放github上,就是开源,你造轮子也得按照基本法,不要重复造轮子
19 [图片]从关键字搜索来看,这个项目里没有任何连接池控制的逻辑
20 我不知道你的项目里有没有实现数据库的版本控制的逻辑,如果没有,那你真的该去好好了解为什么要用ef,如果有,那么你是真正的勇士,花了一大把时间来重复造了一个很繁琐的轮子
21 算了,你自己要花时间,谁也拦不住,但是当成果被认可的程度没有达到你的预期时,请不要忘记我曾经提醒过你,大家都是程序员,坑都得自己跳一下才知道深,这个我是理解的

老哥应该是怕我被坑,我觉得做项目不容易,愿意开放源代码不应该鼓励吗?下班的时候和这位老哥聊了半小时,我很感激你的提醒,但是我需要更多的应该是认可。

咱们无偿开放源代码容易吗,好好给一点点鼓励就行,.net社区的未来才会更好。

项目仓库:https://github.com/2881099/FreeSql
目前版本 0.0.4,目前可用性已经挺高了,如果觉得不容易,请给予一星,谢谢

这年头做开源项目,被冷嘲热讽,FreeSql 0.0.4的更多相关文章

  1. Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)

    下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableVie ...

  2. Coolpy开源项目简介

    1.Coolpy初识 基于ARDUINO的迷你操作系统.只需一个ARDUINO主板+Ethernet Shield即可运行.成本低,Coolpy主件以目前淘宝价只需要76元人民币. 2.Coolpy能 ...

  3. 阿里开源项目 druid 相关资料汇总

    项目发起人访谈:http://www.iteye.com/magazines/90 github主页:https://github.com/alibaba/druid druid 项目,我想我能用很短 ...

  4. github上关于iOS的各种开源项目集合(转)

    UI 下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITable ...

  5. iOS -- 开源项目和库

    TimLiu-iOS 目录 UI 下拉刷新 模糊效果 AutoLayout 富文本 图表 表相关与Tabbar 隐藏与显示 HUD与Toast 对话框 其他UI 动画 侧滑与右滑返回手势 gif动画 ...

  6. 转: Github上关于iOS的各种开源项目集合

    https://blog.csdn.net/jiashaoying/article/details/79079500 下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. ...

  7. 一个基于 Vue3 的开源项目,3个月时间 star 终于破千!

    本文主要是对如何做开源项目的一些思考. 前文回顾: <Vue3 来了,Vue3 开源商城项目重构计划正式启动!> <一个基于 Vue 3 + Vant 3 的开源商城项目> 关 ...

  8. 原创开源项目HierarchyViewer for iOS 2.1 Beta新功能介绍

    回顾 HierarchyViewer for iOS是我们发布的一个开源项目,采用GPL v3.0协议. HierarchyViewer for iOS可以帮助iOS应用的开发和测试人员,在没有源代码 ...

  9. .NET ORM 开源项目 FreeSql 1.0 正式版发布

    一.简介 FreeSql 是 .NET 平台下的对象关系映射技术(O/RM),支持 .NetCore 2.1+ 或 .NetFramework 4.0+ 或 Xamarin. 从 0.0.1 发布,历 ...

随机推荐

  1. python 中的csv读写

    1.首先 import csv 2.读一个csv文件 data = open(filename) lines = csv.reader(data)  #reader 函数和 dirtreader函数的 ...

  2. C语言 > 数组和指针

    C语言 数组和指针 const: 关于指针和const需要注意一些规则.首先,把const数据或非const数据的地址初始化为指向const的指针或为其赋值是合法的. 然而,只能把非const数据的地 ...

  3. webpack,配置,上手,例子

    1.webpack是什么? 2.为什么要用webpack? 3.怎么用webpack? webpack是什么? 答:webpack是前端模块化应用和开发的打包工具,解决前端模块依赖的工具.打包所有的脚 ...

  4. CDN的基本工作过程

    CDN的基本工作过程 使用CDN会极大地简化网站的系统维护工作量,网站维护人员只需将网站内容注入CDN的系统,通过CDN部署在各个物理位置的服务器进行全网分发,就可以实现跨运营商.跨地域的用户覆盖.由 ...

  5. linux中普通的文件查看操作(cat、more、less、head、tail)

    cat:基本是最常用的查看文件内容的linux命令. more 也是用来查看一个文件的内容.当文件内容太多,一屏幕不能占下,而你用cat肯定是看不前面的内容的,那么使用more就可以解决这个问题了.当 ...

  6. 注解@EnableDiscoveryClient,@EnableEurekaClient的区别

    SpringCLoud中的"Discovery Service"有多种实现,比如:eureka, consul, zookeeper. 1,@EnableDiscoveryClie ...

  7. Oracle-13:Oracle中的表分区

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客记录了表分区 表分区的含义: 典型的拿空间换时间的案例! 表分区对一张表进行分区,分区之后表中的数据存 ...

  8. Kali Linux安装Google中文输入法(只需5步)

    前言: 之前我在kali上安装过中文输入法,并且写了一篇博文(Kali Linux安装中文输入法全纪录),这篇博文里的步骤是当时一边摸索一边记录下的,思路有点混乱,而且还同时安装了两种输入法.今天又安 ...

  9. 使用WordPress搭建的网站如何使URL中不出现”wordpress”

    问题描述: 当我们在服务器中安装WordPress时,通常,WordPress默认是将WordPress的文件安装到了一个名为"wordpress"的文件夹里.这样在一般情况下,如 ...

  10. app后端设计(4)-- 通讯的安全性

    在app的后台设计中,一个很重要的因素是考虑通讯的安全性. 因此,我们需要考虑的要点有: 1. 在app和后台,都不能保存任何用户密码的明文 2. 在app和后台通讯的过程中,怎么保证用户信息的安全性 ...