论坛首页 Web前端技术论坛

写js写到吐血——还是经验欠缺啊

浏览 15217 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
作者 正文
   发表时间:2011-09-29  
整体感觉还好——哥写js的功底也应该8错了——深刻体会到

1. 代码果然要时刻优化啊
2. 项目果然比较锻炼人的
0 请登录后投票
   发表时间:2011-09-29  
LZ的环境很锻炼人啊。。
实际还是推荐刚从事行业的,还是做项目比较能锻炼人。而且对技术用深层次的理解和认识!
0 请登录后投票
   发表时间:2011-09-30  
写ext么,一般习惯一个窗口一个类,复杂点得panel一个类,如果需求复杂点,写ext很容易搞出很多很多文件,很多很多行。

有的一个form里面的各种field要求都不一样,得独立开完成一些效果,如果都能form一起提交那就容易多了,代码量也少。而且写在xtype里还能延迟加载,有时候实在没办法只能一个一个独立出来new,本来用ref属性也可以解决引用的问题。但是用ref引用有时候碰到复用这个类的时候又要出问题。

哎,麻烦
0 请登录后投票
   发表时间:2011-09-30  
看来你对前台开发还是很模糊,现在前端如extjs,yui,jQuery等框架都有前台的mvc开发模式,跟不到上万行代码,如果上万行代码一个类,谁也维护不了,都是分层的。
0 请登录后投票
   发表时间:2011-09-30   最后修改:2011-09-30
自己以前做Java后来转做前端。上个项目中我们自己写的逻辑代码大概3万多行,不包括JQuery类库和其他的一些第三方库。在规模上也应该算稍微大一些的项目了。
    我们的做法就是模块化,根据功能或布局的不同将其分为不同的模块。模块只处理
逻辑事件,并只能更改自己负责范围内的DOM对象。为了实现这个目标,写了一个很简单的
事件系统负责将底层的数据改变封装为Json交给相应的模块去处理。模块之间不能互相调用,只能通过发消息进行通信。
    做前端和做后台一样,如果代码的规模比较大的话一定要分层、解耦,否则就是自己找死。这个项目中没有用到
特别多的面向对象的知识。但名称空间还是必要的,要不然那么多函数肯定乱套,我们的模块一般写成这样:
var Model1 = {
   init : function(){
   },

   onStart: function(){
   },

   onEvent1 : function(){
   },
  
   ....
};

好多函数的名称是规定好的比如init,由事件系统负责调用。这样非常简单,不需要太多的JS技巧。
0 请登录后投票
   发表时间:2011-09-30  
用extjs自己写的js也没有多少了。没楼主说那么夸张
0 请登录后投票
   发表时间:2011-09-30  
同情下,以前我也是写js写到想吐,不过现在好了,自己感觉js还是写得很不错的,加油啊
0 请登录后投票
   发表时间:2011-10-01  
xingqiliudehuanghun 写道
自己以前做Java后来转做前端。上个项目中我们自己写的逻辑代码大概3万多行,不包括JQuery类库和其他的一些第三方库。在规模上也应该算稍微大一些的项目了。
    我们的做法就是模块化,根据功能或布局的不同将其分为不同的模块。模块只处理
逻辑事件,并只能更改自己负责范围内的DOM对象。为了实现这个目标,写了一个很简单的
事件系统负责将底层的数据改变封装为Json交给相应的模块去处理。模块之间不能互相调用,只能通过发消息进行通信。
    做前端和做后台一样,如果代码的规模比较大的话一定要分层、解耦,否则就是自己找死。这个项目中没有用到
特别多的面向对象的知识。但名称空间还是必要的,要不然那么多函数肯定乱套,我们的模块一般写成这样:
var Model1 = {
   init : function(){
   },

   onStart: function(){
   },

   onEvent1 : function(){
   },
  
   ....
};

好多函数的名称是规定好的比如init,由事件系统负责调用。这样非常简单,不需要太多的JS技巧。



我们差不多也这么做,dom/event/数据部分比较分开,数据部分也要根据业务模块分开。模块其实就是js对象定义一样——这方面的确要命名好些。

同意ls这句“不需要太多的JS技巧”,只要细心,严密些,再多点代码也是砌墙而已。

PS js的mvc早听说过,但一直没使用,有时间研究下。
0 请登录后投票
   发表时间:2011-10-02  
的确,编写富客户端代码的时候,最希望用户使用CHROME浏览器。
IE版本多,兼容性问题。。。。
CHROME对JS等做过很多优化,加载处理速度明显快的多。
复杂功能更好的设计流程,分解复杂流程,减少一步处理的内容。这是我平常碰到复杂功能的解决方式,不过有时候业务不同意就只能慢慢优化了。减少绑定,延迟加载等等。。。
0 请登录后投票
   发表时间:2011-10-19  
顺便提下。

现在单独在n个js文件的代码行已经超过了6000,而且还在增加。
嵌入到jsp里js代码算上去肯定过w了——

这些js代码都是我写的——到后面估计维护起来会悲剧的
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics