做为一个前端工程师,是往node方面转,还是往HTML5方面转

简介: 文章背景:问题本身来自于知乎,但是我感觉这个问题很典型,有必要把问题在整理一下,重新分享出来。 当看到这个问题之前,我也碰到过很多有同样疑惑的同学,他们都有一个共同的疑问该学php还是nodejs,包括我自己也曾有过同样的经历。

文章背景:问题本身来自于知乎,但是我感觉这个问题很典型,有必要把问题在整理一下,重新分享出来。

当看到这个问题之前,我也碰到过很多有同样疑惑的同学,他们都有一个共同的疑问该学php还是nodejs,包括我自己也曾有过同样的经历。幸运的是,通过我内心的挣扎和对当前市场供需关系以及行业发展前景的综合衡量评估后,我还是在接触了java, php之后回到js这片天空上来了。一方面是客观因素,一方面是兴趣导致的,前端太好玩了,值得为此奉献一点激情或青春。
其实这也是一个开发者成长必须经历的一个洗礼,一个磨难,一个挑战,他是一个必然的过程。很多人不差智商,不输情商,四肢健全,就是学不好一门语言。我认为最主要还是败在了坚持,专注上面了。经受不住内心私欲或其它语言的诱惑,都一一败下阵来。缺少的就是:坚持专注。业界坚持专注代表:  @司徒正美,  @张鑫旭 。司徒大牛 600篇js文章,是岁月、历史和势力的见证。张同学42页博文也是伴随着我们的不断成长。
关于html5,他是个新东西吗?是新瓶装老酒而已,有实际处理问题的经验,可以平滑的过渡,学习成本很低,但并不表示没有。
 
然后说了解 后台语言,到底要了解到什么程度呢?
其实说后台语言,其实他包括两类语言,一个叫操作数据库的语言,比如java,php,nodejs,ruby,python,c#等等。一个叫数据库操作语言,比如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之外,并没有太多的擅长。所以我了解之后迅速回归到原生js的学习当中,就是发起的这个项目  jikeytang/frontcode · GitHub ,
豪情前端作品列表: 然后这是我写了2个月的战果,放到生产中去,肯定有不少bug,但重要的是迈出了第一步。
到目前为止我感觉,还没有达到一个自己满意的力所能及的高度,努力中。但人的精力是有限的,能力是有限的,在有限的精力里边把一件事情做好就已经很不错了。 




本文转自豪情博客园博客,原文链接:http://www.cnblogs.com/jikey/p/4088693.html,如需转载请自行联系原作者
目录
打赏
0
0
0
0
60
分享
相关文章
前端开发必备!Node.js 18.x LTS保姆级安装教程(附国内镜像源配置)
本文详细介绍了Node.js的安装与配置流程,涵盖环境准备、版本选择(推荐LTS版v18.x)、安装步骤(路径设置、组件选择)、环境验证(命令测试、镜像加速)及常见问题解决方法。同时推荐开发工具链,如VS Code、Yarn等,并提供常用全局包安装指南,帮助开发者快速搭建高效稳定的JavaScript开发环境。内容基于官方正版软件,确保合规性与安全性。
735 24
|
3月前
|
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
81 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
《前端技术基础》第01章 HTML基础【合集】
超文本标记语言(HyperText Markup Language,简称 HTML)是构建网页结构的基础标记语言。它与 CSS、JavaScript 协同,负责搭建网页“骨架”,用标签组织内容,像标题、段落、图片等元素,通过起始与结束标签(部分可单用,如`<img>`)界定层级与布局,将信息有序整合。标签含特定语义,向浏览器传达展示方式,为网页准确呈现及后续美化、交互筑牢根基。
134 25
抛弃node和vscode,如何用记事本开发出一个完整的vue前端项目
本文探讨了在不依赖Node和VSCode的情况下,仅使用记事本和浏览器开发一个完整的Vue3前端项目的方法。通过CDN引入Vue、Vue Router、Element-UI等库,直接编写HTML文件实现页面功能,展示了前端开发的本质是生成HTML。虽然日常开发离不开现代工具,但掌握这种基础方法有助于快速实现想法或应对特殊环境限制。文章还介绍了如何用Node简单部署HTML文件到服务器,提供了一种高效、轻量的开发思路。
101 10
前端基础之HTML
Web1.0、Web2.0 和 Web3.0 标志着互联网发展的三个阶段。Web1.0(静态互联网,1990年代初至2000年代初)以静态内容和单向信息流为主,用户仅能浏览。Web2.0(互动互联网,2000年代初至2010年代初)引入了用户生成内容和社交网络,内容动态且互动性强。Web3.0(语义互联网,2010年代至今)强调语义化、个性化、智能化及去中心化,结合AI、区块链等技术,提供沉浸式体验。HTTP和HTML作为互联网基础协议和技术,在各阶段不断演进,共同推动了现代互联网的发展。
前端基础之HTML
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
95 6

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等