目录 一.准备工作 1.C/C++环境搭建 2.VSCode的配置 (1) 安装插件: (2) 设置配置文件: 二.工程化编程实战 1.模块化设计 2.可重用设计:进一步抽象 menu的进一步优化 可重入函数和线程安全 可重入的概念 线程安全的概念 两者之间的关系 对linktable模块的分析 计算机软件发展也有很多年了,软件工程越来越复杂,对代码的重用,工程的抽象和模块化需求越来越大,从一开始的面相过程,到面向对象,再到组件,微服务--现借本次课程的机会,梳理一下软件工程中基本的实践方法,看…
来某厂接近半年了,几乎没写过C++代码,说实话还真的有点手生.最近刚好有一个需求,然而我感觉我也没有办法用C++以外的语言去实现它.于是还是花了几天时间用C++完成编码,这是一个简单的任务执行引擎,它被我称作panguan.写这 篇文章主要记录一下开发过程中的一些思路和想法.不足之处,劳烦大家给予指出. 1.写在前面 1.1需求来源 最近有一个需求,假设我们有很多任务需要定时执行甚至定时重复运行,并且其中有一些任务之间可能存在控制依赖和/或数据依赖,甚至我们希望可以利用一些原子任务去组成一个更大…
公司简介 - CCDI悉地国际-工程实践专业服务的引领者 关于悉地国际         CCDI悉地国际(以下简称"CCDI")创立于1994年,是在城市建设和开发领域从事综合专业服务的大型工程实践咨询机构.我们拥有上海.北京.深圳.成都.纽约五大区域,在重庆.南京.天津.武汉.西安.昆明等国内主要城市设置分公司或办事处,实现在遍布全国各地的服务网络.CCDI曾成功主持设计了国家游泳中心"水立方".国家网球中心.深圳平安国际金融大厦.上海洛克菲勒外滩源.济南奥林匹克…
本文摘录<嵌入式Linux驱动模板简洁和工程实践>一本书"开发和调试技术". Linux强大的是,有那么多的开源项目可以使用.通常非常需要可以通过寻找相关的源模块被定义为高速的解决方案.使这些开源模块的嵌入.对开源项目进行交叉编译. 依据详细情况.下载的开源项目在组织上有非常多情况,在此对各种情况进行归类介绍. 1. 下载的开源软件包找不到Makefile 对于这样的开源包一般是採用configure的方式组织的,那么第一步就是使用软件包中的configure生成Makef…
研究生二年级实习(2010年5月)开始,一直跟着王益(yiwang)和靳志辉(rickjin)学习LDA,包括对算法的理解.并行化和应用等等.毕业后进入了腾讯公司,也一直在从事相关工作,后边还在yiwang带领下,与孙振龙.严浩等一起实现了一套大规模并行的LDA训练系统——Peacock.受rick影响,决定把自己对LDA工程实践方面的一些理解整理出来,分享给大家,其中可能有一些疏漏和错误,还请批评指正. Rickjin在<LDA数学八卦>[1]一文中已经对LDA的数学模型以及基本算法介绍得比…
工程实践:给函数取一个"好"的名字 早在2013年,国外有个程序员做了一个有意思的投票统计(原始链接请见:<程序员:你认为最难做的事情是什么?>),该投票是让程序员从以下几个选项中选出平时在工作中自己认为最难做的事情: 做项目方案设计 编写测试用例 撰写设计文档 向别人解释我们在做什么事情 实现你不认同的feature 在别人写的代码基础上做改造 与人沟通 给函数.变量命名 进行工作量估时 也许在大家的印象中,撰写设计文档和在别人写的代码基础上做改造应该是最难的事情.但是最…
1024程序员节刚过,手痒想实现一个html的3d编辑器,看了three.js 同时还看了网上流传已久的<<基于 HTML5 Canvas 的简易 2D 3D 编辑器>>,都觉得太复杂,一个3d编辑器貌似没有几百行代码搞不定.其实还真不是,那就用上次推荐的http://www.thingjs.com开发平台来试着做一下吧. 目标50行代码之内完成3d编辑器功能. 第一步,先来到thingjs平台的在线开发环境. 三行代码加载了一个默认场景,那就在这个基础上做吧.先把不需要的注释删了…
from:https://www.jianshu.com/p/9349c30a6b3e?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation GitChat技术杂谈 前言 本文较长,为了节省你的阅读时间,在文前列写作思路如下: 什么是 webpack,它要解决的是什么问题? 对webpack的主要配置项进行分析,虽然不会涉及太多细节,但是期待在本节能让我们知晓如果…
打算把C++工程过程中的一些总结写下来.从打算写这个内容到今天(2017/1/12)已经很多年了,但是一直没有想好如何写,反正就这样,有什么写什么吧. C++工程实践之所以难产,主要原因有几个 内容比较繁多,细节艰难. 工程实践很难说良好,更多各种程度的妥协.失去了当时环境,只是记录下这种妥协的结果,并没有太多的意义. C++这些年(2010-2017)在飞快的变化,C++1y让很多以前的实践需要重新验证. 但是道理总要讲一讲才能更明白,所以写一点是一点吧.…
在今年 1 月由七牛云主办的 ECUG Con 十周年盛会上,真有趣技术总监陈明达带来了题为< Go 在游戏行业中的工程实践>的精彩分享,深入讲解了 Go 的工程经验,错误和异常处理,interface 的应用以及去 DSL 的尝试等内容,以下是对他演讲实况的记录. 陈明达 真有趣技术总监.从事游戏行业,开发过<神仙道><仙侠道>等项目. 先从工程说起 软件工程三要素 我创业后,总结了过往工作和创业过程中参与的项目,发现不论做什么,软件工程都回到三个问题上: 需求.首先…