精华内容
下载资源
问答
  • 常见的提问方式有哪些
    千次阅读
    2022-05-01 21:07:11

    在一些大一些且相对正规的互联网企业,每年都会有一到两次的晋级答辩,在晋级答辩的过程中,台上要晋级的同学努力准备好 PPT ,希望在有限的时间内能说明通道评委能相信自己所说,能认可自己是一个和晋级标准能力对应的同学。而台下的评委,则从 PPT 中,从提问过程中确认台上的同学是否符合自己认知范围内某个级别的标准,给出相对客观公平的分数,最后得出一个晋级与否的结果。当然「无利不起早」,一般过了级的同学在加薪以及组织范围内的重要程度会有所提升和偏重。

    但是今天我们不聊如何晋级答辩,我们来看看作为一个评委来如何提问。

    有人说:「世界上最难的事有两件,一是把自己的思想装进别人的脑袋,二是把别人的钱装进自己的口袋。」

    作为一个评委如何提出问题,找到对方想要告诉你的观点/论点以及相应的论据,并评估其准确性,并规避掉大多数的陷阱,这是一个批判思考的过程。

    那么我们如何能系统的提出问题,了解到自己想要的信息,或达到自己的目的?

    当别人想把思考装进我们的脑袋时,他一般会提出一个问题,并引出一个论点,针对这个论点提供一些论据来佐证,以让你相信他。

    首先我们对对方表述的内容做一个结构化的梳理,大概的结构如下:

    问题:
    结论:
    理由:

    结论是晋级者在晋级述职时在 PPT 或表述时要传达给评委的多个观点,是晋级者想让评委相信的内容

    评委心声:他想让我相信什么 / 他想表述的观点是什么

    结论就是一个个观点,这些观点需要其他观点和证据来进行支撑。没有证据支撑的断言,不能称为结论,而只能称为纯观点。

    评委心声:你为什么会有这个结论,这个结论是从哪里来的,有没有什么可量化的数据支撑

    一般来说,评委大多数都会基于晋级者客观的表现和自我的认知来打分,而晋级者的水平参差不齐,为了不错过那些确实有能力,但是在表达方面有所不足的同学,需要提问得到自己想要的信息。

    在晋级同学讲完后,评委一般会基于 PPT 内容来提问,以确认其表述的准确性或希望晋级者能有更好一些的回答表现来证明有自己的做事逻辑和方法论,以确认有类似的问题也能解决,是能力达到了的表现。

    晋级答辩对于晋级者和评委来说都是一个考验,晋级者尽可能多的把自己的能力展现出来,而评委尽可能公平公正的评判。
    晋级对于评委来说,是工作,也是考试,整个过程相当于连续 N 场的考试,考核评委看人识人的水平,而在这个过程中,评委可能通过倾听晋级者的讲述得到一个初步的评价,同时通过提问来佐证自己的判断,以下是关于评委提问的常见逻辑,其主要出发点并不是为难晋级者,而是想通过提问找到能佐证晋级者能力的项,以做到相对公平。

    1. 问定义

    在晋级者讲述时经常会有一些模糊指向的词,而这些词在晋级者平常工作中经常遇到,以为评委知道,然而评委第一次接触并不了解。特别是一些表义比较泛的词语,在不同的语境都有着不同的含义,比如“架构”这个词,不同的人在不同的时期,在不同的场景对它的定义就不同。所以评委会在晋级者表述观点中有一些模糊性指向的词语的时候,或者存在意思不明确 / 有歧义的情况时候,做出提问。

    比如在我们晋级中常常会说:做了服务性能优化,接口速度快了很多
    这里评委可能会问:

    • 这里的服务是指什么服务?
    • 这里的性能是指什么?
    • 优化是做了什么操作
    • 快了很多是多少?从多少提升到多少?如何量化的?

    服务和性能等词语都是比较泛的,比如性能可能是查询的性能或者写入的性能,并且不同的性能其对应的优化方案完全不一样,有些是技术点的优化,有些可能是整个架构的调整。

    晋级提示: 精准用词,减少歧义

    2. 问过程

    一个事情只有有了好的过程,才会有好的结果,并且没有好的过程的好结果是不可重复的。
    对过程提问主要是想了解并确认晋升的同学在项目中的扮演的角色,具体的工作,发挥的作用,以及对项目的掌握度。
    特别是一些在 PPT 或者讲述的时间有些信息没有讲清楚的同学,评委此时需要通过提问的方式来把这个项目信息补充完整。常常通过以下的维度来提出问题:

    2.1 背景原因

    • 为什么要做这个方案 / 系统?背后的思考是什么
    • 这个项目要解决的核心痛点是什么?
    • 为什么是你来做这个?
    • 你在项目中的角色是什么?
    • 在项目执行过程你个人的价值如何体现的?

    2.2 技术细节

    • 某个技术点是如何实现的,讲一下细节?
    • XXX 模块为什么要这样设计?有没有更好的方案?
    • 这里为什么要用 XXX 缓存?为什么要使用这样的缓存设计?可以不用缓存吗?
    • 业务领域为什么要这样划分?当时的思考是怎样的?
    • 这里为什么要用 XXX 协议?如果换成 YYY 协议会怎样?

    2.3 方案风险

    • 做方案时有没有参考业界的方案,是哪些方案,方案的优劣是怎样的?
    • 为何选择当前这个方案?
    • 在评估方案时,考量的维度有哪些,为什么是这些维度?各维度的权重如何?
    • 对当前有进行全面的风险分析吗?分析结果是什么?
    • 如果分析出来的风险发生,如何应对?

    2.4 数据指标

    • 为什么要用 XXX 指标?背后的逻辑是什么?
    • 这个项目产生的可量化的效果数据是怎样的?当初的预期是怎样的?达成情况如何?
    • 项目开始时定的目标是 3 倍,为什么这里是 3 倍而不是 5 倍 10 倍,有什么依据?
    • 这些数据是如何得出来的?
    • 为什么这里的提升是 30%?能不能到 50% ?如果要到 50% ,需要做什么?为什么当时不做?

    晋级提示: 科学决策方案、可量化数据、能重复过程

    3. 问难度

    不同的级别对于难度的要求不一样,难度这个项能在一定程度上区分是否满足某个级别的要求。
    在答辩过程中评委可能会针对相应的级别提出一些有难度的问题,这里的难度不局限于某个技术难点,可能是某些行业内最新的动态,或者某个经典策略/方案/架构,或者最新的架构/语言/范式等等,比如:

    1. 项目中你觉得最难的点是什么? 为什么这个才是最难的?
    2. 可以谈一下你对现在业界比较流行的 XXX 的看法吗?
    3. 你对业界现在最热的 XXX 怎么看?为什么没有用到你这个项目里面来?

    晋级提示: 有难度才有区分度

    4. 问大局观

    在高阶一些的级别中,对于事情的大局观是一个比较看重的项。
    这里的大局观是指从宏观角度看问题,分析问题,从更大的整体来解决问题,实现技术价值的全局最大化,而不仅仅是局限于自己的一亩三分地。常见问题如下:

    • 你所在项目的上下游是哪些?整个链路是如何联接的?
    • 在这个项目上你有影响产品经理什么吗?如果有的话,是哪些?如何影响的?
    • 你对项目最大的影响/改变是什么?当时是如何思考的?

    晋级提示: 大局观决定了高度,尽在掌握

    5. 问方法论

    思考和总结是高阶一些的级别需要特别体现的内容,一般会落地成方法论,表示这个项目我这次能做成,下一次还能做成,有自己做事的节奏和方法。比如你讲某个地方的优化使用了缓存,此时需要对于缓存使用有自己的方法论,对于缓存其适用场景,优劣势,原理都尽在掌握,下次遇到类似的问题还可以解决,而且可能还是不同的方案,但是做事的方法和逻辑一样。

    • 从这个项目你学到了什么?你最大的收获是什么?
    • 如果还有 XXX 项目,你会怎样做?
    • 你做 XXX 决定的逻辑框架是什么?
    • XXX 背后的思考是什么?

    晋级提示: 持续的成功才是能力

    6. 问业务价值

    技术最终还是服务于业务产生价值,而在晋级中如何把在做的东西的业务价值体现出来,也是要着重思考的。
    如果你在讲述过程中没有提起或者提得不那么明显或清晰,那么评委可能会就此提问,可能的问题如下:

    • 这个项目的用户是哪些人?他为用户带来了什么?
    • 如何衡量你这个项目的价值?项目价值衡量的维度是否合理?
    • 从公司层面(部门/某个大一些的组织)看,你认为这个项目贡献情况如何?
    • 你当前组织的业务目标是什么?你这个项目是如何服务于这个业务目标的?如果没有这个项目业务目标会怎么样?

    晋级提示: 将技术与业务价值和公司(部门)目标关联上

    7. 问学习成长

    • 你在 PPT 上有讲架构能力有所欠缺,你打算如何提升这方面的能力?
    • 你有提到持续学习,你将如何持续学习,学习什么,有什么计划,预计会有什么样的收益?
    • 想象一下,一年后的你是怎样的?三年呢?五年呢?

    晋级提示: 学习能力是必备能力之一

    8. 技术晋级常见问题

    以下是两个常见的问题集

    8.1 性能优化

    做了 XXX 优化,性能提升了很多

    • 为什么要做这个优化?做这个优化的出发点是什么?
    • 这里的性能是指什么?
    • 提升了很多是多少?从多少提升到多少?如何量化的?
    • 性能提升后对用户有什么影响?有什么业务价值?
    • 在系统中还有类似的性能问题吗?有没有系统思考过产生这个问题的原因?
    • 从研发流程或研发制度上有没有可以优化的点来规避这些性能问题?

    8.2 信息系统

    做了一个系统

    • 为什么要做这个系统?做这个系统的初心是什么?
    • 能解决什么问题,能带来什么效果
    • 能给公司带来什么价值?如何衡量这个价值?
    • 带来的这些价值如何服务于公司级的业务目标?
    • 系统的架构是怎样的?
    • 系统设计的时候有没有参考业界的方案?
    • 当时做方案选型的时候是如何评估的,重点是考察了哪些点?为什么要考察这些点,当时的思考是什么?
    • 你在这个系统过程中扮演的是什么角色?
    • 系统的优势和不足在哪里?
    • 这个系统下一步如何发展

    9. 后记

    晋级对于我们来说意味着「升职加薪」,意味着我们的能力、知识、技能等得到某种官方的认可。
    同时也意味着将来要承担更多的责任,也会被更多的期待。

    晋级并不是结束,而是下一个开始。

    最后,今天是五一劳动节,祝大家节日快乐。

    你好,我是潘锦,超过 10 年的研发管理和技术架构经历,出过书,创过业,带过百人团队,也在腾讯,A 股上市公司呆过一些年头,现在在一家 C 轮的公司负责一些技术方面的管理工作。早年做过 NOI 和 ACM,对前端架构、跨端、后端架构、云原生、DevOps 等技术始终保持着浓厚的兴趣,平时喜欢读书、思考,终身学习实践者,欢迎一起交流学习。微信公众号:架构和远方,博客: www.phppan.com

    更多相关内容
  • webpack常见提问

    千次阅读 多人点赞 2020-09-27 10:00:19
    合理缓存 hash 每打包一次都改变 contentHash 内容改变就改变 chunkHash 当入口chunk方式改变就改变 treeShake 不需要的组件自动删除 按需加载 - @babel/plugin-transform-runtime//按需加载 5 webpack plugin与...

    1 不用vue的脚手架可以搭建项目吗?

    -可以

    • css,HTML的处理正常流程
    • 用到es6 采用babel
    • vue-loder 加载vue文件
    • vue-template-compiler 编译模板文件
    • vue-style-loader 加载vue样式
    • babel 配置运行环境与插件“presets”:["@babel/preset-env"]

    2 使用webpack如何实现测试环境与生产环境的配置

    • package.json的script属性传递参数,运行不同的命令传递不同的参数
    • cross-evn 插件传递参数,
    • 前后端都可以通过process-env.NODE_ENV在配置文件和项目中获取
    • 通过参数加载不同的配置文件,在webpack中。
    • 项目中通过参数的配置不同请求域名,环境
    • cross-env NODE_ENV=production webpack

    3 webpack如何实现 跨域

    • 开发环境的跨域
    • 通过配置DevServe的proxy实现代理跨域

    4 webpack如何实现优化(前端优化手段)

    • 压缩

      1. 压缩html:html(html-webpack-plugin)
      2. 压缩和优化css
      3. 压缩js
    • 懒加载,延迟加载

      1. import(xxx).then()
      2. 魔法注释 prefetch 实现预加载
    • 分包

      1. 通过import().then导入的自动分包
      2. 通过import导入node_modules的自动分包chunks:"all”
    • 减少HTTP请求

      1. url-loader()
    • 合理缓存

      1. hash 每打包一次都改变
      2. contentHash 内容改变就改变
      3. chunkHash 当入口chunk方式改变就改变
    • treeShake

      • 不需要的组件自动删除
    • 按需加载
      - @babel/plugin-transform-runtime//按需加载

    5 webpack plugin与loader的区别

    • loader:让webpack拥有加载和处理非js文件的能力
    • plugin:在wepack运行过程中(生命周期)额外处理其他内容的能

    6 webpack如何加载less/sass

    • less去编译less文件
    • less-loader加载less文件
    • css-loader加载编译好的css
    • 放在header或者单独文件里面,放在header或者单独文件里面

    7 webpack /vue 如何实现懒加载图片 - 懒加载,延迟加载

      1. import(xxx).then()
      2. 魔法注释 prefetch 实现预加载
    

    8 webpack如何实现多入口打包在这里插入图片描述

    9 为什么使用babel

    • 让ES6 ES7的js文件转换为ES5浏览器能被识别的js文件
    展开全文
  • 因项目需要,引用第三方aar,踩了几个坑,也就了该文,顺便整理了下常见aar的几种引用方式,详细如下。 方式一 项目工程目录结构如下图,是使用Android Studio 3.0新建的library工程: 针对该目录结构的项目,...

    因项目需要,引用第三方aar,踩了几个坑,也就有了该文,顺便整理了下常见aar的几种引用方式,详细如下。

    方式一

    项目工程目录结构如下图,是使用Android Studio 3.0新建的library工程:
    在这里插入图片描述

    针对该目录结构的项目,引用libs下的aar方法如下:

    • 在该lib工程的build.gradle文件中,新增如下代码:
    sourceSets{
        main{
            jniLibs.srcDir(['libs'])
        }
     }
    
    repositories {
         flatDir {
             dirs 'libs'
        }
    }
    
    • 直接引用aar即可
    dependencies {
        api fileTree(dir: 'libs', include: ['*.jar'])
        api(name: 'ocr-fullCards-online-release', ext: 'aar')
    }
    

    完整build.gradle代码如下:

    apply plugin: 'com.android.library'
    
    android {
        compileSdkVersion rootProject.ext.compileSdkVersion
        buildToolsVersion rootProject.ext.buildToolsVersion
    
        defaultConfig {
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
            manifestPlaceholders rootProject.ext.manifestPlaceholders
        }
    
        sourceSets{
            main{
                jniLibs.srcDir(['libs'])
            }
        }
    
        repositories {
            flatDir {
                dirs 'libs'
            }
        }
    
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
    }
    
    dependencies {
        api fileTree(dir: 'libs', include: ['*.jar'])
        api(name: 'ocr-fullCards-online-release', ext: 'aar')
    }
    
    

    方式二

    在项目根目录下新建repositories文件夹,将aar文件拷贝到此,项目目录结构为:
    在这里插入图片描述

    • 在项目根目录 build.gradle中,添加repositories引用,如下:
    allprojects {
        repositories {
            jcenter()
            google()
            flatDir {
                dirs '../repositories'
            }
        }
    }
    
    • 在相应libraryapp工程中引用即可
    dependencies {
        api(name: 'ocr-fullCards-online-release', ext: 'aar')
    }
    

    方式三

    在传统Eclipse建立的项目结构中,引用aar,项目结构如下:
    在这里插入图片描述

    修改当前core库的build.gradle文件:

    android {
     	...
        sourceSets {
            main {
                manifest.srcFile 'AndroidManifest.xml'
                res.srcDirs = ['res']
                assets.srcDirs = ['assets']
                java.srcDirs = ['src', 'src-gen', 'test']
                jniLibs.srcDirs = ['libs']
                aidl.srcDirs = ['aidl']
            }
        }
    	...
    }
    dependencies {
        api fileTree(include: ['*.jar'], dir: 'libs')
        api(name: 'moxie-client-1.3.5', ext: 'aar')
    }
    repositories {
        flatDir {
            dirs 'libs'
        }
    }
    

    参照如上修改后,重新编译即可,引用成功。

    方式四

    aar上传到maven仓库或远程服务器,然后在项目根目录下的build.gradle文件中,配置好maven地址,直接在相应的工程中引用即可。

    • build.gradle示例
    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    apply from: "config.gradle"
    buildscript {
        repositories {
            maven { url "http://******/nexus/content/groups/public/" }
            maven { url "https://*****/maven" }
            maven { url "https://jitpack.io" }
    
            mavenLocal()
            google()
            jcenter()
        }
    
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.21"
            classpath "com.tencent.tinker:tinker-patch-gradle-plugin:${TINKER_VERSION}"
        }
    }
    
    allprojects {
        repositories {
            maven { url "http://******/nexus/content/groups/public/" }
            maven { url "https://*****/maven" }
            maven { url "https://jitpack.io" }
    
            mavenLocal()
            google()
            jcenter()
        }
    }
    
    
    • 在工程中的build.gradle中直接引用即可,示例如下
    dependencies {
        api fileTree(include: ['*.jar'], dir: 'libs')
        api 'com.umeng.sdk:common:1.5.3'
        api 'com.umeng.sdk:analytics:7.5.3'
    }
    

    好了,以上介绍了开发中常见的四种aar引用方式,如果有问题或有更好的方案,欢迎留言哈~

    展开全文
  • 计算机考研面试常见英语提问及专业课

    千次阅读 多人点赞 2020-05-01 10:44:04
    我认为一下几点: 第一,我的本科专业就是计算机科学与技术,已经学习了4年计算机培养出浓厚的兴趣,我希望可以继续以学生的身份在学术和科研方面取得一些成就。 第二,我的梦想就是成为一名研究生,尽管去年一战...

    一、中英文面试

    1.为什么考研究生呢?why do you take the postguaduate entrance exanmination?

    我认为有一下几点:
    第一,我的本科专业就是计算机科学与技术,已经学习了4年计算机培养出浓厚的兴趣,我希望可以继续以学生的身份在学术和科研方面取得一些成就。
    第二,我的梦想就是成为一名研究生,尽管去年一战失败,但我并没有放弃对研究生的追求,即便是今年竞争如此激烈,我依然坚持自己的梦想。

    以上就是我的全部回答。

    I think there are several aspects:
    Firstly,my major is computer science and technology.I have studied computer for4 years and developed a strong interest.I hope I can continue to make some progress in the academic and research fields.
    Secondly,my dream is to be a postgraduate.Even I failed the exam last year,I still have not give up the pursuit of postgraduate.Even in todays fierce competition,I still insist on my dream.
    That is all my answer.

    2.你研究书阶段的计划是什么呢?
    what are your plans for postgraduate school?

    有以下几点:
    第一,我会在老师的指导下选择一个确定的方法和研究方向。
    第二,我会阅读大量的中英文文献着重提高自己理解,分析,评价论文的能力以及提高自己论文写作的能力。
    第三,我会珍惜每一次实践的机会并参与导师项目和课题的研究。
    第四,我会不断提高自己英语水平。

    There are several aspects:
    Firstly,under the guidance of the teachers,I will choose certain method and research direction.
    Secondly,I will read a lot of Chinese and English literature and focused on enhancing the abilities of understanding,anlysis,evaluation.
    Thirdly,I will cherish every practical opportunity and participate in the research of teachers projeccts and subjects.
    Finally,I will continue to strengthen my english level.
    That is all my answer.

    3.你爸爸妈妈是做什么的呢?

    这个问题我给大家提供一个方向,每个同学要根据自己的家庭情况说明一下,可以适当做些修改以大东老师(比如:如果你是计算机专业,可以说自己爸爸也是干技术的,只不过是修电视的。如果是土木的,可以说自己爸爸是一名木匠或者建筑工人等,使用这些与自己专业相近的,以便更好打动老师),但切记不要完全没有任何根据,只能是在自己现实情况的基础上稍作修改,这样才会说服你自己,也就能说服老师,试问如果你毫无根据的乱编造,你自己会相信吗?如果你自己都不相信,老师会相信吗?

    4.你有女朋友吗? Do you have girl friend?
    说明:对于这个问题,我自己的看法是没有,即便有也说没有。因为男生嘛!还是得以学业为重,尤其是研究生面试的时候,在老师面前应该尽量表现的你很是一个有上进心,有理想,好学的孩子。

    我的回答是:目前还没有谈女朋友,因为我觉得男孩子还是得先立业后成家,这是我一直以来的信念,我觉得男孩子还是得在年轻的时候多学点本事,充实自己,将来才能够让自己身边的人过的踏实。

    I do not have girl friend,In my opinion,as a man,I think I should learn more knowledge and enrich myself so that my family lives a more stable life.

    5.你为什么选择我们学校呢?
    可以从以下几点出发:
    我认为有一下几点:
    第一,XXX城市是一座发展很有潜力的城市,它的风景和气候很怡人,我将来想就在这里发展。
    第二,XXX学校的的该专业在全国排名前X,拥有全国一流的师资力量。

    I think there are several aspects:
    Firstly,XXX is a great potential city,Its weather and environment are very nice.I look forward to developing in the city in the future.
    Secondly,XXranks …in the country and has first-class faculty.

    二、专业

    1.对什么方向感兴趣?为什么对它感兴趣?
    数据挖掘:数据挖掘是指从大量的数据中通过算法挖掘隐藏其中的信息的过程,它包括机器学习、统计学、模式识别的技术。

    大数据:简单说,大数据就是从各种各样的数据中,如:视频、音频、图片、日志等文件中快速获得有价值信息的能力,大数据最核心的价值就在于对海量的数据进行存储和分析。
    特点:最少也要是TB级别的、数据类型多、价值密度很低(如:视频为例,连续不断监控,有用的信息可能只有几秒钟)、处理速度快。

    (1)大数据研究受到国家高度重视,人才培养方面正在加速,全国各地对大数据发展积极性很高。
    (2)目前国家对大数据这方面的人才需求量很大,正因为这个原因,这方面的技术还需要更多的人才来推动它的发展。
    (3)在以后,我们可能会更多的借助于数据来说明一些事情,所以大数据未来就业前景应该很不错。

    三、操作系统

    1.什么是物理内存?什么是虚拟内存?两者的关系?
    物理内存(内存条):当打开程序时,系统会将程序自动加载到物理内存上。
    虚拟内存(硬盘):虚拟内存是代替物理内存行使存储的功能,但无法代替物理内存行使加载程序的功能。
    关系:当运行的程序过多,物理内存不够时,系统会将一部分硬盘空间当内存条使用,这就变成了虚拟内存。

    2.分页与分段的区别?
    页是信息的物理单位,分页是为了实现离散分配方式,以消减内存的外零头,提高内存的利用率,分页仅仅是系统的需要。
    段是信息的逻辑单位,分段是为了更好的满足用户的需要。
    页的大小固定,分为页号+页内地址。段的长度可变,取决于用户编写的程序。
    分页的作业地址是一维的,分段的地址是作业地址是二维的。

    3.cache的作用是什么?
    cache(高速缓冲存储器)位于CPU和主存之间的,它的容量小,但是速度很快,解决CPU与主存之间速度不匹配的问题。

    4.硬中断与软中断的区别?
    硬中断:硬中断是由硬件产生的,可以直接中断CPU
    软中断:软中断是由当前正在运行的进程产生的,不能中断CPU,软中断是需要内核为正在运行的进程去做一些I/O请求。

    5.进程与线程的关系。
    进程:进程是一个能独立运行的基本单位,也是系统分配资源的基本方式,进程拥有独立的地址空间,当一个进程崩溃后不会对其他进程产生影响。

    线程:线程是进程的一个实体,是CPU调度和分配的方式,它是比进程更小的能独立运行的基本单位,线程自己基本不拥有资源,它与同属一个进程中的其他线程共享进程中的所有资源,线程之间没有独立的地址空间,因此一个线程死掉后整个进程也就死掉了。

    6.死锁处理策略
    预防死锁、避免死锁、检测死锁、接触死锁

    四、计算机网络

    1.说明OSI体系结构。
    物理层:频分复用,时分复用,码分复用。
    数据链路层:PPP协议,CSMA/CD协议
    网络层:IP,CIDR,RIP,OSPF,BGP,ICMP,VPN,NAT
    传输层:TCP,UDP,拥塞控制,三次握手
    应用层:DNS,DHCP

    2.解释ARP协议。(IP -> MAC)
    ARP协议是用来解释IP地址所对应的MAC地址,因为在实际的数据链路上传送数据帧时,必须要使用硬件地址。

    3.解释DHCP协议。
    DHCP协议主要是为新加入到计算机网络中的计算机自动配置IP地址。这样一台主机就可以即插即用不需要人工配置IP地址。

    4.解释TCP为什么需要三次握手。
    在这里插入图片描述正常的三次握手:
    第一次:客服端(C)向服务器端(S)发送连接请求报文,此时客服端(C)进入已发送状态。
    第二次:服务器端(S)收到客服端(S)发送的连接请求报文,同意建立连接,发送确认报文,此时服务器进入收到状态。
    第三次:客户端收到服务器端发送的确认报文后,会向服务器发送确认报文,告诉服务器我收到了你的确认报文并准备连接,服务器端收到确认报文后,此时服务器端进入到已连接状态。

    如果是两次握手的话,当第一次客户端向服务器发送请求连接报文后,由于网络堵塞等原因,客户端等待的时间过长,取消请求连接,但是此时服务器端收到客服端发送的连接请求了,同意建立连接,向客服端发送确认报文,但由于客服端已经取消建立连接,所以导致服务器迟迟等不到客户端发送的确认报文,以至于服务器端一直在等待,这样就会长时间占用服务器的资源。

    5.解释TCP的四次挥手

    在这里插入图片描述第一次挥手:客户端向服务器端放松FIN报文,这表示客户端没有数据要发送给服务器端了。
    第二次挥手:服务器端收到客户端发送的FIN报文,向客户端回发ACK报文,这表示我同意你的关闭请求。
    (注意:在第二次挥手完毕后,服务器端还可以继续向客户端发送数据,这里只是表示我同意你的关闭请求。)
    第三次挥手:服务器端向客户端发送FIN报文,请求关闭连接。这里表示我这边也要关闭请求了,这时服务器端不能再向客户端发送数据。
    第四次挥手:客户端收到服务器端的FIN报文后,回发一个ACK报文,服务器端收到客户端的ACK报文后,就关闭连接。而客户端等待2MSL后没收到回复,这就证明服务器端已经关闭了,这时服务器端也可以关闭了。

    6.解释拥塞控制和解决方法。
    当一个网络对资源的需求量超过了资源所能提供的时候,就会导致网络吞吐量大幅下降的情况,拥塞控制就是为了防止过多的数据注入到网络中导致路由器和链路不至于过载。

    7.电路交换、报文交换、分组交换。
    电路交换要求建立一条专用线路,报文交换和分组交换不需要建立专用线路,采用存储转发的方式,区别在于数据报的粒度大小。

    8.TCP/UDP的区别
    TCP与UDP都是传输层协议,但是TCP面对连接(如:打电话之间进行拨号建立连接)提供可靠的数据传输服务,而UDP面对非连接不提供可能的数据传输服务。TCP面向字节流数据,传输慢。UDP面向报文数据,传输快。

    9.CSMA/CD(带冲突检测的多路载波监听技术)
    各工作站在发送数据之前会先监听信道是否空闲,若空闲,则立即发送数据,若忙碌,则等待一段时间至信道空闲再发送数据,若上一段信息发送结束后,同时有多个站点请求发送数据,则判定为冲突,则所有节点停止发送数据,待一段随机时间后,再重新尝试发送。

    六、数据库原理

    1、数据库的发展阶段?
    人工管理阶段>>文件系统阶段>>数据库系统阶段

    2、什么是数据库系统?
    在计算机系统中引入数据库后的系统。它是由数据库、数据库用户、计算机软硬件、数据库管理员。

    3、什么是数据库?
    数据库是长期存在计算机内、有组织的、可共享数据集合。

    4、什么是数据库系统的三级模式?
    模式(逻辑模式或概念模式)、外模式(子模式或用户模式)、内模式(存储模式或物理模式)

    5、什么是数据库系统的二级映像与数据独立性?
    外模式/模式(逻辑独立性)、模式/内模式(物理独立性)

    6、什么是数据库管理系统?
    用于用户与操作系统之间的一层数据管理软件

    7、什么是数据库管理系统的功能?
    数据定义功能(DDL)、数据操纵功能(DML)、数据查询功能、数据控制功能

    8、什么是数据模型的组成要素?
    数据结构、数据操作、数据的完整性约束

    9、什么是四种数据模型?
    层次模型、网状模型、关系模型、面向对象模型

    10、什么是数据库的约束?
    NULL/NOT NULL约束、UNIQUE约束、PRIMARY KEY约束、FOREIGN KEY约束、CHECK约束

    11、添加索引目的?
    提高数据查询的效率

    12、什么是聚集索引或非聚集索引?
    物理存储顺序与逻辑顺序相同
    物理存储顺序与索引顺序不一致

    13、索引的类型?
    聚集索引、非聚集索引、唯一索引、视图索引、全文索引、XML索引

    14、什么是第一范式、第二范式、第三范式?
    关系模式R中每个属性都不可再分
    关系模式R属于第一范式、且所有非主属性与主码之间是完全函数依赖
    关系模式R属于第二范式,且所以非主属性与主码之间不存在传递函数依赖的关系

    展开全文
  • WIFI模块各种常见的配网方式说明及其比较

    万次阅读 多人点赞 2017-11-25 13:48:37
    WIFI模块各种常见的配网方式说明及其比较 本文汇总介绍了目前市面上各种WIFI模块的常见的配网方式的原理和实现,对比了各种配网方式的优势和局限,得出结论,WEB配网是最直接、最简单、最灵活、约束条件最少的配网...
  • Android开发面试经——5.常见面试官提问Android题① - 移动互联的寻梦之旅 - 博客频道 - CSDN.NET 来源网址: http://blog.csdn.net/finddreams/article/details/44514011 ...
  • 计算机答辩提问(小程序/网站)

    万次阅读 多人点赞 2021-05-23 22:40:34
    计算机毕设答辩提问(小程序/网站)问题1:项目使用了什么技术?问题2:为什么使用这个技术(框架)?这个技术什么优点?问题3:模块功能的具体实现问题4:数据库加密了吗?问题5:设计表的原则?问题6:你做压测...
  • SpringBoot常见面试题

    千次阅读 2022-01-06 15:20:59
    只需使用starter引入web(spring+springmvc)\mybatis\mysql等模块 (3)无代码生成和XML配置 (4)运行监控:Spring Actuator 二、SpringBoot中如何配置bean 配置bean下面几种方式,(2)和(3)是SpringBoot配置bean的主要...
  • 3.Siri对中文的支持:普通话,闽南语,粤语 缺点: 1.siri在2012年才了中文版,在语音识别的准确率 上做得 并不高,普通话的识别准确率在80%左右,粤语识别的准确率在90%左右,这远低于目前科大讯飞所开发的...
  • 电子设计大赛答辩常见问题合集

    千次阅读 2021-07-15 04:17:50
    《电子设计大赛答辩常见问题合集》由会员分享,可在线阅读,更多相关《电子设计大赛答辩常见问题合集(2页珍藏版)》请在人人文库网上搜索。1、答辩常见问题合集1.本课题的选课背景、意义等等?这个论文中的,也都是...
  • 数据库面试常见问题

    千次阅读 2021-01-24 09:54:21
    在SQL中,定义事务的一般有哪些? 5.数据库中的B/S和C/S的区别是什么? 6.存储过程和函数分别是什么? 7.什么是索引?其作用是什么? 8.什么是主键和外键?他们的特点和用途是什么? 9.什么是基本表?什么是视图?...
  • 数据结构面试常见问题总结

    千次阅读 2021-09-18 08:52:09
    Q:数组与链表什么区别? A: 数组静态分配内存,链表动态分配内存 数组在内存中连续,链表不连续 数组利用下标定位,时间复杂度为 O (1),链表定位元素时间复杂度 O (n) 数组插入或删除元素的时间复杂度 O (n),...
  • Linux面试常见问题集锦

    千次阅读 2021-05-10 00:38:08
    一些Linux面试常见问题集锦,供大家参考。问题一:绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?答案:绝对路径: 如/etc/init.d当前目录和上层目录: ./ ../主...
  • 提问方式并非考试题型,以知识点为主,所以理解后,以自己的答案为主,说不定书上还没自己理解的好。 答案都在书中,列出问题的目的是快速学习。 目录第一章 软件开发概述1.1 程序与软件构造1.2 软件生存周期1.3 ...
  • 计算机网络常见面试题总结

    万次阅读 多人点赞 2021-03-15 11:33:49
    计算机网络模型: TCP/IP 与 OSI 都是为了使网络中的两台计算机能够互相连接并实现通信与回应,但他们最大的不同在于,OSI...2、数据链路层:通过差错控制、流量控制等方法,使差错的物理线路变为无差错的数据链路。
  • 提问的智慧/ 如何优雅的提问

    千次阅读 2020-07-30 18:07:31
    提问在学习中占据着重要的位置,很多人对知识好奇,却收效甚少,原因他们是尚未掌握正确提问的方法,因此,我尝试修改《提问的智慧》,发布出来。原作者是Eric S. Raymond,这篇文章在黑客界拥有很高的地位,指引...
  • 提问的智慧

    千次阅读 2018-05-18 22:17:53
    在网页论坛,因为消息与特定的线索紧密结合并且通常在线索之外不可见,好的提问方式不同,通过回复提问并不要紧(一些论坛甚至不允许在 回复中出现分离的主题,而且这样做了基本上没有人会去看)。不过通过回复...
  • 读书笔记 摘自:《学会提问

    万次阅读 2018-10-14 17:41:01
    如果你不改变问问题的方式,你永远都不会成功。 ——现代管理之父德鲁克 如何培养批判性思维?我的回答是:1)多问“how”,不要只学知识,要知道如何实践应用;2)多问“why”,突破死背知识,理解“...
  • 年终述职--常见问题分析解答

    千次阅读 2019-01-13 16:23:00
    述职的形式多种:沟通汇报、PPT汇报、World报告汇报等,但汇报内容万变不离其宗。 技术人员个特点:整天只知道埋头苦干,一到总结的时候就挠头,毕竟不是文科出身。 让我们写个用例,写段代码还可以,总结,...
  • 数据结构面试常见问题

    千次阅读 多人点赞 2021-01-04 16:00:05
    目录一、绪论二、线性表三、栈和队列四、串、数组和广义表五、树和二叉树六、图七...1.最小生成树的算法有哪些?说明一下它们的时间复杂度以及各自的特点。 普里姆(Prim)算法 克鲁斯卡尔(Kruskal)算法 原理 Pr
  • SpringMVC常见面试题总结(超详细回答)

    万次阅读 多人点赞 2018-07-08 22:51:43
    @Target:标识注解可以修饰哪些地方,比如方法、成员变量、包等,具体取值以下几种:ElementType.TYPE/FIELD/METHOD/PARAMETER/CONSTRUCTOR/LOCAL_VARIABLE/ANNOTATION_TYPE/PACKAGE/TYPE_PARAMETER/TYPE_USE @...
  • 需要用自己理解的方式去回答这个问题,如果你回答了xxx是基本单位,这样子是不行的。技术面试会追问你,需要你用自己的话去理解进程和线程。线程和进程是否是独立的?线程和进程的之间内存空间是否是共享的?进程和...
  • 整理了常见的一些问题,持续补充。 问题集中在站会 Scrum只是一个协作方案,充分利用每日的开始进行信息共享,集中大家注意力。不能因为了Scrum就把每日的问题都集中在晨会上,平时问题应该是及时提出尽快沟通...
  • hr面试十大经典提问

    千次阅读 2020-09-17 15:39:06
    下面是学习啦小编给大家整理的hr面试十大经典提问,供大家参阅! hr面试十大经典提问 1、HR:你希望通过这份工作获得什么? 1)、自杀式回答:我希望自己为之工作的企业能够重视质量,而且会给做得好的员工予以奖励。我...
  • 项目答辩常见问题和技巧

    千次阅读 2020-12-15 09:54:19
    文章目录答辩时的一般常见问题:答辩技巧二、论文答辩--图表穿插三、论文答辩——语流适中四、论文答辩——目光移动五、论文答辩―—体态语辅助六、论文答辩--时间控制七、论文答辩——紧扣主题八、论文答辩——人称...
  • 关于Java面试中的提问

    千次阅读 2020-01-08 17:11:33
    这次我们聊聊Java技术初试那些事儿。 因为我是部门的Java初试官之一,面过不少人,所以还算有些发言权。 不同的面试官,面试的要求也不...面试过程基本都是问答形式,以我面试为例,不会随便乱问,提问条理的...
  • 求职者从各项提问中了解面试官想要考察的主旨,根据自己实际情况适当地进行总结和梳理,以正面、积极地思想逻辑回应面试官的提问,以这种更能让面试官接受的方式合理化解释自己的行为、原则和价值准则。 面试次数...
  • 面试中常见的计算机网络的问题

    千次阅读 2018-09-05 20:51:50
    如果自己平时Socket编程的经验对面试也是很帮助的。网络方面有空可以看看TCP/IP详解卷一和UNIX网络编程。以下总结了一些面试中常问的问题:   1、TCP为什么需要3次握手,4次断开? “三次握手”的目的是...
  • 研究生计算机专业知识复试面试常见问题

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,419
精华内容 12,167
热门标签
关键字:

常见的提问方式有哪些