2025.06.02 (一)

Gemini 2.5 Pro 的摘要  

今天在学习 ‘Flutter 应用开发基础’ 课程第 23 讲实战部分时,我经历了一次很强烈的破防。

原文

今天在学习 ‘Flutter 应用开发基础’ 课程第 23 讲实战部分时,我经历了一次很强烈的破防。

我想配合几张简单的样例图片,说明一下我在学习开发时是怎么使用 AI,然后又怎么被现实狠狠打了一下的。

(另外,也希望这能成为一个不错的启发示例,给那些还不太知道该怎么把 AI 用在开发/学习上的人一点感觉。)

naver-140-001

naver-140-002

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

naver-140-003

这是最开始给出的空白页面。

但我突然好奇了。如果给 Gemini 2.5 Pro 附上截图,再附上样例代码,它到底能把画面实现得多接近?

naver-140-004

naver-140-005

naver-140-006

naver-140-007

naver-140-008

哈哈哈

不是……天啊哈哈哈

我知道它性能好。知道是知道……但看到它几秒钟就这么唰地完成了,真的无语到笑出来哈哈

不过,在这里我并没有放下对性能的怀疑。

这家伙给出的代码用了很多 Stack 和 Positioned 之类的“强制固定位置” Widget,我怀疑这种方式是不是有点取巧。感觉它只是给出了刚好适合我要求的那张图的代码?

所以我问了。

naver-140-009

naver-140-010

果然,看来更正统的感觉还是我的方式。

既然都到这一步了,就不得不分析一下讲师的 solution(答案)代码了。

讲师到底是用两种方式中的哪一种实现的呢?

naver-140-011

naver-140-012

naver-140-013

naver-140-014

naver-140-015

?????

欸?

真的……?

不可能吧……

讲师也用 Stack 和 Positioned?哇……

哎,就算这样,讲师的代码应该还是更好吧,怎么说也是。

naver-140-016

naver-140-017

什么啊……

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

naver-140-018

这是我读 VSCode 的错误消息时就已经知道的知识。

withOpacity 随着版本升级被 withValues 取代,最近已经是不推荐使用的函数。

naver-140-019

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

naver-140-020

我让它“搜索”一下,然后让“你自己”判断,它才幸好重新开始回答。

搜完之后承认了。

果然我们家在民真聪明。

naver-140-021

哇……真的狠狠破防了。

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

naver-140-022

这部分真的让我起鸡皮疙瘩。

在这里,学习动力差点又一次哗啦啦地崩掉。

我现在还有理由坚持这种落后于时代的旧式学习方法吗……?

一瞬间我有点上头,突然很冲动地想把课程什么的全都扔掉,转去 Vibe Coding,疯狂产出 MVP 应用。真的说不准啊。那也许才是更明智的选择……

不过,我很快冷静下来,决定重新集中到给我的课题上。

我会在 6 月之前把 Flutter 应用开发基础/实战课程全部结束。

在制作 MVP 应用的过程中,我可以像今天的例子一样从 “AI” 那里获得“帮助”,但不会从 “AI Agent” 那里拿“成果物”。

因为如果那样做,随着项目规模变大,我无法承受的技术债会堆得像山一样高,最后只能把一切都依赖给 AI。

……大概吧。前提是 AI 技术的发展不会比我预想的还要更快……

留下评论