明确了!国家发布程序员和搬砖民工一样,都是农民工!

简介: 前几天我们发现,人社局官网发布了一则报告,显示软件开发和信息技术服务业都属于新生农工,不只是码农,所有在互联网工作者(户籍在老家的)都属于民工。

前言


前几天我们发现,人社局官网发布了一则报告,显示软件开发和信息技术服务业都属于新生农工,不只是码农,所有在互联网工作者(户籍在老家的)都属于民工。

编辑


怎么解释新生代农民工?


新生代乡籍工指的是在1980年及之后出生的,进城从事非农业生产6个月及以上的,常住地在城市,户籍地在乡村的劳动力,是新时代的产业工人。他们很早进入社会,游离于城市和乡村之间,基本没有从事过农业生产,不像父辈那般依恋乡村。他们努力想变得和城市里的同龄人一样,但受到经济收入、文化程度等种种因素制约,城市对于他们来说依然没有归属感。2010年1月31日,国务院发布的2010年中央一号文件《关于加大统筹城乡发展力度 进一步夯实农业农村发展基础的若干意见》中,首次使用了“新生代乡籍工”的提法,并要求采取有针对性的措施,着力解决新生代乡籍工问题,让新生代乡籍工市民化。



2019年确定程序员属于密集型劳动者


其实早在2019年的 国庆70周年的十一,官报发布感谢信,我悄悄发现,程序员首次被提上了劳动人名的行列,应该值得大家尊敬,在为祖国发展的列车中,互联网贡献不少力量,而程序员就是这其中的中坚力量,我们默默付出着,为祖国的繁荣昌盛舔砖加瓦。


996行业风波,确实让外界揭开了程序员这个新时代工种的神秘面纱,让更多的人知道技术人工作忙碌,时间长,强度大!也预示着程序员被行业渐渐认可,已不再是非服务业工作了,而是和工人,农民,底层劳动者一样,属于劳动者,是建设祖国的大军。


新生代民工确实非常形象:


1、码农和民工都是为了生活,背井离乡


2、两者都靠技术活吃饭,农民工是体力活,码农不但靠脑力活,还要拼体力。


3 、基本都在工作地买不房子,民工住工地宿舍,码农住隔断单间。


4、两者吃饭基本吃食堂的工作餐,无其他高消费。


5、码农和民工都舍不得花钱,老实憨厚,容易满足。


同行们自嘲很久的码农终于被正名了。大家对这个新生代农民工的称号还满意吗?


Vue 进阶系列教程将在本号持续发布,一起查漏补缺学个痛快!若您有遇到其它相关问题,非常欢迎在评论中留言讨论,达到帮助更多人的目的。若感本文对您有所帮助请点个赞吧!


2013年7月28日,尤雨溪第一次在 GItHub 上为 Vue.js 提交代码;2015年10月26日,Vue.js 1.0.0版本发布;2016年10月1日,Vue.js 2.0发布。


最早的 Vue.js 只做视图层,没有路由, 没有状态管理,也没有官方的构建工具,只有一个库,放到网页里就可以直接用了。


后来,Vue.js 慢慢开始加入了一些官方的辅助工具,比如路由(Router)、状态管理方案(Vuex)和构建工具(Vue-cli)等。此时,Vue.js 的定位是:The Progressive Framework。翻译成中文,就是渐进式框架。


Vue.js2.0 引入了很多特性,比如虚拟 DOM,支持 JSX 和 TypeScript,支持流式服务端渲染,提供了跨平台的能力等。Vue.js 在国内的用户有阿里巴巴、百度、腾讯、新浪、网易、滴滴出行、360、美团等等。


Vue 已是一名前端工程师必备的技能,现在就让我们开始深入学习 Vue.js 内部的核心技术原理吧!


什么是 mixin


mixin 是 Vue 提供的一种代码复用技术,也叫做混入。我们可以在 mixin 中定义组件中的所有选项,比如 data、methods 以及各种生命周期钩子。然后在我们的组件中引入已定义的 mixin,这时我们在 mixin 中定义的所有内容,就像灵魂附体一般和我们的组件融合了。通常用在抽离组件中重复内容的时候,减少代码冗余度。


怎么定义 mixin


定义 mixin 分为局部注册和全局注册两种,我们先来看局部注册。


局部注册


// a.js
export default {
    created(){
        console.log('mixin created')
    },
    data(){
        return {
            name:'mixin-name'
        }
    }
}
// App.vue
<template>
  <div class=''></div>
</template>
<script>
import a_mixin from './a.js'
export default {
  mixins:[a_mixin],
  mounted() {
    console.log('name',this.name)
  }
}
</script>
// mixin created
// name mixin-name


上方代码中,我们现在 a.js 中定义了一个普通对象,对象内部包含 created 钩子函数和 data 函数,然后在 App.vue 组件内部通过 mixins 选项,混入了a.js定义的内容。执行结果就是输出了mixin created 和 name mixin-name 。定义的 created 和 data 都混入了 App.vue。但是当 mixin 中定义的内容,和 App.vue重复了怎么办呢?


全局注册


通过 Vue 提供的 Vue.mixin() 函数,只需要我们在 main.js 中引入我们定义的mixin 文件,然后通过传入 Vue.mixin() 中即可。这时候,我们每一个组件都可以使用 mixin 中的内容了,且不需要 mixins 选项引入。


// a.js
export default {
    created(){
        console.log('mixin created')
    },
    data(){
        return {
            name:'mixin-name'
        }
    }
}
// main.js
import a_mixin from './a.js'
Vue.mixin(mixin)


mixin 和组件的重复项


对于 mixin 和组件之间的重复项,根据选项的不同,解决方案也不一样。


对象形式的选项,比如 data、methods、computed、components:如果没有重复项,会将 mixin 中的和 App.vue 中的进行合并,是并集的操作。如果存在重复项,那么最终会保留 App.vue 的数据。


// a.js
export default {
    created(){
        console.log('mixin created')
    },
    data(){
        return {
            name:'mixin-name'
        }
    }
}
// App.vue
<template>
  <div class=''></div>
</template>
<script>
import a_mixin from './a.js'
export default {
  data(){
    return {
      name:'app-name'
    }
  },
  mixins:[a_mixin],
  mounted() {
    console.log('name',this.name)
  }
}
</script>
// mixin created
// name app-name


函数形式的,比如生命周期钩子函数:对于 mixin 中定义的生命周期钩子函数和 App.vue 中的生命周期钩子函数都会被保留,并且优先执行mixin中的生命周期钩子。


// a.js
export default {
    created(){
        console.log('mixin created')
    },
    data(){
        return {
            name:'mixin-name'
        }
    }
}
// App.vue
<template>
  <div class=''></div>
</template>
<script>
import a_mixin from './a.js'
export default {
  data(){
    return {
      name:'app-name'
    }
  },
  mixins:[a_mixin],
  created(){
    console.log('app created') 
  }
}
</script>
// mixin created
// app created


组件间相互隔离


mixin 定义的变量,在各个组件之间是相互隔离的,在一个组件修改值,其他组件不会改变。


// a.js
export default {
    created(){
        console.log('mixin created')
    },
    data(){
        return {
            name:'mixin-name'
        }
    }
}
// App.vue
<template>
  <div class=''></div>
</template>
<script>
import a_mixin from './a.js'
export default {
  mixins:[a_mixin],
  mounted(){
    this.name = 'appName'
    console.log('app_name',this.name)  // appName
  }
}
</script>
// Home.vue
<template>
  <div class=''></div>
</template>
<script>
import a_mixin from './a.js'
export default {
  mixins:[a_mixin],
  mounted(){
    console.log('home_name',this.name)  // mixin_name
  }
}
</script>


与 Vuex 的区别


vuex : 组件之间的状态管理,在一个组件中修改状态的值,其他组件中当前状态也会随之改变。


mixin: 用来复用重复代码的,在每个组件之间相互隔离,在一个组件修改值,其他组件不会改变。


与公共组件的区别


公共组件:公共组件是封装一个独立的部分,和父组件之间本质上还是两个组件。


mixin:mixin 是通过组件中混入我们的 mixin,对属性进行合并,本质上还是一个组件。


总结:


Vue 进阶系列教程将在本号持续发布,一起查漏补缺学个痛快!若您有遇到其它相关问题,非常欢迎在评论中留言讨论,达到帮助更多人的目的。若感本文对您有所帮助请点个赞吧!

相关文章
|
9月前
|
安全 数据库
就业冰点,你为什么要裸辞? by彭文华
就业冰点,你为什么要裸辞? by彭文华
|
12月前
碳中和特辑 | 温控1.5℃,我们能做些什么?
编者按: 为避免地球升温超过1.5℃,阿里巴巴发布国内互联网科技公司首个碳中和行动报告,将全力推动科技和商业创新,用负责任的科技,实现可持续的未来。
众筹十万美元搞火箭,搞研发全靠志愿者!这个“草根”航天组织已经开启载人测试
众筹十万美元搞火箭,搞研发全靠志愿者!这个“草根”航天组织已经开启载人测试
147 0
众筹十万美元搞火箭,搞研发全靠志愿者!这个“草根”航天组织已经开启载人测试
|
Java 程序员
一个程序员的国庆血泪相亲史,惨败而归…
没错,这个程序员就是博主我。 伴随着国庆往返的大军,博主我也踏上了幸福的回家之路。
这个阿里小二,据说全世界姑娘都羡慕她的工作
大家好,我是好奇橙。我的老板说,好奇心是人类进步的动力。所以……我决定每天进步一点点。阿里是个有趣的地方,有一群神奇的小伙伴,他们的工作奇奇怪怪、五花八门……作为一只好奇的橙子,他们都应该成为我的好朋友。今天就给大家介绍一个小姐姐,她的工作让所有姑娘们都羡慕。
308 0
这个阿里小二,据说全世界姑娘都羡慕她的工作
|
传感器 数据采集 监控
机器狗的烦恼:网红练习生容易,商业实习生好难
好比临近毕业正在找工作的实习生,波士顿动力的产品具备了基础理论知识,还缺少实践经验。
|
程序员
外国程序员说:中国程序员能吃苦,这是悲哀吗?
转行当程序员,是很多人的梦想,毕竟转行成功,就可能意味着钞票滚滚而来。正所谓“外面的人想进去,里面的人想出来”,很多在职的程序员,都曾经有过转行的想法,为什么我国的程序员,会有如此奇葩的现象?
3169 0