中级软件设计师考试总结

news2024/11/26 18:33:12

目录

  • 前言
  • 考前学习
    • 宏观
      • 什么是软考
      • 涉及的知识范围
      • 软考整体导图总结
    • 微观
      • 我的分享——希尔排序
      • 学习过程
        • 结构化
        • 做题
  • 考试阶段
    • 确定
    • 不确定
  • 考后总结

前言

    作为一名中级软件设计师,考试是衡量自己技能和水平的一项重要指标。在备考和考试过程中,我通过总结经验和教训,在提高自己的同时,也为后来者提供一些参考。

考前学习

    下面对中级软件设计师的学习从宏观和微观两点来给大家讲解,请大家耐心观看。

宏观

什么是软考

    软考全称“计算机技术与软件专业技术资格(水平)考试”,由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试,设置了27个资格包括初级、中级、高级三个级别。本博主此次考的是软考下的中级软件设计师。

涉及的知识范围

    中级软件设计师整本书的内容可以用一个字来形容——“广”,他涵盖了计算机专业的所有专业科目,包括《计算机网络原理》、《操作系统概论》、《数据库系统原理》、《数据结构导论》、《信息系统开发与管理》、《管理经济学》、《C++程序设计》等。在考此证书前,你需要有计算机专业的基本能力。

软考整体导图总结

在这里插入图片描述

微观

我的分享——希尔排序

    希尔排序(Shell’s Sort)是插入排序的一种,是插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因 D.L.Shell 于 1959 年提出而得名。——百度百科
    插入排序性能低的原因分析:插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位。
    希尔排序的思想逻辑:

  1. 先分组:找到一个间隔,每隔一定的间隔把这些元素排成一组(在希尔排序当中对间隔没有明确的要求,可以任意找间隔,通常会取总长度的一半)
  2. 对组内元素进行插入排序
  3. 重新设置间隔、分组,在原来的间隔基础之上减半
  4. 组内元素排序
  5. 直到间隔为1,间隔为1以为着所有的元素为一组,此时进行最后一次组内排序
    代码实现:
public class ShellSort {
    public static void main(String[] args){
        int[] array={3,5,9,2,4,7};
        System.out.println("排序之前:");
        for(int i=0;i<array.length;i++){
            System.out.print(array[i]+" ");
        }
        //希尔排序
        int[] arraySort = shellSort(array);

        System.out.println("\n排序之后:");
        for(int i=0;i<arraySort.length;i++){
            System.out.print(arraySort[i]+" ");
        }
    }

    public static int[] shellSort(int[] arr){
        //1.先定义间隙大小 第一次分组一般是数组长度的一半
        int step= arr.length/2;
        //2.直到间隙为1时结束循环
        while (true) {
            //我想要干什么?怎么干?
            for(int start=0;start<step;start++){
                quickSort(arr, step, start);
            }
            //间隙减半,两种情况——偶数、奇数
            if(step%2==0){
                step=step/2;
            }else {
                if(step !=1){
                    step=step/2+1;
                }else{
                    break;
                }
            }
        }
        return arr;
    }
/*
     * @Author:ET_momo
     * CreateTime: 2023/4/26 9:01
     * @param: arr是int类型的数组,要进行排序的数组;step是间隙;start是起始索引。
     * @return: 排好序的
*/

    public static void quickSort(int[] arr,int step,int start){
        //2.外循环:遍历索引为位置的元素进行排序 i代表待插入元素的索引
        for (int i = start; i < arr.length; i+=step) {
            //3.内循环:相邻的两个数进行比较,左边数(j)大于右边数(j+1)才进行交换。 j是已排序区域的元素索引
            for(int j=i-step;j>=0;j-=step){
                //判断左边数是否大于右边数
                if(arr[j]>arr[j+step]){
                    //定义一个int类型的变量暂时存放数据
                    int temp=arr[j];
                    arr[j]=arr[j+step];
                    arr[j+step]=temp;
                }
            }
        }
    }
}

学习过程

结构化

    按照整体的软考计划,制定自己每周的计划,每天以PDCA的形式来对自己的学习内容进行归纳总结和提升。
    知识分类总结:
一、系统开发基础
1.1.以多维度表格的形式总结了软件开发模型,如下图所示:
在这里插入图片描述
1.2.系统测试中的白盒测试的几种测试方法容易混淆,也做了二维表上的区分,如下图所示:
在这里插入图片描述二、面向对象技术
    23种设计模式三种分类:创建型、结构型和行为型,每种类型的设计模式都有不同的目标和应用场景。创建型模式关注对象的创建过程,它们提供了一种更灵活的方法来创建对象,从而降低了对象之间的耦合性;结构型模式关注对象之间的组合,旨在提供一种更灵活的方法来设计软件结构;行为型模式关注对象之间的通信,旨在提供一种更灵活的方法来实现对象间的交互。
    三个类型模式的具体分类:

  1. 创建型模式(公园丑单狗)为工厂方法模式、原型模式、抽象工厂模式、单例模式、构建器模式。
  2. 结构型模式(石桥组装外箱带)有适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式。
  3. 行为型模式:模板方法模式、解释器模式、职责链模式、命令模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、访问者模式。
        这一块我们做的结构化是模式的首个字编一句比较容易理解的话,创建型的是公园里面有只丑的单身狗;结构型的是用石头组装的桥用外卖箱带走;其余十一个是行为型模式。
    三、数据结构
        对常见的七种排序的时间复杂度、空间复杂度和稳定性做了结构化:
        时间复杂度:看了七种类型的时间复杂度后,发现选择排序的两种排序直接选择和堆排序,归并排序,他们分别最好、最坏和平均的时间复杂度都是一样的,共享的是同一个值,所以从共享和共享的首字母g、x能想到归并和选择。那他们三个的区别是共享和堆排序是nlogn,那用到什么算法的排序是nlogn呢,在这儿我们发现了归并排序和快速排序的算法思想是分治法,而堆排序用到的是树,所以我们可以得出用到了分治法和树形的排序,他们的时间复杂度是nlogn;冒泡、直接插入和希尔排序他们在数组基本有序的情况下,只需要执行n次逻辑代码。空间复杂度:找到的共性是大部分都是O(1),只有两个比较特殊,一个是归并,一个是快排,排序我们之前都互相分享过,结合到具体的人来做的结构化;稳定性:口令快选希堆不稳定,其余稳定。
    在这里插入图片描述

做题

    现在的做题软件(希赛软考助手)设计的真的很贴合人们的需求,首先映入眼帘的是你的做题数,甚至还给标识了正确题数和正确率,这是给我们的做完题后的反馈,看着正确率不断的提升,让我们得成长看得见;其次是分类展示,可以选择真题训练,也可专项训练,错题训练,为用户考虑,为用户着想,全心全意为人民服务
在这里插入图片描述
    在做题过程中,一部分是识记的知识点,这部分的题在做题过程中如果不明确的话,去查书做结构化,不仅要会做当前的题,还要把相关的一部分知识学会,这样学起来不会像是一盘散沙,容易丢失,而是一张知识网,牵一发而动全身;一部分是关于计算的题,这部分首先要将计算题的基础知识掌握了,然后再研究如何思路,我们组不会的题会先往群里发,谁会谁去解答,或者是直接去问,梦杰这边做真题做到了2013年的,遇到了很多没有遇见的问题,我会去主动学习,看课本、看视频,学会了之后将此计算题讲给他人听,最后我对这道题的印象尤其深刻,不易忘记,教是最好的学
在这里插入图片描述
在这里插入图片描述

考试阶段

    在考试过程中,我也把题分为了两类,一类是我确定能做对的,一类是我不确定能不能对的。

确定

    确定能做对的题型大多数都是我们小组一起做过结构化的、我给其他人讲过的知识,我一想到可能其他人会因为听我讲过,而得到这个分数,我就莫名的开心,而我自己也确保这个分数能拿到,就更加开心。
    当我在考前遇到不会的知识点越多,我越高兴,当不会的知识结构化后或者是经过讨论后,我掌握了此知识,那我在考试中再遇见他,就迎刃而解,不费吹灰之力的拿到分数,乐栽乐哉!

不确定

    这一部分大多是关于识记的知识点,在学习这一类的知识时没有理解,就往下进行,导致当他换一种方式出题就不会做了,学习的不到位,才会出现这种情况;还有一个题型是让画无向图的邻接表,这个是让我感到最遗憾的,没拿到分数的题,我在看数据结构那一章树和图的知识点时,认为之前自考考过了,分数也挺高的,简单到没必要再次学习,因为这个心态,让我惨失五分。我需要对我所面临的所有事情持敬重的态度,不轻敌,认真对待每件事情,每个知识
在这里插入图片描述

考后总结

    制定月计划、周计划、每日的PDCA、小组学习、知识做结构化(思维导图)、讲给别人、费斯汀格法则,是我迎接下一个考试还要继续延续的学习方法,甚至在我以后任何知识的学习过程中也要延续的学习方法,这些对我很重要!认为自己会了,不需要再次学习的这种傲慢心态、容易得过且过的心态要避之远之!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/585649.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【TI毫米波雷达笔记】IWR6843AOPEVM-G的DCA1000EVM模式配置及避坑(官方手册有误)

【TI毫米波雷达笔记】IWR6843AOPEVM-G的DCA1000EVM模式配置及避坑&#xff08;官方手册有误&#xff09; IWR6843AOPEVM-G版本可以直接与DCA1000EVM连接 进行数据获取 不需要连接MMWAVEICBOOST版 直接使用 DCA1000mmWave Studio 软件进行数据采集 在官方手册中 User’s Guide…

linux环境下安装gitlab

前几天跟朋友聊天时说到gitlab版本控制。其实&#xff0c;之前也对它只是知道有这个东西&#xff0c;也会用。只是对于它的安装和配置&#xff0c;那我还是没整过。这两天&#xff0c;我找了一下网上的资料&#xff0c;还是写下吧。 一安装&#xff1a; 按网上所说&#xff0c;…

2023年上半年信息系统项目管理师下午真题及答案解析

试题一(25分) 为实现空气质量的精细化治理&#xff0c;某市规划了智慧环保项目。该项目涉及网格化监测、应急管理、执法系统等多个子系统。作为总集成商&#xff0c;A公司非常重视&#xff0c;委派李经理任项目经理&#xff0c;对公司内研发部门与项目相关的各产品线研发人员及…

带你开发一个远程控制项目---->STM32+标准库+阿里云平台+传感器模块+远程显示-------之 阿里云平台项目建造。

第一篇章&#xff1a; (13条消息) 带你开发一个远程控制项目----&#xff1e;STM32标准库阿里云平台传感器模块远程显示。_海口飞鹏岛科技有限公司的博客-CSDN博客 本次文章是指引开发者进行开发阿里云平台建造设备项目&#xff0c;可观看UP主教程&#xff0c;完成如下&#x…

今天面了一个9个月测试经验的人,开口就跟我要18K,我都愣住了....

2月初我入职了深圳某家创业公司&#xff0c;刚入职还是很兴奋的&#xff0c;到公司一看我傻了&#xff0c;公司除了我一个测试&#xff0c;公司的开发人员就只有3个前端2个后端还有2个UI&#xff0c;在粗略了解公司的业务后才发现是一个从零开始的项目&#xff0c;目前啥都没有…

测试之路,你知道这些变化吗?突破后助你走得更远...

前言 Python自动化测试&#xff1a;7天练完这60个实战项目&#xff0c;年薪过35w。 目前的面试求职市场上&#xff0c;测试领域有哪些变化&#xff1f; 以这两年软件测试发展经历来看&#xff0c;现在的求职市场&#xff0c;已经不仅仅只考察个人的项目经验和技术能力了&#…

十五、多线程(上)

文章目录 一、线程&#xff08;一&#xff09;什么是线程&#xff08;二&#xff09;Linux下的多线程&#xff08;三&#xff09;总结&#xff08;四&#xff09;线程优点&#xff08;五&#xff09;线程缺点&#xff08;六&#xff09;线程异常&#xff08;七&#xff09;线程…

字节跳动测试开发岗 3+1 面经+经验分享(收到offer,入职月薪27K)

现在&#xff0c;招聘黄金时间已经过了&#xff0c;在网上看了很多大佬的面经&#xff0c;也加了很多交流群&#xff0c;受到了很多朋友的提点&#xff0c;今天终于轮到我来分享面经啦&#xff0c;之前面试了几家公司&#xff0c;最后在八月初拿到了字节跳动测试岗的 offer&…

数据结构 -- AVL树

1、定义 平衡搜索二叉树&#xff0c;相对于搜索二叉树而言&#xff0c;AVL树又多了一个性质&#xff1a;左右子树的高度差不大于1. 2、平衡因子&#xff0c;balance factor&#xff0c;以下简称bf&#xff0c;是左子树高度减去右子树的高度 bf > 1&#xff0c;左边子树高bf …

Java最新版发送阿里短信教程

一、概述&#xff1a; 为什么现在的企业越来越多使用阿里云短信服务&#xff0c;究其原因是阿里云短信服务是一种可靠、高效、安全的短信发送服务&#xff0c;它具有以下优点&#xff1a; 高可靠性&#xff1a;阿里云短信服务采用全球领先的短信网关进行短信发送&#xff0c;确…

自定义线程池

自定义线程池原理 线程池中分为核心线程和临时线程&#xff1b;首先创建核心线程使用&#xff0c;创建之后一直存在线程池&#xff0c;核心线程被占用并且队列任务已满&#xff0c;才会创建临时线程&#xff1b;临时线程使用超过自定义临时线程最大数时会触发自定义的任务拒绝策…

你猜,一个TCP连接能发多少HTTP请求?

又见面了&#xff0c;我的网工朋友 曾经有这么一道经典面试题&#xff1a;从 URL 在浏览器被被输入到页面展现的过程中发生了什么&#xff1f; 相信大多数准备过的同学都能回答出来&#xff0c;但是如果继续问&#xff1a; 收到的 HTML 如果包含几十个图片标签&#xff0c;这…

【Vue】学习笔记-slot插槽

slot插槽 <slot>插槽&#xff1a;让父组件可以向子组件指定位置插入html结构&#xff0c;也是一种组件间通信的方式&#xff0c;适用于父组件>子组件 分类&#xff1a;默认插槽、具名插槽、作用域插槽 使用方式 a.默认插槽 b.具名插槽 父组件指明放入子组件的哪个插…

Django从Models 10分钟定制一个Admin后台

简介 Django自带一个Admin后台, 支持用户创建,权限配置和所有模型的增删改查功能, 只需要一些简单的配置就可快速得到一个开箱可用的后台管理系统 操作步骤 1. 更改设置,使用中文/亚洲时区 修改项目下django_shop目录下的settings.py文件 修改以下三行 LANGUAGE_CODE zh-h…

深度学习AI编译器-LLVM简介

1、什么是LLVM LLVM是一个编译器框架。LLVM作为编译器框架&#xff0c;是需要各种功能模块支撑起来的&#xff0c;你可以将clang和lld都看做是LLVM的组成部分&#xff0c;框架的意思是&#xff0c;你可以基于LLVM提供的功能开发自己的模块&#xff0c;并集成在LLVM系统上&…

干货 | 出国留学申请必备的6种材料,速来!!!

Hello,大家好&#xff01; 这里是壹脑云科研圈&#xff0c;我是喵君姐姐~ 我们又见面啦~你还好吗&#xff1f; 这是喵君姐姐的第n篇诚意推送~ 01 为什么要留学&#xff1f; 想去看外面的世界&#xff1f;想要打破科研的壁垒&#xff1f;想去更好的平台提升自己&#xff1f…

Android进阶之路 - 存、取、读 本地 Json 文件

最近在开发中又开始加载一些本地的json数据源&#xff0c;回头看之前竟然没记录&#xff0c;赶紧记录一波 ~ 如何准备一个合格的json文件?AndoridStudio中如何存放json文件&#xff1f;如何读取本地Json文件数据源?Java 版本Kotlin 版本 如何准备一个合格的json文件? 准备一…

GPT模型结合Python-GEE遥感云大数据分析、管理与可视化技术

查看原文>>>GPT模型支持下的Python-GEE遥感云大数据分析、管理与可视化技术及多领域案例应用 目录 第一章、理论基础 第二章、开发环境搭建 第三章、遥感大数据处理基础与ChatGPT等AI模型交互 第四章、典型案例操作实践 第五章、输入输出及数据资产高效管理 第…

dvwa靶场通关(三)

第三关&#xff1a;CSRF&#xff08;跨站请求伪造&#xff09; csrf跨站请求伪造&#xff1a;是一种对网站的恶意利用。尽管听起来像跨站脚本&#xff0c;但它与xss非常不同&#xff0c;xss利用站点内受信任用户&#xff0c;而csrf则通过伪造来自受信任用户的请求来利用受信任…

Springboot +spring security,认证方式---Form表单认证的实现(二)

一.简介 这篇文章来学习下security的认证方式其中的Form表单认证 二.Spring Security的认证方式 2.1什么是认证 认证: 就是用来判断系统中是否存在某用户&#xff0c;并判断该用户的身份是否合法的过程&#xff0c;解决的其实是用户登录的问题。认证的存在&#xff0c;是为…