我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!

Posted 坚果加油

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!相关的知识,希望对你有一定的参考价值。

第一篇​ ​#聊一聊悟空编辑器# WuKong,让我们编辑文章更便捷!​

第二篇​ ​该怎么顺利有益地度过大学四年 ​

第三篇​如何在 Flutter 中构建任何类型的应用程序(并克服教程地狱)

第四篇​Flutter的安装与设置(第一节)

这是我在51的第五篇

接的是

第三篇​ 如何在 Flutter 中构建任何类型的应用程序(并克服教程地狱)

我在第三篇说了​ 如何在 Flutter 中构建任何类型的应用程序(并克服教程地狱)​以及编程就是玩乐高的过程

现在接着说


我如何构建复杂的应用程序


事实证明,我花了几个月的时间构建了一个复杂的习惯跟踪应用程序,并创建了一个关于它的完整 Flutter 仓库。我将分享我是如何做到的。

以下是 Flutter 网络演示的最终结果:

\'我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!_如何编程\'

注意:如果它在移动设备上不起作用,在桌面上尝试。

尽管最近我开源了好几个复杂的应用程序,

​https://github.com/ITmxs/flutter_bloc_super​

目前已新增桌面支持

预览地址:​​http://47.117.1.68:251/#/​


但这对我来说仍然是一个挑战,因为这个应用程序有很多自定义 UI 和动画。在我开始之前,我不知道如何预先实现其中的许多功能,也不太了解 Flutter 动画。

所以我想分享我在尝试构建这个复杂应用程序时的思考过程。

而且我可以保证,在完成这个项目之前,我有一些错误的开始并经历了大量的反复试验。但我并没有被卡住,并找到了解决我一路上遇到的每一个问题的方法。

那我是怎么做的呢?

对现有应用进行逆向工程

该项目的目标是创建现有应用程序的工作克隆。所以我从 App Store下载了程序,并花了很多时间弄清楚主要构建块是什么以及如何实现每个功能。

一些最具挑战性的功能是:

  • 通过点击并按住手势控制的动画任务完成环
  • 可以通过编程或手势触发的 3D 页面翻转过渡
  • 完全自定义的动画主题:多个颜色主题,每个主题的多个变体

当我开始时,我不知道如何构建这些功能中的任何一个。但我知道它们都涉及动画。

文档和谷歌搜索可以走很长的路


幸运的是,Flutter 文档​​对动画​​有很好的​​介绍​​,以及有用的​​代码实验室​​,可以帮助您练习基础知识。

所以我阅读了文档(多次),并试图创建一个心理地图,说明哪些动画 API可以用于哪些应用程序功能

\'我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!_flutter_02\'

阅读文档可以让您对给定的主题有一个广泛的了解,并对什么是可能的,什么是不可能的有一些直觉。

然后我开始构建功能,一次一个。

有些东西,比如任务完成环,并不太复杂,因为我已经有了一些关于如何使用自定义画家显式动画的先验知识:

\'我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!_如何编程_03\'


但是其他诸如翻页过渡之类的事情超出了我的能力范围,而且我没有看到应用 Flutter 动画 API 来获得我想要的效果的明显方法。

所以我使用谷歌搜索并找到相关教程再去摸索​​,它们使我朝着正确的方向前进。

其中一个教程中的代码进行了试验,将其分解并重新组装(就像您对乐高积木所做的那样),然后我从中创建了我的第一个解决方案。但是示例代码对于我的用例来说不够好,我需要更进一步。

在这个阶段,我没有做的是回到网上寻找其他教程。

相反,我利用从 Flutter 文档中学到的知识改进了我的解决方案,创造了一些前所未有的全新东西


有时,没有现成的教程或软件包可满足您的需求。所以你需要从头开始构建东西,或者通过结合已有的东西来构建。这是一个很好的学习方式。

以上是关于我如何构建复杂的应用程序,逆向工程,文档和google绝对是你的利器!的主要内容,如果未能解决你的问题,请参考以下文章

《构建之法》读后感

CMake入门实践 :复杂的HelloWorld项目

CMake入门实践 :复杂的HelloWorld项目

Drive SDK REST 推送通知

《20170906-构建之法:现代软件工程-阅读笔记》

如何根据vs工程构建makefile文件