從程序員到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個模塊四個模塊。
五, 采購管理
采購管理的核心是有效跟進采購合同/發票的狀態,大貨的采購入庫/退庫,財務結算和在倉庫存查詢和處理。
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。
最後,上全系統大圖,再感慨一句,B2C系統,真是一個大工程啊。
Java學習交流QQ群:523047986 禁止閑聊,非喜勿進!
從程序員到CTO的Java技術路線圖