V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
pikay
V2EX  ›  程序员

这倒霉的一年,我又给自己的轮子迭代了一个版本

  •  1
     
  •   pikay ·
    kirakiray · 198 天前 · 1954 次点击
    这是一个创建于 198 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先直接进入主题,我写的 ofa.js 迭代到 v4 的版本了,最近用它来写了两个项目(顺便修了大量的 bug ),使用起来终于让我觉得比现在流行的前端框架好用了,终于好意思推荐给大家试试。

    顺便聊一聊这两年发生的事情

    我还记得两年前,我在 V2EX 上首次分享了这个框架。那时,我在一家相对轻松的公司工作,利用工作之余的时间,不断完善和改进了这个框架。那时候用 v3 的版本做项目,写起来很不流畅,觉得差了点什么,就没好意思再去推广了;而且那时候前端已经逐渐出现一些基于 web components 开发的前端框架,还有微前端解决方案,我觉得过段时间,应该会有个类似我这样的轮子,而且会比我这个更好用,所以也暂停维护,等待新框架崛起了;

    在那个公司工作我很开心,它会给员工充足的思考去执行任务,公司是专门帮别人做广告投放业务的;在那段时间,信用卡、保险、医美、房地产、游戏等等行业,被政策打击,我们的客户被锤得没钱投放了;最后互联网教育公司禁止上市,压垮了公司的最后一根稻草(客户),我被迫重新找工作;

    也是因为我这个框架,让我在短时间内,找到了一份在家办公的工作机会;在这家新公司的接下来的一年里,我开始使用 React 来开发产品,这段经历让我学习到如何和国际化接轨,例如习惯查阅英文文档(当然是使用翻译插件的辅助),使用 CI 自动化执行任务,使用主流测试框架(单元测试,e2e 测试等),这让我停滞多年的前端知识,得到大量的补充;

    当然,这个公司也给我带来了很繁重的工作,每个开发都是全栈,前端后端(nodejs)测试什么的,都得自己搞定,而且有很多在线 meeting ,也很少自己发挥的空间,必须局限在上面安排的思维来开发;这让我每天都加班都很晚,精神状态很差,听到 Slack 的气泡声都会有噩梦的感觉;

    终于到去年底,我也得到了解雇通知;准确来说是 “解除合作关系”,没有赔偿,只是潦草的结算了剩余工资;虽然我伤心了一阵子,但我的心总算从这份加班的工作中解放出去;

    噩梦的开始

    刚好疫情放开,能方便的去医院体检了;结果在过年前我的亲人 A 咳嗽,特地去医院拍 CT ,发现肺部有磨玻璃状结节;辗转了几个医院后,确诊下来是肺癌;我的心从过找工作变成了如何更好治愈这位亲人 A ;

    亲人不希望暴露具体身份,所以就只用 “亲人” 来代替;

    所幸在能找到的范围内,选择了一个最好的医院给这位亲人 A 治病,手术很成功,初期的肺癌,切除完成后,医生说每一段时间观察复诊就行了;

    一波未平一波又起,在亲人 A 住院期间,我收到了亲人 B 的患癌消息(这个亲人 B 虽然不是直系亲属,但我的人生和他呆的时间比我和父母呆的时间还久,是很亲近的关系);亲人 B 也是患肺癌,但是他的癌细胞已经扩散了,主病灶 CT 拍出来的肿块,和苹果那么大,已经是无力回天了;

    很快我又专注寻找治疗肺癌的方案,如何和药神买药,和申请实验中的靶向药;还有时常过去陪伴一下他,他也主动跟我聊日常,怎么弹吉他,钓鱼什么的,一副生死看淡的样子;坚持了几个月后,终于还是倒下了;亲人 B 跟我说过,后悔没有及时享乐,一直忙于工作,忽略了身体;

    在亲人 B 在医院坚持的期间,我的外婆也快到了寿终正寝的日子;两个星期前还在笑我的光头,眨个眼就进了 ICU 了;和死神博弈抢下外婆后,外婆就变得不认识我了(从小跟在外公外婆家,外公去世了,外婆算是现在最亲的);伤心于一个从小到大看着我的人,忘了我的存在;

    外婆出院后,家人想着落叶归根,她被带回了乡下,又坚持了一个月后去找外公了。

    这段时间真的很丧,亲人接连出事,身心疲倦,不想打游戏,不想工作,经常放空,思考哲学的问题,到底什么东西才是最重要的;

    辗转完上面的事情后,已经 6 7 月份了,不出意外的话,又有意外了;

    我身边的 亲人 C 腰椎出了大的问题,经过一段时间保守治疗失败后,还是去做手术了;一段时间我负责了家里的日常起居,不过不是生死离别,我已经相对淡然了;

    迭代的想法

    在刚解雇后的那段日子里,我查看过市面上的前端状况,发现并没有和我想象那样,出现那种更容易使用和高效的框架;我开始谋划 ofa.js v4 的迭代;经历过多年多个框架和平台的前端开发,我融汇了各种知识去改进 v4 ;

    虽然前面疲于生活,但还是把间断的时间,放在写代码上;最近的两个月 亲人 C 有家人一起照顾,我逐渐放开双手来写,迭代到现在 ofa.js v4 的版本;

    ofa.js v4 改变了什么东西

    和 v3 的另辟蹊径策略相比,v4 最大的改变是和现有标准兼容;包括如下

    • 不再使用自制的模块化,而是使用 ES Module ;
    • 标签声明式引用组件;
    • 和国际化接轨,改用英语备注和文档,有完整的测试和发布流程;
    • 单一文件的组件和页面( v3 是必须拆分逻辑和模板);

    想请问一下大家,这个项目还有什么改进的吗?

    几年前在这里得到网友建议,现在把自动化测试补上了,换成了英文,自己也用来开发过一段时间,现在能想到的是还要补 API 文档,不过如果没人用的话,我打算慢慢补,做其他比较紧急的事先;

    还有能给我个 star 吗?够猛的话说不定有走全职开源;

    https://ofajs.com/ 访问有时候会抽风,可以访问 https://ofajs-website.vercel.app/

    10 条回复    2023-10-16 18:23:00 +08:00
    rekulas
        1
    rekulas  
       198 天前   ❤️ 1
    这接二连三的,确实挺崩溃的,先(づ。◕‿‿◕。)づ抱抱,希望能早日回归正常心态和生活
    HiCode
        2
    HiCode  
       198 天前
    插个不太恰当的话题:

    生离死别见得更多一些,楼主可能就会开始往“命运”的方向去思考。

    当然,我不是诅咒,而是看完帖子有感而发。

    楼主加油!!!
    HiCode
        3
    HiCode  
       198 天前
    看了示例和一些文档,感觉非常有意思。

    搜索文档和 github 没看到浏览器版本兼容说明?
    pikay
        4
    pikay  
    OP
       197 天前
    @rekulas 谢谢,现在好多了 [抱抱]
    pikay
        5
    pikay  
    OP
       197 天前
    @HiCode 谢谢;首页第二块有介绍,2018 年的浏览器开始支持,2020 年后更新的浏览器都支持了;现在的国产浏览器都更新,试了一遍都能支持,具体哪个版本开始支持还不知道,不过 2021 年用微信测试没问题;
    HiCode
        6
    HiCode  
       197 天前
    @pikay 好的,我再看看文档,非常有意思的项目!
    imomoray
        7
    imomoray  
       197 天前 via Android
    加油💪
    elechi
        8
    elechi  
       197 天前
    外行赞一个
    pikay
        9
    pikay  
    OP
       197 天前
    @imomoray 谢谢
    pikay
        10
    pikay  
    OP
       197 天前
    @elechi 可以试一试,会 html 就能用了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1093 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 18:12 · PVG 02:12 · LAX 11:12 · JFK 14:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.