有感而發 - 日新月異的SAP開發技術和手術方式
Jerry 2006年參加SAP成都研究院校園招聘會時,曾經聽在研究院裡實習過一段時間的兩位教研室同學介紹過,進入SAP之後,我們們大學學習和研究生階段做專案用的C/C++就用不上了,得從頭學習一門全新的程式語言(詳情參考Jerry之前的文章: 我是怎麼和SAP結緣的 - Jerry的SAP校園招聘之路)。
後來,Jerry 2007年1月進入SAP成都研究院報導才知道,那門語言叫做ABAP.
那個時候,整個成都研究院的開發人員,幾乎都在圍繞著同一個SAP SaaS軟體進行開發工作: SAP Business by Design.
一晃十多年過去了。今天,SAP成都研究院小夥伴們,使用的技術棧早已突破了ABAP的限制,可以說目前IT業界使用的所有主流程式語言,在SAP成都研究院的開發專案裡都能找到它們的身影。
這十多年間,我也親身見證了SAP程式設計技術演進的歷史。Jerry之前的文章, SAP UI和Salesforce UI開發漫談, 簡單回顧了SAP前端開發幾代技術的演進歷史,按照誕生的日期早晚,依次羅列如下:
- SAP GUI + Dynpro
- SAP ABAP Web Dynpro
- SAP WebClient UI
- SAP Fiori(poweres by SAP UI5, or other Fiori Fundamentals)
早在2013年SAP Fiori 1.0誕生之初,SAP就在官方社群上向生態圈內的從業者宣佈,Fiori將會是未來SAP主流產品使用的UI設計語言和使用者體驗準則(User Experience Guideline). Jerry以前的同事周帥,曾經寫過一篇文章, SAP成都C4C小李探花:淺談Fiori Design Guidelines,概要介紹了SAP Fiori的前世今生和其在SAP Cloud for Customer中的應用。
Fiori是一套介面設計風格的規範集合,在誕生之初,配套的前端實現框架僅僅只有SAP UI5這一種選擇。近些年來SAP技術一直在朝著擁抱變化,擁抱開放的方向發展,於是就有了SAP Fiori Foundamentals, 能夠讓會用React, Vue等非SAP UI5框架的前端工程師們,使用他/她們熟悉的前端開發技術,依然同樣能開發出具有Fiori UX的應用出來。
而SAP UI5 Web Component, 是SAP將之前SAP UI5控制元件庫裡的控制元件,按照Web Components標準規範重新實現並封裝後的產物。
一個傳統的基於SAP UI5的應用,其XML檢視裡,宣告一個Button控制元件的用法,見下圖第二行:
SAP UI5 Web Components可以用在任何前端框架裡,比如React, Angular, Vue和未使用任何框架開發的簡單HTML頁面。下圖是一個簡單的HTML頁面,使用SAP UI5 Web Components定義的Button控制元件位於第17行。
關於更多SAP Fiori Foundamental和SAP UI5 Web Components的介紹,請參考Jerry的文章:
在Jerry剛進入SAP行業的那個年代,Partners如果要進行二次開發,手段相當有限,無非直接在ABAP On-Premises系統上做增強,或者在第三方系統上,通過Web Service或者RFC消費SAP系統暴露出的API. 詳情請參考Jerry的文章: SAP API開發方法大全。
隨著SAP雲平臺的問世,極大地豐富了Partners進行二次開發的技術手段。ABAP也加入了雲環境的大家族,正式成為了SAP雲平臺程式設計環境之一。而越來越多的來自開源社群的技術,諸如Docker容器,Kubernetes等等,也在逐漸滲透進SAP標準產品的開發中去。
這些新出現的技術,深刻影響到了我們們的客戶們使用SAP產品的習慣和方式。上世紀末,把SAP GUI玩得爛熟的那些資深SAP老前輩們,絕對不會意識到,未來的十幾年後,SAP應用可以在掌中一部幾英寸大的移動裝置上,僅僅憑藉指尖觸碰就能訪問。技術的更新換代也給SAP開發人員提出了更高的要求,我們唯有保持接受變化的開放態度,根據客戶的實際需求,更新自己的技能庫,方能跟上時代的步伐。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2704692/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 探索基於WebRTC的有感錄屏技術開發流程Web
- SAP 移動開發技術綜述移動開發
- ArcObjects SDK開發 024開發的技術和技巧Object
- 作為一個SAP開發人員,需要學習SAP傳統技術(比如ABAP)以外的開源技術嗎?
- 有感而發,隨筆記錄筆記
- 初學 Rust 有感而發 20221221Rust
- PHP語言技術開發的手術麻醉管理系統原始碼PHP原始碼
- 2019年除夕夜的有感而發
- 異界騎士鏈遊開發NFT系統技術
- 關於軟體開發流程規範,有感於最近做技術顧問(一)
- Web前端開發掌握的技術Web前端
- SAP Commerce Accelerator和SAP Spartacus的技術對比
- 叮!Techo Day 騰訊技術開放日如約而至!
- 佛薩奇2.0合約系統技術開發/python技術開發框架Python框架
- 達贊系統技術開發/達贊DAS模式技術開發詳情模式
- 你的開發好幫手:下一代雲原生開發工具技術
- android 開發之 APT 技術AndroidAPT
- 區塊鏈技術開發區塊鏈
- 抖音短影片開發,SDK包含的功能及技術實現方式
- 區塊鏈技術發展_區塊鏈技術開發新方向區塊鏈
- H5 手機 App 開發入門:技術篇H5APP
- Followme智慧跟單機器人技術開發/Followme系統開發技術詳情機器人
- Yes量化合約交易系統技術開發/原始碼/量化合約開發技術原始碼
- 生城世朝農場合成系統開發技術/合成遊戲/技術開發遊戲
- SAP介面技術
- 錢包開發技術新手指南,打破技術壁壘
- SAP的技術戰略
- web開發框架技術有哪些?Web框架
- 前端技術開發工具彙總前端
- 做Java開發需要哪些技術?Java
- 技術簡介——後端開發後端
- 移動開發技術有哪些?移動開發
- Android開發技術面總結Android
- 物聯網開發技術棧
- 如何理解Python web開發技術PythonWeb
- Java開發之掌握JSP技術JavaJS
- 非梵藝術NFT數藏開發/系統技術開發/非梵藝術NFT模式模式
- 分析商城app開發的功能、模式、技術APP模式