China, Northeast Forestry University, Software Engineering, Applications for Mobile, 2020
移动终端软件设计,为东北林业大学软件工程专业第6学期的一门专业选修课。
主讲教师:王波老师
最近几年持续关注移动端的跨平台(iOS/Android)解决方案,初期的H5/PhoneGap,崛起的React Native,以及最新的Flutter。
在综合比较原生Android开发/Flutter/React Native后,决定弃用基于原生Android开发技术的教学,切换到Flutter作为课程最新开发框架。
Flutter稳定版已发布1年有余(current 2020-04),flutter社区稳定健壮,各种插件框架日趋丰富,
且是Google下一代系统Fuchsia OS的官方开发框架。
多范式的Dart语言,拥有了JavaScript的灵活,弥补了Java单继承优点带来的缺点的混合(有点绕嘴),简洁高效。
回想Android 2.3时代,授课时带学生设计的模拟微信打飞机小游戏(以儿时魂斗罗通关音乐为背景音乐),
至去年基于Android 9的最后一次原生开发教学,已经过去8年了
感谢可爱的学生们的支持,以及各种日新月异的IT技术给我带来的快乐
- Flutter v1.17.3
- Android Studio 4.0
- Android 10 API 29
- VS Code 1.43.2
鉴于开发环境适配的复杂性,以及至少8GB内存才能撑起的基于AVD模拟器的开发环境。建议采用官方提供的调试平台测试学习
Android Studio太占内存,切换到VS Code开发
Flutter更新至1.17。修复了需手动降级SDK至28的问题
无需添加阿里云gradle仓库配置,也可完成项目的初始化
.vscode/launch.json运行配置,在当前在主函数的dart文件按,F5,自动按Flutter项目加载执行
Networking
Cart
SharedPreferences; Provider
DataTable; RefreshIndicator; AnimatedList
Controller
TextFormField; CheckboxListTile;
SwitchListTile; RadioListTile; DropdownButton; Form; ModalBottomSheet
Dialog; Drawer; Tabs; Bottom Navigation; NestedScrollview;
Card; AppBar; StatefulWidget; BuildContext; Gestures; Route;
Row; Column; Container; GridView; ListView; ListView Separated; ListTile; Lake;
Dart; MaterialApp;