25 天前 / 十三少
除了小白,具备一定开发经验的软件开发人员都知道基本的软件工程原则——代码编写完成之后要通过测试才能交付使用。可是,当面临工期压力的时候,你还能坚持那些本该坚持的正确的软件工程原则吗? 某单位在顺利通过了 GJB5000 的二级资质之后,单位做出了成立软件开发中心,将军用软件集中开发。交给软件开发中心开发的第一批软件有 20 多个,小李准备按照 GJB5000 体系的要求开展开发工作。可是,等他用了一个多月,刚组织几个软件进行完需求规格说明评审,系统方已经通知 1 个多月后软件产品要编写完成,参加系统联试。
25 天前 / 浪客书心
文| 一君 出品 | OSC 开源社区(ID:oschina2013) 贵司为 MySQL 掏过钱吗?或者说,你使用的是MySQL Enterprise Edition 类的产品还是 MySQL Community Edition 类? 开源软件最常见的盈利模式便是基于开源版本提供付费的企业版本,刚刚提到的MySQL Enterprise Edition 就需要付费才能使用,而 MySQL Community Edition 用 GPL 开源,无需付费。 通常,基于一款开源软件,可能会有许多公司提供企业版开发与服务,比如在 Linux 之上,RedHat、SUSE 等都通过提供企业订阅产品生存。
26 天前 / 十三少
何谓专业? 专业人员会掌握所在行业应当掌握的一些专有技能。 而在很多实施 GJB5000 的组织中,专业的软件开发人员却是凤毛麟角。这些组织中大多数软件开发人员并非软件专业出身,有学自动化控制的,有学通信的……那是因为软件作为设备中的一个小小的组件,通常都由子系统或组件设计师来完成。 可是,软件在设备中的重要性日益增加,“软件定义世界”的说法已经被大家接受,软件开发人员不够专业怎么能行呢? 什么样的软件开发人员才能称为专业? 敏捷宣言发起人之一的 Bob 大叔认为...
30 天前 / 十三少
很多实施 GJB5000 的组织,大多都会有这样的现象:由于软件开发在组织的业务中只占很小的比重,软件开发一直得不到重视,留给软件开发的时间总是很短,所以,软件开发人员在编写好代码,完成编译集成,简单验证了正常情况下的功能,就提交软件给系统。至于软件的验证工作,在实施 GJB5000 之前,是交给了系统联试;在实施 GJB5000 之后,则是交给了测试人员。 这样做的结果是软件在联试或测试过程中发现大量的 Bug,软件开发人员花费大量时间修复这些 Bug,软件产品交付节点推迟,以至于影响系统的研发进度。
31 天前 / Yourtion
总第 511 篇 2022 年 第 028 篇 随着 DevSecOps 概念的推广,以及云原生安全概念的快速普及,研发安全和操作环境安全现在已经变成了近几年非常热的词汇。目前,在系统研发的过程中,开源组件引入的比例越来越高,所以在开源软件治理层面安全部门需要投入更多的精力。 但由于早期技术债的问题,很多企业内部在整个研发流程中对使用了哪些开源组件、这些开源组件可能存在哪些严重的安全隐患等相关的问题,几乎是没有任何能力去进行收敛,多年前的 SCA(Software Composition Analysis 软件成分分析)技术又重出江湖,变成该领域险治理的一个“神器”。
42 天前 / 十三少
编写可维护软件,可以提高软件开发效率,降低开发和维护成本。而要实现这一目标,软件开发人员应当遵守以下 10 大原则: 编写短小的代码单元 这里的代码单元,指的是方法或函数。 短小的代码单元(一个经验法则是一个代码单元规模不超过 15 行),可读性好,易于分析、测试和重用,因此可维护性好。 编写简单的代码单元 这里的“简单”,指的是拥有更少的决策点(一个经验法则是一个代码单元分支不超过 4 个)。简单的代码单元,同样易于分析和测试。 不写重复代码 编写代码应当避免复制粘贴已有的代码。
88 天前 / 十三少
萨提亚提出的冰山理论,实际上是一个隐喻,它指一个人的“自我”就像一座冰山一样,我们能看到的只是表面很少的一部分——行为,而更大一部分的内在世界却藏在更深层次,不为人所见,恰如冰山。 如下图。 其实,软件也是一座冰山。 软件的界面和它那些外在的功能,就是软件这座冰山露出海面的部分。而软件更多的设计则不为人所知。 在顾客看来,界面就是产品。——Jeff Raskin, 《人本界面》 比如: 大多数人眼中的 Google 就是一个文本框和一个结果页面,他们不会想到为了完成搜索任务,在页面背后有网页抓取技术、有页面评级算法...
90 天前 / 趣编程
作者:faryrong,腾讯 CSIG 后台开发工程师 最近看了一本书《解构 - 领域驱动设计》,书中提出了领域驱动设计统一过程(DDDRUP),它指明了实践 DDD 的具体步骤,并很好地串联了各种概念、模式和思想。因此,我对书本内容做了梳理、简化,融入自己的理解,并结合之前阅读的书籍以及实践经验,最终形成这篇文章。希望可以帮助大伙理顺 DDD 的各种概念、模式和思想,降低上手 DDD 的门槛。 1.背景领域驱动设计(DDD)由 Eric Evans 提出,并一经《领域驱动设计:软件核心复杂性应对之道》的发布,在软件行业中引起了不少的轰动。
92 天前 / 编程一生
在《温故知新 - 什么是软件工程》中,我发起了一个投票:word、excel 基于软件功能的划分来看属于什么软件?从结果来看,77% 的朋友选择了【应用软件 - 个人计算机软件】。这个选项在大学考试时选它一定没错。 但是剩下选【支撑软件】的朋友并不意味着选择了一个错误的答案。软件 = 程序 + 文档 + 数据。支撑软件是协助软件开发的工具性软件。开发文档用 word、excel 有什么不行吗? 软件生存周期 软件生存周期也叫软件生命周期。是软件的产生直到报废或停止使用的生命周期。在国标,也就是国内标准中,被分成了下面 8 个阶段。
94 天前 / 开发者头条
俄乌之战已经打了两周了, 美丽国、北约对俄罗斯采取了全方位的封锁, 金融、手机 APP、《天鹅湖》、别墅、游轮、足球、甚至猫都被区别对待, 关于这场战争的起因,相信各位看官可以到各大媒体看各种专家的解读, 关于孰是孰非,一口君就不班门弄斧了, 非要一口君的看法,那只有一句话: 坚定的支持国家的立场! 下面只说一些和软件相关的一些制裁, 苹果关闭了俄罗斯所有苹果手机的部分功能, 导致很多用户无法乘坐地铁。
178 天前 / 浪客书心
点击关注公众号,回复“2T”获取 2TB 学习资源! 互联网架构师后台回复2T有特别礼包 作者:土豆居士 来源:一口 Linux 上一篇:天猫二面:内存耗尽后 Redis 会发生什么? 1、操作系统 Microsoft Windows :汇编 -> C -> C++ 备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点 C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到 C++ 重写。 相信很多朋友都知道 Windows Vista,这个系统开发早期比尔盖茨想全部用 C#写,但最终因为执行慢而放弃,结果之前无数软件工程师日夜劳作成果一夜之间被宣告作废。
183 天前 / kafeidou
什么叫从头构建先进的存储软件? 从头开始做,就是都要自己做,而不是在开源软件上的基础上修改、包装。不是说开源软件不好,但这里更加强调要从头自己做起;第二,需要确保先进性,不是做一个比现有开源软件差的软件,而是要做得更好。 中国工程院院士、清华大学计算机系教授郑纬民发表主题演讲:应鼓励从头研发先进的存储系统软件 现在是时候!其中大概有几个原因: 第一,现有很多设计是基于传统硬件的,如机械硬盘,其随机访问性能差、延迟高,外存带宽比内存带宽要差两个数量级别。过去很多系统软件都是基于硬盘做的。
192 天前 / 箜道
背景 洛克王国是一款网页游戏,它是为孩子们设计的儿童魔幻社区。 百度搜索了下,洛克王国辅助关键字,第一个就是洛克王国旋风辅助 官方网站,并且网页上提示这辅助永久免费使用。又是开发辅助又搭建辅助官方网站的,这不都是需要时间成本和金钱吗,下面就分析下,这个辅助的实现原理、还有验证下是否真正都是免费的吗? 外挂基本信息 借助 Exeinfo PE 工具分析该游戏辅助的一些基本情况,从下图可以直观的看到,该游戏外挂的区段是标准的区段信息,并且展示外挂样本是基于 C++ 进行开发的,实际上该游戏辅助是用易语言开发的辅助软件...
197 天前 / CODING_DevOps
导语 12 月 9 日晚间,Apache Log4j 2 发现了远程代码执行漏洞,恶意使用者可以通过该漏洞在目标服务器上执行任意代码,危害极大。 腾讯安全第一时间将该漏洞收录至腾讯安全漏洞特征库中,CODING 制品扫描基于该漏洞特征库,对引用了受影响版本的 Log4j 2 制品进行了精准定位,并给出修复建议,同时可禁止下载含有该安全漏洞的制品,最大限度的减少漏洞蔓延。 Apache Log4j 2 漏洞详情 Apache Log4j 2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了丰富的特性,作为日志记录基础第三方库,被大量 Java 框架及应用使用。
198 天前 / 科创人专访
翟佳,StreamNative 联合创始人 Apache Pulsar 和 Apache BookKeeper PMC 成员,前 EMC 统一存储部门技术负责人,前 Streamlio 创始工程师。2020 年获选“中国开源先锋 33 人榜单”、2021 年荣获“OSCAR 尖峰开源人物”称号,开源技术布道者。 — 文 |babayage 编辑 | 笑笑 天生偏好底层原则和长期主义 初识开源,信奉价值为王 与翟佳稍有接触,就能感觉到一份发自内心的笃定、坚实,友人评价他“知行合一,相信底层原则和逻辑,并且信了就做”。