[🧑💻] 因为 AI(Gemini),学习 Flutter 时狠狠破防的故事
✨ Gemini 2.5 Pro 的摘要
今天在学习 ‘Flutter 应用开发基础’ 课程第 23 讲实战部分时,我经历了一次很强烈的破防。
- 原文: http://blog.naver.com/hyeogikarp/223886583697
- Naver 发布时间: 2025/06/02 22:19 KST
- 原文分类: 开发
原文
今天在学习 ‘Flutter 应用开发基础’ 课程第 23 讲实战部分时,我经历了一次很强烈的破防。
我想配合几张简单的样例图片,说明一下我在学习开发时是怎么使用 AI,然后又怎么被现实狠狠打了一下的。
(另外,也希望这能成为一个不错的启发示例,给那些还不太知道该怎么把 AI 用在开发/学习上的人一点感觉。)


给我的任务,是把左边的空白页面做成右边的蓝色页面。

这是最开始给出的空白页面。
但我突然好奇了。如果给 Gemini 2.5 Pro 附上截图,再附上样例代码,它到底能把画面实现得多接近?





哈哈哈
不是……天啊哈哈哈
我知道它性能好。知道是知道……但看到它几秒钟就这么唰地完成了,真的无语到笑出来哈哈
不过,在这里我并没有放下对性能的怀疑。
这家伙给出的代码用了很多 Stack 和 Positioned 之类的“强制固定位置” Widget,我怀疑这种方式是不是有点取巧。感觉它只是给出了刚好适合我要求的那张图的代码?
所以我问了。


果然,看来更正统的感觉还是我的方式。
既然都到这一步了,就不得不分析一下讲师的 solution(答案)代码了。
讲师到底是用两种方式中的哪一种实现的呢?





?????
欸?
真的……?
不可能吧……
讲师也用 Stack 和 Positioned?哇……
哎,就算这样,讲师的代码应该还是更好吧,怎么说也是。


什么啊……
讲师代码和 Gemini 一键代码的差别,居然只不过是加透明度函数的“种类”不同??

这是我读 VSCode 的错误消息时就已经知道的知识。
withOpacity 随着版本升级被 withValues 取代,最近已经是不推荐使用的函数。

哇。它好像误会我是在尝试 prompt injection 攻击(简单说,就是用假信息给 AI 洗脑并注入进去)。突然拒绝回答了。

我让它“搜索”一下,然后让“你自己”判断,它才幸好重新开始回答。
搜完之后承认了。
果然我们家在民真聪明。

哇……真的狠狠破防了。
结果讲师的代码和 Gemini 的代码几乎一模一样,只差了一个小小的“词”。

这部分真的让我起鸡皮疙瘩。
在这里,学习动力差点又一次哗啦啦地崩掉。
我现在还有理由坚持这种落后于时代的旧式学习方法吗……?
一瞬间我有点上头,突然很冲动地想把课程什么的全都扔掉,转去 Vibe Coding,疯狂产出 MVP 应用。真的说不准啊。那也许才是更明智的选择……
不过,我很快冷静下来,决定重新集中到给我的课题上。
我会在 6 月之前把 Flutter 应用开发基础/实战课程全部结束。
在制作 MVP 应用的过程中,我可以像今天的例子一样从 “AI” 那里获得“帮助”,但不会从 “AI Agent” 那里拿“成果物”。
因为如果那样做,随着项目规模变大,我无法承受的技术债会堆得像山一样高,最后只能把一切都依赖给 AI。
……大概吧。前提是 AI 技术的发展不会比我预想的还要更快……
留下评论