0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

前端工程师应该往node方面转还是往HTML5方面转

工程师人生 来源:网络整理 作者:工程师吴畏 2018-09-13 10:11 次阅读

当看到这个问题之前,我也碰到过很多有同样疑惑的同学,他们都有一个共同的疑问该学php还是nodejs,包括我自己也曾有过同样的经历。幸运的是,通过我内心的挣扎和对当前市场供需关系以及行业发展前景的综合衡量评估后,我还是在接触了java, php之后回到js这片天空上来了。一方面是客观因素,一方面是兴趣导致的,前端太好玩了,值得为此奉献一点激情或青春。

其实这也是一个开发者成长必须经历的一个洗礼,一个磨难,一个挑战,他是一个必然的过程。很多人不差智商,不输情商,四肢健全,就是学不好一门语言。我认为最主要还是败在了坚持,专注上面了。经受不住内心私欲或其它语言的诱惑,都一一败下阵来。

关于html5,他是个新东西吗?是新瓶装老酒而已,有实际处理问题的经验,可以平滑的过渡,学习成本很低,但并不表示没有。

然后说了解后台语言,到底要了解到什么程度呢?

其实说后台语言,其实他包括两类语言,一个叫操作数据库的语言,比如java,php,nodejs,ruby,pythonc#等等。一个叫数据库操作语言,比如sql,包括insert,update,select,delete四个动作。所有的页面的一切数据交互都基于这四个操作。从我个人的经历推荐两本书:php与mysql程序设计,第四版,细说php,第二版。这两本都是比较全面的介绍了php,包含了php基本概念与mysql的知识,但都比较浅显,入门而已。

到现在你会发现,其实从前端的角度出发,语言有三种:操作数据库的语言,数据库操作语言,操作dom的js。然后就有方向了,学了js,学任何一门操作数据库的语言(后台语言),数据库操作语言,然后就可以自由组合搭配。而且语言之间有很大的相似性,都可以无缝的跨界。区别的是语言开发的所依赖平台,比如c#依赖于.net,php经常与apache,mysql结合,java依赖于jdk等等的。开发工具也各有不同,比如vs,phpstorm、zendstudio, intellij idea, eclipse等等。但他们的api却很像似,粗暴点说,你抄我我抄你,你中有我,我中有你。

从前端的角度出发我推荐2门语言:php,nodejs。想照顾一些老的东西,维护一些老项目,就选php。展望新方向尤其io操作比较频繁的可以了解一下nodejs。这两个语言各有所长,只是nodejs从语法上来说跟js是无缝的。php的oop跟接近于java的纯oop风格。但这2个从操作sql的方面来说,有很大的相似性。按照这个结论下来,无论选nodejs,php都可以,可以从主观上判断,你更喜欢那个。或者做一个小的留言板,看看那个更符合你的思维习惯。

一般的瓶颈就是你得少,建议多写,用解决实际问题的经验来跨越语言造成的障碍。

建议从以下的顺序来锻炼后台语言:

1. 留言板,

2, blog

3. 企业站,

4. 商城

5. 新闻综合站。

基础的入门之后,就是框架了,从我个人浅显的了解当中,分享一下经验,大概市面上有这几个框架:

1. ci 经典的轻巧框架,在全球的使用量比较靠前,入门比较简单。

2. thinkphp,国内人用的比较多,是国人开发,现在势头真猛,比ci封装的更好,也更傻瓜。

3. yii,这个是目前全球排名第一的框架,但是入门曲线稍高。

4. zend frame这是有php组织开发的框架,文档比较规范,也比较重,适合构建大型项目。

5. laravel 这是一个呼声比较好的一个新型框架,借鉴了Symphony,各方面比较优秀,博众家之所长,但是相对中文资料比较少。

等这些了解了,估计已经入门了,学习应该找到具体的方向了。另外兄弟连的视频教程,质量一般,胜在量多,从基础到框架,应有仅有,最主要是免费。

然后回归正题,只是建议你了解,点到为止,了解是为了把前端干的更好。那什么时候真正的深入学习?建议在学好js的前提之下,吃透js。

比如了解js的作用域,闭包,原型,继承,尤其是作用域与面向对象是js的特色也是与任何一门后台语言比较容易混淆的两个地方。

请向各个业界js大牛看起,不一定非要那么深的深度,但一定达到自己力所能及的高度。

比如有个自己的框架,如司徒正美avlon,比如有一个自己写的小框架,如玉伯的seajs等等。

另外我个人的经验:学什么语言不重要,重要的是趋势你学语言的动力,说白了真正的需求来自那些。我认为需求有两方面。一方面是内在主动型的。比如js学习到一定的程序,写了很多demo或想法需要用更个性化的方式来呈现,这时候需要建一个个人网站或博客来管理你的内容。这时候才选择语言,了解需求产生,开发,发布上线的流程,对你以后的前端工作也是有帮助的。另外一个是外在被动型的,比如同学,家乡的朋友,需要你帮忙做一个企业网站,小的电商网站来做为他们初期企业文化愿景宣传的一个互联网通道,这时候就是一个外在的需求。拿我个人经验来说,我的php经验完全是来自于一次接私单的经历。虽然那次私单以失败而告终,但我在一个月的业余时间里边彻底的了解了php的开发方式,语言特征,后来根据这个基础我成功的开发上线了另外一个朋友的个人网站:http://jing-ui.com,这个网站的开发心得一直想写,但机会不凑巧,只能说敬请期待。明确一个自己感兴趣的目标之后,在选择语言,以兴趣引导语言,学习才有动力。比如做网站,那可能就是php,nodejs,做个简单的blog,在实践中慢慢了解语言,在学习中慢慢成长。 nodejs或php都有各自的应用场景,要么选一个公司现在用的,要么选择一个适合自己思维的。

如果你学会了其中的一个,然后在去了解其它的,可以说,入门会很快,因为里边有很多相同的东西。

最后总结一下我个人的心得:每个人都有好奇之心,这对做技术的来说并不是什么坏事,正因为这颗好奇之心,不断的带领向前迈进。另外了解一下满足一下好奇心没什么不好。就如同我当时学习php一样,感觉学习之后有多牛B,真正的学习后做了一个网站出来之后发现,确实收获不少,对前端也有帮助。但是js的水平还是在原地,除了擅长使用jquery之外,并没有太多的擅长。

到目前为止我感觉,还没有达到一个自己满意的力所能及的高度,努力中。但人的精力是有限的,能力是有限的,在有限的精力里边把一件事情做好就已经很不错了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1565

    浏览量

    68412
  • 前端
    +关注

    关注

    1

    文章

    190

    浏览量

    17716
  • HTML
    +关注

    关注

    0

    文章

    277

    浏览量

    34232
  • HTML5
    +关注

    关注

    0

    文章

    73

    浏览量

    17358
  • node
    +关注

    关注

    0

    文章

    23

    浏览量

    5923
收藏 人收藏

    评论

    相关推荐

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    ,共同进步。 欢迎加入FPGA技术微信交流群14群! 交流问题(一) Q:FPGA中的FPGA算法工程师、FPGA逻辑工程师、FPGA原型验证工程师三者有什么区别? A:FPGA 算法工程师
    发表于 09-23 18:26

    工程师必备!Node.js和常见管理工具介绍(附操作演示)

    在现代软件开发中,JavaScript已成为一种广泛使用的编程语言,在web前端开发、后端开发、移动应用端开发等领域中都有它的身影。在本文中,将从JavaScript语言为出发点,揭示这一
    的头像 发表于 08-30 12:34 241次阅读
    <b class='flag-5'>工程师</b>必备!<b class='flag-5'>Node</b>.js和常见管理工具介绍(附操作演示)

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    硬件工程师如何做元器件变更的决策

    硬件工程师如何做元器件变更的决策某产品在从研发规模生产阶段,采购部门给硬件工程师推荐了新的MOSFET(称为A),该物料比该产品研发阶段使用的MOSFET(称为B)价格更低,且供货渠道更友好。作为
    的头像 发表于 07-06 08:17 425次阅读
    硬件<b class='flag-5'>工程师</b>如何做元器件变更的决策

    嵌入式软件工程师和硬件工程师的区别?

    ,并且了解嵌入式系统的工作原理。此外,他们还需要具备良好的逻辑思维能力,能够快速解决复杂的软件问题。嵌入式软件工程师在软件开发方面有着丰富的经验,能够编写高效稳定的嵌入式软件,并且熟悉实时系统开发和调试
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    如何入门硬件工程师

    想跨行业做硬件设计工程师应该如何学习规划呢
    发表于 03-17 21:49

    java后端能鸿蒙app开发吗

    java后端鸿蒙app开发好。 还是前端
    发表于 01-29 18:15

    工程师告诉你其PCB设计经验

    原理图设计是前期准备工作,经常见到初学者为了省事直接就去画板了,这样将得不偿失,对简单的板子,如果熟练流程,不妨可以跳过。但是对于初学者一定要按流程来,这样一方面可以养成良好的习惯,另一方面对复杂的电路也只有这样才能避免出错。
    发表于 12-05 14:27 222次阅读

    javaweb是前端还是后端

    前端技术可以实现页面的美化、动态效果的实现、数据的展示与处理等功能。常用的JavaWeb前端技术包括HTML、CSS、JavaScript、jQuery、AJAX等。 HTML(超文本
    的头像 发表于 11-16 10:51 2878次阅读