阿龙的学习笔记---《程序员面试金典》笔记---面试概述部分

  • 0. 前言

    前段时间看的,看完就忘了,昨天阶段性总结的时候忽然想起来这本书中也有很多知识点,所以以后看书还是都总结一下,费点时间但是记忆深刻一些,以后复习也方便!

  • 1. 面试流程

    • 不要只在计算机上写代码,现场可能会手撕,所以要多在纸笔上练习(这个临近找工作再说吧)
    • 面试解题时,可以边思考边说出思路,而不是一直闷头解。
    • 写代码时不必太急促,在时间范围内尽量严谨、完整地给出解决办法。在提交前要多做测试,测试边界条件等。遇到bug时要考虑完整,找到原因再解决,而不是多次试错,会显得很不专业。

  • 5. 行为面试题

    • 这个部分可能用于更加深入你的简历,了解个性,缓和气氛等。

    • 对于项目部分的行为题,面试前列个表格,总结以下各个项目中的问题,电话面试时可以放在手边。

      常见问题项目1项目2项目3
      最难的部分···
      有什么收获···
      最有趣的部分···
      遇到的bug···
      最享受的过程···
      与团队的合作和冲突···
    • 你有哪些缺点: 思考一些真实、符合逻辑的缺点,并且讲讲如何认识并克服。

    • 想问面试人员什么问题

      • 对面试人员提问:
        • “每天花多少时间在写代码上?”
        • “每周开多少会?”
        • “团队中,测试、开发、项目经理比例多少?如何互动?如何运作?”
      • 对于公司调研,对于技术方面的提问:
        • “我注意到你们采用了X技术,这是如何解决Y问题的?”
        • “我注意到你们采用了X协议/技术,为什么不是Y协议/技术。X有a、b、c好处,但也有d、e、f缺点。”
      • 对于技术的热忱:
        • “我对xxx方面比较感兴趣,公司或者你做过这些方面吗?有什么学习途径?”
    • 其他问题,重点也就在于一个人的情商吧~别回答的太蠢就好…


  • 6. 技术面试题

    • 五步法:
      • 向面试官提问:消除疑义,把题目不确定的部分都搞清楚。
      • 设计一种算法:构造思路。注意以下几个问题:
        • 算法时间及空间复杂度;
        • 大量数据怎么办?
        • 设计会引发其他问题吗?
        • 如果有其他问题或者限制,你要做出怎么样的取舍?
        • 面试题中的特定数据或条件(排序等),要如何运用?
        • 如果一时想不到最好的方法,先给出暴力解法再进一步优化也可以。
      • 编写伪代码,是为了让写代码时更有逻辑,但要跟面试官解释一下之后还会写实际代码。
      • 编写正式代码,要注意有条不紊,跟者思路。多用数据结构表现出良好的OOP;纸上写代码不要太凌乱。
      • 测试
        • 极端值:0、负数、空值NULL、最大最小值等;
        • 用户错误输入;
        • 正确输入一般用例;
    • 题目解法
      • 这个做得多了肯定熟练的多,不过也有一定的技巧,一定的方法:
      • 举例法,多举例找规律,跟书中提到的简单构造法也差不了太多。
      • 简化推广法,先将问题简化,然后再晋升到复杂,从中找到解决办法。
      • 模式匹配法,将问题与类似的问题相比较,类似问题的解决方法可能能够帮到你。
    • 好的代码
      • 正确、高效、整洁:这些都好理解,就是字面意思。
      • 易读:必要的注释,以及良好的逻辑,花里胡哨的位操作不一定好。
      • 可维护性:能应对需求变化而更改。
    • 写出好的代码的要点:
      • 多用数据结构,让代码条理性、逻辑性更加清晰,并且必要时体现出面对对象的思想。
      • 适当重用代码,写出通用性高的代码。
      • 模块化,让代码的可读性、可测试性、可维护性更强。
      • 灵活、健壮,编写灵活、通用的代码,在解决问题的同时想到问题的拓展,可以用模板/泛型来解决问题,或者不把关键参数写死等。但如果需要让解决方案更加复杂,那么还是最好按照题目要求来吧!
      • 错误检查:这个不要说的太多,要针对各种情况都编写解决方案。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
牙科就诊管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线查看数据。管理员管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等功能。牙科就诊管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 管理员在后台主要管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等。 牙医列表页面,此页面提供给管理员的功能有:查看牙医、新增牙医、修改牙医、删除牙医等。公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。公告类型管理页面显示所有公告类型,在此页面既可以让管理员添加新的公告信息类型,也能对已有的公告类型信息执行编辑更新,失效的公告类型信息也能让管理员快速删除。药品管理页面,此页面提供给管理员的功能有:新增药品,修改药品,删除药品。药品类型管理页面,此页面提供给管理员的功能有:新增药品类型,修改药品类型,删除药品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值