成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

為什么應該用Ballerina編程?

譯文
開發 前端
一起來了解下開發人員應選擇Ballerina為其云原生應用程序編寫API、集成和后端邏輯的主要原因。

雖然可以使用任何編程語言編寫API,但開發人員在創建新API、使用已經存在的API時面臨許多挑戰。此外,企業集成仍頗具挑戰性。

集成編程實踐已變得很孤立,使用青睞的集成工具進行編程的開發人員必須使用另一種工具或編程語言開發其余應用程序。除此之外,向云轉變意味著團隊現在必須在容器中部署集成系統,并使用分布在大量節點上的微服務創建應用程序。

現有的編程語言并不特別擅長理解這些問題以及團隊試圖所做的工作。它們根本不是為云而構建的。而Ballerina是一種面向云原生編程和集成的開源語言,為致力于針對網絡交互創建新API、新集成和新邏輯的開發人員提供了一系列合適的工具和抽象級別。

憑借用于開發服務和API的語法、JSON支持以及內置并發,新的正式版Swan Lake可以進一步簡化開發人員構建和部署云原生應用程序的方式。

以下是開發人員應選擇Ballerina為其云原生應用程序編寫API、集成和后端邏輯的主要原因。

Ballerina面向數據和網絡

由于云端服務越來越多,幾乎每個企業應用程序都需要網絡調用。對于開發人員來說,這加大了處理其代碼中的資源方面的責任。Ballerina隨帶對網絡友好的類型系統,有強大的功能來處理網絡上的數據。

Ballerina可以輕松地為數據建模,并通過網絡來回傳送。該語言有強大的工具來編寫、聲明、處理、查詢、結構化、重組和導航數據。

importballerina/http;
importballerina/io;

typeCountryrecord {
stringcountry;
intpopulation;
stringcontinent;
intcases;
intdeaths;

};

// Prints the top 10 countries having the highest case-fatality ratio.

publicfunctionmain() returnserror? {
http:ClientdiseaseEp = checknew ("https://disease.sh/v3");
Country[] countries = checkdiseaseEp->get("/covid-19/countries");

jsonsummary =
fromvar {country, continent, population, cases, deaths} incountries
wherepopulation >= 100000 && deaths >= 100
letdecimalcaseFatalityRatio = <decimal>deaths / <decimal>cases *
100

orderbycaseFatalityRatiodescending
limit10
select {country, continent, population, caseFatalityRatio};
io:println(summary);

}

具有靈活類型系統的優點

編程語言的類型系統是表示數據和實現邏輯的基礎。雖然開發人員必須處理其代碼中的網絡資源,但編程語言本身必須在該操作中提供幫助。這就是為什么Ballerina專門適用于對網絡友好的類型系統。

比如在典型的編程語言中,有一些標準和協議來定義如何處理通過網絡傳輸的數據,并將其綁定到語言(數據綁定)。收到數據后,開發人員必須將數據綁定到語言中的數據結構,才能對其進行操作。

Ballerina的類型系統不僅能描述內存中的數據,還能描述網絡上的數據。尤其是,為了與JSON、XML及其他格式緊密結合,開發者做了大量工作。數據通過網絡傳輸時,開發人員可以將其引入語言中,沒有任何人為的、復雜的數據綁定問題,實際上擯棄了眾所周知的數據格式和網絡數據結構中的數據綁定概念。

Ballerina的類型系統主要是結構化的,增加了對名義類型的支持。這意味著類型兼容性通過考慮值的結構而不是僅僅依賴類型名稱來識別。這有別于Java、C++和C#等擁有類型系統的語言,這些系統中受實際類型名稱的約束。

序列圖模型網絡交互

在Ballerina中,每個程序都可以顯示為自動表明分布式并發交互的序列圖。Ballerina程序中的函數在文本語法和序列圖中都有等效的表示。您可以在這兩個視圖之間無縫切換。 Ballerina獨特的圖形視圖不是一種噱頭,而是被設計到語言底層中,以便用戶切實深入了解函數的網絡交互及并發機制的使用。

importballerina/http;
importballerinax/googleapis.sheets;

configurablestringgithubPAT = ?;
configurablestringrepository = "ballerina-platform/ballerina-lang";
configurablestringsheetsAccessToken = ?;
configurablestringspreadSheetId = ?;
configurablestringsheetName = "Sheet1";

typePRrecord {
stringurl;
stringtitle;
stringstate;
stringcreated_at;
stringupdated_at;
};

publicfunctionmain() returnserror? {
http:Clientgithub = checknew ("https://api.github.com/repos");
map<string> headers = {
"Accept": "application/vnd.github.v3+json",
"Authorization": "token " + githubPAT
};

PR[] prs = checkgithub->get(string`/${repository}/pulls`, headers);

sheets:Clientgsheets = checknew ({auth: {token: sheetsAccessToken}});
checkgsheets->appendRowToSheet(spreadSheetId, sheetName,
["Issue", "Title", "State", "Created At", "Updated At"]);

foreach var {url, title, state, created_at, updated_at} inprs {
checkgsheets->appendRowToSheet(spreadSheetId, sheetName,
[url, title, state, created_at, updated_at]);
}
}

雖然Ballerina具有現代編程語言的所有通用功能,但它之所以脫穎而出,是由于提供了更易于使用、為云組合和創建網絡服務的語言功能。如需深入了解Ballerina語言功能的介紹性說明,建議觀看該語言的開發者??Sanjiva Weerawarana的視頻???,或者參閱該??博客??。

原文標題:??Why Should You Program with Ballerina???,作者:Vishva Ahangama


責任編輯:華軒 來源: 51CTO
相關推薦

2022-07-06 09:29:40

JMH性能測試

2014-12-05 09:49:18

2018-07-10 16:05:05

2023-11-24 08:17:38

金額類型存儲

2024-10-18 11:55:47

2019-08-28 15:38:04

Linux系統工具

2015-08-24 10:51:00

全棧

2015-08-25 09:57:18

程序員全棧工程師

2022-11-08 17:53:28

2013-01-07 11:31:11

大數據大數據應用

2019-08-12 07:29:28

餐館物聯網IOT

2018-06-08 15:27:59

云計算企業存儲

2022-11-24 14:46:59

物聯網數字醫療虛擬現實

2022-05-16 09:27:37

UbuntuUbuntu LTS

2025-05-26 02:55:00

value安全開發

2020-05-12 11:25:50

MySQLES數據庫

2017-05-15 09:55:07

2015-04-21 10:11:15

云托管Linux桌面

2022-01-23 13:51:30

Arch LinuxLinux

2020-06-05 14:09:42

Kubernetes容器應用程序
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品电影网在线观看 | 欧美a在线 | 久久久久免费精品国产 | 成人国产精品入口免费视频 | 久久精品一区二区 | 久草青青| 午夜寂寞福利视频 | 国产1区2区3区 | 男女激情网 | 在线观看午夜视频 | 国产黄色小视频 | 成人特区 | 亚洲一区 中文字幕 | 久久久国产精品入口麻豆 | 搞av.com| 久久看看 | 北条麻妃视频在线观看 | 欧美亚洲视频 | 视频三区 | 99精品视频免费观看 | m豆传媒在线链接观看 | 综合九九| 国产sm主人调教女m视频 | 精品国产乱码久久久久久丨区2区 | 亚洲人在线播放 | 亚洲一区二区在线播放 | 日韩精品一区二区三区在线播放 | 中文字幕啪啪 | 欧美日韩一区二区在线播放 | 女朋友的闺蜜3韩国三级 | 久久久999国产精品 中文字幕在线精品 | 色毛片 | 欧美激情一区二区三级高清视频 | 国产在线播 | 99热这里都是精品 | 一区二区三区四区不卡 | 久久综合九九 | 中文字幕蜜臀av | 亚洲电影一区二区三区 | 久久久国产精品 | 午夜久久久久久久久久一区二区 |