雪花台湾

java程序員專業技能

專業技能

  1. 熟練的使用Java語言進行面向對象程序設計,有良好的編程習慣,熟悉常用的Java API,包括集合框架、多線程(併發編程)、I/O(NIO)、Socket、JDBC、XML、反射等。
  2. 熟悉基於JSP和Servlet的Java Web開發,對Servlet和JSP的工作原理和生命週期有深入瞭解,熟練的使用JSTL和EL編寫無腳本動態頁面,有使用監聽器、過濾器等Web組件以及MVC架構模式進行Java Web項目開發的經驗。
  3. 對Spring的IoC容器和AOP原理有深入瞭解,熟練的運用Spring框架管理各種Web組件及其依賴關係,熟練的使用Spring進行事務、日誌、安全性等的管理,有使用Spring MVC作爲表示層技術以及使用Spring提供的持久化支持進行Web項目開發的經驗,熟悉Spring對其他框架的整合。
  4. 熟練的使用Hibernate、MyBatis等ORM框架,熟悉Hibernate和MyBatis的核心API,對Hibernate的關聯映射、繼承映射、組件映射、緩存機制、事務管理以及性能調優等有深入的理解。
  5. 熟練的使用HTML、CSS和JavaScript進行Web前端開發,熟悉jQuery和Bootstrap,對Ajax技術在Web項目中的應用有深入理解,有使用前端MVC框架(AngularJS)和JavaScript模板引擎(HandleBars)進行項目開發的經驗。
  6. 熟悉常用的關係型數據庫產品(MySQL、Oracle),熟練的使用SQL和PL/SQL進行數據庫編程。
  7. 熟悉面向對象的設計原則,對GoF設計模式和企業應用架構模式有深入的瞭解和實際開發的相關經驗,熟練的使用UML進行面向對象的分析和設計,有TDD(測試驅動開發)和DDD(領域驅動設計)的經驗。
  8. 熟悉Apache、NginX、Tomcat、WildFly、Weblogic等Web服務器和應用服務器的使用,熟悉多種服務器整合、集羣和負載均衡的配置。
  9. 熟練的使用產品原型工具Axure,熟練的使用設計建模工具PowerDesigner和Enterprise Architect,熟練的使用Java開發環境Eclipse和IntelliJ,熟練的使用前端開發環境WebStorm,熟練的使用軟件版本控制工具SVN和Git,熟練的使用項目構建和管理工具Maven和Gradle。

項目經驗

項目介紹

本系統是X委託Y開發的用於Z的系統,系統包括A、B、C、D等模塊。系統使用了Java企業級開發的開源框架E以及前端技術F。表示層運用了G架構,使用H作爲視圖I作爲控制器並實現了REST風格的請求;業務邏輯層運用了J模式,並通過K實現事務、日誌和安全性等功能,通過L實現緩存服務;持久層使用了M封裝CRUD操作,底層使用N實現數據存取。整個項目採用了P開發模型。

說明:上面的描述中,E通常指spring(Java企業級開發的一站式選擇);F最有可能是jQuery庫及其插件或者是Bootstrap框架,當然如果要構建單頁應用(SPA)最佳的方案是前端MVC框架(如AngularJS)和JavaScript模板引擎(如HandleBars);G顯然是MVC(模型-視圖-控制),最有可能的實現框架是spring MVC,除此之外還有Struts 2、JSF以及Apache爲JSF提供的MyFaces實現,可以使用JSP作爲MVC中的V,也可使用模板引擎(如Freemarker和Velocity)來生成視圖,還可以是各種文檔或報表(如Excel和PDF等),而Servlet和自定義的控制器是MVC中的C,當然spring MVC中提供了作爲前端控制器的DispatcherServlet;J通常是事務腳本,K應該是AOP(面向切面編程)技術,L目前廣泛使用的有memcached和Redis;M的選擇方案很多,最有可能的是hibernate和MyBatis,也可以兩種技術同時運用,但通常是將增刪改交給hibernate來處理,而複雜的查詢則由MyBatis完成,此外TopLink、jOOQ也是優秀的持久層解決方案;底層的數據存取傳統上是使用關係型數據庫,可以是MySQL、Oracle、SQLServer、DB2等,隨着大數據時代的來臨,也可以採用NoSQL(如MongoDB、MemBase、BigTable等)和其他大數據存取方案(如GFS、HDFS等);項目的開發模型P可以是瀑布模型、快速原型模型、增量模型、螺旋模型、噴泉模型、RAD模型等。

項目開發流程

  1. 可行性分析 >>> 可行性分析報告 / 項目開發計劃書
  2. 需求分析 >>> 需求規格說明書
  1. 設計 >>> 概要設計說明書/詳細設計說明書
  1. 編碼
  2. 測試 >>> 測試報告 / 缺陷報告
  1. 交付和維護 >>> 用戶手冊 / 操作手冊

項目管理

系統架構

第三方工具(插件)應用

面試提問

相关文章