我對這個問題有真正的厭惡。在表面上挖掘似乎是一個有趣的問題,但是它進入公共話語的方式似乎很少是真誠的。有別有用心的動機,涉及尊重,保護情緒以及打破或維持現狀的慾望。
如果某人可以以某種方式證明CSS不是一種編程語言(這是一個灰色的區域,如果那是您的目標,那將不是很難做到),那麼他們就可以繼續在“真實”的編程技能上保持優勢,並合理地使他們(可能)付出的付費比第五級專業專業的人更高。這是維護現狀。
反向也可能是正確的。如果您可以證明CSS是一種編程語言,也許您可以將自己的公司或整個行業轉向同等尊重,並朝著前端開發人員付款。這正在打破現狀。
假設我們所有人都可以就布爾爾的真實或錯誤達成共識,或者是CSS是一種編程語言。現在什麼?如果是真的,在所有網絡工人中是否均標準化?如果是錯誤的,CSS專家應該得到削減薪水嗎?如果是真的,每個人都會以某種方式開始互相尊重嗎?如果是錯誤的,CSS的人們必須在鍋爐房裡吃午餐嗎?我懷疑一切都會改變。因此,我對討論的厭惡。
無論事實是什麼,大多數人都不太可能接受CSS是一種編程語言的可能性。我的意思是,程序執行,不是嗎?沒有人懷疑JavaScript是一種編程語言,因為它執行。您編寫代碼,然後執行該代碼。也許您打開終端窗口並寫下:
>節點myprogram.js
當然,由於雞蛋是雞蛋,該程序將執行。您可以使“你好,世界!”使用Console.Log(“ Hello,World!”);。
CSS無法做到!嗯,好吧,除非您寫正文:: efter {content:“你好,世界!”; }在style.css文件中,打開一個加載CSS文件的網頁。因此,CSS確實以自己的特殊方式執行。這是一種特定領域的語言(DSL),而不是通用語言(GPL)。在該瀏覽器上下文中,CSS被告知運行(通常)與JavaScript的運行方式甚至沒有什麼不同(通常是<script>,通常)。</script>
如果您正在尋找CSS語法與編程概念的比較,我認為您會找到它們。如果不是類型的if語句,那麼在匹配匹配的情況下運行循環的if語句類型是什麼?如果不是直接實現數學的情況,什麼是calc()?如果不是開關,什麼是一組媒體查詢?如果不是存儲狀態的地方,什麼是自定義屬性?什麼是:檢查如果不是布爾值?埃里克(Eric)最近指出,CSS已鍵入,更早的時候,CSS充滿了功能。
無論好壞,對CSS是否是一種編程語言會影響人們的答案。一位大學教授指出,CSS不完整,但是現在在得知這一職位時重新考慮了這一立場。無論那裡有什麼意圖,我認為該行業都會受到計算機科學教授年復一年地告訴計算機科學學生的影響。
Lara Schenck已挖掘出Turing-Complete角度。如果您想解決這個問題,那麼Turing完整性是一個很好的代理。事實證明,CSS基本上已經完成(通過解決規則110的蜂窩自動機角度),而只是本身並不完全。它涉及選擇器的複雜使用和:檢查(驚喜,驚喜)。勞拉(Lara)提出了一個明顯的觀點:
一個人,CSS並不完整。 CSS Plus HTML Plus用戶輸入已完成!
不過,說你不買。您會得到它,甚至承認,好的,CSS本質上是完整的,
但是它並不感覺CSS(或HTML的此事HTML)對您來說是一種編程語言。這太聲明了。太特定了。不管是什麼,老實說,我都不怪你。我希望無論您得出什麼結論,答案都不會影響真正重要的事情1 ,例如付費和尊重。
尊重是有序的,無論我們有什麼回答。我不認為CSS是一種編程語言,但這並不意味著我認為這很瑣碎,或者我的專家同事比我的Python專家同事的價值低。
那不是很好嗎?我認為聲明性標記語言和其他類型的語言之間存在有趣的區別,但它們都是代碼。
哦,停止它,您知道周到的答案使我臉紅了。
當這些討論發生時,我希望看到更細微,尊重和議程的評論。
以上是CSS是編程語言嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!