HarmonyOS介绍

HarmonyOS ,中文称鸿蒙系统或鸿蒙 OS ,是一款面向万物互联的操作系统。
将来不光面向手机、平板。而是面向整个智能生态。可以说:未来一切万物皆可搭载鸿蒙操作系
统。
如上图所示:华为的 1+8+N 战略
未来前景如何
万物皆可互联,会造就多少开发岗位?
万物皆可互联,企业在这种浪潮下是否有更多做项目机会?

当前情况如

 根据boss招聘看到目前岗位比较客观,且薪资范围不错

2025年可期待节点

  第二季度开始

HarmonyOSOpenHarmony

   OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,目标是  面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平 台,促进万物互联产业的繁荣发展

   OpenHarmony拥有了操作系统最核心的功能、 HarmonyOS相当于在OpenHarmony的基础上又添加了 自己的一些内容。(安卓和MIU I

   以后一切基于OpenHarmony的都可以称之为鸿蒙操作系统

DevEco

介绍

   HarmonyOS应用开发的集成开发环境(IDE

   目前(截止到2024.12.23)最新版本是: 5.0.5.310

下载与安装

        下载地址: DevEco Studio-鸿蒙应用集成开发环境(IDE)-华为开发者联盟 

        点击立即下载选择适合的版本下载(需要先登录)

        安装步骤:(windows版为例)

        双击 deveco-studio-5 .0 .5 .310 .exe ,然后选择安装位置 

 然后出界面点下一步

再选择安装目录:注意不能有中文目录

建议把选项都勾上

        一个是添加到桌面

        一个是能够对着文件夹或者文件能够右键选择DevEco打开

        一个是将来在终端里可用

最后点安装即可

安装后第一次打开,会出现以下提示(问是否要导入配置),我们这里没有配置,直接按OK

 第一次打开还会弹出欢迎界面,点Agree即可

创建项目

  第一次打开会有如下界面,点红框处即可创建项目

切换为中文

运行项目与效果展示

点击右侧预览器即可看到界面效果

AI辅助编程 - CodeGenieDevEco插件安装

DevEco可以通过插件丰富功能

例如CodeGenie可以让DevEco具备AI编码助手,辅助我们学习

安装方式如下

下载插件(下DevEco同页面下翻)得到一个压缩包,如下图(不要解压)

回到DevEco,打开设置

去网页登录后,如果登录成功,再回到DevEco打开CodeGenie

 

ArkTS基础

介绍

.   ArkTSHarmonyOS优选的主力应用开发语言。

.   ArkTS在继承TypeScript语法的基础上进行了优化,以提供更高的性能和开发效率。

.   目前流行的编程语言TypeScript是在JavaScript基础上通过添加类型定义扩展而来的,而ArkTS则是 TypeScript的进一步扩展

  如图所示

 ArkTSTypeScript类型更为严格,废除了any、有效保障程序在运行态更为可靠且效率更高。

编写位置

目前代码先暂时写在项目的  Entry->src->main->ets->pages>Index .ets 文件的最上方

输出语句编写与输出结果查看

  语法

console .log( '要输出的内容 ' )

DevEco下方点击日志,再选择Phone即可查看

基础数据类型

 

应用的本质就是对数据进行展示和处理 

   三种基本数据类型

number:数值型,所有的数字都属于数值型, 在代码中直接写数字,就是number类型

string:   字符串型,所有的文字都属于字符串型,在代码中用单引号或者双引号和反引号 `)包起来的都是字符串, 一定要成对出现

boolean: 布尔型,就两个值,一个true ,一个false,代表两种状态:对和错、勾或者没勾      

 例:

10    //  数值型,number

'a '  //  字符串型,string

"abc "  //  字符串型,string  `你好`  //  字符串型,string


'10 '  //  字符串型,string " "  //  字符串,空字符串

' '  //  空字符串 ` `  //  空字符串


true  //  布尔类型  false  //  布尔类型


'true '  //  字符串

注释符

让程序忽略某段代码,不执行

最大的作用:给代码做注解(说明) 

单行注释:

        符号://

        快捷键: ctrl + /

        他所在的这一行被程序忽略 

多行注释(块注释)

        符号: /*  里面是注释的内容  */ 

         快捷键: shift + ctrl + /

        它里面的所有内容都会被程序忽略

变量与常量

  什么是变量?

        变量相当于是一个容器。这个容器是用来存数据的。

        变量存的数据是可以改变的。

  什么是常量?

        也是一个容器,也是存数据的容器。

        常量不可改变。

        它一般用来存固定不变的数据。 

  在代码中,如何声明变量与常量

声明:相当于就是创造 

  语法

let  变量名 :  数据类型 =  值 //  声明变量

const  常量名 :  数据类型 =  值 //  声明常量

总结:用let声明的是变量,用const声明的是常量       

例:

let  age :  number  =  16     //  声明了一个叫age的变量,它的值保存的是16

 age  =  99  //  不报错,因为变量可以改

const  pi :number  =  3 .14  //  声明了一个叫pi的常量,他的值是3 .14

 pi  =  99  //  报错,因为常量不可改

如何使用变量或常量:

        直接写变量名或常量名就是取出他们的值

注意事项:

1.  变量名 和 '变量名'代表的意义完全不一样 

        变量名 代表取出变量的值

        '变量名' 代表有一个字符串,它的内容是变量名 

let  age :  number  =  16

age  //  取出age的值   如果输出,就输出16

'age '  //  代表这个字符串的内容是age    如果输出,就输出age

2.  同一个区域里,变量名、常量名不能重名,重名就会报错

let  age :  number  =  16

let  age :  number  =  666  //  报错

3.  变量的类型在声明的那一刻就已经确定,所以后面即使要改值,也只能改它同一个类型的 值。不同类型的值会报错

let  str :  string  =   'abc '

console .log(str)  //  输出abc



str  =   'hello '

console .log(str)  //  hello str  =  99  //  这句话报错

标识符命名规则与规范

  标识符:程序里我们自己起的名字都叫标识符,例如变量名、常量名 

  规则:必须要遵守,不遵守就报错。

  规范:建议你做,但是不遵守不会报错。规范能让代码更好,更易读。

  标识符的规则:

1.  不能用系统内内置的关键字做为标识符

            内置的关键字:就是编程里,预先提供好的具有特殊含义的字符 

                    例: letconst

2.  标识符的组成只能是字母、数字、下划线、  $,而且数字不能开头

let  xxx:string  =   'abc '

let  num1 :  number  =  16

let  _num1$ :  number  =  99


//  let  1_num$ :  number  =  99    //  报错,因为数字不可开头


//  let  num@ :  number  =  1000   //  报错,变量名只能是字母、数字、下划线、$ ,而这里有@符号, 不允许


let  fhjdsfgvsd$$        2323fjdhf :  number  =  99999

标识符的规范:

        起名要有意义,最好做到变量名一看就知道存的是什么数据

let  age :number  =  16

let  money :  number  =  9999

let  name :  string  =   '刘德华 '

如果一个变量由多个单词做成,建议除了第一个单词外,其余单词首字母大写(驼峰命名法)

let  musicName :  string  =   '后来 '


let  musicSingerName:string  =   '刘若英 '

算术运算符

+

        把两个数相加,得到和。 例: 10 + 20 得到30 

        特殊含义:

                  如果+两边有一个是字符串,结果一定是字符串,字符串的内容是两边拼接起来

'abc' + 'zxc' // 最后会得到 'abczxc'
let str1: string = 'hello'
let str2: string = ' world'
str1 + str2 // 得到 'hello world'
let num1: number = 10
let str1: string = 'abc'
console.log(num1 + str1) // '10abc'
let num2:number = 10
let str2: string = '20'
console.log(num2 + str2) // '1020

把两个数相减,得到差。  例: 10 - 5 得到5

*

把两个数相乘,得到积。 例: 10 * 5 得到50

 /

把两个数相除,得到商。 例: 10 / 5 得到2 

%

取模,或者也叫求余数。   10 % 3 得到 1;  10 % 2 得到 0

总结今日内容

介绍了HarmonyOS

        面向万物互联的操作系统

HarmonyOS OpenHarmony

        他们的内核都一样,但是HarmonyOSOpenHarmony加了华为自己的一些东西 

DevEco

        IDE:集成开发环境

        说人话:开发工具,就是写代码的地方

ArkTS

        输出语句: console.log( 字符串 ) 

        基础数据类型

                number: 数值,直接写数字

                string: 字符串,单引号、双引号、反引号包起来的都是字符串。成对出现,用单引号开 头就要用单引号收尾

boolean: 布尔,truefalse 

变量:

        作用:保存数据

        特点:可以变(重新赋值)

 

        语法

let  变量名 :  数据类型 =  值

常量:

        作用:保存数据 

        特点:不可以变 

        语法:

const  常量名 :  数据类型 =  值

标识符命名规则与规范 

        规则:

                1.  不能是关键字

                2.  只能由字母、数字、下划线、 $组成,并且数字不能开头 

  规范:

                1.  起名要有意义

                2.  用驼峰命名法: 除了第一个单词外,其他单词首字母大写 

 算术运算符:

        大部分跟数学一样 

         +

                如果相加两方有一个是字符串,那么得到的结果一定是字符串,并且这个字符串内 容是两边拼接起来

作业

单选题(每题5 ,共100分)

1.  HarmonyOS主要面向的是? 

 A  仅手机和平板

 B  面向整个智能生态

 C  只是物联网设备    

 D  专为服务器设计

2.  OpenHarmony是由哪个组织孵化及运营的开源项目? 

 A  腾讯基金会

B  百度基金会

C  开放原子开源基金会 

D  阿里巴巴基金会

3.  ArkTS继承了哪种编程语言的语法?

A  JAVA

B  Python

C  TypeScript o      

D  C#

4.  ArkTS中,下列哪一个不是基本数据类型?

 A  number   B  string      C  boolean   D  object

5.  下面哪个关键字用来声明常量?

 A  var         B  let

C  const      D  static

6.  下列哪项是正确的注释方式? 

 A  这是单行注释

B  /*这是多行注释 */ o     

C  # 这是注释

D  A 和 B 都正确

7.  ArkTS中,以下哪个选项表示字符串类型的值?

 A  'hello' 

B  123

C  true

D  [1, 2, 3]

8.  哪个符号在算术运算符中代表取模运算?

 A  +    B  -    C  *      D  %

9.  如果将数字与字符串相加,结果会是什么类型?

 A  number       B  string

C  boolean       D  undefined

10.  下列哪个标识符命名是非法的?

A  user_name 

B  $userAge    

C  2nd User

D  userName2

 

11.  ArkTS中,如何声明一个名为 price 的变量并赋予它数值型的数据?

A   let price = "100

B  const price: string = "100"

C  let price: number = 10

D  var price = 100

12.  HarmonyOS“1 + 8 + N”战略中的 1”指的是什么?

 A  一种设备类型 o      B  一款应用程序 o      C  一个操作系统 o      D  一个用户账户

13.  如果尝试重新定义已经存在的变量名,会发生什么?

 A  程序没有任何反应

B  编译器报错

C  自动更新旧变量      

D  创建新的同名变量

14.  下面哪一项不是标识符的命名规则?

A  标识符不能以数字开头

B  标识符只能由字母、 数字、下划线、 $组成

C  标识符必须包含至少一个特殊字符

D  标识符不能是预定义的关键字

15.  以下哪一项是正确的布尔值?

 A  'true'   B  True      C  true      D  1

16.  如果想让两个数相乘,应该使用哪个运算符?

 A  +    B  -    C  /    D  *

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐