毕业设计的技术选型

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

啊啊啊啊啊转眼就大四了,第一次来黑客派的时候刚大三开学,还是因为折腾 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 然后考虑下哪方面可以用以下区块链技术,如果有必要就去学习一下。

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

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • lizhongyue248

    @Vanessa @88250 D 大 V 姐, 给点建议好不好。。。

  • 88250

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

    1 回复
  • adlered

    辣鸡路过,暖

  • hjljy

    整个大数据的页面,一下子就高大上了。

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

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

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

    希望我的见解可以帮到你

    2 回复
  • namelysweet

    比如 Ansible、Zabbix 这些........这些不都是运维层面了么。。。。

    1 回复
  • hjljy

    如果你这都是学渣没人权,那我毕业设计都是混过的算什么

  • lizhongyue248

    感谢,很有帮助!

    我的专业是软件工程,讲究的是项目工程化,软件开发工程化,所以毕设就是做一个项目。而且我的题目是系主任直接指定的,做出来给我们软件工程系用=-=我只能做这个,并且要求就是强适用性。至于牛逼则是为了所谓的“炫技”吧。说大点就是我是我们第一届软件工程的“元老”或者老师们口中的“学霸”,虽然我从来没有这样说过但是老师在给后面的学弟学妹说的时候就把我营造成这么一个形象了,故而要有牛逼,能够让学弟学妹们 wow 出来的东西。

    我们是校企合作,大二开始大部分专业课就是企业来给我们上课(所以你懂的),上的都是 web 开发,前端就是十年前那种程度,上了一年半才到 spring boot。所以我们的毕业设计基本都是开发 web。自己对 web 开发不能说熟悉,但是也是能够上手,所以我上面提到的东西个人觉得半年的时间自己完全能够熟练运用。至于说强项,自己也说不清,从架构到设计,从界面到编码,从测试到运维,自己都做过=-=

    专注于某一点 说的特别好。web 设计大多都是业务逻辑的复杂,亦或是前端页面的适配酷炫交互。但是我不想从这两个点,这两个点不新,要好好思考下从哪个点专注。

  • lizhongyue248

    大数据的页面已经没啥新鲜的了,别说老师了,自己都看腻了。。。

  • lizhongyue248

    啊,确实是。还有 api 网关 kong 啥的。

  • lizhongyue248

    谢谢 D 大,我去了解下 ~ 系主任直接给我指定的题目。。。我也很无奈

  • 选几个自己熟悉的技术做就行了,真正开始做的时候 你会发现可能时间不够。而且你要是临时学其他的技术来做,根本做不完。到了公司你会发现你无论怎么学,跟公司用的东西还是有点差距。运气不好的话,一大堆运维技术都得学。docker,k8s 这些运维要学,开发还得学。让你怀疑人生。

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

    1 回复
  • ZephyrJung

    中小企业还不至于到微服务的地步吧
    我觉得你做好项目的模块化整体发布就可以了,上微服务徒增复杂性
    你们部署的时候有多机房么,上了微服务,相关的中间件怎么部署,怎么维护呢

    1 回复
  • ZephyrJung

    我觉得所谓的全面应该是功能上五脏俱全,也就是业务的完整性而不是技术

    1 回复
  • lizhongyue248

    对啊,也不是修改 pdf,就是批注,不过也头疼死了,但是这就是需求。。。我也很无奈。

  • lizhongyue248

    五脏俱全说的很对,刚刚和系主任吃饭谈话,他也是强调这一点。

    不过微服务肯定是要的,机房多啊,我管理的两个机房就有六台工作站,四台刀片服务器,两台图形工作站了。这个校区还有很多这种机房,其他校区也有,还有用来搭建数据中心的机房就有十多台刀片了。而且有几个同学的毕业设计都要接入我写的统一授权中心,这个时候肯定是要微服务了。

    技术主要是希望震场子用 ~

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

    1 回复
  • SignV

    和我的毕设差距好大 不过也对 环境不一样 我是学渣 学校也一般 可能要求没那么高 我当时还是用的 JSP + SSM 哈哈哈 现在的话 公司有用微服务 和各种自动化运维 比如 Jenkins+K8S 这些 不过你这项目 需要做那么复杂吗 又微服务 又要搞些测试驱动之类的东西 实际考虑的话 感觉也不需要微服务的样子 普通的 springboot 应该就足够了吧 微服务 加进去 会复杂很多 没什么必要 就不要加进去了 你可以尝试用 docker 部署 如果搞自动化运维也可以 实力允许的话 也不嫌麻烦的话 看起来你们的毕设都好牛逼 我当时的毕设都做得我要生要死 自己搞前后端 还有写 socket 对接信号 项目是我和室友一起搞的 他搞的是嵌入式方面的 我和他对接信号数据 比如他能探测温度 湿度这些 我来进行入库 以及安全报警相关的操作

    1 回复
  • Eddie

    可以,但没必要。不是我打击你,其实老师不怎么在乎你毕业设计做了啥。

    1 回复
  • ellenbboe

    ...我也在搞毕设...

  • 咦 定位是东京trollface

  • lizhongyue248

    这个还真说错了,我给学校做的项目一只手都数不过来了,大二开始做的,两年半学校除了每个月 800 的补助,系主任每次还单独发工资,加起来有 2W+ 了,我是我们系的工作室的主要负责人,我们这个工作室全部人加起来从学校那里拿到的钱也有 20W+ 了。这次项目是系主任指定的题目,经费可能少点,但是肯定是要用的,上次和学院领导开会就提到过这个东西了,还是比较重视的。

    1 回复
  • lizhongyue248

    巧了。我同学也要和我合作,不过是跨专业了,他写的是人脸识别 + 自动签到,要接入我写的授权中心。

    微服务肯定要上的,东西很多,上了好管理点。测试驱动是方便我走了以后别人来接手能够好一点。docker compose 我们给学校写的项目去年已经在用了,准备 k8s 和自动化运维了。

  • Eddie 1 赞同

    我说毕业设计。。。你这种不是。。。

  • ZephyrJung

    原来如此,厉害了,作为学生做到这点,真令我汗颜
    挺好奇你的架构设计呢,希望楼主将来可以分享一下

    1 回复
  • ZephyrJung

    加油 😂

  • 只能说...可怕...真的是后浪推前浪

请输入回帖内容 ...
lizhongyue248
一个天真的小孩儿......https://echocow.cn 东京

推荐标签 标签

  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖
  • RYMCU

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

    4 引用 • 6 回帖 • 52 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 5 关注
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    325 引用 • 1395 回帖 • 1 关注
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 140 关注
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    28 引用 • 108 回帖
  • Sym

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

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

    524 引用 • 4601 回帖 • 700 关注
  • 微服务

    微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。

    96 引用 • 155 回帖
  • PHP

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

    179 引用 • 407 回帖 • 492 关注
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    728 引用 • 1273 回帖 • 1 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 161 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    77 引用 • 430 回帖 • 1 关注
  • sts
    2 引用 • 2 回帖 • 197 关注
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖 • 2 关注
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 65 回帖 • 446 关注
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    85 引用 • 165 回帖 • 2 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    62 引用 • 289 回帖
  • IPFS

    IPFS(InterPlanetary File System,星际文件系统)是永久的、去中心化保存和共享文件的方法,这是一种内容可寻址、版本化、点对点超媒体的分布式协议。请浏览 IPFS 入门笔记了解更多细节。

    21 引用 • 245 回帖 • 243 关注
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 105 关注
  • GAE

    Google App Engine(GAE)是 Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台。2008 年 4 月 发布第一个测试版本。目前支持 Python、Java 和 Go 开发部署。全球已有数十万的开发者在其上开发了众多的应用。

    14 引用 • 42 回帖 • 780 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 4 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 53 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖 • 1 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 748 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖