objective-c和c++的区别

objective-c和c++的区别,第1张

下面简要说说他们的区别:

1继承:Objective-C与同Java和Smalltalk一样不支持多重继承,而C++语言支持多重继承(从侧面可以说明多重继承的效率不高);

2函数调用:Objective-C通过互相传递消息实现函数调用,而C++直接进行函数调用

3定型:Objective-C是动态定型(dynamicaly typed)。所以它的类库比C++要容易 *** 作。Objective-C 在运行时可以允许根据字符串名字来访问方法和类,还可以动态连接和添加类。而C++,对象的静态类型决定你是否可以发送消息给它。

4接口:Objective-C采用protocol协议(非正式和正式)的形式来定义接口,而C++采用虚函数的形式来定义接口。

5方法重载:c++中允许两个方法的名字相同,参数个数相同,但是参数类型不同,以及不同的返回值类型。而OC中不允许同一个类中两个方法有相同的名字,参数个数相同,参数类型不同

定义

       C++:一九八三年又由贝尔实验室的Bjarne Strou-strup推出了C++。 C++进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。

Objective -C:行内人简称其为OC。它的发展主要是因为1988年Steve Jobs的NextStep采用Objective-C作为开发语言,因此MacOS X以及IOS上的开发最佳语言自然也就是Objective-C了。同时Objective-C是苹果Mac OS X 上开发的首选语言,主要是因为Mac OS X 技术源自NextStep的OpenStep *** 作系统,因为OPENSTEP的软件架构(framework)都是用Objetive-C 写成。然后OC是由Brad Cox在80年代初在第一个纯面向对象语言Smalltalk基础上写成。Brod Cox创立了StepStone公司进行OC语言的推广。最终OC在1992年获得了GNU gcc编译器的支持,因此OC也是GNUstep在Linux和其他平台上的开发语言

语言特点:

C++语言特点:

1在C语言的基础上进行扩充和完善,使C++兼容了C语言的面向过程特点,又成为了一种面向对象的程序设计语言;

2可以使用抽象数据类型进行基于对象的编程;

3可以使用多继承、多态进行面向对象的编程;

4可以担负起以模版为特征的泛型化编程。

OC语言特点:

1Objecive-C属于Smalltalk学派,其面向对象与C++面向对象编程力的Simula 67(一种早期面向对象语言)学派不同;

2Objective-C 是ANSI C的超集,扩展了C 语言使它具备面向对象设计的能力,例如类、消息‘继承;同时在Objective-C的代码中可以有C和C++语句,它可以调用C的函数,也可以通过C++对象访问方法;

3Objective-C可以实现底层系统编程,另一方面可以支持利用动态架构进行开发。

C++与OC同为面向对象设计语言,他们有很多相似的对象,但是由于两者属于不同的面向对象学派。。如下图XCode报错:

与C语言相比要注意的地方

objective-c高级特性

开发工具介绍(cocoa 工具包的功能,框架,源文件组织;XCode使用介绍)

简介:

1 objective-c是C语言的一个扩展集,主要由APPLE公司维护,是MAC系统下的主要开发语言。

个人认为,对于用惯了常用的C,JAVA等语言的人来说,objective-c是一中很另类,非主流的语言。

2 开发 Mac的 UI 程序来说,使用的是 Cocoa 这个框架,cocoa的组成部分有:foundation和application kit框架。

foundation框架处理用户界面之下的特性,如数据结构和通信机制;application kit框架包含cocoa的高级特性:用户界面元素,打印,颜色,声音管理,applescript等

与C语言相比要注意的地方:

1 文件介绍:Objective-C 也使用头文件(header files),后缀为 h, 但使用 m(即 message, 其他面向对象编程语言也叫 method),作为源文件的后缀。

在objective-c中使用#import<>,而不使用#include<>,#import可以保证头文件只被包含一次。

2 与C一致的地方:

数据类型,表达式,各种运算符

循环:for, while, do while, break, continue

分支:if, else, switch

3 NSlog()函数:与printf()类似,想控制台输出信息。但它增加了一些特性,如时间戳等。

cocoa对起所有的函数,常量和类型名称都添加了NS前缀。

4 双引号的前面的@表示这双引号中的字符串应该作为cocoa的NSString元素来处理。

5 布尔类型BOOL:值为YES,NO;

6 %d表示输出整数

%@表示输出NSString类型

%s表示输出字符串数组(char);

7 objective-c中的方括号:

1 用于通知某个对象该做什么。

2 方括号内第一项是对象,其余部分是你需要对象执行的 *** 作。

3 在objective-c中通知对象执行某种 *** 作,称为发送消息。(也叫调用方法)

8 标识符id:是一种泛型,用于表示任何种类的对象。

9 类声明@interface:

@interface Circle:NSObject //为Circle类定义接口;NSObject表示是父类。

{//以下是数据成员

ShapeColor fillColor;

ShapeRect bounds;

}

//以下是方法声明

-(void) setFillColor: (ShapeColor) fillColor; //前面的短线表明这是方法声明

//短线后面是方法的返回类型

//接着是方法名

//冒号后面是参数,其中(ShapeColor)是参数类型,

fillColor是参数名

-(void) setBounds:(ShapeRect) bounds;

-(void) draw;

//减号就是普通函数

加号就是静态函数

@end //结束声明

objective-c看到@符号,就把它看成是C语言的扩展。

一个类的完整声明如下:

@interface CClassA(Category): CBaseClass<IA,IB>

//类名(类别名):父类<协议>

10 类实现@implementation

@implementation

@implementation Circle

-(void) setFillColor: (ShapeColor) c

{

fillColor=c;

}

-(void) draw

{

NSLog(@”drawing a circle at(%d %d %d %d) in %@”, boundsx,boundsy,boundswidth,boundsheight,colorName(fillName));

}

@end

隐藏对象self对应于C中的this。

Self->fillcolor来访问成员变量。

11 调用写好的类和类函数:

//创建新对象,使用缺省初始化函数

Bank bankDefault = [[Bank alloc] init];

//调用方法:

[bank addAmount: 1];

[bank print];

// 释放对象:

[bankDefault free];

12

两个参数的方法:

-(void) setTire: (Tire ) tire //声明

atIndex: (int) index;

//使用

[car setTire:tire atIndex:2];

objective-c高级特性:

1 继承

Objective-c不支持多继承。

Super 关键字:调用该类的父类;

超类:父类的另一种说法。

2

自定义NSLog()输出:

在类中添加description方法就可以自定义NSLog()如何输出对象。

@implementation Tire

-(NSString ) description

{

Return (@”I am a tire”);

}

Main()

{

NSLog(@”%@”,tire[0]);

}

3

Foundation kit:

Cocoa是由两部分框架组成的:foundation kit [包括一些基础类]和 application kit包括用户接口对象和高级类

创建字符串:

NSString test;

test=[NSString stringWithFormat:@"i'm %d years old!",23];

若在声明方法时在方法前面添加了加号,那就表示把这个方法定义为类方法这个方法属于类对象,而不是类的实例对象。

NSArray类:可以存放任意类型的对象

它有两个限制:

1 它只能存储objective-c的对象,但不能存储C中的基本数据类型,如int , float, enum, struct等。

2不能存储nil(对象的零值或NULL值);因为在创建NSArray时,要在列表结尾添加nil代表列表结束。

创建NSArray:

NSArray array;

array=[NSArray arrayWithObjects:@"one",@"two",nil];

NSString, NSMutableString类;

NSString是不可变的,即一旦创建完成,就不能通过删除字符或添加字符的方式来改变它;

而NSMutableString是可变的。

这两个类就像JAVA中的string与stringBuffer类的区别。

NSArray, NSMutableArray类;

NSEnumerator枚举;

NSEnumerator emun;

Emun=[array objectEnumerator];

Id thingie;

While(thingie=[enumerator nextObject]){}

NSDictionary:字典(关键字及其定义的集合。)也成为散列表,关联数组,NSMutableDictionary类;

NSNumber:用来包装基本数据类型,如int ,char, float, bool;将一个基本类型的数据包装成对象叫做装箱。

NSValue:它可以包装任何类,NSNumber是它的子类。

NSNull:

在cocoa中看到“CF”字样时,就表示它是苹果公司的Core Foundation 框架相关的内容。

NSAutoreleasePool:自动释放内存池。

4

内存管理

每个对象都有一个与之关联的引用计数(也叫保留计数)

当使用alloc, new 方法或通过 copy消息(生成接收对象的一个副本)创建一个对象时,对象的引用计数值被设为1;

给对象发retain消息时,增加该值;

发送release消息时,减少该值;

当一个对象的引用计数值变为0时,objective-c会自动向对象发送一条dealloc消息。销毁该对象。

你可以在自己的对象中重写该方法,

使用retainCount消息,可以获取引用计数器的值。

-(id) retain;

-(void) release;

-(unsigned) retainCount;

自动释放池:autorelease pool;

创建:

NSAutoreleasePool pool;

pool=[[NSAutoreleasePool alloc] init];

销毁:

[pool release];

注意:xcode自动生成的代码,销毁pool池时,使用的是[pool drain],drain方法只是清空释放池,但不销毁pool所以在自己编写代码时还是使用release

而且,drain只适用于MAC OS 104以上的版本,而release适用于所有版本。

只有在向某个对象发送autorelease消息时,该对象才会添加到NSAutoreleasepool中,才会被自动释放。

如:[car autorelease];

内存管理黄金准则:

只有通过alloc, new和 copy方法创建的对象,才需要程序员负责向该对象发送release或autorelease消息。

而通过其他方法获得的对象,则默认为已经被设置为自动释放,所以不需要程序员做任何 *** 作了。

在objective-c 20中有垃圾回收机制,

如果要对某个项目使用垃圾回收:

项目信息--build选项卡--查询"garb",出现“objective-c Garbage Collection”,将其值设置为“required[-fobjc-gc-only]”

启用垃圾回收后,通常的内存管理命令全都变成了空 *** 作指令,不执行任何 *** 作。

开发iphone软件,不能使用垃圾回收。

5

对象初始化

两种创建新对象的方法:

[类名 new]

[[类名 alloc] init]

这两种方法是等价的,但cocoa的惯例是使用后者。

alloc在为对象分配空间的同时,将这块内存初始化为0;

Init方法:初始化实例变量,使对象处于可用状态。[返回类型为id, 返回的值描述了被初始化的对象]

使用new创建新对象时,系统要完成两个步骤:

1 为对象分配内存,即对象获得一个用来存放其实例变量的内存块;

2 自动调用init方法,让该对象处于可用状态。

6

objective-c 20的新特性只适用于mac os x105及以上

@property :表示声明了对象的属性。这样就不用再写属性的访问器了。

(他有copy, retain, readwrite, readonly等属性)

@synthesize:表示“创建该属性的访问器”

点表达式

7

类别

类别(category)是一种为现有的类添加新方法的方式。

类别的声明:

@interface NSString (NumberConvenience) //类名 (类别名)

-(NSNumber) lengthAsNumber; //扩充方法声明

@end

使用时使用原来的类名,就可以调用他的所有类别中的方法。

类别的局限性:

1 不能向类中添加新的实例变量;

2 在类别中的方法若与类中现有的方法重名,则类中的方法不可用,被类别中的新方法取代。

类别的作用:

1 将类的实现分散到多个文件或框架中;

2 创建对私有方法的前向引用;

Cocoa中没有真正的私有方法,则实现私有方法类似功能的方法为:

先在类别中声明方法;然后到现有类的实现中实现该方法。

这样这个类中的其他方法可以使用该方法,而其他外部的类就不会知道该方法的存在了。

3 向对象添加非正式协议。

创建一个NSObject的类别称为创建一个非正式协议。

委托delegate是一种对象,另一个类的对象会要求委托对象执行它的某些 *** 作。

受委托对象在某个时间(某个事件触发)时,会自动通知委托对象执行委托方法。

选择器:@selector():选择器只是一个方法名称,但它以objective-c运行时使用的特殊方式编码,以快速执行查询。圆括号中的内容是方法名。

所以Car类的setEngine:方法的选择器是:@selector(setEngine:

受委托对象如何知道其委托对象是否能处理它(受委托对象)发送给它(委托对象)的消息?

通过选择器,受委托对象先检查委托对象,询问其是否能响应该选择器。如果能,则向它发送消息。

8

协议:

正式协议是一个命名的方法列表。

采用协议意味着必须实现该协议的所有方法。否则,编译器会发出警告。

正式协议就像JAVA中的接口一样。

声明协议:

@protocal NSCopying

-(id) copywithzone:(NSZone ) zone; //方法列表

@end

采用协议:

@interface Car:NSObject <NSCopying,NSCoding> //中括号中是要实现的协议列表

{//实例变量列表}

//方法列表

@end

在objective-c 20中,有新特性:@optional, @required

9

AppKit:

创建APPKIT项目:

File—new project—mac os—application—Cocoa application;

IBOutlet与IBAction

这两个都是APPKIT提供的#defines

IBOutlet没有任何作用,不会对它进行编译。

IBAction定义为void。

这两个是为Interface Builder以及阅读代码的人提供的标记。

xib文件一般称为nib文件。

nib文件是包含被冻结对象的二进制文件。

而xib文件是XML格式的nib文件。

问题一:计算机语言有哪些?怎么分类? 计算机语言(puter Lnguage)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。

计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。

计算机语言主要分为三类:

- 低级语言

- 高级语言

- 专用语言

1、低级语言

- 机器语言、汇编语言和符号语言。

- 汇编语言源程序必须经过汇编,生成目标文件,然后执行。

2、高级语言

- BASIC(True basic、Qbasic、Virtual Basic)、C、PASCAL、FORTRAN、智能化语言(LISP、Prolog)等等。

- 高级语言源程序可以用解释、编译两种方式执行。通常用后一种。

我们使用的C语言就是使用的后者。

3、专用语言

CAD系统中的绘图语言和DBMS的数据库查询语言。

11机器语言

电子计算机所使用的是由0和1组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由0和1组成的指令序列交由计算机执行,这种计算机能够认识的语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。

因此程序就是一个个的二进制文件。一条机器语言成为一条指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。

12汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用ADD代表加法,MOV代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

13高级语言

131高级语言的发展

从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1954年,第一个完全脱离机器硬件的高级语言--FORTRAN问世了,40 多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等。

特别要提到的:在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接 *** 作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性>>

问题二:计算机语言都包括什么语言?及其各个应用领域? 1、web page script languages

就是网页代码,比如Html、javascript、Css、Asp、Php、Xml都应该属于此类(照蔡的意思,Html不应该属于anguages的,可能他觉得太简单了吧,不过我觉得Html也应该算的,大家爱听谁的就听谁的好了,这个不重要)

2、Interpreted Languages(解释型语言)

包括Perl、Python、REBOL、Ruby等(后面三个听豆没听过),也常被称作Script语言,通常被用于和底下的 *** 作系统沟通。照蔡的意思,每个人至少应该学会一套这类的语言。这类语言的缺点是效率差、源代码外露――所以不适合用来开发软件产品,一般用于网页服务器。

3、Hybrid Laguages(混合型语言)

代表是JAVA和C#。介于解释型和编译型之间。蔡认为C#是NET最重要的语言,值得期待其后续发展;至于JAVA,蔡叫看他的《Sleepless in Java》――我倒!

4、PILING Languages(编译型语言)

C/C++,JAVA都是编译型语言。蔡说C++很复杂,要成为高手没三五年是不行的(就凭这句话,我决定向JAVA投降),虽然如此,但真正要成为高手的都应该懂C/C++。

关于Delphi,蔡说如果想要跨Linux和Windows平台的语言,则Delphi似乎是最好的选择。

5、Assembly Languages(汇编语言)

汇编语言是最接近于硬件的语言,不过现在几乎没多少人用了。

程序语言学习顺序建议

如果完全没有程序经验,可照这个顺序:javascript――解释型语言――混合型语言――编译型语言――汇编(如果需要的话)

用业界流行一句话做结尾“真正的程序员用C++,聪明的程序员用Delphi”,那么,什么样的程序员用JAVA呢?

虚怀若谷题外话

看在我这么晚了还这么辛苦的敲字的面子上,看到这篇帖子的朋友给点掌声吧,虽然没什么自己的思想。

另外,本文完全据蔡学镛先生同名文章精简,所以如果这篇文章给你的程序员生涯有什么不好的作用,那我不介意你去扁他。当然如果这篇文章对你有什么积极影响,我很高兴你能请我吃大餐。

如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!

方案一 Basic语言 & Visual Basic

优点

(1)Basic 简单易学,很容易上手。

(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。

(3)众多的控件让编程变得象垒积木一样简单。

(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。

缺点

(1)Visual Basic 不是真正的面向对象的开发文具。

(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。

(3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。

综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB>>

问题三:常用的计算机编程语言有那些 种类很多,要学的话,主要看你要从事哪个方面,编程都是大同小异,如果你学会一门,其他的学起来也就轻松许多。 如果你想当个普通的公司职员,建议C\C++这类的。 如果你想当个破解人员,建议汇编(我觉得是相当的难)。 如果你想当个黑客,拥有一定的软件知识(很低层的那种)和硬件知识(使用软件掌控硬件)和网络知识(入侵这类的)。 如果你想当个红客,主要是网络安全知识。

这需要看将来想从事什么类型软件的开发吧。如果在国内开发windows类型应用程序,据说vb比较流行,但如果开发和硬件关系较大的嵌入式程序,则使用较多的还是C语言,而网络这个方面,无论是有线还是无线,大多数都选择了JAVA。以上是从应用角度来讲的,如果从性能和投入方面分析,C语言无疑性能上最好的,但它的复杂度太高,开发和维护费用较大,一般比较好的游戏程序或者速度要求较高的程序会选择C++来开发,而VB等由于它的简易性,可以极大缩短开发周期,也是程序员的宠儿之一。另外有一种语言python在国内逐渐出现,国外好像已经流行了十几年吧,linux的引导程序和BT的一些组件都是用它开发的,具有开发周期短,易维护等特点,运行速度也比JAVA要快,并且面向对象,无平台限制,据说还开放了源码,不过由于在国内流行时间不长,各大公司出于对以前开发代码的兼容性的需要,可能一时间接受不这个语言,但可以明显看出,它的发展潜力相当大。 总而言之,C为基础,掌握JAVA,会用VB,了解python,应该看得出这几个词汇之间的轻重差别吧。:)单机编程语言主要有qb,vb,c++,vc++,c语言,我觉得最常用的是c语言,因为现在我们常用的windows *** 作系统就是用c 语言编写的.非常常用. 网络编程语言现在用的是html 语言,还有javaada

asp(含aspNET)

basic(含VB)

b(C语言的前身)

css

c(含VC)

c#(含VC#NET)

c++(含VC++NET)

fortran

foxbase

html(含xhtml和shtml)

jacc(不确定是不是这个名字了,一种开发语言的语言)

java

java script

jsp

latex

lua

pascal

perl

php

prolog

python

ruby

sgml(html和xml用得很多,单独列出,其实也是一种sgml)

shell

sql

tcl/tk

vb script

xml 最常用的是 JAVA C C++java VB 是比较好学的 最牛的要属C#了

世界上编程语言太多了,就像每个国家都有自己的语言一样的但是从编程语言发展的角度说:

大概经历 这样 四个阶段: ############################################################

第一个阶段是 机器码编程 (你肯定知道计算机只能识别0和1,以前就是这样编程的)现在的PC计算机依然是这样,冯诺依曼结构的计算机你可以去网上搜索 冯诺依曼 是干什么的你会想,为什么现在编程不是0,1,计算机怎么识别呢当你开始编程的时候,你用的编译器就在做这些事情

########################################################### ##########################################################

第二个阶段是 低级语言,比如汇编语言,台湾叫做组合语言其实组合>>

问题四:最简单的计算机语言有哪些 网页上的html是最简单的语言,但是功能实在少得可怜,除了描述网页就没有别的用途了(不过话说回来,直接描述网页也只有它才能做到,其他语言做不到)

Script(脚本)系列 也很简单

这里有很多种,常见的有Javascript(引进了Java的一些思想,不过实际内容简单得多了),VBScript (Visual Basic的一部分), C#Script(C#的一部分), 这三种主要用于网页网站设计,辅助html间接描述网页,让网页变得丰富多彩绚丽,而单机上也可以运行以执行一些可自动化的 *** 作,实现一些简单的小程序和一些手动 *** 作非常麻烦甚至是不可能的 *** 作,但还是难以编完整的独立的程序,还有批处理bat,这也是一种脚本,也很简单,专门单机使用,擅长代替大量的手工 *** 作和系统维护,但要做出我们常用的这种漂亮的程序,是不可能的。

想要做我们常用的程序要用以下几种语言,不过相比之上面的语言都复杂许多:

Basic系列是最简单的,不过因为版本多样不统一还有一些效率的问题,所以用的人不是非常多

不过其中有一个例外:Visual Basic 有微软的支持,可视化的,可以很快有成就感编出像样的程序,而且很多文档中的宏 VBA(Visual Basic for Application)还有以上说的VBScript都是它的一部分,所以还是很受欢迎的。

C语言,入门还比较简单,但挺枯燥,初学没什么成就感,要想编大程序要学得挺深,有点难,编出来的程序在高级语言中效率最高,所以是第二广泛使用的语言仅次于Java。

C++,C#,会更难一点,但是程序要编大的会相比之下简单点,这些都是C语言的扩展,其中C++擅长本机大程序,C#适合网络编程(刚才说的C#Script是它的一部分)

Java,语法上类似C++,在跨平台的时候会省你很多麻烦,所以由于手机的普及近一两年它才超过C/C++成了应用最广泛的语言。不过开发出来的程序效率比较不怎么样,但有些人挺喜欢它的思想,所以不跨平台的话,见仁见智

其余的还有Delphi,Pascal,等等不过那些都不怎么常用而且比较复杂,要图简单,强烈推荐Visual Basic,要深究程序内部的东西那还是从C开始比较好

问题五:计算机有哪些语言 工业编程语言: A+ | Ada | 汇编语言| B | Brain | C | C++ | C++/CLI| Cg | COBOL | Eiffel | Erlang | FORTRAN | IronPython | Java | JRuby | Jython | LISP | Oberon | Objective-C| Ocaml | Pascal | Perl | Powerbuilder | Python | QBASIC | R | REXX | Ruby | Self | Smalltalk | SQL | Tcl/Tk | Visual Basic | PHP | C# | F# | J# | Visual Basic NET

脚本编程语言: ActionScript | JavaScript | JScript | Nuva | PostScript | VBScript | lua

学术编程语言: APL/J | Haskell | Logo | ML | pascal|Prolog | Scheme | SAC

其他编程语言: ALGOL | BASIC| Clipper | Forth | Modula-2/Modula-3 | MUMPS | PL/I | Simula

问题六:计算机所有的编程语言都有哪些? ALGOL (also under FORTRAN)

Atlas Autocode

ALGOL 60

Simula (see also Simula based languages)

ALGOL 68

Burroughs Extended ALGOL

ALGOL W

Pascal

Ada

SPARK

Turbo Pascal

Object Pascal (Delphi)

Free Pascal (FPC)

Kylix (same as Delphi, but for Linux)

Euclid

Concurrent Euclid

Turing

Turing Plus

Object Oriented Turing

Modula-2

Modula-3

Oberon (Oberon-1)

Oberon-2

ponent Pascal

Objective Modula-2 (also under Objective-C and Smalltalk)

CPL

BCPL

B

C

tcsh (also under sh)

Alef

Limbo

Coyote

C++

Java

Groovy

Join Java

J#

Processing

X10

C#

Windows PowerShell (also under DCL, ksh and Perl)

C--

D

ColdFusion

eC (Ecere C)

LPC

Pike

Objective-C (also under Smalltalk)

Objective Modula-2 (also under Modula-2 and Smalltalk)

PCASTL (also under Lisp)

Perl

Windows PowerShell (also under C#, DCL and ksh)

S2

PHP

PDL (also under APL)

QuakeC

MCPL

APL

A+

Glee

J (also under FL)

K (also under LISP)

NESL

PDL (also under Perl)

BASIC (also under FORTRAN II)

Amiga Basic

AMOS BASIC

BASIC Stamp

BASIC09

Basic4GL

BlitzBasic

Blitz3D

BlitzMax

BlitzPlus

Business Basic

Caché Basic

AL

DarkBASIC

Euphoria

PlayBASIC

PowerBASIC

Quickbasic

QBasic

Liberty BASIC

Just BASIC

Run BASIC RealBasic

thinBasic

TI-BASIC

TrueBASIC

Visual Basic

VBScript

Visual Basic for Applications (VBA)

Visual Basic NET

YaBasic

COBOL

DIBOL

WATBOL

MS-DOS Batch files

Winbatch

CLIST

IBM Job Control Language (JCL)

IT

SNOBOL

Icon

Unico>>

问题七:计算机语言中常用的有哪些? 1 计算机常用语言除了C ,C++ ,VB ,JAVA 外还有什么? 他们的优点和区别?

还有很多了,不过一般都不怎么常用

优点嘛,C,C++运行比VB要快

VB是解释型语言,运行的话需要对应的运行库的支持。不过上手容易。

JAVA的话最大的优点是跨平台。

2 学习做网页HTML PHP ASP JSP 和(问题1)中的哪些语言挂钩 ? 是否均需要HTML做基础?

一般HTML中的脚本和VB与JAVA都有点联系。

不过语言都是通的,就是关键字,系统保留字不一样而已。

学习的话最好是要有HTML的基础。

3 PHP ASP JSP 和SQL MYSQL 等其他数据库怎样搭配?

随意的,看具体的用途。

有些数据库不能用于大型的站点,好象有限制的。

具体可以查一下数据库的说明。

问题八:电脑编程语言都有哪些啊? 工业编程语言: A+ | Ada | 汇编语言| B | Brain | C | C++ | C++/CLI| Cg | COBOL | Eiffel | Erlang | FORTRAN | IronPython | Java | JRuby | Jython | LISP | Oberon | Objective-C| Ocaml | Pascal | Perl | Powerbuilder | Python | QBASIC | R | REXX | Ruby | Self | Smalltalk | SQL | Tcl/Tk | Visual Basic | PHP | C# | F# | J# | Visual Basic NET

脚本编程语言: ActionScript | JavaScript | JScript | Nuva | PostScript | VBScript | lua

学术编程语言: APL/J | Haskell | Logo | ML | pascal|Prolog | Scheme | SAC

其他编程语言: ALGOL | BASIC| Clipper | Forth | Modula-2/Modula-3 | MUMPS | PL/I | Simula

问题九:计算机语言有多少种?分别是哪些?最早的是? 太多了 主要分为三类:高级、低级、专用语言。

高级有:FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、JAVA等

低级有:机器语言、汇编语言和符号语言等

专用语言:CAD系统中的绘图语言和DBMS的数据库查询语言等

最早的应该是汇编语言

问题十:计算机语言有哪些?怎么分类? 计算机语言(puter Lnguage)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。

计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。

计算机语言主要分为三类:

- 低级语言

- 高级语言

- 专用语言

1、低级语言

- 机器语言、汇编语言和符号语言。

- 汇编语言源程序必须经过汇编,生成目标文件,然后执行。

2、高级语言

- BASIC(True basic、Qbasic、Virtual Basic)、C、PASCAL、FORTRAN、智能化语言(LISP、Prolog)等等。

- 高级语言源程序可以用解释、编译两种方式执行。通常用后一种。

我们使用的C语言就是使用的后者。

3、专用语言

CAD系统中的绘图语言和DBMS的数据库查询语言。

11机器语言

电子计算机所使用的是由0和1组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由0和1组成的指令序列交由计算机执行,这种计算机能够认识的语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。

因此程序就是一个个的二进制文件。一条机器语言成为一条指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。

12汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用ADD代表加法,MOV代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

13高级语言

131高级语言的发展

从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1954年,第一个完全脱离机器硬件的高级语言--FORTRAN问世了,40 多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等。

特别要提到的:在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接 *** 作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性>>

目前objective-c的入门书籍是《objective-c20程序设计(第二版)》

为了更好的学习这门语言,你需要在cocoachina等mac os ,ios开发论坛学习。

你学习objective-c无非是要做苹果应用开发,所以利用xcode,接触cocoa框架,同时学习语法。

以你拥有C语言的基础和java面向对象的基础下,很快可以掌握。

编写软件的语言有

一、C语言

c语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言具有高效、灵活、功能丰富、表达力强和较高的可移植性等特点,在程序设计中备受青睐。C语言编译器普遍存在于各种不同的 *** 作系统中,例如MicrosoftWindows、macOS、Linux、Unix等。C语言的设计影响了众多后来的编程语言,例如C++、Objective-C、Java、C#等。

二、C++

C++是一种面向对象的计算机程序设计语言,由美国AT&T贝尔实验室的本贾尼·斯特劳斯特卢普博士在20世纪80年代初期发明并实现,最初它被称作“CwithClasses”(包含类的C语言)。它是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言,支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格C++是C语言的继承,进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。

三、PHP

PHP(外文名:PHP:HypertextPreprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

四、JAVA

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

五、Python

Python是一种计算机程序设计语言,由吉多·范罗苏姆创造,第一版发布于1991年,可以视之为一种改良的LISP。Python的设计哲学强调代码的可读性和简洁的语法。相比于C++或Java,Python让开发者能够用更少的代码表达想法。

1、一门编程语言(C、C、Java、PHP、Python、Html等),

2、熟悉一种 *** 作系统(Windows、Unix、Linux/类Linux、Android、IOS等),

3、简单的算法和数据结构。

先确定你学习完软件开发后想从事的工作,比如游戏开发(LOL,吃鸡,手游等);前端开发(网页、微信小游戏、Android/IOSAPP等);后台服务器,数据库(支撑前端运行的技术和数据);嵌入式(驱动、单片机等)。

确定方向后,再选择相应的编程语言,如游戏开发(C为主);网站,小游戏(H5/CSS/js等)、Android(Java为主);IOS(Objective-C、switch);后台服务器(Java、Python等);数据库(MySQL、Oracle、SQLServer等);嵌入式(C、汇编等)

就业方向

本专业毕业生适合的工作岗位是计算机程序设计师。适合于熟练地按照工程化的思路进行软件编制、软件测试的工作岗位,能担任各种企事业单位和各级工程建设部门、管理部门的计算机软件和硬件维护、网络的组建、维护等工作。

也可从事计算机研究与应用、软件开发等方面的工作。具体可分为以下方面:

1可视化编程掌握程序设计方法及可视化技术,精通一种可视化平台及其软件开发技术。获取Delphi程序员系列、Java初级或VB开发能手认证。就业方向:企业、政府、社区、各类学校等可视化编程程序员。

2WEB应用程序设计具有美工基础和网页动画设计能力,掌握交互式网页程序的设计技术,能进行网站建设和维护。获取Macromedia多媒体互动设计师或Delphi初级程序员或Delphi快速网络开发工程师认证。就业方向:企业、政府、社区、各类学校等WEB应用程序员。

3软件测试掌握软件测试的基本原理、方法和组织管理,精通软件测试工具。获取ATA软件测试工程师或Delphi初级程序员或Java初级程序员认证。就业方向:企业、政府、社区、各类学校等软件测试员。

4数据库管理能应用关系范式进行数据库设计,精通SQL语言,胜任数据库服务器管理与应用工作。获取Oracle数据库管理或SQLServer数据库应用或WindowsXP应用认证。就业方向:企业、政府、社区、各类学校等部门的中、大型数据库管理员。

以上就是我的回答,您可以关注了解一下我们海翔飞网络,祝生活愉快

iphone应用程序的编写用Objective C。

Objective C的一些相关介绍:

1、Objective-C是扩充C的面向对象编程语言。它主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。

2、1980年代初布莱德·考克斯(Brad Cox)在其公司Stepstone发明Objective-C。他对软件设计和编程里的真实可用度问题十分关心。

3、Objective-C最主要的描述是他1986年出版的书 Object Oriented Programming: An Evolutionary Approach Addison Wesley ISBN 0-201-54834-8。

4、和C++不同,Objective-C不支持运算子重载(它不支持ad-hoc多型)。亦与C++不同,但和Java相同,Objective-C只容许对象继承一个类别(不设多重继承)。

5、苹果公司一直在尝试降低Objective-C语言的复杂度——淘汰手动内存管理以及C标准头文件,引入更符合当下编程语言潮流的ARC机制,还有通过语法来访问属性的getter/setter方法等等,都是为了降低Objective-C的学习难度。

以上就是关于objective-c和c++的区别全部的内容,包括:objective-c和c++的区别、objective-c与C++的区别、计算机基础语言(急求)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9512295.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存