漂亮的UI
Flutter内置MD设计风格及iOS组件,更有丰富的手势API,流畅的滚动体验和平台认同感会让用户感到愉悦。
#####现代的响应式框架(Modern,reactive framework)
利用Flutter响应式框架和丰富的平台,布局和功能组件是的UI构建非常简单。使用灵活并且强大的API(2D,动画,手势,性能等)可以解决在UI上各种问题。
int counter = 0;
void increment() {
// Tells the Flutter framework that state has changed,
// so the framework can run build() and update the display.
setState(() {
counter++;
});
}
Widget build(BuildContext context) {
// This method is rerun every time setState is called.
// The Flutter framework has been optimized to make rerunning
// build methods fast, so that you can just rebuild anything that
// needs updating rather than having to individually change
// instances of widgets.
return new Row(
children: <Widget>[
new RaisedButton(
onPressed: increment,
child: new Text('Increment'),
),
new Text('Count: $counter'),
],
);
}
}
#####使用native特性和SDKs
我们使用平台APIs,第三方SDKs和native代码开发APP。Flutter可以让你在iOS和Android继续使用Java,Swift,Objective-C代码并且使用native特性。
访问平台特性很简单。下边的代码片段开始:
var batteryLevel = 'unknown';
try {
int result = await methodChannel.invokeMethod('getBatteryLevel');
batteryLevel = 'Battery level: $result%';
} on PlatformException {
batteryLevel = 'Failed to get battery level.';
}
setState(() {
_batteryLevel = batteryLevel;
});
}
学习如何使用包(packages),或者写platform channels,使用native代码,APIs和SDKs。
统一的开发标准
Flutter拥有工具及库帮助你简单快速地在iOS和Android上实现你的想法。若你还没有任何移动开发经验,那么Flutter将会是你构建漂亮的移动APP的一种简单快速的额方式。若你是有经验的iOS或者Android开发人员,那么你可以使用Flutter组件,并且继续使用已有的Java/Objective-C/Swift程序。
构建
漂亮的APP UI
丰富的2D GPU加速APIs
响应式框架
动画/动作 APIs
兼容Android Material组件及苹果组件样式
流程的编码体验
急速热加载技术
IntelliJ:重构,自动补足功能等
Dart语言及核心库
包管理
拥有App所有特性
与移动OS APIs&SDKs互操作性
Maven/Java
Cocoapods/ObjC/Swift
优化
测试
Unit测试
继承测试
无设备测试
Debug
IDE debug
基于网络debug
异步/唤醒感知
表达式求值程序
配置
时间线
CPU和内存
应用性能图标
部署
编译
Native ARM程序
消除无效代码
发布
App市场
Play Store
标题安装Flutter
在国内安装Flutter需要首先需要一个值得信任的国内镜像。在镜像上边保存着Flutter需要的依赖及相关库,包等。为了使用Flutter,需要使用一个备用存储位置,我们需要配置环境变量。
配置环境变量名:
PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL。
在windows系统中,需要在环境变量设置中添加:
PUB_HOSTED_URL : https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL : https://storage.flutter-io.cn
然后运行Git命令(前提是安装了GitBash工具):
总结
这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码
因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
CodeChina开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》
列技术文章等,资源持续更新中…**