转自(http://zz563143188.iteye.com/blog/1867767)
前面感言:在成为大牛的路上,总是由先辈们的经验伴随前行,因为仅凭自己的研究摸索还有环境际遇,是达不到想要的高度的。自古文人相轻,同行冤家,既然有人愿意分享,且让我们先上山头,再看山高吧。
我心目中最好的框架组合是:
表示层:spring mvc 3.1 + annotation
控制层:spring 3.1
持久层:hibernate 3.6 +jdbcTemplate
后台列表控件:displaytag 1.2
Ajax框架: DWR 3
JS框架 : jQuery
缓存机制:spring 3.1 cache + ehcache/memcached
静态化机制: Freemarker静态化/spring mvc伪静态化
页面技术: EL + JSTL +JSP
安全框架 spring security
搜索引擎: Lucene
中文分词:IKAnalyzer
模板引擎: apache tiles 2.22
Linux、nginx、PHP、MySQL,几乎是标配
部署视图所需:
数据库: mysql
Web 服务器: windows 下用apache, linux 下用ngnix
应用服务器: Tomcat Jboss,tomcat,weblogic
常用的系统架构是:
Linux + Apache + PHP + MySQL + web负载均衡+数据库主从+缓存+分布式存储+队列
Linux + Apache + Java (WebSphere) + Oracle
Windows Server 2003/2008 + IIS + C#/ASP.NET + 数据库
大型动态应用系统又可分为几个子系统:
1)Web前端系统
2)负载均衡系统
3)数据库集群系统
4)缓存系统
5)分布式存储系统
6)分布式服务器管理系统
7)代码分发系统
常用的工具列表
集成ORM hibernate ,jdo,toplink,apache ojb ,ibatis,jpa
集成视图 jsp ,jstl ,tiles,velocity, freemarker,xslt ,pdf/excel,jaseperreports
集成web框架 jsf struts tapestry webwork
整合其它J2EE webserives,ejb jms jmx jca 邮件抽象层,定时调度和线程池,java注解
数据库 mysql ,sqlsever,oralce,sqlite,db2
Ajax框架 ext,jquery ,prototype,dojo,yui,
容器 Jboss,tomcat,weblogic
高级软件工程师的招聘条件
技能技巧要求:
◆熟练使用css语言,对css布局,编写有一定经验;
◆熟练使用jquery语言,能够编写jquery通用插件,且能够阅读复杂的jquery插件;
◆熟练使用spring framework,且阅读过部分sping相关源码;
◆熟悉Web应用多层架构设计;
◆熟悉OO分析设计方法和J2EE 设计模式,具备良好的沟通能力与表达能力;
◆有mongodb,RabbitMQ,Lucence等技术经验更佳;
◆熟悉tocmat,nginx基本工作原理,能够阅读nginx源代码;或者熟悉tcp/ip协议细节;
◆能正常使用linux操作系统,简单管理linux系统;
◆能够根据产品需求文档,编写开发详细文档;
◆能够分析系统基本性能问题,能够mysql性能调优;
◆英语四级以上,能熟练阅读英文技术资料。
学习Web基础(HTML/CSS/JS)+服务器端技术(LAMP)
未来必然是Web的世界,学习Web基础的最佳网站是W3School。
学习HTML基本语法
学习CSS如何选中HTML元素并应用一些基本样式(关键词:box model)
学会用 Firefox + Firebug 或 Chrome 查看你觉得很炫的网页结构,并动态修改。
学习使用Javascript操纵HTML元件。理解DOM和动态网页(http://oreilly.com/catalog/9780596527402)网上有免费的章节,足够用了。或参看 DOM 。
学会用 Firefox + Firebug 或 Chrome 调试 Javascript 代码(设置断点,查看变量,性能,控制台等)
在一台机器上配置Apache或Nginx
学习PHP,让后台PHP和前台HTML进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。
把PHP连接本地或者远程数据库 MySQL(MySQL 和 SQL现学现用够了)
跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouster/cgi-bin/cs142-fall10/index.php )不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上
学习一个Javascript库(例如jQuery或ExtJS)+ Ajax(异步读入一个服务器端图片或者数据库内容)+ JSON数据格式。
HTTP: The Definite Guide 读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy, gateway, browsers)
做个小网站(例如:一个小的留言板,支持用户登录,Cookie/Session,增、删、改、查,上传图片附件,分页显示)
买个域名,租个空间,做个自己的网站。
此学习备忘录只是我工作之外收集的一些资料,只希望能够扩大IT从业人员的知识面。IT的知识很繁多,有此只需要了解知道。此备忘录有硬件方面的,也有软件方面的,也有大IT公司要求的技能。作为新手你可以阅览一下,知识有哪些知识。作为高手,你可以补充一下自己的知识面。