劉敏 蘇榮聰
摘 要:互聯網改變了人們的生活,購物和學習等方式,手機作為現代通信工具是不可缺少的,它具有使用方便、快捷等優點,作為老師,我們必須要改變一下上課思維模式,利用互聯網技術,學生可以實現線上線下學習,文章介紹了“基于Android系統的《Java程序設計》移動學習平臺的開發技術。
關鍵詞:移動學習;開發技術;android;java
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1671-2064(2018)19-0040-02
1 性能需求
時間:正常網速情況下,網站響應時間應小于等于5S。數據精確度:能夠對不同模塊的信息內容進行查詢;能夠通過模糊查詢,查詢出所對應的內容。安全性:通過阿里云盾,有效防止一些惡意鏈接,對沒有操作請求權限的人進行IP封鎖;對于用戶密碼進行MD5加密手段。
2 前端技術
開發人員也可以完全訪問核心應用程序所使用的API框架。該應用程序的架構設計簡化了組件的重用;任何一個應用程序都可以發布它的功能塊并且任何其它的應用程序都可以使用其所發布的功能塊(不過得遵循框架的安全性)。同樣,該應用程序重用機制也使用戶可以方便的替換程序組件。
隱藏在每個應用后面的是一系列的服務和系統,其中包括:(1)豐富而又可擴展的視圖(Views),可以用來構建應用程序,它包括列表(Lists),網格(Grids),文本框(Text boxes),按鈕(Buttons),甚至可嵌入的web瀏覽器;(2)內容提供器(Content Providers)使得應用程序可以訪問另一個應用程序的數據(如聯系人數據庫),或者共享它們自己的數據;(3)資源管理器(Resource Manager)提供非代碼資源的訪問,如本地字符串,圖形,和布局文件(Layout files);(4)通知管理器(Notification Manager)使得應用程序可以在狀態欄中顯示自定義的提示信息;(5)活動管理器(Activity Manager)用來管理應用程序生命周期并提供常用的導航回退功能。
3 后端技術
后端開發采用Java語言,其強大的開源性,以及在Github中無數的開源項目,為開發者提供了無限的可能性。迄今為止,java已然是當今社會最最流行的語言之一。他的簡單語法,以及面向對象性,健壯性都深受業內人士的喜愛。而開源庫的最大優點,就是讓無數程序員拜托了在重復寫底層代碼的麻煩,可以使得程序員在業務邏輯層方面進行深入的研究。
目前為止Java除了在WEB端有所作為以外,Java在嵌入式系統,Android,企業應用等各方面都有著不俗的領域。可以說他是時代中最萬能的語言,他的跨平臺性讓他得到了很好的發展。
4 Java設計開發模式
設計模式是先人在無數次開發經歷過程中總結出的一套被反復使用的理論。本系統將整個后端系統分為三個模塊第一是MVC模塊,第二是業務處理層模塊,第三是數據持久層模塊。這樣一個三層架構,是目前做JavaWeb開發最流行的模式。其目的就是為了實現Java 的“高內聚低耦合”的思路,將一個大的整個問題分成若干個小份,分而治理,在不同模塊的接觸過程中爭取將有所關聯的數據降到最少,使得在修改代碼片段時,做出最小的影響。
除此以外在程序的開發過程中,我們還要遵循POJO原則,將各個數據對象獨立開來,業務歸業務處理,對象歸對象處理,這也就是Java的面向對象性。而在開發過程中所用到的業務邏輯處理層則是有效的實現Java的封閉性以及可增加性的設計原則。在原有得基礎上,如果有新的業務功能出現,最好是應該新增而不是去修改原有的代碼。一方面保證業務可以正常實現,另一方面也是維護了原始代碼。
5 框架介紹
SpringMvc:springmvc作為目前主流的控制器模塊被大家廣泛使用,并且作為Spring的附屬項目,它與spring完美契合,用起來也十分方便。
6 項目管理工具介紹
本次系統的管理工具使用了Maven。那么Maven是如何去管理Javaweb項目的呢?首先使用MAVEN來創建 javaweb項目時,項目的目錄從以前的Src與webRoot變成了src/main/java、src/test/java、src/main/resource、src/webapps。如圖1所示:
此外Maven的另一個強大之處是在于他對于Jar包的管理。在之前的開發過程中總歸會有到Jar包沖突的各種不愉快事件,然而Maven輕松的解決了這個問題,利用Pom.xml文件讓Jar包在maven的管理范圍內,大大的減少了項目jar包沖突的可能性,此外。每個Jar包都有自己的生命周期。compile適用于所有階段,它會打包進項目。provided類似compile,期望JDK、容器或使用者會提供這個依賴。runtime只在運行時使用,如JDBC驅動,適用運行和測試階段。test只在測試時使用,用于編譯和運行測試代碼,不會隨項目發布。system類似provided,需要顯式提供包含依賴的jar,Maven不會在Repository中查找它。
本系統采用的是分布式框架搭建,將一個JavaWeb項目用maven進行分布式開發。這樣的好處在于,便于不同模塊,不同業務層的處理,使得代碼內聚性高。以下代碼則是maven在分布式項目管理的設計思路圖2所示。
可以看到設計者將整個網站分為5個部分,實體層、數據持久層、業務邏輯層、控制層、以及工具類。將所有不同的模塊分開有利于多個人員對于整個項目的管理修改。
7 開發語言規范
命名應該都是名詞或名詞性詞組,全部小寫,單詞之間用"."分開。
包的命名規則:[
類成員的命名規則:(1)方法規則:Camel規則,動詞或動詞性詞組;(2)屬性(即字段)規則:Camel規則,名詞、名詞短語或形容詞,添加前綴”_”,集合屬性使用復數形式;(3)常量規則:每一個單詞都要大寫,單詞之間用"_"分開,常量必須注明其含義。
變量的命名規則:(1)所有的變量必須以小寫字母開頭,名詞、動詞或動詞性詞組,第二個及以后的單詞首字母大寫;(2)數組應該以如下方式命名:int[] arrayName;而不是int arrayName[];(3)布爾類型變量必須用”is”、”can”、”has”等表示;(4)變量根據作用域來添加不同的前綴:1)類級別的變量(除屬性外)添加”c_”前綴;2)方法參數添加”p_”前綴;3)方法級別的變量添加”m_”前綴;4)循環級別的變量根據循環嵌套的深度添加不同的前綴【”i_”,”j_”,”k_”……】。
8 Spring事務說明
此次項目中,涉及到交易過程,在確保一個交易業務邏輯處理完整之前,我們必須對整個業務邏輯看成是一個完整的原子,不可以被拆分,如果在中途出現某個錯誤,必須要全部重新回撤,確保數據的完好。在商品交易過程中也是如此,那么我們必須要對Spring.xml文件以及Springmvc.xml文件進行事務的配置。以下是事務配置部分代碼:“
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
目前主流都是進行事務的注解配置,在使用事務的業務邏輯層上面進行@Transactional注解配置操作,機器方便。
9 MyBaits
mybaits作為在數據庫持久層打交道的開源項目框架,其優點就是在于相比于hirbnate,mybaits的運行速度是優于hirbnate的,盡管沒有比不上hirbnate的SQL語言來的方便,但是他強大的Mapper.xml文件也掩蓋了這一點的不足,可以說mybaits 是在性能以及語句方面都有良好表現的數據持久層框架。