可信前端之路-代碼保護
想要構造一個web系統中的TPM,首要問題就是需要保證輸入數據安全,打造一個相對可信的前端環境。但是由于web的開放特性,前端作為數據采集的最前線,js代碼始終暴露在外,在這種情況下,js代碼混淆的重要性逐漸彰顯出來。 ...
那些年搞不懂的術語、概念:協變、逆變、不變體
簡述什么是協變性、逆變性、不變性 協變性,如:string->object (子類到父類的轉換) 逆變性,如:object->string (父類到子類的轉換) 不變性,基于上面兩種情況,不可變。具體下面再做分析。 泛型委托的可變性 先使用框架定義的泛型委托Func和Action做例子(不了解的請戳 ...
webp圖片實踐之路
最近,我們在項目中實踐了webp圖片,并且抽離出了工具模塊,整合到了項目的基礎模板中。傳聞IOS10也將要支持webp,那么使用webp帶來的性能提升將更加明顯。估計在不久的將來,webp會成為標配。 本文主要分享一下我們在webp圖片使用上的實踐之路。 我們會從三部分來聊聊webp這個話題。 PS ...
.NET Core中的認證管理解析
.NET Core中的認證管理解析 0x00 問題來源 在新建.NET Core的Web項目時選擇“使用個人用戶賬戶”就可以創建一個帶有用戶和權限管理的項目,已經準備好了用戶注冊、登錄等很多頁面,也可以使用AuthorizeAttribute進行各種權限管理,看起來似乎十分方便。不過生成的代碼都替我 ...
先說IEnumerable,我們每天用的foreach你真的懂它嗎?
我們先思考幾個問題: 接下來,先開始我們的正文。 自己實現迭代器 .net中迭代器是通過IEnumerable和IEnumerator接口來實現的,今天我們也來依葫蘆畫瓢。 首先來看看這兩個接口的定義: 并沒有想象的那么復雜。其中IEnumerable只有一個返回IEnumerator的GetEnu ...
你必須知道的EF知識和經驗
工欲善其事,必先利其器。我們使用EF和在很大程度提高了開發速度,不過隨之帶來的是很多性能低下的寫法和生成不太高效的sql。雖然我們可以使用SQL Server Profiler來監控執行的sql,不過個人覺得實屬麻煩,每次需要打開、過濾、清除、關閉。在這里強烈推薦一個插件MiniProfiler。... ...
數據庫優化案例——————某市中心醫院HIS系統
記得在自己學習數據庫知識的時候特別喜歡看案例,因為優化的手段是容易掌握的,但是整體的優化思想是很難學會的。這也是為什么自己特別喜歡看案例,今天也開始分享自己做的優化案例。 最近一直很忙,博客產出也少的可憐,今天整理了一下自己做過優化或各種方案的客戶已經超過100家了,今天分享的案例算是在這些客戶中比 ...
.Net中的AOP系列之構建一個汽車租賃應用
"返回《.Net中的AOP》系列學習總目錄" 本篇目錄 "開始一個新項目" "沒有AOP的生活" "變更的代價" "使用AOP重構" 本系列的源碼本人已托管于Coding上: "點擊查看" 。 本系列的實驗環境:VS 2013 Update 5(建議最好使用集成了Nuget的VS版本,VS Expr ...
很認真的聊一聊程序員的自我修養
本文正在籌備第二版,以下是第一版主要內容 首先要談的是,今天的話題所聊的程序員包含哪些人? 在中國,寫程序,不僅僅是一種興趣,更多的時候,還是一種普通職業和謀生工具 大公司有厲害的程序員,優秀的架構師,但大量的小公司也有很多普通的程序員。在我這些年的工作經歷中,也越來越深刻的感受到普通程序員的影響和 ...
來看看機智的前端童鞋怎么防盜
很多開發的童鞋都是只身混江湖、夜宿城中村,如果居住的地方安保欠缺,那么出門在外難免擔心屋里的財產安全。 事實上世面上有很多高大上的防盜設備,但對于機智的前端童鞋來說,只要有一臺附帶攝像頭的電腦,就可以簡單地實現一個防盜監控系統~ 純 JS 的“防盜”能力很大程度借助于 H5 canvas 的力量,且 ...
我們是怎么做Code Review的
前幾天看了《Code Review 程序員的寄望與哀傷》,想到我們團隊開展Code Review也有2年了,結果還算比較滿意,有些經驗應該可以和大家一起分享、探討。我們為什么要推行Code Review呢?我們當時面臨著代碼混亂、Bug頻出的狀況。當時我覺得要有所改變,希望能提高產品的代碼質量,改善 ...
[PHP內核探索]PHP中的哈希表
在PHP內核中,其中一個很重要的數據結構就是HashTable。我們常用的數組,在內核中就是用HashTable來實現。那么,PHP的HashTable是怎么實現的呢?最近在看HashTable的數據結構,但是算法書籍里面沒有具體的實現算法,剛好最近也在閱讀PHP的源碼,于是參考PHP的HashTa... ...
基礎知識漫談(6-2) 作為面試官的一點心得
上一篇關于面試的談得太多,招聘只好另起一章。 以當前的現狀來看,優秀的畢業生會先被知名的大企業刷過一輪,那么,相對不知名的企業招聘負責人要如何找到適合自己公司的技術人才呢?詢問過一些畢業生之后,我總結了如下經驗。 一場招聘會上公司林林總總,面試者要了解你公司,只有他晃過去的那幾秒鐘,一張意義鮮明的海 ...
【騰訊bugly干貨分享】HTML 5 視頻直播一站式掃盲
本文來自于騰訊bugly開發者社區,非經作者同意,請勿轉載,原文地址:http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=1277 視頻直播這么火,再不學就 out 了。 為了緊跟潮流,本文將向大家介紹一下視頻直播中的基本流程和主要的技術點,包括 ...
談談如何使用Netty開發實現高性能的RPC服務器
RPC(Remote Procedure Call Protocol)遠程過程調用協議,它是一種通過網絡,從遠程計算機程序上請求服務,而不必了解底層網絡技術的協議。說的再直白一點,就是客戶端在不必知道調用細節的前提之下,調用遠程計算機上運行的某個對象,使用起來就像調用本地的對象一樣。目前典型的RPC ...
前后端分離開發模式下后端質量的保證 —— 單元測試
概述 在今天, 前后端分離已經是首選的一個開發模式。這對于后端團隊來說其實是一個好消息,減輕任務并且更專注。在測試方面,就更加依賴于單元測試對于API以及后端業務邏輯的較驗。當然單元測試并非在前后端分離流行之后才有,它很早就存在,只是鮮有人重視且真的能夠用好它。而在前后端分離開發模式下,特別是兩者交 ...
驗證碼對抗之路及現有驗證機制介紹
yahoo郵箱在九幾年的時候,業務深受各種郵箱機器人的困擾,存在著大量的垃圾郵件,于是他們找到了當時仍在讀大學的路易斯·馮·安(Luis von Ahn),并設計了經典的圖形驗證碼,即通過簡單的扭曲圖形文字進行機器的識別。 通過這個簡單的圖形,他們很快的控制住了垃圾郵件的數量,并將大量的機器人據之門 ...
javascript的api設計原則
前言 本篇博文來自一次公司內部的前端分享,從多個方面討論了在設計接口時遵循的原則,總共包含了七個大塊。系鹵煮自己總結的一些經驗和教訓。本篇博文同時也參考了其他一些文章,相關地址會在后面貼出來。很難做到詳盡充實,如果有好的建議或者不對的地方,還望不吝賜教斧正。 一、接口的流暢性 好的接口是流暢易懂的, ...
淺談我對DDD領域驅動設計的理解
從遇到問題開始 當人們要做一個軟件系統時,一般總是因為遇到了什么問題,然后希望通過一個軟件系統來解決。 比如,我是一家企業,然后我覺得我現在線下銷售自己的產品還不夠,我希望能夠在線上也能銷售自己的產品。所以,自然而然就想到要做一個普通電商系統,用于實現在線銷售自己企業產品的目的。 再比如,我是一家互 ...



