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

吐槽: 现在搞个项目太复杂了

  •  1
     
  •   c3de3f21 · 2023-09-01 09:23:22 +08:00 · 5037 次点击
    这是一个创建于 418 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 首先是项目肯定不止两三种预言了
    • 其次是配置文件多的要死,尤其是前端,这 lint 那.rc 的
    • 然后是还得自己写脚本弄 ci ,这里可能是原生语言也可能是 bash
    • 总结:各种文件配这配那
    32 条回复    2023-09-05 09:29:21 +08:00
    c3de3f21
        1
    c3de3f21  
    OP
       2023-09-01 09:24:01 +08:00
    有没有什么办法让项目工程层面的复杂度降下来。。。
    ODESZA
        2
    ODESZA  
       2023-09-01 09:31:07 +08:00
    要不你试着对接一下客户,尝试一下 精神与体力的双重煎熬
    jakes
        3
    jakes  
       2023-09-01 09:33:56 +08:00
    配置个框架,搞成脚手架就好了,后面新建工程就用脚手架生成。
    agagega
        4
    agagega  
       2023-09-01 09:37:42 +08:00
    所以多语言 IDE 是大趋势,像 JB 迟迟不做 C++插件,CLion 又不支持 Java ,遇到这俩混合的项目就很难搞
    c3de3f21
        5
    c3de3f21  
    OP
       2023-09-01 09:40:01 +08:00
    有没有什么办法让项目工程层面的复杂度降下来。。。
    @ODESZA 算了算了,红红火火恍恍惚惚
    c3de3f21
        6
    c3de3f21  
    OP
       2023-09-01 09:40:26 +08:00   ❤️ 1
    @agagega 那岂不是要分文件夹用不用的 IDE 去打开项目了,感觉更难受
    LandCruiser
        7
    LandCruiser  
       2023-09-01 09:45:17 +08:00
    这 lint 那 rc 不都是 JSON 吗?看不懂 JSON 还是? CI 部署一个 jenkins 写个 shell 一共也没几行 。不是很懂难点在哪,问 gpt 就能弄好
    engiun
        8
    engiun  
       2023-09-01 09:48:23 +08:00
    所以这种复杂度是什么造成的?以前好像也是这样吧
    abcbuzhiming
        9
    abcbuzhiming  
       2023-09-01 09:49:53 +08:00
    @agagega 等一下,你为啥一定要坚持在一个 IDE 窗口里编写多种语言呢?你再开一个 IDE 窗口写另外一个语言不行吗?总不至于你那 Java 项目和 C++项目是互相耦合的,必须在一块开发?
    dobelee
        10
    dobelee  
       2023-09-01 09:54:44 +08:00 via iPhone   ❤️ 2
    @agagega 这是你们的设计问题吧。。分别打开就好了。
    bojackhorseman
        11
    bojackhorseman  
       2023-09-01 10:01:31 +08:00
    lint 不用也没事吧
    crazyTanuki
        12
    crazyTanuki  
       2023-09-01 10:03:13 +08:00
    不能用 js 全栈吗?
    SuperMild
        13
    SuperMild  
       2023-09-01 10:05:19 +08:00
    小项目没有必要搞那么复杂。

    项目的复杂度是与项目规模相关的,一般需要多人合作的项目,为了规范化和扩展性需要引入很多辅助性的东西,而且一旦整个流程理顺了之后,日常开发还是非常方便的。

    小项目,大多数情况下(比如你正在使用的 V 站),前端就 JQuery 一把梭,根本不需要任何配置,webpack 或 vite 之类的也完全不需要,直接写 js 直接在浏览器运行就行了,方便到爆。后端用 Python FastAPI 或 Go Gin 之类的也是又清爽又简单,有啥复杂的?
    otakustay
        14
    otakustay  
       2023-09-01 10:16:05 +08:00
    你都想快速搞了,还要 lint 干啥,js+node 一把梭
    CodeCodeStudy
        15
    CodeCodeStudy  
       2023-09-01 10:27:25 +08:00
    @SuperMild #13 FastAPI 相比于 Tornado ,有什么优势吗?
    c3de3f21
        16
    c3de3f21  
    OP
       2023-09-01 11:22:41 +08:00
    总感觉工程化工程化最后过于工程化,一个项目没有任何业务就已经写了很多东西配了很多规则和插件了
    dengshen
        17
    dengshen  
       2023-09-01 12:19:44 +08:00 via iPhone
    用 js 。项目和配置文件都可以用
    des
        18
    des  
       2023-09-01 12:27:13 +08:00 via iPhone
    有没有一种可能,你可以完全不用这些,新建个文件夹打开 index.html 就可以开始写了
    caixiangyu17
        19
    caixiangyu17  
       2023-09-01 12:30:26 +08:00   ❤️ 1
    你要知道这么多配置的目的是啥。
    有的可能是为了敏感信息配置。
    有的可能是为了各种不同环境的设置,新人快速搭建工作环境,扩展快速部署新的服务器。
    有的可能是为了让你一键跑测试
    有的可能是让你自动化部署
    有的可能是帮你检查代码缺陷,安全问题
    有的可能是权限管理,让你不能够做出格的事情,比如实习生误删库。
    有的可能是等等等等
    所以你要啥?如果你只做个自己的博客,后端都不需要,jquery 页面都能一把唆。需要改什么打不了登录服务器,vim 直接临时修改都行。
    所以没有需求,你就没有评判标准。你觉得太复杂的项目,可能有的公司还觉得太简陋了。你觉得太简单的东西,对于小公司都过重了,人家只要 wordpress 就够了。
    treblex
        20
    treblex  
       2023-09-01 12:45:28 +08:00
    最近学后端自己写 html 了,真的爽,配合模板引擎也不差事儿
    lingo
        21
    lingo  
       2023-09-01 13:08:22 +08:00
    php 吧。不带框架的那种(斜眼笑
    loveDiu4ever
        22
    loveDiu4ever  
       2023-09-01 14:08:52 +08:00
    你是不是写 node?或者 js ?

    如果你是前端,那么最好最小化前端脚手架,比如用 next nuxt sveltekit 这种前后端同构的来解决前端工具链过多的问题。
    如果是 node ,你可以使用 deno bun 等来替代 node 来使用,或者其他 node 生态工具来解决开发环境各种配置太多的问题。 比如这篇文章 https://deno.com/blog/node-config-hell

    bash 本身不难,而且用你熟悉的语言写 bash 脚本的库也不少
    SuperMild
        23
    SuperMild  
       2023-09-01 14:53:52 +08:00
    @CodeCodeStudy 在两个框架都没用过的前提下,FastAPI 更易学易用一点。如果已经熟练了 Tornado ,那 FastAPI 就没啥优势了。
    Promtheus
        24
    Promtheus  
       2023-09-01 14:58:17 +08:00   ❤️ 2
    三两下就搞定这么简单的话 为啥要花这么多钱雇你啊
    murmur
        25
    murmur  
       2023-09-01 15:13:01 +08:00
    所以我第一件事:关掉 eslint
    第二件事 .ts 扩展名改成.js

    世界立刻清净了
    c3de3f21
        26
    c3de3f21  
    OP
       2023-09-01 16:49:02 +08:00
    @Promtheus 这话在理,哈哈哈哈哈
    sun1993
        27
    sun1993  
       2023-09-01 16:58:15 +08:00
    搞个脚手架
    c3de3f21
        28
    c3de3f21  
    OP
       2023-09-01 17:00:09 +08:00
    @murmur 质朴
    CodFrm
        29
    CodFrm  
       2023-09-02 00:59:29 +08:00   ❤️ 1
    我 go 的话,自己写了个模板,每次 copy 一下就好了

    前端直接用对应框架的脚手架,部署文件也是 copy 原有的
    noobakong
        30
    noobakong  
       2023-09-02 01:16:28 +08:00   ❤️ 1
    https://github.com/noobakong/vite-react-ts-tailwind-zustand-query-starter

    恰好最近写了一个前端的 quickly starter template ,可以采取类似的形式

    一般主流的体系 比如 react vue 什么的都会有大批的起手模板的

    工作几年我是觉得 lint 什么的 ,在团队协助中,千万不要排斥,要不然代码根本没法看
    DiamondYuan
        31
    DiamondYuan  
       2023-09-05 08:57:35 +08:00 via Android
    全公司有几千个项目,用了几百个不同的 eslint 配置。
    c3de3f21
        32
    c3de3f21  
    OP
       2023-09-05 09:29:21 +08:00
    @DiamondYuan 那太完蛋了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1226 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:23 · PVG 07:23 · LAX 16:23 · JFK 19:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.