學習、摘錄、目標——學習任務

2016下半年學習任務html

1、寫一套OGC服務 前端

2、學習雲,《Microsoft Azure 入門指南》 python

3、學習DDD——領域驅動  借鑑書籍《實現領域驅動》 預算88mysql

4、學習ASP.NET Core webpack

5、學習Docker 《第一本Docker》程序員

6、AngularJS 跟 React  web

7、買的書看完《深刻理解C#》、《大話設計模式》、《Tcp/Ip詳解卷一》(課外書) ---並未深刻,發現我目前須要看的不是TCP/IP。而是HTTPredis

8、學習敏捷開發sql

9、簡歷寫起,且開始完善技能  -- 完成度80%數據庫

10、有錢後買個mac學習swift 虛擬機裝OS X實在太卡

11、單元測試學習

12、Linux  --- 視頻看到一階段,經常使用命令熟悉一遍,完成度50%

十3、andriod學習 系列3季

歡迎交流~~~~~~~~~~

英語 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

結語:

 看完《ASP.NET Web API 2》 老A的書

 上線大江東監察系統---easyui+ASP.NET Web API+Oracle

 畢業設計(電子圍欄)完成---一個月熟練掌握Openlayers3+Geoserevr+PostGIS一套開源WebGIS開發

 校招進入品茗,2017-2-12開始實習 

 

2017上半年學習任務

1、書籍 《HTTP權威指南》、《Javascript高級程序設計(第3版)》、《ASP.NET MVC5》--老A

2、學習Vue.js

3、學習微信小程序

...

 對數據庫的學習得再深一步,存儲過程、視圖及觸發器,熟悉數據庫優化,熟練掌握,使用場景熟悉。能夠以SQL SERVER爲平臺,多多練習,最好有時間寫個完整的站點

以及Nosql的學習

 

http://blog.csdn.net/yangbutao/article/details/7437290          關於redis、memcache、mongoDB 的對比

應用場景

        redis:數據量較小的高性能操做和運算

        memcache:用於在動態系統中減小數據庫負載,提高性能;作緩存,提升性能(適合讀多寫少,對於數據量比較大,能夠採用sharding)

        MongoDB:主要解決海量數據的訪問效率問題

 《MongoDB 實戰》、《MongoDB管理與開發精要》、《MongoDB權威指南》

 

 

頁面生命週期 --- 請求發起-->IIS等服務接收請求-->建立各類對象-->進入web api(或其餘)的管道處理(包括建立請求上下文context,過濾器,返回對象Response構建等等)-->返回數據-->前端頁面處理。針對不一樣框架,可具體展開。

asp.net 頁面生命週期

單例

clr

gc

 

GC(Garbage Collection)垃圾收集,指的是在.net中垃圾內存收集的機制。


首先要了解的幾點:


在.net中,託管代碼的內存管理是自動的,由GC進行管理。可是對於非託管代碼,.net就沒法自動管理了。
CLR運行時候,內存分爲「託管堆」和「棧」兩個部分。其中,棧是用於存儲值類型的數據,託管堆是用於存儲引用類型的變量。其中託管堆是GC處理的內存部分。
進程中每一個線程都有本身的堆棧。

 

對於託管代碼的GC原理解讀:

垃圾斷定:

回收垃圾首先要知道什麼是垃圾,一個變量若是在其生存期內的某一時刻已經再也不被引用,那麼,這個對象就有可能成爲垃圾。

public static void Main()
              {
                 string sGarbage = "I'm here";
           //下面的代碼沒有再引用s,它已經成爲垃圾對象---固然,這樣的代碼自己也是垃圾;
            //此時若是執行垃圾收集,則sGarbage可能已經魂歸西天
                  Console.WriteLine("Main() is end");
              }

對象代齡:

GC認爲,越晚建立的對象越短命,因此,其引入一個「代齡」的概念來劃分對象生存級別

這個代齡劃分機制簡要來講是一代新人換舊人:

 

CLR初始化後的第一批被建立的對象被列爲0代對象。CLR會爲0代對象設定一個容量限制,當建立的對象大小超過這個設定的容量上限時,GC就會開始工做,工做的範圍是0代對象所處的內存區域,而後開始搜尋垃圾對象,並釋放內存。當GC工做結束後,倖存的對象將被列爲第1代對象而保留在第1代對象的區域內。此後新建立的對象將被列爲新的一批0代對象,直到0代的內存區域再次被填滿,而後會針對0代對象區域進行新一輪的垃圾收集,以後這些0代對象又會列爲第1代對象,併入第1代區域內。第1代區域起初也會被設上一個容量限制值,等到第1代對象大小超過了這個限制以後,GC就會擴大戰場,對第1代區域也作一次垃圾收集,以後,又一次倖存下來的對象將會提高一個代齡,成爲第2代對象。


    可見,有一些對象雖然符合垃圾的全部條件,但它們若是是第1代(甚至是第2代老臣)對象,而且第1代的分配量還小於被設定的限制值時,這些垃圾對象就不會被GC發現,而且能夠繼續存活下去。
View Code

GC1: http://www.cnblogs.com/yjf512/archive/2010/09/14/1825518.html

 

GC2:http://blog.csdn.net/directionofear/article/details/8034133

摘要:大多數時候咱們建立的類不包含非託管資源,所以只須要直接使用,CLR天然會判斷其生命週期結束然後回收相應的託管資源。但若是咱們建立了含有非託管資源的類,CLR提供了finalize機制來幫助自動釋放非託管資源。

 

2017下半年學習任務

1、書籍 《RabbitMq》、《哲學的故事》、《程序員的sql金典》認真讀一遍楊中科老師的傑做,哈哈 

2、繼續學習Vue.js

3、已入門python,asyncio爲基礎,Flask做爲web框架,jinjia2做爲模板引擎,aiomysql編寫一個粗略版orm,組成一套MVC for python。

4、已入門Node.js,koa2做爲web框架,Nunjucks做爲模板引擎,Sequelize做爲orm,輔以各類中間件,組成一套比上面的python更接近與ASP.NET MVC的MVC框架。

5、繼續深刻學習python及Node.js,python web入門,熟悉語言,以爬蟲爲方向進行學習。Node.js學習中插各類前端內容,構建化工具webpack等等。目前已熟悉包管理平臺(工具)npm等。

 

在Node.js誕生後的短短几年裏,出現了無數種Web框架、ORM框架、模版引擎、測試框架、自動化構建工具,數量之多,即便是JavaScript老司機,也難免眼花繚亂。

常見的Web框架包括:Express,Sails.js,koa,Meteor,DerbyJS,Total.js,restify……

ORM框架比Web框架要少一些:Sequelize,ORM2,Bookshelf.js,Objection.js……

模版引擎PK:Jade,EJS,Swig,Nunjucks,doT.js……

測試框架包括:Mocha,Expresso,Unit.js,Karma……

構建工具備:Grunt,Gulp,Webpack……

目前,在npm上已發佈的開源Node.js模塊數量超過了30萬個。

 

 

設計模式是藥,沒病就不要吃藥!——http://www.cnblogs.com/freeflying/p/4752415.html   老飛

相關文章
相關標籤/搜索