原创 iOS內存分配

1 RAM&ROM RAM與ROM就是具體的存儲空間,統稱爲存儲器。 RAM(random access memory):運行內存,CPU可以直接訪問,讀寫速度非常快,但是不能掉電存儲。它又分爲: 動態DRAM,速度慢一點,需

原创 URLProtocolClient

URLProtocolClient主要用於對自定義的NSURLProtocol子類提供URL數據交互接口。 Symbols 1 Protocol Methods // 重定向請求和返回數據 public func urlProto

原创 Ruby塊

Ruby 中大量使用了塊(block),block 使得我們的代碼更加精簡,更加具有維護性。 1 語法 塊的調用方法一般採用以下形式: 對象.方法名(參數列表)|塊變量| 塊代碼 end 或者 對象.方法名(參數列表){|

原创 Ruby方法

Ruby 通常用 def 關鍵字定義方法,在 def 之後是新方法的名稱,緊接着是方法體。 1 基礎 1.1 語法 語法如下: def method_name [( [arg [= default]]...[, * arg [,

原创 Ruby Dir

Dir 是一個表示底層文件系統中目錄的目錄流,它提供了各種方法來列出文件系統的目錄及其內容。 在文件系統中有兩個特殊的虛目錄,.表示當前目錄,..表示父目錄。 1 Public Class Methods 1.1 [] Dir[

原创 Spring Bean

Bean 在 Spring 中,由 Spring IoC 容器管理的,構成程序骨架的這些對象叫做 Bean。 Bean 對象是指經過IoC容器實例化,組裝和管理的對象。此外,Bean 就是應用程序中諸多對象之一。Bean 和 Be

原创 Java 註解

Java 在 jdk 1.5 增加了註解,爲我們的開發帶來了更多的可能性。如 spring 中的註解,極大的簡便了我們的開發,並提高了代碼的可維護性。註解源碼主要在 java.lang.annotation 包中,內部結構如下所示

原创 iOS同步鎖

1 性能對比 2 介紹與使用 2.1 OSSpinLock OSSpinLock 目前已不再安全,主要原因發生在低優先級線程拿到鎖時,高優先級線程進入忙等(busy-wait)狀態,消耗大量 CPU 時間,從而導致低優先級線程拿

原创 Spring MVC 文件下載

文件下載就是將文件服務器中的文件下載到本機上。在 Spring MVC中,實現文件下載大致分爲兩步。 1 前端 <%@ page language="java" contentType="text/html; charset=UT

原创 高併發的解決方案

在大型網站中,我們不得不面臨高併發的問題,下面分別介紹一些解決方案。 1 應用和靜態資源分離 當併發量達到一定程度時,我們可以將靜態資源保存到專門的服務器中,這樣主服務器就可以儘量只處理業務相關的操作。 2 頁面緩存 頁面緩存是

原创 海量數據的解決方案

隨着企業業務的不斷擴展,不得不面臨數據量大的問題,下面針對這個問題進行各種方案的介紹。 1 緩存和頁面靜態化 緩存的使用方式分爲通過程序保存到內存中和使用緩存框架兩種方式。程序直接操作的是 Map,尤其是ConcurrentMap

原创 Mac系統搭建Java開發環境

JDK 官網http://www.oracle.com/technetwork/java/javase/downloads/index.html下載java se sdk即可。 mac上安裝後命名行執行java -version,

原创 深入理解KVC與KVO

1 KVC KVC(Key-value coding)鍵值編碼。簡單來說,是可以通過對象屬性名稱(Key)直接給屬性值(value)賦值。 1.1 使用 @property (class, readonly) BOOL acces

原创 TCP/IP協議

在互聯網中存在各種各樣的協議,我們根據這些協議的使用劃分了OSI 和 TCP/IP 參考模型。 根據 TCP/IP 參考模型就有了我們熟悉的 TCP/IP 協議。 這裏主要介紹OSI參考模型各個分層的主要作用,TCP/IP參

原创 Ruby File

File 表示一個文件的抽象類,通過它我們可以對任何文件進行讀寫操作。 1 Public Class Methods 1.1 absolute_path absolute_path(file_name [, dir_string]