第一篇就先來介紹面試時最常遇到的幾個問題吧
OOP 有兩大概念與三大特性,分別為(類別、物件)以及(封裝、繼承、多型)。
類別 Class 代表事物的特點,定義抽象化;物件 Object 則是類別的實例。
封裝 Encapsulation 代表將內部資訊隱藏起來,讓別人只能透過介面去與他互動;繼承 Inheritance 普遍是為了讓類別內容更加具體而獨立;多型 Polymorphism 則是用同樣名稱的方法去定義不同參數下的不同執行內容。
SOLID 是物件導向下的一種設計原則,每一個英文字母都代表了一項原則。
S(單一功能原則): 每個類別只有一種功能。
O(開放封閉原則): 實體應該是對於擴充開放的,但是對於修改封閉的。
L(里氏替換原則): 子類別應該能夠替換其父類別,而不影響程式正確性,以確保繼承關係的一致性。
I(介面隔離原則): 應該根據需要拆分介面,以避免不必要的依賴。
D(依賴反轉原則): 應該共同依賴於抽象,而非依賴於特定實例,以減少程式間的耦合。
最基礎的測試,應該就是手動測試了吧!自己輸入可能的參數並且查看結果,但你想想,如果某天時過境遷、版本替換了呢? 因此還有以下幾種主要方式:
這三者都是用於提高Web應用程序性能的技術。
相似處:
都可以用來減少伺服器負載,提高應用程序的效率。
都可以用來提高用戶體驗和安全性。
都可以在客戶端或伺服器端存儲數據。
不同處:
Cookie 通常存儲在客戶端的瀏覽器,可以根據需要設置長時間有效期。
Session 通常存儲在 DB 裡面,可以根據需要設置長時間有效期,通常是儲存較為機密的資訊。
Cache 通常存儲在伺服器的特定地方,讓 request 進來時可以先去該處確認是否有需要的 response,而非每次都去 DB 取資料與處理資料。
第一次的主題就先介紹到這邊,感謝您的收看!