毕业后就很少写东西了,工作近两年了,技术长进了不少,但思维还是那么局限。来北京已经三个多月了,抗过了头两个月的高压期,现在基本上已经适应这种高压生活了,可喜的是自己某些方面还是得到领导的认可。至少可以不坐冷板凳了,至少可以写“程序”。
程序是什么,代码的堆砌?无论答案怎么,但至少现在是在堆砌代码,而且是在乱堆之上进行堆。从对编程疯狂到现在,学习的东西:J2se jsp servlet Struts Struts2 Spring Hibernate... SOA android 。。。flex..,这是些令人兴奋的东西,而这些东西还有其他牛X的技术,出身中国太少了。中国作坊式的软件企业,出不了牛B的技术。
开发不应该为了实现需求而不择手段。昨天,今天都在改一个令人发狂的程序。导出excel功能,其中涉及到的数据非常多,但也是在可处理的范围之内。然后接手时确实不敢相信自己的眼睛,导出 excel查询条件限制少时,数据多,导出竟然50分钟!!!!!上帝!数据查询,出来3000以上的数据,作3000以上的循环,在循环在内处理数据,查询N次数据库N>30 ,这样导出程序需要与数据库select 的次数3000*N>90000 90000次以上select 50分钟导出已经不错了,说明服务器配置不错没有死掉。一直来以来都非常避讳“码农”这个词,然而我们确实在做码农。
决定软件性能有:程序和数据库。没有良好的持久层设计,优化程序架构、细节只能是在一定程度上提升性能。excel导出的每条数据要关联N条数据,这样就加大了数据量,所谓"完美"数据库设计是跑不快的,数据库设计应当允许字段的冗余。循环内查询是不可能的,只能将数据缓存在循环外,放宽查询条件,将需要的数据提前查询出 来,存入内存(Map),在循环内将数据取。这只是一个折中的办法,在数据量很多时,条件控制不好,有可能会造成内存溢出。目前也没有非常有效的方法,但通过sql将所有数据一次join出或许是可行的,在访问量允许,数据库抗压能力允许时,该方法应该会比循环内查询或循环外缓存效率要高。
程序员应该把自己放在设计者的角色,不是在写程序而是在设计一件很美好的东西,我们不是在工作,而是在创造,或许我们的世界会更美好些。
分享到:
相关推荐
要探讨最早的操作系统是什么样的,我们首先需要追溯到计算机的早期历史。 在个人计算机出现之前,操作系统主要存在于大型主机上,如IBM的批处理系统,如OS/360。这些系统主要是为了执行批处理作业,即一次性提交多...
真正项目日式样文。对想从事对日软件开发的人员来说有一定的帮助。
但是,什么样的桌面环境才是用户需要的呢?Compiz、Gnome-Shell 等酷炫的桌面环境当然可以吸引用户,但是,用户真正需要的是能够改善他们生活的应用程序。没有精品软件,桌面环境再花哨也只是昙花一现。因此,美观...
总之,《深入浅出iPhone开发》是一本全面覆盖iPhone应用开发的教程,它不仅教授技术,更注重实践,让读者通过实例学习,从而真正掌握iOS开发的各个方面。无论是对Objective-C还是Swift感兴趣,这本书都能为初学者...
这意味着在开发过程中,要频繁与客户沟通,了解他们的真正需求,避免开发出不符合实际需求的产品。 3. 持续改进:通过定期反思和调整工作流程,持续寻找提高效率和质量的方法。这可能包括对工作流程进行重构,引入...
概述 什么是路由器? 互联网是依靠路由器连接起来的,路由器是互联网或者说IP网络的核心设备。宽带接入 的不断增长,带动了路由器的需求不断增加。 路由器究竟是什么样的技术产物? 谈到路由器的开发,我们就不免要谈...
这种全面的视角不仅有助于提高开发效率,还能促进团队之间的沟通和协作,使开发人员成为真正的解决方案提供者,而不仅仅是代码的执行者。通过持续学习和反思,开发人员可以不断提升自己的专业素养,为项目和组织创造...
在企业调研教学改革过程中,学校教师深入企业一线,参与具体生产实践,掌握了丰富的生产第一线的情况,并充分了解了行业的现状、发展的趋势、企业的用人情况,知道了企业需要什么样的人才、学生到企业从事什么样的...
### VSTO 开发者指南知识点详解 ...通过上述内容,我们可以看到VSTO不仅提供了一种强大的方式来扩展Office应用,而且还为开发者提供了灵活多样的开发手段,使得Office成为了真正意义上的开发平台。
什么是WAP?** - WAP是一种使移动设备能够访问和显示互联网内容的技术标准。它通过优化数据传输来提高效率,尤其是在低带宽的移动网络环境中。 **3. 谁发展了WAP?** - WAP是由WAP论坛(WAP Forum)制定的,这是一...
第一章 “J2ME 技术概述”让你在学习J2ME 以前知道什么是J2ME。本章介绍了J2ME 平 台的体系结构和MIDlet 生命周期的概念。为以后的内容打下良好的基础。 第二章“CLDC 简介”介绍了MIDP 的基础Java Community ...
首先,我们需要了解什么是真正的CRM系统。CRM系统不仅仅是一个简单的信息化管理工具,而是一个全面的客户关系管理系统,它能够帮助企业更好地理解客户的需求,提高客户满意度和忠诚度,提高企业的核心竞争力。 在房...
真正的式样书,想从事对日外包的可以看下。
这意味着你可以在一个平台上开发游戏,然后部署到其他的平台上,真正做到一次开发,处处部署。Unity提供了直观的编辑器界面,以及强大的组件化脚本系统,开发者可以使用C#语言对游戏逻辑进行编程。Unity编辑器内置了...
本压缩包文件"直播-什么样的产品是好产品.rar"中的内容可能围绕这个主题展开,探讨了好产品的核心特征、评判标准以及打造优秀产品的策略。 首先,一个好产品通常具备以下几个关键要素: 1. 用户需求满足:产品需能...
开单大师100%开放的源代码,您可以自由掌控,定制开发属于您的专属功能。无店面和用户数限制,一次买断,永久使用。安全掌控您的软件服务器,隐私数据自己掌控。开单大师,为每家中介提供真正属于自己的房产中介管理...
4. Workspace 和 Project 之间是什么样的关系? 每个 Workspace 可以包括几个 project,但只有一个处于 Active 状态。各个 project 之间可以有依赖关系,在 project 的 Setting..中可以设定,比如那个 Active 状态...
通过使用Java语言进行SSM架构设计,结合Bootstrap进行PC端页面设计,以及利用zepto和WeUI来实现移动端页面,大赛鼓励选手们培养出真正的跨平台开发能力。这样的技能不仅能够帮助学生在未来的职业生涯中脱颖而出,...