瀏覽分類:

未分類

介面(Interface)

先了解一下什麼是抽象、什麼是具象。

抽象

抽離具體的形象, 只留下可辨別的特徵,抽象畫抽象畫,我跟你說抽象畫,你只會知道他是一幅畫,但抽象畫的內容…恩…可能不好離解。

具象

我跟你說我們帥,到底有多帥,有點抽象,可以具體一點嗎,濃眉大眼(假設是目前大多數人定義的帥),那就叫做具象,你可以把上聯想出來他的實體的樣子。

舉這個例子不好認識我的人,會自動將我這個詞,聯想到我Victor 本來,正經一點,可以這麼說,我剛剛看到一個女生很漂亮!一定無法想像,只有說一個女生,你只能聯想到他有五官、手腳… 沒有法想像他具體的樣子。

介面很抽象,你可以將眼睛、鼻子、嘴巴、眉毛抽離出來,「定義」這些東西,我只跟你說眉毛,但到底是什麼眉毛,不知道只是一個定義,這就是介面的存在,再利用Class 來實作他的眉毛要細、粗、濃眉…

PHP 的介面使用方式

待補

封裝、繼承、多型的三大特性

我想開一間咖啡廳,所以我就用他來舉個例子,但還是必須要先了解 OOP 物件導向。

請先知道我的咖啡廳有三種不同的角色 咖啡師、服務生、會計。

繼承

一開始可以先當作父類別可以擁有子類別的功能,我覺得比較好記,可以達到重用程式碼的好處,但事實上我認為是一種行為的擴充。

假設我訂定一個一般員工必要的條件,這個已有的技能去做擴充,例如人手若不足必須要有點餐的方法,可以使用繼成,因此覺得可以把它想像成大範圍的統稱會比較適合。

封裝

我是這間咖啡廳的老闆,我今天視察咖啡廳,但每個員工都跟我說:如何煮咖啡、如何選豆子、咖啡豆口味是什麼風味、怎麼烘焙咖啡豆、操作Pos 機、如何有效率打掃餐桌、如何應付客人、如何結帳、帳目報表、如何報稅… 除此之外還有很多。

突然來這麼多訊息,對我老闆而言,並不是必須,跟咖啡斯說,我要一杯美式偏酸一點的風味,過程中怎麼做的我不用了解,說出我想要的關鍵字,即可拿到一杯咖啡豆品種風味偏酸的咖啡。

這就是封裝,假設你覆轍咖啡師的類別開發,對其他人來說,使用你這個類別的角度,不需要的就不要設定public 權限,讓操作的人眼花撩亂。

多型

只要是同類,但做不同的事情,我是老闆有咖啡師、服務生、會計師… 他們都是我的員工,員工都需要做事定義一個做事的方法,其他員工工作的細節,在各至繼承這個定義去實作。

  • 咖啡師的工作:煮咖啡
  • 服務生的工作:服務客人
  • 會計師的工作:算錢

PHP 面試上機考試好緊張

某些公司在面試時會有機上測驗,所以Victor 就上網搜尋了一下,發現有一些不錯的測試管道跟大家分享,因為我不太確定會是什麼題目,但好像回到學生時期,測驗一下自己的觀念與技術,紀錄一下自己的過程。

基礎

PHP Quiz:

http://www.w3schools.com/php/php_quiz.asp

中級

收集到的一些題目

安裝supervisor的紀錄

程式會寫如何丟隊列,並且了解如何抓取之料回來,最後一步安裝supervisor監聽 隊列有沒有東西需要處理。

跟著這個網頁的安裝步驟安裝

https://tn710617.github.io/zh-tw/supervisor/#Amazon-Linux-2-AMI-1

因為發生

Starting supervisord: Traceback (most recent call last):
  File "/usr/bin/supervisord", line 2, in <module>
    from supervisor.supervisord import main
ImportError: No module named supervisor.supervisord

https://blog.csdn.net/weixin_30319153/article/details/97825834

https://blog.csdn.net/weixin_30319153/article/details/97825834

https://blog.epoch.tw/2020/02/14/%E5%9C%A8-Laravel-6-0-%E4%BD%BF%E7%94%A8-Task-Scheduling-%E4%BB%BB%E5%8B%99%E6%8E%92%E7%A8%8B

最後因為一直看不到類似這樣的訊息

laravel-worker:laravel-worker_00   RUNNING   pid 3937, uptime 0:05:37
laravel-worker:laravel-worker_01   RUNNING   pid 3938, uptime 0:05:37
laravel-worker:laravel-worker_02   RUNNING   pid 3939, uptime 0:05:37
laravel-worker:laravel-worker_03   RUNNING   pid 3940, uptime 0:05:37
laravel-worker:laravel-worker_04   RUNNING   pid 3941, uptime 0:05:37
laravel-worker:laravel-worker_05   RUNNING   pid 3942, uptime 0:05:37
laravel-worker:laravel-worker_06   RUNNING   pid 3943, uptime 0:05:37
laravel-worker:laravel-worker_07   RUNNING   pid 3944, uptime 0:05:37

https://www.huweihuang.com/article/linux/supervisor-usage/

其他常見錯誤

supervisor常見報錯 https://blog.csdn.net/kkevinyang/article/details/80539940

其他

https://www.cnblogs.com/shangwei/p/13474525.html