Pharo编程入门教程

浅夏微凉 2019-08-22 ⋅ 19 阅读

引言

Pharo是一个强大而灵活的开源编程语言和集成开发环境(IDE),它专注于简化和加速软件开发过程。Pharo采用敏捷软件开发方法论,提供了丰富的工具和库,旨在提高开发者的生产力和代码质量。本篇博客将介绍Pharo编程的基本概念和常用功能,帮助初学者快速上手。

安装和设置

首先,我们需要下载和安装Pharo编程环境。在Pharo的官方网站上,你可以找到适用于不同操作系统的安装包。安装完成后,启动Pharo,你将看到一个简洁而直观的界面。

Hello World

让我们以一个经典的"Hello World"程序开始Pharo编程的旅程。Pharo采用面向对象的编程范式,所以我们需要创建一个对象来代表我们的程序。

| greeting |
greeting := 'Hello World'.
Transcript show: greeting.

在上面的代码中,我们声明了一个变量greeting,并将字符串'Hello World'赋值给它。然后,我们使用Transcript对象的show:方法将greeting打印到开发环境的控制台上。

类和对象

在Pharo中,类是对象的模板,对象是类的实例。类定义了对象的行为和属性。让我们创建一个简单的类来理解这一概念。

Object subclass: #Person
    instanceVariableNames: 'name age'
    classVariableNames: ''
    poolDictionaries: ''
    category: 'Tutorial'

上述代码创建了一个名为Person的类,它有两个实例变量nameage。通过这个类,我们可以创建具体的人物对象,并设置他们的姓名和年龄。

| john |
john := Person new.
john name: 'John Smith'.
john age: 25.

我们可以使用小数点操作符来访问对象的实例变量,并使用冒号操作符设置实例变量的值。

方法

方法是类中的行为。我们可以在类中定义多个方法,来实现相应的功能。让我们给Person类添加一个greet方法。

Person>>greet
    Transcript show: 'Hello, my name is ', name; cr.

在上面的代码中,Person>>greet定义了一个名为greet的方法。这个方法使用Transcript对象的show:方法打印一条问候语,并在问候语中引用name实例变量。cr是一个特殊的字符,表示换行。

现在,我们可以让john对象调用greet方法,看看它的效果。

john greet.

你将在控制台上看到类似于"Hello, my name is John Smith"的输出。

继承

Pharo支持继承的概念,即一个类可以从另一个类派生出来。派生类可以继承父类的属性和方法,并可以添加自己的额外功能。让我们创建一个Student类,它是Person类的子类。

Person subclass: #Student
    instanceVariableNames: 'id'
    classVariableNames: ''
    poolDictionaries: ''
    category: 'Tutorial'

上述代码定义了一个名为Student的类,它有一个额外的实例变量id。现在,我们可以创建一个Student对象,并访问它继承的nameage属性,以及它自己的id属性。

| alice |
alice := Student new.
alice name: 'Alice Johnson'.
alice age: 20.
alice id: 12345.

总结

本篇博客提供了一个简要的Pharo编程入门教程,介绍了一些基本的概念和功能。Pharo是一个功能强大且易于使用的编程语言和开发环境,通过使用敏捷软件开发方法论,可以加快软件开发过程并提高代码质量。希望这篇教程能够帮助初学者理解和掌握Pharo编程的基本知识。

Happy coding!


全部评论: 0

    我有话说: