精华内容
下载资源
问答
  • 用一份JAVA工程师求职简历来说说求职简历怎么写

    万次阅读 多人点赞 2019-06-25 21:34:46
    本文陈列这些内容既可以作为个人简历中内容,也可以作为面试时候跟面试官聊东西,你可以把这些内容到你简历中,当然更需要是你在面试时候向面试官展示这些专业技能。相信此文...

    这是一篇我比较想看到的简历指导的文章。

    但是我比较反对简历造假。我觉得会什么写什么把。

    可以先看看我的这篇文章:刚实习结束,就要做面试官,谈谈我的想法

    自己做过面试官以后,自己也总结了一下,作为开发应该具备什么样的能力:开发能力画像

    结合能力画像,在简历里边体现出来这些能力,才能有很多的机会参加面试。

    这里放一份我自己的真实的个人简历:个人简历

    现节点,免费帮大家看简历,但是因为我时间有限。每天先帮三个人看,如果有需要可以加我微信:x1210644725

    Java就业指导

      想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内容写到你的简历中,当然更需要的是你在面试的时候向面试官展示这些专业技能。相信此文对正在寻觅Java程序员(Java工程师)职位的freshman以及希望成为中高级Java开发者的junior都会有所帮助。

    专业技能

     初级一点(基本上就是大学生水平,页面写过一点,后台也能使用框架)

    1. 熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。
    2. 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
    3. 对Spring的IoC容器和AOP原理有深入了解,熟练的运用Spring框架管理各种Web组件及其依赖关系,熟练的使用Spring进行事务、日志、安全性等的管理,有使用Spring MVC作为表示层技术以及使用Spring提供的持久化支持进行Web项目开发的经验,熟悉Spring对其他框架的整合。
    4. 熟练的使用Hibernate、MyBatis等ORM框架,熟悉Hibernate和MyBatis的核心API,对Hibernate的关联映射、继承映射、组件映射、缓存机制、事务管理以及性能调优等有深入的理解。
    5. 熟练的使用HTML、CSS和JavaScript进行Web前端开发,熟悉jQuery和Bootstrap,对Ajax技术在Web项目中的应用有深入理解,有使用前端MVC框架(AngularJS)和JavaScript模板引擎(HandleBars)进行项目开发的经验。
    6. 熟悉常用的关系型数据库产品(MySQL、Oracle),熟练的使用SQL和PL/SQL进行数据库编程。
    7. 熟悉面向对象的设计原则,对GoF设计模式和企业应用架构模式有深入的了解和实际开发的相关经验,熟练的使用UML进行面向对象的分析和设计,有TDD(测试驱动开发)和DDD(领域驱动设计)的经验。
    8. 熟悉Apache、NginX、Tomcat、WildFly、Weblogic等Web服务器和应用服务器的使用,熟悉多种服务器整合、集群和负载均衡的配置。
    9. 熟练的使用产品原型工具Axure,熟练的使用设计建模工具PowerDesigner和Enterprise Architect,熟练的使用Java开发环境Eclipse和IntelliJ,熟练的使用前端开发环境WebStorm,熟练的使用软件版本控制工具SVN和Git,熟练的使用项目构建和管理工具Maven和Gradle。

      中级

    • Java基础扎实,熟悉多线程,线程池原理,对线程安全有深刻理解。阅读过部分JDK源码。
    • 深入了解JVM虚拟机:内存模型、GC、垃圾回收算法、以及垃圾回收器,具有线上调优经验。
    • 熟练使用springboot、spring、springMVC、mybatis框架,并且对框架源码有学习了解。
    • 对Elasticserch,logstash,Filebeat,kibana 熟悉。了解es读写原理,底层存储原理。
    • 深入了解Elasticserch集群规划,具有es调优经验,阅读过部分源码,例如es中线程池。
    • 深入了解网关技术,独立构建业务网关。使用gateway、nacos,sentinel。
    • 改造过阿里限流组件sentinel源码,具备一定的源码阅读能力和改造能力。
    • 熟悉Mysql存储引擎,索引,有sql调优经验,熟悉分库分表,熟悉 ShardingSphere
    • 对Redis 哨兵模式以及 Cluster集群模式有了解,熟练搭建集群和使用。
    • 熟悉MQ使用场景,熟练使用kafka,用作内外网穿透,作为数据中转。
    • 熟练使用Docker容器化技术、了解k8s。了解微服务,springCloud体系。
    • 合理使用开发规约,写出简洁的代码。重构相关知识有所掌握,有过项目重构的经验。
    • 在开发工作中大量使用设计模式,来提高程序可扩展性和可维护性。
    • 熟悉linux环境,熟悉linux常用命令,熟悉shell脚本。

    说明:上面罗列的这些东西并不是每一项你都要烂熟于心,根据企业招聘的具体要求可以做相应的有针对性的准备。我个人觉得前6项应该是最低要求,是作为一个Java开发者必须要具备的专业技能。

    这个分了初级和稍有有点经验的两种。初级有点的,大概就是都知道有这么个东西,也会有。而有经验以后,应该是懂底层原理了。另外偏向的是优化,调优。另外对高并发,高可用的分布式服务都有一些经验,能够去应对单点故障。对JVM有比较深刻的认识。

    项目经验

    项目介绍

      本系统是X委托Y开发的用于Z的系统,系统包括A、B、C、D等模块。系统使用了Java企业级开发的开源框架E以及前端技术F。表示层运用了G架构,使用H作为视图I作为控制器并实现了REST风格的请求;业务逻辑层运用了J模式,并通过K实现事务、日志和安全性等功能,通过L实现缓存服务;持久层使用了M封装CRUD操作,底层使用N实现数据存取。整个项目采用了P开发模型。

    说明:上面的描述中,E通常指Spring(Java企业级开发的一站式选择);F最有可能是jQuery库及其插件或者是Bootstrap框架,当然如果要构建单页应用(SPA)最佳的方案是前端MVC框架(如AngularJS)和JavaScript模板引擎(如HandleBars);G显然是MVC(模型-视图-控制),最有可能的实现框架是Spring MVC,除此之外还有Struts 2、JSF以及Apache为JSF提供的MyFaces实现,可以使用JSP作为MVC中的V,也可使用模板引擎(如Freemarker和Velocity)来生成视图,还可以是各种文档或报表(如Excel和PDF等),而Servlet和自定义的控制器是MVC中的C,当然Spring MVC中提供了作为前端控制器的DispatcherServlet;J通常是事务脚本,K应该是AOP(面向切面编程)技术,L目前广泛使用的有memcached和Redis;M的选择方案很多,最有可能的是Hibernate和MyBatis,也可以两种技术同时运用,但通常是将增删改交给Hibernate来处理,而复杂的查询则由MyBatis完成,此外TopLink、jOOQ也是优秀的持久层解决方案;底层的数据存取传统上是使用关系型数据库,可以是MySQL、Oracle、SQLServer、DB2等,随着大数据时代的来临,也可以采用NoSQL(如MongoDB、MemBase、BigTable等)和其他大数据存取方案(如GFS、HDFS等);项目的开发模型P可以是瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、RAD模型等。

    项目开发流程

    1. 可行性分析 >>> 可行性分析报告 / 项目开发计划书
    2. 需求分析 >>> 需求规格说明书 
      • OOAD(用例图、时序图、活动图)
      • 界面原型:帮助理解需求、业务层设计时推导事务脚本
    3. 设计 >>> 概要设计说明书/详细设计说明书 
      • 抽取业务实体(领域对象):类图、E-R图(概念设计阶段)
      • 分层架构:确定各层的技术实现方案(具体到使用的框架、数据库服务器、应用服务器等)。业务层设计:事务脚本模式(事务:用户发送一次请求就是一个事务;脚本:一个方法或一个函数;事务脚本:把一次请求封装为一个方法或一个函数;事务脚本模式:一个事务开始于脚本的打开,终止于脚本的关闭)。业务层涉及的对象有三种类型:事务脚本类(封装了业务的流程)、数据访问对象(DAO,封装了持久化操作)、数据传输对象(DTO,封装了失血/贫血领域对象),三者之间的关系是事务脚本类组合(聚合)数据访问对象,这二者都依赖了数据传输对象
      • 正向工程(UML类图生成Java代码)和逆向工程(Java代码生成UML类图)
      • 数据库物理设计(ER图转换成表间关系图、建库和建表、使用工具插入测试数据)
    4. 编码
    5. 测试 >>> 测试报告 / 缺陷报告 
      • 单元测试:对软件中的最小可测试单元进行检查和验证,在Java中是对类中的方法进行测试,可以使用JUnit工具来实施。
      • 集成测试:集成测试也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求组装成为子系统进行测试。
      • 系统测试:将已经确认的软件、硬件、外设、网络等元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。
      • 验收测试:在软件产品完成了单元测试、集成测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。
    6. 交付和维护 >>> 用户手册 / 操作手册

    项目管理

    • 版本控制:CVS/SVN/Git
    • 自动构建:Ant/Maven/Ivy/Gradle
    • 持续集成:Hudson/Jenkins

    系统架构

    • 负载均衡服务器:F5、A10
    • 应用服务器: 
      • HTTP服务器:Apache、NginX(HTTP、反向代理、邮件代理服务器)
      • Servlet容器:Tomcat、Resin
      • EJB容器:WildFly(JBoss Application Server)、GlassFish、Weblogic、Websphere
    • 数据库服务器:MySQL、Oracle

    第三方工具(插件)应用

    • 图表工具:基于jQuery的图表插件(如jQchart、Flot、Charted等)、Chart.js、Highcharts等。
    • 报表工具:Pentaho Reporting、iReport、DynamicReports等。
    • 文档处理:POI、iText等。
    • 工作流引擎:jBPM、OpenWFE、Snaker、SWAMP等。
    • 作业调度:Quartz、JobServer、Oddjob等。
    • 缓存服务:EhCache、memcached、SwarmCache等。
    • 消息队列:Open-MQ、ZeroMQ等。
    • 安全框架:Shiro、PicketBox等。
    • 搜索引擎:IndexTank、Lucene、ElasticSearch等。
    • Ajax框架:jQuery、ExtJS、DWR等。
    • UI插件:EasyUI、MiniUI等。
    • 富文本框:UEditor、CKEditor等。

    面试提问

    • 项目是为哪个公司开发的?项目的投入是多少?
    • 有多少人参与了项目开发?整个团队中,测试人员、开发人员、项目经理比例是多少?
    • 项目开发了多长时间?项目总的代码量有多少?你的代码量有多少?
    • 项目采用了怎样的开发模型或开发流程?项目的架构是怎样的?项目的技术选型是怎样的?
    • 你在项目中承担了怎样的职责?是否经常开会或加班?项目完成后有哪些收获或是经验教训?
    • 项目中最困难的部分是什么?如何解决团队开发时遇到的各种冲突?

    说明:对于没有实际项目经验的,可以在前程无忧智联招聘拉勾网等网站上搜索招聘Java程序员的公司,找到他们的官方网站了解他们做的项目,查看项目的详细介绍,然后尝试完成其中一部分功能,最好请教一下高人看看自己的设计和代码是否恰当,这样相当于积累了一定的项目经验。

    面试题

      Java常见的面试题已经总结成《Java面试题集》《Java面试题全集》以及《面试编程题拾遗》等文章陆续发布在我的CSDN博客,各大公司的面试题我会继续整理发布。

    其他

    常见错误

    1. 只在计算机上练习
    2. 不做行为面试题演练
    3. 不做模拟面试训练
    4. 试图死记硬背答案
    5. 不大声说出你的解题思路
    6. 代码不够严谨
    7. 不写测试代码
    8. 轻言放弃

    面试时可以反问面试官的问题

    1. 我注意到你们使用了X技术,请问你们是如何解决Y问题的?
    2. 为什么你们的产品使用了X技术而不是Y技术?据我所知,X技术虽然有A、B、C等好处,但也存在D和E问题,而Y技术可以解决D和E问题。
    3. 我对您说的X技术不是太熟悉,但我感觉它是一个不错的解决方案,您能多讲讲它的工作原理吗?
    4. 你们团队是如何进行项目规划的?一周会有几次例会?每周的代码量大概是多少?
    5. 就X问题我能想到的解决方案目前就只有Y了,请问您会怎么解决这个问题?

    S.A.R.法则

      S.A.R法则是指先描述问题的场景,然后解释你采取的行动,最后陈述结果。

    算法题的五种解法

    1. 举例法:通过举例子发现其中的一般规则。

      例子:圆内接三角形是锐角三角形的概率是多少?这是搜狗的一个面试题,可以在圆上随意画三个点连接成三角形就可以知道答案了。

    2. 模式匹配法

      例子:一个有序数组的元素经过循环移动,元素的顺序变成”3 4 5 6 1 2”。怎样找到数组中最小的那个元素,假设数组中的元素各不相同。这个题目和折半查找看起来是那么相似,因此可以借鉴折半查找的算法,最小元素显然出现在”mid > right”的转折点。

    3. 简化推广法

      说明:简化问题规模和数据类型,然后再发现通用的解法。

    4. 简单构造法

      例子:找出”abcde”的所有可能的排列组合。先考虑只有”a”的情况,再考虑”ab”的情况,以此类推。最终你可能会得到一个递归公式。这种方法往往会演变成递归法。

    5. 数据结构头脑风暴法

      例子:随机生成一些数字,并找出其中位数。这种问题可以在头脑中将你了解的数据结构过一遍,看看哪种是最合适的数据结构。上面的题目可以建立两个堆,一个大根堆和一个小根堆,较小的元素放在大根堆,较大的元素放在小根堆,如果两个堆不平衡,可以从其中一个堆取出元素放入另一个堆即可。最后中位数应该是两个堆的根之一。

    录用谈判

    1. 要理直气壮的提出具体的待遇要求
    2. 开出比预期稍高的价码
    3. 不要只盯着薪水(很多公司更愿意就薪水之外的条件做出让步)
    4. 使用最合适的方法(可以尝试在电话或E-mail中谈判待遇)

    自我评价

    1. 学习能力(搞IT行业的人需要不断的了解新的技术、工具和方法)
    2. 团队意识(相比个人英雄主义,IT行业更倡导团队合作)
    3. 抗压能力(很多IT企业的工作强度相对来说还是比较大的)

    ps :说一下我做面试官,是如何去筛选简历的

    先说加分项

    参加过省级比赛、算法比赛获奖优先、

    熟悉多线程、深入了解JVM虚拟机,有调优经验更佳、

    熟悉设计模式,设计原则、

    熟悉至少一个消息队列、熟悉linux(必须)

    学校比较好

     

    减分项:

     自己写的技术栈,和项目经验有很大出入,上边写了一大堆,下边项目里边什么都没用过。这让我面试的时候怎么问?

     频繁换工作的:几个月一次、这个我花费时间精力面试招聘过来,然后一个月跑路吗? 我觉得这个至少要待一年以上。每段工作经历。

     简历内容很少,又没有重点的。 内容太多,重点不突出的。面试官也有一堆工作要做,没有时间细品简历的,十秒钟看到不到get的点,就pass了。

     项目经验里边:点餐系统,商城系统,外卖系统。图书管理系统。 这些说真的,烂大街了,我看到十份简历里边,七份都是这些。不能眼前一亮,就只能别当做平庸了,即使真的有能力,这也没办法。

     

     再分享一个我对开发人员能力画像的理解(看看哪些能力是需要重点体现出来的):https://blog.csdn.net/star1210644725/article/details/109078850

    展开全文
  • ​如今前端市场的从业人员很多且鱼龙混杂,真正的高手大牛非常稀缺,呈典型的金字塔...1、简历不仅仅是你的个人经历,它更重要作用是通过展示的个人能力让你获得更多的面试机会,从而增加你快速入职的可能性。所...

    ​如今前端市场的从业人员很多且鱼龙混杂,真正的高手大牛非常稀缺,呈典型的金字塔形状,所以前端的招聘也是很多猎头及HR的痛点所在。那么在这种混乱的环境中,如何才能让自己突出重围?需要实力,更需要技巧。简历筛选是第一步,在这里我仅对于简历的内容及形式提一些自己的看法,供大家参考。

    1、简历不仅仅是你的个人经历,它更重要作用是通过展示你的个人能力让你获得更多的面试机会,从而增加你快速入职的可能性。所以简历当中的一切信息都是为了增加你的竞争力,任何可能削弱你竞争力的东西你都要慎重考虑是否要写在简历中。

    2、简历一般都是先由HR进行筛选,然后提交给技术人员(面试官)进行筛选,最后约面试。为了避免你的简历被HR一键移到废纸篓,简历首先要符合岗位要求,千万不要死在HR手里!

    3、非设计类或产品类的简历不需要格外的美化!所以不要将大量的时间花费在选择如何漂亮且高大上的简历模板当中!你的简历只需要简单大方即可(内容表达清楚,段落分明)。

    4、如果用微信发送简历请不要使用word格式,因为HR有可能看到的是一堆杂乱无章的文字,所以请果断转为pdf格式后再发送。

    5、如果是自荐的简历一定要将署名及应聘岗位写清楚。

    6、在很多公司都有一个二五原则,且该原则已被某东公司写在了纸上。关于二五原则:即在以往的公司期间每个公司的工作时间不低于2年,或者某个公司就职时间超过5年。下图是我帮朋友内推的反馈:

    image

    7、有很多的公司会在面试前将你的简历打印好,所以没有携带简历也不必慌。

    8、关于个人掌握技能的表述其实九成以上几乎都是一样的,都差不多把前端用到的技术罗列一遍,毫无意义的占据了简历中的黄金地段。所以技能不是写的越多越好,千万不要将那些听说过或了解过的技能写进去!还有切记不要写精通(一是没有可信度,二是面试官可能会问你一些刁钻的问题)。如果无从下手可以查看招聘网站当中的岗位要求。

    9、关于项目的介绍不要写的太详细,更不要写通过XX技术实现XX功能的文字!而是应该从业务的需求角度将你负责项目的相关功能模块信息写进去即可,如果你能够将为项目带来的贡献结果写进去那是最好的。比如:我做了 XX 项目的前端重构,通过采用 XX 手段,克服了 XX 的困难,最终让 XX 需求变更可以短平快的被消化,极速研发并快速上线、且前后端交互也做到了标准化从而大大降低了研发成本。

    10、如果你应聘的是高级前端开发或者想去大厂的话,以下内容在简历中最好都要有所体现:基础知识(HTML、CSS、JS)、高级部分(源码、优化等)、积极性(开源项目、博客积累等)、视野(新技术的了解和学习)。

    11、简历不宜太长,如果你是工作多年的前端,肯定有很多项目可写,但全部写出来就有点流水账了,而且会掩盖主要内容,建议最好控制在三页之内,把最能体现自己价值的内容写清楚。一页的话太少,除非你能通过简单几句文字就能体现出你的过人之处。

    12、不要过多关注技能证书、四六级、学校期间的社团行为等。

    13、如果你是转行做前端的,不相关的经验不要写。因为大量不相关内容的堆砌会让面试官怀疑你的专业性。

    14、简历上的照片如果“不好看”请不要放!这里的“好看”是指正面、积极、青春、干净利索、积极向上的,给面试官一种积极向上能量的。

    15、工作经历以及项目经验一定要以倒序的形式排列。

    16、注意自我评价,不要在百度中复制粘贴!更不要写300字的小作文!请记住你是找工作的,而不是来相亲的。

    最后,以上这些都是建议,不管你觉得有没有用,请坚持一个原则,那就是:尽量体现自己是一名合格的前端工程师。

    —————END—————
    喜欢本文的朋友们,欢迎关注公众号 张培跃,收看更多精彩内容!!!

    展开全文
  • 前端展示页面还剩标签页、分类页、归档页和关于页没有做,通过之前做首页和详情页学习,对Semantic框架使用已经有了基本认识,而后面这几个页面基本大同小异,都比较简单,也没有用到新东西,在这里就不一...

    Spring boot开源项目之个人博客(6)—搭建博客其余前端展示页面

    前端展示页面还剩标签页、分类页、归档页和关于我页没有做,通过之前做首页和详情页的学习,对Semantic框架的使用已经有了基本的认识,而后面这几个页面基本大同小异,都比较简单,也没有用到新的东西,在这里就不一个一个的去写怎么做的了。

    导航栏还有一个变化

    在这里插入图片描述

    当希望高亮此时打开的页面时,我们可以对menu中的item加上active,就能实现高亮显示了。

    当这些完成后我还进行了一项工作,就是把这些日子敲的代码git到GitHub仓库上去,不然自己辛辛苦苦码的代码很容易就全没了。我前不久就经历了这个极其悲伤的事情,换了电脑,脑子一抽把之前电脑的Webstorm删掉了,后来转移代码的时候打死也找不到之前写的代码,搞得最后重新又敲了一遍,不过经过这一遍完全自己写,收获也挺大的。

    把项目git到GitHub上可以参考这篇博客

    79951802 )。

    之后的工作就是做后端管理的页面了。

    展开全文
  • 幼师的个人简历个人评价 如果你想成为一名幼师,那么你知道个人简历中的自我评价应该怎么写吗?对于一名幼师来说需要具备的素质你拥有了吗?下面小编给大家分享一些幼师简历中自我评价范文,希望能够给大家一些帮助。...
  • 目录 前言 什么是编程 从问题出发 在自己生活中使用编程 ...给初学者入门路线——略知...这位“老程序员”非常自信地给我展示了十多个他写的网站后台以及哪些千篇一律 CRUD 表单,然后跟谈他写的 ...

    目录

     

    前言

    什么是编程

    从问题出发

    在自己的生活中使用编程

    给初学者的入门路线——略知天高地厚

    写在最后


    前言

    最近公司要招一个人后端程序员,把面试的工作安排给了我。面试招人也很顺利,也招到了一个不错的小伙子,但让我印象深刻的是其中一个有着三年工作经验的“老程序员”。这位“老程序员”非常自信地给我展示了十多个他写的网站后台以及哪些千篇一律 CRUD 的表单,然后跟我谈他写的 SQL。

    “你看你写了那么多差不多相似的东西,那你有没有积累一套自己的库或者工具用来快速生成这些 CRUD 的表单?”,我问道。“啊?”。看出了他明显有些疑惑,于是接着问道,“那你除了给公司写这些业务代码以外,有尝试过给自己写过代码吗?也就是说方便自己生活或者工作的工具之类的?”。“……”,他沉默了,不知道该怎么回答我。最终的结果当然不言而喻,否则我也不会写在这篇文章里面。在我看来,这位拥有三年工作经验的老程序猿,虽然他熟悉语言,熟悉框架,熟悉业务,但其实并没有学会编程,甚至不如我们刚招进来的应届生小伙子。

    这次事情让我想了很久,也向身边很多人交了一下,才发现原来在编程时候,很多我觉得理所当然的基本能力,居然都是稀缺资源。这当然并不怪谁,因为“意识”或者“思维”这个看不到摸不到的东西,并不是说自己只要努力就行了,还需要向别人借鉴吸取经验,也需要有自己的悟性和思考。那么借着这篇文章,我也结合那么多年来的所想所感来聊聊怎么学编程,怎么学好编程。

     


    什么是编程

    我的理解的编程是:面对一个问题,经过思考后,最后将解决这个问题的思路用计算机能理解的方式表达出来。这里面有三个关键词,“问题”、“思考”以及“表达”,我觉得这是三个关键词也是编程最关键的地方。但是非常多的人看待编程这个问题的时候,往往都只能看到最浅层面上的写代码,而“问题”和“思考”这个两个关键词则被大多数人所忽视了。

    其实“程序员”这项工作,无论是想做技术还是转管理,无论是做学术还是做工程,只要越往上走,“问题” 所占的重量就会越来越高,相应的写代码所占到的能力比重会越来越低。甚至一些顶层的大型系统架构师,顶层的算法科学家,甚至可能一行代码都不需要写。

     

     

    从问题出发

    举个例子,乔帮主的 iPhone 为什么能重新定义手机,因为一开始大家将手机所解决的问题定死在了打电话收短信这个通信领域,而乔帮主用 iPhone 重新定义了手机所解决的问题,让打电话和收短信支部会是附属的功能之一。乔帮主重新定义了问题,让以通讯起家的摩托罗拉,诺基亚等大厂从此衰败的。

     

    众所周知,前端技术发展迅速,很多前端们大呼学习成本高,但是前端的小伙伴们真的想明白了前端为什么会如此迅速地发展,到底是什么在领着大家快速往前跑?答案还是我们这章节的标题——问题。比如,Vue / React 等框架的出现,并不是解决了 jQuery 所面临的 DOM 操作复杂的问题,而是从新定义了问题。前端的高速发展,就是我们的先辈们一遍一遍重新定义我们面对的问题而产生的。

     

    我在知乎或者其他编程社区经常能看到有人问类似的问题,大致是说已经学会了一门编程语言了,但是却不知道自己能干什么。这种问题最常出现在计算机科班学生的身上,比如大一的时候学了 C / C艹 了,所有的语法都学会了,但是不知道自己能干嘛。

    因为在那时我们并不知道自己学了这门编程语言,面对的是什么样的问题。老师从来都没有告诉我们学一门学科要拿来干嘛。这就导致了我们在学习的时候,尤其是学习计算机一些理论基础的时候,完全没有目的,不知道自己学习的这门学科面对的是什么问题,不知道它需要解决什么问题,在现实中是要怎么用。最终非常多学计算机的莘莘学子,像我一样,哪怕在双一流高校学习了四年,甚至靠着高中积累下来的应试经验拿了很高的成绩,却依然是一脸懵逼。

    学习编程,尤其是计算机科班朋友一定要注意,在你学习一门课程的时候,请一定一定先了解这门学科的背景,历史以及所面临和需要解决的问题。

     


    在自己的生活中使用编程

    我大学时候是软件工程专业,我曾经推荐过一个直系小学妹用“按键精灵”这个工具。她非常疑惑为什么我一个她眼中的“专业”人士会给她这个正在走向专业道路上的人推荐一个“业余”工具。我跟她说,如果她能用好这个工具,那么肯定就能学好编程。

     

    按键精灵2014正式版_按键精灵Mac版_按键精灵下载-按键精灵官方网站-免费下载​www.anjian.com

    按键精灵,这样一个非常非常业余,很多所谓“专业人士”都看不上的小工具,却蕴含着编程这个领域非常深刻的理解。那就是发现我们生活中的问题,并且用我们手上能利用的工具来改善我们生活,方便我们生活的能力。

    还记得我们初中历史上学的内容吗?人与动物根本区别是什么呢?答案是:会不会制造和使用工具。我们要解决一个问题的前提是,我们知道这是一个问题。我们人类会制造和使用工具,前提是我们人类明白 “提高效率” 这是一个问题。

    在按键精灵上面写脚本的大部分都不是专业的程序员,他们可能是已经在工作的公务员,小学老师,也可能是闲着蛋疼的大学生,甚至可能是一个喜欢玩游戏的初中生在给自己做游戏挂机脚本。但是在我眼里,他们是一群保留了人类进步那种最原始的动力和火种的人。所以我也相信,这些人如果真的从事了程序员这个行业,毫无疑问都将会是其中的佼佼者,因为他们都懂得编程,只不过还不会一门编程语言而已。

    给初学者的入门路线——略知天高地厚

    “好的,你说的道理我都懂了,那么我想学编程,我应该怎么办?”

    不给勺的鸡汤都是耍流氓,我写这篇文章当然不是为了只耍个流氓就跑的,所以还是希望给想学编程的小伙伴们一些更为实质的意见吧。

     

    学一门“性价比”极高的编程语言——JavaScript

    首先对于选择编程语言方面不要犹豫,就学 JavaScript。我从来都喜欢推荐萌新入门学习 JavaScript,甚至我推荐所有相关行业都学一下 JavaScript 备用,这不是因为 JavaScript 有多好,而只是因为 JavaScript “性价比”非常高。

    我推荐用 JavaScript 入门的原因非常简单:

    1. 简单好学,并且包含虽有主流编程语言范式。
    2. 可以简单快速的建立漂亮的 UI 界面。
    3. 从前端到后端,从 PC 端到移动端,从应用到游戏,从嵌入式和机器人到深度学习以及人工智能, JavaScript 都能有所涉及。

    回到我们本章的标题《略知天高地厚》,略知代表我们并不需要去深入研究所有领域,我们只需要依赖 JavaSciprt 这个环境,以及知道这些领域的成果,我们就可以通过“调包”、“调API”来为我们解决问题就行了,所以才是略知天高地厚。

     

    找到自己的方向

    略知天高地厚,是大概清楚编程的能力,大致能干什么。现在你已经有足够的能力去找到一个自己喜欢或者适合的领域自学了。现代环境对程序员的要求已经慢慢变高了,一个正经的程序员基本上都能熟练使用 3 门以上的编程语言。所以不要纠结于编程语言,需要用到就去学便是。

    到目前为止,上面学到的所有东西也许可能不见得会成为你吃饭的直接工具,但是绝对是你背后的助力。


    写在最后

    编程是一项对一个人综合能力的集中体现,并不是说学个语言,会写两行代码就叫做会编程的。最后欢迎来到我们编程世界!也希望大家能够自由地畅游在我们这个多最多彩的世界!

    Hello world!

     

     

     

     

    展开全文
  • 但是简历明明投放了很多,却没有收到面试通知,怎么回事?如果你还是只会word简历,那你就out啦!好的简历是成功的一半,你应该有一份高逼格的简历,下面就来说说...2.使用github展示自己的个人简历(高逼格一)...
  • Beta阶段展示博客

    2018-01-01 21:31:00
    Beta阶段展示博客 ...(绝对不知道,一个代码的怎么就当PM去了?) 张安澜 博客园ID:MinstrelZ 身份:后端开发 个人介绍: 张安澜,来自北京航空航天大学2015级计算机学院,喜欢旅游,修仙党,...
  • 在前面:本文内容如题,没有乱七八糟的步骤,最简单的搭建个人网站,想要展示更多的个人能力,经验,经历,在简历上放上自己的个人网站链接无疑是一种比较好的方式。前端对服务器要求不是太高,主要是找个平台给...
  • 不知道怎么样写好自己的个人简历特长,假如要去应聘网络管理员应该怎么写? 个人简历是自己学习生活的简短集锦,也是求职者自我评价和认定的主要材料。它是一扇窗户,能使用人单位透过它了解到求职者的部分...
  • 烫烫烫烫烫(hotcode5)团队 ...(绝对不知道,一个代码的怎么就当PM去了?) 张安澜 博客园ID:MinstrelZ 身份:后端开发 个人介绍: 张安澜,来自北京航空航天大学2015级计算机学院,喜欢...
  • 坚持以后每天日记

    2010-07-15 09:25:00
    读书以来,一直没有日记习惯,所以一直以来都不怎么文章,不知道文章结构怎么安排,以致每次写的一些东西都是乱七八糟,没有一点头绪,这也和没有这方面天分有关系吧。 但是,最近越来越发现,写作...
  • 但是首页上展示的都是一些功能比较简单应用。看到一个京喜算是大商城应用,结果用安卓使用,也是卡出了天际。 总结 <ul><li>好不用说,无论对团队,还是个人。还是对产品都是前所未有...
  • 2020个人简历自我评价简短50字左右 在求职过程中,简历是必不可少存在,但自我评价你知道怎么写吗?以下是小编整理了关于2020个人简历自我评价简短50字左右,希望你喜欢。 个人简历自我评价简短50字左右篇一 ...
  • 往期我们朋友圈是漫天广告,或者不知道怎么写朋友圈文案。更何况最近微信更新升级,对朋友圈内容打击甚是严厉。下面就是在朋友圈已经见到情况。 和以前朋友圈展示不同,系统会把出现频率高,直接...
  • <div><p>学习 React 的过程中实现了一个个人...或者是我的想法有偏差的,欢迎大家交流指正 欢迎参观:<a href="http://axuebin.com/react-blog">http://axuebin.com/react-blog</a></p> <p>Github:...
  • 当我们在一些软件上注册或者登录信息时候,还有很多信息是没有填写完整,而当我们完善个人信息之后,在我们再次登录那个软件时候,个人信息已经回填到页面上了,这个是怎么实现呢?你有没有想过呢?接下来...
  • 个人建站过程全记录(工具层)

    千次阅读 2018-01-06 11:09:48
    本节,我将介绍下此次我的网站在工具层面做的工作,也会介绍下基础概念。这里面会侧重广度的展示,在深度上不会花太多时间。因为在初学阶段,了解原理不是最重要的,最重要的是了解怎么用,在熟悉了怎么用之后再去...
  • 百度ueditor初步使用

    2017-10-04 23:04:20
    今天有一个人问我富文本编辑器怎么用于是打算一篇富文本编辑器使用的步骤这里拿百度ueditor的jsp版本来说这不由让我想起了我的第一次jsp项目实战,做的是个博客当做文章功能的时候,用了一个很大的textbox来做...
  • 距离发布时隔数月,不少的同行针对我的实现方式提出了各种各样的问题,包括但不限于: XXXXX(上拉加载更多,错误界面的展示,Header或者Footer)怎么实现? 回顾初心,我当初这篇博客的目的是 展示一种不同的实现...
  • 上一篇文章是android2.3编译,已经过时,而且现在ubuntu已经升级到12.04,等等之类,使觉得非常有必要重新一篇新博客来展示最新android怎么在最新ubuntu上编译。基于以上几点,下面将基于galaxys2来...
  • 春节活动邀请函.doc

    2021-01-18 15:21:10
    春节活动邀请函 春节到了,举办串接活动,向亲朋好友发出邀请,那么你知道春节活动邀请函是怎么写的吗?下面小编整理了春节活动邀请函,供你参考。春节活动邀请函范文一 一、活动主题 传播爱心 汇聚正能量 ...
  • 28————你是我的情也是我的爱 29————你给的幸福又被你带走 30————还是不够爱 您想下载哪首歌(输数字):26 Traceback (most recent call last): File "e:/自己文件/pyhonn/用Python一个酷狗爬歌...
  • 关于Android集成微信支付过程

    千次阅读 2016-08-06 15:48:38
    本来是不打算关于微信支付,网上有太多了,但是前些天一个哥们居然还问微信支付怎么集成,所以准备做个记录。 以下内容是将微信支付所有过程都放在在app端,这是不推荐,实际中前几步由服务器来做比较...
  • 前段时间,我在互联网冲浪时候,发现了一个写作的工具组合 Gitbook + Typora,堪称神器。 安利到 Blink 和朋友圈之后,有一朋友表示很感兴趣,希望我简单出一个...正好我的个人网站备案审核通过了,就利用 Gitbook.
  • 其实一开始是自己打算自己一个人用,所以代码规范方面没考虑太多怎么方便怎么来.... 展示 界面 UI界面用是这位大哥 作为一名java后端 写的UI真不能看 核心文件 邮箱配置: email.js K线计算: line.js 币种...
  • lucene实战入门

    2018-11-15 11:37:00
    最近在写个人博客项目.有个需求.就是要求在前端页面上有一个搜索框,用户可以根据这个搜索框对所有博客进行全文检索,包括标题和正文,然后根据搜索匹配度进行排序展示...这里只说到底该怎么做,具体概念能省则省...
  • 最近刚好接手一个3D显示活,虽然还没怎么弄明白,但是也看过一些方案,走了一些弯路,经过一些浅显了解(3D Display这里面水太深),说说我个人的看法吧。 1.目标 项目主要工作是能够接受从核心模块得来...

空空如也

空空如也

1 2 3 4 5
收藏数 91
精华内容 36
关键字:

我的个人展示怎么写