您的位置:网站首页 > Java教程 > 正文

Java Python web前端编程入门学习路线

类别:Java教程 日期:2017-10-5 4:13:45 人气: 来源:

  虽然我们每天都在用Windows客户端程序,但在云计算日益发达的今天,客户端已经不再是各个互联网公司首先考虑的平台。与Web相比,客户端显得太笨重,而且无法及时更新。只要是能够通过浏览器提供的服务,就不必考虑开发客户端软件,只有那些运算量、数据量非常大的软件,才需要开发客户端版本。因此Windows客户端开发的岗位需求并不大,主要集中在专业软件领域,比如Adobe公司开发的各种图像处理软件、软件编程IDE、大型企业内部的管理系统等等。

  Qt是一个跨平台的软件开发框架,一套程序可以同时运行在Windows、Linux、Android、iOS、Windows Phone等主流操作系统上,功能非常强大。对于想开发跨平台客户端的公司来说,使用Qt的确可以节约很多成本。Qt主要使用C++语言实现功能,同时可以选择使用QML语言描述界面。

  首先,先明确一个观点,作为一个程序员,只会一种编程语言是远远不够的。最好精通1~2门语言,基本掌握其它所有常见的语言。这听起来有些吓人,但其实没那么困难。因为大部分编程语言都是很相似的,比如C语言、C++、C#、Java可以称为类C语言,它们都是从C语言开始一步步扩展得到的,掌握了其中一种,其它的可以触类旁通。

  信息类专业的大学生通常都会在一年级上C语言这门课,也很可能是大学期间唯一的一门编程语言课。所谓师傅领进门,在个人,通过学习C语言迈入编程世界的大门是再合适不过了。虽然也有人提倡学习Python作为第一门编程语言,可我觉得那未免太浮躁了。刚开始应该打好基础,而不是追求炫酷的效果。C语言是一门高级语言,又与计算机硬件息息相关,通过指针操作可以真切感受到数据的流动,这是Python无法做到的。因此,我的是,不管今后打算从事哪个技术路线,C语言都是必学的第一门语言。

  然而遗憾的是,我由于是在课堂上学的C语言,所以这方面的优秀教材了解的也不多。无论是学校使用的各个版本的《C语言程序设计》,还是国外大牛写的《The C Programming Language》,都未免太过枯燥。据说有一本科普性质的《啊哈C》写的非常通俗易懂,麻烦读过的同学点评一下是否真的如此。其它好的教程也希望同学们帮我补充。

  简单来说,面向对象是相对于面向过程而言的。C语言是一个典型的面向过程语言,因为C程序的执行流程可以很容易地画一张流程框图来表示,它强调程序员编写程序时是面向程序执行过程考虑的。而C#则是一个典型的面向对象语言,C#程序的执行流程通常很难用流程图表示,这是因为程序员编写C#程序时考虑的不是一个完整的从头到尾的执行流程,而是各个对象之间的调用关系。

  幸运的是我收集到了一套完整的C#视频教程,以及后续的WinForm视频教程。学完这两个,就会对面向对象编程有一定的理解。虽然今后并不一定从事Windows客户端的开发,但学习这两个内容可以帮助更好地理解后续更深层次的Java Web和Android。看视频的同时一定要照着在自己电脑上写一遍,这样才能印象深刻。

  并非每个同学都需要学习C++,Java和C++精通其中一门即可。但C++与Java并不是效能重复的编程语言,相反,它们分别着各自的领域,就像JavaWeb领域一样,C++着性能的基础设施、视频图像处理等领域。精通Java或C++都不容易(特别是C++,堪称最难编程语言),因此两者择一即可。

  程序员中流传着这样一个说法——“PHP是世界上最好的编程语言”。从提出这句话的那一刻起,就免不了一场编程语言界的。以至于PHP似乎成了其它编程语言的敌人,备受人们。然而在这样艰苦的中存活下来,而且能占据很大一部分Web市场,只能说PHP有其强大的优势。PHP开发Web项目非常快,而且轻量,是一种脚本语言,嵌入到HTML里面就可以运行。因此小公司使用PHP很容易搭建起自己的Web业务。然而Web项目规模大到一定程度时,PHP就有些难以胜任了,需要Java这样重量级的Web框架才可以支撑。因此,根据应用场景选择合适的技术才是最重要的。

  Lisp是一门古老的语言,老到大部分人早已忘记它的存在。我也是近两年才了解到这门编程语言。随着历史消逝的编程语言数不胜数,能够在50年后仍然保持活跃生命力的语言少之又少,Lisp是其中之一。1958年人工智能的约翰·麦卡锡(John McCarthy)为了解决人工智能领域的问题而发明了Lisp语言,比C语言的发明早了14年。然而Lisp中包含的编程思想却比现在最流行的语言早了几十年。看看《黑客与画家》的作者、硅谷创业之父保罗·格雷厄姆是怎么说的

  如果我们把流行的编程语言,以这样的顺序排列:Java、Perl、Python、Ruby。你会发现,排在越后面的语言,越像Lisp。

  Python模仿Lisp,甚至把许多Lisp黑客认为属于设计错误的功能,也一起模仿了。至于Ruby,如果回到1975年,你声称它是一种Lisp方言,没有人会反对。

  之所以我在这里提到Lisp语言,不是因为它多么有用(事实上Lisp的确没多少实际的应用),而是因为它蕴含的强大的编程,一种完全不同于C系列语言的。然而我对Lisp的了解,或许根本谈不上了解,仅仅局限于道听途说,最早是通过王垠的博客,后来是《黑客与画家》。这两大高手对Lisp的强力推荐,使我想要做些尝试。无奈一直没能抽出时间专心研究,而且网上Lisp的又少得可怜。目前Lisp最流行的两大方言是Common Lisp和Scheme,感兴趣的朋友可以关注一下,如果遇到有好的教程也可以分享给大家。

  最好买一本纸质书,这样就能多做笔记,以后需要的时候也能翻看。如果经济不允许的话,可以从这里下载电子版,但是扫描的质量很差,可能会影响阅读心情。

  从简单的C语言控制台程序,到WinForm窗体应用程序,我们接触到越来越复杂的软件形式。而Web应用程序,又与前面两种完全不同。我们习以为常的软件都是通过一个Setup.exe安装包在计算机上安装得到的,因此它们称为Windows客户端。而另外一些软件,比如百度搜索、腾讯新闻、淘宝网等等,我们习惯称之为网站,但实际上,它们也是软件,称之为Web应用程序。这种软件运行在服务器上(服务器就是放置在机房里的一台高性能电脑),用户通过浏览器访问它们。

  需要提醒大家的是,Web技术发展日新月异,各种框架层出不穷,即使是三大框架,也有过时的一天(目前看来,其实大部分互联网公司都已经转向更轻量、高效的框架了)。所以我们学习并不是为了学会用一种工具,而是要掌握它们的设计思想,当你掌握了三大框架的设计,相信面对其它新兴框架,就可以很容易透过现象看本质,找到共同的地方。

  但前端技术不止于此。与后端类似,前端框架也是层出不穷,有过之而无不及。如今流行的各种框架例如React、Angular.js、Vue.js、Bootstrap等等,都需要我们多多尝试,深入理解为何需要这些框架,它们能帮助我们做哪些事情。对各个框架有个基本的了解,才能在技术选型时游刃有余。由于前端水平有限,我就不做过多推荐了,有一篇非常好的文章推荐给大家看:

  推荐:

  

关键词:java学习路线
0
0
0
0
0
0
0
0
下一篇:没有资料

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

郑重声明:本站资源来源网络 如果侵犯了你的利益请联系站长删除

CopyRight 2010-2012 技术支持 FXT All Rights Reserved