为什么学编程要从Web开始?

更新日期: 2019-04-29 阅读: 2.5k 标签: 编程

大多数大学生接触的第一门编程课便是C语言,这对于一个完全不懂计算机的人可能是噩梦。


不少人初次上C语言课都会被指针绕得晕头转向,然而大部分编程工作并不需要你关心指针的使用。此外,C语言对可视化编程并不友好,用C语言编写图形化界面十分繁琐。在这种情况下,很多大学生都会问C语言能做什么?


C语言看似简单,实则无比强大,它主要的用途是系统级编程,操作系统,数据库,编译器,虚拟机等等,可是,并不是每个人都愿意去尝试或者有机会接触。


这会导致大多数人学了C语言并没有多少成就感和兴趣,甚至因为这门课怀疑自己能不能学好编程,或者拿到计算机专业的毕业证。


事实上,这样想是多虑的。并不是每个计算机专业的学生将来都要去搞操作系统,编译器或嵌入式开发,应用型人才大有可为。你完全可以先从应用层入手,获得成就感和兴趣,再深入钻研底层开发。


在我眼里,编程是世界上最好的工作。既可以凭此获得报酬,还可作为兴趣爱好,享受解决问题的那种成就感。所以,当你第一次学编程或者对编程开始失去兴趣时,不妨从Web入手,先做一个网站。Web开发所用到的语言大多数都是所见即所得类型,学了马上可以做出一个可视化的作品,很有成就感。


Web开发是最简单的,而且开发语言也多种多样,比如JavaScript、php、JAVA、Ruby、Python等。互联网上关于Web开发的学习资料是最多最丰富的,大多数问题都可以通过搜索引擎找到解决方案。这对初学者十分友好,降低了编程的挫折感。


尽管受到移动互联网的冲击,但不可否认,网站是互联网最普遍的应用形式,并将长期存在下去。如果你想做Web开发,Just do it!


Web开发分为前后端,前端包括htmlcss和JavaScript等,后端包括Node.js、JAVA、Python、PHP、Ruby等。如果你想做一个静态网站,只需要学习前端技术即可。


前端技术本身难度不大,但浏览器适配和响应式布局稍微有点棘手。初学者完全不必理会,先做出一个静态网站即可。当你做出第一版静态网站时,你一定会兴奋,因为这是你自己的作品。


网站做好后,你可能想更新网站内容,但手动更新又比较麻烦。这时你可以选择一门简单的后端语言,尝试下服务器搭建、前后端数据交互和Linux命令行操作等等。后端技术优先推荐Python、PHP和JAVA,三者选其一即可。


人生苦短,我用Python。Python内置了大量丰富的函数供你直接调用,有些语言写很多行的函数,Python一行代码搞定。此外,Python作为程序员必备的脚本语言,在爬虫、科学计算、AI等领域也很出彩。利用这个机会学习下,技多不压身。


除了Python,PHP效率也不低。作为世界上最好的语言(:-D),PHP为Web而生,PHP可以直接嵌入HTML标签,十分方便。经典的LAMP或者LNMP搭配更是世界上绝大多数网站的标配(L:Linux,A:Apache,N:Nginx,M:MySql,P:PHP)。


最后推荐的当属老大哥JAVA,在国内可能就JAVA程序员最多了,所以学了就业肯定不愁。不过,JAVA的难度要Python和PHP稍高点。


学了后端语言后,你可以做一个动态网站了。不过,还差一个数据库,推荐MySQL。如果你不想学SQL语句,可以寻找后端语言对应的MySQL图形管理应用。但是,当你的数据量较大或者经常存取数据时,建议学习下基本的SQL语句以提高效率。


当你前端和后端都学完了,你就可以随性所欲的做你想做的网站。做出来后,记得分享给你的好友和家人,他们的鼓励是你前进的动力。


这就完了吗?万里长征才刚踏出第一步。


为什么我的网站这么慢?可能是因为前端静态资源CSS或者JavaScript太大或者加载方式不对。你得学习下代码优化、静态资源压缩打包和页面渲染原理吧。


为什么查询数据怎么慢?你得学习下数据库优化吧。


有小伙伴想和你一起开发网站,怎么让别人快速看懂你的代码?你得学习下代码模块化(低耦合,高内聚)和接口设计吧。


为了使你网站稳定,你还会遇到很多问题。但通过前面学习,相信你已经学会了如何独立排查和解决问题了。独立解决问题的能力是程序员最基本的能力之一。


网站稳定了,你可能想设计出类似于热门内容和推荐内容等。一看需要用到排序算法和推荐算法,恍然大悟,数据结构和线性代数被你学成了狗屎。不停的责骂自己,当年上课的时候干啥去了。


不要着急,相信你现在回头再去看时,一定能学进去。因为学了,你马上就可以用。现在你终于明白,数据结构中的时空复杂度、线性表、栈和队列、树、图、排序和查找是怎么用的。


诶,课本里的C代码怎么和我写的Python和JAVA这么相似。仔细搜索发现,C语言才是这些语言的祖师爷。顿时心生悔意,要是当年好好学C语言,现在也不会这么吃力。种一棵树,最好的是十年前,其次是现在。赶紧学吧,少年!


现在网站也像模像样了,想知道浏览器怎么运行的吗?HTTP协议是啥?不用搜了,赶紧回去看计算机网络,”三次握手”必须烂熟于心。


终于有一天,服务器死机了。这下你得学习下服务器运维,了解下服务器工作原理吧。世界上绝大多数服务器系统都是Linux,Linux系统你得学习下吧。


多线程多进程貌似见过?你已经学过了,就在操作系统那本书里,老师讲的时候你没认真听。这下你恍然大悟,原来学校里的课是有用的,只是自己没发现。这样你又回去把计算机组成原理和微机接口原理复习了下,了解了Byte和Bit的区别,了解了二进制编码,了解了汇编语言等等。


大道至简,心中有剑于无形。现在你明白了,编程语言只是术,而计算机基础课才是心法。万变不离其宗,你不再恐惧编程,也不再把自己限定在某一种语言。你开始不满足于只做网站,你想做APP、游戏、编译器或嵌入式开发等。


通过之前的学习,你学会了如何用项目去驱动学习,学会了独立解决问题,学会了快速上手一门编程语言,学会了前后端如何交互等等。即使你以后不做Web开发,这些能力都是通用的,伴随你一生。


现在,恭喜你,你已经是一名软件工程师了!


来自:码农翻身(微信号:coderising)
作者:刘欣


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/3123

相关推荐

在线运行编程网站

学编程的程序员小伙伴越来越多了,在学习的过程中会发现很多知识点如果不在工作中运用或者手写带验证的话,很容易忘记。任何技能的掌握都是需要不断练习的。在此整理一些在线运行编程的网站。

前端的编程软件哪些比较好用?

推荐8款最好用的前端开发工具供美工或者前端开发人员使用,当然若你是NB的全栈工程师也可以下载使用。Web前端开发最常见的编程软件有以下几种: 在前端开发中,有一个非常好用的工具,Visual Studio Code,简称VS code

程序员的笔记,编程写软件学到的 7 件事

如果你真的做出了一些东西,在面对那些令人眼花缭乱的理论知识,或是和你相似甚至比你做的更糟糕的人时大可不必谦虚。在一天结束之时,正是那些在战壕中的开发者——构建、测试和开发了代码的人,真正做了事情。

十大编程语言榜单

如果你是软件开发领域的新手,那么你会想到的第一个问题是“如何开始?”编程语言有数百种可供选择,但是你怎么发现哪个最适合你,你的兴趣和职业目标又在哪里呢?选择最佳编程语言以学习的最简单方法之一,是通过市场反响、技术趋势的发展…

Blockly - 来自Google的可视化编程工具

Google Blockly 是一款基于Web的、开源的、可视化程序编辑器。你可以通过拖拽块的形式快速构建程序,而这些所拖拽的每个块就是组成程序的基本单元。可视化编程完成

感觉自己不适合做程序员,什么样的人不适合做程序员?

学习是一件艰苦的事情。很多人想要成为程序员,在学习编程的过程中,面对各种 bug 和源源不断的问题,有时会对自己是否适合编程这一问题产生困扰。在教学的过程中,他总结出了不适合做程序员的十个特征

CSS并不是真正的编程语言

每隔几个月就会出现一篇文章表明:CSS并不是真正的编程语言。以编程语言的标准来说,CSS过于困难。使用这门语言会很有创造性:事实确实如此,CSS不同于传统的编程,且具有缺陷,同任何标准化编程语言相比

自学编程的网站有那些?

如今,很大一部分人在学习编程的道路上都选择自学,但都苦于找不到适合自己的学习资源,今天为大家介绍11个免费的自学编程的网站,为大家提供一些帮助。很多人自学编程,都会通过w3school,你可以通过它学习所有的网站建设基础教程

无码编程:无代码软件开发大行其道

代码是大多数软件程序和应用程序的骨干。每行代码充当一条指令:采用一种逐步性的逻辑机制,以便计算机、服务器和其他机器执行操作。想创建那些指令,就要知道如何编写代码,这项宝贵的技能有时很吃香。

自学编程的六个技巧总结

这些事情可以帮助新手在他们漫长的旅程中学习编程。我知道我还有更多东西需要学习,并将继续学习如何永远地学习。最重要的事情说三遍,请继续,不要放弃,不要放弃,不要放弃。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!