產品必備計算機基礎知識

計算機基礎知識(一)

PM要不要懂技術,這是個老掉牙的問題,入行3個月來,與RD溝通時,愈來愈發現:一樣一件事情,溝通完成以後,覆盤便發現,懂技術的話,和rd溝通更省時、省力,固然,也不會被RD忽悠的原地打轉,沒法推動任何工做。固然,這裏的懂技術並不是要你知道代碼如何寫,而是功能是如何實現的,這點很關鍵。前端

so問題來了,既然要懂技術,那麼,須要懂得哪些技術呢?計算機基礎知識、前端、後端的知識是必不可少的。不過,對於轉行的PM來講,這些也是最頭痛的,神馬HTTP、Javascript、Java,各類概念。今天就用小白的語言翻譯下基礎知識,不喜勿噴。數據庫

計算機基礎知識:HTTP協議、TCP/IP協議、URL等等。json

一、HTTP協議、TCP/IP協議

計算機經過網絡傳遞信息,但客戶端到服務端是如何通訊的呢?和國家與國家、企業與企業間的合做相似,少不了要簽署各類協議,因此就有了TCP/IP協議(傳輸控制協議/因特網互聯協議)。顧名思義,TCP/IP 協議定義了兩方面的標準:電子設備如何連入因特網,數據如何在它們之間傳輸。windows

緊接着,在TCP協議基礎之上HTTP協議創建起來了(HTTP議即超文本傳輸協議,初衷是爲了發佈和接收HTML頁面的)。當瀏覽器須要從服務器獲取網頁數據的時候,發起HTTP請求。HTTP經過TCP創建起與服務器的鏈接通道,而IP則是服務器的地址,HTTP請求經過通道到達服務器地址(IP地址),獲取服務器頁面數據,服務器按照必定格式予以響應。後端

說到此,就不得不提URL了,也就是咱們平時說的網址(互聯網上的每一個文件都有一個惟一的URL,它包含的信息指出文件的位置以及瀏覽器應該怎麼處理它)。數組

二、URL

URL具體格式以下:scheme://host:port/path/document?query#fragment,即http協議/域名:端口/虛擬目錄,即路徑/文件名(?#/)參數部分#錨瀏覽器

舉個例子:http://www.woshipm.com/category/pmd,人人都是產品經理的網址。緩存

(1)scheme:通訊協議,負責告知瀏覽器採用哪一種協議打開文件,經常使用的http、ftp等。例子中的http:屬於該部分;安全

(2)host:域名,也就是 IP 地址。例子中的www.woshipm.com爲該部分;服務器

(3)port:端口號,可省略,省略時使用方案的默認端口,如http的默認端口爲80。例子中的端口號省略;

(4)path:虛擬目錄,即路徑。由零或多個」/」符號隔開的字符串,通常用來表示主機上的一個目錄或文件地址。例子中的category爲路徑;

(5)document:文件名部分,從域名後的最後一個「/」開始到「?」爲止,是文件名部分,若是沒有「?」,則是從域名後的最後一個「/」開始到「#」爲止,是文件部分,若是沒有「?」和「#」,那麼從域名後的最後一個「/」開始到結束,都是文件名部分。例子中最後的pmd屬於該部分;

(6)query:查詢,可省略,用於給動態網頁傳遞參數。可有多個參數,用」&」符號隔開,每一個參數的名和值用」=」符號隔開。例子中無此項。

(7)fragment:錨點。簡單說就是信息片段,用於指定網絡資源中的片段。例如一個網頁中有多個名詞解釋,可以使用fragment直接定位到某一名詞解釋。例子中無此項。

計算機基礎知識還有不少,後續不斷更新,雖然這些基礎知識較枯燥,理解了纔是關鍵。但願對你們有幫助。PS:想要學習系統的知識,題主參考的是計算機科學導論,不過,有點枯燥。

計算機基礎知識(第二彈)

一、計算機硬件

CPU至關於人的大腦,總指揮人體的各項功能;內存、硬盤至關於大腦中的記憶板塊,記錄、存儲信息的,主板至關於人的神經系統,將人體各部分連接起來;顯卡至關於人的眼睛,心臟則是計算機的電源,開通電源才能發起一切活動。

二、計算機軟件

(1)系統軟件

操做系統是最多見的系統軟件。操做系統也是一組程序,基於不一樣的計算機硬件來開發,用以指揮(驅動)計算機硬件並管理計算機全部活動。說白了,計算機只有硬件而沒有操做系統,不過就是一堆廢鐵而已。操做系統可讓主板上全部的組件開始運轉,讓CPU開始邏輯判斷與數值運算,讓內存加載、讀取數據,讓顯卡顯示圖形影像,讓硬盤記錄、存儲數據,讓網卡傳輸數據。客戶端經常使用的多爲windows,服務器端大多基於Linux操做系統來開發。

固然,驅動硬件是操做系統的主要功能之一,操做系統一般也會提供一整組的開發接口,這樣RD只須要調用這些接口就能夠開發軟件了(這也就是咱們接下來要說的應用軟件),而不須要如以前同樣,須要參考計算機硬件的功能函數。

(2)應用軟件

應用軟件也就是咱們平時使用的各類軟件,它也和操做系統有關,是參考操做系統的接口開發而來的。好比,上網用的瀏覽器,辦公用的office,設計圖用的PS等等,不一而足。

有些人要問了,計算機硬件更新那麼快,操做系統是基於以前的硬件開發的,更換硬件的話,操做系統能認識嗎?

so,聰明的操做系統通常這樣搞。操做系統提供一個接口給硬件開發商,硬件開發商依據這個接口設計能夠驅動該硬件的驅動程序,這樣的話,只要安裝驅動程序,操做系統天然能夠驅動硬件了。

三、計算機數據類型

計算機只能識別0和1,採起二進制的運算模式,但咱們平時使用更多數字運算的是十進制,語言又有中文、英文、法文等等,計算機怎麼記錄、顯示這些數據呢?

對於數字類,採起二進制、十進制轉換的形式(二進制逢二進1、十進制逢十進一),輸入的任何數據轉換成二進制就搞定了。

對於文字類型的數據,計算機有一套字碼對照系統(即文字編碼系統),全部的文字都轉換成0和1,計算機再處理,和諜戰片中的電報相似,每一次電報有相應的密碼本。平時咱們常見的亂碼的事情就是由於計算機沒有找到相對應的編碼系統將文字翻譯過來。經常使用的有ASII,UTF-8等。

除了數字、文字外,計算機數據類型還有音頻、圖像、視頻。對於後面3中,計算機也會經過響應的方式轉成0和1,有興趣的朋友們能夠看看《計算機科學導論》等相關數據。

 

計算機基礎知識(第三彈)

首先,要搞清楚一點,學習前端語言的目的是什麼?

學習前端的這些知識,瞭解每一種語言的規則,從而瞭解產品前端的頁面是如何實現的、交互的方式有哪些,掌握前端功能、交互實現的方式方法。PS:雖然不須要你徹底會寫這些代碼,但至少要知道頁面效果、交互是經過什麼方式來實現的。

so,學習前端技術,HTML、CSS、Javascript、json這幾類必不可少。幾者的關係以下:HTML負責網頁的內容;CSS負責內容的呈現樣式,即修飾內容;Javascript主要負責頁面的動態效果,如數據的驗證、異常提醒、改變頁面內容等幾個部分,也就是讓頁面動起來;JSON則主要負責其中數據的交換。

一、HTML

HTML(Hyper Text Markup Language),一種描述網頁的語言,咱們平時看到的網頁大多都是經過HTML實現的。HTML使用一系列的標籤來定義頁面如何處理文字、圖片、連接、視頻等等內容,而瀏覽器經過讀取這些標籤,而後呈現出來。HTML標籤固定的格式爲<標籤> 內容</標籤>。eg:

簡單瞭解下各標籤的含義,也就能瞭解HTML到底能作哪些事情,實現哪些效果。常見的標籤有:

  • 標題,用 <h1> – <h6> 等標籤來定義;
  • 段落,用 <p> 標籤來定義;
  • 表格,用<table> 定義;
  • 連接,用 <a> 標籤來定義的;
  • 圖像,用 <img> 標籤來定義的;
  • 樣式,用<style>標籤來定義;
  • ……

二、CSS

有了內容,如何呈現就須要CSS了。CSS定義HTML的樣式,樣式包括:背景(背景顏色、背景圖片等)、文本(顏色、字符間距,對齊文本,裝飾文本,對文本進行縮進)、文字(大小、加粗、風格(如斜體)和變形)、連接、列表、表格(表格顏色、高度寬度、內部邊框等等)、輪廓。簡單說,word中的開始菜單欄的全部功能基本都屬於樣式。

CSS 語言的規則由兩個主要的部分構成:選擇器,以及一條或多條聲明。選擇器一般是您須要改變樣式的 HTML 元素,即全部代碼。聲明則規定屬性和值,每條聲明由一個屬性和一個值組成。

三、Javascript,屬於網絡的腳本語言

頁面中的動態效果就要依靠JavaScript了, 它經常被網頁用來改變頁面內容、驗證表單、檢測瀏覽器、建立cookies、異常提醒等等。 在HTML 頁面中插入 JavaScript,通常都在 <script> 與</script> 標籤之間。

JavaScript 中的全部事物都是對象,包括字符串、數字、數組、日期等等。對象是擁有屬性和方法的數據。屬性是值,方法是可執行的動做。(這塊比較枯燥,沒想更容易理解的方法)

四、Json

Json主要處理數據,是一種輕量級的文本數據交換格式。它使用 JavaScript 語法來描述數據對象,因此咯,它和JS語法相同,熟悉了JS,JSON天然很容易就明白了。Json語法規則以下:數據在名稱/值對中,並由逗號分隔。花括號保存對象,方括號保存數組。

舉個栗子:

以上這四種語言的內容不止這些,這裏只是拋磚引玉,簡單和你們聊聊每種語言最基本的規則而已。熟悉每種語言的規則,隨便打開一個頁面,大體能夠知道哪部分代碼是幹什麼用的,實現什麼效果,作到這一點就OK了。固然,想要更深刻了解每種語言,推薦你們W3school,很適合初學者哦~~~

 

計算機基礎知識(第四彈)

前面幾期簡單說了說計算機基礎知識、前端知識等等,關於後端的知識,這些乾貨是少不了的,服務器、數據庫、緩存、cookie、session等等,今天就聊聊這幾點。

一、服務器

Server,計算機的一種,是爲客戶機(client)提供服務的高性能的計算機。和普通電腦不一樣的是,服務器面向的整個網絡的用戶,24h不間斷工做,在多用戶多任務的環境下,因此須要極高的穩定性。此外,在處理能力、安全性、可靠性、可用性、可擴展性、可管理性方面也十分強悍。

此外,服務器有不少類型,按照應用功能來劃分,服務器通常分爲文件服務器、打印服務器、域控制服務器、數據庫服務器、郵件服務器、WEB服務器等等。服務器價格通常比較昂貴,因此通常大型的公司都會本身搭建服務器,普通的企業通常租用服務器。

二、數據庫

Database,簡單說就是存放、管理數據的倉庫。通常分爲關係型數據庫、非關係型數據庫兩種,前者最爲常見。

關係型數據庫,處理表與表間的結構,是由二維表(表的形式相似於excel)及其之間的聯繫組成的一個數據組織。經常使用的關係型數據庫有MySql,Oracle等。MySql最基本的操做:增刪改查,你們能夠自學,多多練習,灰常簡單。

非關係型數據庫:以對象爲單位數據結構。這一類型,平時用的較少,因此你們能夠專攻關係型的數據庫哦~~

三、緩存

計算機處理數據時,考慮到數據存儲空間的壓力、查找速度、數據使用率等等,因此就有了緩存。

緩存(數據交換的緩衝區,即Cache),簡單說就是存儲數據的臨時地方,存儲一些高頻數據的副本。能夠這樣理解,當某一硬件要讀取數據時,首先從緩存中查找須要的數據,找到了就直接執行,找不到的話再從內存中找。因爲CPU的緩存的運行速度比內存快得多,因此緩存的目的就是提升響應速度,減小服務器壓力。

緩存無處不在, 有瀏覽器端的緩存、服務器端的緩存、數據庫的緩存等等。好比咱們Andirod手機清理的緩存,指的就是這個。

四、cookie、session

你們可還記得以前講過的http協議,也就是超文本傳輸協議,定義瀏覽器如何打開文件的規則。但http協議是一個無狀態的協議,先後請求沒有任何關係。簡單說,服務器沒法判斷先後兩次請求來自於同一臺客戶端。
so,就有了Cookie和Session。二者都爲了用來保存狀態信息,是爲了解決HTTP無狀態的問題而生的。只不過,Cookie將狀態保存在客戶端,Session將狀態保存在服務器端。

關於計算機的基礎知識,這四期只是給你們說了說皮毛,每一知識點只爲你們梳理了大體的輪廓,裏面還有不少值得深挖的內容。不過,對於初入門的PM,先整體搭建起這個知識體系,而後有針對性的去補充每一個知識點,這樣才能更高效、更有針對性的學習。

相關文章
相關標籤/搜索