一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

C++ 程序員的 C# 轉(zhuǎn)型手冊(cè)

  第一部分

  本人之前曾經(jīng)算是個(gè)C++高手,之前用過(guò)Fortran/Baisc/C,從C和C++居多,最后一句代碼寫在2003年的11月。主要編寫Server端的代碼,但和數(shù)據(jù)庫(kù)打交道很少,主要是業(yè)務(wù)模式、架構(gòu)、底層這些內(nèi)容;所學(xué)無(wú)外乎模板、虛函數(shù)、算法之類。

  到2010年2月開始重新建起編碼,不過(guò)選擇了C#,開始編寫Web程序,而且必須與數(shù)據(jù)庫(kù)打交道,中間遇到不少困難,也遇到不少新技術(shù)和新環(huán)境,與同在路上的大家分享。

  基本開發(fā)環(huán)境選擇

  當(dāng)初選擇了ASP.NET 3.5 + MVC2 + LINQ + SSE(Sql Server Express)+ Win7家庭高級(jí)版 + IE9,現(xiàn)在一年半下來(lái),沒(méi)有太后悔的地方。

  ASP.NET環(huán)境

  ASP.NET 4.0是最新版本,建議從這里開始。這個(gè)沒(méi)什么好說(shuō)的了,既然是新來(lái)的,就一定選新的技術(shù),等學(xué)會(huì)了,也就變成成熟技術(shù)了;新學(xué)東西,就要學(xué)新東西,這是本人現(xiàn)在的立場(chǎng),之前吃過(guò)虧,曾經(jīng)抱著DOS和TurboC++不放,一直堅(jiān)持到1999年……

  MVC現(xiàn)在最新版本是MVC3。曾有文指出MVC很難學(xué),而Code Behind相對(duì)容易理解。同意但同時(shí)應(yīng)注意,這是針對(duì)首次學(xué)習(xí)語(yǔ)言就是ASP.NET/C#的人說(shuō)的,如果本來(lái)學(xué)過(guò)C++,尤其曾經(jīng)在C++中嘗試MVC思想的人,則似乎更容易理解ASP.NET MVC的做法,那點(diǎn)層次也繞不暈人,反而能以“物以稀為貴”增加競(jìng)爭(zhēng)力。

  MVC現(xiàn)在赫然列在ASP.NET首頁(yè)的醒目位置,日后必是MS平臺(tái)的主流。

  ASP.NET官方主頁(yè)在這里,下載/討論都有;MVC3主要在這里,下載/教學(xué)/討論都有。

  數(shù)據(jù)庫(kù)環(huán)境

  對(duì)筆者而言,LINQ是個(gè)比較奇怪的東西,可以理解是“讓C#程序員不學(xué)習(xí)SQL就能訪問(wèn)數(shù)據(jù)庫(kù)的方法”,非常推薦。個(gè)人在LINQ和EF(Entity Framework)中間做了很多猶豫,但最終結(jié)果是:除非做巨型的軟件,基本上LINQ就可以用,而且這東西幾乎沒(méi)有學(xué)習(xí)成本,說(shuō)用就用。以后有需要,轉(zhuǎn)成EF也不浪費(fèi)。

  SSE是SS的免費(fèi)版本,可以支撐10G空間,對(duì)一般的企業(yè)應(yīng)用而言足夠了,推薦在SSE上面做開發(fā)/部署,直到遇到實(shí)質(zhì)性障礙為止。

  為什么不用MySql?選了LINQ,暫時(shí)只能選擇微軟系列的數(shù)據(jù)庫(kù)(或許已經(jīng)出來(lái)LINQ to MySql了?沒(méi)注意),這個(gè)會(huì)造成一些困擾。但我因?yàn)槟?0G空間足夠用了,所以沒(méi)有看到MySQL與SSE的實(shí)際區(qū)別。

  建議開始可以關(guān)注一下SSCE(SQL Server Compat Edition),是一個(gè)微軟新推出的免安裝自驅(qū)動(dòng)的數(shù)據(jù)庫(kù),最大空間支持2G。如果當(dāng)初微軟就發(fā)布了SSCE,我會(huì)選擇SSCE而不是SSE(需要安裝),SSCE與SSE的基本性能相同,有一些限制但不大,而且隨時(shí)可以轉(zhuǎn)為SSE。現(xiàn)在一些Hosting的網(wǎng)站要么只提供收費(fèi)的SS,要么提供SSE但也收取費(fèi)用,而SSCE就不用擔(dān)心這些。

  我的網(wǎng)站www.scrum.org.cn就是用的SSCE,此ISP提供的網(wǎng)站空間每月收費(fèi)5美元,而Hosting的SSE也收費(fèi)5美元,所以使用SSCE可節(jié)省掉這5美元,而幾乎沒(méi)有任何影響。

  LINQ是隨著VS2010一起安裝的,不用單獨(dú)安裝,不知道官方網(wǎng)站在哪,亂搜就能找到一些教材;SSE在這里;SSCE在這里;兩者的區(qū)別在這里;安裝VS2010+SSE有可能出錯(cuò),請(qǐng)先看這里

  操作系統(tǒng)和瀏覽器環(huán)境

  Win7家庭高級(jí)版聽(tīng)起來(lái)很不專業(yè),但到現(xiàn)在為止還沒(méi)有出現(xiàn)任何開發(fā)問(wèn)題,到現(xiàn)在還沒(méi)有在本機(jī)部署過(guò),不知道是否可以當(dāng)作Server用,但至少開發(fā)起來(lái)沒(méi)有任何問(wèn)題。

  IE9肯定是不二選擇,調(diào)試環(huán)境比IE8方便。試過(guò)Chrome,發(fā)現(xiàn)MS肯定做了什么手腳,總之覺(jué)得沒(méi)有IE9方便。

  IE9在這里,里邊有一些支持Html5/CSS3之類的內(nèi)容,我還沒(méi)試過(guò)。

  其他開發(fā)工具

  Html

  筆者第一次學(xué)用Html編寫Web,所以遇到很多困難,不過(guò)沒(méi)買書,而是在http://www.w3schools.com/(英文)http://www.w3school.com.cn/(中文)學(xué)的,左上角學(xué)習(xí)入口。

  里邊有在線調(diào)試器,直接在里邊實(shí)驗(yàn),直到滿意為止,非常棒的網(wǎng)站。

  中文網(wǎng)站有些內(nèi)容不全,比如CSS3/Html5等,找不到就到英文網(wǎng)站看看。

  JQuery和JQueryUI

  JQuery是用來(lái)產(chǎn)生一些動(dòng)畫效果的,比如鼠標(biāo)滑過(guò)的時(shí)候顯示某些內(nèi)容,點(diǎn)擊的時(shí)候讓某些東西顯示或不顯示,實(shí)現(xiàn)拖拽,等等。這一切發(fā)生在瀏覽器里邊,無(wú)需驚擾后臺(tái)。

  JQuery是一種JavaScript工具包,而JQueryUI則是其處理界面部分的一個(gè)子集。后者能處理更復(fù)雜的事情,但也很難寫。筆者到現(xiàn)在沒(méi)好好寫過(guò)JavaScript(以后肯定免不了),如果不想深學(xué),可以先學(xué)一點(diǎn)JQueryUI,一般情況下基本夠用。

  JQueryUI在這里,很多Demo可以直接拷貝過(guò)來(lái)用。JQuery則在這里,本人只路過(guò)過(guò),還沒(méi)有真正用過(guò)。

  配置管理工具

  一個(gè)人開發(fā)也要配置管理工具的,否則很容易出事。

  開始我使用SVN Server + TortoiseSVN + 金山快盤,大致玩法如下:

  先找一臺(tái)電腦服務(wù)器,安裝上金山快盤,會(huì)產(chǎn)生一個(gè)20G的虛擬分區(qū);把SVN Server安裝在這個(gè)分區(qū)上;然后再在客戶端機(jī)器上安裝Tortoise。每次提及變化,金山快盤都會(huì)將變化上傳到金山的服務(wù)器上,因此即使本地的服務(wù)器損毀,數(shù)據(jù)一樣在,很“云”。

  在Windows上下載和安裝SVN Server及Tortoise的過(guò)程在這里,如果不用金山快盤,這些就夠了。

  金山快盤在這里,剛開始只給2G空間,但稍微上傳點(diǎn)東西或每天登陸,就能獲得更多空間,現(xiàn)在本人稀里糊涂就有8G空間了,上限可達(dá)15G,完全夠用。金山是做安全出身的,把密碼設(shè)好點(diǎn),基本不用擔(dān)心安全問(wèn)題。這么大的空間,除了代碼,順便把很多項(xiàng)目文檔都一股腦扔到里邊了,才用了1.5G。建議企業(yè)也使用金山快盤做一個(gè)異地備份,安全放心。

  后來(lái)發(fā)現(xiàn)自己不會(huì)玩Aphache,所以無(wú)法讓別人訪問(wèn)我的服務(wù)器,而且本地服務(wù)器也沒(méi)有外網(wǎng)IP,在外面無(wú)法訪問(wèn),于是后來(lái)改成使用Hosting的免費(fèi)服務(wù)器

  免費(fèi)Hosting SVN服務(wù)器在這里:http://offers.assembla.com/free-subversion-hosting/,空間是1G,無(wú)用戶數(shù)限制,日后可以花錢升級(jí),也可以不升級(jí)。

  到此為止,基本上所需的環(huán)境就全部搭建起來(lái)了。

  當(dāng)然這一過(guò)程宜循序漸進(jìn),比如開始可以直接用金山快盤壓縮-拷貝-粘貼-上傳備份代碼。SVN可以等以后在弄,先把前面開發(fā)必備的東西搭起來(lái),編寫個(gè)Hello World給自己打打氣再說(shuō)。

  發(fā)布工具

  我自己的產(chǎn)品現(xiàn)在還沒(méi)有在外網(wǎng)發(fā)布過(guò),但是卻發(fā)布過(guò)別人開發(fā)的產(chǎn)品,就是 www.Scrum.org.cn 上的MojoPortal(一款有點(diǎn)類似WordPress的建站工具,但是是用ASP.NET開發(fā)的,和咱們自己開發(fā)的軟件是一個(gè)東西)。

  發(fā)布工具優(yōu)先選擇WebMatrix,比VS2010中自帶的好。它的工作原理,就是把某個(gè)目錄中的內(nèi)容,發(fā)布到目的機(jī)器上,簡(jiǎn)單得令人發(fā)指。

  我在這里寫過(guò)一個(gè)簡(jiǎn)單的文章(如果不用MojoPortal/SSCE什么的就無(wú)視之),記得第二次發(fā)布的時(shí)候,不要發(fā)布數(shù)據(jù)庫(kù),因?yàn)槟康臋C(jī)器上面的數(shù)據(jù)才是最新的。

  如果數(shù)據(jù)庫(kù)結(jié)構(gòu)變化了,只想更新結(jié)構(gòu)不想更新數(shù)據(jù)……我也不知道怎么弄,還沒(méi)到這個(gè)地步,呵呵。

  SSCE可以被發(fā)布到?jīng)]有安裝任何數(shù)據(jù)庫(kù)的目標(biāo)機(jī)器上,很不錯(cuò)。

  第二部分

  為了學(xué)習(xí)C#,買過(guò)書,上過(guò)網(wǎng),問(wèn)過(guò)問(wèn)題,找過(guò)人,有的有用,有的幫助很大,有的沒(méi)什么用,下面記錄了我自己的過(guò)程;每個(gè)人會(huì)有所不同,請(qǐng)靈活掌握。

  買什么書?

  買過(guò)一本C#的書,看了沒(méi)有一周就擱下,幾乎再也沒(méi)有翻動(dòng)過(guò),后來(lái)就送人了。

  C#和C++還是挺相似的,建議不要買書,而是常常逛逛網(wǎng)站,編編程序,時(shí)間長(zhǎng)了就學(xué)會(huì)了。

  看什么網(wǎng)站?

  本人當(dāng)年是看一本叫做《Nerd Dinner》的電子書,只有100多頁(yè),但是卻從中同時(shí)學(xué)“會(huì)”了C#/MVC/ASP.NET/LINQ,當(dāng)然所謂“會(huì)”,就是能手不著地地向前走,持續(xù)編寫代碼了。之后就沒(méi)有看過(guò)系統(tǒng)性的材料,而只徘徊于google/baidu。

  電子書下載在這里http://ASPNETmvcbook.s3.amazonaws.com/ASPNETmvc-nerdinner_v1.pdf,在線版本在這里http://www.ASP.NET/mvc/tutorials/introducing-the-nerddinner-tutorial。

  微軟網(wǎng)站上有很詳盡的ASP.NET MVC學(xué)習(xí)材料,比當(dāng)年的MSDN強(qiáng)多了,網(wǎng)址在這里:http://www.ASP.NET/mvc,可惜好像沒(méi)有中文版本。不過(guò)考慮到無(wú)非是在屏幕上編寫代碼的問(wèn)題,就當(dāng)啞巴遇到聾子,干了這么多年C++了,也應(yīng)該能學(xué)會(huì)的。

  更多的學(xué)習(xí)資料,則在這里:http://www.ASP.NET/mvc/tutorials。

  出了錯(cuò)誤/問(wèn)題到哪里找答案?

  最開始我在前一家公司時(shí),總是找一位高手問(wèn)(他當(dāng)年也是CSDN專家,不過(guò)后來(lái)工作忙不常寫東西了),后來(lái)發(fā)現(xiàn)每次問(wèn)他,他總是當(dāng)場(chǎng)到Google去搜,于是就很少去找他了。把問(wèn)題拷貝到百度/Google里邊,幾乎立刻就找到無(wú)數(shù)答案。

  推薦用VS2010英文版 + Google(英文Google:http://www.google.com/,如果被跳轉(zhuǎn)到中文Google,鏈接在中文Google的最左下角),因?yàn)楹芏嗪苄碌馁Y料,都在國(guó)外先出現(xiàn),順序經(jīng)常是產(chǎn)品動(dòng)向-產(chǎn)品發(fā)布-使用心得/問(wèn)題問(wèn)答-結(jié)集出書-翻譯成中文-有人看了-在百度上開始搜到相關(guān)內(nèi)容。這個(gè)周期可能要2年的時(shí)間,所以對(duì)很新的技術(shù)而言,百度能搜到的內(nèi)容比Google少很多。

  后來(lái)發(fā)現(xiàn)很多問(wèn)題的答案,都指向兩個(gè)網(wǎng)站:一個(gè)是前面提到的ASP.NET,另外一個(gè)是http://stackoverflow.com/,當(dāng)然別在這里練習(xí)英文寫作,而是在其右上角的搜索框里邊,把幾個(gè)關(guān)鍵詞如“mvc controller redirect privous page”敲進(jìn)去,幾百上千個(gè)問(wèn)過(guò)的問(wèn)題就出來(lái)了,挑幾個(gè)看上去靠譜的打開,多數(shù)回答都帶有代碼,而那個(gè)"Answer“是綠色的是被選為標(biāo)準(zhǔn)答案的(和CSDN很類似)。

  如果還沒(méi)有找到答案,當(dāng)然就可以來(lái)CSDN問(wèn)問(wèn)題了,不過(guò)是否有人會(huì)回答,何時(shí)回答,都不太受控,不如搜答案來(lái)得方便。是個(gè)沒(méi)辦法的辦法。

NET技術(shù)C++ 程序員的 C# 轉(zhuǎn)型手冊(cè),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品国产自在久久老牛 | 91在线在线啪永久地址 | 成人在线a| 小说区图片区综合视频区 | 国产精品毛片va一区二区三区 | 国产伦精品一区二区三区免费迷 | 久久婷婷五夜综合色频 | 亚洲伊人成人网 | 91狼人| 日韩小视频在线播放 | 国产成人精品免费视频网页大全 | 国产精品一区二区在线观看 | 一区二区三区免费视频网站 | 免费看一级做a爰片久久 | 日韩一区二区在线免费观看 | 色综合天天综合网国产成人网 | 精品玖玖玖视频在线观看 | 91精品国产麻豆国产自产在线 | 亚洲一区免费在线 | 九九碰 | 韩国毛片 | 岛国最新资源网站 | 91日韩视频在线观看 | 久久亚洲伊人 | 国产在线观看一区二区三区 | 国产精品第1页在线观看 | 9re视频这里只有精品 | 开心综合网| 91小视频版在线观看www | 国产波波社区精品视频 | 国产精品原创巨作av | 国产成人一区免费观看 | 久久亚洲精品成人综合 | 欧亚激情偷乱人伦小说视频 | 另类天堂网 | 激情成人综合网 | 欧美三级在线 | 久久er国产精品免费观看1 | 91在线视频免费91 | 国产男人午夜视频在线观看 | 国产精品黄大片观看 |