只有程序员了解的9个真相
对于相关的计算机和代码知识,通常说来程序员比一般人要了解得多,下面我将为大家揭晓一些业内人士不会诉诸于口的真相。
真相#1
“你所不知道的是,很多我们每天都使用的关键软件(如Mac OS X和Facebook),作为一个整体虽然可以正常工作,但是实际上它们的背后充斥了各种的弊端和缺陷。这就像是你兴致勃勃地拆开了一架全新的747飞机,但是却发现燃料线是由衣架固定的,起落架是用胶带粘贴的。” ——Ben Cherry
这其实是非常有意思的一件事:网页和程序外观精美、运行流畅,但是却很有可能只是完美在前端上(用户所能看到的那一部分)。它们的背后其实千疮百孔、满是错误,不过因为某些神奇的原因,居然也可以正常工作。
真相#2
“编写应用程序时,大概25%的时间是花在思考最终用户将会做哪些蠢事上的。”——Brian Humes
不过,25%这个数值会根据开发人员和程序员的作为而上下浮动。每次构建产品时,我们都需要坐下来思考最终用户将会如何把这个程序搞的一团乱。他们会点击什么,他们会写什么,问题的措辞,使用的语言,以及我们的写法所造成的不同理解。如果不注意这一点,那么就会出现很多问题,这是因为虽然我们知道程序是如何工作的,但是最终用户是不懂的。
真相#3
“程序员不是修电脑的。” ——Ritesh Kumar Gupta
程序员是搞算法和设计原则的,不是一个修电脑的。我们知道电脑的内部工作原理,代码是如何协作的,但是,我们并不知道如何修理硬件,不知道为什么每次打开浏览器就崩溃,也不知道为什么电脑发热过度。请不要用一种“这种事对你们而言就是小菜一碟”的眼光看待我们。
真相#4
“编程是一种思想,而不是敲代码。” ——Casey Patton
编程并不是说,只要你安安静静地坐下来,写个上千行代码,发布程序或应用程序的意思,编程其实是一种思想,一种解决问题的方法。而放松则是思考出方法的关键。
真相#5
从零开始计算,而不是从一开始。
我们是从0开始计数的,所以你的“1”是我的“0”,你的“10”是我的“9”。之所以这么做,是因为这可以大规模地改善效率。
真相#6
“一旦进入状态,编程就犹如神助——这种全神贯注的状态能让任何问题都变得小菜一碟。”——Morgan Johansson
知道为什么程序员被称为夜猫子吗?知道为什么我们常常熬夜吗?因为这样能让我们进入一种专注的状态,而不必担心会被其他人打断——因为他们都睡着了,这些烦人的家伙终于闭上了他们唧唧歪歪的嘴。真是一个伟大的编程时间啊!
真相#7
告诉你个秘密,带着问题睡觉,实际上可以解决这个问题。
很多时候,我遇到那种花了几个小时都解决不了的问题,我就会去睡一觉。通过20分钟,一小时,六小时,十二小时的睡眠,醒来之后,问题答案就自然而然地出来了。
真相#8
分配下来的任务却不再需要,就像父母杀掉孩子。
我们写的程序其实都类似于这样的层次结构。Parent管理它下面的Child。
现实中,如果父母不想要孩子,会去做流产。而在程序中,如果不再需要需要某些任务,那么会切断其与服务器的联系,杀掉这个孩子。
最后,真相#9
当我们吹嘘我们有多么了解电脑时,你通常会不削一顾,同样的,你的自吹自擂也让我们觉得好烦。
老实说,这真的很烦,我们真的一点也不关心你对于计算机的了解。如果你说“我对于计算机不是很懂”,或者“我对计算机编程不是很感兴趣”那还是可以理解的,但是自吹自擂,鲁班门前弄大斧就会让我们厌烦了。请规避这种行为吧。
免费领取LAMP兄弟连原创php教程光盘/《细说PHP》精要版,详情咨询官网客服:
http://www.lampbrother.net
PHPCMS二次开发 http://yun.itxdl.cn/online/phpcms/index.php?u=5
微信开发 http://yun.itxdl.cn/online/weixin/index.php?u=5
移动互联网服务器端开发 http://yun.itxdl.cn/online/server/index.php?u=5
Javascript课程 http://yun.itxdl.cn/online/js/index.php?u=5
CTO训练营 http://yun.itxdl.cn/online/cto/index.php?u=5
|

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...
