随笔分类 - 编程观念
摘要:最近,又用我的脚本管理,写了一个代码生成器。 用在一个.net core Web MVC项目中,想要把原来的一些Area,拷贝替换表名。 业务上来说是:把推广模块,单独复制出一个推广-外部渠道的模块。专门给公司外部的推广人员用,但是不影响原来的功能。 本质结构 代码生成器 = 模板 + 替换 结论先
阅读全文
摘要:C#中常用的,好用的几种抽象就是:T,Func,Task。 T是泛型 有关的: 接口 ,IEnumerable >> 泛型方法,Linq。//就是有Ixxx接口,才能写泛型方法。 基类 >> 泛型约束 >> 匿名类型。//就是类型越来越自由的方向。基类和继承,对很多事物,不那么适用。 Func和Ac
阅读全文
摘要:今天在工作时,突然想到一种自己比较满意的工具类分组的方案。 是在往一个新建的项目中,拷贝一些工具类过去的时候想到的。 如下: CoGen,放我的代码生成器有关的。 Control,放控件有关的。 FuncConvert,放数据格式转换有关的。 FuncData,放纯后端对象处理的。 FuncOuts
阅读全文
摘要:我于2024.07.29新入职了一家公司,在开始的第一个星期里,试用了公司项目用的Colder框架(看作者叫寒剑飞空)。 过程 1.建表,代码生成,菜单配置,权限配置(改配置文件,用角色权限管理,代码修改)。 2.弄了一些控件:下拉,导出,上传图片,导入,单选,文本框,列表排序。 3.弄了一个统计报
阅读全文
摘要:之前的方向 做创新型软件 一般来说,我们可以把软件分成:传统行业软件,还有互联网软件。 这里面经典或者流行的,都可以提前准备好产品框架;在框架的基础上进行定制开发,这是减少成本的一种好的方式。 与经典/流行相对的,可单独分出一类来:叫做创新型软件。 这种创新型的软件,由于功能设计有独创性,找不到类似
阅读全文
摘要:引入问题 编程的本质是什么? 我想要答案。如果我不能给出一个答案的话,那我就会睡不着觉。 因为我喜欢形而上的东西,喜欢三言两语就能说清楚一件事情,喜欢研究道。 研究 今日是2022.3.20,我翻阅了一下【编程观念】这个分类的文章,觉得能总结出一个答案来。 总结后,我勉强的给出了一个回答,这是我用4
阅读全文
摘要:什么是技术性的沟通 也就是更靠近计算机的沟通。我一边要面对计算机,一边要面对客户。 有些沟通是纯粹为了解决工作问题而进行的沟通,这样的就是技术性的沟通。 我们的重要经验是:一定要需求足够明确了再去写代码;否则改动会非常多。 客户容易犯的错误和应对 程序最终是一种逻辑明确的东西;客户在表达需求时,常常
阅读全文
摘要:写在前面 今天是2020.10.12,我已经从上家公司离职了。 下文内容是2019年春节那一段时间写的工作总结。 现在把这个总结发出来。 之前的公司是家创业公司,什么都要做。我当时的总体发展思路就是借着公司给的这样一个环境。先提高编码速度,做好编码工作。然后整理好一些框架,全面的提高个人能力。然后再
阅读全文
摘要:分层架构的由来 以Web开发为例子。 一开始,人们把前端代码+数据库操作+逻辑都写在一个文件中。 但是后来发现这样容易乱,于是开始分层。 主要有两种思想: 1是,页面只负责显示,后端负责逻辑。 2是,数据库操作,逻辑分离。 前者靠MVC实现。 后者靠三层实现。 单纯的MVC 在mvc中, Contr
阅读全文
摘要:总体看 这个项目PC端基本上是:基础资料的维护,审批流程的维护,权限的维护,接口,报表。 然后各种单子实际是在小程序端来做的。 然后小程序从界面上看,底部导航栏分为:首页、消息、我的3部分。 主要流程 1是,采购的流程: 采购订单》装车》入库》付款(平供应商的应付款) 2是,销售的流程: 销售订单》
阅读全文
摘要:偏业务的功能 在一个数据库系统中,功能大概分两种:不偏向业务的,和偏向业务的。 在ERP类的系统中,业务是复杂的,有很多业务型功能。 如何捋清这些需求呢? 常见的单个功能分析 偏业务的功能,往往和【单据状态】,【某些数值】相关。 常见的业务型功能有:启用,停用,审核,反审,调单,作废。 最典型的业务
阅读全文
摘要:这是我对开发工作的总体描述。 本文写成于2020.12,总结了2019到2020的工作实践。 思考的问题 在最近两年的工作中,我思考过这样一些问题: 项目 项目的总体评估,工期和报价。 需求 从需求到编码,业务描述的方法(怎样清晰的描述业务有利于编码),功能设计标准(怎样的功能设计不会让用户疑惑)等
阅读全文
摘要:无意用到 我们在描述软件功能的过程中,会有意无意的用到基于页面的编程模型。 如果说,我们在介绍一个软件的功能的时候: 先介绍页面的布局(你看这个左边有个操场,右边有个楼); 再介绍数据的加载(你看操场上有九年级一班的学生在上体育课); 最后介绍页面的事件(等到10点打铃的时候,楼里的学生就都会跑到操
阅读全文
摘要:三大描述 看过winform,安卓,和网页前端的实现方式后;我觉得前端有3类经常需要描述的事情: 一是布局和定位。 二是图形和样式。 三是事件处理。 各自的实现方式 布局和定位 winform靠Anchor和Dock。绝对定位+填充式定位混合双打。 安卓靠各种Layout。外层容器决定了内部控件的布
阅读全文
摘要:开始的工作 我是在2018.11.5开始维护和修改这个winform的ERP系统的。 我感觉代码很乱,因为代码里用了太多继承,窗体类之间相互的访问彼此的成员又很随意。 一句话来说就是耦合性高,封装性太低。 封装性的本质是,一个类自己管理自己的【数据】,和与之相关的【方法】。 其他类和对象,不能随意修
阅读全文
摘要:我在教别人编程的时候,会按照下面的提纲内容来教。细节以C#为准。 结构化程序设计 从变量和函数说起 1.变量,函数,修饰符。 变量和函数是类的基本成员。变量的类型是其存储的值的类型,函数的类型是返回值的类型。变量不带小括号,函数带小括号 这是变量和函数区分的标志。函数有函数名,参数,返回值,函数体。
阅读全文
摘要:三权分立 数据库系统,符合人们使用结构化数据的需求。 没有它时,人们可能用记账本或Excel来满足这一需求;但是设计良好的数据库系统一定是最好用的。 因为数据库系统系统:准确/灵活/易用。 这些优点主要靠3权分立来实现: 数据库,能准确的存取数据。 后台代码,能灵活的对数据进行计算/分析。 图形界面
阅读全文
摘要:思考了一下,编程的观念,还是:程序=数据结构+算法,逻辑上比较完美。 变量=函数? 有人说按照纯粹的函数式编程的观点看一切都是函数,没有变量,例如下面这样就看不到变量了。 print(f(g(x))); 有人说按照声明式的编程观点看一切都是变量的赋值过程,没有函数,例如 select x=(sele
阅读全文
摘要:写在前面 下面提到的计算任务、面向对象、声明式等,通常被叫做编程范式。 但是我想总结的【观念】还有其他东西,所有统称为【观念】。 需求vs硬件 从需求看,软件是一种产品,要满足用户的某种需求。 从硬件看,计算机本质上是一台会(数值化的)存储、(数字化的)计算、输入输出的机器。 而编程,是联系需求和硬
阅读全文