从程序员到CTO的Java技术路线图(我爱分享)

在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了。但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平。

Java程序员

高级特性

反射、泛型、注释符、自动装箱和拆箱、枚举类、可变

参数、可变返回类型、增强循环、静态导入

核心编程

IO、多线程、实体类、

集合类、正则表达式、

XML和属性文件

图形编程

AWT(Java2D/JavaSound/JMF)、Swing、SWT、JFace

网路编程

Applet、Socket/TCP/UDP、NIO、RMI、CORBA

Java语法基础

类、抽象类、接口、最终类、静态类、匿名类、内部类、异常类、编码规范

Java开发环境

JDK、JVM、Eclipse、Linux

Java核心编程技术

Java,设计而又非常精巧的语言。学习Java,须从Java开发环境开始,到Java语法,再到Java的核心API。

1.Java开发入门:Java开发环境的安装与使用,包括JDK命令、EclipseIDE、Linux下Java程序的开发和部署等。

2.Java语法基础:基于JDK和Eclipse环境,进行Java核心功能开发,掌握Java面向对象的语法构成,包括类、抽象类、接口、最终类、静态类、匿名类、内部类、异常的编写。

3.Java核心API:基于JDK提供的类库,掌握三大核心功能:

A。Java核心编程:包括Java编程的两大核心功能——Java输入/输出流和多线程,以及常用的辅助类库——实体类、集合类、正则表达式、XML和属性文件。

B。Java图形编程:包括Sun的GUI库AWT(Java2D、JavaSound、JMF)和Swing,IBM和GUI库SWT和Jface;

C. Java网路编程:Applet组件编程,Socket编程,NIO非阻塞Socket编程、RMI和CORBA分布式开发。

4.Java高级特性:掌握JDK1.4、JDK5.0、JDK6.0中的Java高级特性,包括反射、泛型、注释,以及java高级特性——自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入等。

JavaEE初级软件工程师

JSF框架开发技术

配置文件(页面导航、后台Bean)、JSF组件库(JSF EL语言、HTML标签、事件处理、)、JSF核心库(格式转换、输入验证、国际化)

Javaweb核心开发技术

开发环境(Eclipse、Linux)

三大组件(JSP、JavaBean、Servlet)

扩展技术(EL、JSTL、Taglib)

网页开发技术

HTML、XML、CSS、JavaScript、AJAX

数据库设计技术

SQL、MySQL、Oracle、SQLServer、JDBC

Web服务器(Tomcat/Jetty/Resin/JBossWeb)

JavaWeb核心技术:

JavaWeb项目开发的全过程可以分解为:

网页开发+数据库设计——>JavaWeb项目开发,其中,javaWeb由6项基本技术组成:JSP+JavaBean+Servlet+EL+JSTL+Taglib,而JSF正是将这6种技术进行有机结合的技术框架:

JavaEE中级软件工程师

四种经典架构SSH1、SSI1、SSH2、SSI2

Struts1表现层框架

入门配置、核心组件、标签库、国际化、数据检验、数据库开发、Sitemesh集成、集成Hibernate/iBATIS

Struts2表现层框架

入门配置、核心组件、标签库、国际化、数据校验、Sitemesh集成转换器、拦截器、集成Hibernate/iBATIS

Spring业务层框架

入门配置、IoC容器、MVC、标签库、国际化、数据校验、数据库开发

Hibernate持久层框架

MySQL、Oracle、SQLServer iBATIS持久层框架

MySQL、Oracle、SQLServer

Web服务器(Tomcat/Jetty/Resin/JBossWeb)

Java高级软件工程师

javaWeb开源技术与框架

工作流、

规则引擎

搜索引擎、

缓存引擎 、

任务调度、

身份认证

报表服务、

系统测试、

集群、

负载平衡、

故障转移

JavaWeb分布式开发技术

JTA(Java事物管理)

JAAS(Java验证和授权服务)

JNDI(Java命名和目录服务)

JavaMail(Java邮件服务)

JMS(java信息服务)

WebService(web服务)

JCA(java连接体系)

JMS(java管理体系)

应用服务器(JBossAS/WebLogic/WebSphere)

JavaEE系统架构师

面向云架构(COA)

COA、SaaS、网格计算、集群计算、分布式计算、云计算

面向资源架构(ROA)

ROA、RESI

面向web服务架构(SOA)

WebService、SOA、SCA、ESB、OSGI、EAI

Java设计模式

创建式模式:抽象工厂/建造者/工厂方法/原型/单例

构造型模式:适配器/桥接/组合/装饰/外观/享元/代理

行为型模式:责任链/命令/解释器/迭代子/中介者/备忘录/观察者/状态/策略/模板方法/访问者

Java与UML建模

对象图、用例图、组件图、部署图、序列图、交互图、活动图、正向工程与逆向工程

CTO首席技术官

发展战略

技术总监

团队提升

团队建设

项目管理

产品管理

 下面的更深入的有兴趣可以了解一下,我的目的不是要大家掌握下面的知识,只是希望扩展自己的思维,摘自牛人的技术博客。

/**************************************************牛人必看*****************************************************************/

系统后台框架:

前端工程师技能:

B2C电子商务基础系统架构解析

运营B2C日
久,越来越深刻的意识到IT系统对确保规范化业务流转,支撑消费者端的均一服务有着决定性的作用。于是,一直想好好整理下相关的系统架构,怎奈俗务缠身,

一直拖到今日,猛然发现下周娃很可能就要出生,拖无可拖,快马加笔,居然整出来了。本文的重点是理清系统的逻辑关系,详细的功能模块请参见结尾附上的系统
架构图。

首先,聊下对系统逻辑架构的看法;我个人始终坚持认为,系统的开发与演化,前台严格follow消费者的购买流程,后台则盯牢订单流转,牢牢抓住这两条主线,才能高屋建瓴的看清B2C的逻辑链和数据流,更深刻的规划功能模块,从而更有效支撑实际业务的流转。

前台系统包括:商品展示,内容展示,订单确认,支付系统,用户中心四大模块

一,商品展示

按照Ebay的内部分类,任何将商品以单个或批量的方式展示给消费者的功能均应归入此系统。因此,该系统至少包括:

A,站内搜索(搜索提示,搜索规则,搜索成功页,搜索不成功页,相似推荐)

B,导航(频道导航,其他导航如销售排行,广告位,推荐位,文字链,Also buy等)

C,商品分类(品牌分类,品类分类,属性分类如剪裁形式)

D, 登陆页(商品列表页,商品详细页,商品活动页)

这里的访问逻辑是:A /B/C分流消费者去往相对个性化的页面,由登陆页体现商家的核心诉求和价值传递,完成call-to-action的第一步。

二,内容展示

内容展示较为简单,对纯购物品牌而言包括:

A,公告区

B,帮助中心

C,论坛(如需商城与论坛发生交互,则需自行开发,否则可集成discuz做同步登陆即可)

大家都知道,就不多说了。

三,订单确认

订单确认,就是帮助消费者正确提交订单信息的环节,看似简单,实则非常复杂,需要对很多信息逻辑判断和处理,一般由2个部分组成:

A,购物车(购物车浮层,购物车页面,无注册购买)

无注册购买是需要慎用的功能,除非刻意追求用户的短平快下单,如团购/换购,一般不推荐使用,会造成系统异常复杂,开发量也很大。

B,订单提交(返回购物车,收货地址&地址薄,支付方式判断,配送方式,发票,订单标记,实付金额计算等等)

值得一提的是,几乎大多数的促销逻辑运算在这个环节完成,充分考虑各种促销方式之间的互斥与重叠是系统设计的核心,需要充分考虑各种情况,避免出现逻辑漏洞。

四,支付系统

与一般的想象不同,支付系统其实并不简单等于第三方支付工具接入:

A,外部支付系统(支付宝将接口,财付通接口,网银直联端口,信用ka分期端口)

B,内部支付系统(账户余额,积分,礼品卡,优惠券)

支付系统的逻辑设计不但需要考虑到各种极端情况的发生(如一张订单先用礼品卡,再用积分,最后网银支付),还要预留财务做账所需的相关字段,并充分考虑订单取消之后如何回滚各类内部账户。

五,用户中心

用户中心的实质是用户自助功能的dashboard,一般4个部分组成:

A,注册&登陆(快速注册,完整注册,注册有礼,推荐注册,密码找回,主站id登陆,open-id登陆如QQ,新浪微博等)

B,订单中心(历史订单状态,中间状态订单修改,物流追踪)

C,服务中心(各类自助服务如退款申请,退换货申请,建议与投诉等)

D, 信息管理(用户基本信息管理和账户信息管理)

用户中心的价值在于:尽可能引导用户自行获取所需的信息并提交所需的服务,在提升服务准确率,及时性的同时降低对人工成本。

后台系统包括:商品&促销,CRM,订单处理,WMS,采购管理,财务管理,报表管理,系统设置,WA系统9大模块

一, 商品&促销

商品&促销模块的核心在于确保消费者下单之前,前台内容所见即所得

A, 商品管理(品类管理,品牌管理,单品管理)

B, 促销管理(活动管理和自定义活动模板管理)

在上述模块中,最重要的是2个部分:单品管理中的批量产品生成的自动程序和活动管理中“共享与互斥”管理。前者用于大幅提升上新速度,后者避免促销活动失控。

二, CRM

CRM是对B2C核心资源—会员的管理,服务与再营销系统,包括如下部分:

A,会员管理(会员信息的增删改查和到其他系统的链接)

B,用户关怀(条件触发和人工触发相关EDM & 短信 & OB)

C,定向营销(会员分组和营销活动管理)

D, 客服管理(内容非常多,集成所有需前台与后台交互的功能,详情还是看图吧)

E, 呼叫中心(IVR,坐席管理,统计报表,参数传递与窗口嵌入)

值得注意的,EDM和短信通道市面上已经有成熟的外包服务商,一般都会外包;呼叫中心和在线客服自行开发成本太高,特别是呼叫中心系统,业务初期也都是外包的。

三, 订单处理

订单处理是在订单未正式进入仓储部门处理之前,对订单的前置性处理环节。

A,订单录入(电话订购,网上下单,外部团购订单,无金额订单录入如礼品单)

B,订单审核(自动审核和人工审核)

C,RMA处理(RMA申请单和RMA处理单)

RMA的逻辑也异常复杂,需要在效率和成本之间找平衡,确保在不拖垮仓储部门的正常出入库的前提下对消费者端快速有效close工单;对内部则需要控制成本,货损不能超过预算上限。

四, WMS(Warehouse Management system仓库管理系统)

WMS的流程很长,功能模块也很多,大致分为入库管理,库存管理,出库管理和票据管理4个模块四个模块,细细道来就是另外一篇文章了,各位可以参考 我这篇文章:庖丁解牛—B2C仓储内部运作解密(上,中,下)http://blog.sina.com.cn/wangxida0855

五, 采购管理

采购管理的核心是有效跟进采购合同/发票的状态,大货的采购入库/退库,财务结算和在仓库存查询和处理。

A,供应商管理(供应商信息管理,合同发票管理)

B,采购单管理(PO单管理,负PO单管理)

C,库存管理(库存查询,库存占用单,库存变动log)

六, 财务管理

B2C的财务管理,主要是对供应商,渠道和内部费用支出的成本控制。

A,供应商结算

B,渠道结算

C,配送结算

D, 内部结算

说实在的,哥对财务这块也不算很了解,大家将就看看,图片上有明细。

七, 报表管理

报表是B2C业务的宏观表现,理论上说,每个部门的KPI都应该从中找到。

A,搜索报表(站内搜索量查询)

B,销售报表(多个维度销量查询,优惠券使用情况,报表导出)

C,财务报表

D, 客服报表(客服日报和坐席报表)

前者反映与消费者发生的日常交互(包括正常与异常),后者考核客服的工作绩效

E, 仓储物流报表

这几块报表,是业务运作的核心,涉及到公司机密,就不能写的太细了,见谅。

八, 系统设置

这块大家都知道是干嘛的,也就不多说了,分成三块。

A,基础设置(和业务有关的一些字段值)

B,权限设置(不同账号的操作权限和操作记录)

C,其他设置

九, WA系统(Web Analytcis)

网站分析系 统,几乎全是外购,很少有能够自建的,即使自建,最多做几个简单的模块。用于实战的,要么是免费的GA(Google
Analytics),要么是昂贵的Omniture。这块的知识,细细说来也是另外一篇文章了,有兴趣的同学可以看我这篇科普文章:揭秘—我所知道的网
站分析(上,下)http://blog.sina.com.cn/wangxida0855

最后,上全系统大图,再感慨一句,B2C系统,真是一个大工程啊。

fr  http://blog.sina.com.cn/s/blog_59d6717c0100syh3.html

时间: 2024-10-12 01:53:55

从程序员到CTO的Java技术路线图(我爱分享)的相关文章

从程序员到CTO的Java技术路线图

http://zz563143188.iteye.com/blog/1877266在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平. Java程序员 高级特性 反射.泛型.注释符.自动装箱和拆箱.枚举类.可变 参数.可变返回类型.增强循环.静态导入 核心编程 IO.多线程.实体类. 集合类.正则表达式. XML和属性文件 图形编程 AWT(Java2D/JavaSound/JMF).Sw

程序员、架构师、技术总监、CTO

程序员 程序员,英文名coder/programmer,大家常自嘲叫码农的阶段.这个角色职责是把需求或产品实现为用户可用的软件产品. 此职位为执行级别.另外因为经验较少,一般需要求助别人,或与别人一起完(ban)成(zhuan)一个任务. 此阶段大概要经历3年,程序员的职责如下: 1.负责公司运营系统的设计与开发工作 2.运营数据处理和分析 高级程序员 高级程序员学名工程师.到了这个level,英文名可改叫做engineer或developer.此时你的功力开始增强,这与你平时的积累努力是分不开

黑马程序员____第一阶段Java开发前奏(1)

  黑马程序员____第一阶段Java开发前奏(1) ⒈软件开发:        软件是由一系列按照特定顺序组织的计算机数据和指令的集合,软件开发就是制作软件.软件的出现实现了人与计算机之间的交互.    ⒉人机交互方式:        图形化界面和命令行方式,图形化界面简单直观,使用者易于接受,容易上手操作.命令行方式需要有一个控制台,输入特定的指          令,让计算机完成一些操作,较为麻烦,需要记住一些命令.    3.常用的DOS命令:     dir:列出当前目录下的文件以及文

写给在迷茫期的程序员(尤其是Java程序员)入行了一年,感觉不知道接下来该怎么做才能继续进步了,求指教

入行了一年,感觉不知道接下来该怎么做才能继续进步了,求指教(V2EX) @kafka0102 :做技术可以学的东西太多了,只是在不同的阶段做好不同的规划,要结合当前所做的事情去做更深入或广度的学习.以Java Web开发为例,至少可以拓展的点有: 1.Web框架的原理学习,比如Spring.Play等等,最好自己能写出个简易的MVC框架(几千行代码).这样至少对常用设计模式.反射等技术很熟练了. 2.优秀代码研读.比如Java集合类.JUnit.Spring等源码,写出源码分析,会有很多收获.源

BAT架构师2019年最新总结,从程序员到CTO,从专业走向卓越

2019年最新总结,从程序员到CTO,从专业走向卓越,大牛分享文档pdf与PPT整理 整理大牛分享文档如下,持续更新一线开发架构,技术文档 下载地址:https://github.com/0voice/from_coder_to_expert 网易蜂巢公有容器云架构之路 新浪微博redis优化历程 微博Cache架构设计实践 Go在大数据开发中的经验总结 基于Go构建滴滴核心业务平台的实践 Go in TiDB 负载均衡利器 HAProxy功能剖析及部署案例 高可用技术的实践分享 高性能存储及文

分针网——每日分享:10个程序员常用的代码简写技术

更多文章:www.f-z.cn 今天小编我给大家整理了一份10个程序员常用的代码简写技术,看懂一种是入门,全懂就是大神,你能知道几个呢? 1.三元操作符 当想写if...else语句时,使用三元操作符来代替. const x = 20;let answer;if (x > 10) { 简写: const answer = x > 10 ? 'is greater' : 'is lesser'; 也可以嵌套if语句: const big = x > 10 ? " greater

从java程序员到CTO的成长路线图

很多新人不知道从事java开发,具体的发展路径是怎么样的,甚至很多人都不能区分程序猿和攻城师的区别.包括不少小白,从事java开发都半年,甚至1年了,对职业发展还没有清晰的认证.这非常不利于自己的发展,人要往哪走,首先需要明确的是方向.今天,就给大家揭露一下java开发从程序猿到CTO的路线图,以及每个阶段需要掌握的技术. Java程序员 高级特性 反射.泛型.注释符.自动装箱和拆箱.枚举类.可变 参数.可变返回类型.增强循环.静态导入 核心编程 IO.多线程.实体类. 集合类.正则表达式. X

黑马程序员_关于黑马java班入学测试技术分享-后五(二)

??????????????????????????????????????????????????????????????????????????-----Java培训.Android培训.iOS培训..Net培训.期待与您交流! 作为本人首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧). 本文只要是讲述黑马程序员基础测试题的6-10题,回过头来分析明显

黑马程序员_关于黑马java班入学测试技术分享-前五(一)

                                                                           ------Java培训.Android培训.iOS培训..Net培训.期待与您交流!        作为首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧).      首先分析一下10套题,大都是是基础知识,