Ⅰ 關於.net下的c#語言
C#高級編程第七版,內容易懂全面,C#除了XNA它沒有講解到之外,其他的都有介紹!很不錯的一本書,不過就是太厚了,建議你挑選自己感興趣的章節來閱讀
Ⅱ 關於彈幕游戲編寫
敵機可以隨機,按路徑就給它定義一個路徑,
碰撞,不管你做的是2d還是3d游戲,都可以用盒體碰撞,
public static bool PointHitRectangle(Point point, int radius, Rectangle rectangle)
{
Rectangle newRectangle = new Rectangle(rectangle.X - radius, rectangle.Y - radius, rectangle.Width + radius * 2, rectangle.Height + radius * 2);
return newRectangle.Contains(point);
}
public static bool PointHitPoint(Point point1, int radius1, Point point2, int radius2)
{
int distance = (int)Vector2.Distance(new Vector2(point1.X, point1.Y), new Vector2(point2.X, point2.Y));
return (distance <= radius1 + radius2);
}
www.xnadev.net
有一個用xna1.0做的雷電,你下載看看,
// 補充:
51076008,一起探討xna
給你一個xna3.0的學習網站,我好容易找到,還有chm中文版的《xna高級編程》,
http://shiba.hpe.cn/jiaoyanzu/wuli/soft/xna.aspx?classId=4
Ⅲ windows phone 游戲開發需要用到什麼技術
需要XNA Framework 和Silverlight/XNA 的相關技術,具體可以去MSDN看看
http://create.msdn.com/en-us/ecation/gamedevelopment
《Windows Phone7高級編程:使用VS、Silverlight與XNA進行應用和游戲開發》--
在京東看到這本書,應該會有所幫助
Ⅳ 學習python有什麼好的用處
1. Python易於學習
相較於其它編程語言而言,Python更容易一些。Python 的語言沒有多少儀式化的東西,所以就算不是一個 Python 專家,你也能讀懂它的代碼。我的經驗是,通過實例來學習和教授 Python要比採取同樣的方式去接觸比方說 Ruby 或者 Perl 更加容易,因為 Python 的語法裡面條條框框以及特殊的處理場景要少得多。 它所專注的並非語言表現的豐富程度,而是你想要用你的代碼完成什麼。
2. 它能用少量的代碼構建出很多功能
Python 能帶給所有開發者一種快速的學習體驗。通過實踐,你可以在最多兩天之內輕松實現一個具備基礎功能的游戲。另外一些讓 Python 成為一門引人注目的編程語言的因素就是它的可讀性和高效性。
3. Python 多才多藝
Python應用場景廣泛,可被應用於如今你所能想得到的相當多的軟體開發和操作場景,目前已廣泛應用於人工智慧、雲計算開發、大數據開發、數據分析、科學運算、網站開發、爬蟲、自動化運維、自動化測試、游戲開發等領域,因此,只需要你將 Python 了解得更加深入一點點,就能讓你具備可以適應范圍更寬泛的工作角色的技能。
4. Python 擁有最成熟的程序包資源庫之一
Python 以 PyPI為其後盾, 這是一個擁有超過 85,000 個Python 模塊和腳本的資源庫,你拿過來就立馬可以使用。這些模塊向你的本地 Python 環境分發已經預先打包好的功能,可以用來解決各種諸如資料庫處理、計算機視覺實現、數據分析以及構建 REST 風格的 web 服務等問題。
5. Python 是跨平台且開源的
Python 可以跨平台運行,並且已經開放源代碼超過20年的時間了,如果你需要代碼能同時在Linux,Windows 以及 macOS 上跑起來,Python 就能滿足要求。此外,有數十年的修修補補以及不斷完善做後盾,可以確保你能夠隨心所欲地運行自己的代碼。
6. Python 很靈活
有一些Python同其它編程語言集成在一起的穩定實現。
CPython, 同 C 集成的版本;
Jython, 同 Java 集成的Python版本;
IronPython, 被設計用來兼容 .Net 和 C#;
PyObjc, ObjectiveC 工具下的 Python 寫法;
RubyPython, 同 Ruby 集成的 Python 版本。
並沒有很多的語言能提供像 Python 這樣的多樣性和簡潔性; 能持續努力演進並讓社區繁榮好幾十年的就更少了。無論你是編碼新手還是能信手寫就腳本的大師,都需要了解一下 Python。
Ⅳ 新手學C語言怎樣打好基礎
如何學好c語言
作者:beck
我是一名普通的教師,c語言的瘋狂愛好者。為了讓更多的人去學習,去了解這門語言,我創建了唯c世界()---一個普及和推廣c語言的個人網站。目前,許多人想學習c語言,甚至打電話問我,如何學好c語言,在這里我談談個人的一些看法,希望大家能夠從中受到啟發,這是我最大的心願!
一、我們要正確認識c語言,到底值得學嗎?答案是肯定的。一方面是c語言在全世界的普及率非常高,去德國留學的一個朋友說,c語言是德國大學的必修課,而且十分重視。我的一個學生***到北京實習回來,最大的感受就是大學三年學的最重要的課程就是c語言了。更重要的是,目前c語言的應用也是十分廣泛的,單片機,操作系統,游戲等很多的計算機領域都涉及到c語言,而c語言的影響也非常大,甚至有些軟體公司,把c掌握的程度作為應聘的一個重要標准。還有,現在的考試,二級,三級,四級,程序員考試等很多的考試都涉及到c語言的內容,有的占的比例很大。無論從哪個角度看,你都應該學它。
二、既學之,則好之。這是我的座右銘「既做之,則好之」的同胞兄弟,記住它,可能給你帶來動力。建議閱讀《C語言程序設計》這本書或者到到我的論壇下載,地址:,這個電子教程也可,尤其是初學者必須有一本教程,而後就該懂得如何學習它,既然是一門語言,他就漢語,英語一樣,都有自己的語法規則,這部分學習起來並不難,但是要牢記,就象說英語要懂語法一樣。懂得了語法不見得就能編出程序來,更為重要的是掌握編程的思想,如何用簡捷的方法解決一個問題。同樣做一個循環問題,可能有人要做300次循環,而有的人要做100次,這就是差距,如果你編的windows xp比別人編的win98慢3倍,誰還用你的操作系統呀!C語言只是一個基礎。我們還善於利用這些基本的東西去構造出一些新的東西,建議大家學完c語言後,繼續學習《數據結構》,這樣你會感覺c語言果真還有很多的東西要學。平時,我們學習的時候要注意掌握每個概念,當然理論的學習是離不開實踐的,尤其是c語言,需要你編寫大量的程序,最初可以學著別人的程序打,慢慢就應該獨立出來,把自己的想法用c語言描述出來,這是一件十分快樂的事情。建議初學者不要看高級編程,先勤寫代碼、多看代碼、培養風格、熟悉語法、最關鍵的還是把握思想。當你能夠信手拈來的時候,你的c語言才可以說學會了。一定要養成自己獨立寫完一個程序的能力,這樣可以有一種成就感。不斷培養這種成就感,循序漸進,進步是自然的事情。
三、學習它是個長期的過程,要不斷的總結經驗,我們學習就怕不能持之以恆。關於這點大家比我更清楚。一旦你學會了它,其他的語言就可以觸類旁通了,例如:C++,C#,JAVA,VB,DELPHI......這些學起來就會比那些C語言基礎不扎實的人要輕松得許多!
我可以幫助你,你先設置我最佳答案後,我網路Hii教你。
Ⅵ 計算機編程
簡單的說,編程就是為了藉助於計算機來達到某一目的或解決某個問題,而使用某種程序設計語言編寫程序代碼,並最終得到結果的過程。
計算機雖然功能十分強大。可以供你上網、打游戲、管理公司人事關系等等,但是沒有程序,它就等於是一堆廢鐵,不會理會我們對它下達的「命令」。於是,我們要馴服它,只有通過一種方式——程序,這也是我們和計算機溝通的唯一方式。
程序也就是指令的集合,它告訴計算機如何執行特殊的任務。
寫出程序後,再由特殊的軟體將你的程序解釋或翻譯成計算機能夠識別的「計算機語言」,然後計算機就可以「聽得懂」你的話了,並會按照你的吩咐去做事了。因此,編程實際上也就是「人給計算機出規則」這么一個過程。
隨計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。
電腦每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程序來執行,程序是計算機要執行的指令的集合,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。
計算機所能識別的語言只有機器語言,即由構成的代碼。但通常人們編程時,不採用機器語言,因為它非常難於記憶和識別。
匯編語言的實質和機器語言是相同的,都是直接對硬體操作,只不過指令採用了英文縮寫的標識符,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。
匯編程序的每一句指令只能對應實際操作過程中的一個很細微的動作,例如移動、自增,因此匯編源程序一般比較冗長、復雜、容易出錯,而且使用匯編語言編程需要有更多的計算機專業知識,但匯編語言的優點也是顯而易見的,用匯編語言所能完成的操作不是一般高級語言所能實現的,而且源程序經匯編生成的可執行文件不僅比較小,而且執行速度很快。
高級語言是目前絕大多數編程者的選擇。和匯編語言相比,它不但將許多相關的機器指令合成為單條指令並且去掉了與具體操作有關但與完成工作無關的細節,例如使用堆棧、寄存器等,這樣就大大簡化了程序中的指令。由於省略了很多細節,所以編程者也不需要具備太多的專業知識。
高級語言主要是相對於匯編語言而言,它並不是特指某一種具體的語言,而是包括了很多編程語言,如目前流行的VB、VC、FoxPro、Delphi等,這些語言的語法、命令格式都各不相同。
從二十世紀60年代以後,計算機得到了突飛猛進的發展。似乎歷史上沒有任何一門科學的發展速度超過了計算機的發展,無論硬體、軟體、還是網路都以驚人的速度向前發展。軟體的發展速度和硬體一樣,二十世紀九十年代中國的軟體業還不是很成熟,而現在大大小小 的軟體企業四處聳立,共享軟體網上隨處可見。不斷發展的技術需要不斷變化的程序員,例如,如今Visual Basic可以快速構建Windows下的應用程序,程序設計方面的技術不斷發展著,不斷引進新的概念、新的方法,如從結構化的C開始,當面向對象的思想被提出後,出現了C++,微軟在C++的基礎上為使用戶構建win32應用程序更加方便,推出了Visual C++。這也就需要程序員也要不斷的更新自己的技術。
目前常用的基本程序語言的種類比較繁多,比較簡單的有:Pascal、c語言、qBasic、 Fortran、Visual Basic等等。但前幾種都是在DOS下進行編程的工具,Visual Basic是在 Windows下進行應用程序設計的編程工具,現在一般的計算機用戶幾乎都不再使用DOS了,因此我們通常會選擇Visual Basic作為初學者的編程工具。Visual Basic是Windows應用程序設計中最容易上手的編程工具,學習步驟也比較容易被初學者接受。對於剛開始學習編程的初學者來說,還是選擇Visual Basic,學習編程語言不能想像著一步登天,一步一個腳印的學習才是最佳方法。
===============================================
C語言是國際上廣泛流行的、很有發展前途的計算機高級語言。它適合作為系統描述語言,即可用來編寫系統軟體,也可用來編寫應用軟體。
早期的操作系統等系統軟體主要是用匯編語言編寫的(包括 UNIX操作系統在內)。由於匯編語言依賴於計算機硬體,程序的可讀性和可移植性都比較差。為了提高可讀性和可移植性,最好改用高級語言,但一般的高級語言難以實現匯編語言的某些功能(匯編語言可以直接對硬體進行操作),例如:對內存地址的操作、位操作等)。人們設想能否找到一種既具有一般高級語言特性,又具有低級語言特性的語言,集它們的優點於一身。於是,C語言就在這種情況下應運而生了。
C語言是在B語言的基礎上發展起來的,它的根源可以追溯到ALGOL 60。 1960年出現的ALGOL 60是一種面向問題的高級語言,它離硬體比較遠,不宜用來編寫系統程序。1963年英國的劍橋大學推出了CPL(CombinedProgram- ming Language)語言。CPL語言在ALGOL 60的基礎上接近了硬體一些,但規模比較大,難以實現。1967年英國劍橋大學的Matin Richards對 CPL語言作了簡化,推出了BCPL(Basic Combined Programming Language)語言。1970年美國貝爾實驗室的 Ken Thompson以 BCPL語言為基礎,又作了進一步簡化,設計出了很簡單的而且很接近硬體的 B語言( 取 BCPL的第一個字母),並用 B語言寫第一個UNIX操作系統,在PDP-7上實現。 1971年在PDP-11/20上實現了B語言,並寫了UNIX操作系統。但B語言過於簡單,功能有限。1972年至 1973年間,貝爾實驗室的 D.M.Ritchie在B語言的基礎上設計出了C語言(取 BCPL的第二個字母)。C語言既保持了BCPL和B語言的優點(精練、接近硬體),又克服了它們的缺點(過於簡單、數據無類型等)。 最初的C語言只是為描述和實現UNIX操作系統提供一種工作語言而設計的。1973年,K.Thom- pson和D.M.ritchie兩人合作把UNIX的90%以上用 C改寫(UNIX第5版。原來的 UNIX操作系統是1969年由美國的貝爾實驗室的 K.Thompson和D.M.Ritchie開發成功的,是用匯編語言寫的)。
後來,C語言多次作了改進,但主要還是在貝爾實驗室內部使用。直到1- 975年UNIX第6版公布後 ,C語言的突出優點才引起人們普遍注意。1977年出現了不依賴於具體機器的C語言編譯文本《可移植C語言編譯程序》,使C移植到其它機器時所做的工作大大簡化了,這也推動了UNIX操作系統迅速地在各種機器上實現。例如,VAX,AT&T等計算機系統都相繼開發了UNIX。隨著 UNIX的日益廣泛使用,C語言也迅速得到推廣。C語言和UNIX可以說是一對孿生兄弟,在發展過程中相輔相成。1978年以後,C語言已先後移植到大、中、小、微型機上,已獨立於UNIX和PDP了。現在C語言已風靡全世界,成為世界上應用最廣泛的幾種計算機語言之一。
以1978年發表的UNIX第7版中的C編譯程序為基礎,Brian W.Kernighan和 Dennis M.Ritchie(合稱K&R)合著了影響深遠了名著《The C Programming Lan- guage》,這本書中介紹的C語言成為後來廣泛使用的C語言版本的基礎,它被稱為標准C。1983年,美國國家標准化協會(ANSI)根據C語言問世以來各種版本對C的發展和擴充 ,制定了新的標准,稱為ANSI C。ANSI C比原來的標准C有了很大的發展。K&R在1988年修改了他們的經典著作《The C Progra- mming Language》 ,按照ANSI C的標准重新寫了該書。1987年,ANSI C又公布了新標准--87 ANSI C 。目前流行的C編譯系統都是以它為基礎的。
==================================================
C++ 是脫胎自 C 語言的一種中級語言. 從計算機角度看, 它可以嵌入ASM等低端語言; 從面向對象的程序設計角度看, 它有具備OOP的三個基本特徵 -- 抽象, 封裝和繼承; 同時從市場角度來看, 它又不是純面向對象, 其實那些純粹的面向對象語言的陣地只是在實驗室.
比較C語言. C++ 的幾個顯著變化或者解決的問題就是
1. 名字空間的問題, 原始的C語言使用公共的名字空間, 這樣無論是開發本人還是第三方團隊都面臨變數名字耗盡的問題. 而C++提供獨立的名字空間, 而且對象的引入也為名字空間提供了進一步劃分
2. 代碼復用的問題, C語言使用函數庫的方式或者DLL方式實現代碼復用, 在介面穩定的前提下實現內部修改和數據及其實現的封裝. C++提供了類庫機制實現了具有層次的代碼復用, 和多種繼承機制, 同時重載等各種機制提供了進一步的復用實現. 使得類庫和代碼更加容易維護, 雖然建立類庫在人員, 組織等各個方面還是比較麻煩的.
3. 安全機制. 因為有了類機制, 有一些初始化操作可以自動實現
4. 效率問題. 因為C語言本質上是站在計算機立場的非常注重效率的問題, 但是事物總是具備矛盾的兩面, 過於偏重效率和軟體危機的出現, 反而增加了程序設計的難度. 而OOA的現實世界角度的考慮問題更加貼近自然, 使得代碼或者程序更加具備穩定性, 可擴展性和可維護性.
為此, 和經典物理同量子物理一樣. C/C++ 今天在不同領域各自發揮著最大的效率.
沒有誰是天生就會的,只要你肯學,沒有基礎肯定也能學會,因為所有的人都是從沒有基礎學起的
Ⅶ 游戲一般用什麼編程語言開發
一般的大型游戲開發不是單一用某一種軟體語言的問題。一個大型游戲的開發需要非常大的團隊用各種各樣的語言和工具來完成。
總結一下主要有C/C++,匯編語言,著色器語言,腳本語言,高效的開發語言C#或Java。
首先一般的游戲開發架構(Windows平台)從底到頂一般是Direct X™——游戲引擎——游戲。
大型游戲開發的大部分工作其實都是在編寫游戲腳本,腳本是大型游戲得以如此高速開發和發布的主要原因。腳本化的開發讓游戲開發擺脫了硬編碼的種種弊端,讓游戲內容可以輕易的修改和調試。比如比較流行的語言。,然後編寫腳本將其組織成一個游戲,不需要什麼底層的編程語言。
Windows平台比較流行的方法是使用最新版本的Visual Studio,顯卡廠商如NVIDIA也會為VS開發一些插件來簡化顯卡編程和調試。(7)xna高級編程擴展閱讀:
匯編語言
為了克服機器語言難讀、難編、難記和易出錯的缺點,人們就用與代碼指令實際含義相近的英文縮寫詞、字母和數字等符號來取代指令代碼(如用ADD表示運算符號「+」的機器代碼),於是就產生了匯編語言。所以說,匯編語言是一種用助記符表示的仍然面向機器的計算機語言。匯編語言亦稱符號語言。
匯編語言由於是採用了助記符號來編寫程序,比用機器語言的二進制代碼編程要方便些,在一定程度上簡化了編程過程。匯編語言的特點是用符號代替了機器指令代碼。而且助記符與指令代碼一一對應,基本保留了機器語言的靈活性。使用匯編語言能面向機器並較好地發揮機器的特性,得到質量較高的程序。
匯編語言中由於使用了助記符號,用匯編語言編制的程序送入計算機,計算機不能象用機器語言編寫的程序一樣直接識別和執行,必須通過預先放入計算機的 「匯編程序「的加工和翻譯,才能變成能夠被計算機識別和處理的二進制代碼程序。
用匯編語言等非機器語言書寫好的符號程序稱源程序,運行時匯編程序要將源程序翻譯成目標程序。目標程序是機器語言程序,它一經被安置在內存的預定位置上,就能被計算機的CPU處理和執行。
匯編語言像機器指令一樣,是硬體操作的控制信息,因而仍然是面向機器的語言,使用起來還是比較繁瑣費時,通用性也差。匯編語言是低級語言。但是,匯編語言用來編制系統軟體和過程式控制制軟體,其目標程序佔用內存空間少,運行速度快,有著高級語言不可替代的用途。
高級語言
不論是機器語言還是匯編語言都是面向硬體的具體操作的,語言對機器的過分依賴,要求使用者必須對硬體結構及其工作原理都十分熟悉,這對非計算機專業人員是難以做到的,對於計算機的推廣應用是不利的。計算機事業的發展,促使人們去尋求一些與人類自然語言相接近且能為計算機所接受的語意確定、規則明確、自然直觀和通用易學的計算機語言。
這種與自然語言相近並為計算機所接受和執行的計算機語言稱高級語言。高級語言是面向用戶的語言。無論何種機型的計算機,只要配備上相應的高級語言的編譯或解釋程序,則用該高級語言編寫的程序就可以通用。
如今被廣泛使用的高級語言有BASIC、PASCAL、C、COBOL、FORTRAN、LOGO以及VC、VB等。這些語言都是屬於系統軟體。
計算機並不能直接地接受和執行用高級語言編寫的源程序,源程序在輸入計算機時,通過「翻譯程序」翻譯成機器語言形式的目標程序,計算機才能識別和執行。這種「翻譯」通常有兩種方式,即編譯方式和解釋方式。
編譯方式是:事先編好一個稱為編譯程序的機器語言程序,作為系統軟體存放在計算機內,當用戶由高級語言編寫的源程序輸入計算機後,編譯程序便把源程序整個地翻譯成用機器語言表示的與之等價的目標程序,然後計算機再執行該目標程序,以完成源程序要處理的運算並取得結果。解釋方式是:源程序進入計算機時,解釋程序邊掃描邊解釋作逐句輸入逐句翻譯,計算機一句句執行,並不產生目標程序。
PASCAL、 FORTRAN、COBOL等高級語言執行編譯方式;BASIC語言則以執行解釋方式為主;而PASCAL、C語言是能書寫編譯程序的高級程序設計語言。每一種高級(程序設計)語言,都有自己人為規定的專用符號、英文單詞、語法規則和語句結構(書寫格式)。高級語言與自然語言(英語)更接近,而與硬體功能相分離(徹底脫離了具體的指令系統),便於廣大用戶掌握和使用。高級語言的通用性強,兼容性好,便於移植