自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

只需五步,快速構(gòu)建基于終端環(huán)境的API

譯文
移動(dòng)開發(fā) Android
本文將通過五個(gè)簡單的步驟,引導(dǎo)您在基于終端的環(huán)境(如:IBM i、VT、HPE NonStop、以及IBM Z)中快速地構(gòu)建API。

【51CTO.com快譯】您想通過五個(gè)簡單的步驟,來快速地在任意基于終端的環(huán)境(如:IBM i、VT、HPE NonStop、以及IBM Z)中構(gòu)建API嗎?如果您供職于某個(gè)大型組織的IT部門,那么此類需求您一定不陌生。畢竟,針對(duì)某些工作流程和功能,您所在的部門可能需要支持那些老舊的、基于終端的應(yīng)用程序。

顯然,上述情況給您帶來的最大挑戰(zhàn)主要是:時(shí)間。您需要花時(shí)間去確定供應(yīng)商是否提供了新版應(yīng)用程序的API,需要估算測試該版本的時(shí)間,以及將其部署到生產(chǎn)環(huán)境中所需的時(shí)間。同時(shí),如果供應(yīng)商沒有提供對(duì)應(yīng)的API版本,那么您就需要花時(shí)間來確定其源代碼是否可用,或者花時(shí)間研究、并發(fā)現(xiàn)最優(yōu)的集成點(diǎn)??梢院敛豢鋸埖卣f:面對(duì)API的交付日期,時(shí)間永遠(yuǎn)是不夠用的。您也許會(huì)問:該如何爭取時(shí)間呢?

既然我們無法神奇地增加工時(shí),那么就只能想辦法去節(jié)省創(chuàng)建API的時(shí)間。下面我們來具體看看該如何構(gòu)建基于終端應(yīng)用的API:

圖1:終端應(yīng)用程序中的客戶查找功能

第1步:定義API的接口

其實(shí),定義API并不復(fù)雜,但是我們需要在開始編寫代碼之前進(jìn)行仔細(xì)的考慮,特別是在命名和各種數(shù)據(jù)類型的模型方面。此事不可操之過急。一旦某個(gè)API被發(fā)布、并且可供調(diào)用,那么我們就無法在保證不破壞那些使用該API應(yīng)用的前提下,輕易地更改其接口了。因此,在大多數(shù)情況下,我們需要將其與終端類應(yīng)用中功能性的輸入和輸出相匹配:

圖2:定義接口

第2步:使用錄屏或機(jī)器人流程自動(dòng)化(RPA)工具實(shí)現(xiàn)API

為了以更快捷、更簡單的方法,發(fā)布基于終端應(yīng)用的功能性API,我們可以模仿應(yīng)用程序用戶的各種行為。此舉的好處在于:應(yīng)用專家可以據(jù)此確證(validate)和驗(yàn)證(verify)您所記錄的步驟,進(jìn)而發(fā)現(xiàn)各種異常,以及潛在的錯(cuò)誤。

圖3:錄屏工具的示例

由于API的定義主要源于終端應(yīng)用功能的實(shí)際輸入和輸出,因此錄屏工具的使用能夠有效地降低API的實(shí)現(xiàn)難度:

圖4:使用錄屏工具來實(shí)現(xiàn)API

第3步:尋找API的優(yōu)化方法

在發(fā)布了API之前,您應(yīng)該花費(fèi)一些時(shí)間去研究其實(shí)現(xiàn)的有效方法。由于響應(yīng)時(shí)間是至關(guān)重要的,因此,我們通??梢酝ㄟ^兩種選擇來加快API的執(zhí)行速度。第一種選擇是調(diào)查那些繞過終端顯示,而直接調(diào)用應(yīng)用程序的業(yè)務(wù)邏輯。另一種是嘗試著去訪問應(yīng)用程序存儲(chǔ)系統(tǒng)(如:數(shù)據(jù)庫)中的數(shù)據(jù)。如下圖所示:由于該應(yīng)用程序公布了一個(gè)名為“GetCustByNr”的可調(diào)用程序,因此我們可以直接調(diào)用它的業(yè)務(wù)邏輯,以獲悉其運(yùn)行的時(shí)間。

圖5:描述可調(diào)用模塊“GetCustByNBr”的PCML文件

第4步:更新API的實(shí)現(xiàn)

在此,我們假設(shè):通過測試,發(fā)現(xiàn)了直接調(diào)用應(yīng)用程序的業(yè)務(wù)邏輯,要比錄屏工具的實(shí)現(xiàn)快一些。那么,我們在切換到該實(shí)現(xiàn)方式之前,還需要考慮以下方面:

1. 由于最終業(yè)務(wù)邏輯過程的界面可能會(huì)與您在第1步中定義的界面有所不同,因此您可能需要進(jìn)行一些字段的映射和類型的轉(zhuǎn)換。例如,在本例中,CUSTNR被定義為普通的十進(jìn)制(Zoned decimal)。而在第1步定義的API中,“數(shù)字”已經(jīng)被定義為了“字符串”類型(我們這樣定義的原因是需要一個(gè)類型轉(zhuǎn)換的示例)。

圖6:將“數(shù)字”定義為“字符串”,并把“CUSTNR”定義為十進(jìn)制的映射

圖7:“GetCustByNbr”的輸出字段到API定義的映射

2. 輸入格式的確證。該步驟通常是在終端屏幕上被處理的,因此基本的業(yè)務(wù)邏輯過程可能會(huì)在正確性檢查和錯(cuò)誤處理方面有所欠缺。也就是說,您必須確保輸入(和輸出)的數(shù)據(jù)不但有效,并且可以被異常處理的程序所捕獲。

圖8:使用可調(diào)用的程序來檢驗(yàn)API的實(shí)現(xiàn)

3. 接著,我們要進(jìn)行相應(yīng)的測試。通常情況下,您可以同時(shí)采用上面提到的兩種API執(zhí)行方式。如果我們發(fā)現(xiàn)通過API的業(yè)務(wù)邏輯方式獲得的結(jié)果,與基于用戶終端屏幕的API結(jié)果有所不同,那么就需要進(jìn)一步找到根本的原因。

圖9:確保API行為在兩種執(zhí)行方式運(yùn)作之后具有相似的結(jié)果

第5步:監(jiān)視應(yīng)用程序的生命周期

如今,各種終端應(yīng)用往往是通過API的相互調(diào)用,來實(shí)現(xiàn)自我構(gòu)建和運(yùn)行的。因此正如我們在第1步中強(qiáng)調(diào)過的:任何API接口的變更,都會(huì)影響到與之關(guān)聯(lián)的應(yīng)用程序。那么反之亦然。

我們需要通過持續(xù)監(jiān)控目標(biāo)應(yīng)用的整個(gè)生命周期,以避免由于應(yīng)用程序的細(xì)微更改,而導(dǎo)致某些API的可用性和準(zhǔn)確性,進(jìn)而影響到整個(gè)應(yīng)用程序的構(gòu)建。當(dāng)然,您也可以通過一些標(biāo)準(zhǔn)化的解決方案,來協(xié)助管理和協(xié)調(diào)基礎(chǔ)終端應(yīng)用與相關(guān)API的變更聯(lián)動(dòng)關(guān)系,進(jìn)而保證開發(fā)團(tuán)隊(duì)能夠按照自己的步調(diào)進(jìn)行創(chuàng)新,且不會(huì)中斷現(xiàn)有的業(yè)務(wù)。

原文標(biāo)題:API Strategy for Terminal-Based Applications,作者:Jeroen van Dun

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:未麗燕 來源: 51CTO.com
相關(guān)推薦

2023-08-01 19:16:01

Spring編程瀏覽器

2021-09-28 08:00:32

數(shù)據(jù)安全網(wǎng)絡(luò)風(fēng)險(xiǎn)網(wǎng)絡(luò)安全

2022-11-28 11:43:24

數(shù)據(jù)分析不及格數(shù)據(jù)驗(yàn)證

2022-03-07 08:04:19

云計(jì)算云戰(zhàn)略應(yīng)用程序

2018-01-10 16:07:55

數(shù)據(jù)數(shù)據(jù)分析企業(yè)轉(zhuǎn)型

2023-09-21 22:50:15

KubernetesSpring

2020-08-24 11:48:49

人工智能

2016-07-04 17:23:15

輕松實(shí)現(xiàn)vCenter

2010-05-31 10:34:00

Windows下配置S

2021-03-02 07:02:45

Linux操作系統(tǒng)

2014-04-04 13:53:34

2023-09-18 14:39:02

2023-02-20 10:16:20

ChatGPT模型

2010-06-12 13:49:16

學(xué)習(xí)UML

2010-07-09 12:08:36

設(shè)置SNMP協(xié)議

2023-09-26 12:32:21

數(shù)據(jù)分析領(lǐng)導(dǎo)數(shù)據(jù)

2016-11-08 09:29:11

數(shù)據(jù)構(gòu)建用戶模型

2016-04-26 10:43:05

數(shù)據(jù)分析用戶行為模型

2015-03-30 18:22:38

開發(fā)環(huán)境API構(gòu)建

2022-02-09 14:36:25

GoMongoDBFiber
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)