1. 程式人生 > >產品經理必懂的技術那點事兒(上)

產品經理必懂的技術那點事兒(上)

一:產品思維與技術思維:

1:工程師是路徑推理的技術思維,產品經理是使用者場景的產品思維,技術思維表現為——實現方式、技術架構、技術價值、開發成本;而產品思維表現在——使用者價值、使用場景、商業價值、業務閉環。

2:產品職能:屬於資訊上游負責發現並定義需求,將使用者需求通過具體的茶農功能設計呈現為使用者可用的產品,包括需求分析、功能定義、原型設計等

3:技術職能:屬於資訊下游,扶著從技術實現角度評估產品設計,設計技術方案,最終將產品設計實施落地為使用者可用的產品。

4:研發分為前端開發和服務端開發,前端開發有分為 Android 開發、IOS 開發、Web 前端開發等服務端開發細分為應用介面開發、資料庫開發等架構師負責系統整體架構和規劃,設計整體實施方案。

       測試是保證產品高質量上線釋出的保障職能,測試可分為黑盒測試和白盒測試黑盒測試是指一般的功能性測試,測試人員會對從使用者視角對產品進行全方位多角度的使用,模擬出可能出現的使用者場景對產品進行全流程測試白盒測試是比黑盒測試更進一步的測試,白盒測試對測試人員的要求更高測試用例是指測試用的一套嚴格的測試標準。

       運維是對系統進行持續穩定運轉的保障只能,需要持續監控和優化系統的執行狀態。

5:技術邊界:是指現有技術水平之下,可以被實施運用的有限範圍。 產品經理在提需求的時候首先需要詢問技術實施角度的可行性,否則一個看似很炫酷的設計方案有可能只是空中花園

6:工程思維:工程思維往往是理性的邏輯思維,從實現的難易程度和系統的角度去定義產品和設計產品(弊端:脫離實際,很容易與需求場景脫節)

7:功能思維:指從軟體產品本身角度出發的思維模式,是從系統功能的角度來評判產品的完整性和實用性。

8:產品思維:指一種結合工程思維、功能思維及商業思維的綜合思維模式,包括對商業目標的理解、對目標使用者及使用者使用場景的理解。

戰略層——範圍層——結構層——框架層——表現層戰略層決定了業務和產品需要實現什麼目標,為誰和什麼場景服務

      範圍層需要定義清楚在既有戰略的基礎上做哪些東西來實現戰略目標結構層需要基於範圍層的內容完成基礎資訊架構和互動設計框架層完成我們能看得到的介面設計表現層則是視覺表現設計,讓產品看起來更友好。產品經理要為最終的產品質量和產品使用者體驗負責,在設計前期需要考慮產品從設計到開發到最終投入使用需要經歷哪些環節,需要與哪些人合作。產品是否定位清晰直接決定了產品是以什麼樣的形態呈現給使用者使用。

二:網際網路技術與產品:

1:網際網路發展歷程:基礎技術發展期(20 世紀八九十年代)—PC 網際網路時代(20 世紀 90 年代)—移動網際網路時代

2:網際網路的基礎技術大部分都是開源的,所謂開源,即開放原始碼,開源技術可以被任何人任何組織以無償的方式直接使用。GiHub 是完全由技術人員參與並維護的線上開源社群

3:伺服器作業系統 Linux

Android 手機的底層系統使用的就是 Linux。谷歌、百度、淘寶同過 Linux 為我們提供服務網上支付的基礎保障協議:OpenSSL OpenSSL 全稱 Open Secure Sockets Layer,是一個開源且強大的安全套接字層密碼庫。他是基於密碼學開發的軟體開發包,具備完整的加密演算法和資料加密功能,是網路通訊安全及資料完整性的一套安全協議,通過 OpenSSL 可以為資料在網際網路的傳播提供安全保障,使資料以加密安全的方式進行傳輸,防止核心保密資料被竊取或者監聽。

資料庫標杆:MySQL

MySQL 是一個開源資料庫管理系統,屬於關係型資料庫,特點是開源、輕量化且支援大規模訪問,基本所有的網際網路公司都在使用,金融交易平臺用它做資料庫引擎,電商網站會使用它來儲存商品資訊

伺服器的溫床:Apache

Apache 為我們每天訪問的網站提供著最基礎的容器支援,是一款伺服器執行軟體系統,我們日常使用的 Web 網站的容器,各種網站都在執行 Apache 提供的環境中,每當我們在瀏覽器上輸入網址訪問某一個網站時,服務端就可能是使用了 Apache 的伺服器,他為我們每天使用的網際網路服務提供了基礎執行環境。Apache HTTP Sever 是Apache 軟體基金會維護的一個開放原始碼網頁伺服器專案。他可以執行在大多數計算機作業系統中,以跨平臺、快速、簡單的特性被廣泛使用,也是主流的 Web 服務端軟體之一。

工程師的造物利器:Eclipse

Eclipse 是一個開放原始碼的基於 java 技術的可擴充套件開發平臺。簡單說,其是提供給軟體開發人員進行軟體開發的工具。Eclipse 不僅僅是 java 開發工具、還可以進行 C、C++和 PHP 語言的軟體開發

4:網際網路產品技術架構整體分為兩部分:前端、服務端。前端和服務端通過網路進行資料傳輸

5:產品視角:從使用者角度使用產品的場景出發,產品經理從產品視角設計產品功能,涵蓋常規使用場景和異常使用場景。產品視角考慮問題並不會細化深入到沒一個實現環節,而技術視角則會微觀到每一個實現環節。

技術視角:是從產品功能的實現步驟角度出發,實現某一個產品功能需要設計的實現步驟分別是什麼,每一步又可以拆分為子步驟,粒度相對於產品視角更細,邏輯性更強。

6:移動網際網路技術的特點:移動性、隨時性、永遠線上

三:產品經理學程式設計:

1:一個東西可以用任何語言來寫,選擇用哪種語言來寫取決於系統架構師

Linux 系統基本用 C 語言寫成,Android 選擇 java 語言,IOS 用 Objective-C 語言同一個系統平臺也可以通過兩種或兩種以上的混合程式語言來實現,如蘋果推出 Swift 語言後,開發 ios 應用時既可以用 Objective-C 也可以用 Swift 來實現

2:C 語言,可以使用在個人計算機、大型額超大型計算機、路由器及可程式設計的整合電路里Java,因強大的跨平臺、通用性和安全性而被廣泛使用PHP,通常使用在 Web 領域,是一種開源指令碼語言,指令碼語言通常以文字形式被儲存,只有在呼叫時進行解析和編譯,相對於 C、Java 來說,其更輕量化、更靈活,並且虛席,成本也更低。與其類似的還有 Javascript,也是一種指令碼開發語言,主要執行在瀏覽器中。

3:資料型別:是用來在計算機世界中區分和表達資料載體的規則,資料型別是一種對資料的約束,每一種資料都有一種且唯一一種資料型別,資料型別代表程式語言中的最基本規則,一個基本的資料單元:資料型別+資料名稱(變數名)+資料值整型:是一種資料型別,所有不帶小數點的數字都屬於整型,在程式語言中,用關鍵詞:

int 表示整型

字元型:是一種文字型別,字元型的內容沒有規則限制,可以是任意內容。在不同的程式語言中,表示字元型的關鍵詞略有不同。Java 中用 String、C 語言中用 char、Objective-C 中用 NSString

浮點型:是一種數字型別,與整型相比,浮點型的資料都是帶小數點的資料。在程式語言中一般使用 float 或者 double

布林型:是一種特殊的資料型別,布林型的資料只有兩種值,即 true 和 falseTrue 對應的序號是 1,false 對應的序號是 0.

資料型別間的轉換:資料的資料型別都是字元型,不能用於計算,需要進行轉換成整型,才能計算資料拼接:一般是字元型資料建的拼接,拼接後的字元型資料統稱為字串,字串的內容可以表達任何內容,字串簡單來說就是一串文字。“目前有 XX 人蔘與了活動”以 java 為例,先將“目前有”這個字串用變數“a”表示,將”人蔘與了本次活動”用變數“c”表示,中間的數字我們在程式上獲取時是整型資料,先將整型資料轉換成字元型資料,然後在用變數“b”表示,通過顯示“String=a+b+c”來表示,從而實現這個功能程式設計中的邏輯結構:

條件判斷“if else”(如果條件滿足 b 則執行 A1,如果不滿足執行 A2)

條件選擇“switch case”(條件滿足某個模組則執行某個模組) 條件值必須是整型資料“case”對應值的資料型別也必須是整型

迴圈操作“whiledo while”

資料結構:是計算機儲存和組織資料的一種方式,是按一定規則進行組織的資料的集合

陣列:具有相同資料型別的資料元素組成的集合棧:又可以叫堆疊,是一種滿足一定規則的資料結構,這種規則通常叫做“後進先出”。

例如:我們設計一個層級頁面,從頁面 A 進入 B 再進入 C,此時如果需要返回 A 的話就需要執行返回操作,先返回到 B 再返回到 A,這就是一種典型的棧的設計思路

佇列:和棧一樣也是一種操作受一定規則限制的資料結構。佇列在結構上分為隊頭和隊尾,只能在隊頭執行出隊操作,在隊尾執行入隊操作樹:常見的資料結構,樹是按照一定規則進行資料組織的結構,樹狀結構上的元素往往叫做一個節點。每個樹狀結構都有一個“根節點”,也就是樹根,從樹根出發可以延伸出“枝幹節點”或者叫“兄弟節點”,樹狀結構末端的節點我們稱為“葉子節點”

程式:按照一定規則和順序的任務執行過程,是一套指令集合,在軟體開發中,程式由資料結構和演算法組成函式:又叫方法,是程式的最小執行單元,函式是完成一項鯨魚體任務的獨立模組,函式的組成包括輸入、輸出、及函式內部的處理流程。