有人问我毕业设计怎么写最简单?
最近老有同学咨询我毕业设计怎么做事最简单的,做什么类型最好做,最容易通过?其实每个学校要求真不一样,985 211的院校基本都在往算法大数据分析和人工智能和图像识别前沿技术靠拢,而普通的院校对学生的要求就是能做出来,在自己做的基础上融入创新,还有一定的工作量作为标准。所以我这里介绍下常用的几个模式:(网页)javaWeb、微信小程序、安卓开发,让大家了解下。

NO.1
毕业设计要求的都是学生能够独立开发一个项目,项目的复杂程度是根据学校的要求来的,大体要实现前后台设计。前台,后台,指的是具体页面。前台,是用户直接能看到的页面,所有人都可以访问。后台,是有权限的运营人员或特殊用户(比如淘宝卖家)用权限登陆后才看得到的页面,除了能看到其他人看不到的报表外,在后台还能修改前台显示给用户看的内容。这里吐槽下XXX管理系统之类的设计很多不能通过的原因就是管理系统大部分都是后台管理界面表格+增删改查,目前B站、淘宝很多成品就是这一类的网页大部分都是逻辑性较弱,添加数据,修改数据,删除数据,表格展示完事,除非你能设计一整套逻辑流程才具有特色,这里我认识一个同学设计了一套进销存,分了几类角色,每一类的角色之间数据是关联的,采购、销售、管理员每个人的操作对系统都是影响巨大,系统设计的挺用心的,参考了一些商业系统和现实中的操作模式,每一次进销入库出库对统计,对销售,对库存都有影响,所以管理系统你想做的前提是你要设计一套逻辑基于你的特色的。下面给大家稍微了解下各个技术的一些特色和特点:
NO.2Java Web(网页):Java Web,是用Java技术来解决相关web互联网领域的技术总和。web包括: web服务器和web客户端两部分。技术常用:Java、HTML、CSS Js. Ajax.http等。前端常用样式框架Bootstrap、layuiHTML 指的是超文本标记语言 (Hyper Text Markup Language)。
HTML 标签是由尖括号包围的关键词,比如 <html>
HTML 标签通常是成对出现的,比如 <b> 和 </b>
标签对中的第一个标签是开始标签,第二个标签是结束标签
开始和结束标签也被称为开放标签和闭合标签

简单的网页结构

实际项目中的网页结构
网页项目前端核心展示的就是html页面,作为mvc模式中的视图展示,也就是眼睛看到的所有界面都是通过网页来实现的而js作为动态脚本语言,它的作用是用来丰富网页的行为,点击事件算最常用的一个事件,也就是你网页点击一下触发了一个什么动作,比如你点击下跳出弹窗,通过js来控制这个事件,同时css层叠样式表(英文全称:Cascading Style Sheets),是来干什么的?美化页面,也就是你打王者荣耀的皮肤!通过css来实现页面的各种美轮美奂的样子设计,通俗点就是女生的化妆技能...
这大体上就是网页设计前端所用到核心,后台不讲,因为无论是选网页、小程序、安卓都需要实现对应的后台支撑,也就是无论选啥,你都要有一个后台来支撑你这些前端展示的数据来源!
NO.2
很多人跟我说不会小程序怎么办?小程序难不难?
微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。
小程序真的很难?我觉得有网页基础的同学,基本在1-7天内就能学习上手。
框架程序包含一个描述整体程序的 app 和多个描述各自页面的 page。一个框架程序主体部分由三个文件组成,必须放在项目的根目录。

一个框架页面由四个文件组成

看表格就能看出来,小程序本质核心是不是跟网页的核心是类似的。
MINA(MINA IS NOT APP) 是在微信中开发小程序的框架。
MINA的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生APP体验的服务。
MINA提供了自己的视图层描述语言WXML和WXSS,以及基于JavaScript的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统,可以让开发者可以方便的聚焦于数据与逻辑上。
MINA的核心是一个响应的数据绑定系统。
整个系统分为两块视图层(View)和逻辑层(App Service)
MINA可以让数据与视图保持同步非常简单。当做数据修改的时候,只需要在逻辑层修改数据,视图层就会做相应的更新
MINA是腾讯给微信小程序命名的框架,其实他实际上应用的是目前IT界最被推崇的MVVM模式。(vue也是mvvm模式)
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑

上图描述了MVVM一个基本结构,看到了什么,是不是发现比MVC架构中多了一个ViewModel,没错,就是这个ViewModel,他是MVVM相对于MVC改进的核心思想。把Controller的数据和逻辑处理部分从中抽离出来,用一个专门的对象去管理,这个对象就是ViewModel,是Model和Controller之间的一座桥梁。
这里核心是什么是小程序很难么?NONONO,我只是告诉你,它的底层设计的就是为了让你更好的去操作,简单上手!
页面结构层 看到了么用view 去替换了div模块结构,class依旧是网页时代的样式
<view class="cu-bar bg-white solid-bottom">
<view class='action'>
<text class='cuIcon-titles text-orange '></text> 案例类卡片
</view>
<view class='action'>
<switch class='sm' checked='{{isCard}}' bindchange='isCard'></switch>
</view>
</view>
然后配合js进行数据渲染,跟传统网页基本是一致的结构,也就是说我们学习了什么,学习怎么在小程序上写网页结构。
NO.3
安卓其实我不是特长,是我合作伙伴的最喜欢的一个技术,但是我这个科普贴,就是让大家了解下技术,然后根据自己能力做出一个选择,或者是个人的收获就行。
安卓一般指Android。安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。
对于 Android 来说,对于页面的描述基本上在 xml 中定义的,比如:

页面结构: 一个 id 为 layout 的 FrameLayout, 它的内部包含一个 id 为 textViewHello 的 TextView 。
页面样式: FrameLayout 和 TextView 各自的属性:width、height,TextView 还有字号、颜色、文字内容等。
Android有四大基本组件:Activity、Service、Broadcast Receivet、Content Provider。其中Activity是四大组件中最基本的一个,但基础并不等同于简单、不重要。恰恰相反,Activity作为基础组件,学好Activity就是我们开发者学好Android的前提。
安卓技术如果你没有系统的学习过,就不要尝试在短时间内做一个很复杂的安卓项目,我查阅了下安卓的学习周期如果从0开始的要4个月最基础,如果你只想做普通的新闻类的可以做,但是如果你要做一个比较复杂的一个app我还是建议找个人指导下安卓的项目学习,因为安卓涉及点非常多,需要系统的学习才能够,所以我这里只有短短的说明下安卓技术的一些基础,涉及的点很多。
小白科普文花了1个小时写的,大家看看了解下,心里一些概念有数就可以了,其他不用过于深究,部分资料来自网络加工。