程序员基础知识(大牛点评):
c++的基础知识、如面向对象的特征,构造函数、析构函数、动态绑定等,能够反映出应聘者是否善于把握问题本质,
有没有耐心深入分析一个问题,另外还有常用的设计模式、UML图等,这些都能体现应聘者是否有软件工程方面的经验;
对基础知识的考查我特别重视c++的内存管理,因为内存管理会影响程序的效率和稳定性。
基础知识反映出一个人的基础能力和基础素质,是以后工作中最核心的能力要求,我一般考查:
(1)数据结构和算法;(2)编程能力;(3)部分数学知识,比如概率;(4)问题的分析和推理能力;
我比较注重四块基础知识:
(1)编程基本功(字符串处理);(2)并发控制;(3)算法,复杂度;(4)语言的基础概念;
我会考察编程基础、计算机系统基础知识、算法及设计能力。这些是一个软件工程师的最基本的东西
这些方面表现出色的人,我们一般认为是有发展潜力的。
对OS的理解程度,这些知识对于工作中常遇到的内存管理、文件操作、程序性能、多线程、程序安全等
有重要帮助,对OS理解深入到人对底层的工作一般上手比较快。
一个热爱编程的人对一门编程语言会有深入的了解,通常这样的人对于新的编程语言上手也会比较快,而且理解深入。
c++的基础知识、如面向对象的特征,构造函数、析构函数、动态绑定等,能够反映出应聘者是否善于把握问题本质,
有没有耐心深入分析一个问题,另外还有常用的设计模式、UML图等,这些都能体现应聘者是否有软件工程方面的经验;
对基础知识的考查我特别重视c++的内存管理,因为内存管理会影响程序的效率和稳定性。
基础知识反映出一个人的基础能力和基础素质,是以后工作中最核心的能力要求,我一般考查:
(1)数据结构和算法;(2)编程能力;(3)部分数学知识,比如概率;(4)问题的分析和推理能力;
我比较注重四块基础知识:
(1)编程基本功(字符串处理);(2)并发控制;(3)算法,复杂度;(4)语言的基础概念;
我会考察编程基础、计算机系统基础知识、算法及设计能力。这些是一个软件工程师的最基本的东西
这些方面表现出色的人,我们一般认为是有发展潜力的。
对OS的理解程度,这些知识对于工作中常遇到的内存管理、文件操作、程序性能、多线程、程序安全等
有重要帮助,对OS理解深入到人对底层的工作一般上手比较快。
一个热爱编程的人对一门编程语言会有深入的了解,通常这样的人对于新的编程语言上手也会比较快,而且理解深入。
常用的数据结构和算法,不了解这些的程序员基本只能写写“hello world”
节选自<<剑指Offer>>