一个屌丝前端成长记

从事程序猿工作已经8个年头了,除去最初做jsp,.net的两年没有纯前端的概念外专业前端开发也已经六年时间,本人计算机专业科班出身,没有天赋,也不算聪明,是百万程序员大军中的普通一员,作为最普通的样本将个人前端成长之路最一个简单的回顾,也顺便对目前掌握的知识点和需要提高学习的方向整理一下。

懵懂少年误入前端世界

移动互联网的兴起才使的前端在程序员界作为一个独立的工种出现在大众眼前,还记得8年前刚毕业进单位实习的时候,单位程序员就三个区别:c/c++,java,jsp/c#,偏于做应用的我做过jsp 做过.net,那个时候觉得前端是整个开发过程中最简单的工作,比起要去读写数据库,tomcat上发布管理web服务,用html写页面,js处理间单的时间简直不能在轻松了,直到页面逻辑逐渐复杂,客户要求的的体验效果越来越苛刻,再加上当时要命的浏览器兼容问题,项目中就愈来愈凸显前端牛人的出现,随之而来就是专业司值前端的人员出现了。我自己走向前端的第一个项目模块就是,要给erp系统中实现一个组织管理结构图和网络拓扑结构图,因为当时还没有特别成熟的前端专业图表库(highcharts,echarts仅仅能实现简单的饼图柱图)所以要用原生js来实现,虽然当时还没有用到js面向对象的任何技术,但是这个项目的历练使我对js操作dom及css实现各种效果有很大的提高,与此同时也就真正的走向前端开发之路。

青葱岁月jquery应用,及jq插件开发之路
随后的两年之内基本上活在了jquery的世界里,比起原生的js去操作dom jquery提供了各种方便的工具,基于页面的增删改查用jq去实现和原生实现至少在代码量上有2倍的差距,再加上基于jq的各类前端插件逐渐丰富,每个项目前端的大多数任务就是用jq或其插件完成业务,不得不说jq的出现是前端第一个最为成功的开源库,第二跳槽时面试最重要的问题就是会不会写jq的插件,以及如何用jq动画实现酷炫的效果。

返璞归真艰难的js原生开发

随着富业面应用的到来,前端需要实现的业务功能越来越复杂,面向过程的编程方式,在项目中简直就是**裹脚布又臭又长,记得当时开发完成一个页面实时更新并累计历史数据图表化展示结果的页面,js代码达到近2千多行,凌乱的方法和变量可想而知,其实单独的模块面向过程方式编写超过800行代码基本上就是无法维护了,除了开发者本人还能记得干了什么,一旦交接,对于继任者就是噩梦的开始,不幸的是当时我不知道被多少前任坑过,所以对此我深恶痛绝,也间接要求自己逐渐用面向对象的思想去解决问题实现业务,最为深刻的案例就是,项目中多个模块中都要实现websocket与服务端的通信,作为新任前端开组长的我敏锐的感觉到此处必有雷,所以向组内成员大秀了一把设计模式的好处,虽然那只是个单例,是所有设计模式中最简单的的一个,但是就个人而言此时此景下真的感觉真好。
随后坚持面向对象思想严格要求自己和小弟们,以至于谈论任何一个功能读将考虑其生命周期,应该使用什么设计模式。直到有一天因项目的性能问题和开发效率问题被叫到总监办公室问责。历史证明项目开发中最好还是使用成熟的框架,不要造太多的轮子,除了提高开发者的个人技能对于项目交付是极其不利,当然如果您做的是非常牛逼的项目,且是在非常牛逼的公司除外,可悲的是90%的程序员终其一生也没有机会做过一个非常优秀的项目,大公司的产品就是那么几个,曾经豪言对飚市场上的独角兽,而最终我们无非抄了个皮毛,以悲剧收场,唯一庆幸的是自己收获了经验,增长了技术,却付出了青春,混口饭!

热血青年使用框架驰骋疆场

大概在14年的时候第一次接触使用前端mvc框架angularJS,像大多数屌丝一样,从公司大牛吹b的嘴巴,及各个论坛,招聘网站知道了它像神一样的存在,为了生存,为了不被淘汰,找机会学习它,好在此时我已经做过三年以上开发,在项目技术选型上还有点些许发言权,要挑战自己就是让自己在项目中使用它,记得当时是给公司做的资产管理系统,因为公司不大业务也简单充其量就是目前毕业设计的加强版,拿他练手实在合适不过。可笑的是等后端写借口的哥们已经将所有接口完成,等我调试用了三周时间,因为我被要死的路由和该死的dom操作(在mvc框架中使用jq操作dom)带来的各种问题折磨者,每天打开无数个stackoverflow页签寻找这解决之道(度娘能查到关于它的东西太少),用有道词典一个一个查着那些似曾相识的单词,下班之际在同事的嘲笑抱怨(那妈的要是jsp页面我自己一个人早弄完了)中度过艰难的那段时间。

未完待续

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然可以。以下是一份Java版本的《屌丝逆袭》策划案: 一、游戏概述 《屌丝逆袭》是一款以逆袭为主题的Java游戏。玩家将扮演一个屌丝角色,通过挑战各种任务和关卡,逐渐提升自己的能力,成为一名成功人士。游戏采用2D横版的画面风格,操作简单易上手,适合各种年龄段的玩家。 二、游戏玩法 1.人物设置 玩家可以选择男女角色,并自定义角色的外观和属性。角色属性包括力量、敏捷、智力和生命值等,不同属性会对游戏过程产生不同的影响。 2.关卡设置 游戏分为多个关卡,每个关卡有不同的任务和挑战。玩家需要通过关卡,完成任务,获得金币和经验值,提升自己的能力。随着关卡的逐渐升级,任务和挑战也会变得越来越难。 3.装备系统 游戏中设置不同等级的装备,玩家可以通过购买或任务奖励获得装备,提升自己的属性和能力。不同的装备有不同的属性加成,玩家需要根据自己的需求和游戏情况选择合适的装备。 4.商城系统 游戏中设置商城,玩家可以通过金币或充值购买各种道具和装备。商城中的物品种类繁多,包括装备、技能书、药品等,可以帮助玩家在游戏中更好地完成任务和挑战。 5.技能系统 游戏中设置各种技能,玩家可以通过任务奖励或商城购买技能书,提升自己的技能等级。不同的技能有不同的效果,可以帮助玩家在游戏中更好地应对不同的挑战和任务。 6.成就系统 游戏中设置成就系统,玩家可以通过完成特定的任务和挑战获得成就称号和奖励。成就系统不仅可以帮助玩家提升自己的游戏体验,还可以增加游戏的乐趣和挑战性。 三、游戏特点 1.简单易上手,适合各种年龄段的玩家; 2.丰富的角色和装备系统,可以让玩家自由选择和定制自己的角色; 3.多样化的任务和挑战,可以让玩家在游戏中不断挑战自我,提高自己的能力; 4.成就系统和商城系统,可以让玩家获得更多的奖励和乐趣; 5.游戏采用Java语言编写,具有良好的稳定性和可移植性。 四、游戏技术实现 1.游戏采用Java语言编写,使用Eclipse或IntelliJ IDEA等开发工具; 2.游戏采用Java2D图形库实现2D横版画面风格; 3.游戏采用MySQL数据库存储玩家数据; 4.游戏采用Java Socket实现多人联机模式; 5.游戏采用Java Swing实现用户界面和控件。 以上是一份Java版本的《屌丝逆袭》策划案,希望能够对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值