C#和C++是非常相似的两种语言,然而我们却常常将其用于两种不同的地方,C#得益于其简洁的语法和丰富的类库,常用来构建业务系统.C++则具有底层API的访问能力和拔尖的执行效率,往往用于访问底层模块和构建有性能要求的算法. 这两种场景看起来有较大的差异,大多数的时候可以各行其道.但还是有很多时候会出现融合的情况.当我们构建分布式系统的时候,由于RPC机制一般都是语言无关的,我们大可以将其各尽所长,按需划分在最能发挥其长处的位置.然而,一旦我们需要构建融合两者需求的集中式系统的时候,就会头痛无比.…
一.简单用法 C#和C++是非常相似的两种语言,然而我们却常常将其用于两种不同的地方,C#得益于其简洁的语法和丰富的类库,常用来构建业务系统.C++则具有底层API的访问能力和拔尖的执行效率,往往用于访问底层模块和构建有性能要求的算法. 这两种场景看起来有较大的差异,大多数的时候可以各行其道.但还是有很多时候会出现融合的情况.当我们构建分布式系统的时候,由于RPC机制一般都是语言无关的,我们大可以将其各尽所长,按需划分在最能发挥其长处的位置.然而,一旦我们需要构建融合两者需求的集中式系统的时候,…
关于C++/CLI的基础,我前面已经写过了几篇文章介绍过一些了,不过这些基本上都是管中窥豹,如果要详细了解C++/CLI,MSDN无疑是最好的教程. 使用 C++ 互操作(隐式 PInvoke) Visual C++ 中的 .NET 编程 如果需要在MFC中使用.net控件的话,可以参考如下三篇文章: 在 MFC 对话框中承载 Windows 窗体用户控件 以 MFC 视图的形式承载 Windows 窗体用户控件 以 MFC 对话框的形式承载 Windows 窗体用户控件 此外,MSDN文章如何…
数值类型 对于基本的数值类型,在C++/CLI中是可以直接映射为托管类型的数值的,可以同时应用于托管类型和非托管类型,编译器会将其自动转换. 基本类型 System命名空间中对应的类 注释/用法 bool System::Boolean bool dirty = false; char System::SByte char sp = ' '; signed char System::SByte signed char ch = -1; unsigned char System::Byte uns…
托管对象的创建和引用 在前文中我们已经演示过创建一个托管对象,对于如下C#代码: System.Object x = new System.Object(); 其在C++/CLI中的等价代码如下: System::Object^ x = gcnew System::Object(); 和传统的C++创建的语法比较下, P* x = new P(); 我们不难发现,对于托管对象,主要引入了如下两个语法: 用gcnew代替new实现托管对象的创建 用^代替*实现托管对象的指针 这种方式创建的对象是可…
cli搭建方法:需安装nodejs先 1.npm install -g cnpm --registry=https://registry.npm.taobao.org //安装cnpm,用cnpm下载东西有时会快一些 2.cnpm i -g vue-cli  //安装 vue-cli,i:install 安装,-g:全局,哪儿都可以使用. 3.vue init webpack-simple ProjectName //webpack-simple:使用webpack-simple模板,proje…
约定 还记得上版本的第二十四篇的约定嘛?现在出来履行啦~ 为什么要重制? 之前写的专栏都是按照心情写的,在最初的时候笔者什么都不懂,而且文章的发布是按照很随性的一个顺序.结果就是说,大家都看完了,都还对框架没有一个感觉,感觉很乱.而现在,经过两年多的摸索,笔者已经对框架的体系有了一个了解,所以希望再版一次此系列的专栏. 为什么不在原来的文章里直接修改呢? 在上一轮的专栏第二十四篇里有讲过过:虽然以前的内容过时了,但是这些专栏对笔者有很重要的意义,它们记录了笔者成长的一个经历,在评论区有着大家的支…
原文:[原创].NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) .NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) 前言:上一篇文章讲述了一些实现DAL的理论,本篇主要是DAL实现的的初步的尝试. 本篇的主要议题如下: 1. 设计DAL的基本操作 2. 对基本的操作的进一步的思考 3. 查询对象的一些思考 系列文章链接: [原创].NET 分布式架构开发实战之一 故事起源 [原创].NET 分布式架构开发实战之二 草稿设计 [原创].NET 分布式架构开发实…
gcc GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF) http://gcc.gnu.org/ The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (libstdc++…
Arduino For ROS-001 - 搭建 ROS 和 Arduino 相连接的开发环境 我的Ubuntu系统:Ubuntu 14.04.10 TLS 32位 Arduino的版本:Arduino 1.6.11 Linux 32位 使用 的ROS版本:ROS Indigo 一. 下载并安装 相关软件 Step 0 . 如果你没有在 Ubuntu 上面安装 ROS Indigo 这个版本的ROS 机器人操作系统的话,请参考这篇博客进行安装:ROS Learning-001 安装 ROS in…
当前系统版本 mac OS 10.14.2 1.安装node.js开发环境 前端开发框架和环境都是需要 Node.js  vue的运行是要依赖于node的npm的管理工具来实现 <mac OS 安装 node.js>https://blog.csdn.net/weixin_41791279/article/details/86470711 2.安装淘宝npm镜像 由于npm 服务器是国外的 使用起来比较慢 我们这里使用淘宝的cnpm镜像来安装@vue/cli 淘宝的cnpm命令管理工具可以代替…
首先,默认咱们已经有了.net core 3.1的开发环境,如果你没有,快去下载... https://dotnet.microsoft.com/download 由于项目是基于abp vNext开发的,所以开发之前建议去撸一遍abp官方文档,https://docs.abp.io/en/abp/latest/ 创建项目有很多种方式: 第一种,纯手撸,使用vs手动创建新项目 第二种,借助abp模板直接傻瓜式下载,地址:http://abp.io/get-started 第三种,abp cli(推…
前言 从这篇文章开始,就进入真正的实践了. 在前端项目开发中,我们可以根据实际情况不同程度地使用 Vue.利用 Vue CLI(或写成 vue-cli,即 Vue 脚手架)搭建出来的项目,是最能体现 Vue 的特性的.这点在接下来的内容中我们可以慢慢感受. 关于项目的构建其实类似的文章网上有很多,但我还是重新写了一下,一是为了确保项目能够运行成功,二是对几个细节作了解释,三是加入了使用 IDE 的构建方法. 在动手操作之前,我希望大家已经清楚什么是 "前后端分离" ,什么是 "…
父子组件通信 父 通过props属性给 子传递数据 子 操作 父  this.$parent.XXX 子通过$emit传递参数 或者通过vue-bus vue-bus既可以实现父子组件之间的通信,也可以实现兄弟组件之间的通信 vue-bus安装 (c)npm install vue-bus 引入 import Vue from 'vue'; import VueBus from 'vue-bus'; Vue.use(VueBus); 应用: 发送: this.$bus.$emit('closeM…
参考: ghost 官网 系统架构说明 架构 架构说明 本实践将 web 接入, nodejs 服务, 数据库分离, 适合生产环境场景. nginx 接入请求, 反向代理后端 nodejs 服务 nodejs 响应所有接口请求 mysql 存储数据 系统搭建 系统环境 操作系统: Ubuntu 16.04.4 LTS node: 8.x ghost-cli: 1.6.0 Server List server ip nginx 10.0.0.1 nodejs 10.0.0.2 mysql 10.0…
1.首先电脑要在安装node环境下才能运行 2.全局安装webpack:npm install webpack -g 3.安装vue脚手架: npm install vue-cli -g 4.新建文件夹: vue init webpack(webpack-simple如果是安装简单版的以后就会自己配置一些东西) 工程名称 5.最后再在文件里下载依赖: npm  install 6.目录结构差不多就是这样:…
报错必须处理,警告也忍不了,发现在bulid -webpack.base.config.js 里找到 const createLintingRule = () => ({ /*test: /\.(js|vue)$/, loader: 'eslint-loader', enforce: 'pre', include: [resolve('src'), resolve('test')], options: { formatter: require('eslint-friendly-formatter…
创建如图所示目录结构 在system-parent创建如下目录 ├─system-dao ├─system-domain ├─system-service └─system-web 创建system-parent mvn archetype:generate -DgroupId=com.hbb0b0 -DartifactId=system-parent -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false…
vue.js https://vuejs.org/ 基础: http://cn.vuejs.org/v2/guide/installation.html 1.安装需要利用npm包管理器,所以首先安装node.js https://nodejs.org/en/download/ 安装好后,打开cmd面板,输入 node -v  (v即 version ,查看node版本) npm是随nodeJs一起安装.所以输入 npm -v 说明npm也已经好了. (安装nodejs后,里面的npm可能不是最新…
开篇废话: 跟之前的文章一样,开篇之前,总要写几句废话,大抵也是没啥人看仔细文字,索性我也想到啥就聊啥吧. 这次聊聊疫情,这次全国多地的疫情挺严重的,本人身处深圳,深圳这几日报导都是几十几十的新增病例,整个深圳都按下了暂停键.在此也真诚的感谢在一线辛苦抗疫的医护工作者.自愿者以及政府工作人员们. 疫情起起伏伏,着实对经济的冲击还是挺大的,大家也都切身感受到了疫情对我们的生活影响了,社会上也出现了一些质疑的声音,有质疑动态清零的,也有标榜国外放弃抗疫的.国外的国情.政治文化,我们且按下不表. 且说…
一提到C语言,在偶这个始终的C语言菜鸟眼里,是个神奇的语言.经过了近半世纪的历史,多少技术湮灭在信息时代的长河中,C语言却依然在TIBOE排行榜中笑傲群雄. 本文是谈.NET开发者看来,C语言有什么特点,我们能从C语言中了解些什么.个人觉得,C++过于复杂了,和.NET走的完全是两条路,对我们没有多大可借鉴启发之处. 操作系统和硬件驱动主要都是C语言编写的,比如Windows系统.C语言可以自由地通过嵌入系统头文件,调用Windows函数,创建窗口,画图操作文件等等.而.NET要调用这些函数,必…
常用包 框架: yarn add express 数据库链接: yarn add sequelize yarn add mysql2 处理 favicon: yarn add serve-favicon 纪录日志: yarn add morgan 生成文档: yarn add --dev apidoc 解析请求参数: yarn add body-parser 设置 HTTP 头(提高安全性): yarn add helmet 文件变动监控(自动重启): yarn add --dev nodemo…
改用C++生成自动化数据表 前面的文章中,我们讨论了使用一个基于.NET的第三方程序库来从程序中来生成数据表.在我看来,这整个思路是非常有用的,例如为显示测试结果.我经常会自己在博客中尝试各种像这样的方法.大体上就像你做各种测试然后把结果输出到控制台或者文本文档中…… 但是,要是把结果直接写入电子表格然后自动化地生成可视化图表不就更好了吗?这种方法也可以用C++实现吗? 简介 在上面提过的文章中,我给大家演示了如何将测试结果直接输出到Excel文件中.我用了一个很棒的的程序库它叫做 Spire.…
最近趁热打铁,研究了一下Mybatis.MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码. 本文完成的Mybatis功能比较简单,代码还有许多需要改进的地方,大家可以结合Mybatis源码去动手完善. Mybatis框架流程简介 在手写自己的Mybatis框架之前,我们先来了解一下Mybatis,它的源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,才能够更深入的理解源码(ref:Mybatis源码解读-设计模式…
阅读本文大概需要 3 分钟. MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码. 本文完成的Mybatis功能比较简单,代码还有许多需要改进的地方,大家可以结合Mybatis源码去动手完善. 1. Mybatis框架流程简介 在手写自己的Mybatis框架之前,我们先来了解一下Mybatis,它的源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,才能够更深入的理解源码(ref:Mybatis源码解读-设计模式总结…
实训内容简介: 大四开始前系里安排的的集中实践环节,根据要求,开发app应用软件. 目标app:Stick_mxj 目的:继续对cocos2d-x的学习,完成实践环节,解决现在对引擎不是很清楚的一些问题,熟悉相关的算法与工具. app简介:人物通过对点击屏幕时间的长短控制生成棍子的长短以搭建两个平台之间的桥梁,通过计数器来记录成绩,并可以分享到朋友圈. 工具:cocos2d-x-3.10.VS2013.ADT.NDK.JDK.SDK.Python.ANT等.…
(二期)3.mybatis与mybatis plus [课程三]mybatis ...运用.xmind0.1MB [课程三]mybatis...机制.xmind0.2MB [课程三]mybatis与jdbc.xmind0.2MB [课程三]多数据源处理.xmind49.4KB [课程三]数据库...字段.xmind38.4KB [课程三预习]myb...plus.xmind73.9KB 讲课顺序: mybatis基本概念 jdbc与mybatis关系 mybatis的主要组件 mybatis的二…
转自: https://my.oschina.net/editorial-story/blog/882780 PHP 是一种通用开源脚本语言.语法吸收了 C 语言.Java 和 Perl 的特点,利于学习,使用广泛,主要适用于 Web 开发领域,是大多数后端开发者的首选.PHP 作为最受欢迎的编程语言之一,经常出现在各大语言之战中,但到底谁是最好的编程语言呢?这不是文章要讨论的内容:) 本文从众多 PHP 开源库中选出了几款实用有趣的工具,希望对你的学习工作有帮助. 1.PHP 日志工具 Mon…
MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码.本文完成的Mybatis功能比较简单,代码还有许多需要改进的地方,大家可以结合Mybatis源码去动手完善. 一.Mybatis框架流程简介 在手写自己的Mybatis框架之前,我们先来了解一下Mybatis,它的源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,才能够更深入的理解源码(ref:Mybatis源码解读-设计模式总结).我们对上图进行分析总结: my…
数字化时代,技术已经成了企业发展的重要驱动力,是转型中的企业不可或缺的力量.那采用什么样的组织结构,才能发挥出技术能力的最大价值呢?华为经历了多种组织形式,最终得出的结论是业务IT一体化组织是最合适的. 一.华为经历过的三种业务和IT组织形式 模式一:烟囱式组织 大部分传统企业都是以业务部门为核心的,IT部门只是一个配合部门,信息化只对业务发挥支持和保障业务的作用.业务部门首先提出业务需求,两个部门进行沟通,然后技术部门进行开发.实施和上线.这个过程,速度慢.周期长.成本高.这种组织形式,是典型…