自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 Atom的安装及使用

一、Atom介绍Atom是github推出的开源,跨平台的编辑器。大量开发者,为其提供了多种功能插件。二、安装Atom及plantuml-toolkit插件1、安装Atom,下载链接:https://sourceforge.net/projects/atom.mirror/2、绘制UML交互图,需要安装的工具:在Atom菜单栏,File => Setting => Install,搜索"plantuml-toolkit",进行安装,安装完后,效果如下:注意:需要预

2020-09-05 09:39:30 3778

原创 我的软件架构之流程的杂谈

基于自己的实际工作流程,对功能(主要基于已有产品进行功能的扩展)的整个生命周期的梳理如下。欢迎大家分享自己的想法,一起学习交流。一、需求的出现 需求输入 新的需求,由需求负责人加入需求的Backlog中,定期有同步会议将需求指派到某个系统设计师。 这些需求主要来源于真实客户,或负责整理需求的团队根据市场情况分析得出。 注意点 ...

2020-02-26 11:29:38 491

原创 我的软件架构之初路的杂谈(二)

在转变成软件设计师角色之前,我一直认为软件架构师和系统设计师的角色和职责是一样的,只是不同语境下的不同叫法。在向系统设计这个角色扩展时,才感觉到或者说发现到两个我色是有差别的。软件架构师应该是偏向于软件的设计开发;系统设计师相对软件架构师而言在软件整个体系结构中应该更上层一点,关注的范围相对要宽广一点。 工作以来的岗位一直是软件开发工程师。多年工作过程中,大部分时间...

2020-02-25 15:56:58 2314

原创 初见软件架构

一、软件架构的定义 软件架构是开发项目和系统的蓝图,定义了必须由设计和实施团队执行的工作任务。架构是系统质量的主要载体,例如性能,可修改性和安全性,如果没有统一的架构愿景,这些都不能实现。架构是用于项目早期分析的工件,以确保设计方法将产生可接受的系统。通过构建有效的体系结构,我们可以识别设计风险并在开发过程的早期缓解它们。二、架构介绍的引子 对于开发人员来说,在...

2019-10-22 10:54:15 475

原创 我的软件架构之初路的杂谈(一)

作业一个软件从业人员,从大学时候就对“软件架构”这个词有所耳闻,也在断断续续地尝试学习它,希望自己成为一个技术方面的专家。无论是在大学,还是早期几年(确切的回忆话,应该是6年)的工作中,发现自己学习的理论并没有实际使用到工作中,也没能与已有工作的项目实践联系起来。总结起来,十年多的软件行业浸染,自己觉得自己在软件架构层面并没有真正的入门,似乎处于技术方向的瓶颈状态,很难突破。焦虑,似...

2019-10-18 17:37:50 268

原创 TCP连接的建立与终止

说明:内容主要参照自《UNIX网络编程卷1:套接字联网API(第3版)》的第二章节。理解connect、accept和close这3个函数并使用netstat程序调试TCP应用,必须了解TCP连接如何建立和终止,并掌握TCP状态转换图。一、三路握手:建立一个TCP连接时会发生下述情形:1、服务器必须准备好接受外来的连接。这通常通过调用socket、bind和listen这3个函...

2019-07-16 14:19:49 482

原创 C++的对象模型

说明:主要内容参照自Working Draft, Standard for Programming Language C++ - N4810的6.6.2 Object model小节。一、对象模型:在C++中,对象模型的构念(constructs)是创建,销毁,引用,访问和操作对象。下列情况会创建对象:定义(definition); new表达式(new-expression...

2019-06-03 11:10:53 516

原创 C++的内存模型

说明:主要内容参照自Working Draft, Standard for Programming Language C++ - N4810的6.6.1 Memory model小节。同时,一些概念的描述也参照了cppreference.com - memory_model。C++内存模型中的基本存储单元是字节。一、字节:字节是由连续的比特(bit)组成,其中比特的数量是...

2019-05-30 14:28:16 3499

原创 Redhat中,安装SQLCipher并添加到C++项目中

一、背景描述:当在一些小的项目中,需要用到数据库时,通常使用C语言库SQLite。但是它不提供加密功能,使项目产品的安全性存在风险。更多倾向于选择SQLCipher,它扩展了SQLite数据库库,增加了安全性增强功能。二、安装SQLCipher:1.从Github下载最新源码:git clone https://github.com/sqlcipher/sqlcipher.gi...

2019-05-05 15:57:00 891

原创 Unreal Engine 4,安装CodeWorksforAndroid时,下载组件失败的解决方法

一、问题背景:Unreal Engine 4将工程打包成Android安装包时,提示缺少必要的Android设置。参照官方的必需的Android设置安装CodeWorksforAndroid时,选择“Standard”模式进行安装,会有部分组件下载失败。二、问题原因:国内网络限制,以http://dl-ssl.google.com/开头的组件链接不能访问。三、解决方法:Go...

2019-03-06 17:58:20 7227 13

原创 基于Tomcat创建简单的Web应用

一、环境安装:1、JDK:Java Development Kit是Sun公司(已被Oracle收购)针对Java开发员的软件开发工具包。 从oracle官网下载最新的JDK版本(如,Java SE 14),选择Windows平台的jdk-14.0.1_windows-x64_bin.exe,进行下载和安装。2、Eclipse:从eclipse官网下载最新的IDE版本(如,Eclipse IDE 2020-03),选择Windows平台的版本,进行下载和安装。 选择“Eclipse .

2021-06-08 17:43:11 962

恰如其分的软件架构.风险驱动的设计方法(带书签)

《恰如其分的软件架构》的作者(George Fairbanks)在探讨比较多种架构风格的差异和利弊的基础上,结合自己的工作经验,提炼出通过风险驱动的软件架构设计方法,旨在弥补敏捷开发方法在实际工程应用中的不足。本书将理论与实践相结合,不仅条理清晰地描述了设计软件架设的各种思路,而且详细介绍了经过实践检验的建模方法和架构分析技巧。

2019-03-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除