想了解北京美术java编程学习吗?想了解Java程序员从菜鸟到大牛成长宝典(2020年11月最新修订版),你到底适不适合做码农?编程需要多久能学会?编程要怎么学??? 吗?......本文带你一探究竟。
利益相关:10年Java开发经验,美团资深Java开发工程师。最近好多同学咨询如何学习编程,如何学习Java。十几年前,自己刚开始学编程的时候也遇到过同样的问题,那时候互联网还没有这么发达,很多时候就靠自己摸索。十几年过去了,自己在编程这条路上走了好久,毕业6年做过金融核心系统,负责过开放平台项目,最近在设计债券投资交易系统。技术上算不上大牛,但也有了很多设计开发经验。希望能通过这个成长宝典给大家分享我的经验,也欢迎大家能通过评论区来拍砖交流。文章会持续更新,感兴趣的同学可以先收藏。程序员是来做什么的?在讲程序员如何成长之前,应该先把这个问题讲清楚。程序员是来做什么的?程序员工作的意义是什么?很多同学会感觉这个问题很简单,程序员不就是来写程序的吗。其实这个问题很深奥。简单的讲,程序员是通过计算机方法(一般是编程)来解决各种现实问题,创造经济和社会价值的。比如老马在县里开了个商场,感觉来钱比较慢,想去开个网上商场,和全世界的顾客交个朋友。如何在网上开商场,这就是个问题。程序员要做的就是通过软件来解决这个问题。如何解决问题呢?程序员的工作解决问题一般都分为2步:把现实问题转换为数学问题。这其实就是个数学建模的过程,针对商场可以对商业模式进行分析,把商品按照SPU、SKU进行区分,把商家和顾客分为B端和C端。这部分能力靠的是业务知识和逻辑分析能力。这部分内容变化会比较慢,对数学要求比较高,问题分析能力决定一个程序员的上限。通过计算机方法(一般是编程)来解决这个数学问题。商场的数学模型分析好了,就需要通过软件系统来实现功能了。比如选用哪种框架、使用哪种语言、数据库用什么、安全防护需要做哪些?这部分内容会变化得比较快,随着框架和底层技术的发展,入门门槛逐渐降低。程序员如果只是能简单的完成这一步(CURD Boy),并且对底层原理没有太多研究,就很容易被淘汰。企业为什么需要程序员?现在每家企业都会找一些程序员,信息化、互联网化是现代企业的诉求。但更根本的原因是追求利润,老板需要赚钱,有好多业务问题只有靠程序员才能解决,老板招聘程序员就是想让程序员通过技术来解决业务问题、推动业务发展,让老板赚更多钱。所以,对于大部分企业来讲,程序员只专注于技术是不行的,要能让技术解决业务痛点,能帮老板赚钱,才能有好的发展。Bob大叔曾经在《架构整洁之道》中讲过,好的架构就是能用更好的人干更多的活(我加一句,能帮老板赚更多的钱)。企业的程序员一定要记住,能帮老板赚钱是程序员在企业中最重要的价值。程序员应该具备哪些能力?(待补充)程序员应该如何入门?(待补充)程序员的最佳学习路线?(待补充)程序员如何参与开源项目?(待补充)业务和技术哪个更重要?(待补充)读书期间应该怎样打好基础?(待补充)读研OR直接工作?(待补充)找好工作的技巧?(待补充)程序员职场中如何拿好考评?(待补充)
作为一个做了10多年的码农,几乎一直是自学,专业和计算机没有半毛钱关系,10多年前为了把兴趣变成职业,报了北XX鸟培训班,我几乎没怎么去上过课,所有的课我都是自己翻翻书,三两天就都明白了。我并不是神人,只是这些知识已经在我平时的生活中,零零散散都接触过,现在不过是系统化的过一遍而已。我的知识并不是在培训机构学出来的,一样在这个行业干了这么多年,自认为还不错,虽然不是专家,但是还是能解决很多实际问题。在网上,在工作中,经常遇到对怎么学习编程感到迷茫的同学,也有学了之后更加迷茫的同学,让我忍不住想写一篇文章,给想入行、刚入行的朋友一些意见。如题。看下我们要解决的问题,我们一个个来:一、你到底适不适合做码农?首先你要先问问自己的内心,你到底为了啥去学编程?一类人是出于对计算机的热爱、对开发软件有着痴狂、报班前就自己鼓捣开发过程序,想把兴趣变成爱好,这些理由的人,你一定要深入系统的学,选班要慎重,慎重,慎重。重要的事儿说三遍,北XX鸟、达X慎重啊。现在很多网上的在线课程也非常不错,如果你真是兴趣使然,自控力强,不一定非要学线下的班。另外一类人,大概率是看到同学做了软件开发,收入还不错、亲戚说现在做软件开发的可赚钱了、更有甚者是因为学校成绩不好,自己也没有什么别的技能,觉得培训班一个月就能出师,变成太简单了,就学这个吧。如果碰巧你是这类的人,那我作为前辈奉劝一句,不要做这一行,你做不好的,你的天花板大概就是月薪10-15k(北京)、绩效经常是C的水平,早晚你还是要再某出路的。我工作这10年,这样的人遇到的太多了。IT界一般注重能力,不注重学历,但是,听好但是,如果你连最大专水平都没有达到,只是高中或者初中毕业就念不下去了,那么对不起,不是因为你学历达不到门槛,而是你的学习能力、自控能力、钻研能力是有问题的,你一定做不好。你需要做的是改变你自己生活、学习习惯,而不是急于去学个什么证,没用的。码农毕竟不是真的搬砖头,学会搬一个就会搬100个,实现功能的方式有无数种,怎么平衡、怎么去写每一行代码,1w个人会有1w种写法,最终的稳定性、可维护性、性能是千差万别的,这是需要你的悟性、兴趣、学习力、钻研精神以及智商共同达成的结果。还是那句话,是需要你有主动的学习和探索意识,这个比报什么班、学什么重要的多。说说我自己,我的舅舅很早就是做电脑相关生意的,我接触这类东西很早,我也对电子产品非常感兴趣,家里的电器很多我都拆过,当然,很多直接就挂了。我从小学五年级(96年左右)拥有了一台自己的电脑,一台386的淘汰机器,操作系统是DOS6.22,安转盘是三张1.44MB的软盘,逐个目录研究,弄坏了无数次,安装了无数次。我清楚的记得内存资源有限,640kb,想尽办法优化开机剩余内存,每次看到数值的提升,都有非常大的成就感。这些事情在资源丰富的今天,早已不被人所熟知了。这些过程,让我学会了熟练使用各种DOS命令以及了解了操作系统的皮毛。之后无意中了解到BAT文件,目前也是存在的,类似一个脚本,和linux中的shell脚本差不多。可以批量执行命令,当时我觉得这个好神奇啊,可以按我自己的想法去自动化的执行一系列命令,并且能给出我想要的提示,这简直太棒了。这大概是我喜爱编程的源头。后来爸爸给我买了一台586的电脑,当时花了5000多,96年的时候也是不少的一笔钱,家里人对于我这个爱好还是相当支持的。那时互联网还没有普及,老百姓家里上网还是很贵的,我那台电脑自然没有接入。那个时期,是盗版光碟盛行的时候。我家在长春,同龄的小伙伴一定都知道欧亚商都楼上的盗版碟市场,我记得从最早25元一张,到后来10元三张,我买了不知道多少光盘,游戏的、软件的、素材的,市面上差不多所有的东西我都在不断的尝试、体验。这个过程中,其实我搜集到了无数的软件需求、案例、解决方案,只是我自己当时并不没有意识到而已,这个收集癖一直保留着,这可能也是我现在遇到问题,会很快想到一个可能解决方案的原因所在。真正接触编程是之后上初中以后了,换了新机器,上了网,极大的拓宽了我的视野,发现原来世界上有这么多形形色色的软件,可以通过电脑为人们服务,解决问题,我就想那我能不能做一个?还是因为舅舅原因,因为他学的foxpro语言,就给我也推荐,但是说实话,这个还真的不适合一个初中孩子自学,我看了几天,放弃了。之后我遇到了微软的C# .net,winform程序的开发方式兼职太适合初学者了,磕磕绊绊的边用边学,很快,就能做出很多好玩儿的程序了。之后还开发了很多自己和朋友用的游戏外挂,也都是在摸索中前行,不会哪里补哪里。写了这些经历,只是想告诉后来人,编程的学习过程并不是眼睛看书、耳朵听讲、做做课后练习那么简单,在企业中、在生活中,做出有价值的东西,过程中会遇到很多问题,往往这些问题没有绝对适合你的解决方案,需要你保持一颗钻研前行的心,以及对编程这件事足够的兴趣,这些是你能成为一个好码农的根本。二、编程需要多久能学会?这个问题经常被人问。问这个问题的人我很理解,他们是希望找到一条捷径,希望我能告诉他们3天入门,7天成才,1个月成专家的答案。但很遗憾,编程这条路没有捷径,你多久能学会,能学到什么程度,是与你的天赋和你敲出来的代码行数有直接关系的。注意我这里强调了你敲出来的代码,什么意思呢?就是不是Ctrl+C、Ctrl+V来的,或者照着案例一个不差搬过来的,而是真真正正你自己思考过的。编程是一个知识面既广又深的学科,想解决更多的问题,需要你掌握多种语言,多种工具,多种计算机相关的知识;同时也需要你在某一些方面,钻研的非常透彻,从原理到应用都融会贯通。随着经验的增加,还需要你掌握编程技术以外的其他知识,才能更好的开发出有价值的东西。那到底什么叫学会了?学编程后,你会说:我学会了,我会写Hello World了;我会做增删改查了;我会做页面了;我照着书写了个爬虫,抓了好多妹妹图片……这些是会了吗?不,远远不是。我个人认为,如果是零基础,起码学习计算机相关知识1周、编程语言基础1个月,大量的课本实战练习一个月,自我持续探索开发2个月。总共四个月的时间,只要你的心在这,你会成为一个不错的编程新兵。那有人会说了,现在网上多的很,什么3天学会Python,7天Java实战等等,哪用得了那么长时间?我想说的是,如果你作为一个Hr、一个财务、一个产品,想用编程的手段解决一个你工作中的特定问题,那你去有针对性的学那个短期课程,没问题,这是在为你自己镀金,提升工作效率,但是,请不要说你会编程,这是两个概念。如果你想把编程作为你谋生的手段,那么,请踏实下心来,按照我说的一步一个脚印来。对你自己的未来以及你未来的公司负责。三、编程要怎么学?编程的学习是无止境的,干到老学到老,信息技术的变革非常的快,层出不穷的新技术需要你去了解,所以第一重要的是保持一颗爱学习的心,关注你的领域的发展变化。第一阶段:扫盲这个上面已经说过,不在重复,踏踏实实学好基础,不要想有捷径。第二阶段:快速提升在掌握基本编程知识之后,要大量的做练习,这个练习不见得要做书本中的,可以把你生活中遇到的问题,都想办法用写几行代码来解决。比如像之前说的玩儿游戏需要做的外挂,比如妈妈想做个广场舞的宣传页,比如老婆做微商想让你自动管理下群好友,比如孩子学数学给她定制个小游戏、比如你看到喜欢的日本女明星的图片想全部留存下来……生活中有太多太多的重复劳动可以用信息化的手段去解决,暂时不会不要怕,用你小时候吃奶的劲头去找些问题的解决方案,很多时候我们是找不到恰巧符合你需求的完整方案,但我们通过零散技巧的整合,最终都可以完成。通过这样的过程,会极大的锻炼你需求调研、需求分析、产品设计、逻辑思维、技术攻关、代码编写、测试调优、服务器部署的全流程技能,你掌握了这些,工作中的CRUD还是事儿吗?谁都会说你一句,某某某什么都会。工作中要善于总结经验,关注技术变化,无论是收藏文章还是自己撰写博客,或者维护公司的wiki,都是一个沉淀的过程,不要怕你脑子里的东西被人学去别人会超过你,我告诉你这是不可能的。别人学会你一两个结果,学不会你思考问题的方式和过程,这就跟上学时给学习差的同学讲题一样,我从不担心给谁讲了谁有一天就会超越我,如果有人超越了我,那也绝不是因为我给他讲了几道题,而是因为他比我更加努力而已。第三阶段:向下扎根有了第二阶段的广度,如果你还继续做技术,那么就需要有一定的深度了。之前更多的是应用,用别人的成果去解决你遇到的问题,你并没有真正的生产内容。这也是我一直认为的,为什么程序员被称为码农的原因。你的开发过程其实只是一个装配过程,把别人写好的模块根据业务需求组合在了一起。向下扎根,需要你懂得更多原理性的知识,如果觉得理论上有欠缺,别怕花钱,去报个班,这是对你自己的投资,或者考个研都可以。有了扎实的理论功底,你会发现以前有些问题,似乎有了新的认识,你可能会觉得某个曾经用的sdk或者jar包,会导致一些莫名其妙的故障,现在突然明白为什么了。在这基础上,你会创造一些东西,改进一些东西,形成你自己的体系。当然,如果你说干了几年,不想走技术路线,是不是就不用研究代码了?我奉劝你一句,无论你将来做技术经理、技术总监还是CTO,都不要完全抛弃代码,拿出你哪怕1%的精力,也要去时常写一写东西,工作中不做,生活中也要去做,保持与最新技术的联系,不与一线代码开发脱节,是一个技术负责人应有的责任。好了,说了这么多,不管怎么样,成人学习这个事情,还是要靠自身驱动,别人谁也帮不了你,你自己的意愿强,学习的形式不那么重要的。希望所有真正热爱编程的小伙伴,都能够学有所成,在自己心仪的领域创造自身的价值。
上述文章了解到关于Java程序员从菜鸟到大牛成长宝典(2020年11月最新修订版),你到底适不适合做码农?编程需要多久能学会?编程要怎么学??? ,让我们对北京美术java编程学习 有一个直观的认知。我们发现,作为一个优秀的Java程序员是多么的自豪。
只要一个电话
我们免费为您回电