日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.Net Web微信H5鱼虾蟹网站开发搭建技术栈

發布時間:2024/3/13 asp.net 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .Net Web微信H5鱼虾蟹网站开发搭建技术栈 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文整理了當前企業web微信H5魚蝦蟹網站開發搭建(h5.fanshubbs.com)的管理系統架設Q1687054422,商城等系統的常用開發技術棧。

C#常見運算符

  • 一元運算符(+、-、!、~、++、--)
  • 算術運算符(*、/、%、+ 、 – )
  • 移位運算符(<< 、>> )
  • 關系和類型測試運算符(==、!=、<、>、<=、>=、is 和 as)
  • 邏輯運算符(&、^ 和 | )
  • 條件邏輯運算符(&& 和 || )
  • 空合并運算符(??)條件運算符(它也稱為三元運算符,?: )
  • 賦值運算符(=、+=、-=、!=、/=、&=、|=)

C#常見語句塊

  • Try(用于捕捉在塊的執行期間發生的各種異常)
  • Checked 語句和 Unchecked(用于控制整型算術運算和轉換的溢出檢查上下文)
  • Lock(獲取某個給定對象的互斥鎖,執行一個語句,然后釋放該鎖)
  • Using(獲取一個或多個資源,執行一個語句,然后釋放該資源)

C#常見類修飾符

  • abstract抽象類
  • sealed密封類
  • static靜態類
  • partial分部修飾
  • 訪問修飾符(public、protected、internal 和 private )

C#常用預處理指令

  • #region:指定一個可展開或折疊的代碼塊
  • #endregion:它標識著 #region 塊的結束
  • #define: 它用于定義一系列成為符號的字符
  • #undef:它用于取消定義符號
  • #if、#else、#elif、#endif:用于創建復合條件指令

委托

  • Delegate、Lambda、Action、Func、Predicate、事件EventArgs

泛型

  • 泛型類、泛型方法、泛型約束、泛型接口、逆變與協變

Linq

  • Linq to sql / Linq to DataSet / Linq to Object / Linq to Xml
  • 迭代器yield與懶加載Lazy

反射

  • 反射拼接SQL語句、反射轉換Json/Datatable...、序列化反序列化(ISerializable)、反射動態調用dll、反射動態配置擴展

常用類

  • IO類、Json.NET、Http輔助類(HttpClient、Restsharp、WebClient、WebRequest)、爬蟲類、文件壓縮類、條形碼 、金額、時間、Assembly等類的實現

常用接口掌握

  • IEnumerable
  • IEnumerator
    • 實現Foreach
  • .
  • ICollection
  • IList
    • 集合
  • .
  • IComparable
  • IComparer
    • 實現比較方法
  • .
  • IDictionary
    • 鍵值對
  • .
  • IDisposable
    • 釋放非托管資源

數據層

  • 原生的ADO.NET
    • Connections. 用于連接和管理針對數據庫的事務。
    • Commands. 用于發出針對數據庫的SQL指令。
    • DataReaders. 用于從SQL Server數據源讀取只進流的數據記錄。
    • DataSets. 用于針對結構型數據,XML數據和關系型數據的存儲,遠程處理和編程。
    • DataAdapters. 用于推送數據到DataSet,并針對數據庫協調數據。
    • ...
  • ORM框架
    • EF
    • Dapper:最常見的輕量級ORM框架(開源)
    • Nhibernate:最常見的重量級ORM框架
    • ...

異步和多線程

  • Thread/ThreadPool/Task/Await/Async/Parallel...
    • 多線程
      • 多線程中的同步、并發、異常等處理
      • ...
    • TPL異步
      • 異步編程模型(APM)
      • 基于事件的異步模式(EAP)
      • 基于任務的異步模式(TAP)
      • ...

數據結構

  • 算法
  • 線性表
  • 二叉樹
  • 棧與隊列
  • ...

ASP.NET Mvc框架

  • Routing路由
  • Binding模型綁定
    • new ChildActionValueProviderFactory(),
    • new FormValueProviderFactory(),
    • new JsonValueProviderFactory(),
    • new RouteDataValueProviderFactory(),
    • new QueryStringValueProviderFactory(),
    • new HttpFileCollectionValueProviderFactory()
    • ...
  • AOP面向切面(常用特性(Attribute)及自定義特性)
    • 元數據
    • 驗證基類System.ComponentModel.DataAnnotations.ValidationAttribute
      • System.ComponentModel.DataAnnotations.CompareAttribute
      • System.ComponentModel.DataAnnotations.CustomValidationAttribute
      • System.ComponentModel.DataAnnotations.DataTypeAttribute
      • System.ComponentModel.DataAnnotations.MaxLengthAttribute
      • System.ComponentModel.DataAnnotations.MinLengthAttribute
      • System.ComponentModel.DataAnnotations.RangeAttribute
      • System.ComponentModel.DataAnnotations.RegularExpressionAttribute
      • System.ComponentModel.DataAnnotations.RequiredAttribute
      • System.ComponentModel.DataAnnotations.StringLengthAttribute
      • System.Web.Security.MembershipPasswordAttribute
    • .
    • Filter
      • IAuthenticationFilter(驗證過濾器 MVC5)驗證是否合理請求,是否合理用戶
      • IAuthorizationFilter(授權過濾器)
        • AuthorizeAttribute
        • RequireHttpsAttribute
        • ValidateAntiForgeryTokenAttribute
        • ChildActionOnlyAttribute
        • ...
      • IActionFilter(動作過濾器-前-后)
        • ActionFilterAttribute
        • ...
      • IResultFilter(結果過濾器-前-后)
        • ActionFilterAttribute
        • ...
      • IExceptionFilter(例外過濾器)
        • HandleErrorAttribute(在FilterConfig就已被注冊)
        • ...
  • RazorViewEngine視圖引擎
  • WebApi

數據庫技術

  • 數據庫服務端、客戶端、圖形界面管理工具、數據庫語言(PL-sql,T-sql,sql)、數據庫安全等概念
  • 視圖、存儲過程、游標、中間表、觸發器、計劃任務等常用技術
  • 數據庫分庫、拆表、分布式、集群、備份、故障調控等方案
  • 數據庫三大范式與反范式
  • RBAC(Role-Based Access Control,基于角色的訪問控制)權限模型
  • 數據庫機制
    • 索引
    • 存儲引擎
    • 事務
      • 四大特性(ACID)
        • 原子性 Atomicity
        • 一致性 Consistency
        • 隔離性 Isolation
        • 持續性 Durability
      • 并發產生的問題
        • 臟讀
        • 幻讀
        • 不可重復讀
        • ...
      • 解決方案—隔離級別
        • 讀未提交Read uncommitted
        • 讀已提交Read committed (mssql、oracle)
        • 可重復讀Repeatable read(mysql)
        • 串行化Serializable
    • 鎖機制
      • 種類、粒度、加鎖方式
      • 悲觀鎖:開銷大,避免長事務
        • 表鎖、行鎖/讀鎖、寫鎖
      • 樂觀鎖:開銷小,讀大于寫
        • Version版本號機制
      • ...
  • 數據庫輔助工具:Power Designer、EZDML、ER Studio、Rose、Microsoft Visio...

關系型數據庫

  • Oracle
    • 最貴,功能最多,不開源,最安全...
  • Mysql
    • 免費,功能一般,開源,相對不安全...
  • MsSql(SqlServer)
    • 中等貴,支持平臺最少,不開源,使用最方便...
  • PostgreSQL
    • 與其他關系型數據庫相比,PostgreSQL獨特的地方是它支持高度需要的、完整的面向對象以及關系型數據庫的功能
  • Sqlite
    • 一個自包含的、基于文件的數據庫,可移植性非常好
  • ...

非關系型數據庫(Nosql-Not Only Sql)

  • MongoDb:是一個基于分布式文件存儲的數據庫
  • Hbase:屬于hadoop(分布式系統)生態圈的組件,能存儲海量數據
  • Cassandra:優異的列式存儲NoSQL
  • Redis:基于內存的數據存儲系統,支持多種類型存儲,適用于高并發場合
  • Memcache:基于內存的數據存儲系統,高性能分布式內存緩存服務,適用于高并發場合
  • ...

面向服務架構SOA

  • 通過服務整合來解決系統集成的一種思想
  • .
  • WSDL
    • Web Services Description Language是一個用來描述Web服務和說明如何與Web服務通信的XML語言。為用戶提供詳細的接口說明書
  • UDDI
    • Universal Description,Discovery and Integration統一描述、發現和集成, 提供一種發布和查找服務描述的方法。UDDI 數據實體提供對定義業務和服務信息的支持。
  • SOAP
    • Simple Object AccessProtocol,簡單對象訪問協議,基于XML 和 HTTP 用于在應用程序之間進行通信的一種通信協議
      • Web Services:基于SOAP協議,數據格式是XML
      • Wcf/Wcf Rest:可以不依賴于IIS,基于SOAP,支持多種通信協議,但配置繁瑣
    • 測試工具:SoapUI...
  • REST
    • REpresentational State Transfer ,表現層狀態轉移,是一種架構風格,提供了設計概念原則和約束。
    • RESTful
      • 滿足這些原則和條件的就稱RESTful架構
      • Web API:RESTful的實現,一個用于構建HTTP服務的框架
    • 測試工具:Fiddler、Postman、Jmeter...
  • 微服務
    • 是SOA的一種實現,更側重于組件化和服務化
  • JSON-RPC
    • Remote Procedure Call Protocol,遠程過程調用協議,高性能二進制協議,比RESTful要高效(類似于Web Services的使用風格)

面向對象OOP

  • 三大基本特性
    • 繼承,封裝,多態
      • 抽象類abstract和接口interface的各種用法及實現
      • Virtual、abstract、override、New、extern等關鍵字的含義及用法
      • 設計模式的應用
      • ...
  • 六大基本原則(高內聚,低耦合)
    • 單一職責原則SRP(Single Responsibility Principle)
    • 開放封閉原則OCP(Open-Close Principle)
    • 里式替換原則LSP(the Liskov Substitution Principle)
    • 依賴倒置原則DIP(the Dependency Inversion Principle)
    • 接口分離原則ISP(the Interface Segregation Principle)
    • 最少知識原則LKP(Least Knowledge Principle)(也稱:迪米特原則)
  • 23種設計模式
    • 創建型
    • 結構型
    • 行為型

存儲

  • 瀏覽器自身緩存技術(cache control,與服務器約定,js /css等緩存)
  • Session(SessionId)(會話,為了彌補http協議的無狀態特性)
  • Cookie(瀏覽器存儲,為了彌補http協議的無狀態特性)
  • Localstorage(Html5新特性 瀏覽器本地存儲,為了彌補Cookie存儲不足)
  • Application(服務器全局變量)
  • Static(依賴于IIS,進程回收會丟失)
  • Cache(服務器緩存)

軟件架構

  • MVC
    • ASP.NET MVC
  • MVP
    • 事件模型
      • ASP.NET Web form
        • System.UI.Page
        • ViewState
        • ...
      • Winform
  • MVVM
    • 在.Net中(主要應用于WPF、Silverlight、WP7)
      • Prism - Brian Lagunas微軟產品經理,微軟MVP,一個跨平臺的桌面和移動MVVM開發框架,開源。
      • Catel - Catel是一個專注于MVVM(WPF,Silverlight,Windows Phone和WinRT)和MVC(ASP.NET MVC)的應用程序開發平臺。 Catel的核心包含一個IoC容器,模型,驗證,紀念,消息中介,參數檢查等。
      • ...
    • 在前端中
      • Angular
      • Vue
      • Knockout
      • React
      • ...

平臺

  • MONO
  • .Net Core
    • CoreCLR
    • CoreRT for .NET Core
    • .NET Core Base Class Library
    • ...
  • .Net Framework
    • .NET Framework Base Class Library(BCL基類庫)
      • System.Web(ASP.NET的核心)
        • ASP.NET與IIS管道模型:
          • 經典模式IIS5/IIS6:
            • IIS管道模型
            • ASP.NET管道模型
            • ...
          • 集成模式IIS7:
            • HttpContext
            • ...
          • IIs的常用功能及使用及配置:
            • 請求篩選、失敗請求跟蹤等
          • .Net MVC生命周期
          • Httphandler、HttpModule、Globar的編寫及應用...
          • ...
      • OWIN解耦
        • Open Web Server Interface for .NET,定義了一種中間件在管道中用于處理請求和相關響應的標準方式,是種規范,用于解耦Web 服務器和Web 應用程序。
        • OWIN的實現:Katana(由微軟早期開發的開源OWIN組件集合)
          • OWIN Layer(定義的一系列層)
            • Application(應用程序)
            • Middleware(中間件)
              • Nanacy.Owin
              • WebApi
              • Signalr
              • FubuMVC
              • Simple.Web
              • DuoVia.Http
              • ...
            • Server(服務)
              • Microsoft.Owin.Host.SystemWeb
              • Microsoft.Owin.Host.HttpListener
              • Helios
              • (Asp.Net5以后就是Microsoft.AspNet命名空間)
              • ...
            • Host(宿主)
              • IIS
              • Custom Host
              • OwinHost.exe
              • Node.Js(connect-owin)
              • ...
    • .NET CLR(Commen Language Runtime)公用語言運行時
      • 核心:公共語言基礎(Common Language Infrastructure,CLI),提供了定義的規范接口、與工具
      • 1.項目源代碼被 .Net Framework編譯器( csc , C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe )編譯成EXE或者是DLL文件。
      • 2.被CSC編譯后的EXE/DLL文件叫做 IL文件。Intermediate Language (IL)中間語言,在.Net中,稱之為 Microsoft IL(MSIL)微軟中間語言(右鍵對項目進行生成的時候實際上就是這一步)
      • 3.CLR會將MSIL通過JIT(Just In Time)編譯器進行第二次編譯,將其編譯成本地平臺的CPU指令。(如果擁有能在Linux運行的CLR,代碼就能跨平臺運行)
      • .
      • C#源碼——(CSC編譯器)——MSIL文件(dll/exe)——(CLR中的JIT編譯器)——CPU執行

Http協議

  • OSI網絡通信
    • 物理層
      • 以二進制數據形式在物理媒體上傳輸數據
    • 數據鏈路層
      • 傳輸有地址的幀,錯誤檢測功能
    • 網絡層
      • 為數據包選擇路由
      • IP,ICMP,RIP...
    • 傳輸層
      • 提供端對端的接口
      • TCP、UDP...
    • 會話層
      • 建立或解除與其它接點的聯系
    • 表示層
      • 數據格式化,代碼轉換,數據加密
    • 應用層
      • HTTP,FTP,SMTP...
  • Http狀態碼
    • 1xx:信息提示,表示請求已被成功接受,繼續處理,請求范圍100~101
    • 2xx:成功,服務器成功響應請求,請求范圍200~206
    • 3xx:重定向,請求范圍300~305
    • 4xx:發送一些服務器無法受理的東西
    • 5xx:一條有效請求,但服務器掛了
  • 常用HTTP消息頭(Http Header)
    • Request請求頭
      • Authorization:Basic base64646464646464=== (驗證)
      • Accept-Encoding:gzip (指定瀏覽器可以支持的web服務器返回內容壓縮編碼類型)
      • Cache-Control:max-age=60(指定請求和響應遵循的緩存機制,max-age為 當前60秒內再次訪問不會去服務器請求)
      • Cookie:ZJF(該請求域名下的所有cookie值一起發送給web服務器)
      • Content-Type:application/x-www-form-urlencoded(是以什么格式來傳輸,請求的與實體對應的MIME信息)
      • Accept:text/plain(指定客戶端能夠接收的內容類型)
      • Range:bytes=0-999(常用作斷點續傳,設置請求的指定范圍,服務器則返回Content-Range: bytes 0-999)
      • Referer: (當前請求來源的網頁地址)
      • Origin: (和Referer差不多,只存在于POST請求)
      • Host:: (指定請求的服務器的域名和端口號)
      • User-Agent::Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36(當前客戶端的信息)
      • Expect:100-continue(握手失敗,請求頭域類型不匹配,由此導致的API接口調用失敗)
    • Response返回頭
      • Connection: keep-alive(連接方式,很重要)
      • Access-Control-Allow-Origin: *(跨域,很重要)
      • Set-Cookie: UserID=admin; Max-Age=3600; Version=1
      • Content-Encoding:gzip
  • 實時通信方案
    • .Net Signalr+
    • Ajax輪詢
    • Comet
    • WebSocket(SuperWebSocket,WebSocket服務器)
    • SSE(Server-sent Events服務器發送事件)
    • ...

域名解析

  • DNS解析流程
  • 常見 域名解析記錄
    • A記錄:用來指定域名或子域名對應的IP地址記錄,保證域名指向對應的主機
    • CNAME記錄:別名記錄,該記錄允許你為自己的主機設置別名
    • MX記錄:郵件路由記錄,當發送郵件時,Mail 服務器先對域名進行解析,查找mx記錄
    • TXT記錄:是域名系統(DNS)中由域名托管服務商存儲的一種資源記錄,其作用是防止垃圾郵件濫用行為
    • AAAA記錄:指定網站域名對應的IPv6地址記錄
    • NS記錄:Name Server,用于指定域名是由那個DNS服務器來進行域名解析
    • ...

網站優化

  • JavaScript和Css模塊化
  • CSS Sprites:將一個頁面涉及到的所有零星圖片都包含到一張大圖中去,這樣一來,將N次請求變成一次請求
  • 劃分資源域
  • 合理運用緩存技術
    • 靜態文件(圖片、css、js、html )緩存: cdn技術、squid緩存服務器、瀏覽器(客戶端)緩存
    • HTML5 application cahce API離線緩存
    • 應用層緩存:Cache、Redis緩存數據庫、memcache緩存數據庫
    • 數據庫緩存:數據庫本身的緩存機制
    • ...
  • 了解瀏覽器工作機制:Css放頂部,Js放底部,壓縮Html,能配置Expires/Cathe-Control,ETag,使用 gzip 壓縮
  • 用ISP(互聯網服務提供商)提供的文件存儲等技術
  • 提高DNS域名解析速度
  • 掌握SEO
    • 確保網站是可以被索引的: robots.txt,Robtots 標簽
    • 確保網頁是可以被索引的:確保爬蟲可以看到所有的內容、使用描述性的錨文本的網頁
    • 擅長標簽編寫:帶有 H1 標簽、關鍵詞放 URL 中、加粗文字、Descripiton 標簽、圖片文件名、ALT 屬性帶有關鍵詞
    • ...
  • 刪除不必要的HTTP響應頭
    • 移除X-AspNet-Version HTTP頭
    • 移除X-AspNetMvc-Version HTTP頭
    • 移除X-Powered-By HTTP頭
    • 移除Server HTTP頭
    • ...
  • 用戶數據分析
    • PV IP UV
    • 訪問流量來源
      • 瀏覽器
      • 移動設備
      • ...
  • ...

總結

以上是生活随笔為你收集整理的.Net Web微信H5鱼虾蟹网站开发搭建技术栈的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。