你需要了解API介面
編輯導讀:程式設計師是公司裡的技術崗,也是產品經理最密切的合作伙伴。但是,程式設計師能看懂產品經理的工作,產品經理卻不一定能明白程式設計師的工作,因此也常常被無良程式設計師坑。本文就從API介面的維度,淺析API的概念以及為什麼要了解它,避免PM們在實際工作對程式碼技術類知識一無所知。
產品經理在日常工作中,負責推進專案進度。當他們與程式設計師對接的時候,詢問這個功能幾天能做完,程式設計師給的答案是五天。雖然你預計的時間只有三天,但你無計可施,只能相信他,並如約給了他五天時間,最後卻導致專案延期。
你並不知道這個功能的程式碼究竟有多少,程式設計師的工作量有多大,他利用你的一無所知有意拖延你的專案進度,最後背鍋的還是你。
程式設計師,是公司裡的技術類職位,他能看懂我們的工作,我們卻很難理解他們。為了PM們在實際工作中不被無良程式設計師禍害,本文就從API介面的維度,淺析API的概念以及為什麼要了解它,避免PM們在實際工作對程式碼技術類知識一無所知。
一、API的概念
API,官方定義為應用程式程式設計介面。就是把是一些預先定義的介面,用來提供應用程式與開發人員基於某軟體或硬體得以訪問的一組例程,而又無需訪問原始碼,或理解內部工作機制的細節。
二、為什麼要懂API文件
既然API如此複雜,又不屬於PM的工作範疇,我們為何需要大費周章的理解它呢,我們的目的是什麼。
1. 明確需要的介面服務
API分為很多種,最基礎也是產品最需要的諸如簡訊API,地圖API,語音API等,如果我們的產品涉及到此方面的功能,那就必須瞭解這方面的API以便於在需求設計階段考慮更全面
2. 掌握專案開發的工作量,合理安排計劃
這裡說白一點就是防止被程式設計師欺騙。你走過去,發現程式設計師正在勤勤懇懇,對不起,人家在做外包,就是欺負你程式碼看不懂,氣不氣?但是如果你知道介面的難度和工作量,規定他在多久之內給你,就不會出現拖延專案的情況,也更有利於專案流程的更進
3. 聯調測試,識別專案風險點
一些關鍵介面、資料量大需要進行大資料壓測的介面,必須經過聯掉測試,測出它的訪問量,並對其進行最佳化或者設定限制,防止系統崩潰。
4. 方便專案對接
PM懂一點技術,就不會鬧出明明不能做,卻還非要程式設計師做出來的笑話了。從這個角度看,也更有利於PM和程式設計師之間的團隊溝通與和諧,避免矛盾,不至於弄翻友誼的小船。瞭解API可以使PM對技術理解更深刻,更好地衡量開發工作量和制定功能內容。
三、舉例說明API的重要性
優點:
開發人員A開發了軟體A,開發人員B正在開發軟體B,A想用B的部分成果或功能輔助開發B軟體,但不想完整輸入A的軟體,怎麼辦?於是A將軟體打包成一個函式,放在B軟體中,這個函式就是API。
如果沒有API,B就必須把A軟體的流程整個走一遍,耗費大量的時間精力,但如果是介面接入部分功能,輕鬆便捷,想用就用,想拔出就拔出。
有一杯密封果汁叫做資料庫;果汁上面插著吸管,叫做API。如果你想喝到杯子裡的果汁,由於它是密封的,你只能依靠吸管插入,否則你就喝不到果汁。
在這個故事中,你屬於某系統,你想獲得果汁,就必須透過吸管,也就是介面,API來實現,而且這個API是資料庫的API。這樣說來,API是一種完善專案功能,提高產品價值的輔助工具。
缺點:
因為API是藉助了第三方軟體,接入方在使用其他軟體包功能的同時相當於為自身插入了一個監控,會有資料洩露給第三方的危險。所以如果是公司的核心功能,是使用企業內部的API。
四、總結:萬物相通
也許大家都是看了美國的科幻大片,把程式設計師想象成駭客一般的高智商人物。但現實是,在大多數情況下他們也只是負責修復BUG,真正的原始碼不過是網上覆制貼上。所以PM們不要被他的表象所迷惑,瞭解他們的工作量,在團隊中只要給出明確的指令管理專案進度,並且大致瞭解程式設計師的工作內容以便於你管理對接就行了。
最後我想說的是,在產品行業,萬物都是相通的,PM不用質疑自己的工作或者感到自卑,如果說程式設計師是科學家,那麼PM就相當於哲學家,只不過是負責改造自然環境和人類社會的區別罷了,其思維邏輯都是大同小異,程式設計師其實就是PM知識的技術流。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026910/viewspace-2938061/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 猜你需要的免費api介面彙總API
- 你可能需要知道的API介面文件神器API
- 你需要了解的 HTTP Status CodeHTTP
- 你需要了解的HTTP協議HTTP協議
- 想了解API介面,這一篇夠了API
- 精讀《Deno 1.0 你需要了解的》
- api介面怎麼對接?你只需要注意這4點API
- 如何做好視窗介面的互動設計?你需要了解這些規範
- 關於等保2.0,你需要了解的
- 關於redis,你需要了解的幾點!Redis
- BC搭建為什麼需要API介面?api介面增加了那些好處?API
- 六款你需要了解的實用軟體
- 學習 webpack 前,你需要了解的那些概念Web
- 更全面的記錄缺陷,你需要了解這些
- 接觸Mac初期,你需要了解的那點事Mac
- 20 道 Spring Boot 面試題你需要了解下Spring Boot面試題
- 面試 Netflix 前,你至少需要了解以下內容面試
- 小白必看!入門嵌入式你需要了解這些!
- 關於 React19,你需要了解的前因後果React
- 學習Flutter,你需要了解的Dart 編碼規範FlutterDart
- 關於GDPR,你需要了解的的5件事
- api介面如何對接?(帶你瞭解api介面的相關知識)API
- 入門Java你需要了解的幾個知識要點!Java
- Java12 Collectors.teeing 你真的需要了解一下Java
- PHP 7.4 新特性 - 預載入 (Preloading),你需要了解這些!PHP
- JDK12 Collectors.teeing 你真的需要了解一下JDK
- 從 Python 2 切換到 Python 3 你所需要了解的Python
- 到底什麼是分散式系統?你需要了解這些分散式
- Python到底有多實用?這些功能你需要了解Python
- SpringBoot2.1.0已釋出,7個重大更新你需要了解Spring Boot
- 你需要了解下Android View的更新requestLayout與重繪invalidateAndroidView
- 這10道springboot常見面試題你需要了解下Spring Boot面試題
- 你需要了解的伺服器託管收費標準伺服器
- [譯] 關於 CSS 變數,你需要了解的一切CSS變數
- 需要介面管理的你瞭解一下?
- 阿里大師帶你詳解API介面安全阿里API
- 關於響應式佈局,你需要了解的知識點
- 物流網首選協議,關於 MQTT 你需要了解這些協議MQQT