毕业设计的技术选型

本贴最后更新于 1585 天前,其中的信息可能已经时过境迁

啊啊啊啊啊转眼就大四了,第一次来黑客派的时候刚大三开学,还是因为折腾 manjaro,然后找 linux 的百度网盘然后找到 BND 来的。

现在快毕业了,毕业设计选题是 web 项目,主要是一个选课题的项目,老师可以选学生,学生可以选老师。然后老师指导学生完成这个课题的流程,包括论文修改、流程记录啥的。想问问大家有没有什么好的技术选型。

有些问题不知道采取什么技术选型,想问问社区大佬的意见:

  1. 需要填写很多资料,而且资料字段可以自定义的那种 —— 我想到就是 mongodb,系部主任可以自定义表格的字段,一次课题就是一个文档,第一次尝试,不知道这样可以不。mysql 肯定不够用了。
  2. 前端要对 pdf 文件进行标注,学生上传了 pdf,老师可以看到并且直接批注修改——目前我真的不知道前端有啥比较好的解决方案。
  3. 前端必须适配——我打算使用 material design 的设计风格适配,所以考虑 flutter 还是 react 还是 react native(不用 vue,因为前面写的项目全是 vue 的)。flutter 也可以做 web 但是支持没那么好。想请 V 姐给点建议 T T
  4. 测试驱动开发——每个地方都要写测试用例,前端准备 jest,后端就是 junit5 了。
  5. 要牛逼!——这个真的必须要有的,必须牛逼,目前想到的就是数据可视化,但是只有那一堆图其实感觉并不牛逼,总想拿得出啥出来,人工智能深度学习感觉自己是没时间去学了 T T。想问问 D 大有没有啥好的建议啊。
  6. 要全面,开发出来是直接给我们系用的,所以一些中小企业级的东西要有的——目前打算是微服务开发,初步选择是 webflux + spring cloud 阿里巴巴和一些 vert.x 服务。使用 kotlin 来写。但是最近朋友去公司实习,才发现公司还有好多东西和技术,比如 Ansible、Zabbix 这些,想问问中小企业一般都会有哪些框架或者技术啊?
  7. 通知,能够通过 QQ 或者微信发送通知——这个我还没有找到啥好的解决方案,倒是有几个机器人可以用,但是还有没有尝试,大家有没有推荐啊?

自己做的有点大,但是没办法啊,到我毕业答辩的时候人估计会有很多,我是我们学校第一届这个专业的,然后是“名声在外”的那种,好多人都给我说我毕业答辩那天一定叫他们去看。所以我必须做的牛逼能够震得住场子的东西,但是自己也就会 web 啊 -0- web 无非就是那么点东西,前后端 + 运维。所以求大佬给点建议。。。到时候实在不行只有上一点数据可视化啥的了 T T 然后考虑下哪方面可以用以下区块链技术,如果有必要就去学习一下。

还有半年的时间,感觉有点多。各位大佬帮帮忙。。。想了几天感觉就那么点。

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 前端上传 pdf,然后批注修改是指在浏览器里面修改 pdf?这个怕是有点复杂。如果是修改 excel 之类的表格还容易一点。😂

    1 回复
  • 其他回帖
  • 88250

    底层不需要基于 XXX 学术理论么?当年我的毕业设计做的是基于 Petri Net 的软件过程管理,实现了一个简单的流程引擎。根据你这题目,我觉得存储可以上 IPFS,用于保存论文终版,这样也有亮点。

    1 回复
  • 我们公司就比较小,外包公司,全是古董项目。jdk6,Tomcat6。只不过最近在搞容器化,往 k8s 上面迁。最新的一个京东项目直接就是微服务了,我也很无奈。

    1 回复
  • 又要“牛逼”又要“全面”,两者很难兼得啊。

    要知道毕业设计的目的不是为了让你搞出一个多么牛逼、有多么强的适用性的实际产品出来,而是考察你在校期间学习的专业知识能否学为所用。所以,我觉得你在技术选型的时候,不要想着现在业界都有那些牛逼的技术,然后填鸭式地临阵磨枪,并试图把这些技术都塞到自己的项目里。相反,你要梳理一下你已经掌握的知识和技术,并从中找到自己的强项。接着,分析自己能利用这些强项做到什么,有哪些创新的地方,突破了哪些壁垒,等等。然后,专注于某一点去为你的毕业设计选题。

    拿我自己的本科毕业设计为例,我做的是一个基于深度强化学习的综合能源微网优化调度。这个题目是老师选的(学渣没人权)。由于我不擅长深度学习这一领域,所以我将重点集中在了优化调度的载体上,而不是深度学习模型的构建、调参和训练上。最终,虽然训练出来的 DQN 模型不是很理想(事实上传统数学方法更优),但是我成功地将其集成到 麒麟 970 平台上,利用 麒麟 970 的 NPU 加速神经网络的运算,从而使得在嵌入式平台上实时地应用深度强化学习的手段对综合能源微网进行优化调度变得可行。最终,我的毕业设计取得了还算理想的分数。至于优化 DQN 的工作,后来老师将其交给了一些擅长深度学习领域的研究生去继续进行。

    希望我的见解可以帮到你

    2 回复
  • 查看全部回帖
lizhongyue248
一个天真的小孩儿......https://echocow.cn 东京

推荐标签 标签

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    915 引用 • 931 回帖 • 1 关注
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    89 引用 • 345 回帖
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    69 引用 • 190 回帖 • 493 关注
  • 七牛云

    七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。

    25 引用 • 215 回帖 • 165 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 597 关注
  • 电影

    这是一个不能说的秘密。

    120 引用 • 597 回帖 • 1 关注
  • Jenkins

    Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。

    51 引用 • 37 回帖
  • PWL

    组织简介

    用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖
    用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/

    用爱发电组织的核心驱动力:

    • 遵守开源守则,体现开源&贡献精神:以分享为目的,拒绝非法牟利。
    • 自我保护:使用适当的 License 保护自己的原创作品。
    • 尊重他人:不以各种理由、各种漏洞进行未经允许的抄袭、散播、洩露;以礼相待,尊重所有对社区做出贡献的开发者;通过他人的分享习得知识,要留下足迹,表示感谢。
    • 热爱编程、热爱学习:加入组织,热爱编程是首当其要的。我们欢迎热爱讨论、分享、提问的朋友,也同样欢迎默默成就的朋友。
    • 倾听:正确并恳切对待、处理问题与建议,及时修复开源项目的 Bug ,及时与反馈者沟通。不抬杠、不无视、不辱骂。
    • 平视:不诋毁、轻视、嘲讽其他开发者,主动提出建议、施以帮助,以和谐为本。只要他人肯努力,你也可能会被昔日小看的人所超越,所以请保持谦虚。
    • 乐观且活跃:你的努力决定了你的高度。不要放弃,多年后回头俯瞰,才会发现自己已经成就往日所仰望的水平。积极地将项目开源,帮助他人学习、改进,自己也会获得相应的提升、成就与成就感。
    1 引用 • 487 回帖 • 7 关注
  • C++

    C++ 是在 C 语言的基础上开发的一种通用编程语言,应用广泛。C++ 支持多种编程范式,面向对象编程、泛型编程和过程化编程。

    106 引用 • 152 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    536 引用 • 672 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 441 关注
  • gRpc
    10 引用 • 8 回帖 • 54 关注
  • CodeMirror
    1 引用 • 2 回帖 • 115 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 451 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    164 引用 • 407 回帖 • 527 关注
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 152 关注
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 40 关注
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    523 引用 • 4581 回帖 • 690 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 318 关注
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    313 引用 • 1666 回帖
  • WebClipper

    Web Clipper 是一款浏览器剪藏扩展,它可以帮助你把网页内容剪藏到本地。

    3 引用 • 9 回帖 • 6 关注
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    161 引用 • 473 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    396 引用 • 3416 回帖
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖
  • FlowUs

    FlowUs.息流 个人及团队的新一代生产力工具。

    让复杂的信息管理更轻松、自由、充满创意。

    1 引用
  • 倾城之链
    23 引用 • 66 回帖 • 100 关注