ec下载:http://www.ecere.com/Vanilla/comments.php?DiscussionID=3&page=1#Item_1
ec首页:
http://www.ecere.com
中文技术:
www.ecere.org.cn
eC,是一位加拿大人jerome历时十二年开发的一门编译型编程语言,拥有C++项目的性能和Java的跨平台性以及Python的方便性。
目前eC拥有自己的IDE,专用的面向对象数据库。
eC的理念是:开发一次,部署在所有平台,包括Windows,linux,Mac os,仅仅依赖一个轻量级的运行库!
它拥有与C++一样的性能,拥有和Java一样的跨平台性。这来自与eC语言自行开发的GUI库,3D图形库,Socket库…… 这些使得你能够迅速的开发你的软件(没错,就像python一样快捷),然而却拥有像C++开发的软件一样的性能!
eC拥有自己的IDE,当然IDE也是用eC写成。
简介
电脑编程其实就是一门艺术,这是一种无穷的创造力,并且它也是一种可以探究这个多样世界的好工具。因而你可能有许多种可能的原因使得你决定去学习编程,其中每一种理由都像其他的理由一样的好。不管你决定学习它是出于业余爱好或者是专业目的,这都是一种被证明是一种很好的技能当你生活在这个高科技时代。当然,你很可能会发觉这其实是一件非常有趣的事情。
我们将学习的是一种经典的编程。有许多人回答HTML(Hyper Text Markup Language)当别人问他用哪种语言编程的时候。超文本标记语言——网页语言的核心,被用来排版网页上的内容。是的,虽然许多的网页上包含了JavaScript 用以增强与用户的交互,并且其实它是由隐藏在背后的服务器端的PHP代码产生的,但是HTML或者XML真的很难算到“编程语言”的范畴(‘M’代表这是一种“标记(Markup)”语言)。我们关注的焦点是建立可以自行运行的软件。
在这本书里,我们用练习,目标激励等方法去学习编程。在每一章里,我们讲解一个清晰的主题,在章节的最后,你应该动手去练习来确保你已经掌握了所学的课程。
我们会把焦点放在使用Ecere软件开发套件(Ecere SDK)来进行的软件开发。我们写代码也将只使用一种语言:eC。如果学习方法正确的话,你将学习到新的观念、知识以及一种解决问题的思想,这样,即使你以后转而使用其他的编程语言或者开发环境,你可以很轻松的进行转换到新的环境。
Ecere SDK提供一个成熟的套件,这其中包括IDE(Integrated Development Environment),一套eC编译器,跨平台运行库,GUI工具,一个网络函数库,和一个3D引擎。编译器是基于GNU GCC编译器,所以它也可以用来编译用C或者C++语言写的程序。
包括本书的这个版本的Ecere SDK是一个跨平台的工具,它可以运行在Windows,linux,Mac OS X上,你可以参考接下来的说明把Ecere SDK安装在你喜欢的平台上来进行软件开发。
Ecere SDK的安装
第一部分:
用eC进行编程
? 第一个程序
? 变量和数据类型
? 算术、关系、逻辑和位运算符
? 流程控制
? 结构体
? 枚举
? 数组,指针和内存
第一个程序
千里之行,始于足下
——《道德经》
按照自从Brian W. Kernighan(《C程序设计语言》的作者)以来的惯例,并且因为小的目标是快速进步的关键,所以我们的第一个企图控制电脑的尝试是在控制台显示下面的一串文字:
hello, world
尽管者看起来简单并且没用,但是我们可以从这个过程中熟悉软件开发环境。
虽然纷乱的可能性掩盖真相,但其实电脑本质上只是一台执行特殊指令的机器。实际的可以执行的指令集依赖于电脑中运行的CPU(Central Processing Unit)类型,目前在个人电脑领域内最常见的CPU处理器构架是Intel x86系列。在CPU的内部,指令就像其他任何数据一样都是用二进制的(0 - off 或者 1 - on)。
电脑程序就是这些指令的一个集合,它按照一个安排好的方式执行用以完成一些特殊的任务。为了使程序的组织和管理更加的容易,文本的表述被普遍的用于编程语言。汇编语言的每一句都和和CPU的指令一一对应。汇编器被用来转换汇编语言程序成为可执行代码。
但是究竟什么是指令?我们又怎么通过它构建像3D视频游戏之类的复杂的程序?虽然每一条指令完成极其特殊的任务。但是因为可以非常自由组合这些指令,所以我们可以非常灵活的创建复杂的软件。
有些指令执行的算术的运算,还有一下仅仅提供CPU寄存器和内存之间数据传递的功能,把它们的一些组合起来使用,我们就可以在像显示器之类的设备上制造输出,打印或者从键盘或者鼠标获取输入。我们可以通过网络传递信息,或者通过声音系统制造声音。
虽然汇编语言编程给与了程序员指令执行的绝对控制,并且理论上可以得到最好的性能,但是它有许多不便之处是高级语言所没有的。一个例子就是汇编语言内在的本质决定它被固定搭配给特定的计算机构架:汇编是不可移植的。虽然有些人非常的精通汇编,并且非常高效率的使用汇编语言编写整个应用程序,但是大多数的程序员还是发现使用高级语言进行编程是更加舒适并且工作效率高的。
在数百种已有的编程语言中,最有影响力并且长久不衰的是C语言,它是Dennis Ritchie在1972年为UNIX操作系统开发的。C是一种纯面向过程的编程语言,没有任何变相对象的思想在里面。但是C给许多其他的面向对象的编程语言以灵感,比如说Objective C,C++,Java,C#,eC(e代表Ecere)当然也不例外。
C语言的伟大之处在于它是可移植的,并且可以很方便的直接进入内存,这使得C语言程序在大小、内存使用、和运行时性能都有不错的表现。从这方面讲,C语言被认为是除了汇编以外最好的编程语言。C语言被设计为系统编程语言,现在许多的操作系统核心依然是用C语言和汇编语言混合进行编程的。C的标准库是一组覆盖了许多方面的函数库。包括硬件操作,文件的读写,内存的管理,输入/输出和数学运算。
Ecere的编程哲学充分的拥抱了C的巨大能量。eC语言是从C发展而来的并且高度兼容C语言,与其他的C语言派生物不同的是,eC比C多的东西非常明显的增加了它的优雅程度同时使得面向对象的编程变得更简单。eC努力的使它保持着派生自C语言的优秀特性。
构建一个eC程序其实和构建一个C或者C++程序非常的相似。首先,在文本编辑器里编辑程序然后保存为ASCII文本文件。每一种特殊的扩展名对于特定的语言(eC的扩展名是.eC,C的扩展名是.c,而.cpp、.cxx、.cc则是C++的扩展名)。然后,用编译器把源代码编译成目标代码。最后,用连接器把所有需要的目标文件链接成可执行文件。为了使这个过程更简单,人们通常用一个“makefile”文件对这个过程进行管理,一个叫做make的程序会分析“makefile”中写明的对这个过程处理的特殊规则并进行处理。现在,这整个过程都可以借助一个集成环境(IDE)来解决。在IDE中,我们可以通过非常直接的方式进行编辑、编译和调试程序。然而,通常UNIX程序员仍然坚持用最基本的文本编辑器比如VI或者emacs,用makefile进行项目管理。