C语言在VS2017环境下写俄罗斯方块的感悟
C語言給幾乎所有人的印象就是語法太嚴(yán)格、使用太拘謹(jǐn),錯(cuò)誤特別多,糾結(jié)太細(xì)致。很難提起興趣來。同時(shí)還有如下的巨大弱勢(shì):
1:C語言寫了很久還是只開發(fā)黑窗口程序,看不到實(shí)際應(yīng)用在哪里,嚴(yán)重打擊興趣;
2:如果想要使用高效的集成開發(fā)環(huán)境,卻很難和圖形庫鏈接上(主要是太多橫空出世、突如其來的、不懂的操作細(xì)節(jié),比如鏈接Lib庫,為什么要那樣做?不清楚,只是照著做而已);以至于高效IDE的魅力也大大失去了光彩。
3:硬要寫圖形化窗口你可能還真得跑到TC這種連復(fù)制粘貼都不友好的環(huán)境下去玩。實(shí)際公司中不用這低級(jí)的環(huán)境,就像開發(fā)一個(gè)PHP的商城是不會(huì)用記事本來開發(fā)一樣,否則你技術(shù)再強(qiáng)也找不到工作(和實(shí)際脫節(jié))。學(xué)習(xí)和社會(huì)需求嚴(yán)重脫節(jié),不但影響你的職場(chǎng),還會(huì)讓你的學(xué)習(xí)失去興趣以及白白浪費(fèi)時(shí)間。
這幾天反復(fù)思考這個(gè)問題:到底怎么提高C語言的學(xué)習(xí)興趣。應(yīng)該在高效的集成開發(fā)環(huán)境如:Visual Studio 2017順利開發(fā)出圖形化的C語言軟件,是一個(gè)很重要的突破口。讓你的C語言不再是只有黑窗口,也不用為了個(gè)圖形界面去用TC了。
在調(diào)試過程中多次體會(huì)到:開發(fā)一個(gè)好的俄羅斯方塊,是一個(gè)綜合性比較大、也有難度的東西。就像做好一件事,總有它的難度所在。對(duì)入門級(jí)的學(xué)員來說,里面很多術(shù)語可能聽的很抽象。如:句柄、資源、以及綜合使用各種結(jié)構(gòu)體(C語言頂多到結(jié)構(gòu)體了);所以用C語言來開發(fā)圖形化很費(fèi)時(shí)費(fèi)力,也不友好。但這恰恰是讓你深入細(xì)致的了解底層?xùn)|西一步一步是怎么來的,讓你更理解C語言,就像用51單片機(jī)開發(fā)的時(shí)候,很多時(shí)候你還得用位操作去控制CPU的IO口呢,然后你還得一步步的根據(jù)時(shí)序?qū)懘谕ㄐ艆f(xié)議...所以,越細(xì)致的東西越是磨練你的功力。那么用JS或者PHP或者JAVA以及C++來開發(fā)個(gè)俄羅斯方塊就要容易多了,但卻并沒有多大的提升水平的效果。所以開發(fā)起來難,并不能說明C語言的開發(fā)方式就沒意義了,對(duì)學(xué)習(xí)很有意義。很簡單的例子:沒深刻理解面向過程,你無法深入理解面向?qū)ο?#xff1b;不深刻理解結(jié)構(gòu)體的來源,你無法理解類的優(yōu)美;不深刻理解指針的惡心,你無法體會(huì)到引用的爽快。上層語言要用的舒心,就得底層語言用的“惡心”。有句話叫“先苦而后甜,苦盡甘來”。如果沒有苦的襯托,你的甜是感覺不到的。匆匆的放棄C語言,你同時(shí)也會(huì)發(fā)現(xiàn)上層語言對(duì)你也不友好。否則區(qū)區(qū)一個(gè)面向?qū)ο缶幊趟枷刖筒恢劣诳ㄋ篮芏鄬W(xué)上層語言的。區(qū)區(qū)一個(gè)引用也不至于很久不明白。區(qū)區(qū)一個(gè)MVC不至于讓很多所謂的技術(shù)人員大跨特跨...數(shù)據(jù)庫的索引優(yōu)化,SQL的高級(jí)使用不至于被說的非常神秘;負(fù)載均衡幾乎卡住了學(xué)了5年左右的許多人,這是何故?就是小事不愿做,大事就做不了了...
C語言的重大意義雖然不是用來開×××亮的外衣,但這完全不是可以放棄它的借口。它的核心地位是讓你深入理解編程開發(fā)的法寶,這是其他語言(除了匯編)難做到的。很簡單的應(yīng)用,如果你精通C和C++,那你學(xué)Linux可以很輕松,你學(xué)數(shù)據(jù)庫優(yōu)化和集群這些也都很輕松,你就不會(huì)整天沉迷于PHP框架的選擇,如到底是選擇TP還是Laravel,還是CI,還是YII之類的,因?yàn)檎l當(dāng)時(shí)受歡迎了,你可以馬上拿起來,就這么的簡單和霸道。要不,怎么說“學(xué)好C/C++,走遍全球都不怕”。而且學(xué)C/C++的人可以很輕松的搶JAVA,PHP,JS,.NET.C#等領(lǐng)域的飯碗,就看他想不想過來搶。但反過來就不大可能了。
鑒于VS2017開發(fā)的C語言的俄羅斯方塊1.0版正在不斷修改和調(diào)試中。此部分應(yīng)該會(huì)納入到《C語言,好爽》2017重點(diǎn)講解的內(nèi)容,不過要看時(shí)間允許與否。因?yàn)檫@樣做有意義,那就做了。
源代碼就不截圖了,里面寫的有點(diǎn)亂,而且對(duì)于初學(xué)者來說,如果不理解C語言的系統(tǒng),看了也白看。還是截幾個(gè)結(jié)果的效果圖吧,因?yàn)檫€在修改中。
效果圖:
關(guān)于《C語言,好爽》的網(wǎng)站昨天快速的開發(fā)了一個(gè),使用二級(jí)域名(http://c.phpkhbd.com),還在加入一個(gè)重要的模塊“問答模塊”。
轉(zhuǎn)載于:https://blog.51cto.com/ningcaichen66/1965499
總結(jié)
以上是生活随笔為你收集整理的C语言在VS2017环境下写俄罗斯方块的感悟的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 京东自建数据中心核心技术解密——运营管理
- 下一篇: backdrop-filter 和fil