V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
005008
V2EX  ›  程序员

从前端到全栈

  •  
  •   005008 · 2021-07-12 20:31:59 +08:00 · 5592 次点击
    这是一个创建于 1262 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近业余独立完成了一个全栈小项目,从前端到后端再到上线,终于支棱起来了,全栈是真的很多栈~

    项目是一个简单的记事本应用,支持 markdown 语法和云端存储数据!

    前端用了 Vite+React+Redux+Slate

    后端是 Nodejs Fastify+MySQL+Redis+TypeORM,Nodejs 的这一套是真的香,从 PHP 过来,基本无缝衔接,社区很成熟,性能和稳定性还有待测试

    还做了数据通信加密,安装了根证书的软件也监控不到我们的请求内容了

    服务器 某云的 ECS 2 核 4G 买了三年,618 买的花了 500 多块钱 数据库 某云 RDS,19 块多一年

    来放个链接,欢迎大家试用~这个配置支持个几千人用应该是没问题的吧..有点虚 https://anxinji.cloud

    产品是按照个人喜好来设计的,主要特点是简单安全、然后稳定之后,如无必要,绝不更新!!

    自从创建了前端自学群,是否有帮到其它群友还不太确定,反正我自己是一直在学习 ̄□ ̄||全栈是终于入门了,后面学多点的再来分享吧

    第 1 条附言  ·  2021-07-13 11:44:45 +08:00
    真不是想来引战的~
    我在前端开发方面经验比较丰富,后端也是刚刚入门,至于后端代码写的怎么样,我也觉得还需要练练~~
    前端学后端也不是为了抢饭碗...真的...

    关于前后端互串,Fastify 主要只是提供了一个 http server 和路由的功能,基于一个 httpserver 写后端业务,差不多和用原生 html 写前端一样...

    Nodejs 现在也有成熟套装 nestjs+ts 可选,我选 Fastify 的原因是本着学习的目的...接下会继续学习数据库和安全发面的知识~

    https://anxinji.cloud 这个记事本应用,欢迎试用和提建议~服务器已经买了三年,数据库是独立的 rds,自带备份功能,不用担心服务器炸了~

    另外前端自学群扩列,欢迎关注,一起技术学习,不吵架~
    Mitt
        1
    Mitt  
       2021-07-12 21:00:08 +08:00   ❤️ 14
    一直对前端程序员包揽后端活没啥好感,特别是没后端经验和知识的,写的代码真的没法看,各种问题,nodejs 造就了不少这样的人,反倒是后端转全栈或者原本就会其他后端的人写的全栈代码没啥太大问题。
    Yimkong
        2
    Yimkong  
       2021-07-12 21:04:40 +08:00 via iPhone
    这是微信小程序?打不开
    005008
        3
    005008  
    OP
       2021-07-12 21:10:13 +08:00
    @Yimkong 是网页版本呀,是用微信小程序登录的
    005008
        4
    005008  
    OP
       2021-07-12 21:11:45 +08:00
    @Mitt 哈哈哈,这确实是个问题,不过也分人
    zuosiruan
        5
    zuosiruan  
       2021-07-12 21:39:29 +08:00
    @Mitt 我想搞搞 web 前端的就是 css 劝退
    akira
        6
    akira  
       2021-07-12 21:43:38 +08:00   ❤️ 1
    @Mitt 其实同样也有问题的,写出来的前端页面各种丑。。
    lagoon
        7
    lagoon  
       2021-07-12 21:52:40 +08:00   ❤️ 8
    部分后端码农写出垃圾代码 = 这人真垃圾
    部分全栈码农写出垃圾代码 = 全栈真垃圾

    有些人啊,自己即没有学习的动力,又总是害怕别人来抢自己的饭碗。

    我虽然不是全栈,web 和后端都不会写,但还是看不起这种人。
    我不会是因为我懒而已。
    christin
        8
    christin  
       2021-07-12 22:08:13 +08:00 via iPhone   ❤️ 1
    @Mitt 不敢苟同
    代码风格规范的前端来写后端照样规范
    垃圾后端写前端一样垃圾
    你这样以偏概全算不算编程届的地图炮?
    demonlin
        9
    demonlin  
       2021-07-12 22:18:41 +08:00
    @christin 这种人自恃优越罢了,无需在意
    Mitt
        10
    Mitt  
       2021-07-12 22:26:55 +08:00   ❤️ 1
    @005008 #4 确实大部分情况下都是分人,但是以前端包揽后端来看大部分是傻逼公司的决策问题,这就不一样了

    @akira #6 丑那确实

    @christin #8 不是代码规范问题,而是知识点不同,现在前端后端化比如 angular,很多设计思想跟后端同步,而前端开发人员做全栈很多都是以前端思想入场,很多后端的坑和问题基本全踩一遍,做全栈是没啥意见,有意见的是那些公司(特别是外包)主张前端包揽后端(因为有 nodejs ),所以才产生这些问题的,相反后端写前端顶多就是技术栈比较垃圾 网页比较丑,代码比较难看,但是前端的坑大部分就属于能跑起来就能用,跟后端动不动就导致安全问题 系统崩溃不一样,(不过我说话方式也确实有点像地图炮
    hm20062006ok
        11
    hm20062006ok  
       2021-07-12 22:35:29 +08:00
    https://i.anxinji.cloud/user/me network error
    005008
        12
    005008  
    OP
       2021-07-12 22:40:46 +08:00 via iPhone
    @Mitt
    @christin

    和平讨论吧~这是一个市场经济问题,一个队伍里面主程做好架构和约定,其他人代码写的再差也差不到哪里去
    005008
        13
    005008  
    OP
       2021-07-12 22:44:35 +08:00
    @hm20062006ok bug 了吗,我看看
    noroot
        14
    noroot  
       2021-07-12 22:56:00 +08:00
    我一直以为:全栈 == 前端 + 后端 + 硬件
    Mitt
        15
    Mitt  
       2021-07-12 22:57:57 +08:00
    @005008 #12 我说话确实有点太主观了,主要还是被最近接的几个 nodejs 全栈项目气死了,一看就是前端手包揽写的,后端库也是跟前端通用的 各种问题不说,安全漏洞一大堆,就是那种完全没有后端意识写的代码,没系统性学习过的人写出的代码,我觉得这里主要的问题还是因为 Nodejs 通用性导致混淆了前后端很多差异,让很多本身基础不牢固的人更容易写出有问题的后端。

    话说起来我前端还是更喜欢 angular 一点,nodejs 写后端的话安利一下 nestjs,丧失一点灵活度但是多了很多好处
    Mitt
        16
    Mitt  
       2021-07-12 22:59:42 +08:00
    @noroot #14 我认为的全栈其实是 前端+后端+服务器运维 哈哈,其实我感觉能自主对一个产品业务从头到尾负责全包就属于全栈了
    005008
        17
    005008  
    OP
       2021-07-12 23:07:15 +08:00
    @hm20062006ok 有人在干坏事呀~
    005008
        18
    005008  
    OP
       2021-07-12 23:11:49 +08:00
    @Mitt nestjs 我也推荐无疑了,填代码还是有保障很多
    Leviathann
        19
    Leviathann  
       2021-07-12 23:15:02 +08:00
    typeorm 的参数有类型安全吗,怎么看 demo 都是填的字符串
    005008
        20
    005008  
    OP
       2021-07-12 23:21:31 +08:00
    @Leviathann 当然,这是 typescript 提供的,和 orm 无关
    ericgui
        21
    ericgui  
       2021-07-13 02:51:30 +08:00   ❤️ 7
    码农分了后端前端,立刻就落了下乘。
    你是码农,你要做一个产品,你要解决一个问题,不管你是什么端,你就要去顶上,解决问题。
    至于你是什么端的,并不重要。
    asdf123101
        22
    asdf123101  
       2021-07-13 06:49:35 +08:00 via Android   ❤️ 4
    @Mitt 别人做了个东西想给大家看一下,然后你上来就文不对题开个地图炮,真的是很难看。你说的这种问题这和做什么端没关系,单纯是技术问题。你要是今天被什么同事气到了,真没必要跑到别人分享东西的帖子下面来 yygq 。
    IvanLi127
        23
    IvanLi127  
       2021-07-13 08:32:06 +08:00 via Android
    @Mitt #1 似乎大部分后端写的前端代码也很离谱。。。
    bthulu
        24
    bthulu  
       2021-07-13 08:43:33 +08:00
    @Mitt nestjs 我看了下, 怎么感觉跟 java 里的 spring-mvc 这么像, 这一点都不 js
    JudyHal
        25
    JudyHal  
       2021-07-13 08:52:40 +08:00
    @IvanLi127 我也觉得也是,只不过前端代码离谱也不会出什么大事
    jrtzxh020
        26
    jrtzxh020  
       2021-07-13 09:00:33 +08:00
    @Mitt 什么?你的知识点和思想很不同?计算机专业谁没学过计算机组成原理,C++, 数据结构那些?你会的算法前端都不会?你有什么不同的倒是说清楚点。spring 全家桶的觉得自己写的代码很优越了?
    galikeoy
        27
    galikeoy  
       2021-07-13 09:08:49 +08:00
    @bthulu #24 借鉴的 spring,nest+ts 简直就是 spring
    dacapoday
        28
    dacapoday  
       2021-07-13 09:14:26 +08:00
    @Mitt 好奇具体的案例,不止一个人这样说,但一直没看到 前端风格的后端代码
    bthulu
        29
    bthulu  
       2021-07-13 09:15:59 +08:00
    @galikeoy 这不脱裤子放屁么, js 自身的特性不用, 去学 spring, 那我干么不直接用 spring
    IvanLi127
        30
    IvanLi127  
       2021-07-13 09:35:05 +08:00
    @bthulu java 历史包袱重,javaer 水平参差不齐的。新平台能过滤掉很多人。选择用 nest.js 开发后端的人,一般也不是水货。不过 js 的特性你在 nest.js 不也可用么?个人揣测,手动狗头
    popil1987
        31
    popil1987  
       2021-07-13 09:45:48 +08:00
    typeorm 换 prisma 试试香不香
    darknoll
        32
    darknoll  
       2021-07-13 10:09:24 +08:00
    怎么说呢,全栈这词现在不是褒义词啊,基本上是指原来干前端的现在会一点后端的程序员
    如果是后端学会了前端,相信不会想叫自己全栈,应该是独立开发者这种
    005008
        33
    005008  
    OP
       2021-07-13 10:14:35 +08:00
    @popil1987 下次试试,typeorm 已经很香了
    005008
        34
    005008  
    OP
       2021-07-13 10:16:47 +08:00
    @darknoll 这...怎么还词语歧视了...
    yazinnnn
        35
    yazinnnn  
       2021-07-13 10:20:23 +08:00
    如果全干也分三六九等的话,clojure+clojurescript 的全干工程师大概是一等人
    xiuduoduo
        36
    xiuduoduo  
       2021-07-13 10:22:05 +08:00
    我是后端,我写的前端挺垃圾的,自己都看不下去
    cking
        37
    cking  
       2021-07-13 10:23:40 +08:00
    @zuosiruan #5 同 CSS 劝退 JS 语法写起来其实和我现在用的 Java 差不多 上手很多 ES6 也是 但是这个 CSS 我是真的头大
    echo1937
        38
    echo1937  
       2021-07-13 10:27:09 +08:00
    这也是全栈吗,前后端不分离的年代,后端用 MVC 框架,

    程序员要写模板,通常也是 html 、js 、css 一肩挑,这岂不成了自古以来的全栈了?
    huai
        39
    huai  
       2021-07-13 10:28:56 +08:00
    跨行写出来的代码,都不咋样~ 抱着谦虚的态度,一点点改进吧。
    echo1937
        40
    echo1937  
       2021-07-13 10:36:22 +08:00
    @darknoll #32 前后端不分离的年代,程序员就是 模板文件、js 、html 、css 一肩挑的,也没人叫自己是全栈程序员。
    CodingNaux
        41
    CodingNaux  
       2021-07-13 10:47:09 +08:00
    看来前端在鄙视链的最底层?!前端为啥写不出好的后端代码,知识都放在那,大多数又不需要啥创新,谁不是从菜鸟做起的
    DoctorCat
        42
    DoctorCat  
       2021-07-13 10:48:50 +08:00
    换工作么?
    Frytea
        43
    Frytea  
       2021-07-13 10:57:15 +08:00   ❤️ 1
    楼主很强,使用遇到一个小问题,markdown # 1 一级标题 回车后还是一级标题,正常应该默认处理为默认文本
    Sxxiong
        44
    Sxxiong  
       2021-07-13 11:03:39 +08:00
    zsbd 学就完事了
    005008
        45
    005008  
    OP
       2021-07-13 11:06:08 +08:00
    @DoctorCat 啥么,换后端吗 ̄□ ̄||
    005008
        46
    005008  
    OP
       2021-07-13 11:07:27 +08:00
    @Frytea 谢谢反馈,终于有人关注正题了,一个人搞全部太分散精力,接下来准备好好优化编辑器这里的体验~
    yiqiao
        47
    yiqiao  
       2021-07-13 11:08:51 +08:00
    @akira 一样一样,很羡慕前端能写出漂亮页面。
    Lemeng
        48
    Lemeng  
       2021-07-13 11:11:16 +08:00
    @ericgui 大神说的是
    005008
        50
    005008  
    OP
       2021-07-13 11:55:31 +08:00
    @yiqiao 前端程序员也是程序员,可能也很难写出漂亮的页面 ̄□ ̄||
    libook
        51
    libook  
       2021-07-13 12:07:03 +08:00
    不懂后端的写后端代码,可能会写出不那么好的代码。
    不懂前端的写前端代码,也可能会写出不那么好的代码。

    愿意跳出舒适圈去学其他领域,挺好的。

    如果是技术交流的话可以把源码发出来。

    如果是产品推广的话,还涉及到一些其他问题:
    1. 跟其他产品比起来有啥亮点?
    2. 如何确保安全?

    另外作为一个全栈开发,想给的建议是多了解服务器、中间件、数据库、后端系统架构思想、安全,毕竟语言、引擎、框架只是后端的九牛一毛。
    darknoll
        52
    darknoll  
       2021-07-13 12:09:29 +08:00   ❤️ 1
    @005008 全栈=打杂的,样样都会样样都不行的角色
    g00001
        53
    g00001  
       2021-07-13 12:35:38 +08:00
    编程界最怪异的事就是有作平、有水平的人通常不会去踩别人,踩别人的都是些没水平、没作品的家伙。
    noroot
        54
    noroot  
       2021-07-13 13:17:41 +08:00
    @Mitt 是啊。要是按现在说的全栈(前+后),那老一辈的程序员不都是全栈吗?
    wuxinling
        55
    wuxinling  
       2021-07-13 14:07:59 +08:00
    代码质量先不提。
    不过如果老板问后端:“能给我写个 XX 页面不?”
    “有 UI 吗?” “没”
    “写丑了不怪我啊”
    一段时间后:“我的天!你能不能换个配色?” “那个谁(比如某个行政),你来帮他设计一下这个页面,画个图就行。”
    这种事情是真的有。
    unco020511
        56
    unco020511  
       2021-07-13 16:15:44 +08:00
    全栈=打杂 不是这样吗
    exploreexe
        57
    exploreexe  
       2021-07-13 18:41:14 +08:00
    @zuosiruan +1 CSS 真劝退。

    我不关心代码,我只关心产品能不能上线跑,见识过好多项目,代码就是屎山,别说代码了,就功能也做的跟屎一样,那一点不妨碍人家挣钱。

    如果真的想从事程序员这个职业,那么对代码有追求理所应当,如果真的只是为了挣钱的话,别管代码写的咋样,只要能赚到钱就行了。

    这是这些年做产品的感受。
    chencc48111
        58
    chencc48111  
       2021-07-13 20:26:28 +08:00
    是看的那个 b 站的视频吗? 声音挺好听的那位?
    005008
        59
    005008  
    OP
       2021-07-14 10:30:54 +08:00
    @chencc48111 哪个呀,帖子跑偏了,我下沉了
    005008
        60
    005008  
    OP
       2021-07-14 10:32:14 +08:00
    @unco020511 是的吧~~我现在没全栈,平时的工作也差不多是在打杂~会的多了,估计更杂了
    005008
        61
    005008  
    OP
       2021-07-14 10:33:09 +08:00
    @wuxinling 学会拒绝~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2989 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 14:19 · PVG 22:19 · LAX 06:19 · JFK 09:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.