Swift改善既有代码的设计 - 翁阳0 码力 | 48 页 | 4.68 MB | 1 年前3
7-韦泽华-一键将C和Cpp代码转换为Python能调用的代码一键将 C/C++ 代码转换为 Python 能调用的代码 韦泽华 大家以前都是怎样调用C++代码呢? 1. Cython 2. boost.python/pybind11 3. ctypes 先不讨论这些工具的优劣 先给大家介绍一下 如何使用c2py来调用C++代码 在此之前给大家看一下要调用的C++代码源文件 • 我肯定是会拿上期所的API来作示范: (看一眼就好了) so)文件 • 第二步,调用代码,并享受完备的type hint。 与其他工具的用法进行一下比较? 与pybind11进行比较 • c2py:两个命令 • pybind11:1137行代码? • 不, 其实是11,376行代码: 跟pybind11比算个什么事?根本 不在一个次元! 要比就和不需要写C++代码的工 具比! 与ctypes进行比较 • c2py:调用代码,并享受type hint。 hint。 • ctypes:调用代码?? 如果把调用C++代码当作吃饭,那么: 工具 科技等级 手撸Cython 手撕猎物;钻木取火 Boost.python/pybind11 用猎枪打猎;在现代化的厨房里做菜 ctypes 在某个便利店里买吃的。(只卖番茄炒蛋) c2py 外卖app 所以 调用C++,认准 现代化的外卖app:c2py https://github.com/nanoric/c2py0 码力 | 12 页 | 1.24 MB | 1 年前3
如何向Go官方提交代码-蒙卓如何向Go官方提交代码 蒙卓 hi@mzh.io 自我介绍 ● 后端工程师,主要写Go ● 业余搞Go官方库开发 ● 主要喜欢折腾ARM/MIPS 性能优化 ● 第一个中国Go 官方MIPS64 builder 维护者 目录 1. 为啥参与Go开发 2. 如何提交CL 3. 交流技巧 4. 参考资料 为啥参与Go开发? 解决BUG 4000+ issue 2510 TODO 如何提交CL Change Log/List (CL) 如何提交CL 1. 申请Google账号,填写CLA(Contributor License Agreement) 2. 申请Gerrit(评审平台)账号 3. 安装go-codereview 工具 4. clone Go官方源 5. 切换开发分支 6. 做出修改和commit 7. 执行git mail 即可 https://golang AFAIK:As Far As I Know (据我所知) c. IMHO:In My Humble Opition (鄙人认为) One More Thing 版权问题 1. 抄也要抄BSD兼容的代码 a. GPL 不行 b. 闭源更不行 谢谢各位 参考资料 https://github.com/golang/go/issues https://stackoverflow.com/qu0 码力 | 38 页 | 5.95 MB | 1 年前3
邓良驹 编写更安全的Python代码编写安全的Python代码 邓良驹 2019.10.19 思考题 if user.balance >= product.price: user.balance -= product.price ? 目录 CONTENTS 常见不安全代码 代码检查的工具 总结:如何规避风险 常见不安全代码 小心 eval 应对: 在生产环境中,任何情况下都不要使用eval。 import sys 更不要以为 PyPI 源中的包就不存在恶意代码; 不要以为你import的就是你实际要import的*; 每个 PyPI 包都可能存在前述所有风险点, 有的甚至是故意、恶意为之。 应对: 谨慎选择第三方 PyPI 包,尽量少导入 PyPI 包; 利用 https://pyup.io/ 等服务保持检查和更新依赖; 利用 Chef InSpect 落实代码安全规范的检查。 *参考资料:“驹说码事” *参考资料:“驹说码事” 《如何import一个不存在的对象》 https://mp.weixin.qq.com/s/0_ivKVDU-nKf3r-c96sqrA 利用 Bandit 检查代码 记不住那么多点?交给Bandit! https://github.com/PyCQA/bandit https://bandit.readthedocs.io/en/latest/ B101 assert_used B1020 码力 | 18 页 | 988.40 KB | 1 年前3
面向亿行 C/C++ 代码的静态分析系统设计及实践-肖枭面向亿行C/C++代码的 静态分析系统设计及实践 肖枭 自我介绍 2016年香港科技大学取得博士学位 过去10年一直以极高的热情从事静态 分析技术的学术用研究 合作创办源伞科技,致力于推动静态 分析技术在企业中的应用 目录 代码质量管理是个大问题 静态分析+代码评审的实践 学习和强调,红线和惩罚,100%的测试 覆盖率,和事后复盘并不够 有经验的程序员也会犯错 对代码提要求很难监督落实 代码的快速变化使质量更难管 生产质量是责任 靠运维和事后复盘善后够吗? 静态分析工具:半智能的代码分析机器人 静态分析辅助代码评审 自动化工具+流程才是未来 Bug! Thx! Bug! 投入大 KPI不痛不痒 使用主体和责任主体不一致 一步登天想要终极AI 代码质量改进工具、流程落地难 Bug! No Thx! DevOps: 代码质量责任应该左移 代码质量责任应该左移 设计 代码 开发 代码 评审 入库 测试 发布 1. 非研发人员主导,沟通成本高,推动修复周期长 2. 很难形成标准推动研发实施 3. 形成技术债,偿债成本高 1. 代码签入前,研发人员有义务修复问题 2. 测试人员早期加入,更懂项目研发的情况,沟通成本低,加快上线 3. 能逐步形成好的编码规范和最佳实践 检查代码风格问题挺准,但是 我warning都不看,还看这个?0 码力 | 39 页 | 6.88 MB | 1 年前3
领域驱动设计&中台/演进式架构的平台化落地component component component microservice container ⼤大泥泥球 ⼤大量量⼦子尺⼨寸的应⽤用阻碍频 繁增量量变更更,因为⾼高耦合 性需要⼀一次部署⼤大量量代码、 ⼤大量量的应⽤用。 单例例架构 ⾮非结构的单例例架构 user interface Class Class Class Class Class Class Class Class ⾃自动测试 平台 微服务系统设计,研发与运维管理理 微服务 /API设 计 代码 ⽣生成 契约 服务 架构 演进 微服务 运维治 理理 部署架 构 设计 统⼀一协作平台 研发⼯工具连 为某企业做的微服务平台规划 部署架构设计 服务 契约 定义 契约 代码 评审 开 发 服务运⾏行行治理理 服务 部署 运⾏行行架构治理理 故障 分析 定义架构 定义架构 约束条件 微服务架构设计 服务地图 设计 API设计 部署架构设计 微服务⼯工程创建 开发 框架 架构 ⻛风格 资源 配置 … 架构演进 服务 关系 分析 代码 质量量 分析 数据 库分 析 领域 模型 分析 运⾏行行资 源管理理 PaaS、 容器云资 源管理理 公共 部分 产品、⼈人 员维护 定义通⽤用 约束条件 定义服务 约束条件 可视化设计0 码力 | 42 页 | 2.95 MB | 1 年前3
202309 MeterSphere ⼀站式开源持续测试平台⼀个平台解决测试⼈员协作、测试能⼒、测试数据⼀站式问题 - 系统管理员⻔户 团队管理员⻔户 项⽬管理员⻔户 测试⼈员⻔户 持续测试平台⻔户 测试评审 测试计划 测试执⾏ 测试进度 测试跟踪 测试报告 测试⼤屏 需求管理平台 缺陷管理平台 外部对接 代码构建平台 消息通知平台 测试能⼒模块 功能测试 接⼝测试 性能测试 UI 测试 测试⽤例管理 列表管理 脑图管理 公共⽤例库 ⻆⾊权限管理(菜单、操作) 共享⽤例库 项⽬交接 甲团队 负责 A 项⽬全⽣命测试周期 负责 C 项⽬全⽣命测试周期 共同参与项⽬测试 (测试协同) ⽤例脑图 场景编写 ⼈员调岗与交接 评审协同 计划制定 接⼝规范 脚本规范 数据度量 报告分享 版本管理 消息中⼼ ⼄团队 测试跟踪 项⽬ A 接⼝测试 UI 测试 性能测试 测试跟踪 项⽬ B 接⼝测试 UI 性能测试 MeterSphere 关键能⼒设计⼆:能⼒⼀站式 MeterSphere Jenkins 插件 ⽤户 ⼿动测试 ⾃动测试 测试计划 测试⽤例 接⼝测试 性能测试 脑图导⼊ ⽤例评审 JIRA / TAPD 等 Mock 数据 Postman Swagger JMeter 脚本、 CSV 脚本 MeterSphere Chrome 插件录 制脚本 压测集群0 码力 | 45 页 | 4.65 MB | 1 年前3
202203 MeterSphere:一站式开源持续测试平台
⻆⾊权限管理(菜单、操作) 共享⽤例库 项⽬交接 XX 团队 负责 A 项⽬全⽣命测试周期 负责 C 项⽬全⽣命测试周期 共同参与项⽬测试 (测试协同) ⽤例脑图 场景编写 ⼈员调岗与交接 评审协同 计划制定 接⼝规范 脚本规范 数据度量 报告分享 版本管理 消息中⼼ XX 团队 测试跟踪 项⽬ A 接⼝测试 UI 测试 性能测试 测试跟踪 项⽬ B 接⼝测试 性能测试 测试跟踪 项⽬ C 接⼝测试 UI 测试 性能测试 MeterSphere Jenkins 插件 ⽤户 ⼿动测试 ⾃动测试 测试计划 测试⽤例 接⼝测试 性能测试 脑图导⼊ ⽤例评审 Jira / TAPD 等 Mock 数据 Postman Swagger JMeter 脚本、 CSV 脚本 MeterSphere Chrome 插件录 制脚本 压测集群 3:实践阶段;Level 4:熟练运⽤。 4 3 2 MeterSphere 测试过程全跟踪能⼒ 测试跟踪 核⼼⽤例在线评审 ⾃定义树状⽤例管理 脑图模式⽤例管理 制定测试计划,并进 ⾏测试执⾏ 报告预览与 统⼀输出 脑图模式查 看与评审 列表模式查 看与评审 双向同步 ⽤例导⼊ ⽤例创建 JIRA 、 禅道 、TAPD 等 关联需求 JIRA 、 禅道 、TAPD0 码力 | 41 页 | 11.71 MB | 1 年前3
202205 MeterSphere:一站式开源持续测试平台
⻆⾊权限管理(菜单、操作) 共享⽤例库 项⽬交接 XX 团队 负责 A 项⽬全⽣命测试周期 负责 C 项⽬全⽣命测试周期 共同参与项⽬测试 (测试协同) ⽤例脑图 场景编写 ⼈员调岗与交接 评审协同 计划制定 接⼝规范 脚本规范 数据度量 报告分享 版本管理 消息中⼼ XX 团队 测试跟踪 项⽬ A 接⼝测试 UI 测试 性能测试 测试跟踪 项⽬ B 接⼝测试 性能测试 测试跟踪 项⽬ C 接⼝测试 UI 测试 性能测试 MeterSphere Jenkins 插件 ⽤户 ⼿动测试 ⾃动测试 测试计划 测试⽤例 接⼝测试 性能测试 脑图导⼊ ⽤例评审 Jira / TAPD 等 Mock 数据 Postman Swagger JMeter 脚本、 CSV 脚本 MeterSphere Chrome 插件录 制脚本 压测集群 3:实践阶段;Level 4:熟练运⽤。 4 3 2 MeterSphere 测试过程全跟踪能⼒ 测试跟踪 核⼼⽤例在线评审 ⾃定义树状⽤例管理 脑图模式⽤例管理 制定测试计划,并进 ⾏测试执⾏ 报告预览与 统⼀输出 脑图模式查 看与评审 列表模式查 看与评审 双向同步 ⽤例导⼊ ⽤例创建 JIRA 、 禅道 、TAPD 等 关联需求 JIRA 、 禅道 、TAPD0 码力 | 40 页 | 11.03 MB | 1 年前3
百度超级链 XuperChain 3.12-a中文文档} } 接下来 账号管理 预备知识 合约权限管理 共识 智能合约 自研并实现了一套智能合约虚拟机XVM。特点如下: 1. 合约状态数据与合约代码运行环境分离,从而能够支持多语言虚拟机且 各种合约虚拟机只需要做纯粹的无状态合约代码执行; 2. 支持执行消耗资源,避免恶意攻击; 3. 支持丰富的智能合约开发语言,比如go,Solitidy,C/C++,Java等; 4. 利用读写集确 下图是可信账本的系统架构设计 TEESDK是与TEE服务请求的入口,将编译为动态链接库被超级链调用,实 现链上的隐私计算。 可信账本目前支持数据加密存储、数据权限管理、秘钥托管和基本的密文计 算功能,此部分代码暂未开源。 重要接口和数据结构 TEESDK // 提交任务到TEE服务,返回计算结果 func (s *TEEClient) Submit(method string, cipher string) cnt + 1); ctx->put_object(key, buf); ctx->ok(buf); } DEFINE_METHOD(Counter, get) { 代码解析 下面我们逐行解析合约代码: #include为必须的,里面包含了编写合约所需要 的库。 struct Counter : public xchain::Contract 0 码力 | 336 页 | 12.62 MB | 1 年前3
共 553 条
- 1
- 2
- 3
- 4
- 5
- 6
- 56













