毕业设计的技术选型

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

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

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

欢迎来到这里!

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

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

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

    1 回复
  • 其他回帖
  • ZephyrJung

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

    1 回复
  • lizhongyue248

    感谢,很有帮助!

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

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

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

  • lizhongyue248

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

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

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

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

推荐标签 标签

  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 51 关注
  • GAE

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

    14 引用 • 42 回帖 • 705 关注
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    675 引用 • 535 回帖
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    28 引用 • 66 回帖 • 7 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    58 引用 • 22 回帖
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 2 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 1 关注
  • 博客

    记录并分享人生的经历。

    272 引用 • 2386 回帖
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    88 引用 • 1234 回帖 • 442 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    122 引用 • 73 回帖
  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    85 引用 • 122 回帖 • 617 关注
  • AngularJS

    AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。

    12 引用 • 50 回帖 • 442 关注
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 396 关注
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 65 关注
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    143 引用 • 3752 回帖
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • 生活

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

    230 引用 • 1454 回帖
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 322 关注
  • 国际化

    i18n(其来源是英文单词 internationalization 的首末字符 i 和 n,18 为中间的字符数)是“国际化”的简称。对程序来说,国际化是指在不修改代码的情况下,能根据不同语言及地区显示相应的界面。

    7 引用 • 26 回帖
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    333 引用 • 619 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3169 引用 • 8208 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 48 关注
  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 429 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    96 引用 • 330 回帖
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1427 引用 • 10046 回帖 • 472 关注
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖