浅谈个人web开发学习

前言

         回首一年,从一穷二白的编程小白到参与到比赛项目的开发,一步步走来收获了不少。个人主要还是学了有关web开发的基础知识,像前端三剑客、几个前端框架、python后端框架、物联网全栈技术栈,但总感觉有些知识学得不是特别扎实,学得比较浮躁,总感觉什么都没学,又好像学了很久很久。。。。。。学了就忘,忘了那就总结一下吧哈哈。

        暑假打完比赛,临近开学划了几天水,想着写写博客记录一下自己的一年,沉淀一下再去学习新的知识。


文章目录

前言

一、前端三剑客

二、python后端框架

1.Flask框架

2.Tornado框架

三、物联网技术栈 

总结


一、前端三剑客

前端三剑客主要是:HTML、CSS、JavaScript。网上也有很多的博客、教程视频教我们基础概念和语法、教我们怎么去学,这里就不再赘述了。

        我个人在学习HTML和CSS的时候还是和大多数小白一样选择菜鸟教程去看,简单地了解了一下后去看了看渡一教育的视频,感觉还不错,成哥讲得挺生动的。看文档的时候大概1-2天可以看完html和css,视频的周期会长一点,大致了解的话需要1-2个星期吧。其中感觉高度塌陷、浮动、一些浏览器的兼容问题、元素居中需要学透。还有就是学习flex布局和grid布局,写了一段时间的web前端代码,我个人感觉flex布局学好真的很重要。

渡一教育html+css讲解

         对于JavaScript我个人就学得比较久了,我是跟着尚硅谷的教程来学习的,周期比较长,想学得很好难度会比较大。我个人建议如果仕着急进行项目实操的话,直接看完文档后直接选择一个前端框架来学习,这样会比较快上手。

        现在我所了解的用的比较多的前端框架有jQuery、Bootstrap、Vue、React。如果学习原生的JavaScript的话,个人建议学会内建对象、DOM、BOM,熟练构造函数和事件的监听、传播、冒泡,了解原型、作用域链、闭包就好了。

尚硅谷JS教程


二、python后端框架

我想着第一篇博客就简单讲一下我学习的路线,具体的知识就等后续的文章再说了哈哈哈。

1.Flask框架

        Flask 是一个使用 Python 编写的轻量级 Web 应用程序框架,相比于Django,flask并未内置数据库操作,但flask也不会因为轻量而导致功能残缺。因为flask是基于Django的基础上进行开发的,二者的结构很像。针对一个项目来说,后端最基础的功能就是http中GET、POST请求的收发,数据库的增删查改等操作,request请求的处理以及响应,JSON数据的处理,cookies、docker、cache等基础概念,数据库的话可以通过flask-script和sqlalchemy实现数据库增删改查等简单的操作。

2.Tornado框架

        龙卷风,哈哈,第一次听到这个框架的时候我也被闪了一下眼。很有意思的一个框架,尤其是你学习了Django之后再来学习会发现这个框架完全就是Django的另一版嘻嘻嘻。但是,这个框架非常地轻量,官方对它的介绍是:单线程非阻塞异步网络IO服务。听起来挺高级的哈,单这个单线程不是只能开一个线程的意思,tornado框架也是支持多线程,你想同时开几个就开几个(只要不影响服务器性能)。我个人理解的意思是:tornado框架是看能够以在一个线程内开启多个协程的方式实现异步代码的实现。

        同样,由于tornado拥有非常好的异步操作性能,所有他舍弃了很多Django中有的东西,比如数据库哈哈。操作数据库的话可以选择直接用python自带的数据库操作库,也可以自己先封装好再在项目中使用,我个人建议采用第二种,代码可维护性更好哈哈。


三、物联网技术栈 

        这部分其实个人学得也不是挺多的。简单的说:一个项目通常会有软件、硬件。那么如何实现软硬件之间的数据传输和交互呢?这时就可以通过一个平台——IoT平台,IoT平台扮演着云端的角色 ,以一种通信协议(例如:mqtt)获取硬件端网关上报的属性数据,再将属性值推送到指定的ip地址,收到响应后再向硬件端的网关下发指令。这个ip地址其实就是你自己处理请求的路由,软件端的代码其实是要部署到服务器上去跑的。

        其实也可以通过tcp协议或者是http协议来直接实现后端与智能网关之间的数据交互,或许有人会问了:那为啥不直接用这种方式呢?首先我个人感觉哈,使用这种方式虽然会比上云简便,但是可能会降低整个系统的高效性,因为各种硬件之间如何工作是需要我们提前设定好的,而如何去设计控制的逻辑无疑也是很重要的,尤其是你后端一条指令同时需要发送给多个设备时;第二个就是数据的安全问题咯。


总结

        我写这篇文章,其实并不是提供什么解决方案,而是记录一下自己再过去一年中做了些什么哈哈。不喜勿喷,欢迎指正。

你可能感兴趣的:(前端,学习,物联网)