安卓Flutter开发基础(一)

想要学习Dart语言的可以在 https://dartpad.cn/ 练习熟悉。活不多说,直接开始:

1、程序入口

在Dart里,每一个App都必须有一个顶级的 main() 函数作为应用程序的入口

void main() {
    print("hello");// 控制台输出日志
}

2、变量

Dart是类型安全的,它使用静态类型检查和运行时的组合,检查以确保变量的值始终与变量的静态值匹配类型。尽管类型是必须的,但某些类型注释是可选的,因为Dart会执行类型推断。

在Dart中,未初始化的变量初始值为null(注意:数字在Dart中也被当成对象,所以带有数字类型的变量未初始化的值也为null)

void main() {

  String a = '100';
  var b ='100';
  int c;

  print(a);
  print(b);
  print(c);
}

--------------------

100
100
null

3、检查null或者0

在Dart中,只有布尔值true被视为true

从Dart 1.12 开始,null-aware运算符可以进行null检查,“?.” 运算符在左边为空的情况下会阻断右边的调用,“??” 主要作用是当表达是左边为null时为其设置默认值。

bool isConnected(a,b){
  bool outConn = outgoing[a]?.contains(b) ?? false
  bool inConn = incoming[a]?.contains(b) ?? false
  return outConn || inConn
}

void main() {

  print(null);
  print(true??false);
  print(false??false);
  print(null??false);

}

-----------------------

null
true
false
false

4、异步编程

Dart 支持单线程执行,Dart使用Future来表示异步操作

async和await

async函数返回一个Future,函数的主体是稍后执行,await运算符用于等待Futrue:

getIp() async{
  var url = 'https://httpbin.org/ip';
  var request =await HttpRequest.request(url);
  String ip = json.decode(request.responseText)['origin'];
  print(ip);
 }

5、声明式UI界面 

什么是声明式UI ?

通常Android和ios的框架使用命令式UI编程的风格,也就是我们目前的手写界面,手动构建xml布局,然后在UI变更时使用对应的f方法进行变更。

Flutter 为了减轻开发人员在各种UI状态之间转换的编程负担,Flutter让开发人员描述当前的UI状态,并且不需要关系它如何过渡到框架。

6、导包

7、Flutter项目结构

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值