原文阅读: 假如,面试的时候说真话 做程序员这么长时间了,经常能够听到一句话:面试造火箭,入职拧螺丝。而且,随着就业环境越来越卷,现在只会造火箭恐怕都不行了,得能造个空间站才行。 回想自己刚毕业那会儿,哪有什么八股文需要背,而且面试内容也更贴近实际。更不会有面试官刻意挖一些生僻的技
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 https://leetcode.cn/problems/is-unique-lcci/ 示例 1: 输入: s = "leetcode" 输出: false 示例 2: 输入: s = "abc" 输出: true 限制: 0 <= len(s) <= 100 s[i]仅包含小写字母 如果你不使用额外的数据结构,会很加分。 先把输
首先,说明,这张导图,不是那种很系统的学习路径,只是为了列举这些课程,然后,大部分也都是目前企业常用的技术。 博客 大部分课程都是哔哩哔哩尚硅谷和黑马程序员的,相信大家对这些课程,这些名字也不会陌生。 前端 前端有许多的优秀框架,比如React、Angular和Vue等等。 这里,如果你是一个后
Java至今还是现在很多人优先选择的专业, 一、Java人才市场的饱和度 想要了解Java目前的就业前景,最重要的是必须了解Java人才市场的饱和度。一般情况下,能够拥有人才的行业当然就是缺乏发展前景,并且竞争压力非常大。现在Java语言是使用最广泛的语言,虽然现在编程语言的种类是非常多,但
四年程序员生涯的回顾 职业规划容易吗 四年职业生涯的回顾 我的5年规划 期许和展望 参考 四年程序员生涯的回顾 职业规划容易吗 还记得在大学期间,我们有一门课程叫做职业规划课程,给我们上课的是一位很有才华的女老师。他有个很显著的特点,特别会演讲,总能调动学生们的气氛。学
其实对每个普通人来讲,副业有很多形式,不过消耗时间少的副业才是最好的,投入产出比不等的副业那是给自己找麻烦。 一、程序员可以做的副业汇总 1.接私单,赚外快。 难度:极大 成本:时间成本+精力成本+尾款风险成本 利润:同行压价过多,导致行业个人接单金额不大。 缺点:太累 2.写博客,积累。
前言 看了左程云的那篇程序员练级手册以后,第一本开始读的书就是这本《高效能程序员的修炼》 除了技术和coding这些,人文方面的成长或许更有帮助,而且感觉也不只限于程序员,对一切逻辑相关的职业都是有帮助的,当然太过于抽象的职业应该是用不上的。 入门须知 培养写作的习惯,这样有助
性格沉闷、不爱说话、不懂浪漫、爱穿格子衫……这些带有刻板印象的标签仿佛已被烙在了程序员的身上。但对于程序员们来说,他们的活泼、浪漫,表现在各式各样的编程语言中。在这些语言构建的世界中,有一群七彩程序员,他们聪明、热情、极富创造力,在面对不同场景,他们有着不同的性格色彩。
女朋友有一个蓝颜知己 该怎么做呢 我不知道 我选择忽视 我想说你和他分享生活的时间已经超过我了 虽然你们是在一个 XX 3人群里面 但是我反思自己 程序员 大量时间在调试 你,科研工作人员,自由,大量时间可以与人沟通 我,还是那个程序员 而且是一个不善与人交流的程序员 在公司压抑的
1.重复的危害就重复产⽣的种类,可以分类为:(1) 强加的重复信息的多种表⽰,对于同⼀信息我们可以⽤不同形式表⽰。这在⼀定程度上造成了重复,就这个问题⽽⾔,我们可以编写简单的过滤器和代码⽣成器,⽤公共的元数据表⽰结构。代码中的⽂档,对于⼀些低级知识不需注释,对于⼀些⾼级知识才需要
软件构造04 规约(specification) 方法或者说函数,是程序的积木,可以被测试 、使用。使用客户端的方法无需关注方法本身的具体实现,使用它的抽象作用或者是能力即可。 对于程序员自己 我们实现一个方法之前首先得知道这个方法是用来干什么的吧,因此我们编写出spec,明确写出这个放啊要
总结过人月关系的误区后,既然对于大部分的工作任务,通过增加人手来减少所需时间的最好状况,要略逊于为调整前,那么大家一拥而上,蚁多噬象式的团队构建方式,则明显不会是解决问题最有效的团队构建,那么怎样的团队才是能够在一定人月前提之下,解决问题的最有构建呢?书中同样给了我们一些建议,
第二章 个人技术和流程 2.1 单元测试 ①重要的单元测试:有效解决程序员对模块功能的误解、疏忽或不了解模块的变化之类的问题,使自己负责的模块功能定义尽量明确,模块的质量得到稳定的、量化的保证。 ②好的单元测试的标准: 在最基本的功能/参数上验证程序的正确性 单元测试必须由最熟
总结 程序员的基本素养: 对工作负责(代码逻辑清晰、简洁、可读性、注释、文档、日志、遵循规范) 技术能力(以工作需求为导向、构建知识体系、关注行业新技术、专一) 业务能力(熟悉公司项目/业务、团队协作能力、沟通能力) 管理能力(管理知识、管理思维) 沟通相处 相处:多打招呼(早上好)、多
Spec,即specification,是java方法前的规约。Spec由前置条件和后置条件组成,前置条件规定了客户端的输入应满足什么条件,后置条件规定了程序员方法的返回应满足什么条件。 在学习软件构造这门课程前,我的方法前边很少写spec,偶尔会写上注释,但其格式往往也不太规范。渐渐的,我尝到这样“省
第一章:注重时效的哲学 第一节:我的代码让猫给吃了 在做项目的过程中,我们每个人难免会犯错。对于这类错误,单单一句“我的代码让猫吃了”,是远不能解决的。这时候需要自己主动承担这份责任,主动承认错误。并且在最快的时间内提供解决方案,尽可能地挽回局面。 第二节:软件的熵 熵是一个热
第二十二节:死程序不说谎 对待程序我们通常会有“它不会发生”的心理状态,这会导致我们忽视一些问题。对于注重实效的程序员来说,如果我们忽略了一个错误,将是非常糟糕的事情。 对于程序员来说,崩溃往往比破坏更容易让人接受。当代码发生认为不可能的事情时,那么系统已经崩溃了。 正确认
第26节 解耦与得墨忒(tei)耳法则 1、把你的代码组织成最小单位(模块),并限制他们之间的交互。如果随后必须替换某个模块,其他模块仍能够继续工作。 2、应使耦合减至最少。对象间直接的横贯关系,有可能很快带来依赖关系的组合爆炸。比如对某个模块的“简单”改动会传遍系统中的一些无关模
第三章:基本工具 第十四节:纯文本的威力 纯文本由可打印字符组成,人可以直接阅读和理解其形式。纯文本没有结构,可用于保存知识。 文本的威力:保证不过时、杠杆作用、更易于测试。 第十五节:shell游戏 对于程序员来说,shell命令就是工作台。 对于习惯 GUI 的开发者来说一直使用 Shell 有
从小工到专家相对于构建之法和人月神话来说,更注重于一个程序员本身。 首先,发展要注重效率。说到效率,程序员首先应该对自己的项目负责。只有当他们清楚地认识到自己的责任时,他们才能有目标和动机来改进项目。否则,当最后期限到来时,他们只会找各种借口搪塞。 在软件开发中也有一种
我对人与月神话的第一印象是神话小说或武侠小说,因为这个名字太容易引起很多幻想,尤其是在我国有“嫦娥奔月”的神话。但经过仔细考虑,老师怎么能把神话小说视为一项专业任务呢?这本书一定与软件工程的研究有关。 首先,我对作者在软件领域的巨大成就和他的权威感到惊讶。曾担任360系统
创作初衷 我已经工作十多年,从事过多年的业务研发和技术管理工作,也有过短暂的创业经历。由于工作需要,我曾经阅读过上千份简历,面试过上百个求职者,在程序员求职招聘领域积累了丰富的经验。 在进入社会头几年,我也不懂得如何面试,表达能力也差,面试成功率非常低。但是我特别勤奋,面试之后
ADT,意为抽象数据类型,可由程序员自己定义。以往书写代码,我都没有考虑模块的封装性和复用性,往往图省事而轻易地将类的内部信息全暴露给客户端,殊不知这样草率的做法可能会给程序带来潜在的bug。而现在,ADT无疑是解决这种麻烦的一大利器。 传统的类型定义往往关注数据的具
梦断代码阅读笔记之三 第6章:搞掂设计方案2003.7~11 程序操作、数据操作中非常重要的操作——备份。 在写一段代码的过程中,备份的操作可有可无,因为我们有undo键,一个错误的操作影响性很小,我们无须重写,只需要撤销。但对于程序的编写还是需要备份的。 但对于数据库的操作而言,备份操作
原创不易,求分享、求一键三连 前段时间有个粉丝与我讨论了一个问题: 小钗,我半年前从技术经理升职到了技术总监,但这段时间的工作很恼火:一大半时间要去开各种产品会,还有一些时间要去处理团队扯皮,这导致我写代码的时间越来越少,半年下来感觉技术毫无成长,接下来该怎么办呢? 该同学的