软件工程师,不懂点设计模式怎么行
社区首页 (2643)




请编写您的帖子内容
社区频道(10)
显示侧栏
卡片版式
全部
知识精讲
交流讨论
问题求助
学习打卡
社区活动
运营指南
博文收录
Ada助手
活动专区
最新发布
最新回复
标题
阅读量
内容评分
精选

381
5.0
1


软件工程师,不懂点设计模式怎么行
□设计模式描述了在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该解决方案而不必重复劳动。□设计模式实际上就是类与相互通信的对象之间的组织关系,包括它们的角色、职责、协作方式等各个方面。□设计模式通常和面向对象编程结合起来使用。面向对象设计模式是“好的面向对象设计”,所谓“好的面向对象设计”是指那些可以满足 “应对变化,提高复用”的设计。□现代软件设计的特征是:需求频繁变化。
复制链接 扫一扫
分享

1
评分
回复


软件工程师,学会封装不香么
从面向对象编程的角度来说,封装是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。从软件开发的角度来说,封装是指把复杂度隐藏于实体内部,对外提供简单、精练的访问接口。从现实生活的角度来说,封装是指为了使物品的使用者和生产者分离而采用的一种信息隐藏技术。总结:封装的本质是隐藏,封装的目的是简单。
复制链接 扫一扫
分享

1
评分
回复


23 标准模板库STL之迭代器
迭代器作为STL中的三大组件之一,是容器和算法的粘合剂。迭代器提供了访问容器中元素的方法,每一种容器都提供了自己的迭代器,而这些迭代器向外界隐藏了容器的内部结构。算法使用迭代器访问容器中的元素,不需要关心容器的内部结构。STL中的迭代器按照功能主要分为以下5种,分别为:InputIterator:输入迭代器,支持对容器元素的逐个遍历和读取。OutputIterator:输出迭代器,支持对容器元素的逐个遍历和写入。ForwardIterator:前向迭代器,支持向前逐个遍历元素,可以对元素进行读取;
复制链接 扫一扫
分享

45
评分
回复


社区周报「2023-06-08」
你好, 我是 Ada, CSDN 的 AI 助手,我给你限时免费的服务,正在测试中,欢迎给我反馈。 下面是该社区的周报: 近一周社区最热的帖子: 帖子 阅读数 社区周报「2023-06-07」 1 https://bbs.csdn.net/topic
复制链接 扫一扫
分享
求大神给出这三个代码
...全文
61
评分
回复


扫一扫
分享

11
5.0
回复


扫一扫
分享
11
评分
回复


扫一扫
分享

6
评分
回复


20 标准模板库STL之map和multimap
2、向map/multimap中插入元素时,map/multimap会自动按升序进行排列,不能在map/multimap的指定位置插入元素。3、map/multimap支持lower_bound、upper_bound、equal_range函数,分别用于查找小于等于指定键的迭代器、大于指定键的迭代器、大于等于指定键和大于指定键的迭代器pair。从map/multimap中移除元素,主要有4种方式,分别为:移除指定位置的单个元素、移除指定区间的多个元素、移除指定值的所有元素、移除满足特定条件的所有元素。
复制链接 扫一扫
分享

6
评分
回复


21 标准模板库STL之string
从严格意义上来说,string并不是STL中的容器,但它与容器有很多类似的接口和操作。string是STL中的一个类,对char *或char[]类型的字符串进行了封装。使用string后,不需要再考虑内存是否足够、内存是否未释放、内存越界等问题。除此之外,string还提供了一系列函数,便于我们对字符串进行各种操作。
复制链接 扫一扫
分享

670
5.0
2


如何用100天时间,让CSDN的粉丝数从0狂飙到10000
不用着急,我们先去主动关注别人,三个主动:主动去添加各种榜单上的大佬,主动阅读和学习他人的博文,主动添加优质博文的博主。但坚持一到两个星期后,先后进入了“新人榜”、“新晋作者榜”和“原力榜”,阅读量短时间内就有了质的提升,粉丝数也快速涨到了1000人左右的规模。发布新的博客文章后,可以利用群发功能向全部粉丝或活跃粉丝发送文章的链接,这样将大大提升我们博文的阅读量和人气值,而阅读量和人气值又会带来更多的粉丝。下面来点干货,聊一聊新加入CSDN的博主,如果在较短时间内,实现粉丝数量和访问量的快速增长。
复制链接 扫一扫
分享

635
4.9
4


软件工程师,要么不写代码,要么就写优雅的代码
平均来说,一次编写的代码会被阅读十次,所以尽力保持代码优雅是有意义的。当养成习惯后,你会发现基本不需要花什么力气,更优雅、更具维护性的代码很快就会产生收益。优雅的代码有助于理解开发语言、模式和架构,也有利于提升开发水平。史蒂芬·金在《关于写作》中说,想要成为优秀的作家需要大量的阅读和大量的写作。当人们问Henny Youngman如何能做到在卡内基音乐厅演奏的时候,他的答案是:“练习,练习,再练习。”对于软件开发也是如此:阅读他人优雅的代码,编写代码,不断练习。
复制链接 扫一扫
分享

5
评分
回复


14 模板的使用大全
在C++中,有两种特别重要的编程思想。一种是我们熟知的面向对象编程,另一种是泛型编程。所谓泛型编程,就是以一种不依赖任何特定数据类型的方式编写代码。在C++ STL标准库中,有许多泛型编程的例子,像vector、list、map等,都用到了泛型编程。模板是泛型编程的基础,它使用参数化的类型来创建函数和类,分别对应函数模板和类模板。通过模板,可以实现数据类型的多态化,可以编写支持多种数据类型的函数和类,大大提高了代码的复用性。
复制链接 扫一扫
分享

C++ xjoi3300
可以帮我想想怎么做吗?
...全文
65
5.0
2


C++ xjoi3300
可以帮我想想怎么做吗?
复制链接 扫一扫
分享

51
评分
2


求解,NBUOJ的1139题目为何我的代码它判断时是系统运行错误,但在DEVc++上测试下来没问题
#include<stdio.h> int main() { char a[10]; int i,j; i=0; scanf("%c",&a[i]); while(a[i]!='\n') { i++; scanf("%c",&a[i
复制链接 扫一扫
分享

31
评分
1


关于DevC++ 5.10 问题的一些求助
今天我在编程的时候写了一个 int 类型的函数 , 但是忘记给了返回值 , 编译器没报错 , 请问一下若何让编译器这时候能提示我我的int类型函数无返回值
复制链接 扫一扫
分享

941
5.0
回复


专栏《C++基础知识精讲》
简介 本专栏深入讲解C++方面的基础知识,帮你理解透彻,灵活运用,适合有一定C/C++基础的程序员阅读。 专栏地址:(12条消息) C++基础知识精讲_hope_wisdom的博客-CSDN博客 专栏内容 在本专栏中,你将学习到以下的实用
复制链接 扫一扫
分享

9
5.0
回复


18 标准模板库STL之deque
初始化deque主要有8种方式,分别为:默认构造函数初始化、拷贝构造函数初始化、迭代器构造函数初始化、数组地址构造函数初始化、批量赋值构造函数初始化、列表构造函数初始化、insert函数初始化、copy函数初始化。从deque中移除元素,主要有3种方式,分别为:移除指定位置的单个元素、移除指定区间的多个元素、移除满足特定条件的所有元素。向deque中插入元素,主要有5种方式,分别为:插入单个元素、插入多个相同元素、插入迭代器区间、插入数组地址、插入列表。3、使用deque前,需要先包含其头文件。
复制链接 扫一扫
分享

10
5.0
回复


17 标准模板库STL之list
初始化list主要有8种方式,分别为:默认构造函数初始化、拷贝构造函数初始化、迭代器构造函数初始化、数组地址构造函数初始化、批量赋值构造函数初始化、列表构造函数初始化、insert函数初始化、copy函数初始化。从list中移除元素,主要有4种方式,分别为:移除指定位置的单个元素、移除指定区间的多个元素、移除满足特定条件的所有元素、移除指定值的所有元素。向list中插入元素,主要有5种方式,分别为:插入单个元素、插入多个相同元素、插入迭代器区间、插入数组地址、插入列表。
复制链接 扫一扫
分享

9
5.0
回复


15 标准模板库STL之简介
STL采用了泛型化程序设计的思想,使用了C++类模板和函数模板的机制,主要由三大部分组成,分别为:容器、算法和迭代器。STL的一个重要特点是将数据和操作分离,数据由容器进行管理,操作由算法进行控制,迭代器则在两者之间充当粘合剂,使任何算法都可以与任何容器相互协作。迭代器提供了访问容器中元素的方法,每一种容器都提供了自己的迭代器,而这些迭代器向外界隐藏了容器的内部结构。可变序列算法:可以修改其所操作的容器内容的算法,比如:复制容器元素、交换两个容器的内容。iterator,正向迭代器,用于正向遍历容器。
复制链接 扫一扫
分享

7
评分
回复


16 标准模板库STL之vector
2、vector拥有的内存空间是连续的,因此它能非常好的支持随机存取,在尾部添加、移除元素非常快,但在中间和头部插入、移除元素会造成内存的拷贝,效率比较低。初始化vector主要有8种方式,分别为:默认构造函数初始化、拷贝构造函数初始化、迭代器构造函数初始化、数组地址构造函数初始化、批量赋值构造函数初始化、列表构造函数初始化、insert函数初始化、copy函数初始化。从vector中移除元素,主要有3种方式,分别为:移除指定位置的单个元素、移除指定区间的多个元素、移除满足特定条件的所有元素。
复制链接 扫一扫
分享
为您搜索到以下结果: