最近在群里看到別人分享的一篇知乎文章饰豺,總結的非常好,很多地方感同身受允蜈,Copy過來冤吨,謹以自勉蒿柳!
重構是程序員的主力技能。
工作日志能提升腦容量漩蟆。
先用profiler調查垒探,才有臉談優(yōu)化。
注釋貴精不貴多怠李。杜絕大姨媽般的“例注”圾叼。漫山遍野的碎碎念注釋,實際就是背景噪音捺癞。
普通程序員+google=超級程序員夷蚊。
單元測試總是合算的。
不要先寫框架再寫實現(xiàn)翘簇。最好反過來撬码,從原型中提煉框架。
代碼結構清晰版保,其它問題都不算事兒呜笑。
好的項目作風硬派,一鍵測試彻犁,一鍵發(fā)布叫胁,一鍵部署; 爛的項目生性猥瑣,口口相傳汞幢,不立文字驼鹅,神神秘秘。
編碼不要畏懼變化森篷,要擁抱變化输钩。
常充電。程序員只有一種死法:土死的仲智。
編程之事买乃,隔離是方向,起名是關鍵钓辆,測試是主角剪验,調試是補充,版本控制是后悔藥前联。
一行代碼一個兵功戚。形成建制才能有戰(zhàn)斗力。單位規(guī)模不宜過大似嗤,千人班啸臀,萬人排易成萬人坑。
重構/優(yōu)化/修復Bug烁落,同時只能作一件乘粒。
簡單模塊注意封裝席揽,復雜模塊注意分層。
人腦性能有限谓厘,整潔勝于雜亂。讀不懂的代碼寸谜,嘗試整理下格式; 不好用的接口竟稳,嘗試重新封裝下。
迭代速度決定工作強度熊痴。想多快好省他爸,就從簡化開發(fā)流程,加快迭代速度開始果善。
忘掉優(yōu)化寫代碼诊笤。過早優(yōu)化等同惡意破壞;忘掉代碼作優(yōu)化巾陕。優(yōu)化要基于性能測試讨跟,而不是糾結于字里行間。
最好的工具是紙筆;其次好的是markdown鄙煤。
leader問任務時間晾匠,若答不上來,可能是任務拆分還不夠細梯刚。
寧可多算一周凉馆,不可少估一天。過于“樂觀”容易讓boss受驚嚇亡资。
最有用的語言是English澜共。其次的可能是Python。
百聞不如一見锥腻。畫出結果嗦董,一目了然。調試耗時將大大縮短旷太。
資源展懈、代碼應一道受版本管理。資源匹配錯誤遠比代碼匹配錯誤更難排查供璧。
不要基于想象開發(fā)存崖, 要基于原型開發(fā)。原型的價值是快速驗證想法睡毒,幫大家節(jié)省時間来惧。
序列化首選明文文本 。諸如二進制演顾、混淆供搀、加密隅居、壓縮等等有需要時再加。
編譯器永遠比你懂微觀優(yōu)化葛虐。只能向它不擅長的方向努力胎源。
不要定過大、過遠屿脐、過細的計劃涕蚤。即使定了也沒有用。
至少半數(shù)時間將花在集成上的诵。時間万栅,時間,時間總是不夠西疤。
與主流意見/方法/風格/習慣相悖時烦粒,先檢討自己最可靠。
出現(xiàn)bug主動查代赁,不管是不是你的扰她。這能讓你業(yè)務能力猛漲、個人形象飆升; 如果你的bug被別人揪出來.....呵呵芭碍,那你會很被動~≧﹏≦
不知怎么選技術書時就挑薄的义黎。起碼不會太貴,且你能看完豁跑。
git是最棒的廉涕。簡單,可靠艇拍,免費狐蜕。
僅對“可預測的非理性”拋斷言。
Log要寫時間與分類卸夕。并且要能重定向輸出层释。
注釋是稍差的文檔。更好的是清晰的命名快集。讓代碼講自己的故事贡羔。
造輪子是很好的鍛煉方法。前提是你見過別的輪子个初。
code review最好以小組/結對的形式乖寒。對業(yè)務有一定了解,建議會更有價值(但不絕對)院溺。而且不會成為負擔楣嘁。管理員個人review則很容易成team的瓶頸。
提問前先做調研。問不到點上既被鄙視逐虚,又浪費自己的時間聋溜。