首页>>技术前沿>>网站/软件行业动态
程序员的能力提升秘籍
作者:西安网站建设 | 转载 来源:西安软件开发公司 | 时间:2018年1月5日| 点击:0次 | 【评论】


计算机科学基础知识面试
计算机科学和基础编程面试明显不同于上文所探讨的特定领域面试。计算机科学和基础编程面试是为了评估你解决问题的能力,更多的是关注找到最佳解决方案的能力,而不是简单的去完成某些特定任

务。因此,面试官通常也不会问关于你是谁、你过去的工作经历或者你构建过的项目方面的问题。对于计算机科学基础面试这一类型来说,面试官的工作就是评估你的原始编程能力,通常他们是通过数

据结构和算法相关的问题来进行评估。
计算机科学基础面试的问题有章法可循。因为学习数据结构和算法需要大量的准备工作和长时间的学习,你需要了解你所选择的编程语言、数据结构和算法来解决问题。计算机科学基础知识面试通常可

以用六种不同类型的算法来解决:
深度优先搜索算法/广度优先搜索算法
贪心算法
滑动窗口算法
分治算法
递归算法
动态规划算法
你需要研究每一种算法,可以在 Pramp 上与其他软件工程师一起练习面试和面试问题。应对面试是一门独立于软件工程师之外的技能,你可以通过练习和重复来提升自己在面试时的表现。
如果你恰好没有向我们展示你在编程项目上的技巧,我们会问一些其它正常的技术问题。我们试图保持一个轻松的氛围,我们会问你在某个问题上的技术水平(1 代表新手,10 代表专家),这样一来你

就不会被某些你可能不知道答案的问题所打击到。我们的面试流程是完美的么?绝不,我们每周都在试图改善和提高这个流程。
这就是为什么当我看到这个 Glassdoor 上的评论后彻底震惊了。这里面有些抱怨是有效的,比如面试官没有及时告诉应聘者结果和不理睬应聘者是不可以被接受的。我从来没有在任何技术面试后立刻收

到面试结果,往往都会有一些延迟,但没有任何人联系求职者并给出反馈意见,这样就不好了。(伯乐在线注:Glassdoor 是国外一家点评雇主的网站)
但是这个评论启发我意识到精英观念是相对的。作为那个求职者,要回答 JavaScript 的问题看上去有点不合理,他或许是一个后端开发者。作为新一代的只使用 ORM’ 的开发者,他们或许没有任何

SQL 的经验。某些对我们而言简单和无害的问题,对其它人而言也许会很古怪。
面试题应该是经过仔细思考、有意义并且能体现求职者所申请工作岗位的职能。你不一定非得通过一个很难的计算机问题来考察求职者是如何解决问题的。如果你觉得陷应试者于窘境是一种享受,那你

应该把自己从面试工作中解放出来。这并不是说我们不能问我们最喜欢的问题,但是我们要有一个合理的理由问,而不是在求职者离开以后贬损他
计算机科学基础知识面试通常遵循的那些问题结构对于求职者来说只有通过几个小时的练习和准备才能发现。即便这些知识中的一部分并不适用于日常的编程任务,但只要你坚持这样做,你就能抓住更

多的面试机会,就能收到更多公司发来的 offer。如果你的目标是获得更多的工作机会,那你一定要看一下《Cracking The Coding Interview》这本书,并且查看这一免费的面试资源来进行相应的准备

工作。
如何写像诗一样美的代码呢?方法也很简单。
一、买几本经典的编程书,把书上所有例程全部重新写一遍,逐个比较和书上范例的差距,一步一步改善自己编程的风格和技巧。时间长了,自然就能写出象书上例程一样的代码,甚至可以比书上写得

好。
二、基础扎实后,多看看Linux等系统级的源代码,看看高手是如何写的,就有感觉了。
三、通读一下MSDN中所有的资料,这样,“读书破万卷,下笔如有神”。
还有,一定要牢记软件工程的铁律:可能出错的地方一定会出错。每个变量都做初始化,引用每个参数都会做有效性检查,在可能出错的每个地方都会做边界条件检查,这样开发出来的程序一定会稳固

很多,就是出错也会很容易修改。野路子出来的高手,一般开发速度很快,但做完后bug很多,经常需要很长时间修改。而真正的高手,追求的境界是bugfreecode(零缺陷代码)。

此内容DOC下载 此内容PDF下载

【全文完】
关键词标签: PHP 
0 ([$-顶稿人数-$])
0 ([$-踩稿人数-$])

版权声明:

1、陕西弈聪网站内容中凡注明“来源:XXX(非陕西弈聪网站)”的作品,转载自其它媒体,转载目的在于传递更多信息,其中涉及的网站建设,网站优化,百度关键词优化,西安软件开发等技术细节并不代表本站赞同支持其观点,并不对其真实性负责。对于署名“陕西弈聪”的作品系本站版权所有,任何人转载请署名来源,否则陕西弈聪将追究其相关法律责任。

2、本站内容中未声明为“原创”的内容可能源自其它网站,但并不代表本站支持其观点,对此带来的法律纠纷及其它责任与我方无关。如果此内容侵犯了您的权益,请联系我方进行删除。