999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于iOS平臺的新聞播報系統設計與實現

2018-04-12 05:10:00尚志會李洪進王光忠
安陽工學院學報 2018年2期
關鍵詞:界面數據庫用戶

尚志會,羅 旭,李洪進,楊 敏,王光忠

(遵義醫學院醫學信息工程學院,貴州遵義563006)

基于iOS平臺的新聞播報系統設計與實現

尚志會,羅 旭,李洪進,楊 敏,王光忠

(遵義醫學院醫學信息工程學院,貴州遵義563006)

目前,越來越多的人使用手機獲取最新新聞資訊,但手機獲取新聞數量及閱讀體驗方法存在局限性,不能滿足人們隨時隨地查看最新新聞。為了解決當前存在的問題,使人們能夠更快地選擇性閱讀獲取新聞信息,從而避免時間的浪費,設計實現了基于客戶端開發的新聞播報系統解決這一問題。研究以Objective-C語言為基礎,Xcode為開發工具,SQLite為數據庫進行開發,實現了新聞的分類、瀏覽、分享、評論等功能。最后通過測試與驗證,表明新聞播報系統界面簡單,易于操作,適用于不同年齡段的人群。

新聞播報;iOS平臺;App;組件;MVC框架

隨著信息技術的發展,人們已經離不開手機,手機也進入智能化的時代。為了滿足人們在上下班途中的公交、地鐵上更快地獲取新聞信息,隨時隨地的通過手機來獲取新聞資訊,設計了一種滿足手機用戶的新聞播報系統App,通過搜索人們點擊量的信息素把新聞熱點、時事政治推送到客戶端,方便用戶獲取想要查看的新聞信息,提升用戶客戶端的閱讀體驗[1-2]。

1 技術介紹

iOS是蘋果公司專門為iPhone開發所提供的操作系統,iOS與Mac OSX操作系統相近,以Darwin為基礎開發,主要用于iPhone、iPad終端[3]。系統主要由應用軟件、操作系統、中間件等部分組成,由于它的開放性從而造就了更多樣化的硬件設備。

新聞播報系統軟件的實現是基于Mac OS環境下的一款智能iOSApp的實現,該系統使用Objective-C技術。Objective-C技術是在C語言的基礎上加入面向對象特點而形成的一種擴充C的面向對象編程語言。通過FMDB數據庫以OC的方式對SQLite數據庫進行封裝,把SQLite中的C語言API進行封裝,使其更加面向對象,這樣可以給開發者帶來很大方便,從而節省開發時間,提高開發效率[4]。新聞播報系統主要功能為:用戶可以查看當前新聞,根據不同的分類來選擇自己感興趣的新聞,點擊進入后可以查看新聞詳情,了解新聞具體信息。系統主要分為首頁、話題、個人三個模塊,實現對新聞的瀏覽、查看、分享等功能,個人模塊登錄后可以查看自己的分享與收藏等相應功能。

Objective-C技術主要應用于Mac OSX和iOS開發系統平臺上,而在NeXTSTEP和OpenStep面向對象的API中,它更是基本語言。Objective-C可以在任何GCC支持的平臺上使用,并且完全兼容標準C語言,不過它需要使用extern"C"這種顯式聲明來與C函數進行兼容[5]。

FMDB是iOS平臺的SQLite數據庫框架,它的核心類有 FMDatabase、FMResultSet、FMDatabase-Queue三種,其中每一條FMDatabase對象都代表一個單獨的SQLite數據庫,用來執行SQL語句;FMResultSet是使用FMDatabase查詢后的結果集;FMDatabaseQueue是用在多線程中執行多個查詢或更新,并且是線程安全類型[6]。

JSON作為一種輕量級的數據交換格式,從iOS5開始,APPLE公司提供了對json的原生支持,它的3種處理樣式為一種方式及其兩個變型:

流式API:(也稱為“增量分析∕生成”)讀取和寫入JSON內容作為離散事件。org.codehaus.jackson.Json Parser讀,org.codehaus.jackson.Json Generator寫以及StAX API的激勵。

樹模型:提供一個JSON文檔可變內存樹的表示形式。org.codehaus.jackson.map.ObjectMapper生成樹;樹組成JsonNode節點集,而樹模型類似于XMLDOM。

數據綁定:JSON和POJO相互轉換。基于屬性訪問器規約或注解,而數據綁定又分為簡單和完整的兩種數據綁定。org.codehaus.jackson.map.ObjectMapper對兩個變種,進行編組(marshalling)處理(寫入JSON)和反編組(unmarshalling,讀JSON)。

①簡單數據綁定:是指從Java Map、List、String、Numbers、Boolean和空值進行轉換。

②完整數據綁定:是指從任何Java bean類型(及上文所述的“簡單”類型)進行轉換。

2 新聞播報數據表設計

數據庫是開發系統的一個重要模塊,也是項目的開展基礎,在設計階段如何對數據庫中數據結構進行設計至關重要。系統中使用的SQLite數據庫,是一個使用起來非常方便的輕量級數據庫[7]。在新聞播報App系統中,新聞列表的數據庫主要包括新聞編號、新聞標題、新聞作者、新聞類型、發布時間。具體的新聞列表數據庫如表1所示。

話題列表是一些新聞類集合,根據不同話題來對新聞進行分類,用戶可根據自己喜歡話題進行瀏覽,再通過喜歡話題中對自己比較感興趣的新聞進行篩選、瀏覽、評論等。話題列表的數據庫表主要包括:話題編號、話題類型、話題名稱等。話題列表的數據表如表2所示。

個人信息表主要存儲個人信息,主要包括個人用戶的昵稱、郵箱、圖像等。個人信息表如表3所示。

表1 News表結構

表2 Topic表結構

表3 Users表結構

3 iOS新聞播報系統流程設計

根據前期的項目需求分析,對基于iOS的新聞播報系統進行詳細的劃分,形成一個系統流程圖。在流程圖中清晰地劃分了各個模塊并很容易地了解系統各個模塊之間的關聯。系統總體框架分為三個主要模塊:首頁、主題和個人。其中首頁又分為熱門、推薦和信息推送,以新聞詳情方式展示新聞信息為主。主題又分為主題列表和主題詳情。個人又分為意見反饋、聯系客戶、查看版本號和關于我們等模塊。總之,三大模塊之間各有聯系。系統的功能結構如圖1所示。

在進行系統設計時,首先要進行系統框架的搭建。系統采用MVC設計模式,用于方便對數據以及視圖的管理。根據需求,本系統主要分為三個模塊,首頁模塊、主題模塊、個人模塊。根據需要在模塊中添加詳細功能。系統模塊如圖2所示。

圖1 功能結構

圖2 系統模塊

4 iOS客戶端實現

實現本系統的過程中,前期主要進行資料的查閱與系統的設計。在界面的搭建上主要使用的是 UIView、UIImageView、UIButtonUILabel、UIText-Fild、UITableView控件進行頁面布局,實現頁面的美化。對于頁面之間的跳轉使用的是導航條,使用代理來實現具體的傳值等,具體實現的功能介紹如下。

首頁,模塊是用戶剛啟動時所展示的界面,新聞列表采用的是同一個cell來進行布局,實現布局的統一,根據接口返回的數據的不同,顯示不同的新聞信息。請求數據使用post請求并對請求進行封裝,在使用時以直接調用方法將參數傳入,避免了代碼的冗余。同時,也使用了下拉刷新,這樣使得在網速較慢的情況下可以重新加載數據。在新聞導航條使用自己定義的滑動視圖來實現,當滑動時,根據選擇的標題來顯示同一個類型的視圖,同時將網絡請求數據和頁面加載分步處理,減少因網絡請求過多而引起的網絡堵塞以及因加載界面過多而使程序反應遲鈍的問題。首頁模塊如圖3所示。

在首頁中,對熱門、推薦、科技的顯示,是采用滾動視圖實現的。使用ScrollerView可以實現左右滑動,根據滑動到的標題來顯示相應新聞。在滑動時,根據偏移量來確定滑動條的位置,根據ScrollerView的代理方法來進行相應的傳值、刷新,最終實現根據滑動來更新數據,顯示相應的頁面。滾動視圖效果如圖4所示。

圖3 首頁模塊

如果用戶想要了解某一行業的最新新聞信息,可通過感興趣新聞、話題進行分享。這里做了qq、微信、微博等分享,用戶也可根據自己想用的應用來進行分享。分享列表如圖5所示。

圖5 分享列表

5 數據分析

圖4 滾動視圖

當iOS用戶在打開新聞播報客戶端時,某些操作需要訪問服務端,訪問服務器需要通過訪問HttpURLConnection類發送https協議。在訪問數據時,一般采用AFNetworking進行網絡請求,利用SBJson解析數據。在進行數據傳遞時一般采用的是post和get兩種請求,在post請求中需要把要傳入的參數傳入請求中,一般都是放入字典中再把字典傳入post請求中。請求完成后服務器會返回對應的數據,根據數據把在view上顯示出來。

6 系統測試

6.1 測試內容

在測試時主要采用真機測試和模擬機測試。Xcode自帶有直接運行項目的模擬器,不需要證書驗證就可以在模擬器上運行程序查看效果,各個界面的跳轉都可以在模擬器上實現。可以根據需要選擇不同大小的屏幕。iPhone6、iPhone6s對應的是4.7的屏幕,iPhone6 Plus、iPhone6s Plus對應的是5.5的屏幕,iPhone5、iPhone5s對應的是3.5的屏幕。一般的效果都可以在模擬器上實現。

有時模擬器的效果會有誤差,有些功能也無法實現,這時候就需要用真機來測試。本系統主要是用iPhone6真機來測試。但在進行真機測試時需要開發者證書,才能進行測試。

6.2 UI界面測試

UI界面是App與用戶交互最直接的方式。打開一款App如果發現該界面布局十分規范,就會帶給人一種輕松的感覺,所以界面的好壞決定著用戶對軟件的第一印象。UI界面測試主要對系統界面進行測試,主要是測試布局是否合理,顏色是否搭配等。如果一些提示信息描述不夠清晰或者存在分歧,就需要更改界面的標題。另外,開發人員自己所標注的注釋也可能存在一些錯誤,這也需要檢查測試。

一般軟件界面要具有合理性、規范性、一致性。界面的合理性是指界面的顏色和布局要一致,并且要與軟件功能相融洽。界面的規范性是指用于用戶操作的一系列規則,目的是讓用戶容易操作。軟件界面的風格一致性保證界面的布局,形成一個整體的風格。

6.3 性能測試

性能測試在保證軟件質量中起重要的作用。一般情況下,性能需求指標主要包括健壯性、安全性、穩定性、容錯性,還包括應對應用程序中的各種潛在危險和遭受惡意攻擊的可能等。軟件的性能測試一般包括負載測試和軟件壓力測試,目的是為了驗證能否實現用戶提出的性能指標,發現系統中存在的性能瓶頸,用以進一步優化系統。

通常情況下,人們主要通過真實環境下的重復使用來測試軟件的性能指標。開發的該款新聞播報系統在Xcode中有專門的性能測試,Build and analyze方法可以測試內存泄露、空指針等指標。

7 結束語

為了方便人們瀏覽新聞,更好地獲取當前信息,開發了基于iOS的手機新聞客戶端系統。基于iOS平臺的新聞播報系統開發與設計不僅為用戶提供一個新聞瀏覽平臺,而且也為用戶提供了一個對時事熱點感興趣的交流平臺,在功能上基本能夠滿足人們對新聞的需求。在做這個系統時同網易新聞等系統進行了對比,了解到該系統還有很大的不足,這正是以后需要進一步研究和改進的地方。

[1]楊帆.基于iOS平臺的學生請假系統的設計與實現[J].新鄉學院學報,2017,34(3):34-36.

[2]尚志會,張建偉,蔡增玉,等.云桌面環境下基于蟻群算法的作業調度方法[J].計算機工程與設計,2017,38(6):1668-1672.

[3]沈晶.基于iOS平臺的英語學習視頻系統開發[J].自動化與儀器儀表,2016(8):224-226.

[4]孫佳瑞.基于iOS平臺的自助游客戶端的設計與實現[D].大連:大連理工大學,2016.

[5]尚志會,張建偉,馬琳琳,等.基于iOS平臺的網購應用客戶端的設計與實現[J].湖北民族學院學報(自然科學版),2016,34(2):210-213.

[6]王月梅.基于IOS的列車旅行系統APP的設計與實現[J].電子技術與軟件工程,2017(6):50-52.

[7]王玉良,陳曉東,吳吞.基于iOS系統的惡意行為檢測研究[J].電信科學,2017,33(2):48-54.

The Design and Implementation of News broadcasting System Based on iOSPlat form

SHANG Zhihui,LUO Xu,LI Hongjin,YANGM in,WANG Guang zhong
(School of Medical Information Engineering,Zunyi Medical University,Zunyi563006,China)

At present,more and more people usemobile phones to get the latest news information,but,there are some limitations on the number of accessible news and theways of reading.So it cannot meet the requirement that people can read the latest news at anytime and anywhere.In order to solve the existing problems,to get news and information by faster selectively reading and to avoid the waste of time,the news broadcasting system based on client-side is designed and implemented.This research is based on Objective-C language,and Xcode is the development tool,SQ Lite is the database for development,which achieve the function of news classification,browsing,sharing,comment etc.Finally,through the test and verification,the interface of news broadcast system is simple,easy to operate,and suitable for people of different ages.

news broadcasts;iOS Platform;App;components;the MVC framework

王彥永)

TP311.1

A

1673-2928(2018)02-0065-05

D01:10.19329/j.cnki.1673-2928.2018.02.019

2017-11-12

1.2017年度遵義醫學院自然科學類碩士科研啟動資金項目:虛擬云平臺下云實驗室作業調度關鍵技術研究;2.2016年國家自然科學基金項目:無線傳感器網絡下水污染源定位技術研究(61463053);3.2016年國家自然科學基金項目:宏觀情景擬合的內容中心網絡自適應路由方法研究(61672471);2016年度遵義醫學院自然科學類碩士科研啟動資金項目:大數據驅動的基于移動用戶行為分析的個性化服務推薦研究。

尚志會(1989-),男,河南內黃人,碩士,遵義醫學院教師,研究方向為云計算、計算機網絡、軟件工程。

猜你喜歡
界面數據庫用戶
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
人機交互界面發展趨勢研究
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 999精品在线视频| 欧美一区二区三区不卡免费| 无码有码中文字幕| 色欲色欲久久综合网| 波多野结衣一区二区三视频| 大陆精大陆国产国语精品1024| 免费啪啪网址| 色妺妺在线视频喷水| 亚洲人成日本在线观看| 激情无码视频在线看| 无码中文字幕加勒比高清| 一级毛片在线直接观看| 国产激情影院| 亚洲无码高清视频在线观看| 超清无码熟妇人妻AV在线绿巨人| 国产高清国内精品福利| 欧美精品伊人久久| 色爽网免费视频| av尤物免费在线观看| 国产视频欧美| 97se亚洲综合在线| 国内精品伊人久久久久7777人| 狠狠色香婷婷久久亚洲精品| 狠狠操夜夜爽| 日韩美毛片| 国产无码高清视频不卡| www.狠狠| 久久精品国产电影| 精品99在线观看| 国产精品女主播| 久久窝窝国产精品午夜看片| 青青网在线国产| 热re99久久精品国99热| 日韩国产黄色网站| 四虎影视8848永久精品| 毛片视频网址| 国产精品永久久久久| 亚洲欧洲日韩综合色天使| 十八禁美女裸体网站| 亚洲精品视频免费| 国产又粗又爽视频| a国产精品| 欧美日本不卡| 亚洲中文字幕在线一区播放| 久久久久亚洲AV成人网站软件| 在线精品视频成人网| 日本黄色a视频| 亚洲精品无码抽插日韩| 国产永久无码观看在线| 日本欧美成人免费| 亚洲AⅤ无码国产精品| 国产日韩久久久久无码精品| 91久久性奴调教国产免费| 久久夜夜视频| 亚洲h视频在线| 99视频在线看| 亚洲日韩日本中文在线| 久草视频精品| 欧美成人国产| 在线无码九区| 538国产在线| 全色黄大色大片免费久久老太| 亚洲精品777| 国产人成午夜免费看| 国产jizz| 国产成人精品高清在线| 97精品国产高清久久久久蜜芽| 亚洲欧美国产视频| 国产亚洲精品在天天在线麻豆| 人妻精品全国免费视频| 欧洲日本亚洲中文字幕| 欧美一级在线播放| AV无码无在线观看免费| 日本草草视频在线观看| 欧美日韩va| 色欲色欲久久综合网| 欧美久久网| 99视频国产精品| 欧美成人亚洲综合精品欧美激情 | 一区二区影院| 奇米精品一区二区三区在线观看| 国产大片黄在线观看|