首頁>Club>
3
回覆列表
  • 1 # 老馬識途微控制器

    首先C++完全可以用來寫網頁,但是C++過於非常強大,同時也就會有笨重的感覺,用來開發網頁,效率就不會很高。屬於大材小用。

    現在開發東西都是效率至上,用更有針對性的專用軟體會更快,更準,更易

  • 2 # kzhxy

    首先,你說的“寫”是指什麼?

    假如是你是指呈現的結果的話,那麼不用c++寫的原因是因為瀏覽器不認識。瀏覽器本質上是在解析符合格式的資料(包括支援的指令碼最終還是資料),c++可以生成資料,但它不是資料。c++和網頁的關係就像是筆和文章的關係一樣。

    但如果你是說生成網頁,那麼當然是可以的。但為什麼較少用c++呢?因為術業有專攻。c++很強大,但他不是為網頁設計的。對於網頁這種相對固定的需求而言,我們完全可以用專門的語言來做。那麼難道用c++不可以有專門的庫什麼的來做嗎?可以!但c++那麼多更難理解的特性你是不就得去理解了?為了這些特性付出的代價你是不是得接受?

    或許你說,我封裝的好一些,暴露的少一些,只讓開發者用這一點功能,並且把不必要的代價捨棄,這不就行了嗎?bingo!不過你說的不正是現行的“寫”網頁的語言嗎?

    可見,不用c++寫網頁的原因很簡單:特定場景下,合適的工具比強大的工具更好用。殺雞焉用牛刀,說的就是這個意思。

    p.s 為避免不必要的爭論,我想強調一下,這裡沒有任何抬高某個語言貶低其它語言的意思,只是舉例比喻罷了。

  • 3 # Driver_Lee

    HTML(標準通用標記語言下的一個應用)的原檔案是純文字檔案,可以是用任何文字編輯器如UNIX的VI、DOS的EDIT、WINDOWS 、txt中的書寫器等。但專用編輯器如HTML EASY !MICROSOFTFRONTPAGE 等提供了一整套模板等編輯工具,還可以直接呼叫內建的瀏覽器瀏覽程式的執行結果,或者提供了“所見即所得”的視覺化程式設計功能。目前已經出現了幾個版本的HTML語言,最新版的HTML5將更加簡潔方便。

    公共閘道器介面

    ASP與.NET

    ASP是微軟公司推出的意圖取代CGI的新技術。透過它,使用者可以使用幾乎所有的開發工具來建立和執行互動式的動態網頁,如返饋表單的資訊收集處理、檔案上傳與下載、聊天室、論壇等等,實現了CGI程式的功能介是又比CGI簡單,而且容易學習。由於ASP使用基於開放設計環境的Active X技術,使用者可以自己定義和製作元件加入其中,使自己的動態網頁具有幾乎無限的擴充能力。它還可利用ADO(Active Data Object,微軟的一種新的資料訪問模型)方便地訪問資料庫,能很好地對資料進行處理。借WINDOWS 東風,ASP得到了長足的發展。

    PHP

    PHP,一個巢狀的縮寫名稱,是英文超級文字預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種HTML內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在伺服器端執行的嵌入HTML文件的指令碼語言,語言的風格有類似於C語言,被很多的網站程式設計人員廣泛地運用。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。它可以比 CGI 或者 Perl 更快速的執行動態網頁。用PHP做出的動態頁面與其他的程式語言相比,PHP是將程式嵌入到HTML文件中去執行,執行效率比完全生成HTML標記的CGI要高許多;與同樣是嵌入HTML文件的指令碼語言JavaScript相比,PHP在伺服器端執行,充分利用了伺服器的效能;PHP執行引擎還會將使用者經常訪問的PHP程式駐留在記憶體中,其他使用者再一次訪問這個程式時就不需要重新編譯程式了,只要直接執行記憶體中的程式碼就可以了,這也是PHP高效率的體現之一。PHP具有非常強大的功能,所有的CGI或者JavaScript的功能PHP都能實現,而且支援幾乎所有流行的資料庫以及作業系統。

    PHP的特性包括:

    開放的原始碼:所有的PHP原始碼事實上都可以得到。

    PHP是免費的。

    基於伺服器端:由於PHP是執行在伺服器端的指令碼,可以執行在UNIX、LINUX、WINDOWS下。

    嵌入HTML:因為PHP可以嵌入HTML語言,所以學習起來並不困難。

    簡單的語言:PHP堅持指令碼語言為主,與Java以C++不同。

    效率高:PHP消耗相當少的系統資源。

    影象處理:用PHP動態建立影象。

    Script

    指令碼語言是介於HTML(HyperText Markup Language,超文字標示語言)和Java、C++和Visual Basic之類的程式語言之間的語言。它的語法和規則沒有可編譯的程式語言那樣嚴格和複雜。傳統的HTML是靜態的,為增強網頁的動態功能,一些廠商先後推出了自己的Script指令碼語言,其中Netscape推出了JavaScript(for客戶端和 for服務端兩種),微軟則推出了VBScript和ASP兩種,用於伺服器端和客戶端程式的編寫。

    JavaScript

    JavaScript是一種基於物件(Object)和事件驅動(Event Driven)並具有安全效能的指令碼語言。它與Java不同:JavaScript主要用於HTML的頁面,指令碼嵌入在HTML的原始碼中;而Java是一個獨立的、完整的程式語言,既可以在Web中應用,也可以用於與Web網無關的情況。另外,JavaScript編寫的程式不必在執行前編譯,它們可以直接寫入Web頁面中並由呼叫它們的瀏覽器來解釋執行。這樣,一些基本互動作用就不用在伺服器端完成,提高了客戶端的響應時間。

    特點

    簡單性:它是基於java基本語句和控制流之上的簡單而緊湊的設計,是學習java的好過渡,而且,它的變數型別是採用弱型別,未採用嚴格的資料型別。

    跨平臺性:javascript依賴於瀏覽器本身,與操作環境無關。只要能執行瀏覽器的計算機,並安裝了支援javascript的瀏覽器就可以正確執行,從而實現了“編寫一次,走遍天下”的夢想。

    VBScript

    為了適應Internet上的應用,Microsoft公司把用於應用程式描述的Visual Basic語言壓縮成一個更合理的子集,稱為Visual Basic Scripting Edition,簡稱VBScript。它也是一種HTML嵌入指令碼語言,具有易學易用等特點。如果你已瞭解Visual Basic或Visual Basic for Applications,就會很快熟悉VBScript。Microsoft公司將VBScript語言作為實施其ActiveX指令碼化的最佳選擇,使用者可以採用小的相互操作的部件一起來完成工作,使得應用程式的功能列加強大。

    Perl

    Perl是Practical Extraction and Report Language(實用摘錄和報告語言)的縮寫,由Larry Wall於1986年開發成功。當初的目的主要是Unix環境下從多個文字檔案中產生報表,後來成為許多程式設計師工具箱中最受歡迎的工具,其發展速度和Unix核心的成長速度相仿。Perl已經發展到5.0版本,並移植到了各種平臺。

    Python

    是一種跨平臺的開發語言,它可以執行在已知的各種作業系統之上,包括windows、Mac OS、Unix、BSD、Palm等。python是一種支援擴充套件的開發語言,主要的擴充套件變種有CPython、JPython、PerlPython。它們分別使用C、Java、Perl做它的擴充套件介面基礎環境的。更準確的說,Python也可以是一種 跨語言的語言。

    ColdFusion

    美國的一對兄弟allire,在為自己的客戶解決資料庫訪問的問題時,感覺到了cgi程式在編寫和維護上的難度是不能容忍的困難。於是,具有計算機天賦的Jeremy Allire便在1995年編寫了一種快速響應且易於編寫的動態指令碼語言,叫做coldfusion,一經推出,便震撼整個網路行業。之後,兄弟倆看到了coldfusion的發展前途,便成立了Allire公司(後來被macromedia收購)。之後 的幾年,全球500強中的一半都採用了coldfusion來解決公司不同情況的問題。透過不斷的版本修改和開發者的不斷壯大,Coldfusion後來發展成為業界知名的企業級解決方案的開發首選。為了產品線的統一,為了工業標準的統一,為了完全 相容Java平臺,Macromedia釋出了ColdfusionMX。而眾位以前經常看到的Neo這個詞則是macromedia對於使用新一代coldfusion開發行業解決方案的編碼名稱。

    Java

    Java是一個由Sun公司開發而成的新一代程式語言。來很流行的一種網路程式語言,它由C語言發展而來,是完全面向物件的語言。在與網路的融合中,已顯現出它的強大生命力和廣闊的前景。Java的語法簡練,學習和掌握比較容易,使用它可在各式各樣不同種機器、不同種操作平臺的網路環境中開發軟體。Java正在逐步成為Internet應用的主要開發語言。它徹底改變了應用軟體的開發模式,帶來了自PC機以來又一次技術革命,為迅速發展的資訊世界增添了新的活力。

    您在程式設計實踐中是否常常碰到要為不同的系統平臺重複程式設計(比如為Windows系統設計一套程式,UNIX系統設計一套程式)? Sun Microsystems公司的Java語言以其"一次程式設計,到處執行"的技術優勢,廣泛應用於Internet計算機環境下的程式設計應用,避免您針對不同的系統平臺重複程式設計,減少您的企業的開發成本。

    JSP

    JSP(Java Server Pages,Java伺服器頁面)是在Sun Microsystems公司的倡導下,由許多公司共同參與建立的一種新的動態網頁技術標準。它在動態網頁的建設方面具有強大而特殊的功能。Sun公司應用組建“Java社團”的思想開發JSP技術。在開發JSP規範的過程中,Sun公司與許多主要的Web伺服器、Web應用伺服器和開發工具供應商,以及各種各樣富有經驗的開發團體進行合作,找到了一種適合於應用和頁面開發人員的開發方法,它具有極佳的可移植性和易用性。針對JSP的產品,Sun公司授權予工具提供商(如Macromedia)、結盟公司(如Apache,Netscape)、終端使用者、協作商及其他人。Sun公司將最新版本的JSP和Java Servlet(JSP 1.1,Java Servlet 2.2)的原始碼發放給Apache,以求JSP和Apache緊密結合、共同發展。Apache,Sun公司和許多其他的公司及個人公開成立的諮詢機構更能方便任何公司和個人免費取得資訊。

  • 4 # 老陳MarkChen

    事實上,一個網頁從原始碼轉化為可視的過程少不了c++的支援。雖然各個瀏覽器的核心和HTML解析器不盡相同,但是大部分都是用更低層的語言來寫的。透過這個過程,可以用更簡單的語法和更高的效率來完成一個網頁

  • 5 # 南方鏢客

    c++能夠做到寫網頁。為什麼不用?

    因為c++是在系統層面上程式設計,一旦網頁最佳化差,造成系統崩潰都有可能。

    再者,c++會有一個編譯的過程,而且,開發難度大。

    就網頁本身而言,先是瀏覽器接收資料,再按照程式顯示排版,底層的實現仍然是c++在運作。

  • 6 # 綿山雲

    我單從一個方面舉個反例,c++的靈魂是直操記憶體,光這一點就違背了瀏覽器及全球資訊網遵旨,前端網頁僅能供展示不應有操作瀏覽者記憶體的隱患。

  • 7 # rpinx

    騰訊tars開源微服務框架,很多部分都是c++開發的,http只是個協議和語言無關,但是開發web不僅僅要考慮技術棧,還要根據不同的應用場景和開發週期去選擇合適的技術棧,說白了商業模式,就不只是技術說話了,還有可能是技術主管,還有成本!

  • 8 # i家保

    如果是指純粹的排版的話那必須是html,沒有為什麼,他是定製的標準,你要想改為其它語言的話,首先你必須有能力讓所有生產瀏覽器的廠商新增功能,來識別你的語言,我直接告訴你,給你兩個谷歌的家產,你也改不了這個標準。

    如果你意思是網頁的互動功能(伺服器端處理程式),那麼你想用C++的話,只要你願意,那必須可以,且asp,php,jsp實現不了的,你都可以實現,因為這些p也是c語言生產出來的,意思是你需要先寫好p的大部分功能(製造輪子);事實上我也確實有些專案用過C+來寫

  • 9 # csuchao

    現在編寫網頁主要採用php和java還有asp等等,和他們相比,c++出現的時間更早,那時候網際網路還不為大多數人知道,所以c++並不是為編寫網頁而發明的語言。另外網頁編寫需要解決的問題是大量的html和css還有javascript等字元處理,如果是動態網頁,還有少量訪問資料庫取資料的操作,c++對字串的原生支援不好,沒有字串型別,沒有正則表示式,當然這一點還不足以宣判它的死刑,可以透過各種開發庫來彌補,更主要的是網頁開發需要轉換思維模式,能夠在字串中插入程式碼,而不是傳統的在程式碼中處理字串

  • 10 # 平章芯事

    首先,我們不僅用c/c++寫過網頁程式,而且寫過很多年。大約有人聽說過cgi這個詞,就是為c/c++準備的。後來iis支援的isapi和nsapi也都是可編譯語言的介面標準。再舉一個例子,我們都知道歌手林志炫出道時是“優客李林”組合的一員,而另一個成員李進就寫過一本書《cgi程式設計》,這個可是2000年前的顯學哦。

    其次,c/c++沒落了。為什麼沒落?網頁程式邏輯簡單,只不過是收資料,寫資料,顯示資料,c/c++功能太多,學習不易,程式碼控制不好,所以就沒落了。比如,asp學習一週就能寫出來實用程式,c/c++要想寫出同樣效果的程式學習個半年都不行。2000年開始,到2007年之間,asp在國內大行其道,隨隨便便一個人都能寫個系統,真是百花齊放的階段,asp已經被國人玩爛了,就是現在還有很多人做專案用asp。

    其三,c/c++在網頁領域不會再輝煌了。新語言層出不窮,亂戰之下,python、golang虎視眈眈,java高高在上,php尚不能穩守領地,何況其他。現在來說,連php都幹不翻的語言,在web領域就只能淪為其他。

  • 11 # 平頭你表哥

    從CGI網管介面進行程式設計對於多數網站是沒有實際的意義的,這部分網站的在功能上,對於底層是沒有很高的要求的,透過PHP,或者其他的動態語言,既可以實現網站的快速開發,又能滿足效能和功能的需求,何必使用複雜又極難維護的CGI閘道器的介面開發呢?但不能說CGI閘道器開發當今沒人用了,只是一般的網站用不到這種技術了。其實這種關係,就像組合語言對於軟體開發一樣,不是不用了,而是有了更好的選擇。

  • 12 # 使用者6343554619

    你的提法有問題,如果是前端網頁的話,只是個html,這根本就不需要什麼語言,直接文字編輯器就能寫。但如果是後端的話,那很多語言都能寫,常見的是php java asp.net,c++當然也可以,但問題是是否高效。人家php可能幾行程式碼的功能,可能C++就要寫上一天,要你你會去寫嗎?

  • 13 # 可樂加冰有毒

    網頁使用的HTML是一種格式化的資料儲存方式,這種格式化的資料是可以被瀏覽器所解釋和展示的,而c++是一種程式語言,所寫程式是可以被作業系統來執行完成某些特定的功能的,雖然c++寫的程式也需要透過mfc等展現給使用者,但本質來說兩者完全是不同的兩類事物,不要混為一談。

  • 14 # 飛躍小哥哥

    未來c++有可能會寫網頁的,但不是傳統的網頁,傳統的html 不需要c/c++雖然傳統的html有這方面的需求(保護原始碼)。目前前端對於c/c++最大的需求在於基於webgl的應用,例如webvr,webAI等技術。

  • 15 # LFLLD

    c++可以寫網頁,有技術實現。但沒多大意義,開發速度和維護比較難。

    我瞭解的硬體層面,嵌入式開發支援網路服務的弄個配置頁面的,還是c實現的,類似路由器。

    pc端的網站服務還是java,asp,php,python技術多一些。

    程式語言就是個工具。幹什麼活順手就用什麼。

    好比掃地這事,大掃帚可以,小掃帚也可以。面積小的,乾淨度要求高的用小掃帚。面積大的用大掃帚,用小的費人費事。

  • 16 # 老爐傳說

    你要先了解一下網頁製作的原理,真正呈現給使用者看到的網頁一定是一個html+css+js的頁面,無論我們透過php、c#還是java寫的網頁,最終都會以html+css+js的形式呈現,底層語言主要用來處理資料庫裡的資料。

    如果把網頁和後臺處理完全分開,你會看的更清晰,比如一個html頁面我們用html+css佈局完成以後,透過js去訪問後臺頁面的資料

    訪問的後臺頁面只是對資料庫進行操作

    上面後臺頁面對資料庫的操作是用php寫的,它只負責對資料庫進行處理,並把處理好的結果返回給你的前端頁面。這是一個非同步處理的過程,當前端頁面收到資料以後就會使用js對前端頁面進行相應的更改。

    我們可以看到整個前端使用者可以看到的頁面其實沒有涉及到javaScript以外的語言,至於後臺處理頁面使用什麼程式,js是無需知道的,他只管傳送資料和收到資料。

    至於為何不用C++做網頁,這是因為無論C#還是java、php對網頁處理的庫都很全面,用它們做會非常方便,有好的東西,我們為何還要選擇次著呢?

  • 17 # 九章演算法

    要回答這個問題首先要明確題主對於寫網頁的定義。

    一個網頁往往包含前端、後端兩部分。前端負責頁面的呈現,後端負責資料的處理,可以大概的理解成前端是人的衣服,而後端是人的五臟六腑。

    前端的話主要是採用html+css+javascript這樣的組合。html有點像word裡面的操作,告訴瀏覽器,哪裡是題目,哪裡是正文。然後用css去定義這些標題,正文,連結的樣式。而JavaScript則讓這些內容能夠動起來,比如有些網站煩人的彈窗,其實就是js裡的alert指令完成的。在前端部分裡,html和css似乎是不可替代的,JavaScript的話,近年來有typescript等,但都沒能成為主流,c++在前端在的應用似乎是沒有的。

    再來說後端部分,後端的語言有很多,市場佔有比例最大的是應該是java,這也是java前幾年就業火熱的一大原因。php作為“世界上最好的語言”,則是一門專門為網頁開發而設計的一門語言,近年來,python的Flask,Django等框架,也漸漸進入人們的視野,airbnb就採用了Django。

    那麼為什麼我們不在後端裡使用C++呢?這個問題其實,本身是不對的。因為我們並不是不使用,而是使用的比較少。騰訊就是以C++作為開發的主要語言。因為騰訊的產品主要偏向於通訊,而做通訊的大部分都是採用C++來開發的,產品需求決定了團隊,而團隊則決定了傳統。還有一個原因就是,C++雖然開發效率低,但是效能會比java等好。而騰訊這樣大體量的公司,是不在乎開發效率的問題的。

    這也就不難理解,為什麼使用C++使用的人少了。

    1、開發效率低,現成的類庫少,編譯還存在問題,有時會覺得用別人的庫,還不如自己擼一個輪子。而Python、php等則容易上手很多,甚至一星期就能做一個還過得去的網站。

    2、C++語言難,因為C++比較偏向底層的開發,記憶體,指標,這些東西對於一個入門的開發者來說很傷腦筋,debug的過程很艱難,而且C++很靈活,其它語言的一些語言特性,你基本在C++上面都可以實現,這就使得你做一件事,有了很多條路可以選,這很容易陷入一種怪圈,寫完一種方法覺得不夠優雅,然後再用另一種方法,再寫一次。寫完C++再去寫Java,你會覺得爽快很多。

  • 18 # 小跑漫步

    這個問題太好回答了,回答的太負責不是這個專業的他們也聽不懂,舉個例子吧,這個問題可以換個類似的問:我們為什麼要用磚蓋房子,而不是從土開始燒磚

  • 中秋節和大豐收的關聯?
  • 卡薩丁是帶徵服者還是帶電刑?你怎麼看?