Console-based or GUI-based game programming

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

先講題外話

敝人在初學程式設計時,電腦上已經是Windows 95系統了,也不懂什麼是作業系統(OS)。當時的敝人只是電腦的初學者,只會用電腦打打報告,上網聊天等。所幸找到The Java™ Tutorials,從Lesson: The "Hello World!" Application執行了自己的第一支程式,不過我花了快兩天的時間才執行成功。當下就分析自己為什麼會花這麼多時間:

1. 英文很爛。
2. 對電腦沒概念。
3. 打字慢。
4. 閱讀文章時,不會看重點。
5. 不知道如何找答案。

當時還有一個想法:既然網路上有英文的免費學習資源,何不加強自己的英文能力呢?
於是花了約一年時間加強自己英文的閱讀能力,後來的成果就不多說了。

進入主題
敝人相信從DOS就接觸電腦的人一定很了解且習慣Console-based的程式,因為DOS就是一個典型的Console-based OS,現今還是可以在少數地方看到DOS的足跡。簡單來說,Console-based application就是以文字介面為主的程式,但若加上觸碰螢幕與高階顯卡的話,可能就不是這樣定義了。

GUI-based Application又是怎麼回事?嗯,從程式的使用者來說好了,只要程式好用,才不管程式是Console-based還是GUI-based

但,開發程式的人就不一定會這麼想了,因為
Console-based的程式介面通常要花比較多的時間開發,GUI通常有library可以用。

問題:Console-based與GUI-based的程式哪個效能比較好?
(敝人可以忽略此問題嗎?)通常Console-based的程式校能比較好。

那此Blog的文章會以哪種為主呢?

高中生程式解題系統:提款卡密碼

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

題目連結 http://zerojudge.tw/ShowProblem?problemid=a065

此題用字串與字元的ASCII編碼來處理即可。

程式碼:
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;

int main(int argc, char** argv) {
 string s = "";
 
 while(cin >> s) 
 {
  char c = s[0];
  
  for(int i = 1; i < s.size(); i++) {
   int code = c - s[i];
   if(code < 0)
    code = -code;
   cout << code;
   c = s[i];
  }
  
  cout << endl;
 }

 return 0;
}

遊戲程式開發工具與網站 ( Tools and their website for game programming )

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

1. 程式語言
C/C++
Codelite: http://codelite.org/
Code::Blocks: http://www.codeblocks.org/
Orwell Dev-C++: http://orwelldevcpp.blogspot.tw/
Eclipse: https://www.eclipse.org/
Netbeans: https://netbeans.org/

C#
Visual Studio Express: http://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx
Mono: http://www.mono-project.com/

Java
Eclipse: https://www.eclipse.org/
Android SDK: http://developer.android.com/sdk/index.html
Netbeans https://netbeans.org/

Python
pygame: http://www.pygame.org/

Scratch: http://scratch.mit.edu/

2. Graphics
OpenGL: http://www.opengl.org/
Simple DirectMedia Layer: https://www.libsdl.org/
jMonkey: http://jmonkeyengine.org/
libGDX: http://libgdx.badlogicgames.com/
ORGE: http://www.ogre3d.org/

3. 硬體相關
Arduino: http://www.arduino.cc/
Raspberry Pi: http://www.raspberrypi.org/
Cubieboard: http://cubieboard.org/

4. 其它
底下這兩個似乎開始遠離 Programming 囉
Clickteam Fusion: http://www.clickteam.com/clickteam-fusion-2-5-free-edition
RPG Maker: http://www.rpgmakerweb.com/

Resources:
http://www.gamedev.net/